@etohq/utils 1.5.1-alpha.2 → 1.5.1-alpha.4
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/access-link/case-sensitivity.d.ts +14 -0
- package/dist/access-link/case-sensitivity.d.ts.map +1 -0
- package/dist/access-link/case-sensitivity.js +57 -0
- package/dist/access-link/case-sensitivity.js.map +1 -0
- package/dist/access-link/check-if-key-exists.d.ts +7 -0
- package/dist/access-link/check-if-key-exists.d.ts.map +1 -0
- package/dist/access-link/check-if-key-exists.js +36 -0
- package/dist/access-link/check-if-key-exists.js.map +1 -0
- package/dist/access-link/index.d.ts +11 -0
- package/dist/access-link/index.d.ts.map +1 -0
- package/dist/access-link/index.js +27 -0
- package/dist/access-link/index.js.map +1 -0
- package/dist/access-link/key-checks.d.ts +12 -0
- package/dist/access-link/key-checks.d.ts.map +1 -0
- package/dist/access-link/key-checks.js +78 -0
- package/dist/access-link/key-checks.js.map +1 -0
- package/dist/access-link/link-resolution.d.ts +26 -0
- package/dist/access-link/link-resolution.d.ts.map +1 -0
- package/dist/access-link/link-resolution.js +111 -0
- package/dist/access-link/link-resolution.js.map +1 -0
- package/dist/access-link/link-utils.d.ts +23 -0
- package/dist/access-link/link-utils.d.ts.map +1 -0
- package/dist/access-link/link-utils.js +61 -0
- package/dist/access-link/link-utils.js.map +1 -0
- package/dist/access-link/process-key.d.ts +5 -0
- package/dist/access-link/process-key.d.ts.map +1 -0
- package/dist/access-link/process-key.js +58 -0
- package/dist/access-link/process-key.js.map +1 -0
- package/dist/access-link/process-utils.d.ts +19 -0
- package/dist/access-link/process-utils.d.ts.map +1 -0
- package/dist/access-link/process-utils.js +52 -0
- package/dist/access-link/process-utils.js.map +1 -0
- package/dist/access-link/transform-link.d.ts +47 -0
- package/dist/access-link/transform-link.d.ts.map +1 -0
- package/dist/access-link/transform-link.js +25 -0
- package/dist/access-link/transform-link.js.map +1 -0
- package/dist/access-link/url-detection.d.ts +10 -0
- package/dist/access-link/url-detection.d.ts.map +1 -0
- package/dist/access-link/url-detection.js +63 -0
- package/dist/access-link/url-detection.js.map +1 -0
- package/dist/access-link/validation-utils.d.ts +23 -0
- package/dist/access-link/validation-utils.d.ts.map +1 -0
- package/dist/access-link/validation-utils.js +57 -0
- package/dist/access-link/validation-utils.js.map +1 -0
- package/dist/analytics/detect-bot.d.ts +2 -0
- package/dist/analytics/detect-bot.d.ts.map +1 -0
- package/dist/analytics/detect-bot.js +21 -0
- package/dist/analytics/detect-bot.js.map +1 -0
- package/dist/analytics/detect-qr.d.ts +2 -0
- package/dist/analytics/detect-qr.d.ts.map +1 -0
- package/dist/analytics/detect-qr.js +10 -0
- package/dist/analytics/detect-qr.js.map +1 -0
- package/dist/analytics/get-click-event.d.ts +8 -0
- package/dist/analytics/get-click-event.d.ts.map +1 -0
- package/dist/analytics/get-click-event.js +24 -0
- package/dist/analytics/get-click-event.js.map +1 -0
- package/dist/analytics/get-geolocation.d.ts +12 -0
- package/dist/analytics/get-geolocation.d.ts.map +1 -0
- package/dist/analytics/get-geolocation.js +51 -0
- package/dist/analytics/get-geolocation.js.map +1 -0
- package/dist/analytics/get-grant-event.d.ts +8 -0
- package/dist/analytics/get-grant-event.d.ts.map +1 -0
- package/dist/analytics/get-grant-event.js +24 -0
- package/dist/analytics/get-grant-event.js.map +1 -0
- package/dist/analytics/get-import-error-logs.d.ts +17 -0
- package/dist/analytics/get-import-error-logs.d.ts.map +1 -0
- package/dist/analytics/get-import-error-logs.js +23 -0
- package/dist/analytics/get-import-error-logs.js.map +1 -0
- package/dist/analytics/get-lead-events.d.ts +17 -0
- package/dist/analytics/get-lead-events.d.ts.map +1 -0
- package/dist/analytics/get-lead-events.js +17 -0
- package/dist/analytics/get-lead-events.js.map +1 -0
- package/dist/analytics/get-webhook-events.d.ts +17 -0
- package/dist/analytics/get-webhook-events.d.ts.map +1 -0
- package/dist/analytics/get-webhook-events.js +22 -0
- package/dist/analytics/get-webhook-events.js.map +1 -0
- package/dist/analytics/index.d.ts +18 -0
- package/dist/analytics/index.d.ts.map +1 -1
- package/dist/analytics/index.js +18 -0
- package/dist/analytics/index.js.map +1 -1
- package/dist/analytics/log-conversion-events.d.ts +6 -0
- package/dist/analytics/log-conversion-events.d.ts.map +1 -0
- package/dist/analytics/log-conversion-events.js +20 -0
- package/dist/analytics/log-conversion-events.js.map +1 -0
- package/dist/analytics/log-import-error.d.ts +6 -0
- package/dist/analytics/log-import-error.d.ts.map +1 -0
- package/dist/analytics/log-import-error.js +18 -0
- package/dist/analytics/log-import-error.js.map +1 -0
- package/dist/analytics/parse-user-agent.d.ts +13 -0
- package/dist/analytics/parse-user-agent.d.ts.map +1 -0
- package/dist/analytics/parse-user-agent.js +174 -0
- package/dist/analytics/parse-user-agent.js.map +1 -0
- package/dist/analytics/record-approval.d.ts +56 -0
- package/dist/analytics/record-approval.d.ts.map +1 -0
- package/dist/analytics/record-approval.js +32 -0
- package/dist/analytics/record-approval.js.map +1 -0
- package/dist/analytics/record-click.d.ts +32 -0
- package/dist/analytics/record-click.d.ts.map +1 -0
- package/dist/analytics/record-click.js +136 -0
- package/dist/analytics/record-click.js.map +1 -0
- package/dist/analytics/record-lead.d.ts +24 -0
- package/dist/analytics/record-lead.d.ts.map +1 -0
- package/dist/analytics/record-lead.js +72 -0
- package/dist/analytics/record-lead.js.map +1 -0
- package/dist/analytics/record-link.d.ts +106 -0
- package/dist/analytics/record-link.d.ts.map +1 -0
- package/dist/analytics/record-link.js +78 -0
- package/dist/analytics/record-link.js.map +1 -0
- package/dist/analytics/record-sale.d.ts +10 -0
- package/dist/analytics/record-sale.d.ts.map +1 -0
- package/dist/analytics/record-sale.js +35 -0
- package/dist/analytics/record-sale.js.map +1 -0
- package/dist/analytics/record-webhook-event.d.ts +26 -0
- package/dist/analytics/record-webhook-event.d.ts.map +1 -0
- package/dist/analytics/record-webhook-event.js +22 -0
- package/dist/analytics/record-webhook-event.js.map +1 -0
- package/dist/analytics/schemas.d.ts +257 -0
- package/dist/analytics/schemas.d.ts.map +1 -0
- package/dist/analytics/schemas.js +99 -0
- package/dist/analytics/schemas.js.map +1 -0
- package/dist/analytics/tinybird-client.d.ts +6 -0
- package/dist/analytics/tinybird-client.d.ts.map +1 -0
- package/dist/analytics/tinybird-client.js +11 -0
- package/dist/analytics/tinybird-client.js.map +1 -0
- package/dist/common/constants.d.ts +24 -0
- package/dist/common/constants.d.ts.map +1 -0
- package/dist/common/constants.js +196 -0
- package/dist/common/constants.js.map +1 -0
- package/dist/common/domains.d.ts +8 -0
- package/dist/common/domains.d.ts.map +1 -0
- package/dist/common/domains.js +88 -0
- package/dist/common/domains.js.map +1 -0
- package/dist/common/dynamic-import.d.ts.map +1 -1
- package/dist/common/dynamic-import.js +24 -1
- package/dist/common/dynamic-import.js.map +1 -1
- package/dist/common/fetch-with-retry.d.ts +6 -0
- package/dist/common/fetch-with-retry.d.ts.map +1 -0
- package/dist/common/fetch-with-retry.js +63 -0
- package/dist/common/fetch-with-retry.js.map +1 -0
- package/dist/common/get-identity-hash.d.ts +2 -0
- package/dist/common/get-identity-hash.d.ts.map +1 -0
- package/dist/common/get-identity-hash.js +19 -0
- package/dist/common/get-identity-hash.js.map +1 -0
- package/dist/common/index.d.ts +3 -0
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +3 -0
- package/dist/common/index.js.map +1 -1
- package/dist/common/is-valid-url.d.ts +2 -0
- package/dist/common/is-valid-url.d.ts.map +1 -0
- package/dist/common/is-valid-url.js +14 -0
- package/dist/common/is-valid-url.js.map +1 -0
- package/dist/common/reserved-slugs.d.ts +7 -0
- package/dist/common/reserved-slugs.d.ts.map +1 -0
- package/dist/common/reserved-slugs.js +64 -0
- package/dist/common/reserved-slugs.js.map +1 -0
- package/dist/common/to-snake-case.d.ts +5 -0
- package/dist/common/to-snake-case.d.ts.map +1 -0
- package/dist/common/to-snake-case.js +14 -0
- package/dist/common/to-snake-case.js.map +1 -0
- package/dist/dml/entity-builder.d.ts +68 -0
- package/dist/dml/entity-builder.d.ts.map +1 -1
- package/dist/dml/entity-builder.js +76 -0
- package/dist/dml/entity-builder.js.map +1 -1
- package/dist/dml/helpers/entity-builder/define-property.d.ts.map +1 -1
- package/dist/dml/helpers/entity-builder/define-property.js +77 -0
- package/dist/dml/helpers/entity-builder/define-property.js.map +1 -1
- package/dist/dml/helpers/mikro-orm/custom-type/geo-json-geometry.d.ts +10 -0
- package/dist/dml/helpers/mikro-orm/custom-type/geo-json-geometry.d.ts.map +1 -0
- package/dist/dml/helpers/mikro-orm/custom-type/geo-json-geometry.js +31 -0
- package/dist/dml/helpers/mikro-orm/custom-type/geo-json-geometry.js.map +1 -0
- package/dist/dml/properties/enum.d.ts.map +1 -1
- package/dist/dml/properties/enum.js +0 -1
- package/dist/dml/properties/enum.js.map +1 -1
- package/dist/dml/properties/geometry.d.ts +8 -0
- package/dist/dml/properties/geometry.d.ts.map +1 -0
- package/dist/dml/properties/geometry.js +14 -0
- package/dist/dml/properties/geometry.js.map +1 -0
- package/dist/dml/properties/index.d.ts +4 -0
- package/dist/dml/properties/index.d.ts.map +1 -1
- package/dist/dml/properties/index.js +4 -0
- package/dist/dml/properties/index.js.map +1 -1
- package/dist/dml/properties/multipolygon.d.ts +8 -0
- package/dist/dml/properties/multipolygon.d.ts.map +1 -0
- package/dist/dml/properties/multipolygon.js +14 -0
- package/dist/dml/properties/multipolygon.js.map +1 -0
- package/dist/dml/properties/point.d.ts +8 -0
- package/dist/dml/properties/point.d.ts.map +1 -0
- package/dist/dml/properties/point.js +14 -0
- package/dist/dml/properties/point.js.map +1 -0
- package/dist/dml/properties/polygon.d.ts +8 -0
- package/dist/dml/properties/polygon.d.ts.map +1 -0
- package/dist/dml/properties/polygon.js +14 -0
- package/dist/dml/properties/polygon.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/modules-sdk/build-query.d.ts.map +1 -1
- package/dist/modules-sdk/build-query.js +3 -1
- package/dist/modules-sdk/build-query.js.map +1 -1
- package/dist/modules-sdk/definition.d.ts +18 -0
- package/dist/modules-sdk/definition.d.ts.map +1 -1
- package/dist/modules-sdk/definition.js +12 -0
- package/dist/modules-sdk/definition.js.map +1 -1
- package/dist/modules-sdk/spatial-query-processor.d.ts +2 -0
- package/dist/modules-sdk/spatial-query-processor.d.ts.map +1 -0
- package/dist/modules-sdk/spatial-query-processor.js +105 -0
- package/dist/modules-sdk/spatial-query-processor.js.map +1 -0
- package/dist/permissions/ability.d.ts +39 -0
- package/dist/permissions/ability.d.ts.map +1 -0
- package/dist/permissions/ability.js +51 -0
- package/dist/permissions/ability.js.map +1 -0
- package/dist/permissions/context-builder.d.ts +24 -0
- package/dist/permissions/context-builder.d.ts.map +1 -0
- package/dist/permissions/context-builder.js +30 -0
- package/dist/permissions/context-builder.js.map +1 -0
- package/dist/permissions/index.d.ts +4 -0
- package/dist/permissions/index.d.ts.map +1 -0
- package/dist/permissions/index.js +20 -0
- package/dist/permissions/index.js.map +1 -0
- package/dist/permissions/permission-service.d.ts +8 -0
- package/dist/permissions/permission-service.d.ts.map +1 -0
- package/dist/permissions/permission-service.js +20 -0
- package/dist/permissions/permission-service.js.map +1 -0
- package/dist/permissions/types.d.ts +17 -0
- package/dist/permissions/types.d.ts.map +1 -0
- package/dist/permissions/types.js +11 -0
- package/dist/permissions/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/zod/schemas/approvals.d.ts +91 -0
- package/dist/zod/schemas/approvals.d.ts.map +1 -0
- package/dist/zod/schemas/approvals.js +38 -0
- package/dist/zod/schemas/approvals.js.map +1 -0
- package/dist/zod/schemas/clicks.d.ts +394 -0
- package/dist/zod/schemas/clicks.d.ts.map +1 -0
- package/dist/zod/schemas/clicks.js +85 -0
- package/dist/zod/schemas/clicks.js.map +1 -0
- package/dist/zod/schemas/leads.d.ts +423 -0
- package/dist/zod/schemas/leads.d.ts.map +1 -0
- package/dist/zod/schemas/leads.js +58 -0
- package/dist/zod/schemas/leads.js.map +1 -0
- package/package.json +8 -2
- package/dist/feature-flags/eto-v2.d.ts +0 -3
- package/dist/feature-flags/eto-v2.d.ts.map +0 -1
- package/dist/feature-flags/eto-v2.js +0 -10
- package/dist/feature-flags/eto-v2.js.map +0 -1
- package/dist/feature-flags/order-editing.d.ts +0 -3
- package/dist/feature-flags/order-editing.d.ts.map +0 -1
- package/dist/feature-flags/order-editing.js +0 -10
- package/dist/feature-flags/order-editing.js.map +0 -1
- package/dist/feature-flags/product-categories.d.ts +0 -3
- package/dist/feature-flags/product-categories.d.ts.map +0 -1
- package/dist/feature-flags/product-categories.js +0 -10
- package/dist/feature-flags/product-categories.js.map +0 -1
- package/dist/feature-flags/sales-channels.d.ts +0 -3
- package/dist/feature-flags/sales-channels.d.ts.map +0 -1
- package/dist/feature-flags/sales-channels.js +0 -10
- package/dist/feature-flags/sales-channels.js.map +0 -1
- package/dist/feature-flags/tax-inclusive-pricing.d.ts +0 -3
- package/dist/feature-flags/tax-inclusive-pricing.d.ts.map +0 -1
- package/dist/feature-flags/tax-inclusive-pricing.js +0 -10
- package/dist/feature-flags/tax-inclusive-pricing.js.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Tinybird } from "@chronark/zod-bird";
|
|
2
|
+
export declare function createGetWebhookEvents(tb: Tinybird): (params: any) => Promise<{
|
|
3
|
+
meta: {
|
|
4
|
+
name: string;
|
|
5
|
+
type: string;
|
|
6
|
+
}[];
|
|
7
|
+
rows?: number | undefined;
|
|
8
|
+
rows_before_limit_at_least?: number | undefined;
|
|
9
|
+
statistics?: {
|
|
10
|
+
elapsed?: number | undefined;
|
|
11
|
+
rows_read?: number | undefined;
|
|
12
|
+
bytes_read?: number | undefined;
|
|
13
|
+
} | undefined;
|
|
14
|
+
} & {
|
|
15
|
+
data: any[];
|
|
16
|
+
}>;
|
|
17
|
+
//# sourceMappingURL=get-webhook-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-webhook-events.d.ts","sourceRoot":"","sources":["../../src/analytics/get-webhook-events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAS7C,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ;;;;;;;;eAWskB,CAAC;iBAAuC,CAAC;kBAAwC,CAAC;;;;GAD1sB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createGetWebhookEvents = createGetWebhookEvents;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const webhookEventSchemaTB = zod_1.z.object({
|
|
6
|
+
webhook_id: zod_1.z.string(),
|
|
7
|
+
event_type: zod_1.z.string(),
|
|
8
|
+
payload: zod_1.z.string(),
|
|
9
|
+
status: zod_1.z.string(),
|
|
10
|
+
});
|
|
11
|
+
function createGetWebhookEvents(tb) {
|
|
12
|
+
return tb.buildPipe({
|
|
13
|
+
pipe: "get_webhook_events",
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
parameters: zod_1.z.object({
|
|
16
|
+
webhookId: zod_1.z.string(),
|
|
17
|
+
}),
|
|
18
|
+
// @ts-ignore
|
|
19
|
+
data: webhookEventSchemaTB,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=get-webhook-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-webhook-events.js","sourceRoot":"","sources":["../../src/analytics/get-webhook-events.ts"],"names":[],"mappings":";;AAUA,wDAUC;AApBD,6BAAuB;AAGvB,MAAM,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAA;AAEF,SAAgB,sBAAsB,CAAC,EAAY;IACjD,OAAO,EAAE,CAAC,SAAS,CAAC;QAClB,IAAI,EAAE,oBAAoB;QAC1B,aAAa;QACb,UAAU,EAAE,OAAC,CAAC,MAAM,CAAC;YACnB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;SACtB,CAAC;QACF,aAAa;QACb,IAAI,EAAE,oBAAoB;KAC3B,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,2 +1,20 @@
|
|
|
1
1
|
export * from "./abstract-analytics-provider";
|
|
2
|
+
export * from "./tinybird-client";
|
|
3
|
+
export * from "./record-click";
|
|
4
|
+
export * from "./record-lead";
|
|
5
|
+
export * from "./record-sale";
|
|
6
|
+
export * from "./record-link";
|
|
7
|
+
export * from "./record-approval";
|
|
8
|
+
export * from "./get-click-event";
|
|
9
|
+
export * from "./get-grant-event";
|
|
10
|
+
export * from "./get-lead-events";
|
|
11
|
+
export * from "./get-import-error-logs";
|
|
12
|
+
export * from "./get-webhook-events";
|
|
13
|
+
export * from "./log-conversion-events";
|
|
14
|
+
export * from "./log-import-error";
|
|
15
|
+
export * from "./record-webhook-event";
|
|
16
|
+
export * from "./get-geolocation";
|
|
17
|
+
export * from "./detect-bot";
|
|
18
|
+
export * from "./detect-qr";
|
|
19
|
+
export * from "./parse-user-agent";
|
|
2
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA"}
|
package/dist/analytics/index.js
CHANGED
|
@@ -15,4 +15,22 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./abstract-analytics-provider"), exports);
|
|
18
|
+
__exportStar(require("./tinybird-client"), exports);
|
|
19
|
+
__exportStar(require("./record-click"), exports);
|
|
20
|
+
__exportStar(require("./record-lead"), exports);
|
|
21
|
+
__exportStar(require("./record-sale"), exports);
|
|
22
|
+
__exportStar(require("./record-link"), exports);
|
|
23
|
+
__exportStar(require("./record-approval"), exports);
|
|
24
|
+
__exportStar(require("./get-click-event"), exports);
|
|
25
|
+
__exportStar(require("./get-grant-event"), exports);
|
|
26
|
+
__exportStar(require("./get-lead-events"), exports);
|
|
27
|
+
__exportStar(require("./get-import-error-logs"), exports);
|
|
28
|
+
__exportStar(require("./get-webhook-events"), exports);
|
|
29
|
+
__exportStar(require("./log-conversion-events"), exports);
|
|
30
|
+
__exportStar(require("./log-import-error"), exports);
|
|
31
|
+
__exportStar(require("./record-webhook-event"), exports);
|
|
32
|
+
__exportStar(require("./get-geolocation"), exports);
|
|
33
|
+
__exportStar(require("./detect-bot"), exports);
|
|
34
|
+
__exportStar(require("./detect-qr"), exports);
|
|
35
|
+
__exportStar(require("./parse-user-agent"), exports);
|
|
18
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA6C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analytics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA6C;AAC7C,oDAAiC;AACjC,iDAA8B;AAC9B,gDAA6B;AAC7B,gDAA6B;AAC7B,gDAA6B;AAC7B,oDAAiC;AACjC,oDAAiC;AACjC,oDAAiC;AACjC,oDAAiC;AACjC,0DAAuC;AACvC,uDAAoC;AACpC,0DAAuC;AACvC,qDAAkC;AAClC,yDAAsC;AACtC,oDAAiC;AACjC,+CAA4B;AAC5B,8CAA2B;AAC3B,qDAAkC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-conversion-events.d.ts","sourceRoot":"","sources":["../../src/analytics/log-conversion-events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAW7C,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ;;;GAMpD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createLogConversionEvent = createLogConversionEvent;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const schema = zod_1.z.object({
|
|
6
|
+
project_id: zod_1.z.string(),
|
|
7
|
+
link_id: zod_1.z.string().default(""),
|
|
8
|
+
path: zod_1.z.string(),
|
|
9
|
+
body: zod_1.z.string().default(""),
|
|
10
|
+
error: zod_1.z.string().default(""),
|
|
11
|
+
});
|
|
12
|
+
// Log the conversion events for debugging purposes (following Dub's pattern)
|
|
13
|
+
function createLogConversionEvent(tb) {
|
|
14
|
+
return tb.buildIngestEndpoint({
|
|
15
|
+
datasource: "access_conversion_events_log",
|
|
16
|
+
// @ts-ignore
|
|
17
|
+
event: schema,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=log-conversion-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-conversion-events.js","sourceRoot":"","sources":["../../src/analytics/log-conversion-events.ts"],"names":[],"mappings":";;AAYA,4DAMC;AAlBD,6BAAuB;AAGvB,MAAM,MAAM,GAAG,OAAC,CAAC,MAAM,CAAC;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CAC9B,CAAC,CAAA;AAEF,6EAA6E;AAC7E,SAAgB,wBAAwB,CAAC,EAAY;IACnD,OAAO,EAAE,CAAC,mBAAmB,CAAC;QAC5B,UAAU,EAAE,8BAA8B;QAC1C,aAAa;QACb,KAAK,EAAE,MAAM;KACd,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-import-error.d.ts","sourceRoot":"","sources":["../../src/analytics/log-import-error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAS7C,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ;;;GAMhD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createLogImportError = createLogImportError;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const importErrorLogSchema = zod_1.z.object({
|
|
6
|
+
project_id: zod_1.z.string(),
|
|
7
|
+
import_id: zod_1.z.string(),
|
|
8
|
+
error: zod_1.z.string(),
|
|
9
|
+
context: zod_1.z.string().default(""),
|
|
10
|
+
});
|
|
11
|
+
function createLogImportError(tb) {
|
|
12
|
+
return tb.buildIngestEndpoint({
|
|
13
|
+
datasource: "access_import_error_logs",
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
event: importErrorLogSchema,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=log-import-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-import-error.js","sourceRoot":"","sources":["../../src/analytics/log-import-error.ts"],"names":[],"mappings":";;AAUA,oDAMC;AAhBD,6BAAuB;AAGvB,MAAM,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CAChC,CAAC,CAAA;AAEF,SAAgB,oBAAoB,CAAC,EAAY;IAC/C,OAAO,EAAE,CAAC,mBAAmB,CAAC;QAC5B,UAAU,EAAE,0BAA0B;QACtC,aAAa;QACb,KAAK,EAAE,oBAAoB;KAC5B,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare function parseUserAgent(userAgent?: string): {
|
|
2
|
+
device: string;
|
|
3
|
+
vendor: string;
|
|
4
|
+
model: string;
|
|
5
|
+
browser: string;
|
|
6
|
+
version: string;
|
|
7
|
+
engine: string;
|
|
8
|
+
engineVersion: string;
|
|
9
|
+
os: string;
|
|
10
|
+
osVersion: string;
|
|
11
|
+
cpu: string;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=parse-user-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-user-agent.d.ts","sourceRoot":"","sources":["../../src/analytics/parse-user-agent.ts"],"names":[],"mappings":"AAEA,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,MAAM;;;;;;;;;;;EA+JhD"}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// User agent parser mimicking Dub/recordClick output, covering device/vendor/model/browser/browser_version/engine/engine_version/os/os_version/cpu
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.parseUserAgent = parseUserAgent;
|
|
5
|
+
function parseUserAgent(userAgent) {
|
|
6
|
+
if (!userAgent) {
|
|
7
|
+
return {
|
|
8
|
+
device: "Unknown",
|
|
9
|
+
vendor: "Unknown",
|
|
10
|
+
model: "Unknown",
|
|
11
|
+
browser: "Unknown",
|
|
12
|
+
version: "Unknown",
|
|
13
|
+
engine: "Unknown",
|
|
14
|
+
engineVersion: "Unknown",
|
|
15
|
+
os: "Unknown",
|
|
16
|
+
osVersion: "Unknown",
|
|
17
|
+
cpu: "Unknown"
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
// Heuristics based UA parsing, best effort (expand later if needed)
|
|
21
|
+
const ua = userAgent;
|
|
22
|
+
// const uaLower = userAgent.toLowerCase()
|
|
23
|
+
let browser = "Unknown";
|
|
24
|
+
let version = "Unknown";
|
|
25
|
+
// Browser & version
|
|
26
|
+
if (/edg\//i.test(ua)) {
|
|
27
|
+
browser = "Edge";
|
|
28
|
+
version = (ua.match(/edg\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
29
|
+
}
|
|
30
|
+
else if (/chrome|crios|crmo/i.test(ua)) {
|
|
31
|
+
browser = "Chrome";
|
|
32
|
+
version =
|
|
33
|
+
(ua.match(/chrome\/([\d.]+)/i) || ua.match(/crios\/([\d.]+)/i) || [])[1] ||
|
|
34
|
+
"Unknown";
|
|
35
|
+
}
|
|
36
|
+
else if (/firefox|fxios/i.test(ua)) {
|
|
37
|
+
browser = "Firefox";
|
|
38
|
+
version =
|
|
39
|
+
(ua.match(/firefox\/([\d.]+)/i) || ua.match(/fxios\/([\d.]+)/i) || [])[1] ||
|
|
40
|
+
"Unknown";
|
|
41
|
+
}
|
|
42
|
+
else if (/safari/i.test(ua) && !/chrome|crios|crmo|fxios|firefox|edg/i.test(ua)) {
|
|
43
|
+
browser = "Safari";
|
|
44
|
+
version = (ua.match(/version\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
45
|
+
}
|
|
46
|
+
else if (/opr\//i.test(ua)) {
|
|
47
|
+
browser = "Opera";
|
|
48
|
+
version = (ua.match(/opr\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
49
|
+
}
|
|
50
|
+
// Engine and version
|
|
51
|
+
let engine = "Unknown";
|
|
52
|
+
let engineVersion = "Unknown";
|
|
53
|
+
if (/webkit/i.test(ua)) {
|
|
54
|
+
engine = "WebKit";
|
|
55
|
+
engineVersion = (ua.match(/applewebkit\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
56
|
+
}
|
|
57
|
+
else if (/gecko/i.test(ua) && !/webkit/i.test(ua)) {
|
|
58
|
+
engine = "Gecko";
|
|
59
|
+
engineVersion = (ua.match(/gecko\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
60
|
+
}
|
|
61
|
+
else if (/trident/i.test(ua)) {
|
|
62
|
+
engine = "Trident";
|
|
63
|
+
engineVersion = (ua.match(/trident\/([\d.]+)/i) || [])[1] || "Unknown";
|
|
64
|
+
}
|
|
65
|
+
else if (/blink/i.test(ua)) {
|
|
66
|
+
engine = "Blink";
|
|
67
|
+
engineVersion = "Unknown";
|
|
68
|
+
}
|
|
69
|
+
// OS and version
|
|
70
|
+
let os = "Unknown";
|
|
71
|
+
let osVersion = "Unknown";
|
|
72
|
+
if (/windows nt/i.test(ua)) {
|
|
73
|
+
os = "Windows";
|
|
74
|
+
osVersion = (ua.match(/windows nt ([\d.]+)/i) || [])[1] || "Unknown";
|
|
75
|
+
}
|
|
76
|
+
else if (/android/i.test(ua)) {
|
|
77
|
+
os = "Android";
|
|
78
|
+
osVersion = (ua.match(/android\s([\d.]+)/i) || [])[1] || "Unknown";
|
|
79
|
+
}
|
|
80
|
+
else if (/iphone os/i.test(ua)) {
|
|
81
|
+
os = "iOS";
|
|
82
|
+
osVersion = (ua.match(/iphone os\s([\d_]+)/i) || [])[1]?.replace(/_/g, ".") || "Unknown";
|
|
83
|
+
}
|
|
84
|
+
else if (/ipad; cpu os/i.test(ua)) {
|
|
85
|
+
os = "iOS";
|
|
86
|
+
osVersion = (ua.match(/cpu os\s([\d_]+)/i) || [])[1]?.replace(/_/g, ".") || "Unknown";
|
|
87
|
+
}
|
|
88
|
+
else if (/mac os x/i.test(ua)) {
|
|
89
|
+
os = "macOS";
|
|
90
|
+
osVersion = (ua.match(/mac os x\s([\d_]+)/i) || [])[1]?.replace(/_/g, ".") || "Unknown";
|
|
91
|
+
}
|
|
92
|
+
else if (/linux/i.test(ua)) {
|
|
93
|
+
os = "Linux";
|
|
94
|
+
osVersion = "Unknown";
|
|
95
|
+
}
|
|
96
|
+
// Device type/model/vendor
|
|
97
|
+
let device = "Desktop";
|
|
98
|
+
let vendor = "Unknown";
|
|
99
|
+
let model = "Unknown";
|
|
100
|
+
// Tablets
|
|
101
|
+
if (/ipad/i.test(ua)) {
|
|
102
|
+
device = "Tablet";
|
|
103
|
+
vendor = "Apple";
|
|
104
|
+
model = "iPad";
|
|
105
|
+
}
|
|
106
|
+
else if (/tablet/i.test(ua)) {
|
|
107
|
+
device = "Tablet";
|
|
108
|
+
model = "Tablet";
|
|
109
|
+
}
|
|
110
|
+
// Phones
|
|
111
|
+
else if (/mobile/i.test(ua) && /iphone/i.test(ua)) {
|
|
112
|
+
device = "Mobile";
|
|
113
|
+
vendor = "Apple";
|
|
114
|
+
model = "iPhone";
|
|
115
|
+
}
|
|
116
|
+
else if (/mobile/i.test(ua) && /android/i.test(ua)) {
|
|
117
|
+
device = "Mobile";
|
|
118
|
+
vendor = "Android";
|
|
119
|
+
const m = ua.match(/android.*;\s*([^;)]*)/i);
|
|
120
|
+
model = m ? m[1].trim() : "Android";
|
|
121
|
+
}
|
|
122
|
+
else if (/mobile/i.test(ua)) {
|
|
123
|
+
device = "Mobile";
|
|
124
|
+
model = "Mobile";
|
|
125
|
+
}
|
|
126
|
+
// Desktop or fallback
|
|
127
|
+
else if (/macintosh/i.test(ua)) {
|
|
128
|
+
device = "Desktop";
|
|
129
|
+
vendor = "Apple";
|
|
130
|
+
model = "Mac";
|
|
131
|
+
}
|
|
132
|
+
else if (/windows/i.test(ua)) {
|
|
133
|
+
device = "Desktop";
|
|
134
|
+
vendor = "Microsoft";
|
|
135
|
+
model = "PC";
|
|
136
|
+
}
|
|
137
|
+
else if (/linux/i.test(ua)) {
|
|
138
|
+
device = "Desktop";
|
|
139
|
+
vendor = "Linux";
|
|
140
|
+
model = "PC";
|
|
141
|
+
}
|
|
142
|
+
// Try to extract more vendor/model from common Android patterns (optional, best-effort)
|
|
143
|
+
if (vendor === "Android" && model !== "Android") {
|
|
144
|
+
// Many Androids: "Build/{model}" or other variants
|
|
145
|
+
const build = ua.match(/;\s?([a-z0-9\s\-]+)\s?build\//i);
|
|
146
|
+
if (build && build[1]) {
|
|
147
|
+
model = build[1].trim();
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// CPU architecture
|
|
151
|
+
let cpu = "Unknown";
|
|
152
|
+
if (/arm|aarch64/i.test(ua)) {
|
|
153
|
+
cpu = "ARM";
|
|
154
|
+
}
|
|
155
|
+
else if (/x86_64|win64|amd64|wow64/i.test(ua)) {
|
|
156
|
+
cpu = "x86_64";
|
|
157
|
+
}
|
|
158
|
+
else if (/i[3456]86/i.test(ua)) {
|
|
159
|
+
cpu = "x86";
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
device,
|
|
163
|
+
vendor,
|
|
164
|
+
model,
|
|
165
|
+
browser,
|
|
166
|
+
version,
|
|
167
|
+
engine,
|
|
168
|
+
engineVersion,
|
|
169
|
+
os,
|
|
170
|
+
osVersion,
|
|
171
|
+
cpu
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=parse-user-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-user-agent.js","sourceRoot":"","sources":["../../src/analytics/parse-user-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { Tinybird } from "@chronark/zod-bird";
|
|
3
|
+
export declare const approvalEventSchemaTB: z.ZodObject<{
|
|
4
|
+
approval_id: z.ZodString;
|
|
5
|
+
link_id: z.ZodString;
|
|
6
|
+
requester_id: z.ZodString;
|
|
7
|
+
approver_id: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
8
|
+
resource_type: z.ZodString;
|
|
9
|
+
resource_id: z.ZodString;
|
|
10
|
+
decision: z.ZodEnum<["approve", "reject", "pending"]>;
|
|
11
|
+
requested_at: z.ZodEffects<z.ZodDate, string, Date>;
|
|
12
|
+
processed_at: z.ZodEffects<z.ZodNullable<z.ZodDate>, string, Date | null>;
|
|
13
|
+
project_id: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
14
|
+
ip: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
15
|
+
continent: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
16
|
+
country: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
17
|
+
region: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
18
|
+
city: z.ZodEffects<z.ZodNullable<z.ZodString>, string, string | null>;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
continent: string;
|
|
21
|
+
country: string;
|
|
22
|
+
region: string;
|
|
23
|
+
city: string;
|
|
24
|
+
ip: string;
|
|
25
|
+
link_id: string;
|
|
26
|
+
project_id: string;
|
|
27
|
+
approval_id: string;
|
|
28
|
+
requester_id: string;
|
|
29
|
+
approver_id: string;
|
|
30
|
+
resource_type: string;
|
|
31
|
+
resource_id: string;
|
|
32
|
+
decision: "approve" | "reject" | "pending";
|
|
33
|
+
requested_at: string;
|
|
34
|
+
processed_at: string;
|
|
35
|
+
}, {
|
|
36
|
+
continent: string | null;
|
|
37
|
+
country: string | null;
|
|
38
|
+
region: string | null;
|
|
39
|
+
city: string | null;
|
|
40
|
+
ip: string | null;
|
|
41
|
+
link_id: string;
|
|
42
|
+
project_id: string | null;
|
|
43
|
+
approval_id: string;
|
|
44
|
+
requester_id: string;
|
|
45
|
+
approver_id: string | null;
|
|
46
|
+
resource_type: string;
|
|
47
|
+
resource_id: string;
|
|
48
|
+
decision: "approve" | "reject" | "pending";
|
|
49
|
+
requested_at: Date;
|
|
50
|
+
processed_at: Date | null;
|
|
51
|
+
}>;
|
|
52
|
+
export declare function createRecordApproval(tb: Tinybird): (events: any) => Promise<{
|
|
53
|
+
successful_rows: number;
|
|
54
|
+
quarantined_rows: number;
|
|
55
|
+
}>;
|
|
56
|
+
//# sourceMappingURL=record-approval.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-approval.d.ts","sourceRoot":"","sources":["../../src/analytics/record-approval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAG7C,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBhC,CAAA;AAEF,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,QAAQ;;;GAOhD"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.approvalEventSchemaTB = void 0;
|
|
4
|
+
exports.createRecordApproval = createRecordApproval;
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
// ETO approval workflow event schema (following Dub's pattern)
|
|
7
|
+
exports.approvalEventSchemaTB = zod_1.z.object({
|
|
8
|
+
approval_id: zod_1.z.string(),
|
|
9
|
+
link_id: zod_1.z.string(),
|
|
10
|
+
requester_id: zod_1.z.string(),
|
|
11
|
+
approver_id: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
12
|
+
resource_type: zod_1.z.string(),
|
|
13
|
+
resource_id: zod_1.z.string(),
|
|
14
|
+
decision: zod_1.z.enum(["approve", "reject", "pending"]),
|
|
15
|
+
requested_at: zod_1.z.date().transform((v) => v.toISOString().replace("T", " ").replace("Z", "")),
|
|
16
|
+
processed_at: zod_1.z.date().nullable().transform((v) => v ? v.toISOString().replace("T", " ").replace("Z", "") : ""),
|
|
17
|
+
project_id: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
18
|
+
ip: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
19
|
+
continent: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
20
|
+
country: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
21
|
+
region: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
22
|
+
city: zod_1.z.string().nullable().transform((v) => v || ""),
|
|
23
|
+
});
|
|
24
|
+
function createRecordApproval(tb) {
|
|
25
|
+
return tb.buildIngestEndpoint({
|
|
26
|
+
datasource: "access_approval_events",
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
event: exports.approvalEventSchemaTB,
|
|
29
|
+
wait: true,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=record-approval.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-approval.js","sourceRoot":"","sources":["../../src/analytics/record-approval.ts"],"names":[],"mappings":";;;AAsBA,oDAOC;AA7BD,6BAAuB;AAGvB,+DAA+D;AAClD,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;IACvB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE;IACzB,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;IACvB,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,YAAY,EAAE,OAAC,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC3F,YAAY,EAAE,OAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/G,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;CACtD,CAAC,CAAA;AAEF,SAAgB,oBAAoB,CAAC,EAAY;IAC/C,OAAO,EAAE,CAAC,mBAAmB,CAAC;QAC5B,UAAU,EAAE,wBAAwB;QACpC,aAAa;QACb,KAAK,EAAE,6BAAqB;QAC5B,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recording access link clicks with geo, ua, referer and timestamp data
|
|
3
|
+
* Following Dub's recordClick pattern exactly, adapted for ETO access links
|
|
4
|
+
**/
|
|
5
|
+
export declare function recordClick({ req, clickId, linkId, domain, key, url, userId, projectId, skipRatelimit, timestamp, referrer, trigger, eventName, tinybirdConfig, ip, userAgent, country, region, city, continent, latitude, longitude, }: {
|
|
6
|
+
req?: Request;
|
|
7
|
+
clickId?: string;
|
|
8
|
+
linkId: string;
|
|
9
|
+
domain: string;
|
|
10
|
+
key: string;
|
|
11
|
+
url?: string;
|
|
12
|
+
userId: string;
|
|
13
|
+
projectId?: string;
|
|
14
|
+
skipRatelimit?: boolean;
|
|
15
|
+
timestamp?: string;
|
|
16
|
+
referrer?: string;
|
|
17
|
+
trigger?: string;
|
|
18
|
+
eventName?: string;
|
|
19
|
+
tinybirdConfig: {
|
|
20
|
+
apiKey: string;
|
|
21
|
+
apiUrl: string;
|
|
22
|
+
};
|
|
23
|
+
ip?: string;
|
|
24
|
+
userAgent?: string;
|
|
25
|
+
country?: string;
|
|
26
|
+
region?: string;
|
|
27
|
+
city?: string;
|
|
28
|
+
continent?: string;
|
|
29
|
+
latitude?: string;
|
|
30
|
+
longitude?: string;
|
|
31
|
+
}): Promise<any>;
|
|
32
|
+
//# sourceMappingURL=record-click.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-click.d.ts","sourceRoot":"","sources":["../../src/analytics/record-click.ts"],"names":[],"mappings":"AAWA;;;IAGI;AACJ,wBAAsB,WAAW,CAAC,EAChC,GAAG,EACH,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,GAAG,EACH,MAAM,EACN,SAAS,EACT,aAAa,EACb,SAAS,EACT,QAAQ,EACR,OAAgB,EAChB,SAA0B,EAC1B,cAAc,EAEd,EAAE,EACF,SAAS,EACT,OAAO,EACP,MAAM,EACN,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,SAAS,GACV,EAAE;IACD,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAClD,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,gBA2HA"}
|