@deallony/shared 1.2.79 → 1.2.81

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 (104) hide show
  1. package/dist/cjs/constants/events/EventBirthday.d.ts +2 -0
  2. package/dist/cjs/constants/events/EventBirthday.js +12 -0
  3. package/dist/cjs/constants/events/EventCustomization.d.ts +90 -0
  4. package/dist/cjs/constants/events/EventCustomization.js +72 -0
  5. package/dist/cjs/constants/events/EventDressCode.d.ts +65 -0
  6. package/dist/cjs/constants/events/EventDressCode.js +56 -0
  7. package/dist/cjs/constants/events/EventOccasion.d.ts +63 -0
  8. package/dist/cjs/constants/events/EventOccasion.js +242 -0
  9. package/dist/cjs/constants/events/EventPreview.d.ts +9 -0
  10. package/dist/cjs/constants/events/EventPreview.js +11 -1
  11. package/dist/cjs/constants/events/EventTemplate.d.ts +518 -10
  12. package/dist/cjs/constants/events/EventTemplate.js +81 -11
  13. package/dist/cjs/constants/events/EventTextPolicy.d.ts +7 -0
  14. package/dist/cjs/constants/events/EventTextPolicy.js +66 -0
  15. package/dist/cjs/constants/events/EventType.d.ts +273 -8
  16. package/dist/cjs/constants/events/EventType.js +38 -2
  17. package/dist/cjs/constants/events/EventVisibility.d.ts +19 -0
  18. package/dist/cjs/constants/events/EventVisibility.js +18 -0
  19. package/dist/cjs/constants/events/EventWedding.js +3 -0
  20. package/dist/cjs/constants/events/EventWeddingReligion.d.ts +72 -0
  21. package/dist/cjs/constants/events/EventWeddingReligion.js +126 -0
  22. package/dist/cjs/constants/events/index.d.ts +7 -0
  23. package/dist/cjs/constants/events/index.js +7 -0
  24. package/dist/cjs/constants/payments/PaymentStatus.d.ts +1 -1
  25. package/dist/cjs/constants/routes/app.d.ts +42 -0
  26. package/dist/cjs/constants/routes/app.js +14 -0
  27. package/dist/cjs/dto/events/EventBirthday.dto.d.ts +3 -0
  28. package/dist/cjs/dto/events/EventBirthday.dto.js +2 -0
  29. package/dist/cjs/dto/events/EventOccasion.dto.d.ts +3 -0
  30. package/dist/cjs/dto/events/EventOccasion.dto.js +2 -0
  31. package/dist/cjs/dto/events/index.d.ts +2 -0
  32. package/dist/cjs/dto/events/index.js +2 -0
  33. package/dist/cjs/schema/communication/ai-conversation.schema.d.ts +156 -0
  34. package/dist/cjs/schema/communication/ai-conversation.schema.js +57 -1
  35. package/dist/cjs/schema/communication/support-ticket.schema.d.ts +136 -0
  36. package/dist/cjs/schema/communication/support-ticket.schema.js +47 -2
  37. package/dist/cjs/schema/events/Event.schema.d.ts +399 -0
  38. package/dist/cjs/schema/events/Event.schema.js +67 -1
  39. package/dist/cjs/schema/events/EventBirthday.schema.d.ts +19 -0
  40. package/dist/cjs/schema/events/EventBirthday.schema.js +17 -0
  41. package/dist/cjs/schema/events/EventOccasion.schema.d.ts +22 -0
  42. package/dist/cjs/schema/events/EventOccasion.schema.js +31 -0
  43. package/dist/cjs/schema/events/EventRsvp.schema.d.ts +4 -0
  44. package/dist/cjs/schema/events/EventRsvp.schema.js +1 -0
  45. package/dist/cjs/schema/events/EventTimeline.schema.d.ts +5 -0
  46. package/dist/cjs/schema/events/EventTimeline.schema.js +14 -1
  47. package/dist/cjs/schema/events/EventWedding.schema.d.ts +32 -0
  48. package/dist/cjs/schema/events/EventWedding.schema.js +11 -0
  49. package/dist/cjs/schema/events/index.d.ts +2 -0
  50. package/dist/cjs/schema/events/index.js +2 -0
  51. package/dist/cjs/types/communication/Notification.d.ts +13 -2
  52. package/dist/cjs/types/communication/Notification.js +8 -0
  53. package/dist/cjs/types/events/Event.d.ts +18 -1
  54. package/dist/cjs/types/events/EventBirthday.d.ts +17 -0
  55. package/dist/cjs/types/events/EventBirthday.js +2 -0
  56. package/dist/cjs/types/events/EventCustomization.d.ts +20 -0
  57. package/dist/cjs/types/events/EventCustomization.js +2 -0
  58. package/dist/cjs/types/events/EventDressCode.d.ts +13 -0
  59. package/dist/cjs/types/events/EventDressCode.js +2 -0
  60. package/dist/cjs/types/events/EventOccasion.d.ts +24 -0
  61. package/dist/cjs/types/events/EventOccasion.js +2 -0
  62. package/dist/cjs/types/events/EventRsvp.d.ts +2 -0
  63. package/dist/cjs/types/events/EventTimeline.d.ts +2 -0
  64. package/dist/cjs/types/events/EventWedding.d.ts +7 -0
  65. package/dist/cjs/types/events/index.d.ts +4 -0
  66. package/dist/cjs/types/events/index.js +4 -0
  67. package/dist/cjs/types/index.d.ts +3 -0
  68. package/dist/cjs/types/index.js +5 -2
  69. package/dist/cjs/types/user/SavedSearch.d.ts +38 -0
  70. package/dist/cjs/types/user/SavedSearch.js +11 -0
  71. package/dist/esm/constants/events/EventBirthday.js +9 -0
  72. package/dist/esm/constants/events/EventCustomization.js +65 -0
  73. package/dist/esm/constants/events/EventDressCode.js +49 -0
  74. package/dist/esm/constants/events/EventOccasion.js +235 -0
  75. package/dist/esm/constants/events/EventPreview.js +9 -0
  76. package/dist/esm/constants/events/EventTemplate.js +78 -10
  77. package/dist/esm/constants/events/EventTextPolicy.js +61 -0
  78. package/dist/esm/constants/events/EventType.js +34 -1
  79. package/dist/esm/constants/events/EventVisibility.js +15 -0
  80. package/dist/esm/constants/events/EventWedding.js +3 -0
  81. package/dist/esm/constants/events/EventWeddingReligion.js +118 -0
  82. package/dist/esm/constants/events/index.js +7 -0
  83. package/dist/esm/constants/routes/app.js +14 -0
  84. package/dist/esm/dto/events/EventBirthday.dto.js +1 -0
  85. package/dist/esm/dto/events/EventOccasion.dto.js +1 -0
  86. package/dist/esm/dto/events/index.js +2 -0
  87. package/dist/esm/schema/communication/ai-conversation.schema.js +56 -0
  88. package/dist/esm/schema/communication/support-ticket.schema.js +46 -1
  89. package/dist/esm/schema/events/Event.schema.js +67 -1
  90. package/dist/esm/schema/events/EventBirthday.schema.js +14 -0
  91. package/dist/esm/schema/events/EventOccasion.schema.js +28 -0
  92. package/dist/esm/schema/events/EventRsvp.schema.js +1 -0
  93. package/dist/esm/schema/events/EventTimeline.schema.js +14 -1
  94. package/dist/esm/schema/events/EventWedding.schema.js +11 -0
  95. package/dist/esm/schema/events/index.js +2 -0
  96. package/dist/esm/types/communication/Notification.js +8 -0
  97. package/dist/esm/types/events/EventBirthday.js +1 -0
  98. package/dist/esm/types/events/EventCustomization.js +1 -0
  99. package/dist/esm/types/events/EventDressCode.js +1 -0
  100. package/dist/esm/types/events/EventOccasion.js +1 -0
  101. package/dist/esm/types/events/index.js +4 -0
  102. package/dist/esm/types/index.js +3 -0
  103. package/dist/esm/types/user/SavedSearch.js +8 -0
  104. package/package.json +1 -1
