@levo-so/core 0.3.10 → 0.3.12

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.
Files changed (2) hide show
  1. package/dist/index.d.ts +41 -0
  2. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -1185,6 +1185,45 @@ export declare namespace ILevoAudience {
1185
1185
  properties: Record<string, any>;
1186
1186
  withLock?: boolean;
1187
1187
  }
1188
+ /**
1189
+ * The session-scoped facts of a /v2 ingest request, sent as the envelope's
1190
+ * `session` key: `{ session, events }`. A request belongs to exactly one
1191
+ * visit, so these are request-level facts, the events array describes only
1192
+ * the actions.
1193
+ *
1194
+ * Every field is optional and sent at most once per session. The server
1195
+ * merges whatever arrives onto the session row, so late-resolving facts can
1196
+ * ride a later request as a partial object. The merge rule differs per
1197
+ * field: `properties` gap-fills, where the first value recorded for a key
1198
+ * wins and a later value for the same key is dropped; `referrer` and the
1199
+ * campaign params are written once and then frozen; `url` is set when the
1200
+ * row is created and never patched; `locale`, `timezone` and the booleans
1201
+ * take the freshest value.
1202
+ */
1203
+ export interface SessionTraits {
1204
+ /** When the SESSION started, not when the request was sent. */
1205
+ created_at?: string;
1206
+ dark_mode?: Traits["dark_mode"];
1207
+ locale?: Traits["locale"];
1208
+ private_mode?: Traits["private_mode"];
1209
+ /**
1210
+ * The device/environment bag: screen, GPU, memory, cores, battery,
1211
+ * camera/mic. Maps 1:1 onto the session row's column of the same name, and
1212
+ * at envelope level there is no collision with the event's own bag.
1213
+ *
1214
+ * Gap-filled server-side, so a key sent twice keeps its first value. Send a
1215
+ * corrected reading and the server ignores it.
1216
+ */
1217
+ properties?: Traits["properties"];
1218
+ referrer?: Traits["referrer"];
1219
+ timezone?: Traits["timezone"];
1220
+ /**
1221
+ * The LANDING url. The page the visit started on, query string included.
1222
+ * The session row is only ever created from a request carrying it, and its
1223
+ * campaign attribution is derived from nothing else.
1224
+ */
1225
+ url?: string;
1226
+ }
1188
1227
  export type BaseProperties = Traits & {
1189
1228
  resource: string;
1190
1229
  identifier: string;
@@ -2045,6 +2084,8 @@ export declare namespace LevoEvent {
2045
2084
  accept_registration: boolean;
2046
2085
  one_attendee_per_account: boolean;
2047
2086
  max_capacity: number;
2087
+ /** Registered attendees, returned by the list/read endpoints — no extra call needed. */
2088
+ attendee_count?: number;
2048
2089
  banners: IMediaObject[];
2049
2090
  created_at: Date;
2050
2091
  created_by: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@levo-so/core",
3
3
  "description": "Levo common utilities",
4
- "version": "0.3.10",
4
+ "version": "0.3.12",
5
5
  "author": "Levo Engineering <devs@theinternetfolks.com>",
6
6
  "dependencies": {
7
7
  "wretch": "2.9.0"