make-mp-data 3.0.3 → 3.0.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.
@@ -14,7 +14,7 @@ import dayjs from "dayjs";
14
14
  import utc from "dayjs/plugin/utc.js";
15
15
  dayjs.extend(utc);
16
16
  import { uid, comma } from 'ak-tools';
17
- import { pickAWinner, weighNumRange, date, integer } from "../lib/utils/utils.js";
17
+ import { weighNumRange, date, integer } from "../lib/utils/utils.js";
18
18
 
19
19
  /** @type {import('../types').Dungeon} */
20
20
  const config = {
@@ -31,50 +31,38 @@ const config = {
31
31
  events: [
32
32
  {
33
33
  event: "foo",
34
- weight: 10,
35
- },
34
+ weight: 10 },
36
35
  {
37
36
  event: "bar",
38
- weight: 9,
39
- },
37
+ weight: 9 },
40
38
  {
41
39
  event: "baz",
42
- weight: 8,
43
- },
40
+ weight: 8 },
44
41
  {
45
42
  event: "qux",
46
- weight: 7,
47
- },
43
+ weight: 7 },
48
44
  {
49
45
  event: "garply",
50
- weight: 6,
51
- },
46
+ weight: 6 },
52
47
  {
53
48
  event: "durtle",
54
- weight: 5,
55
- },
49
+ weight: 5 },
56
50
  {
57
51
  event: "linny",
58
- weight: 4,
59
- },
52
+ weight: 4 },
60
53
  {
61
54
  event: "fonk",
62
- weight: 3,
63
- },
55
+ weight: 3 },
64
56
  {
65
57
  event: "crumn",
66
- weight: 2,
67
- },
58
+ weight: 2 },
68
59
  {
69
60
  event: "yak",
70
- weight: 1,
71
- }
61
+ weight: 1 }
72
62
  ],
73
63
  superProps: {
74
64
  color: ["red", "orange", "yellow", "green", "blue", "indigo", "violet"],
75
- number: integer,
76
-
77
- },
65
+ number: integer },
78
66
  userProps: {
79
67
  title: chance.profession.bind(chance),
80
68
  luckyNumber: weighNumRange(42, 420),
@@ -115,8 +103,7 @@ const config = {
115
103
  time: lastEvent.time,
116
104
  user_id: lastEvent.user_id,
117
105
  milestone: record.length,
118
- color: "gold",
119
- });
106
+ color: "gold" });
120
107
  }
121
108
  return record;
122
109
  }
package/dungeons/anon.js CHANGED
@@ -14,7 +14,7 @@ import dayjs from "dayjs";
14
14
  import utc from "dayjs/plugin/utc.js";
15
15
  dayjs.extend(utc);
16
16
  import { uid, comma } from 'ak-tools';
17
- import { pickAWinner, weighNumRange, date, integer } from "../lib/utils/utils.js";
17
+ import { weighNumRange, date, integer } from "../lib/utils/utils.js";
18
18
 
19
19
 
20
20
 