@@ -1,7 +1,10 @@
1
+ import type { IEventCustomization } from "../../types/events/EventCustomization";
1
2
  /** Messages between the app (WebView / iframe) and the event site's /preview/:token page */
2
3
  export declare const EventPreviewMessageType: {
3
4
  readonly SET_TEMPLATE: "deallony:set-template";
4
5
  readonly READY: "deallony:preview-ready";
6
+ /** Live customization while the owner edits it, before it is saved */
7
+ readonly SET_CUSTOMIZATION: "deallony:set-customization";
5
8
  };
6
9
  export type EventPreviewMessage = {
7
10
  type: typeof EventPreviewMessageType.SET_TEMPLATE;
@@ -9,7 +12,13 @@ export type EventPreviewMessage = {
9
12
  } | {
10
13
  type: typeof EventPreviewMessageType.READY;
11
14
  template: string | null;
15
+ } | {
16
+ type: typeof EventPreviewMessageType.SET_CUSTOMIZATION;
17
+ customization: IEventCustomization | null;
12
18
  };
13
19
  /** Query parameter that picks the template on the preview page's first paint */
14
20
  export declare const EventPreviewTemplateParam = "template";
15
21
  export declare const DEFAULT_WEDDING_TEMPLATE = "wedding-01";
22
+ export declare const DEFAULT_BIRTHDAY_TEMPLATE = "birthday-01";
23
+ /** The template a new event of this type starts with */
24
+ export declare const defaultEventTemplate: (eventType: string | null | undefined) => string;
@@ -1,11 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_WEDDING_TEMPLATE = exports.EventPreviewTemplateParam = exports.EventPreviewMessageType = void 0;
3
+ exports.defaultEventTemplate = exports.DEFAULT_BIRTHDAY_TEMPLATE = exports.DEFAULT_WEDDING_TEMPLATE = exports.EventPreviewTemplateParam = exports.EventPreviewMessageType = void 0;
4
+ const EventTemplate_1 = require("./EventTemplate");
4
5
  /** Messages between the app (WebView / iframe) and the event site's /preview/:token page */
5
6
  exports.EventPreviewMessageType = {
6
7
  SET_TEMPLATE: "deallony:set-template",
7
8
  READY: "deallony:preview-ready",
9
+ /** Live customization while the owner edits it, before it is saved */
10
+ SET_CUSTOMIZATION: "deallony:set-customization",
8
11
  };
9
12
  /** Query parameter that picks the template on the preview page's first paint */
10
13
  exports.EventPreviewTemplateParam = "template";
11
14
  exports.DEFAULT_WEDDING_TEMPLATE = "wedding-01";
15
+ exports.DEFAULT_BIRTHDAY_TEMPLATE = "birthday-01";
16
+ /** The template a new event of this type starts with */
17
+ const defaultEventTemplate = (eventType) => {
18
+ var _a, _b;
19
+ return (_b = (_a = EventTemplate_1.EventTemplateOptions.find((t) => !t.hidden && t.event_types.includes(eventType || "wedding"))) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : exports.DEFAULT_WEDDING_TEMPLATE;
20
+ };
21
+ exports.defaultEventTemplate = defaultEventTemplate;
@@ -39,24 +39,532 @@ export declare const EventTemplate: {
39
39
  };
40
40
  event_types: string[];
41
41
  };
42
+ BIRTHDAY_01: {
43
+ value: string;
44
+ name: {
45
+ en: string;
46
+ ar: string;
47
+ };
48
+ event_types: string[];
49
+ };
50
+ ENGAGEMENT_01: {
51
+ value: string;
52
+ name: {
53
+ en: string;
54
+ ar: string;
55
+ };
56
+ event_types: string[];
57
+ hidden: boolean;
58
+ };
59
+ MARRIAGE_01: {
60
+ value: string;
61
+ name: {
62
+ en: string;
63
+ ar: string;
64
+ };
65
+ event_types: string[];
66
+ hidden: boolean;
67
+ };
68
+ PROPOSAL_01: {
69
+ value: string;
70
+ name: {
71
+ en: string;
72
+ ar: string;
73
+ };
74
+ event_types: string[];
75
+ hidden: boolean;
76
+ };
77
+ BACHELOR_01: {
78
+ value: string;
79
+ name: {
80
+ en: string;
81
+ ar: string;
82
+ };
83
+ event_types: string[];
84
+ hidden: boolean;
85
+ };
86
+ NEWBORN_01: {
87
+ value: string;
88
+ name: {
89
+ en: string;
90
+ ar: string;
91
+ };
92
+ event_types: string[];
93
+ hidden: boolean;
94
+ };
95
+ GENDER_REVEAL_01: {
96
+ value: string;
97
+ name: {
98
+ en: string;
99
+ ar: string;
100
+ };
101
+ event_types: string[];
102
+ hidden: boolean;
103
+ };
104
+ CIRCUMCISION_01: {
105
+ value: string;
106
+ name: {
107
+ en: string;
108
+ ar: string;
109
+ };
110
+ event_types: string[];
111
+ hidden: boolean;
112
+ };
113
+ GRADUATION_01: {
114
+ value: string;
115
+ name: {
116
+ en: string;
117
+ ar: string;
118
+ };
119
+ event_types: string[];
120
+ hidden: boolean;
121
+ };
122
+ HAJJ_01: {
123
+ value: string;
124
+ name: {
125
+ en: string;
126
+ ar: string;
127
+ };
128
+ event_types: string[];
129
+ hidden: boolean;
130
+ };
131
+ MOTHERS_DAY_01: {
132
+ value: string;
133
+ name: {
134
+ en: string;
135
+ ar: string;
136
+ };
137
+ event_types: string[];
138
+ hidden: boolean;
139
+ };
140
+ VALENTINE_01: {
141
+ value: string;
142
+ name: {
143
+ en: string;
144
+ ar: string;
145
+ };
146
+ event_types: string[];
147
+ hidden: boolean;
148
+ };
149
+ OPENING_01: {
150
+ value: string;
151
+ name: {
152
+ en: string;
153
+ ar: string;
154
+ };
155
+ event_types: string[];
156
+ hidden: boolean;
157
+ };
158
+ GENERAL_01: {
159
+ value: string;
160
+ name: {
161
+ en: string;
162
+ ar: string;
163
+ };
164
+ event_types: string[];
165
+ hidden: boolean;
166
+ };
167
+ ENGAGEMENT_ROSE_ARCH: {
168
+ value: string;
169
+ name: {
170
+ en: string;
171
+ ar: string;
172
+ };
173
+ event_types: string[];
174
+ photos: number;
175
+ };
176
+ ENGAGEMENT_FULL_MOMENT: {
177
+ value: string;
178
+ name: {
179
+ en: string;
180
+ ar: string;
181
+ };
182
+ event_types: string[];
183
+ photos: number;
184
+ };
185
+ ENGAGEMENT_SEALED_LETTER: {
186
+ value: string;
187
+ name: {
188
+ en: string;
189
+ ar: string;
190
+ };
191
+ event_types: string[];
192
+ photos: number;
193
+ };
194
+ MARRIAGE_CONTRACT: {
195
+ value: string;
196
+ name: {
197
+ en: string;
198
+ ar: string;
199
+ };
200
+ event_types: string[];
201
+ photos: number;
202
+ };
203
+ MARRIAGE_STAR_MEDALLION: {
204
+ value: string;
205
+ name: {
206
+ en: string;
207
+ ar: string;
208
+ };
209
+ event_types: string[];
210
+ photos: number;
211
+ };
212
+ MARRIAGE_MASHRABIYA: {
213
+ value: string;
214
+ name: {
215
+ en: string;
216
+ ar: string;
217
+ };
218
+ event_types: string[];
219
+ photos: number;
220
+ };
221
+ PROPOSAL_ONE_QUESTION: {
222
+ value: string;
223
+ name: {
224
+ en: string;
225
+ ar: string;
226
+ };
227
+ event_types: string[];
228
+ photos: number;
229
+ };
230
+ PROPOSAL_WITNESS_TICKET: {
231
+ value: string;
232
+ name: {
233
+ en: string;
234
+ ar: string;
235
+ };
236
+ event_types: string[];
237
+ photos: number;
238
+ };
239
+ PROPOSAL_CANDLELIGHT: {
240
+ value: string;
241
+ name: {
242
+ en: string;
243
+ ar: string;
244
+ };
245
+ event_types: string[];
246
+ photos: number;
247
+ };
248
+ BACHELOR_DISCO: {
249
+ value: string;
250
+ name: {
251
+ en: string;
252
+ ar: string;
253
+ };
254
+ event_types: string[];
255
+ photos: number;
256
+ };
257
+ BACHELOR_POLAROID_WALL: {
258
+ value: string;
259
+ name: {
260
+ en: string;
261
+ ar: string;
262
+ };
263
+ event_types: string[];
264
+ photos: number;
265
+ };
266
+ BACHELOR_MAGAZINE: {
267
+ value: string;
268
+ name: {
269
+ en: string;
270
+ ar: string;
271
+ };
272
+ event_types: string[];
273
+ photos: number;
274
+ };
275
+ BIRTHDAY_BIG_NUMBER: {
276
+ value: string;
277
+ name: {
278
+ en: string;
279
+ ar: string;
280
+ };
281
+ event_types: string[];
282
+ photos: number;
283
+ };
284
+ BIRTHDAY_LAYER_CAKE: {
285
+ value: string;
286
+ name: {
287
+ en: string;
288
+ ar: string;
289
+ };
290
+ event_types: string[];
291
+ photos: number;
292
+ };
293
+ BIRTHDAY_FLYING_BALLOONS: {
294
+ value: string;
295
+ name: {
296
+ en: string;
297
+ ar: string;
298
+ };
299
+ event_types: string[];
300
+ photos: number;
301
+ };
302
+ NEWBORN_CLOUD_CRIB: {
303
+ value: string;
304
+ name: {
305
+ en: string;
306
+ ar: string;
307
+ };
308
+ event_types: string[];
309
+ photos: number;
310
+ };
311
+ NEWBORN_BIRTH_CARD: {
312
+ value: string;
313
+ name: {
314
+ en: string;
315
+ ar: string;
316
+ };
317
+ event_types: string[];
318
+ photos: number;
319
+ };
320
+ NEWBORN_STAR_MOBILE: {
321
+ value: string;
322
+ name: {
323
+ en: string;
324
+ ar: string;
325
+ };
326
+ event_types: string[];
327
+ photos: number;
328
+ };
329
+ GENDER_REVEAL_BIG_BALLOON: {
330
+ value: string;
331
+ name: {
332
+ en: string;
333
+ ar: string;
334
+ };
335
+ event_types: string[];
336
+ photos: number;
337
+ };
338
+ GENDER_REVEAL_HALF_HALF: {
339
+ value: string;
340
+ name: {
341
+ en: string;
342
+ ar: string;
343
+ };
344
+ event_types: string[];
345
+ photos: number;
346
+ };
347
+ GENDER_REVEAL_SCRATCH_CARD: {
348
+ value: string;
349
+ name: {
350
+ en: string;
351
+ ar: string;
352
+ };
353
+ event_types: string[];
354
+ photos: number;
355
+ };
356
+ CIRCUMCISION_LANTERN_NIGHT: {
357
+ value: string;
358
+ name: {
359
+ en: string;
360
+ ar: string;
361
+ };
362
+ event_types: string[];
363
+ photos: number;
364
+ };
365
+ CIRCUMCISION_EMBROIDERY: {
366
+ value: string;
367
+ name: {
368
+ en: string;
369
+ ar: string;
370
+ };
371
+ event_types: string[];
372
+ photos: number;
373
+ };
374
+ CIRCUMCISION_IN_THE_LANTERN: {
375
+ value: string;
376
+ name: {
377
+ en: string;
378
+ ar: string;
379
+ };
380
+ event_types: string[];
381
+ photos: number;
382
+ };
383
+ GRADUATION_DIPLOMA: {
384
+ value: string;
385
+ name: {
386
+ en: string;
387
+ ar: string;
388
+ };
389
+ event_types: string[];
390
+ photos: number;
391
+ };
392
+ GRADUATION_CAPS_FLY: {
393
+ value: string;
394
+ name: {
395
+ en: string;
396
+ ar: string;
397
+ };
398
+ event_types: string[];
399
+ photos: number;
400
+ };
401
+ GRADUATION_YEARBOOK: {
402
+ value: string;
403
+ name: {
404
+ en: string;
405
+ ar: string;
406
+ };
407
+ event_types: string[];
408
+ photos: number;
409
+ };
410
+ HAJJ_HARAM_NIGHT: {
411
+ value: string;
412
+ name: {
413
+ en: string;
414
+ ar: string;
415
+ };
416
+ event_types: string[];
417
+ photos: number;
418
+ };
419
+ HAJJ_PILGRIM_PATH: {
420
+ value: string;
421
+ name: {
422
+ en: string;
423
+ ar: string;
424
+ };
425
+ event_types: string[];
426
+ photos: number;
427
+ };
428
+ HAJJ_GOLDEN_ARCH: {
429
+ value: string;
430
+ name: {
431
+ en: string;
432
+ ar: string;
433
+ };
434
+ event_types: string[];
435
+ photos: number;
436
+ };
437
+ MOTHERS_DAY_HANDWRITTEN: {
438
+ value: string;
439
+ name: {
440
+ en: string;
441
+ ar: string;
442
+ };
443
+ event_types: string[];
444
+ photos: number;
445
+ };
446
+ MOTHERS_DAY_BOUQUET: {
447
+ value: string;
448
+ name: {
449
+ en: string;
450
+ ar: string;
451
+ };
452
+ event_types: string[];
453
+ photos: number;
454
+ };
455
+ MOTHERS_DAY_THEN_NOW: {
456
+ value: string;
457
+ name: {
458
+ en: string;
459
+ ar: string;
460
+ };
461
+ event_types: string[];
462
+ photos: number;
463
+ };
464
+ VALENTINE_RED_ENVELOPE: {
465
+ value: string;
466
+ name: {
467
+ en: string;
468
+ ar: string;
469
+ };
470
+ event_types: string[];
471
+ photos: number;
472
+ };
473
+ VALENTINE_FILM_STRIP: {
474
+ value: string;
475
+ name: {
476
+ en: string;
477
+ ar: string;
478
+ };
479
+ event_types: string[];
480
+ photos: number;
481
+ };
482
+ VALENTINE_NEON_HEART: {
483
+ value: string;
484
+ name: {
485
+ en: string;
486
+ ar: string;
487
+ };
488
+ event_types: string[];
489
+ photos: number;
490
+ };
491
+ OPENING_RIBBON_CUT: {
492
+ value: string;
493
+ name: {
494
+ en: string;
495
+ ar: string;
496
+ };
497
+ event_types: string[];
498
+ photos: number;
499
+ };
500
+ OPENING_STOREFRONT: {
501
+ value: string;
502
+ name: {
503
+ en: string;
504
+ ar: string;
505
+ };
506
+ event_types: string[];
507
+ photos: number;
508
+ };
509
+ OPENING_COUPON: {
510
+ value: string;
511
+ name: {
512
+ en: string;
513
+ ar: string;
514
+ };
515
+ event_types: string[];
516
+ photos: number;
517
+ };
518
+ GENERAL_BOLD_POSTER: {
519
+ value: string;
520
+ name: {
521
+ en: string;
522
+ ar: string;
523
+ };
524
+ event_types: string[];
525
+ photos: number;
526
+ };
527
+ GENERAL_FIREWORKS: {
528
+ value: string;
529
+ name: {
530
+ en: string;
531
+ ar: string;
532
+ };
533
+ event_types: string[];
534
+ photos: number;
535
+ };
536
+ GENERAL_WRISTBAND: {
537
+ value: string;
538
+ name: {
539
+ en: string;
540
+ ar: string;
541
+ };
542
+ event_types: string[];
543
+ photos: number;
544
+ };
42
545
  };
