@hanzo/event 0.3.50 → 0.3.52

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/index.d.cts CHANGED
@@ -7,10 +7,10 @@ export { scrubText, redactSecrets, scrubPII } from './scrub';
7
7
  export { EVENTS, EXCEPTION, PAGEVIEW } from './events';
8
8
  export { exceptionEntry, exceptionProperties, fingerprint, digest } from './exception';
9
9
  export type { EventName } from './events';
10
- export { CONSENT_COOKIE, CONSENT_EVENT, acceptAll, asks, gpc, read as readConsent, refused, region, rejectAll, render as renderConsent, save as saveConsent, stored as storedConsent, } from './consent';
11
- export type { Choice, Region } from './consent';
10
+ export { CONSENT_COOKIE, CONSENT_EVENT, CONSENT_VERSION_COOKIE, POLICY_EVENT, acceptAll, asks, gpc, notices, policy as consentPolicy, serve as serveConsent, read as readConsent, refused, region, rejectAll, render as renderConsent, save as saveConsent, stored as storedConsent, } from './consent';
11
+ export type { Choice, Policy as ConsentRule, Region } from './consent';
12
12
  export { CLICK_IDS, capture as captureClick, touch } from './touch';
13
- export { start as startTags, ready as tagsReady, track, mirror, reach, visit, SITE_KEY } from './tags';
13
+ export { start as startTags, ready as tagsReady, track, mirror, reach, visit } from './tags';
14
14
  export type { BrowserTag, TagOptions } from './tags';
15
15
  export { commerceItem, worth } from './items';
16
16
  export type { CommerceItem, PlanLine } from './items';