@@ -46,7 +46,7 @@ const config = {
46
46
  event: "checkout",
47
47
  weight: 2,
48
48
  properties: {
49
- currency: pickAWinner(["USD", "CAD", "EUR", "BTC", "ETH", "JPY"], 0),
49
+ currency: ["USD", "CAD", "EUR", "BTC", "ETH", "JPY"],
50
50
  coupon: weighChoices(["none", "none", "none", "none", "10%OFF", "20%OFF", "10%OFF", "20%OFF", "30%OFF", "40%OFF", "50%OFF"]),
51
51
  cart: makeProducts()
52
52
  }
@@ -27,12 +27,12 @@ function buildListOfFeatures() {
27
27
  // object use case
28
28
  function buildLocalConfig() {
29
29
  const allPossibleConfigs = {
30
- "theme": pickAWinner(["light", "dark", "custom"]),
31
- "notifications": pickAWinner(["all", "mentions", "none"]),
30
+ "theme": ["light", "dark", "custom"],
31
+ "notifications": ["all", "mentions", "none"],
32
32
  "itemsPerPage": pickAWinner([10, 25, 50, 100]),
33
- "language": pickAWinner(["en", "es", "fr", "de", "zh", "jp", "ru"]),
34
- "timezone": pickAWinner(["UTC", "PST", "EST", "CST", "MST", "GMT", "CET", "IST", "JST", "AEST"]),
35
- "privacyLevel": pickAWinner(["public", "friends only", "private"]),
33
+ "language": ["en", "es", "fr", "de", "zh", "jp", "ru"],
34
+ "timezone": ["UTC", "PST", "EST", "CST", "MST", "GMT", "CET", "IST", "JST", "AEST"],
35
+ "privacyLevel": ["public", "friends only", "private"],
36
36
  "dataSharing": [true, false],
37
37
  "autoSave": [true, false],
38
38
  "fontSize": ["small", "medium", "large"],
@@ -13,7 +13,7 @@ import dayjs from "dayjs";
13
13
  import utc from "dayjs/plugin/utc.js";
14
14
  dayjs.extend(utc);
15
15
  import { uid, comma } from 'ak-tools';
16
- import { pickAWinner, weighNumRange, date, integer, weighChoices } from "../lib/utils/utils.js";
16
+ import { weighNumRange, date, integer, weighChoices } from "../lib/utils/utils.js";
17
17
  import { createTextGenerator } from '../lib/generators/text.js';
18
18
 
19
19
  /** @type {import('../types.js').Dungeon} */
@@ -46,50 +46,37 @@ const config = {
46
46
  events: [
47
47
  {
48
48
  event: "Page View",
49
- weight: 50,
50
-
51
- },
49
+ weight: 50 },
52
50
  {
53
51
  event: "Product View",
54
- weight: 30,
55
- },
52
+ weight: 30 },
56
53
  {
57
54
  event: "Add to Cart",
58
- weight: 10,
59
- },
55
+ weight: 10 },
60
56
  {
61
57
  event: "Checkout Started",
62
- weight: 5,
63
- },
58
+ weight: 5 },
64
59
  {
65
60
  event: "Purchase",
66
- weight: 1,
67
- },
61
+ weight: 1 },
68
62
  {
69
63
  event: "Product Review",
70
- weight: 3,
71
- },
64
+ weight: 3 },
72
65
  {
73
66
  event: "Search",
74
- weight: 17,
75
- },
67
+ weight: 17 },
76
68
  {
77
69
  event: "Browse",
78
- weight: 25,
79
-
80
- },
70
+ weight: 25 },
81
71
  {
82
72
  event: "Save for Later",
83
- weight: 4,
84
- },
73
+ weight: 4 },
85
74
  {
86
75
  event: "Remove from Cart",
87
- weight: 2,
88
- },
76
+ weight: 2 },
89
77
  {
90
78
  event: "Empty Cart",
91
- weight: 4,
92
- }
79
+ weight: 4 }
93
80
  ],
94
81
  funnels: [
95
82
  {
@@ -107,8 +94,7 @@ const config = {
107
94
  "weight": 1,
108
95
  "isFirstFunnel": false,
109
96
  "timeToConvert": 5,
110
- "experiment": true,
111
- }
97
+ "experiment": true }
112
98
  ],
113
99
  superProps: {
114
100
  },
package/dungeons/big.js CHANGED
@@ -107,7 +107,7 @@ const config = {
107
107
  ],
108
108
  //? https://docs.mixpanel.com/docs/data-structure/property-reference/data-type