43
546
  export declare const EventTemplateOptions: {
44
547
  value: string;
45
548
  name: {
46
549
  en: string;
47
550
  ar: string;
48
- } | {
49
- en: string;
50
- ar: string;
51
- } | {
52
- en: string;
53
- ar: string;
54
- } | {
55
- en: string;
56
- ar: string;
57
- } | {
551
+ };
552
+ event_types: string[];
553
+ photos: number;
554
+ hidden: boolean;
555
+ }[];
556
+ /** Most pictures any design shows (cover + photos) */
557
+ export declare const EVENT_TEMPLATE_MAX_PHOTOS = 5;
558
+ /** Pictures a template shows (cover included) */
559
+ export declare const eventTemplatePhotos: (template: string | null | undefined) => number;
560
+ /** Templates offered for an event type; events without a type are weddings */
561
+ export declare const eventTemplatesFor: (eventType: string | null | undefined) => {
562
+ value: string;
563
+ name: {
58
564
  en: string;
59
565
  ar: string;
60
566
  };
61
567
  event_types: string[];
568
+ photos: number;
569
+ hidden: boolean;
62
570
  }[];
@@ -1,15 +1,85 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EventTemplateOptions = exports.EventTemplate = void 0;
3
+ exports.eventTemplatesFor = exports.eventTemplatePhotos = exports.EVENT_TEMPLATE_MAX_PHOTOS = exports.EventTemplateOptions = exports.EventTemplate = void 0;
4
4
  exports.EventTemplate = {
5
- WEDDING_01: { value: 'wedding-01', name: { en: 'Wedding', ar: 'زفاف' }, event_types: ['wedding'] },
6
- WEDDING_02: { value: 'wedding-02', name: { en: 'Wedding', ar: 'زفاف' }, event_types: ['wedding'] },
7
- WEDDING_03: { value: 'wedding-03', name: { en: 'Wedding', ar: 'زفاف' }, event_types: ['wedding'] },
8
- WEDDING_04: { value: 'wedding-04', name: { en: 'Wedding', ar: 'زفاف' }, event_types: ['wedding'] },
9
- WEDDING_05: { value: 'wedding-05', name: { en: 'Wedding', ar: 'زفاف' }, event_types: ['wedding'] },
5
+ WEDDING_01: { value: 'wedding-01', name: { en: 'Golden chandelier', ar: 'الثريا الذهبية' }, event_types: ['wedding'] },
6
+ WEDDING_02: { value: 'wedding-02', name: { en: 'Day and night', ar: 'ليل ونهار' }, event_types: ['wedding'] },
7
+ WEDDING_03: { value: 'wedding-03', name: { en: 'Simple classic', ar: 'الكلاسيكي البسيط' }, event_types: ['wedding'] },
8
+ WEDDING_04: { value: 'wedding-04', name: { en: 'Rose petals', ar: 'بتلات الورد' }, event_types: ['wedding'] },
9
+ WEDDING_05: { value: 'wedding-05', name: { en: 'Royal calendar', ar: 'التقويم الملكي' }, event_types: ['wedding'] },
10
+ BIRTHDAY_01: { value: 'birthday-01', name: { en: 'Balloons', ar: 'بالونات' }, event_types: ['birthday'] },
11
+ ENGAGEMENT_01: { value: 'engagement-01', name: { en: 'Ring', ar: 'خاتم' }, event_types: ['engagement'], hidden: true },
12
+ MARRIAGE_01: { value: 'marriage-01', name: { en: 'Covenant', ar: 'ميثاق' }, event_types: ['marriage'], hidden: true },
13
+ PROPOSAL_01: { value: 'proposal-01', name: { en: 'Will you?', ar: 'هل تقبلين؟' }, event_types: ['proposal'], hidden: true },
14
+ BACHELOR_01: { value: 'bachelor-01', name: { en: 'Friends night', ar: 'ليلة الأصدقاء' }, event_types: ['bachelor'], hidden: true },
15
+ NEWBORN_01: { value: 'newborn-01', name: { en: 'Little star', ar: 'نجمة صغيرة' }, event_types: ['newborn'], hidden: true },
16
+ GENDER_REVEAL_01: { value: 'gender-reveal-01', name: { en: 'Boy or girl?', ar: 'ولد أم بنت؟' }, event_types: ['gender_reveal'], hidden: true },
17
+ CIRCUMCISION_01: { value: 'circumcision-01', name: { en: 'Joy', ar: 'فرحة' }, event_types: ['circumcision'], hidden: true },
18
+ GRADUATION_01: { value: 'graduation-01', name: { en: 'Grad cap', ar: 'قبعة التخرج' }, event_types: ['graduation'], hidden: true },
19
+ HAJJ_01: { value: 'hajj-01', name: { en: 'Blessed Hajj', ar: 'حج مبرور' }, event_types: ['hajj'], hidden: true },
20
+ MOTHERS_DAY_01: { value: 'mothers-day-01', name: { en: 'Roses', ar: 'ورد' }, event_types: ['mothers_day'], hidden: true },
21
+ VALENTINE_01: { value: 'valentine-01', name: { en: 'Hearts', ar: 'قلوب' }, event_types: ['valentine'], hidden: true },
22
+ OPENING_01: { value: 'opening-01', name: { en: 'Ribbon cutting', ar: 'قص الشريط' }, event_types: ['opening'], hidden: true },
23
+ GENERAL_01: { value: 'general-01', name: { en: 'Simple', ar: 'بسيط' }, event_types: ['general'], hidden: true },
24
+ // One page each (2026-11): photos = how many pictures the design shows (cover + occasion.photos)
25
+ ENGAGEMENT_ROSE_ARCH: { value: 'engagement-rose-arch', name: { en: 'Rose arch', ar: 'قوس الورد' }, event_types: ['engagement'], photos: 1 },
26
+ ENGAGEMENT_FULL_MOMENT: { value: 'engagement-full-moment', name: { en: 'Full moment', ar: 'لحظة كاملة' }, event_types: ['engagement'], photos: 1 },
27
+ ENGAGEMENT_SEALED_LETTER: { value: 'engagement-sealed-letter', name: { en: 'Sealed letter', ar: 'رسالة مختومة' }, event_types: ['engagement'], photos: 1 },
28
+ MARRIAGE_CONTRACT: { value: 'marriage-contract', name: { en: 'The contract', ar: 'وثيقة العقد' }, event_types: ['marriage'], photos: 1 },
29
+ MARRIAGE_STAR_MEDALLION: { value: 'marriage-star-medallion', name: { en: 'Star medallion', ar: 'ميدالية النجمة' }, event_types: ['marriage'], photos: 1 },
30
+ MARRIAGE_MASHRABIYA: { value: 'marriage-mashrabiya', name: { en: 'Mashrabiya', ar: 'نافذة المشربية' }, event_types: ['marriage'], photos: 1 },
31
+ PROPOSAL_ONE_QUESTION: { value: 'proposal-one-question', name: { en: 'One question', ar: 'سؤال واحد' }, event_types: ['proposal'], photos: 1 },
32
+ PROPOSAL_WITNESS_TICKET: { value: 'proposal-witness-ticket', name: { en: 'Witness ticket', ar: 'تذكرة شاهد' }, event_types: ['proposal'], photos: 1 },
33
+ PROPOSAL_CANDLELIGHT: { value: 'proposal-candlelight', name: { en: 'Candlelight', ar: 'ضوء الشموع' }, event_types: ['proposal'], photos: 1 },
34
+ BACHELOR_DISCO: { value: 'bachelor-disco', name: { en: 'Disco', ar: 'ديسكو' }, event_types: ['bachelor'], photos: 1 },
35
+ BACHELOR_POLAROID_WALL: { value: 'bachelor-polaroid-wall', name: { en: 'Polaroid wall', ar: 'جدار البولارويد' }, event_types: ['bachelor'], photos: 3 },
36
+ BACHELOR_MAGAZINE: { value: 'bachelor-magazine', name: { en: 'Magazine cover', ar: 'غلاف مجلة' }, event_types: ['bachelor'], photos: 1 },
37
+ BIRTHDAY_BIG_NUMBER: { value: 'birthday-big-number', name: { en: 'Big number', ar: 'الرقم الكبير' }, event_types: ['birthday'], photos: 1 },
38
+ BIRTHDAY_LAYER_CAKE: { value: 'birthday-layer-cake', name: { en: 'Layer cake', ar: 'كعكة الطبقات' }, event_types: ['birthday'], photos: 1 },
39
+ BIRTHDAY_FLYING_BALLOONS: { value: 'birthday-flying-balloons', name: { en: 'Flying balloons', ar: 'بالونات تطير' }, event_types: ['birthday'], photos: 1 },
40
+ NEWBORN_CLOUD_CRIB: { value: 'newborn-cloud-crib', name: { en: 'Cloud crib', ar: 'سرير الغيوم' }, event_types: ['newborn'], photos: 1 },
41
+ NEWBORN_BIRTH_CARD: { value: 'newborn-birth-card', name: { en: 'Birth card', ar: 'بطاقة الولادة' }, event_types: ['newborn'], photos: 1 },
42
+ NEWBORN_STAR_MOBILE: { value: 'newborn-star-mobile', name: { en: 'Star mobile', ar: 'نجوم معلّقة' }, event_types: ['newborn'], photos: 1 },
43
+ GENDER_REVEAL_BIG_BALLOON: { value: 'gender-reveal-big-balloon', name: { en: 'Big balloon', ar: 'البالون الكبير' }, event_types: ['gender_reveal'], photos: 0 },
44
+ GENDER_REVEAL_HALF_HALF: { value: 'gender-reveal-half-half', name: { en: 'Half and half', ar: 'نصف ونصف' }, event_types: ['gender_reveal'], photos: 1 },
45
+ GENDER_REVEAL_SCRATCH_CARD: { value: 'gender-reveal-scratch-card', name: { en: 'Scratch card', ar: 'اكشط واكتشف' }, event_types: ['gender_reveal'], photos: 1 },
46
+ CIRCUMCISION_LANTERN_NIGHT: { value: 'circumcision-lantern-night', name: { en: 'Lantern night', ar: 'فوانيس الليل' }, event_types: ['circumcision'], photos: 1 },
47
+ CIRCUMCISION_EMBROIDERY: { value: 'circumcision-embroidery', name: { en: 'Embroidery', ar: 'التطريز' }, event_types: ['circumcision'], photos: 1 },
48
+ CIRCUMCISION_IN_THE_LANTERN: { value: 'circumcision-in-the-lantern', name: { en: 'Inside the lantern', ar: 'داخل الفانوس' }, event_types: ['circumcision'], photos: 1 },
49
+ GRADUATION_DIPLOMA: { value: 'graduation-diploma', name: { en: 'Diploma', ar: 'الشهادة' }, event_types: ['graduation'], photos: 1 },
50
+ GRADUATION_CAPS_FLY: { value: 'graduation-caps-fly', name: { en: 'Caps fly', ar: 'القبعات تطير' }, event_types: ['graduation'], photos: 1 },
51
+ GRADUATION_YEARBOOK: { value: 'graduation-yearbook', name: { en: 'Yearbook', ar: 'كتاب السنة' }, event_types: ['graduation'], photos: 5 },
52
+ HAJJ_HARAM_NIGHT: { value: 'hajj-haram-night', name: { en: 'Haram night', ar: 'ليلة الحرم' }, event_types: ['hajj'], photos: 1 },
53
+ HAJJ_PILGRIM_PATH: { value: 'hajj-pilgrim-path', name: { en: 'Pilgrim path', ar: 'رحلة الحاج' }, event_types: ['hajj'], photos: 1 },
54
+ HAJJ_GOLDEN_ARCH: { value: 'hajj-golden-arch', name: { en: 'Golden arch', ar: 'القوس الذهبي' }, event_types: ['hajj'], photos: 1 },
55
+ MOTHERS_DAY_HANDWRITTEN: { value: 'mothers-day-handwritten', name: { en: 'Handwritten letter', ar: 'رسالة بخط اليد' }, event_types: ['mothers_day'], photos: 1 },
56
+ MOTHERS_DAY_BOUQUET: { value: 'mothers-day-bouquet', name: { en: 'Bouquet', ar: 'باقة ورد' }, event_types: ['mothers_day'], photos: 1 },
57
+ MOTHERS_DAY_THEN_NOW: { value: 'mothers-day-then-now', name: { en: 'Then and now', ar: 'زمان والآن' }, event_types: ['mothers_day'], photos: 2 },
58
+ VALENTINE_RED_ENVELOPE: { value: 'valentine-red-envelope', name: { en: 'Red envelope', ar: 'الظرف الأحمر' }, event_types: ['valentine'], photos: 1 },
59
+ VALENTINE_FILM_STRIP: { value: 'valentine-film-strip', name: { en: 'Film strip', ar: 'شريط الفيلم' }, event_types: ['valentine'], photos: 3 },
60
+ VALENTINE_NEON_HEART: { value: 'valentine-neon-heart', name: { en: 'Neon heart', ar: 'قلب نيون' }, event_types: ['valentine'], photos: 1 },
61
+ OPENING_RIBBON_CUT: { value: 'opening-ribbon-cut', name: { en: 'Ribbon cut', ar: 'قص الشريط' }, event_types: ['opening'], photos: 1 },
62
+ OPENING_STOREFRONT: { value: 'opening-storefront', name: { en: 'Storefront', ar: 'واجهة المحل' }, event_types: ['opening'], photos: 1 },
63
+ OPENING_COUPON: { value: 'opening-coupon', name: { en: 'Coupon', ar: 'الكوبون' }, event_types: ['opening'], photos: 1 },
64
+ GENERAL_BOLD_POSTER: { value: 'general-bold-poster', name: { en: 'Bold poster', ar: 'ملصق جريء' }, event_types: ['general'], photos: 3 },
65
+ GENERAL_FIREWORKS: { value: 'general-fireworks', name: { en: 'Fireworks', ar: 'ألعاب نارية' }, event_types: ['general'], photos: 1 },
66
+ GENERAL_WRISTBAND: { value: 'general-wristband', name: { en: 'Wristband', ar: 'سوار الحفلة' }, event_types: ['general'], photos: 1 },
10
67
  };