@@ -24,6 +24,6 @@ export type { AnalyticsConfig, Attribution, CaptureErrorOptions, Cohort, EventKi
24
24
  * correctly while configuring nothing. `keyFor` takes an optional keyring so a
25
25
  * runtime that receives one (hanzo.id serves every brand from one image) resolves
26
26
  * through this same function rather than a second copy of it. */
27
- export { ORG_DOMAIN, ORG_KEY, orgOf, keyFor, keyForPage } from './org';
27
+ export { ORG_DOMAIN, ORG_KEY, SITE_KEY, siteKey, orgOf, keyFor, keyForPage } from './org';
28
28
  export type { Keyring } from './org';
29
29
  //# sourceMappingURL=index.d.ts.map
package/dist/index.d.ts CHANGED
@@ -7,10 +7,10 @@ export { scrubText, redactSecrets, scrubPII } from './scrub';
7
7
  export { EVENTS, EXCEPTION, PAGEVIEW } from './events';
8
8
  export { exceptionEntry, exceptionProperties, fingerprint, digest } from './exception';
9
9
  export type { EventName } from './events';
10
- export { CONSENT_COOKIE, CONSENT_EVENT, acceptAll, asks, gpc, read as readConsent, refused, region, rejectAll, render as renderConsent, save as saveConsent, stored as storedConsent, } from './consent';
11
- export type { Choice, Region } from './consent';
10
+ export { CONSENT_COOKIE, CONSENT_EVENT, CONSENT_VERSION_COOKIE, POLICY_EVENT, acceptAll, asks, gpc, notices, policy as consentPolicy, serve as serveConsent, read as readConsent, refused, region, rejectAll, render as renderConsent, save as saveConsent, stored as storedConsent, } from './consent';
11
+ export type { Choice, Policy as ConsentRule, Region } from './consent';
12
12
  export { CLICK_IDS, capture as captureClick, touch } from './touch';
13
- export { start as startTags, ready as tagsReady, track, mirror, reach, visit, SITE_KEY } from './tags';
13
+ export { start as startTags, ready as tagsReady, track, mirror, reach, visit } from './tags';
14
14
  export type { BrowserTag, TagOptions } from './tags';
15
15
  export { commerceItem, worth } from './items';
16
16
  export type { CommerceItem, PlanLine } from './items';
@@ -24,6 +24,6 @@ export type { AnalyticsConfig, Attribution, CaptureErrorOptions, Cohort, EventKi
24
24
  * correctly while configuring nothing. `keyFor` takes an optional keyring so a
25
25
  * runtime that receives one (hanzo.id serves every brand from one image) resolves
26
26
  * through this same function rather than a second copy of it. */
27
- export { ORG_DOMAIN, ORG_KEY, orgOf, keyFor, keyForPage } from './org';
27
+ export { ORG_DOMAIN, ORG_KEY, SITE_KEY, siteKey, orgOf, keyFor, keyForPage } from './org';
28
28
  export type { Keyring } from './org';
29
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,SAAS,EACT,eAAe,EACf,YAAY,EACZ,OAAO,EACP,SAAS,EACT,aAAa,GACd,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAClE,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EACL,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,WAAW,EAAE,OAAO,EAAE,MAAM,EACzF,SAAS,EAAE,MAAM,IAAI,aAAa,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,IAAI,aAAa,GACjF,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACtG,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACvD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC3E,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,MAAM,EACN,OAAO,GACR,MAAM,eAAe,CAAA;AACtB,YAAY,EACV,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,SAAS,EACT,SAAS,EACT,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,SAAS,EACT,SAAS,GACV,MAAM,SAAS,CAAA;AAEhB;;;kEAGkE;AAClE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACtE,YAAY,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,SAAS,EACT,eAAe,EACf,YAAY,EACZ,OAAO,EACP,SAAS,EACT,aAAa,GACd,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAClE,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACtF,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EACL,cAAc,EAAE,aAAa,EAAE,sBAAsB,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,KAAK,IAAI,YAAY,EAAE,IAAI,IAAI,WAAW,EAAE,OAAO,EAAE,MAAM,EACxL,SAAS,EAAE,MAAM,IAAI,aAAa,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,IAAI,aAAa,GACjF,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,MAAM,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC5F,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7C,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACvD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC3E,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,MAAM,EACN,OAAO,GACR,MAAM,eAAe,CAAA;AACtB,YAAY,EACV,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,MAAM,EACN,SAAS,EACT,SAAS,EACT,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,SAAS,EACT,SAAS,GACV,MAAM,SAAS,CAAA;AAEhB;;;kEAGkE;AAClE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACzF,YAAY,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA"}
package/dist/index.mjs CHANGED
@@ -114,6 +114,30 @@ var ORG_KEY = Object.freeze({
114
114
  lux: "pk-gUZp6ZVfhJzSwK-rb4oLbVkpCnMBx5uSCpxf_5yEhQk",
115
115
  zoo: "pk-3TKpKnERV9AQSsBUERWkZejC1O1mUxc1jRzsP3MPbs4"
116
116
  });
117
+ var SITE_KEY = Object.freeze({
118
+ "hanzo.ai": "pk-CmfLA2K6kvsPflrS9DSkt06H_kSoQB_21sjedt6VJdc",
119
+ "www.hanzo.ai": "pk-CmfLA2K6kvsPflrS9DSkt06H_kSoQB_21sjedt6VJdc",
120
+ "hanzo.app": "pk-wlnXN2a9_vmCm60yTFtQ629Q8TyuaxBNZbY1RWT72gQ",
121
+ "hanzo.team": "pk-NCzD2FiHpZv8KUpkCX4olT1LJOJsMxBC_Z8NkiQsOFQ",
122
+ "pay.hanzo.ai": "pk-eX6kv7JZNoiYn1WkeJH3tT_8OvkVYScmCXnLMwxTKf8",
123
+ "platform.hanzo.ai": "pk-My1RpZLEUnTj8vAdPbWKYdDUuhxZJ4dVjHcwjZN4rZ8",
124
+ "docs.hanzo.ai": "pk-jukhtjMT2ymoeBDAeFjINQWlBv-v9sNn1TPztiCrrwk",
125
+ "hanzo.bot": "pk-W5d7Mn7ZukT7igyscIy6Pqe8JpA0Ge604Yn4xNR4JCU",
126
+ "hanzo.chat": "pk-ATxWeB2jNyRSxDgqnkGoDj3CCbzrmTxSktUh9zlrO-E",
127
+ "hanzo.id": "pk-_GVF3KlaqprlPHDumBMRFeFU1lIGOaarQfgimNVDIo8",
128
+ "hanzo.industries": "pk-Vh1wvL2HqIAv9qpVvmrznTI9uMHrTD-jyIC-vnlBsgY",
129
+ "hanzo.market": "pk-DN3xQFa0H61epUVg9OkiOYLzCdteNt9hE6f-S-ednjQ",
130
+ "hanzo.network": "pk-YJ2eiA_7ckLStMPte8Ar8FsmRp_ycmeIeRbpGprZYmM",
131
+ "hanzo.agency": "pk-26a2clOaJFe24aKJZ0PkI-GWR9F4EEa8rthHzgy_Efw",
132
+ "console.hanzo.ai": "pk-oFNXoiO1wOD8PqGdHYyiSq6jaNCdrd7TpztGpwM2ZiQ",
133
+ "admin.hanzo.ai": "pk-RYZwxkomW-tlAnEu2DKo_kAzcxFbSF2YiYcsUY48QL0",
134
+ "bot.hanzo.ai": "pk-W5d7Mn7ZukT7igyscIy6Pqe8JpA0Ge604Yn4xNR4JCU",
135
+ "cloud.hanzo.ai": "pk-RAfEGHPoNdCEU9fnA_cPd_Xo9Tci44rlYQV9xuJ1Ob0"
136
+ });
137
+ function siteKey(host) {
138
+ const h = normalize(host).replace(/^www\./, "");
139
+ return SITE_KEY[h] ?? (h.endsWith(".hanzo.app") ? SITE_KEY["hanzo.app"] : void 0);
140
+ }
117
141
  var PUBLISHABLE = "pk-";
118
142
  var normalize = (host) => host.trim().toLowerCase().replace(/\.$/, "").split(":")[0] ?? "";
119
143
  function orgOf(host) {
@@ -132,6 +156,10 @@ function orgOf(host) {
132
156
  return best;
133
157
  }
134
158
  function keyFor(host, keyring = ORG_KEY) {
159
+ if (keyring === ORG_KEY) {
160
+ const site = siteKey(host);
161
+ if (site) return site;
162
+ }
135
163
  const org = orgOf(host);
136
164
  if (!org) return void 0;
137
165
  const key = keyring[org];
@@ -632,7 +660,7 @@ function stripLink(href) {
632
660
  }
633
661
 
634
662
  // package.json
635
- var version = "0.3.50";
663
+ var version = "0.3.52";
636
664
 
637
665
  // src/version.ts
638
666
  var VERSION = version;
@@ -1107,7 +1135,28 @@ function set(name, value, days) {
1107
1135
 
1108
1136
  // src/consent.ts
1109
1137
  var CONSENT_COOKIE = "hz_consent";
1138
+ var CONSENT_VERSION_COOKIE = "hz_consent_v";
1139
+ var POLICY_EVENT = "hzpolicy";
1110
1140
  var CONSENT_EVENT = "hzconsent";
1141
+ var served;
1142
+ function serve(p) {
1143
+ if (p == null) {
1144
+ served = void 0;
1145
+ return;
1146
+ }
1147
+ const d = p;
1148
+ if (d.mode !== "opt-in" && d.mode !== "opt-out" || !d.defaults) return;
1149
+ served = {
1150
+ region: String(d.region ?? ""),
1151
+ mode: d.mode,
1152
+ defaults: { analytics: !!d.defaults.analytics, marketing: !!d.defaults.marketing, ads: !!d.defaults.ads },
1153
+ gpc: d.gpc === true,
1154
+ version: Number(d.version) || 0,
1155
+ notice: typeof d.notice === "string" ? d.notice : void 0
1156
+ };
1157
+ if (typeof window !== "undefined") window.dispatchEvent(new Event(POLICY_EVENT));
1158
+ }
1159
+ var policy = () => served;
1111
1160
  var US = /^(America\/(New_York|Chicago|Denver|Los_Angeles|Phoenix|Anchorage|Adak|Boise|Detroit|Juneau|Sitka|Nome|Yakutat|Menominee|Metlakatla|Indiana\/.*|Kentucky\/.*|North_Dakota\/.*)|Pacific\/Honolulu|US\/.*)$/;
1112
1161
  function gpc() {
1113
1162
  if (typeof navigator === "undefined") return false;
@@ -1120,6 +1169,7 @@ function refused() {
1120
1169
  return gpc() || dnt === "1" || dnt === "yes";
1121
1170
  }
1122
1171
  function region() {
1172
+ if (served) return served.mode;
1123
1173
  try {
1124
1174
  const zone = Intl.DateTimeFormat().resolvedOptions().timeZone ?? "";
1125
1175
  return US.test(zone) ? "opt-out" : "opt-in";
@@ -1128,23 +1178,28 @@ function region() {
1128
1178
  }
1129
1179
  }
1130
1180
  function stored() {
1131
- return get(CONSENT_COOKIE) !== void 0;
1181
+ if (get(CONSENT_COOKIE) === void 0) return false;
1182
+ return !served || get(CONSENT_VERSION_COOKIE) === String(served.version);
1132
1183
  }
1133
1184
  function read2() {
1134
- const kept = get(CONSENT_COOKIE);
1135
- const on = kept !== void 0 ? kept.split(",") : region() === "opt-in" || refused() ? [] : ["analytics", "marketing", "ads"];
1185
+ const kept = stored() ? get(CONSENT_COOKIE) : void 0;
1186
+ const on = kept !== void 0 ? kept.split(",") : served ? ["analytics", "marketing", "ads"].filter((k) => served.defaults[k]) : region() === "opt-in" ? [] : gpc() ? ["analytics"] : ["analytics", "marketing", "ads"];
1136
1187
  const has = (k) => on.includes(k);
1137
1188
  return { analytics: has("analytics"), marketing: has("marketing") && !gpc(), ads: has("ads") && !gpc() };
1138
1189
  }
1139
1190
  function asks() {
1140
1191
  return typeof document !== "undefined" && region() === "opt-in" && !stored();
1141
1192
  }
1193
+ function notices() {
1194
+ return typeof document !== "undefined" && region() === "opt-out" && !stored();
1195
+ }
1142
1196
  function render(c) {
1143
1197
  return ["analytics", "marketing", "ads"].filter((k) => c[k]).join(",");
1144
1198
  }
1145
1199
  function save(c) {
1146
1200
  const out = { analytics: c.analytics, marketing: c.marketing && !gpc(), ads: c.ads && !gpc() };
1147
1201
  set(CONSENT_COOKIE, render(out), 395);
1202
+ set(CONSENT_VERSION_COOKIE, String(served?.version ?? 0), 395);
1148
1203
  if (typeof window !== "undefined") window.dispatchEvent(new Event(CONSENT_EVENT));
1149
1204
  }
1150
1205
  var acceptAll = () => save({ analytics: true, marketing: true, ads: true });
@@ -1192,22 +1247,6 @@ function touch(c) {
1192
1247
  }
1193
1248
  return out;
1194
1249
  }
1195
- var SITE_KEY = Object.freeze({
1196
- "hanzo.ai": "pk-CmfLA2K6kvsPflrS9DSkt06H_kSoQB_21sjedt6VJdc",
1197
- "www.hanzo.ai": "pk-CmfLA2K6kvsPflrS9DSkt06H_kSoQB_21sjedt6VJdc",
1198
- "hanzo.app": "pk-wlnXN2a9_vmCm60yTFtQ629Q8TyuaxBNZbY1RWT72gQ",
1199
- "hanzo.team": "pk-NCzD2FiHpZv8KUpkCX4olT1LJOJsMxBC_Z8NkiQsOFQ",
1200
- "pay.hanzo.ai": "pk-eX6kv7JZNoiYn1WkeJH3tT_8OvkVYScmCXnLMwxTKf8",
1201
- "platform.hanzo.ai": "pk-My1RpZLEUnTj8vAdPbWKYdDUuhxZJ4dVjHcwjZN4rZ8",
1202
- "docs.hanzo.ai": "pk-jukhtjMT2ymoeBDAeFjINQWlBv-v9sNn1TPztiCrrwk",
1203
- "hanzo.bot": "pk-W5d7Mn7ZukT7igyscIy6Pqe8JpA0Ge604Yn4xNR4JCU",
1204
- "hanzo.chat": "pk-ATxWeB2jNyRSxDgqnkGoDj3CCbzrmTxSktUh9zlrO-E",
1205
- "hanzo.id": "pk-_GVF3KlaqprlPHDumBMRFeFU1lIGOaarQfgimNVDIo8",
1206
- "hanzo.industries": "pk-Vh1wvL2HqIAv9qpVvmrznTI9uMHrTD-jyIC-vnlBsgY",
1207
- "hanzo.market": "pk-DN3xQFa0H61epUVg9OkiOYLzCdteNt9hE6f-S-ednjQ",
1208
- "hanzo.network": "pk-YJ2eiA_7ckLStMPte8Ar8FsmRp_ycmeIeRbpGprZYmM",
1209
- "cloud.hanzo.ai": "pk-RAfEGHPoNdCEU9fnA_cPd_Xo9Tci44rlYQV9xuJ1Ob0"
1210
- });
1211
1250
  var page = () => window;
1212
1251
  var tags = [];
1213
1252
  var configured = false;
@@ -1401,7 +1440,7 @@ function start(o = {}) {
1401
1440
  const base = (o.base ?? "https://api.hanzo.ai").replace(/\/$/, "");
1402
1441
  const q = new URLSearchParams();
1403
1442
  const host = o.host ?? window.location.hostname;
1404
- const key = o.key ?? SITE_KEY[host];
1443
+ const key = o.key ?? siteKey(host);
1405
1444
  if (key) q.set("key", key);
1406
1445
  q.set("host", host);
1407
1446
  const answer = (list) => {
@@ -1412,6 +1451,7 @@ function start(o = {}) {
1412
1451
  const cap = setTimeout(() => answer([]), 3e3);
1413
1452
  fetch(`${base}/v1/project/tags?${q}`).then((r) => r.ok ? r.json() : { tags: [] }).then((j) => {
1414
1453
  clearTimeout(cap);
1454
+ serve(j.consent);
1415
1455
  answer(Array.isArray(j.tags) ? j.tags : []);
1416
1456
  }).catch(() => {
1417
1457
  clearTimeout(cap);
@@ -1615,6 +1655,6 @@ var COHORTS = {
1615
1655
  * curl -fsSL https://unpkg.com/@hanzo/event/src/anon.js -o apps/analytics/anon.js
1616
1656
  */
1617
1657
 
1618
- export { Analytics, CLICK_IDS, COHORTS, CONSENT_COOKIE, CONSENT_EVENT, GOALS, LINK_PARAMS, ORG_DOMAIN, ORG_KEY, SITE_KEY, VERSION, acceptAll, asks, capture as captureClick, commerceItem, createAnalytics, deriveChannel, digest, exceptionEntry, exceptionProperties, fingerprint, framesFromStack, getCohort, getFirstTouch, gpc, hasAttribution, hostOf, isoWeek, keyFor, keyForPage, linkUrl, mirror, orgOf, parseAttribution, reach, read2 as readConsent, readLink, redactSecrets, refused, region, rejectAll, render as renderConsent, resetClients, save as saveConsent, scrubPII, scrubText, start as startTags, stored as storedConsent, stripLink, ready as tagsReady, touch, track, hzUuidv7 as uuidv7, uuidv7Time, visit, worth };
1658
+ export { Analytics, CLICK_IDS, COHORTS, CONSENT_COOKIE, CONSENT_EVENT, CONSENT_VERSION_COOKIE, GOALS, LINK_PARAMS, ORG_DOMAIN, ORG_KEY, POLICY_EVENT, SITE_KEY, VERSION, acceptAll, asks, capture as captureClick, commerceItem, policy as consentPolicy, createAnalytics, deriveChannel, digest, exceptionEntry, exceptionProperties, fingerprint, framesFromStack, getCohort, getFirstTouch, gpc, hasAttribution, hostOf, isoWeek, keyFor, keyForPage, linkUrl, mirror, notices, orgOf, parseAttribution, reach, read2 as readConsent, readLink, redactSecrets, refused, region, rejectAll, render as renderConsent, resetClients, save as saveConsent, scrubPII, scrubText, serve as serveConsent, siteKey, start as startTags, stored as storedConsent, stripLink, ready as tagsReady, touch, track, hzUuidv7 as uuidv7, uuidv7Time, visit, worth };
1619
1659
  //# sourceMappingURL=index.mjs.map
1620
1660
  //# sourceMappingURL=index.mjs.map