109
109
  superProps: {
110
- "string": pickAWinner(["red", "orange", "yellow", "green", "blue", "indigo", "violet"]),
110
+ "string": ["red", "orange", "yellow", "green", "blue", "indigo", "violet"],
111
111
  "number": integer,
112
112
  "boolean": [true, true, false],
113
113
  "date": () => date(90),
@@ -157,7 +157,7 @@ const config = {
157
157
  function buildObjectProp() {
158
158
  return function () {
159
159
  return {
160
- "foo key": choose(pickAWinner(["red", "orange", "yellow", "green", "blue", "indigo", "violet"])()),
160
+ "foo key": choose(["red", "orange", "yellow", "green", "blue", "indigo", "violet"]()),
161
161
  "bar key": integer(1, 100),
162
162
  "baz key": choose(pickAWinner([true, true, false])()),
163
163
  };
@@ -53,7 +53,7 @@ const config = {
53
53
  props: {
54
54
  channel_id: pickAWinner(channel_ids),
55
55
  video_id: weighNumRange(1, 50000, 1.4),
56
- category: pickAWinner(["funny", "educational", "music", "news", "sports", "cooking", "DIY", "travel", "gaming"]),
56
+ category: ["funny", "educational", "music", "news", "sports", "cooking", "DIY", "travel", "gaming"],
57
57
  isFeatured: () => { chance.bool({ likelihood: 25 }); },
58
58
  }
59
59
  },
@@ -64,7 +64,7 @@ const config = {
64
64
  props: {
65
65
  channel_id: pickAWinner(channel_ids),
66
66
  video_id: weighNumRange(1, 50000, .67),
67
- category: pickAWinner(["funny", "educational", "music", "news", "sports", "cooking", "DIY", "travel", "gaming"]),
67
+ category: ["funny", "educational", "music", "news", "sports", "cooking", "DIY", "travel", "gaming"],
68
68
  isFeatured: () => { chance.bool({ likelihood: 25 }); },
69
69
  }
70
70
  },
@@ -76,7 +76,7 @@ const config = {
76
76
  "properties": {
77
77
  "#hashtags": makeHashTags,
78
78
  "watch time (sec)": weighNumRange(10, 600, .25),
79
- "quality": pickAWinner(["2160p", "1440p", "1080p", "720p", "480p", "360p", "240p"], 1)
79
+ "quality": ["2160p", "1440p", "1080p", "720p", "480p", "360p", "240p"]
80
80
  }
81
81
  },
82
82
  {
@@ -97,7 +97,7 @@ const config = {
97
97
  "event": "subscribe",
98
98
  "weight": 10,
99
99
  "properties": {
100
- "UI": pickAWinner(["button", "link", "modal", "menu"]),
100
+ "UI": ["button", "link", "modal", "menu"],
101
101
  }
102
102
  },
103
103
  {
@@ -106,7 +106,7 @@ const config = {
106
106
  "properties": {
107
107
  term: () => { return chance.word(); },
108
108
  "# results": weighNumRange(1, 100, .25),
109
- "UI": pickAWinner(["button", "link", "modal", "menu"]),
109
+ "UI": ["button", "link", "modal", "menu"],
110
110
  }
111
111
  },
112
112
  {
@@ -125,7 +125,7 @@ const config = {
125
125
  "weight": 17,
126
126
  "properties": {
127
127
  video_id: weighNumRange(1, 50000, 1.4),
128
- UI: pickAWinner(["toolbar", "menu", "keyboard"])
128
+ UI: ["toolbar", "menu", "keyboard"]
129
129
 
130
130
  }
131
131
  },
@@ -134,8 +134,8 @@ const config = {
134
134
  "weight": 5,
135
135
  "properties": {
136
136
  "# of videos": weighNumRange(1, 100, .25),
137
- "UI": pickAWinner(["toolbar", "menu", "keyboard"]),
138
- "visibility": pickAWinner(["public", "private", "unlisted"]),
137
+ "UI": ["toolbar", "menu", "keyboard"],
138
+ "visibility": ["public", "private", "unlisted"],
139
139
  }
140
140
  },
141
141
  {
@@ -161,9 +161,9 @@ const config = {
161
161
  "event": "app error",
162
162
  "weight": 15,
163
163
  "properties": {
164
- code: pickAWinner(["404", "500", "403", "401", "400", "503", "504", "429"]),
164
+ code: ["404", "500", "403", "401", "400", "503", "504", "429"],
165
165
  error: chance.sentence.bind(chance),
166
- component: pickAWinner(["video player", "search", "comment", "profile", "settings", "billing", "support"]),
166
+ component: ["video player", "search", "comment", "profile", "settings", "billing", "support"],
167
167
  }
168
168
  },
169
169
  {
@@ -92,7 +92,7 @@ const config = {
92
92
  event: "checkout",
93
93
  weight: 2,
94
94
  properties: {
95
- currency: pickAWinner(["USD", "CAD", "EUR", "BTC", "ETH", "JPY"], 0),
95
+ currency: ["USD", "CAD", "EUR", "BTC", "ETH", "JPY"],
96
96
  coupon: weighChoices(["none", "none", "none", "none", "10%OFF", "20%OFF", "10%OFF", "20%OFF", "30%OFF", "40%OFF", "50%OFF"]),
97
97
  cart: makeProducts()
98
98
  }
@@ -151,7 +151,7 @@ const config = {
151
151
  weight: 1,
152
152
  isFirstEvent: true,
153
153
  properties: {
154
- signupMethod: pickAWinner(["email", "google", "facebook", "twitter", "linkedin", "github"]),
154
+ signupMethod: ["email", "google", "facebook", "twitter", "linkedin", "github"],
155
155
  referral: weighChoices(["none", "none", "none", "friend", "ad", "ad", "ad", "friend", "friend", "friend", "friend"]),
156
156
  }
157
157
  },
@@ -177,7 +177,7 @@ const config = {
177
177
  isFirstEvent: true,
178
178
  properties: {
179
179
  "account_type": u.pickAWinner(["student", "instructor"], 0.15),
180
- "signup_source": u.pickAWinner(["organic", "referral", "school_partnership", "social_ad"]),
180
+ "signup_source": ["organic", "referral", "school_partnership", "social_ad"],
181
181
  }
182
182
  },
183
183
  {
@@ -185,8 +185,8 @@ const config = {
185
185
  weight: 8,
186
186
  properties: {
187
187
  "course_id": u.pickAWinner(courseIds),
188
- "course_category": u.pickAWinner(["CS", "Math", "Science", "Business", "Arts", "Languages"]),
189
- "difficulty": u.pickAWinner(["beginner", "intermediate", "advanced"]),
188
+ "course_category": ["CS", "Math", "Science", "Business", "Arts", "Languages"],
189
+ "difficulty": ["beginner", "intermediate", "advanced"],
190
190
  "is_free": u.pickAWinner([true, false], 0.4),
191
191
  }
192
192
  },
@@ -217,7 +217,7 @@ const config = {
217
217
  properties: {
218
218
  "course_id": u.pickAWinner(courseIds),
219
219
  "quiz_id": u.pickAWinner(quizIds),
220
- "quiz_type": u.pickAWinner(["practice", "graded", "final_exam"]),
220
+ "quiz_type": ["practice", "graded", "final_exam"],
221
221
  "question_count": u.weighNumRange(5, 50, 0.7, 15),
222
222
  }
223
223
  },
@@ -238,7 +238,7 @@ const config = {
238
238
  properties: {
239
239
  "course_id": u.pickAWinner(courseIds),
240
240
  "assignment_id": u.pickAWinner(assignmentIds),
241
- "submission_type": u.pickAWinner(["text", "code", "file", "project"]),
241
+ "submission_type": ["text", "code", "file", "project"],
242
242
  "word_count": u.weighNumRange(100, 5000, 0.6, 500),
243
243
  "is_late": u.pickAWinner([true, false], 0.2),
244
244
  }
@@ -249,9 +249,9 @@ const config = {
249
249
  properties: {
250
250
  "course_id": u.pickAWinner(courseIds),
251
251
  "assignment_id": u.pickAWinner(assignmentIds),
252
- "grade": u.pickAWinner(["A", "B", "C", "D", "F"]),
252
+ "grade": ["A", "B", "C", "D", "F"],
253
253
  "feedback_length": u.weighNumRange(0, 500, 0.5, 100),
254
- "grader": u.pickAWinner(["instructor", "peer", "auto"]),
254
+ "grader": ["instructor", "peer", "auto"],
255
255
  }
256
256
  },
257
257
  {
@@ -259,7 +259,7 @@ const config = {
259
259
  weight: 7,
260
260
  properties: {
261
261
  "course_id": u.pickAWinner(courseIds),
262
- "post_type": u.pickAWinner(["question", "answer", "comment"]),
262
+ "post_type": ["question", "answer", "comment"],
263
263
  "word_count": u.weighNumRange(10, 500, 0.6, 80),
264
264
  }
265
265
  },
@@ -278,14 +278,14 @@ const config = {
278
278
  properties: {
279
279
  "group_id": u.pickAWinner(groupIds),
280
280
  "group_size": u.weighNumRange(3, 20, 0.7, 8),
281
- "group_type": u.pickAWinner(["study_circle", "project_team", "tutoring"]),
281
+ "group_type": ["study_circle", "project_team", "tutoring"],
282
282
  }
283
283
  },
284
284
  {
285
285
  event: "resource downloaded",
286
286
  weight: 9,
287
287
  properties: {
288
- "resource_type": u.pickAWinner(["pdf", "slides", "code_sample", "dataset", "cheat_sheet"]),
288
+ "resource_type": ["pdf", "slides", "code_sample", "dataset", "cheat_sheet"],
289
289
  "course_id": u.pickAWinner(courseIds),
290
290
  }
291
291
  },
@@ -294,7 +294,7 @@ const config = {
294
294
  weight: 3,
295
295
  properties: {
296
296
  "course_id": u.pickAWinner(courseIds),
297
- "feedback_type": u.pickAWinner(["written", "video", "rubric"]),
297
+ "feedback_type": ["written", "video", "rubric"],
298
298
  "response_time_hours": u.weighNumRange(1, 72, 0.5, 15),
299
299
  }
300
300
  },
@@ -312,7 +312,7 @@ const config = {
312
312
  event: "subscription purchased",
313
313
  weight: 2,
314
314
  properties: {
315
- "plan": u.pickAWinner(["monthly", "annual", "lifetime"]),
315
+ "plan": ["monthly", "annual", "lifetime"],
316
316
  "price": u.pickAWinner([19.99, 149.99, 499.99]),
317
317
  }
318
318
  },
@@ -320,8 +320,8 @@ const config = {
320
320
  event: "help requested",
321
321
  weight: 4,
322
322
  properties: {
323
- "topic": u.pickAWinner(["technical", "content", "billing", "accessibility"]),
324
- "channel": u.pickAWinner(["chat", "email", "forum"]),
323
+ "topic": ["technical", "content", "billing", "accessibility"],
324
+ "channel": ["chat", "email", "forum"],
325
325
  }
326
326
  },
327
327
  {
@@ -330,7 +330,7 @@ const config = {
330
330
  properties: {
331
331
  "course_id": u.pickAWinner(courseIds),
332
332
  "problem_id": u.pickAWinner(problemIds),
333
- "difficulty": u.pickAWinner(["easy", "medium", "hard"]),
333
+ "difficulty": ["easy", "medium", "hard"],
334
334
  "time_to_solve_sec": u.weighNumRange(10, 3600, 0.5, 300),
335
335
  "hint_used": u.pickAWinner([true, false], 0.35),
336
336
  }
@@ -338,7 +338,7 @@ const config = {
338
338
  ],
339
339
 
340
340
  superProps: {
341
- platform: u.pickAWinner(["Web", "iOS", "Android", "iPad"]),
341
+ platform: ["Web", "iOS", "Android", "iPad"],
342
342
  subscription_status: u.pickAWinner(["free", "free", "free", "monthly", "annual"]),
343
343
  },
344
344
 
@@ -346,9 +346,9 @@ const config = {
346
346
 
347
347
  userProps: {
348
348
  "account_type": u.pickAWinner(["student", "student", "student", "student", "student", "student", "student", "student", "instructor"]),
349
- "learning_style": u.pickAWinner(["visual", "reading", "hands_on", "auditory"]),
350
- "education_level": u.pickAWinner(["high_school", "bachelors", "masters", "phd", "self_taught"]),
351
- "timezone": u.pickAWinner(["US_Eastern", "US_Pacific", "US_Central", "Europe", "Asia"]),
349
+ "learning_style": ["visual", "reading", "hands_on", "auditory"],
350
+ "education_level": ["high_school", "bachelors", "masters", "phd", "self_taught"],
351
+ "timezone": ["US_Eastern", "US_Pacific", "US_Central", "Europe", "Asia"],
352
352
  },
353
353
 
354
354
  groupKeys: [
@@ -366,7 +366,7 @@ const config = {
366
366
  group_id: {
367
367
  "name": () => `${chance.pickone(["Study", "Learning", "Focus", "Peer", "Cohort"])} ${chance.pickone(["Circle", "Squad", "Team", "Hub", "Group"])} ${chance.character({ alpha: true, casing: "upper" })}${chance.integer({ min: 1, max: 99 })}`,
368
368
  "member_count": u.weighNumRange(3, 20, 0.7, 8),
369
- "focus_area": u.pickAWinner(["CS", "Math", "Science", "Business", "Arts", "Languages"]),
369
+ "focus_area": ["CS", "Math", "Science", "Business", "Arts", "Languages"],
370
370
  }
371
371
  },
372
372
 
@@ -56,21 +56,21 @@ const config = {
56
56
  event: "super common event",
57
57
  weight: 50,
58
58
  properties: {
59
- "foo": u.pickAWinner(["bar", "baz", "qux"], 0),
59
+ "foo": ["bar", "baz", "qux"],
60
60
  }
61
61
  },
62
62
  {
63
63
  event: "less common event",
64
64
  weight: 20,
65
65
  properties: {
66
- "hello": u.pickAWinner(["world", "universe", "galaxy"], 0),
66
+ "hello": ["world", "universe", "galaxy"],
67
67
  }
68
68
  },
69
69
  {
70
70
  event: "rare event",
71
71
  weight: 5,
72
72
  properties: {
73
- "goodbye": u.pickAWinner(["cruel world", "universe", "galaxy"], 0),
73
+ "goodbye": ["cruel world", "universe", "galaxy"],
74
74
  }
75
75
  },
76
76
  {
@@ -78,7 +78,7 @@ const config = {
78
78
  weight: 10,
79
79
  properties: {
80
80
  "amount": u.weighNumRange(5, 500, .25),
81
- "currency": u.pickAWinner(["USD", "CAD", "EUR", "BTC", "ETH", "JPY"], 0),
81
+ "currency": ["USD", "CAD", "EUR", "BTC", "ETH", "JPY"],
82
82
  "numItems": u.weighNumRange(1, 10),
83
83
  }
84
84
  }
@@ -176,7 +176,7 @@ const config = {
176
176
  isFirstEvent: true,
177
177
  properties: {
178
178
  "account_type": u.pickAWinner(["personal", "business", "personal"]),
179
- "signup_channel": u.pickAWinner(["app", "web", "referral", "branch"]),
179
+ "signup_channel": ["app", "web", "referral", "branch"],
180
180
  }
181
181
  },
182
182
  {
@@ -192,33 +192,33 @@ const config = {
192
192
  weight: 15,
193
193
  properties: {
194
194
  "account_balance": u.weighNumRange(0, 50000, 0.8, 2500),
195
- "account_type": u.pickAWinner(["checking", "savings", "investment"]),
195
+ "account_type": ["checking", "savings", "investment"],
196
196
  }
197
197
  },
198
198
  {
199
199
  event: "transaction completed",
200
200
  weight: 18,
201
201
  properties: {
202
- "transaction_type": u.pickAWinner(["purchase", "atm", "direct_deposit", "refund"]),
202
+ "transaction_type": ["purchase", "atm", "direct_deposit", "refund"],
203
203
  "amount": u.weighNumRange(1, 5000, 0.3, 50),
204
- "merchant_category": u.pickAWinner(["grocery", "restaurant", "gas", "retail", "online", "subscription", "utilities"]),
205
- "payment_method": u.pickAWinner(["debit", "credit", "contactless", "online"]),
204
+ "merchant_category": ["grocery", "restaurant", "gas", "retail", "online", "subscription", "utilities"],
205
+ "payment_method": ["debit", "credit", "contactless", "online"],
206
206
  }
207
207
  },
208
208
  {
209
209
  event: "transfer sent",
210
210
  weight: 8,
211
211
  properties: {
212
- "transfer_type": u.pickAWinner(["internal", "external", "p2p", "wire"]),
212
+ "transfer_type": ["internal", "external", "p2p", "wire"],
213
213
  "amount": u.weighNumRange(10, 10000, 0.3, 200),
214
- "recipient_type": u.pickAWinner(["friend", "family", "business", "self"]),
214
+ "recipient_type": ["friend", "family", "business", "self"],
215
215
  }
216
216
  },
217
217
  {
218
218
  event: "bill paid",
219
219
  weight: 6,
220
220
  properties: {
221
- "bill_type": u.pickAWinner(["rent", "utilities", "phone", "insurance", "subscription", "loan_payment"]),
221
+ "bill_type": ["rent", "utilities", "phone", "insurance", "subscription", "loan_payment"],
222
222
  "amount": u.weighNumRange(20, 3000, 0.5, 150),
223
223
  "auto_pay": u.pickAWinner([true, false], 0.4),
224
224
  }
@@ -227,7 +227,7 @@ const config = {
227
227
  event: "budget created",
228
228
  weight: 3,
229
229
  properties: {
230
- "category": u.pickAWinner(["food", "transport", "entertainment", "shopping", "bills", "savings"]),
230
+ "category": ["food", "transport", "entertainment", "shopping", "bills", "savings"],
231
231
  "monthly_limit": u.weighNumRange(50, 2000, 0.5, 300),
232
232
  }
233
233
  },
@@ -235,7 +235,7 @@ const config = {
235
235
  event: "budget alert",
236
236
  weight: 4,
237
237
  properties: {
238
- "alert_type": u.pickAWinner(["approaching_limit", "exceeded", "on_track"]),
238
+ "alert_type": ["approaching_limit", "exceeded", "on_track"],
239
239
  "percent_used": u.weighNumRange(50, 150, 1, 90),
240
240
  }
241
241
  },
@@ -243,7 +243,7 @@ const config = {
243
243
  event: "savings goal set",
244
244
  weight: 3,
245
245
  properties: {
246
- "goal_type": u.pickAWinner(["emergency", "vacation", "car", "home", "education", "retirement"]),
246
+ "goal_type": ["emergency", "vacation", "car", "home", "education", "retirement"],
247
247
  "target_amount": u.weighNumRange(500, 50000, 0.3, 5000),
248
248
  "monthly_contribution": u.weighNumRange(25, 2000, 0.5, 200),
249
249
  }
@@ -252,7 +252,7 @@ const config = {
252
252
  event: "investment made",
253
253
  weight: 4,
254
254
  properties: {
255
- "investment_type": u.pickAWinner(["stocks", "etf", "crypto", "bonds", "mutual_fund"]),
255
+ "investment_type": ["stocks", "etf", "crypto", "bonds", "mutual_fund"],
256
256
  "amount": u.weighNumRange(10, 10000, 0.3, 250),
257
257
  "action": u.pickAWinner(["buy", "sell", "buy"]),
258
258
  }
@@ -261,7 +261,7 @@ const config = {
261
261
  event: "card locked",
262
262
  weight: 1,
263
263
  properties: {
264
- "reason": u.pickAWinner(["lost", "stolen", "suspicious_activity", "travel"]),
264
+ "reason": ["lost", "stolen", "suspicious_activity", "travel"],
265
265
  }
266
266
  },
267
267
  {
@@ -269,14 +269,14 @@ const config = {
269
269
  weight: 1,
270
270
  properties: {
271
271
  "dispute_amount": u.weighNumRange(10, 2000, 0.5, 100),
272
- "reason": u.pickAWinner(["unauthorized", "duplicate", "not_received", "damaged", "wrong_amount"]),
272
+ "reason": ["unauthorized", "duplicate", "not_received", "damaged", "wrong_amount"],
273
273
  }
274
274
  },
275
275
  {
276
276
  event: "loan applied",
277
277
  weight: 2,
278
278
  properties: {
279
- "loan_type": u.pickAWinner(["personal", "auto", "home", "student", "business"]),
279
+ "loan_type": ["personal", "auto", "home", "student", "business"],
280
280
  "requested_amount": u.weighNumRange(1000, 100000, 0.3, 10000),
281
281
  }
282
282
  },
@@ -284,7 +284,7 @@ const config = {
284
284
  event: "loan approved",
285
285
  weight: 1,
286
286
  properties: {
287
- "loan_type": u.pickAWinner(["personal", "auto", "home", "student", "business"]),
287
+ "loan_type": ["personal", "auto", "home", "student", "business"],
288
288
  "approved_amount": u.weighNumRange(1000, 100000, 0.3, 10000),
289
289
  "interest_rate": u.weighNumRange(3, 25, 1, 8),
290
290
  }
@@ -293,7 +293,7 @@ const config = {
293
293
  event: "premium upgraded",
294
294
  weight: 2,
295
295
  properties: {
296
- "old_tier": u.pickAWinner(["basic", "plus", "premium"]),
296
+ "old_tier": ["basic", "plus", "premium"],
297
297
  "new_tier": u.pickAWinner(["plus", "premium", "premium"]),
298
298
  "monthly_fee": u.pickAWinner([4.99, 9.99, 14.99]),
299
299
  }
@@ -302,8 +302,8 @@ const config = {
302
302
  event: "support contacted",
303
303
  weight: 3,
304
304
  properties: {
305
- "channel": u.pickAWinner(["chat", "phone", "email", "in_app"]),
306
- "issue_type": u.pickAWinner(["transaction", "account", "card", "transfer", "technical"]),
305
+ "channel": ["chat", "phone", "email", "in_app"],
306
+ "issue_type": ["transaction", "account", "card", "transfer", "technical"],
307
307
  "resolved": u.pickAWinner([true, false], 0.8),
308
308
  }
309
309
  },
@@ -311,7 +311,7 @@ const config = {
311
311
  event: "notification opened",
312
312
  weight: 10,
313
313
  properties: {
314
- "notification_type": u.pickAWinner(["transaction", "low_balance", "bill_due", "reward", "security", "promo"]),
314
+ "notification_type": ["transaction", "low_balance", "bill_due", "reward", "security", "promo"],
315
315
  "action_taken": u.pickAWinner([true, false], 0.6),
316
316
  }
317
317
  },
@@ -319,7 +319,7 @@ const config = {
319
319
  event: "reward redeemed",
320
320
  weight: 4,
321
321
  properties: {
322
- "reward_type": u.pickAWinner(["cashback", "points", "discount", "partner_offer"]),
322
+ "reward_type": ["cashback", "points", "discount", "partner_offer"],
323
323
  "value": u.weighNumRange(1, 100, 0.5, 10),
324
324
  }
325
325
  }
@@ -327,12 +327,12 @@ const config = {
327
327
 
328
328
  superProps: {
329
329
  account_tier: u.pickAWinner(["basic", "basic", "basic", "plus", "plus", "premium"]),
330
- platform: u.pickAWinner(["ios", "android", "web"]),
330
+ platform: ["ios", "android", "web"],
331
331
  },
332
332
 
333
333
  userProps: {
334
- "credit_score_range": u.pickAWinner(["300-579", "580-669", "670-739", "740-799", "800-850"]),
335
- "income_bracket": u.pickAWinner(["under_30k", "30k_50k", "50k_75k", "75k_100k", "100k_150k", "over_150k"]),
334
+ "credit_score_range": ["300-579", "580-669", "670-739", "740-799", "800-850"],
335
+ "income_bracket": ["under_30k", "30k_50k", "50k_75k", "75k_100k", "100k_150k", "over_150k"],
336
336
  "account_age_months": u.weighNumRange(1, 60, 0.5, 12),
337
337
  "total_balance": u.weighNumRange(0, 100000, 0.3, 5000),
338
338
  "has_direct_deposit": u.pickAWinner([true, false], 0.6),