11
- exports.EventTemplateOptions = Object.values(exports.EventTemplate).map((type) => ({
12
- value: type.value,
13
- name: type.name,
14
- event_types: type.event_types,
15
- }));
68
+ exports.EventTemplateOptions = Object.values(exports.EventTemplate).map((type) => {
69
+ var _a, _b;
70
+ return ({
71
+ value: type.value,
72
+ name: type.name,
73
+ event_types: [...type.event_types],
74
+ photos: (_a = type.photos) !== null && _a !== void 0 ? _a : 1,
75
+ hidden: (_b = type.hidden) !== null && _b !== void 0 ? _b : false,
76
+ });
77
+ });
78
+ /** Most pictures any design shows (cover + photos) */
79
+ exports.EVENT_TEMPLATE_MAX_PHOTOS = 5;
80
+ /** Pictures a template shows (cover included) */
81
+ const eventTemplatePhotos = (template) => { var _a, _b; return (_b = (_a = exports.EventTemplateOptions.find((t) => t.value === template)) === null || _a === void 0 ? void 0 : _a.photos) !== null && _b !== void 0 ? _b : 1; };
82
+ exports.eventTemplatePhotos = eventTemplatePhotos;
83
+ /** Templates offered for an event type; events without a type are weddings */
84
+ const eventTemplatesFor = (eventType) => exports.EventTemplateOptions.filter((t) => !t.hidden && t.event_types.includes(eventType || 'wedding'));
85
+ exports.eventTemplatesFor = eventTemplatesFor;