@timardex/cluemart-shared 1.5.756 → 1.5.758

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.cjs CHANGED
@@ -78,6 +78,7 @@ __export(index_exports, {
78
78
  IMAGE_EXTENSION: () => IMAGE_EXTENSION,
79
79
  IOS_URL: () => IOS_URL,
80
80
  ImageTypeEnum: () => ImageTypeEnum,
81
+ KNOWN_EVENT_SCHEDULE_STATUSES: () => KNOWN_EVENT_SCHEDULE_STATUSES,
81
82
  OG_DESCRIPTION_LINE_BREAK: () => OG_DESCRIPTION_LINE_BREAK,
82
83
  POST_SHARE_RESOURCE_TYPES: () => POST_SHARE_RESOURCE_TYPES,
83
84
  PROMO_CODE_PREFIX: () => PROMO_CODE_PREFIX,
@@ -131,6 +132,7 @@ __export(index_exports, {
131
132
  badgeIds: () => badgeIds,
132
133
  badges: () => badges,
133
134
  buildApplicationShareDescription: () => buildApplicationShareDescription,
135
+ buildCalendarSheetContentData: () => buildCalendarSheetContentData,
134
136
  buildFacebookShareQuote: () => buildFacebookShareQuote,
135
137
  buildInvitationShareDescription: () => buildInvitationShareDescription,
136
138
  buildPublicEventShareDescription: () => buildPublicEventShareDescription,
@@ -146,6 +148,8 @@ __export(index_exports, {
146
148
  cluiFiles: () => cluiFiles,
147
149
  cluiIds: () => cluiIds,
148
150
  cluiImages: () => cluiImages,
151
+ collectStallholderStartDates: () => collectStallholderStartDates,
152
+ collectVendorEventRelationDateTimes: () => collectVendorEventRelationDateTimes,
149
153
  companyContactFields: () => companyContactFields,
150
154
  computeDailyClueState: () => computeDailyClueState,
151
155
  contactUsFields: () => contactUsFields,
@@ -154,11 +158,19 @@ __export(index_exports, {
154
158
  emailField: () => emailField,
155
159
  eventBasicInfoFields: () => eventBasicInfoFields,
156
160
  eventEndDateFields: () => eventEndDateFields,
161
+ eventHasSelectedDate: () => eventHasSelectedDate,
157
162
  eventInfo: () => eventInfo,
158
163
  eventInfoPaymentInfo: () => eventInfoPaymentInfo,
159
164
  eventMatchesDateStatusPeriod: () => eventMatchesDateStatusPeriod,
160
165
  eventStartDateFields: () => eventStartDateFields,
166
+ eventStartDatesSet: () => eventStartDatesSet,
161
167
  filterEventsByDateStatusPeriod: () => filterEventsByDateStatusPeriod,
168
+ filterRegisteredVendorsByEventDatesOnly: () => filterRegisteredVendorsByEventDatesOnly,
169
+ filterRegisteredVendorsForEvent: () => filterRegisteredVendorsForEvent,
170
+ filterUnregisteredVendorsByEventDatesOnly: () => filterUnregisteredVendorsByEventDatesOnly,
171
+ filterUnregisteredVendorsForEvent: () => filterUnregisteredVendorsForEvent,
172
+ filterVendorEventsBySelectedDate: () => filterVendorEventsBySelectedDate,
173
+ findEventDateTimeByIsoDate: () => findEventDateTimeByIsoDate,
162
174
  fonts: () => fonts,
163
175
  foodFlavourOptions: () => foodFlavourOptions,
164
176
  formatCategoryLabel: () => formatCategoryLabel,
@@ -177,11 +189,28 @@ __export(index_exports, {
177
189
  formatShareTagsSection: () => formatShareTagsSection,
178
190
  formatStallCapacityLabel: () => formatStallCapacityLabel,
179
191
  formatTimestamp: () => formatTimestamp,
192
+ fromCalendarIsoDate: () => fromCalendarIsoDate,
180
193
  futureTimePeriods: () => futureTimePeriods,
181
194
  gameScreenIdentifierList: () => gameScreenIdentifierList,
182
195
  gameTypeToDisplayName: () => gameTypeToDisplayName,
183
196
  getAllowedEventDateStatuses: () => getAllowedEventDateStatuses,
184
197
  getCurrentAndFutureDates: () => getCurrentAndFutureDates,
198
+ getEventCalendarIsoDates: () => getEventCalendarIsoDates,
199
+ getEventDatesWithStallholders: () => getEventDatesWithStallholders,
200
+ getEventScheduleStatusLabel: () => getEventScheduleStatusLabel,
201
+ getEventScheduleStatusPresentation: () => getEventScheduleStatusPresentation,
202
+ getEventScheduleStatusTone: () => getEventScheduleStatusTone,
203
+ getEventStallholderEmptyMessage: () => getEventStallholderEmptyMessage,
204
+ getRegisteredVendorCategoryNames: () => getRegisteredVendorCategoryNames,
205
+ getRegisteredVendorStartDates: () => getRegisteredVendorStartDates,
206
+ getStallholderCategoryNames: () => getStallholderCategoryNames,
207
+ getStallholderCategoryOptions: () => getStallholderCategoryOptions,
208
+ getUnregisteredVendorCategoryNames: () => getUnregisteredVendorCategoryNames,
209
+ getUnregisteredVendorStartDates: () => getUnregisteredVendorStartDates,
210
+ getVendorEventRelationDateOptions: () => getVendorEventRelationDateOptions,
211
+ getVendorEventRelationStartDates: () => getVendorEventRelationStartDates,
212
+ getVendorEventsEmptyMessage: () => getVendorEventsEmptyMessage,
213
+ hasMatchingEventDate: () => hasMatchingEventDate,
185
214
  iconFiles: () => iconFiles,
186
215
  iconIds: () => iconIds,
187
216
  icons: () => icons,
@@ -198,6 +227,8 @@ __export(index_exports, {
198
227
  logoIds: () => logoIds,
199
228
  logos: () => logos,
200
229
  mapArrayToOptions: () => mapArrayToOptions,
230
+ matchesCategory: () => matchesCategory,
231
+ matchesSelectedDate: () => matchesSelectedDate,
201
232
  normalizeShareOgDescription: () => normalizeShareOgDescription,
202
233
  normalizeShareRouteId: () => normalizeShareRouteId,
203
234
  normalizeShareText: () => normalizeShareText,
@@ -218,6 +249,7 @@ __export(index_exports, {
218
249
  profileFields: () => profileFields,
219
250
  refundPolicyOptions: () => refundPolicyOptions,
220
251
  registerFields: () => registerFields,
252
+ relationHasSelectedDate: () => relationHasSelectedDate,
221
253
  removeTypename: () => removeTypename,
222
254
  requestPasswordResetFields: () => requestPasswordResetFields,
223
255
  requirementsOptions: () => requirementsOptions,
@@ -225,6 +257,7 @@ __export(index_exports, {
225
257
  rewardNiceNames: () => rewardNiceNames,
226
258
  seededShuffle: () => seededShuffle,
227
259
  shareMessageFooterPlacementForType: () => shareMessageFooterPlacementForType,
260
+ shouldShowEventActionsWithWeather: () => shouldShowEventActionsWithWeather,
228
261
  socialMediaFields: () => socialMediaFields,
229
262
  sortDatesChronologically: () => sortDatesChronologically,
230
263
  splitShareDescriptionSections: () => splitShareDescriptionSections,
@@ -232,6 +265,7 @@ __export(index_exports, {
232
265
  statusOptions: () => statusOptions,
233
266
  tagOptions: () => tagOptions,
234
267
  timeFormat: () => timeFormat,
268
+ toCalendarIsoDate: () => toCalendarIsoDate,
235
269
  toGraphqlQueryString: () => toGraphqlQueryString,
236
270
  toNZTime: () => toNZTime,
237
271
  truncateText: () => truncateText,
@@ -1335,709 +1369,940 @@ function filterEventsByDateStatusPeriod(events, period) {
1335
1369
  );
1336
1370
  }
1337
1371
 
1338
- // src/formFields/vendor/vendorInfo.ts
1339
- var vendorElectricity = {
1340
- details: {
1341
- helperText: "Please describe details e.g. amps, voltage, etc.",
1342
- isTextArea: true,
1343
- name: "requirements.electricity.details",
1344
- placeholder: "Electricity requirements"
1345
- },
1346
- isRequired: {
1347
- name: "requirements.electricity.isRequired",
1348
- placeholder: "Do you require electricity?"
1349
- }
1350
- };
1351
- var vendorGazebo = {
1352
- details: {
1353
- helperText: "Please describe details e.g. size, etc.",
1354
- isTextArea: true,
1355
- name: "requirements.gazebo.details",
1356
- placeholder: "Gazebo requirements"
1357
- },
1358
- isRequired: {
1359
- name: "requirements.gazebo.isRequired",
1360
- placeholder: "Do you require Gazebo?"
1361
- }
1362
- };
1363
- var vendorTable = {
1364
- details: {
1365
- helperText: "Please describe details e.g. size, etc.",
1366
- isTextArea: true,
1367
- name: "requirements.table.details",
1368
- placeholder: "Table requirements"
1369
- },
1370
- isRequired: {
1371
- name: "requirements.table.isRequired",
1372
- placeholder: "Do you require Table?"
1373
- }
1374
- };
1375
- var vendorPriceRange = {
1376
- max: {
1377
- helperText: "Product maximum price",
1378
- name: "product.priceRange.max",
1379
- placeholder: "Maximum price: "
1380
- },
1381
- min: {
1382
- helperText: "Product minimum price",
1383
- name: "product.priceRange.min",
1384
- placeholder: "Minimum price: "
1372
+ // src/calendar/eventCalendar.ts
1373
+ var import_dayjs2 = __toESM(require("dayjs"));
1374
+ var KNOWN_EVENT_SCHEDULE_STATUSES = /* @__PURE__ */ new Set([
1375
+ "Started" /* STARTED */,
1376
+ "Starting_Soon" /* STARTING_SOON */,
1377
+ "Ended" /* ENDED */
1378
+ ]);
1379
+ function toCalendarIsoDate(startDate) {
1380
+ const formatted = (0, import_dayjs2.default)(startDate, dateFormat).format("YYYY-MM-DD");
1381
+ return (0, import_dayjs2.default)(formatted, "YYYY-MM-DD", true).isValid() ? formatted : null;
1382
+ }
1383
+ function fromCalendarIsoDate(isoDate) {
1384
+ return (0, import_dayjs2.default)(isoDate, "YYYY-MM-DD").format(dateFormat);
1385
+ }
1386
+ function getEventCalendarIsoDates(dateTimes) {
1387
+ return dateTimes?.map((dateTime) => toCalendarIsoDate(dateTime.startDate)).filter((date) => Boolean(date)) ?? [];
1388
+ }
1389
+ function findEventDateTimeByIsoDate(dateTimes, isoDate) {
1390
+ const selected = fromCalendarIsoDate(isoDate);
1391
+ return dateTimes?.find((dateTime) => dateTime.startDate === selected) ?? null;
1392
+ }
1393
+ function buildCalendarSheetContentData(dateTimes, isoDate, location, resourceId, resourceType) {
1394
+ const dateTime = findEventDateTimeByIsoDate(dateTimes, isoDate);
1395
+ if (!dateTime) {
1396
+ return null;
1385
1397
  }
1386
- };
1387
- var vendorStallSize = {
1388
- depth: {
1389
- helperText: "Stall size in depth",
1390
- name: "stallInfo.size.depth",
1391
- placeholder: "Stall Depth: "
1392
- },
1393
- width: {
1394
- helperText: "Stall size in width",
1395
- name: "stallInfo.size.width",
1396
- placeholder: "Stall Width: "
1398
+ return {
1399
+ dateTime,
1400
+ location,
1401
+ resourceId,
1402
+ resourceType
1403
+ };
1404
+ }
1405
+ function getEventScheduleStatusTone(status) {
1406
+ switch (status) {
1407
+ case "Started" /* STARTED */:
1408
+ return "started";
1409
+ case "Starting_Soon" /* STARTING_SOON */:
1410
+ return "startingSoon";
1411
+ case "Ended" /* ENDED */:
1412
+ return "ended";
1413
+ default:
1414
+ return "default";
1397
1415
  }
1398
- };
1399
- var vendorPackaging = {
1400
- helperText: "Select packaging type, you can select more than one",
1401
- name: "product.packaging",
1402
- placeholder: "Packaging type"
1403
- };
1404
- var vendorProducedIn = {
1405
- helperText: "Select where the product is produced, you can select more than one",
1406
- name: "product.producedIn",
1407
- placeholder: "Produced type"
1408
- };
1409
- var vendorFoodFlavour = {
1410
- helperText: "You can select more than one food flavour",
1411
- name: "product.foodFlavors",
1412
- placeholder: "Food flavours"
1413
- };
1414
- var vendorCompliance = [
1415
- {
1416
- name: "compliance.liabilityInsurance",
1417
- placeholder: "Liability Insurance"
1418
- },
1419
- {
1420
- name: "compliance.foodBeverageLicense",
1421
- placeholder: "Food and Beverage License"
1416
+ }
1417
+ function getEventScheduleStatusPresentation(dateTime) {
1418
+ return {
1419
+ status: dateTime.dateStatus,
1420
+ statusLabel: dateTime.dateStatus.replaceAll("_", " ").toLowerCase(),
1421
+ tone: getEventScheduleStatusTone(dateTime.dateStatus)
1422
+ };
1423
+ }
1424
+ function getEventScheduleStatusLabel(dateTime, onlyShowKnownStatuses) {
1425
+ const { dateStatus: status } = dateTime;
1426
+ const isKnownStatus = Boolean(
1427
+ status && KNOWN_EVENT_SCHEDULE_STATUSES.has(status)
1428
+ );
1429
+ if (onlyShowKnownStatuses && !isKnownStatus) {
1430
+ return null;
1422
1431
  }
1423
- ];
1424
- var packagingTypes = [
1425
- "Biodegradable",
1426
- "Compostable",
1427
- "Fabric",
1428
- "Glass",
1429
- "Other",
1430
- "Paper",
1431
- "Plastic",
1432
- "Recyclable",
1433
- "Reusable",
1434
- "Single-use",
1435
- "Wood"
1436
- ];
1437
- var producedIngTypes = [
1438
- "Commercial Kitchen",
1439
- "Home Premises",
1440
- "Factory",
1441
- "Farm",
1442
- "Other"
1443
- ];
1444
- var packagingOptions = mapArrayToOptions(packagingTypes);
1445
- var producedIngOptions = mapArrayToOptions(producedIngTypes);
1446
- var foodFlavourOptions = Object.values(
1447
- EnumFoodFlavor
1448
- ).map((flavour) => ({
1449
- label: flavour.replaceAll("_", " "),
1450
- value: flavour
1451
- }));
1432
+ return isKnownStatus ? status.replaceAll("_", " ").toLowerCase() : `Next event date: ${formatDate(dateTime.startDate, "date")}`;
1433
+ }
1434
+ function shouldShowEventActionsWithWeather(resourceType, dateTime, location) {
1435
+ return resourceType === "event" /* EVENT */ && Boolean(location) && Boolean(dateTime?.dateStatus) && ![
1436
+ "Ended" /* ENDED */,
1437
+ "Canceled" /* CANCELED */,
1438
+ "Started" /* STARTED */
1439
+ ].includes(dateTime.dateStatus);
1440
+ }
1452
1441
 
1453
- // src/formFields/event/event.ts
1454
- var eventBasicInfoFields = [
1455
- {
1456
- helperText: "Name of the Event *",
1457
- name: "name",
1458
- placeholder: "Name"
1459
- },
1460
- {
1461
- helperText: "NZBN number (required \u2013 ClueMart only accepts events with valid NZBN number) *",
1462
- keyboardType: "number-pad",
1463
- name: "nzbn",
1464
- placeholder: "NZBN number"
1465
- },
1466
- {
1467
- helperText: "Name of the Provider (if applicable)",
1468
- name: "provider",
1469
- placeholder: "Provider"
1470
- },
1442
+ // src/formFields/categories/clothingAndFashion.ts
1443
+ var clothingAndFashion = [
1471
1444
  {
1472
- helperText: "Description of the Event *",
1473
- isTextArea: true,
1474
- name: "description",
1475
- placeholder: "Description"
1445
+ id: "clothing-fashion",
1446
+ name: "Clothing & Fashion",
1447
+ description: "New, handmade, or upcycled clothing and accessories with a creative twist.",
1448
+ subcategories: [
1449
+ {
1450
+ id: "apparel-babywear",
1451
+ name: "Apparel & Babywear",
1452
+ items: [
1453
+ {
1454
+ id: "apparel",
1455
+ name: "Apparel",
1456
+ description: "Dresses, t-shirts, jumpers, rompers, sets, kidswear."
1457
+ },
1458
+ {
1459
+ id: "baby-toddler-apparel",
1460
+ name: "Baby & Toddler Apparel",
1461
+ description: "Handmade baby clothes, soft shoes, bibs, hats, knitted sets."
1462
+ },
1463
+ {
1464
+ id: "upcycled-fashion",
1465
+ name: "Upcycled Fashion",
1466
+ description: "Reworked garments, patchwork pieces, restyled vintage."
1467
+ },
1468
+ {
1469
+ id: "other-wearable-items",
1470
+ name: "Other wearable items",
1471
+ description: "Unique clothing not listed above."
1472
+ }
1473
+ ]
1474
+ },
1475
+ {
1476
+ id: "fashion-accessories",
1477
+ name: "Fashion Accessories",
1478
+ items: [
1479
+ {
1480
+ id: "accessories",
1481
+ name: "Accessories",
1482
+ description: "Scarves, belts, gloves, hats, headbands, caps."
1483
+ },
1484
+ {
1485
+ id: "shoes",
1486
+ name: "Shoes",
1487
+ description: "Handmade shoes, baby booties, sandals, slippers."
1488
+ },
1489
+ {
1490
+ id: "bags-wallets",
1491
+ name: "Bags & Wallets",
1492
+ description: "Leather bags, fabric purses, wallets, backpacks, totes."
1493
+ },
1494
+ {
1495
+ id: "other-accessories",
1496
+ name: "Other accessories",
1497
+ description: "Brooches, pins, or hybrid functional items."
1498
+ }
1499
+ ]
1500
+ },
1501
+ {
1502
+ id: "jewelry-creative-wearables",
1503
+ name: "Jewelry & Creative Wearables",
1504
+ items: [
1505
+ {
1506
+ id: "jewelry",
1507
+ name: "Jewelry",
1508
+ description: "Necklaces, earrings, bracelets, rings, anklets."
1509
+ },
1510
+ {
1511
+ id: "other-creative-wearables",
1512
+ name: "Other creative wearables",
1513
+ description: "Wearable art, statement pieces, bold handmade designs."
1514
+ }
1515
+ ]
1516
+ },
1517
+ {
1518
+ id: "traditional-cultural-clothing-accessories",
1519
+ name: "Traditional & Cultural Clothing and Accessories",
1520
+ items: [
1521
+ {
1522
+ id: "traditional-clothing-accessories",
1523
+ name: "Traditional Clothing & Accessories ",
1524
+ description: "raditional clothing, jewellery, accessories and footwear from around the world, including both handmade and non-handmade items."
1525
+ },
1526
+ {
1527
+ id: "other-traditional-cultural-items",
1528
+ name: "Other Traditional & Cultural Items",
1529
+ description: "traditional or culturally inspired wearables and decorative cultural pieces such as plates, table linens and similar items."
1530
+ }
1531
+ ]
1532
+ }
1533
+ ]
1476
1534
  }
1477
1535
  ];
1478
- var eventStartDateFields = [
1479
- {
1480
- dateMode: "date",
1481
- helperText: "Start Date of the Event *",
1482
- name: "startDate",
1483
- placeholder: "Start Date"
1484
- },
1536
+
1537
+ // src/formFields/categories/electronicsAndTechnology.ts
1538
+ var electronicsAndTechnology = [
1485
1539
  {
1486
- dateMode: "time",
1487
- helperText: "Start Time of the Event *",
1488
- name: "startTime",
1489
- placeholder: "Start Time"
1540
+ id: "electronics-technology",
1541
+ name: "Electronics & Technology",
1542
+ description: "New, second-hand, or handmade tech and digital items commonly found at markets.",
1543
+ subcategories: [
1544
+ {
1545
+ id: "mobile-everyday-tech",
1546
+ name: "Mobile & Everyday Tech",
1547
+ items: [
1548
+ {
1549
+ id: "mobile-phone-accessories",
1550
+ name: "Mobile & Phone Accessories",
1551
+ description: "Phone cases, holders, screen protectors, charging cables, power banks, grips."
1552
+ },
1553
+ {
1554
+ id: "other-mobile-gadgets",
1555
+ name: "Other mobile gadgets",
1556
+ description: "Stands, styluses, SIM tools, cleaning kits, wallet accessories."
1557
+ }
1558
+ ]
1559
+ },
1560
+ {
1561
+ id: "audio-music-creative-tech",
1562
+ name: "Audio, Music & Creative Tech",
1563
+ items: [
1564
+ {
1565
+ id: "audio-music-tech",
1566
+ name: "Audio & Music Tech",
1567
+ description: "Portable speakers, headphones, mini radios, Bluetooth adapters, sound accessories."
1568
+ },
1569
+ {
1570
+ id: "instruments-music-gear",
1571
+ name: "Instruments & Music Gear",
1572
+ description: "Small electronic instruments, DIY synth kits, drum pads, loop machines."
1573
+ },
1574
+ {
1575
+ id: "recording-creative-devices",
1576
+ name: "Recording & Creative Devices",
1577
+ description: "USB microphones, podcast tools, voice recorders, mobile lighting, content tools."
1578
+ },
1579
+ {
1580
+ id: "other-audio-music-items",
1581
+ name: "Other audio or music-related items",
1582
+ description: "Musical gadgets or creative gear not listed above."
1583
+ }
1584
+ ]
1585
+ },
1586
+ {
1587
+ id: "diy-gadgets-secondhand-finds",
1588
+ name: "DIY, Gadgets & Second-Hand Finds",
1589
+ items: [
1590
+ {
1591
+ id: "diy-electronics-tools",
1592
+ name: "DIY Electronics & Tools",
1593
+ description: "LED lights, USB gadgets, circuit boards, repair kits, tech-themed toys, novelty items."
1594
+ },
1595
+ {
1596
+ id: "other-tech-finds",
1597
+ name: "Other Tech Finds",
1598
+ description: "Used electronics, smart gadgets, wearable tech, calculators, tablet stands, e-waste upcycles."
1599
+ },
1600
+ {
1601
+ id: "other-technology-innovation-items",
1602
+ name: "Other technology or innovation-related items",
1603
+ description: "Anything not covered but clearly tech-driven."
1604
+ }
1605
+ ]
1606
+ }
1607
+ ]
1490
1608
  }
1491
1609
  ];
1492
- var eventEndDateFields = [
1493
- {
1494
- dateMode: "date",
1495
- helperText: "End Date of the Event *",
1496
- name: "endDate",
1497
- placeholder: "End Date"
1498
- },
1610
+
1611
+ // src/formFields/categories/foodAndBeverages.ts
1612
+ var foodAndBeverages = [
1499
1613
  {
1500
- dateMode: "time",
1501
- helperText: "End Time of the Event *",
1502
- name: "endTime",
1503
- placeholder: "End Time"
1614
+ id: "food-beverages",
1615
+ name: "Food & Beverages",
1616
+ description: "Fresh produce, drinks, sweet and savoury street food, ready-to-eat meals, and packaged goods.",
1617
+ subcategories: [
1618
+ {
1619
+ id: "fresh-food-groceries",
1620
+ name: "Fresh Food & Groceries",
1621
+ items: [
1622
+ {
1623
+ id: "fruits-vegetables",
1624
+ name: "Fruits & Vegetables",
1625
+ description: "Fresh seasonal fruit, organic vegetables, specialty produce, berries, tropical fruit, heritage varieties."
1626
+ },
1627
+ {
1628
+ id: "meat-seafood",
1629
+ name: "Meat & Seafood",
1630
+ description: "Butcher cuts, fresh fish, smoked meats, sausages, seafood platters, artisanal jerky."
1631
+ },
1632
+ {
1633
+ id: "dairy-eggs",
1634
+ name: "Dairy & Eggs",
1635
+ description: "Farm eggs, handmade cheeses, yoghurt, fresh milk, goat\u2019s milk products."
1636
+ },
1637
+ {
1638
+ id: "bakery-pastries",
1639
+ name: "Bakery & Pastries",
1640
+ description: "Freshly baked bread, sourdough, bagels, croissants, focaccia, traditional baked goods."
1641
+ },
1642
+ {
1643
+ id: "spices-condiments",
1644
+ name: "Spices & Condiments",
1645
+ description: "Dried herbs, spice blends, specialty salts, hot sauces, infused oils, chutneys."
1646
+ },
1647
+ {
1648
+ id: "packaged-specialty-foods",
1649
+ name: "Packaged & Specialty Foods",
1650
+ description: "Honey, jams, preserves, pickles, nut butters, sauces, pre-packaged snacks."
1651
+ },
1652
+ {
1653
+ id: "other-fresh-food-items",
1654
+ name: "Other fresh food items",
1655
+ description: "Items that don\u2019t fit above, e.g. fermented foods, plant-based substitutes."
1656
+ }
1657
+ ]
1658
+ },
1659
+ {
1660
+ id: "beverages-specialty-drinks",
1661
+ name: "Beverages & Specialty Drinks",
1662
+ items: [
1663
+ {
1664
+ id: "fresh-juices-smoothies",
1665
+ name: "Fresh Juices & Smoothies",
1666
+ description: "Cold-pressed juices, detox blends, fruit smoothies, tropical mixes."
1667
+ },
1668
+ {
1669
+ id: "coffee-teas",
1670
+ name: "Coffee & Teas",
1671
+ description: "Espresso, pour-over coffee, herbal teas, matcha, bubble tea, locally blended tea."
1672
+ },
1673
+ {
1674
+ id: "dairy-plant-based-drinks",
1675
+ name: "Dairy & Plant-Based Drinks",
1676
+ description: "Milkshakes, lassis, almond/oat milk drinks, coconut water."
1677
+ },
1678
+ {
1679
+ id: "alcoholic-beverages",
1680
+ name: "Alcoholic Beverages",
1681
+ description: "Local wines, craft beer, mead, cider, infused spirits, cocktail kits."
1682
+ },
1683
+ {
1684
+ id: "other-beverages",
1685
+ name: "Other beverages",
1686
+ description: "Kombucha, kefir, energy drinks, non-alcoholic wines or beers."
1687
+ }
1688
+ ]
1689
+ },
1690
+ {
1691
+ id: "savoury-prepared-foods-street-food",
1692
+ name: "Savoury Prepared Foods & Street Food",
1693
+ items: [
1694
+ {
1695
+ id: "local-specialties",
1696
+ name: "Local Specialties",
1697
+ description: "Meat pies, hangi, seafood chowder, fry bread, traditional NZ dishes."
1698
+ },
1699
+ {
1700
+ id: "asian-cuisine",
1701
+ name: "Asian Cuisine",
1702
+ description: "Sushi, bao buns, dumplings, ramen, satay, spring rolls, fried rice."
1703
+ },
1704
+ {
1705
+ id: "mediterranean-cuisine",
1706
+ name: "Mediterranean Cuisine",
1707
+ description: "Falafel, hummus wraps, souvlaki, Greek salad, dolma."
1708
+ },
1709
+ {
1710
+ id: "italian-delights",
1711
+ name: "Italian Delights",
1712
+ description: "Pizza, calzone, focaccia, fresh pasta, arancini."
1713
+ },
1714
+ {
1715
+ id: "bbq-grilled-foods",
1716
+ name: "BBQ & Grilled Foods",
1717
+ description: "Kebabs, grilled chicken, ribs, burgers, sausages."
1718
+ },
1719
+ {
1720
+ id: "savoury-crepes-pancakes",
1721
+ name: "Savoury Crepes & Pancakes",
1722
+ description: "Filled savoury crepes, mini savoury pancakes."
1723
+ },
1724
+ {
1725
+ id: "savoury-baked-goods-pastries",
1726
+ name: "Savoury Baked Goods & Pastries",
1727
+ description: "Quiches, savoury muffins, filled savoury pastries, empanadas."
1728
+ },
1729
+ {
1730
+ id: "vegan-vegetarian-dishes",
1731
+ name: "Vegan & Vegetarian Dishes",
1732
+ description: "Buddha bowls, plant-based burgers, salads, vegan sushi."
1733
+ },
1734
+ {
1735
+ id: "other-savoury-foods",
1736
+ name: "Other Savoury Foods",
1737
+ description: "Fusion dishes, mixed platters, savoury meal kits."
1738
+ }
1739
+ ]
1740
+ },
1741
+ {
1742
+ id: "sweet-prepared-foods",
1743
+ name: "Sweet Prepared Foods",
1744
+ items: [
1745
+ {
1746
+ id: "sweet-crepes-pancakes-fried-treats",
1747
+ name: "Sweet Crepes, Pancakes & Fried Treats",
1748
+ description: "Crepes, waffles, mini pancakes, muffins, doughnuts."
1749
+ },
1750
+ {
1751
+ id: "sweet-baked-goods-desserts",
1752
+ name: "Sweet Baked Goods & Desserts",
1753
+ description: "Cakes, pastries, slices, trifles, layered desserts."
1754
+ },
1755
+ {
1756
+ id: "fruit-based-snacks",
1757
+ name: "Fruit-Based Snacks",
1758
+ description: "Fruit skewers, dried fruit packs, chocolate-dipped fruit."
1759
+ },
1760
+ {
1761
+ id: "candy-confectionery",
1762
+ name: "Candy & Confectionery",
1763
+ description: "Fudge, handmade candies, toffee, nougat, brittle."
1764
+ },
1765
+ {
1766
+ id: "other-sweet-foods",
1767
+ name: "Other Sweet Foods",
1768
+ description: "Fusion desserts, sweet platters, sweet meal kits."
1769
+ }
1770
+ ]
1771
+ }
1772
+ ]
1504
1773
  }
1505
1774
  ];
1506
- var availableTagTypes = [
1507
- { icon: "human-male-female-child", label: "All Ages" },
1508
- { icon: "weather-sunny", label: "Day Market" },
1509
- { icon: "account-child", label: "Family Friendly" },
1510
- { icon: "ticket-percent", label: "Free Entry" },
1511
- { icon: "home-city", label: "Indoor Market" },
1512
- { icon: "music", label: "Live Music" },
1513
- { icon: "bus", label: "Near Bustop" },
1514
- { icon: "slide", label: "Near Playground" },
1515
- { icon: "train", label: "Near Train Station" },
1516
- { icon: "weather-night", label: "Night Market" },
1517
- { icon: "tree", label: "Outdoor Market" },
1518
- { icon: "car", label: "Parking Available" },
1519
- { icon: "dog", label: "Pet Friendly" },
1520
- { icon: "ship-wheel", label: "Port Nearby" },
1521
- { icon: "toilet", label: "Toilet Available" },
1522
- { icon: "wheelchair-accessibility", label: "Wheelchair Accessible" }
1523
- ];
1524
- var tagOptions = availableTagTypes.map((tag) => ({
1525
- label: tag.label,
1526
- value: tag.label
1527
- }));
1528
1775
 
1529
- // src/formFields/event/eventInfo.ts
1530
- var eventInfo = [
1531
- {
1532
- helperText: "Application Deadline (hours before event start) *",
1533
- keyboardType: "number-pad",
1534
- name: "applicationDeadlineHours",
1535
- placeholder: "Application Deadline (in hours)"
1536
- },
1537
- {
1538
- helperText: "Payment Due (hours after application or invitation acceptance) *",
1539
- keyboardType: "number-pad",
1540
- name: "paymentDueHours",
1541
- placeholder: "Payment Due (in hours)"
1542
- },
1776
+ // src/formFields/categories/handmadeAndLocalProducts.ts
1777
+ var handmadeAndLocalProducts = [
1543
1778
  {
1544
- helperText: "Pack-In Time (hours before event start) *",
1545
- keyboardType: "number-pad",
1546
- name: "packInTime",
1547
- placeholder: "Pack In Time (in hours)"
1779
+ id: "handmade-local-products",
1780
+ name: "Handmade & Local Products",
1781
+ description: "Unique, handmade, or locally produced artisan goods.",
1782
+ subcategories: [
1783
+ {
1784
+ id: "home-living",
1785
+ name: "Home & Living",
1786
+ items: [
1787
+ {
1788
+ id: "ceramics-pottery",
1789
+ name: "Ceramics & Pottery",
1790
+ description: "Handmade mugs, vases, bowls, decorative plates, plant pots."
1791
+ },
1792
+ {
1793
+ id: "candles-home-scents",
1794
+ name: "Candles & Home Scents",
1795
+ description: "Soy candles, beeswax candles, wax melts, incense sticks, room sprays and herbal sachets."
1796
+ },
1797
+ {
1798
+ id: "botanical-crafts",
1799
+ name: "Botanical Crafts",
1800
+ description: "Dried-flower d\xE9cor and pressed-flower crafts"
1801
+ },
1802
+ {
1803
+ id: "textiles-embroidery",
1804
+ name: "Textiles & Embroidery",
1805
+ description: "Handsewn items, embroidered napkins, home linens, aprons, fabric gift wraps, handmade fabric bags, quilted goods, personalized textile gifts."
1806
+ },
1807
+ {
1808
+ id: "woodcraft-metalcraft",
1809
+ name: "Woodcraft & Metalcraft",
1810
+ description: "Wooden boards, handmade frames, sculptures, metal signs, furniture."
1811
+ },
1812
+ {
1813
+ id: "handmade-soaps-natural-body-goods",
1814
+ name: "Handmade Soaps & Natural Body Goods",
1815
+ description: "Handmade soaps, balms, oils, bath items"
1816
+ },
1817
+ {
1818
+ id: "seasonal-festive-crafts",
1819
+ name: "Seasonal & Festive Crafts",
1820
+ description: "Christmas, Easter and seasonal handmade decor"
1821
+ },
1822
+ {
1823
+ id: "other-home-living-products",
1824
+ name: "Other home & living products",
1825
+ description: "Items that don't fit above but serve home-related purposes."
1826
+ }
1827
+ ]
1828
+ },
1829
+ {
1830
+ id: "art-personal-expression",
1831
+ name: "Art & Personal Expression",
1832
+ items: [
1833
+ {
1834
+ id: "paintings-illustrations",
1835
+ name: "Paintings & Illustrations",
1836
+ description: "Paintings, canvas art, hand-drawn illustrations, digital prints, graphic art and calligraphy pieces."
1837
+ },
1838
+ {
1839
+ id: "sculptures-carvings",
1840
+ name: "Sculptures & Carvings ",
1841
+ description: "Sculptures made from wood, stone, metal, clay or resin, carved decorative pieces and artistic 3D works."
1842
+ },
1843
+ {
1844
+ id: "creative-handmade-alternative-art",
1845
+ name: "Creative Handmade & Alternative Art",
1846
+ description: "Handmade textile d\xE9cor, fabric ornaments, mixed-media art, creative craft pieces and modern handmade artworks."
1847
+ },
1848
+ {
1849
+ id: "handmade-mini-figures-decor",
1850
+ name: "Handmade Mini Figures & D\xE9cor",
1851
+ description: "Small handmade figures, tiny houses and crafted mini decorative items."
1852
+ },
1853
+ {
1854
+ id: "other-artistic-expressive-products",
1855
+ name: "Other Artistic or Expressive Products",
1856
+ description: "Custom artworks, specialty handmade d\xE9cor, unique crafts."
1857
+ }
1858
+ ]
1859
+ },
1860
+ {
1861
+ id: "handmade-jewellery-accessories-cultural-crafts",
1862
+ name: "Handmade Jewellery, Accessories & Cultural Crafts",
1863
+ items: [
1864
+ {
1865
+ id: "jewellery-handmade-items-nz-traditional-materials",
1866
+ name: "Jewellery & Handmade Items from NZ Traditional Materials",
1867
+ description: "Handmade jewellery and decorative or functional items crafted from pounamu, bone, wood and other traditional New Zealand materials."
1868
+ },
1869
+ {
1870
+ id: "maori-pasifika-cultural-crafts-clothing",
1871
+ name: "M\u0101ori & Pasifika Cultural Crafts and Clothing",
1872
+ description: "Culturally inspired handmade items, accessories and garments featuring M\u0101ori or Pasifika motifs, traditional patterns and regional craftsmanship."
1873
+ },
1874
+ {
1875
+ id: "traditional-handmade-clothing-jewellery-crafts-global-cultures",
1876
+ name: "Traditional Handmade Clothing, Jewellery & Crafts from Global Cultures",
1877
+ description: "Handcrafted clothing, jewellery and cultural items from diverse traditions \u2014 including Asian, African, European, Middle Eastern, Indian, Chinese, Japanese, Pacific, and other culturally significant handmade pieces."
1878
+ },
1879
+ {
1880
+ id: "other-handmade-cultural-items",
1881
+ name: "Other Handmade Cultural Items",
1882
+ description: "Unique or culturally inspired handmade pieces not specifically covered in the categories above."
1883
+ }
1884
+ ]
1885
+ },
1886
+ {
1887
+ id: "gift-ideas-accessories",
1888
+ name: "Gift Ideas & Accessories",
1889
+ items: [
1890
+ {
1891
+ id: "handmade-pens-keychains-fridge-magnets",
1892
+ name: "Handmade Pens, Keychains and Fridge Magnets",
1893
+ description: null
1894
+ },
1895
+ {
1896
+ id: "gift-packaging-wrapping-accessories",
1897
+ name: "Gift Packaging & Wrapping Accessories",
1898
+ description: null
1899
+ },
1900
+ {
1901
+ id: "handmade-crochet-knitting-fibre-crafts",
1902
+ name: "Handmade Crochet, Knitting & Fibre Crafts",
1903
+ description: "Handmade crochet and knitted items, fabric-based crafts, small decorative pieces, creative fibre artworks and unique handcrafted accessories."
1904
+ },
1905
+ {
1906
+ id: "handmade-toys-mini-play-items",
1907
+ name: "Handmade Toys & Mini Play Items",
1908
+ description: "small handmade toys, soft toys, wooden miniatures, crochet or felt play pieces"
1909
+ },
1910
+ {
1911
+ id: "other-small-handmade-gifts-accessories",
1912
+ name: "Other small handmade gifts or accessories",
1913
+ description: "Compact creative items made to surprise or delight."
1914
+ }
1915
+ ]
1916
+ }
1917
+ ]
1548
1918
  }
1549
1919
  ];
1550
- var eventInfoPaymentInfo = [
1551
- {
1552
- helperText: "Account holder name *",
1553
- name: "accountHolderName",
1554
- placeholder: "Account holder name"
1555
- },
1556
- {
1557
- helperText: "Account number *",
1558
- keyboardType: "number-pad",
1559
- name: "accountNumber",
1560
- placeholder: "Account number"
1561
- },
1920
+
1921
+ // src/formFields/categories/healthAndWellness.ts
1922
+ var healthAndWellness = [
1562
1923
  {
1563
- helperText: "Payment link, where applicants can pay *",
1564
- keyboardType: "url",
1565
- name: "link",
1566
- placeholder: "Payment link"
1924
+ id: "health-wellness",
1925
+ name: "Health & Wellness",
1926
+ description: "Natural products and services that promote wellbeing, body care, and holistic health.",
1927
+ subcategories: [
1928
+ {
1929
+ id: "body-skincare",
1930
+ name: "Body & Skincare",
1931
+ items: [
1932
+ {
1933
+ id: "skincare-body-products",
1934
+ name: "Skincare & Body Products",
1935
+ description: "Soaps, creams, lip balms, bath salts, bath bombs, body oils, natural deodorants."
1936
+ },
1937
+ {
1938
+ id: "other-body-care-items",
1939
+ name: "Other body care items",
1940
+ description: "Additional handmade or eco-conscious personal care goods."
1941
+ }
1942
+ ]
1943
+ },
1944
+ {
1945
+ id: "aromatherapy-herbal-wellness",
1946
+ name: "Aromatherapy & Herbal Wellness",
1947
+ items: [
1948
+ {
1949
+ id: "aromatherapy-herbal-remedies",
1950
+ name: "Aromatherapy & Herbal Remedies",
1951
+ description: "Essential oils, herbal balms, massage oils, salves, natural teas, rollers."
1952
+ },
1953
+ {
1954
+ id: "other-herbal-aroma-products",
1955
+ name: "Other herbal or aroma-based products",
1956
+ description: "Wellness blends, herb sachets, custom infusions."
1957
+ }
1958
+ ]
1959
+ },
1960
+ {
1961
+ id: "wellness-tools-accessories",
1962
+ name: "Wellness Tools & Accessories",
1963
+ items: [
1964
+ {
1965
+ id: "wellness-accessories",
1966
+ name: "Wellness Accessories",
1967
+ description: "Yoga mats, meditation cushions, eye pillows, incense, smudging sticks, eco water bottles, wellness journals."
1968
+ },
1969
+ {
1970
+ id: "spiritual-tools-crystals",
1971
+ name: "Spiritual Tools & Crystals",
1972
+ description: "Healing crystals, gemstone bracelets, pendulums, sprays, spiritual kits, altar decor."
1973
+ },
1974
+ {
1975
+ id: "other-wellness-spiritual-items",
1976
+ name: "Other wellness or spiritual items",
1977
+ description: "Items that aid relaxation, focus, or inner work."
1978
+ }
1979
+ ]
1980
+ }
1981
+ ]
1567
1982
  }
1568
1983
  ];
1569
- var requirementsOptions = [
1570
- {
1571
- category: "Environment",
1572
- label: "All packaging must be eco-friendly or recyclable where possible.",
1573
- value: false
1574
- },
1984
+
1985
+ // src/formFields/categories/homeGardenHousehold.ts
1986
+ var homeGardenHousehold = [
1575
1987
  {
1576
- category: "Environment",
1577
- label: "No single-use plastic bags are to be handed out.",
1578
- value: false
1579
- },
1580
- {
1581
- category: "Environment",
1582
- label: "Stall area must be left clean with no trace of activity after pack-down.",
1583
- value: false
1584
- },
1585
- {
1586
- category: "Environment",
1587
- label: "No disposal of oils, fats, or chemicals in public drains or on grassed areas.",
1588
- value: false
1589
- },
1590
- {
1591
- category: "Environment",
1592
- label: "You must provide bins at your site for rubbish and recycling, and take away all bins including rubbish, to dispose of outside of the town centre.",
1593
- value: false
1594
- },
1595
- {
1596
- category: "Food Safety",
1597
- label: "Food must be prepared and stored according to your food regulation.",
1598
- value: false
1599
- },
1600
- {
1601
- category: "Food Safety",
1602
- label: "The stallholder must display a current food grade certificate.",
1603
- value: false
1604
- },
1605
- {
1606
- category: "Food Safety",
1607
- label: "Only licensed food vendors may sell ready-to-eat food items.",
1608
- value: false
1609
- },
1610
- {
1611
- category: "Food Safety",
1612
- label: "Handwashing facilities must be available at your stall if preparing food.",
1613
- value: false
1614
- },
1615
- {
1616
- category: "Food Safety",
1617
- label: "You must have a food safety plan in place for your stall.",
1618
- value: false
1619
- },
1620
- {
1621
- category: "Food Safety",
1622
- label: "Allergens must be clearly listed on packaged and unpackaged food items.",
1623
- value: false
1624
- },
1625
- {
1626
- category: "Legal & Safety",
1627
- label: "All stallholders must comply with local council regulations.",
1628
- value: false
1629
- },
1630
- {
1631
- category: "Legal & Safety",
1632
- label: "No unauthorised subletting of stall space to other vendors.",
1633
- value: false
1634
- },
1635
- {
1636
- category: "Legal & Safety",
1637
- label: "Gas bottles and fuel containers must be secured and in good condition if applicable.",
1638
- value: false
1639
- },
1640
- {
1641
- category: "Legal & Safety",
1642
- label: "Fire extinguishers must be available for stalls using cooking or heating equipment.",
1643
- value: false
1644
- },
1645
- {
1646
- category: "Legal & Safety",
1647
- label: "Stallholders must not sell items that are illegal or prohibited by law.",
1648
- value: false
1649
- },
1650
- {
1651
- category: "Legal & Safety",
1652
- label: "All electrical equipment must be tested and tagged.",
1653
- value: false
1654
- },
1655
- {
1656
- category: "Legal & Safety",
1657
- label: "Noise levels must be kept to a minimum unless part of a permitted performance.",
1658
- value: false
1659
- },
1660
- {
1661
- category: "Legal & Safety",
1662
- label: "Pets at the stall must be secured and well-behaved at all times.",
1663
- value: false
1664
- },
1665
- {
1666
- category: "Legal & Safety",
1667
- label: "Cables must be secured and not create tripping hazards.",
1668
- value: false
1669
- },
1670
- {
1671
- category: "Legal & Safety",
1672
- label: "Stalls must not obstruct emergency access routes.",
1673
- value: false
1674
- },
1675
- {
1676
- category: "Legal & Safety",
1677
- label: "First aid kit must be available at the stall for minor injuries.",
1678
- value: false
1679
- },
1680
- {
1681
- category: "Legal & Safety",
1682
- label: "Stallholders must hold valid liability insurance where required.",
1683
- value: false
1684
- },
1685
- {
1686
- category: "Legal & Safety",
1687
- label: "You must secure your gazebo and equipment to withstand wind or bad weather.",
1688
- value: false
1689
- },
1690
- {
1691
- category: "Legal & Safety",
1692
- label: "You are responsible for the safety of your setup and any potential hazards.",
1693
- value: false
1694
- },
1695
- {
1696
- category: "Operations",
1697
- label: "Generators must be quiet and pre-approved by the event organiser.",
1698
- value: false
1699
- },
1700
- {
1701
- category: "Operations",
1702
- label: "Only approved products or services may be sold \u2014 no last-minute changes.",
1703
- value: false
1704
- },
1705
- {
1706
- category: "Operations",
1707
- label: "Stallholders must arrive and be fully set up by the designated opening time.",
1708
- value: false
1709
- },
1710
- {
1711
- category: "Operations",
1712
- label: "You may not pack down your stall before the event officially ends.",
1713
- value: false
1714
- },
1715
- {
1716
- category: "Operations",
1717
- label: "You must be self-sufficient in all operations.",
1718
- value: false
1719
- },
1720
- {
1721
- category: "Operations",
1722
- label: "Stall layout must be kept within your allocated space.",
1723
- value: false
1724
- }
1725
- ];
1726
- var stallTypes = [
1727
- "1.8m table only",
1728
- "2x2m mini stall",
1729
- "3x3m tent site",
1730
- "Corner stall",
1731
- "Craft stall with power",
1732
- "Craft stall without power",
1733
- "Double stall (6x3m)",
1734
- "Food truck site",
1735
- "Food vendor with power",
1736
- "Food vendor without power",
1737
- "Inside hall stall",
1738
- "Non-profit/community stall",
1739
- "Outdoor open area",
1740
- "Shared table space",
1741
- "Wall-based vendor",
1742
- "Workshop/seating area"
1743
- ];
1744
- var stallTypeOptions = stallTypes.map((type) => ({
1745
- label: type,
1746
- price: 0,
1747
- stallCapacity: 0
1748
- }));
1749
- var refundPolicyOptions = [
1750
- {
1751
- category: "Cancelled by Vendor",
1752
- label: "Full refund if cancelled 30+ days before the event.",
1753
- value: false
1754
- },
1755
- {
1756
- category: "Cancelled by Vendor",
1757
- label: "50% refund if cancelled 14\u201329 days before the event.",
1758
- value: false
1759
- },
1760
- {
1761
- category: "Cancelled by Vendor",
1762
- label: "No refund if cancelled less than 14 days before the event.",
1763
- value: false
1764
- },
1765
- {
1766
- category: "Cancelled by Vendor",
1767
- label: "Full refund if cancelled due to illness or emergency.",
1768
- value: false
1769
- },
1770
- {
1771
- category: "Cancelled by Vendor",
1772
- label: "No refund for no-shows or last-minute cancellations.",
1773
- value: false
1774
- },
1775
- {
1776
- category: "Cancelled by Vendor",
1777
- label: "No refund",
1778
- value: false
1779
- },
1780
- {
1781
- category: "Cancelled by Organiser",
1782
- label: "Full refund if the event is cancelled by the organiser.",
1783
- value: false
1784
- },
1785
- {
1786
- category: "Cancelled by Organiser",
1787
- label: "Credit towards a future event if cancelled by the organiser.",
1788
- value: false
1789
- },
1790
- {
1791
- category: "Cancelled by Organiser",
1792
- label: "Refund only in cases of force majeure (e.g., natural disasters, government restrictions).",
1793
- value: false
1794
- },
1795
- {
1796
- category: "Cancelled by Organiser",
1797
- label: "No refund",
1798
- value: false
1799
- }
1800
- ];
1801
-
1802
- // src/formFields/global.ts
1803
- var emailField = {
1804
- helperText: "Enter email address",
1805
- keyboardType: "email-address",
1806
- name: "email",
1807
- placeholder: "Email"
1808
- };
1809
- var companyContactFields = [
1810
- {
1811
- ...emailField,
1812
- name: "contactDetails.email"
1813
- },
1814
- {
1815
- helperText: "Enter your mobile phone number",
1816
- keyboardType: "phone-pad",
1817
- name: "contactDetails.mobilePhone",
1818
- placeholder: "Mobile Phone Number"
1819
- },
1820
- {
1821
- helperText: "Enter your landline phone number",
1822
- keyboardType: "phone-pad",
1823
- name: "contactDetails.landlinePhone",
1824
- placeholder: "Landline Phone Number"
1825
- }
1826
- ];
1827
-
1828
- // src/formFields/auth.ts
1829
- var loginFields = [
1830
- {
1831
- ...emailField,
1832
- required: true
1833
- },
1834
- {
1835
- helperText: "Enter password",
1836
- keyboardType: "default",
1837
- name: "password",
1838
- placeholder: "Password",
1839
- required: true,
1840
- secureTextEntry: true
1841
- }
1842
- ];
1843
- var registerFields = [
1844
- {
1845
- helperText: "Enter first name",
1846
- keyboardType: "default",
1847
- name: "firstName",
1848
- placeholder: "First Name",
1849
- required: true
1850
- },
1851
- {
1852
- helperText: "Enter last name",
1853
- keyboardType: "default",
1854
- name: "lastName",
1855
- placeholder: "Last Name",
1856
- required: true
1857
- },
1858
- {
1859
- ...emailField,
1860
- required: true
1861
- },
1862
- {
1863
- helperText: "Enter password",
1864
- keyboardType: "default",
1865
- name: "password",
1866
- placeholder: "Password",
1867
- required: true,
1868
- secureTextEntry: true
1869
- },
1870
- {
1871
- helperText: "Promotional code (optional)",
1872
- keyboardType: "default",
1873
- name: "promoCode",
1874
- placeholder: "Promotional Code",
1875
- required: false
1876
- }
1877
- ];
1878
- var requestPasswordResetFields = [
1879
- {
1880
- ...emailField,
1881
- helperText: "Enter email address to reset your password",
1882
- required: true
1883
- }
1884
- ];
1885
- var resetPasswordFields = [
1886
- {
1887
- helperText: "Enter your new password",
1888
- keyboardType: "default",
1889
- name: "password",
1890
- placeholder: "Password",
1891
- required: true,
1892
- secureTextEntry: true
1893
- },
1894
- {
1895
- helperText: "Confirm your new password",
1896
- keyboardType: "default",
1897
- name: "confirmPassword",
1898
- placeholder: "Confirm Password",
1899
- required: true,
1900
- secureTextEntry: true
1901
- }
1902
- ];
1903
- var validateVerificationTokenFields = [
1904
- {
1905
- ...emailField,
1906
- disabled: true,
1907
- helperText: "Your email address"
1908
- },
1909
- {
1910
- helperText: "Enter the Verification code sent to you by email",
1911
- keyboardType: "number-pad",
1912
- name: "verificationToken",
1913
- placeholder: "Verification code",
1914
- required: true
1988
+ id: "home-garden-household-goods",
1989
+ name: "Home, Garden & Household Goods",
1990
+ description: "Functional, decorative, and eco-conscious products designed for everyday use indoors and outdoors.",
1991
+ subcategories: [
1992
+ {
1993
+ id: "home-decor-living",
1994
+ name: "Home Decor & Living",
1995
+ items: [
1996
+ {
1997
+ id: "home-decor",
1998
+ name: "Home Decor",
1999
+ description: "Cushions, wall art, table runners, vases, trays, mirrors, handmade centerpieces."
2000
+ },
2001
+ {
2002
+ id: "kitchenware-dining",
2003
+ name: "Kitchenware & Dining",
2004
+ description: "Mugs, bowls, cutting boards, utensils, jars, coasters, kitchen textiles."
2005
+ },
2006
+ {
2007
+ id: "mini-figures-decor",
2008
+ name: "Mini Figures & D\xE9cor",
2009
+ description: "handmade or non-handmade small figures, tiny houses and miniature decorative items."
2010
+ },
2011
+ {
2012
+ id: "other-indoor-home-items",
2013
+ name: "Other indoor home items",
2014
+ description: "Any decorative or practical household items not listed above."
2015
+ }
2016
+ ]
2017
+ },
2018
+ {
2019
+ id: "cleaning-eco-essentials",
2020
+ name: "Cleaning & Eco Essentials",
2021
+ items: [
2022
+ {
2023
+ id: "cleaning-eco-supplies",
2024
+ name: "Cleaning & Eco Supplies",
2025
+ description: "Beeswax wraps, reusable cloths, brushes, natural soaps, detergent bars, eco sponges."
2026
+ },
2027
+ {
2028
+ id: "other-eco-cleaning-items",
2029
+ name: "Other eco or cleaning items",
2030
+ description: "Environmentally friendly goods not listed above."
2031
+ }
2032
+ ]
2033
+ },
2034
+ {
2035
+ id: "garden-outdoor-living",
2036
+ name: "Garden & Outdoor Living",
2037
+ items: [
2038
+ {
2039
+ id: "plants-botanical-decor",
2040
+ name: "Plants & Botanical Decor",
2041
+ description: "Potted herbs, succulents, dried flowers, terrariums, plant-based ornaments."
2042
+ },
2043
+ {
2044
+ id: "fresh-flowers-botanical-bouquets",
2045
+ name: "Fresh Flowers & Botanical Bouquets",
2046
+ description: "Cut flowers, seasonal bouquets, simple floral arrangements, native flower selections, and other fresh botanical items."
2047
+ },
2048
+ {
2049
+ id: "natural-decor-nature-inspired-elements",
2050
+ name: "Natural Decor & Nature-Inspired Elements",
2051
+ description: "Seashell d\xE9cor, driftwood pieces, sand ornaments, natural wood accents, stone or mineral decorations, and other nature-based decorative items."
2052
+ },
2053
+ {
2054
+ id: "garden-tools-outdoor-items",
2055
+ name: "Garden Tools & Outdoor Items",
2056
+ description: "Plant markers, garden signs, stakes, small tools, wind chimes, gifts."
2057
+ },
2058
+ {
2059
+ id: "other-outdoor-garden-products",
2060
+ name: "Other outdoor or garden products",
2061
+ description: "Functional or decorative items for outside use."
2062
+ }
2063
+ ]
2064
+ }
2065
+ ]
1915
2066
  }
1916
2067
  ];
1917
2068
 
1918
- // src/formFields/user.ts
1919
- var profileFields = [
1920
- {
1921
- ...emailField,
1922
- disabled: true,
1923
- helperText: "Email cannot be changed"
1924
- },
1925
- {
1926
- helperText: "Enter first name",
1927
- keyboardType: "default",
1928
- name: "firstName",
1929
- placeholder: "First Name"
1930
- },
1931
- {
1932
- helperText: "Enter last name",
1933
- keyboardType: "default",
1934
- name: "lastName",
1935
- placeholder: "Last Name"
1936
- },
1937
- {
1938
- helperText: "Enter your new password",
1939
- keyboardType: "default",
1940
- name: "password",
1941
- placeholder: "Password",
1942
- secureTextEntry: true
1943
- },
2069
+ // src/formFields/categories/petProductsAndAnimalGoods.ts
2070
+ var petProductsAndAnimalGoods = [
1944
2071
  {
1945
- helperText: "Confirm your new password",
1946
- keyboardType: "default",
1947
- name: "confirmPassword",
1948
- placeholder: "Confirm Password",
1949
- secureTextEntry: true
2072
+ id: "pet-products-animal-goods",
2073
+ name: "Pet Products & Animal Goods",
2074
+ description: "Items for pets, pet lovers, or animal-themed market stalls.",
2075
+ subcategories: [
2076
+ {
2077
+ id: "products-for-pets",
2078
+ name: "Products for Pets",
2079
+ items: [
2080
+ {
2081
+ id: "pet-food-treats",
2082
+ name: "Pet Food & Treats",
2083
+ description: "Homemade dog biscuits, cat snacks, natural chews, pet-safe cakes, training treats."
2084
+ },
2085
+ {
2086
+ id: "apparel-toys-accessories",
2087
+ name: "Apparel, Toys & Accessories",
2088
+ description: "Leashes, collars, harnesses, toys, grooming tools, beds, travel gear, jumpers, bandanas."
2089
+ },
2090
+ {
2091
+ id: "other-pet-products",
2092
+ name: "Other pet products",
2093
+ description: "Any pet-related items not listed above."
2094
+ }
2095
+ ]
2096
+ },
2097
+ {
2098
+ id: "small-pets-birds-exotic-animals",
2099
+ name: "Small Pets, Birds & Exotic Animals",
2100
+ items: [
2101
+ {
2102
+ id: "products-small-pets-birds-exotics",
2103
+ name: "Products for Small Pets, Birds & Exotics",
2104
+ description: "Toys, enclosures, perches, feeding bowls, bedding, habitat decor, transport gear, and care items for birds, rabbits, hamsters, reptiles, turtles, aquarium pets, and other exotic species."
2105
+ },
2106
+ {
2107
+ id: "other-small-exotic-animal-items",
2108
+ name: "Other small or exotic animal items",
2109
+ description: "Unusual accessories for non-mainstream pets."
2110
+ }
2111
+ ]
2112
+ },
2113
+ {
2114
+ id: "farm-working-animals",
2115
+ name: "Farm & Working Animals",
2116
+ items: [
2117
+ {
2118
+ id: "goods-for-farm-working-animals",
2119
+ name: "Goods for Farm & Working Animals",
2120
+ description: "Treats, care products, equipment, signage and accessories for chickens, goats, alpacas, horses, and other livestock."
2121
+ },
2122
+ {
2123
+ id: "other-farm-animal-items",
2124
+ name: "Other farm animal-related items",
2125
+ description: "Rural, barnyard, or utility-specific gear not listed above."
2126
+ }
2127
+ ]
2128
+ },
2129
+ {
2130
+ id: "animal-themed-gifts-custom-items",
2131
+ name: "Animal-Themed Gifts & Custom Items",
2132
+ items: [
2133
+ {
2134
+ id: "pet-art-custom-gifts",
2135
+ name: "Pet Art & Custom Gifts",
2136
+ description: "Pet portraits, name tags, personalized bowls, breed-specific items, pet-themed home decor and stationery."
2137
+ },
2138
+ {
2139
+ id: "other-animal-themed-gifts",
2140
+ name: "Other animal-themed gifts",
2141
+ description: "Artistic or sentimental items made for animal lovers."
2142
+ }
2143
+ ]
2144
+ }
2145
+ ]
1950
2146
  }
1951
2147
  ];
1952
2148
 
1953
- // src/formFields/categories/clothingAndFashion.ts
1954
- var clothingAndFashion = [
2149
+ // src/formFields/categories/serviceAndExperience.ts
2150
+ var serviceAndExperience = [
1955
2151
  {
1956
- id: "clothing-fashion",
1957
- name: "Clothing & Fashion",
1958
- description: "New, handmade, or upcycled clothing and accessories with a creative twist.",
2152
+ id: "services-experiences",
2153
+ name: "Services & Experiences",
2154
+ description: "On-site offerings that provide entertainment, personal care, learning, or interactive activities beyond products.",
1959
2155
  subcategories: [
1960
2156
  {
1961
- id: "apparel-babywear",
1962
- name: "Apparel & Babywear",
2157
+ id: "personal-care-body-art",
2158
+ name: "Personal Care & Body Art",
1963
2159
  items: [
1964
2160
  {
1965
- id: "apparel",
1966
- name: "Apparel",
1967
- description: "Dresses, t-shirts, jumpers, rompers, sets, kidswear."
2161
+ id: "nails-handcare",
2162
+ name: "Nails & Handcare",
2163
+ description: "Nail painting, decoration, quick manicures, temporary nail extensions."
1968
2164
  },
1969
2165
  {
1970
- id: "baby-toddler-apparel",
1971
- name: "Baby & Toddler Apparel",
1972
- description: "Handmade baby clothes, soft shoes, bibs, hats, knitted sets."
2166
+ id: "hair-styling-braiding",
2167
+ name: "Hair Styling & Braiding",
2168
+ description: "Hair braiding, plaits, child-friendly festival hairstyles."
1973
2169
  },
1974
2170
  {
1975
- id: "upcycled-fashion",
1976
- name: "Upcycled Fashion",
1977
- description: "Reworked garments, patchwork pieces, restyled vintage."
2171
+ id: "face-body-decoration",
2172
+ name: "Face & Body Decoration",
2173
+ description: "Henna, glitter tattoos, face painting, light makeup, eyelash styling, professional tattooing (where permitted)."
1978
2174
  },
1979
2175
  {
1980
- id: "other-wearable-items",
1981
- name: "Other wearable items",
1982
- description: "Unique clothing not listed above."
2176
+ id: "other-beauty-grooming-services",
2177
+ name: "Other beauty or grooming services",
2178
+ description: "Small-scale personal care options offered on-site."
1983
2179
  }
1984
2180
  ]
1985
2181
  },
1986
2182
  {
1987
- id: "fashion-accessories",
1988
- name: "Fashion Accessories",
2183
+ id: "practical-wellness-services",
2184
+ name: "Practical & Wellness Services",
1989
2185
  items: [
1990
2186
  {
1991
- id: "accessories",
1992
- name: "Accessories",
1993
- description: "Scarves, belts, gloves, hats, headbands, caps."
2187
+ id: "mobile-practical-services",
2188
+ name: "Mobile & Practical Services",
2189
+ description: "Shoe repair, phone repairs, knife sharpening, key cutting, battery replacement, bike repairs, engraving."
1994
2190
  },
1995
2191
  {
1996
- id: "shoes",
1997
- name: "Shoes",
1998
- description: "Handmade shoes, baby booties, sandals, slippers."
2192
+ id: "wellness-alternative-therapies",
2193
+ name: "Wellness & Alternative Therapies",
2194
+ description: "Massage, aromatherapy, reflexology, energy healing (e.g. Reiki), natural consultations."
1999
2195
  },
2000
2196
  {
2001
- id: "bags-wallets",
2002
- name: "Bags & Wallets",
2003
- description: "Leather bags, fabric purses, wallets, backpacks, totes."
2197
+ id: "other-service-based-offerings",
2198
+ name: "Other service-based offerings",
2199
+ description: "Wellness or functional services not listed above."
2200
+ }
2201
+ ]
2202
+ },
2203
+ {
2204
+ id: "creative-educational-experiences",
2205
+ name: "Creative & Educational Experiences",
2206
+ items: [
2207
+ {
2208
+ id: "creative-workshops-maker-services",
2209
+ name: "Creative Workshops & Maker Services",
2210
+ description: "Candle making, pottery, jewelry crafting, soap or balm workshops, calligraphy, seasonal crafts."
2004
2211
  },
2005
2212
  {
2006
- id: "other-accessories",
2007
- name: "Other accessories",
2008
- description: "Brooches, pins, or hybrid functional items."
2213
+ id: "education-awareness-stalls",
2214
+ name: "Education & Awareness Stalls",
2215
+ description: "Eco awareness, cultural storytelling, local history, first aid demos, health booths, sustainability education, kids\u2019 science displays."
2216
+ },
2217
+ {
2218
+ id: "other-creative-educational-services",
2219
+ name: "Other creative or educational services",
2220
+ description: "Informal learning, demonstrations, or community-focused sessions."
2009
2221
  }
2010
2222
  ]
2011
2223
  },
2012
2224
  {
2013
- id: "jewelry-creative-wearables",
2014
- name: "Jewelry & Creative Wearables",
2225
+ id: "kids-activities-family-fun",
2226
+ name: "Kids\u2019 Activities & Family Fun",
2015
2227
  items: [
2016
2228
  {
2017
- id: "jewelry",
2018
- name: "Jewelry",
2019
- description: "Necklaces, earrings, bracelets, rings, anklets."
2229
+ id: "kids-activities-fun",
2230
+ name: "Kids\u2019 Activities & Fun",
2231
+ description: "Face painting, glitter tattoos, pony rides, bouncy castles, small amusement rides, balloon twisting, animal petting zones."
2020
2232
  },
2021
2233
  {
2022
- id: "other-creative-wearables",
2023
- name: "Other creative wearables",
2024
- description: "Wearable art, statement pieces, bold handmade designs."
2234
+ id: "other-family-oriented-activities",
2235
+ name: "Other family-oriented activities",
2236
+ description: "On-site entertainment that engages children or family groups."
2237
+ }
2238
+ ]
2239
+ }
2240
+ ]
2241
+ }
2242
+ ];
2243
+
2244
+ // src/formFields/categories/toysChildren.ts
2245
+ var toysChildren = [
2246
+ {
2247
+ id: "toys-childrens-items",
2248
+ name: "Toys & Children\u2019s Items",
2249
+ description: "Products and services made for or inspired by children.",
2250
+ subcategories: [
2251
+ {
2252
+ id: "toys-playthings",
2253
+ name: "Toys & Playthings",
2254
+ items: [
2255
+ {
2256
+ id: "toys-classic-electric-character",
2257
+ name: "Toys \u2013 Classic, Electric & Character-Based",
2258
+ description: "Building blocks, dolls, puzzles, plush animals, toy vehicles, remote-control toys, light-up gadgets, character figurines, themed playsets."
2259
+ },
2260
+ {
2261
+ id: "handmade-toys-crafty-playthings",
2262
+ name: "Handmade Toys & Crafty Playthings",
2263
+ description: "Wooden puzzles, crocheted animals, felt toys, fabric dolls, DIY kits, nature-inspired games, sensory toys."
2264
+ },
2265
+ {
2266
+ id: "other-play-items",
2267
+ name: "Other play items",
2268
+ description: "Toys not listed above, including limited-edition or hybrid items."
2025
2269
  }
2026
2270
  ]
2027
2271
  },
2028
2272
  {
2029
- id: "traditional-cultural-clothing-accessories",
2030
- name: "Traditional & Cultural Clothing and Accessories",
2273
+ id: "educational-developmental",
2274
+ name: "Educational & Developmental",
2031
2275
  items: [
2032
2276
  {
2033
- id: "traditional-clothing-accessories",
2034
- name: "Traditional Clothing & Accessories ",
2035
- description: "raditional clothing, jewellery, accessories and footwear from around the world, including both handmade and non-handmade items."
2277
+ id: "educational-developmental-tools",
2278
+ name: "Educational & Developmental Tools",
2279
+ description: "STEM kits, Montessori toys, storybooks, picture books, flashcards, early learning games, language tools."
2036
2280
  },
2037
2281
  {
2038
- id: "other-traditional-cultural-items",
2039
- name: "Other Traditional & Cultural Items",
2040
- description: "traditional or culturally inspired wearables and decorative cultural pieces such as plates, table linens and similar items."
2282
+ id: "other-educational-experience-based-items",
2283
+ name: "Other educational or experience-based items",
2284
+ description: "Creative experiences or learning aids not listed above."
2285
+ }
2286
+ ]
2287
+ },
2288
+ {
2289
+ id: "baby-kidswear-accessories",
2290
+ name: "Baby & Kidswear + Accessories",
2291
+ items: [
2292
+ {
2293
+ id: "baby-kidswear-accessories",
2294
+ name: "Baby & Kidswear + Accessories",
2295
+ description: "Handmade baby clothes, toddler outfits, bibs, hats, headbands, bags, pacifier clips, soft shoes."
2296
+ },
2297
+ {
2298
+ id: "baby-developmental-soft-toys",
2299
+ name: "Baby Developmental Soft Toys",
2300
+ description: "Sensory toys, rattles, fabric books, teething items, high-contrast cards, and early-skill. Montessori materials designed to support infants\u2019 cognitive and motor development."
2301
+ },
2302
+ {
2303
+ id: "other-childrens-clothing-accessories",
2304
+ name: "Other children\u2019s clothing or accessories",
2305
+ description: "Unique fashion or functional pieces for kids."
2041
2306
  }
2042
2307
  ]
2043
2308
  }
@@ -2045,73 +2310,90 @@ var clothingAndFashion = [
2045
2310
  }
2046
2311
  ];
2047
2312
 
2048
- // src/formFields/categories/electronicsAndTechnology.ts
2049
- var electronicsAndTechnology = [
2313
+ // src/formFields/categories/vintageAndAntique.ts
2314
+ var vintageAndAntique = [
2050
2315
  {
2051
- id: "electronics-technology",
2052
- name: "Electronics & Technology",
2053
- description: "New, second-hand, or handmade tech and digital items commonly found at markets.",
2316
+ id: "vintage-antique",
2317
+ name: "Vintage & Antique",
2318
+ description: "Unique, historic, or nostalgic items with collectible or decorative value.",
2054
2319
  subcategories: [
2055
2320
  {
2056
- id: "mobile-everyday-tech",
2057
- name: "Mobile & Everyday Tech",
2321
+ id: "vintage-antique-clothing-accessories",
2322
+ name: "Vintage & Antique Clothing & Accessories",
2058
2323
  items: [
2059
2324
  {
2060
- id: "mobile-phone-accessories",
2061
- name: "Mobile & Phone Accessories",
2062
- description: "Phone cases, holders, screen protectors, charging cables, power banks, grips."
2325
+ id: "clothing-vintage-fashion",
2326
+ name: "Clothing and wearable items from past eras",
2327
+ description: "Vintage dresses, jackets, hats, gloves, belts, bags, shoes, jewellery."
2063
2328
  },
2064
2329
  {
2065
- id: "other-mobile-gadgets",
2066
- name: "Other mobile gadgets",
2067
- description: "Stands, styluses, SIM tools, cleaning kits, wallet accessories."
2330
+ id: "other-clothing-accessory-items",
2331
+ name: "Other clothing-related items",
2332
+ description: "Hair clips, brooches, pins, scarf rings, small fashion accessories."
2333
+ }
2334
+ ]
2335
+ },
2336
+ {
2337
+ id: "collectibles-memorabilia",
2338
+ name: "Collectibles & Memorabilia",
2339
+ items: [
2340
+ {
2341
+ id: "small-collectible-items",
2342
+ name: "Small collectible items with historical or nostalgic significance",
2343
+ description: "Coins, stamps, toys, postcards, comics, sports cards, vintage packaging."
2344
+ },
2345
+ {
2346
+ id: "other-collectible-items",
2347
+ name: "Other collectible items",
2348
+ description: "Rare small objects, miniature figurines, special-edition items."
2068
2349
  }
2069
2350
  ]
2070
2351
  },
2071
2352
  {
2072
- id: "audio-music-creative-tech",
2073
- name: "Audio, Music & Creative Tech",
2353
+ id: "homewares-decor-curiosities",
2354
+ name: "Homewares, Decor & Curiosities",
2074
2355
  items: [
2075
2356
  {
2076
- id: "audio-music-tech",
2077
- name: "Audio & Music Tech",
2078
- description: "Portable speakers, headphones, mini radios, Bluetooth adapters, sound accessories."
2079
- },
2080
- {
2081
- id: "instruments-music-gear",
2082
- name: "Instruments & Music Gear",
2083
- description: "Small electronic instruments, DIY synth kits, drum pads, loop machines."
2357
+ id: "decorative-functional-vintage-items",
2358
+ name: "Decorative or functional items with a vintage or antique aesthetic",
2359
+ description: "Teacups, plates, vases, mirrors, clocks, furniture, old tools, lanterns, typewriters, curiosities."
2084
2360
  },
2085
2361
  {
2086
- id: "recording-creative-devices",
2087
- name: "Recording & Creative Devices",
2088
- description: "USB microphones, podcast tools, voice recorders, mobile lighting, content tools."
2362
+ id: "handmade-vintage-art",
2363
+ name: "Handmade vintage art",
2364
+ description: "Paintings, sculptures, crafted pieces."
2089
2365
  },
2090
2366
  {
2091
- id: "other-audio-music-items",
2092
- name: "Other audio or music-related items",
2093
- description: "Musical gadgets or creative gear not listed above."
2367
+ id: "other-home-decor-items",
2368
+ name: "Other home or decor items",
2369
+ description: "Decorative pieces not listed above, unique household objects."
2094
2370
  }
2095
2371
  ]
2096
2372
  },
2097
2373
  {
2098
- id: "diy-gadgets-secondhand-finds",
2099
- name: "DIY, Gadgets & Second-Hand Finds",
2374
+ id: "vintage-media-printed-nostalgia",
2375
+ name: "Vintage Media & Printed Nostalgia",
2100
2376
  items: [
2101
2377
  {
2102
- id: "diy-electronics-tools",
2103
- name: "DIY Electronics & Tools",
2104
- description: "LED lights, USB gadgets, circuit boards, repair kits, tech-themed toys, novelty items."
2378
+ id: "older-media-printed-works",
2379
+ name: "Older media formats and printed works",
2380
+ description: "Vinyl records, cassette tapes, CDs, DVDs, books, magazines, board games, posters."
2105
2381
  },
2106
2382
  {
2107
- id: "other-tech-finds",
2108
- name: "Other Tech Finds",
2109
- description: "Used electronics, smart gadgets, wearable tech, calculators, tablet stands, e-waste upcycles."
2110
- },
2383
+ id: "other-media-printed-items",
2384
+ name: "Other media or printed items",
2385
+ description: "Maps, manuals, leaflets, out-of-print materials."
2386
+ }
2387
+ ]
2388
+ },
2389
+ {
2390
+ id: "other-vintage-antique-items",
2391
+ name: "Other Vintage & Antique Items",
2392
+ items: [
2111
2393
  {
2112
- id: "other-technology-innovation-items",
2113
- name: "Other technology or innovation-related items",
2114
- description: "Anything not covered but clearly tech-driven."
2394
+ id: "any-vintage-antique-items-not-listed",
2395
+ name: "Any vintage or antique items not listed above",
2396
+ description: "Unique, rare or uncategorised pieces."
2115
2397
  }
2116
2398
  ]
2117
2399
  }
@@ -2119,831 +2401,822 @@ var electronicsAndTechnology = [
2119
2401
  }
2120
2402
  ];
2121
2403
 
2122
- // src/formFields/categories/foodAndBeverages.ts
2123
- var foodAndBeverages = [
2404
+ // src/formFields/categories/index.ts
2405
+ var categoryColors = {
2406
+ "clothing-fashion": "#9D4EDD",
2407
+ "electronics-technology": "#3AF3FF",
2408
+ "food-beverages": "#FF0D1F",
2409
+ "handmade-local-products": "#EE7E54",
2410
+ "health-wellness": "#E23794",
2411
+ "home-garden-household-goods": "#067325",
2412
+ "pet-products-animal-goods": "#68E788",
2413
+ "services-experiences": "#2E16A5",
2414
+ "toys-childrens-items": "#FFF966",
2415
+ "vintage-antique": "#8D6748"
2416
+ };
2417
+ var assignColorToCategories = (categories) => {
2418
+ const result = categories.map((category) => ({
2419
+ ...category,
2420
+ color: categoryColors[category.id]
2421
+ }));
2422
+ return result;
2423
+ };
2424
+ var availableCategories = assignColorToCategories([
2425
+ ...foodAndBeverages,
2426
+ ...handmadeAndLocalProducts,
2427
+ ...clothingAndFashion,
2428
+ ...homeGardenHousehold,
2429
+ ...toysChildren,
2430
+ ...healthAndWellness,
2431
+ ...electronicsAndTechnology,
2432
+ ...vintageAndAntique,
2433
+ ...petProductsAndAnimalGoods,
2434
+ ...serviceAndExperience
2435
+ ]);
2436
+
2437
+ // src/eventStallholders/eventStallholderFilters.ts
2438
+ function eventStartDatesSet(dateTime) {
2439
+ return new Set((dateTime ?? []).map((date) => date.startDate));
2440
+ }
2441
+ function hasMatchingEventDate(vendorStartDates, eventStartDates) {
2442
+ return vendorStartDates.some((startDate) => eventStartDates.has(startDate));
2443
+ }
2444
+ function matchesSelectedDate(vendorStartDates, selectedDate) {
2445
+ if (!selectedDate) {
2446
+ return true;
2447
+ }
2448
+ return vendorStartDates.includes(selectedDate);
2449
+ }
2450
+ function matchesCategory(categoryNames, selectedCategory) {
2451
+ if (!selectedCategory) {
2452
+ return true;
2453
+ }
2454
+ return categoryNames.includes(selectedCategory);
2455
+ }
2456
+ function getRegisteredVendorStartDates(vendor) {
2457
+ const relations = vendor.relations ?? [];
2458
+ return relations.flatMap(
2459
+ (relation) => (relation.relationDates ?? []).map(
2460
+ (relationDate) => relationDate.dateTime.startDate
2461
+ )
2462
+ );
2463
+ }
2464
+ function getRegisteredVendorCategoryNames(vendor) {
2465
+ return (vendor.categories ?? []).map((category) => category.name);
2466
+ }
2467
+ function getUnregisteredVendorStartDates(vendor) {
2468
+ return (vendor.invitations ?? []).flatMap(
2469
+ (invitation) => invitation.dateTime.map((date) => date.startDate)
2470
+ );
2471
+ }
2472
+ function getUnregisteredVendorCategoryNames(vendor) {
2473
+ return availableCategories.filter(
2474
+ (category) => category.id && vendor.categoryIds.includes(category.id)
2475
+ ).map((category) => category.name);
2476
+ }
2477
+ function filterRegisteredVendorsForEvent(vendors, eventStartDates, selectedDate, selectedCategory) {
2478
+ if (!vendors) {
2479
+ return [];
2480
+ }
2481
+ return vendors.filter((vendor) => {
2482
+ const startDates = getRegisteredVendorStartDates(vendor);
2483
+ return hasMatchingEventDate(startDates, eventStartDates) && matchesSelectedDate(startDates, selectedDate) && matchesCategory(
2484
+ getRegisteredVendorCategoryNames(vendor),
2485
+ selectedCategory
2486
+ );
2487
+ });
2488
+ }
2489
+ function filterUnregisteredVendorsForEvent(vendors, eventStartDates, selectedDate, selectedCategory) {
2490
+ return vendors.filter((vendor) => {
2491
+ const startDates = getUnregisteredVendorStartDates(vendor);
2492
+ return hasMatchingEventDate(startDates, eventStartDates) && matchesSelectedDate(startDates, selectedDate) && matchesCategory(
2493
+ getUnregisteredVendorCategoryNames(vendor),
2494
+ selectedCategory
2495
+ );
2496
+ });
2497
+ }
2498
+ function filterRegisteredVendorsByEventDatesOnly(vendors, eventStartDates) {
2499
+ if (!vendors) {
2500
+ return [];
2501
+ }
2502
+ return vendors.filter(
2503
+ (vendor) => hasMatchingEventDate(
2504
+ getRegisteredVendorStartDates(vendor),
2505
+ eventStartDates
2506
+ )
2507
+ );
2508
+ }
2509
+ function filterUnregisteredVendorsByEventDatesOnly(vendors, eventStartDates) {
2510
+ return vendors.filter(
2511
+ (vendor) => hasMatchingEventDate(
2512
+ getUnregisteredVendorStartDates(vendor),
2513
+ eventStartDates
2514
+ )
2515
+ );
2516
+ }
2517
+ function collectStallholderStartDates(registeredVendors, unregisteredVendors = []) {
2518
+ return [
2519
+ ...registeredVendors.flatMap(getRegisteredVendorStartDates),
2520
+ ...unregisteredVendors.flatMap(getUnregisteredVendorStartDates)
2521
+ ];
2522
+ }
2523
+ function getEventDatesWithStallholders(eventDateTime, stallholderStartDates) {
2524
+ if (!eventDateTime?.length) {
2525
+ return [];
2526
+ }
2527
+ const startDates = new Set(stallholderStartDates);
2528
+ return sortDatesChronologically(
2529
+ eventDateTime.filter((date) => startDates.has(date.startDate))
2530
+ );
2531
+ }
2532
+ function getStallholderCategoryNames(registeredVendors, unregisteredVendors = []) {
2533
+ const names = [
2534
+ ...registeredVendors.flatMap(getRegisteredVendorCategoryNames),
2535
+ ...unregisteredVendors.flatMap(getUnregisteredVendorCategoryNames)
2536
+ ];
2537
+ return Array.from(new Set(names));
2538
+ }
2539
+ function getStallholderCategoryOptions(registeredVendors, unregisteredVendors = []) {
2540
+ return getStallholderCategoryNames(
2541
+ registeredVendors,
2542
+ unregisteredVendors
2543
+ ).map((name) => ({
2544
+ label: name,
2545
+ value: name
2546
+ }));
2547
+ }
2548
+ function getEventStallholderEmptyMessage(hasAnyStallholdersForEvent, selectedDate) {
2549
+ return hasAnyStallholdersForEvent && selectedDate ? "No stallholders found for this event date." : "No stallholders found for this event.";
2550
+ }
2551
+
2552
+ // src/vendorEvents/vendorEventFilters.ts
2553
+ function relationHasSelectedDate(relation, selectedDate) {
2554
+ return relation.relationDates?.some(
2555
+ (date) => date.dateTime.startDate === selectedDate
2556
+ ) ?? false;
2557
+ }
2558
+ function eventHasSelectedDate(event, selectedDate) {
2559
+ return event.relations?.some(
2560
+ (relation) => relationHasSelectedDate(relation, selectedDate)
2561
+ ) ?? false;
2562
+ }
2563
+ function filterVendorEventsBySelectedDate(events, selectedDate) {
2564
+ if (!events) {
2565
+ return [];
2566
+ }
2567
+ if (!selectedDate) {
2568
+ return events;
2569
+ }
2570
+ return events.filter((event) => eventHasSelectedDate(event, selectedDate));
2571
+ }
2572
+ function collectVendorEventRelationDateTimes(events) {
2573
+ if (!events?.length) {
2574
+ return [];
2575
+ }
2576
+ return events.flatMap(
2577
+ (event) => (event.relations ?? []).flatMap(
2578
+ (relation) => (relation.relationDates ?? []).map(
2579
+ (relationDate) => relationDate.dateTime
2580
+ )
2581
+ )
2582
+ );
2583
+ }
2584
+ function getVendorEventRelationStartDates(events) {
2585
+ const sortedDates = sortDatesChronologically(
2586
+ collectVendorEventRelationDateTimes(events)
2587
+ );
2588
+ const uniqueStartDates = [];
2589
+ for (const dateTime of sortedDates) {
2590
+ if (!uniqueStartDates.includes(dateTime.startDate)) {
2591
+ uniqueStartDates.push(dateTime.startDate);
2592
+ }
2593
+ }
2594
+ return uniqueStartDates;
2595
+ }
2596
+ function getVendorEventRelationDateOptions(events) {
2597
+ return getVendorEventRelationStartDates(events).map((startDate) => ({
2598
+ label: startDate,
2599
+ value: startDate
2600
+ }));
2601
+ }
2602
+ function getVendorEventsEmptyMessage() {
2603
+ return "No events found.";
2604
+ }
2605
+
2606
+ // src/formFields/vendor/vendorInfo.ts
2607
+ var vendorElectricity = {
2608
+ details: {
2609
+ helperText: "Please describe details e.g. amps, voltage, etc.",
2610
+ isTextArea: true,
2611
+ name: "requirements.electricity.details",
2612
+ placeholder: "Electricity requirements"
2613
+ },
2614
+ isRequired: {
2615
+ name: "requirements.electricity.isRequired",
2616
+ placeholder: "Do you require electricity?"
2617
+ }
2618
+ };
2619
+ var vendorGazebo = {
2620
+ details: {
2621
+ helperText: "Please describe details e.g. size, etc.",
2622
+ isTextArea: true,
2623
+ name: "requirements.gazebo.details",
2624
+ placeholder: "Gazebo requirements"
2625
+ },
2626
+ isRequired: {
2627
+ name: "requirements.gazebo.isRequired",
2628
+ placeholder: "Do you require Gazebo?"
2629
+ }
2630
+ };
2631
+ var vendorTable = {
2632
+ details: {
2633
+ helperText: "Please describe details e.g. size, etc.",
2634
+ isTextArea: true,
2635
+ name: "requirements.table.details",
2636
+ placeholder: "Table requirements"
2637
+ },
2638
+ isRequired: {
2639
+ name: "requirements.table.isRequired",
2640
+ placeholder: "Do you require Table?"
2641
+ }
2642
+ };
2643
+ var vendorPriceRange = {
2644
+ max: {
2645
+ helperText: "Product maximum price",
2646
+ name: "product.priceRange.max",
2647
+ placeholder: "Maximum price: "
2648
+ },
2649
+ min: {
2650
+ helperText: "Product minimum price",
2651
+ name: "product.priceRange.min",
2652
+ placeholder: "Minimum price: "
2653
+ }
2654
+ };
2655
+ var vendorStallSize = {
2656
+ depth: {
2657
+ helperText: "Stall size in depth",
2658
+ name: "stallInfo.size.depth",
2659
+ placeholder: "Stall Depth: "
2660
+ },
2661
+ width: {
2662
+ helperText: "Stall size in width",
2663
+ name: "stallInfo.size.width",
2664
+ placeholder: "Stall Width: "
2665
+ }
2666
+ };
2667
+ var vendorPackaging = {
2668
+ helperText: "Select packaging type, you can select more than one",
2669
+ name: "product.packaging",
2670
+ placeholder: "Packaging type"
2671
+ };
2672
+ var vendorProducedIn = {
2673
+ helperText: "Select where the product is produced, you can select more than one",
2674
+ name: "product.producedIn",
2675
+ placeholder: "Produced type"
2676
+ };
2677
+ var vendorFoodFlavour = {
2678
+ helperText: "You can select more than one food flavour",
2679
+ name: "product.foodFlavors",
2680
+ placeholder: "Food flavours"
2681
+ };
2682
+ var vendorCompliance = [
2683
+ {
2684
+ name: "compliance.liabilityInsurance",
2685
+ placeholder: "Liability Insurance"
2686
+ },
2687
+ {
2688
+ name: "compliance.foodBeverageLicense",
2689
+ placeholder: "Food and Beverage License"
2690
+ }
2691
+ ];
2692
+ var packagingTypes = [
2693
+ "Biodegradable",
2694
+ "Compostable",
2695
+ "Fabric",
2696
+ "Glass",
2697
+ "Other",
2698
+ "Paper",
2699
+ "Plastic",
2700
+ "Recyclable",
2701
+ "Reusable",
2702
+ "Single-use",
2703
+ "Wood"
2704
+ ];
2705
+ var producedIngTypes = [
2706
+ "Commercial Kitchen",
2707
+ "Home Premises",
2708
+ "Factory",
2709
+ "Farm",
2710
+ "Other"
2711
+ ];
2712
+ var packagingOptions = mapArrayToOptions(packagingTypes);
2713
+ var producedIngOptions = mapArrayToOptions(producedIngTypes);
2714
+ var foodFlavourOptions = Object.values(
2715
+ EnumFoodFlavor
2716
+ ).map((flavour) => ({
2717
+ label: flavour.replaceAll("_", " "),
2718
+ value: flavour
2719
+ }));
2720
+
2721
+ // src/formFields/event/event.ts
2722
+ var eventBasicInfoFields = [
2723
+ {
2724
+ helperText: "Name of the Event *",
2725
+ name: "name",
2726
+ placeholder: "Name"
2727
+ },
2728
+ {
2729
+ helperText: "NZBN number (required \u2013 ClueMart only accepts events with valid NZBN number) *",
2730
+ keyboardType: "number-pad",
2731
+ name: "nzbn",
2732
+ placeholder: "NZBN number"
2733
+ },
2734
+ {
2735
+ helperText: "Name of the Provider (if applicable)",
2736
+ name: "provider",
2737
+ placeholder: "Provider"
2738
+ },
2739
+ {
2740
+ helperText: "Description of the Event *",
2741
+ isTextArea: true,
2742
+ name: "description",
2743
+ placeholder: "Description"
2744
+ }
2745
+ ];
2746
+ var eventStartDateFields = [
2747
+ {
2748
+ dateMode: "date",
2749
+ helperText: "Start Date of the Event *",
2750
+ name: "startDate",
2751
+ placeholder: "Start Date"
2752
+ },
2753
+ {
2754
+ dateMode: "time",
2755
+ helperText: "Start Time of the Event *",
2756
+ name: "startTime",
2757
+ placeholder: "Start Time"
2758
+ }
2759
+ ];
2760
+ var eventEndDateFields = [
2761
+ {
2762
+ dateMode: "date",
2763
+ helperText: "End Date of the Event *",
2764
+ name: "endDate",
2765
+ placeholder: "End Date"
2766
+ },
2767
+ {
2768
+ dateMode: "time",
2769
+ helperText: "End Time of the Event *",
2770
+ name: "endTime",
2771
+ placeholder: "End Time"
2772
+ }
2773
+ ];
2774
+ var availableTagTypes = [
2775
+ { icon: "human-male-female-child", label: "All Ages" },
2776
+ { icon: "weather-sunny", label: "Day Market" },
2777
+ { icon: "account-child", label: "Family Friendly" },
2778
+ { icon: "ticket-percent", label: "Free Entry" },
2779
+ { icon: "home-city", label: "Indoor Market" },
2780
+ { icon: "music", label: "Live Music" },
2781
+ { icon: "bus", label: "Near Bustop" },
2782
+ { icon: "slide", label: "Near Playground" },
2783
+ { icon: "train", label: "Near Train Station" },
2784
+ { icon: "weather-night", label: "Night Market" },
2785
+ { icon: "tree", label: "Outdoor Market" },
2786
+ { icon: "car", label: "Parking Available" },
2787
+ { icon: "dog", label: "Pet Friendly" },
2788
+ { icon: "ship-wheel", label: "Port Nearby" },
2789
+ { icon: "toilet", label: "Toilet Available" },
2790
+ { icon: "wheelchair-accessibility", label: "Wheelchair Accessible" }
2791
+ ];
2792
+ var tagOptions = availableTagTypes.map((tag) => ({
2793
+ label: tag.label,
2794
+ value: tag.label
2795
+ }));
2796
+
2797
+ // src/formFields/event/eventInfo.ts
2798
+ var eventInfo = [
2124
2799
  {
2125
- id: "food-beverages",
2126
- name: "Food & Beverages",
2127
- description: "Fresh produce, drinks, sweet and savoury street food, ready-to-eat meals, and packaged goods.",
2128
- subcategories: [
2129
- {
2130
- id: "fresh-food-groceries",
2131
- name: "Fresh Food & Groceries",
2132
- items: [
2133
- {
2134
- id: "fruits-vegetables",
2135
- name: "Fruits & Vegetables",
2136
- description: "Fresh seasonal fruit, organic vegetables, specialty produce, berries, tropical fruit, heritage varieties."
2137
- },
2138
- {
2139
- id: "meat-seafood",
2140
- name: "Meat & Seafood",
2141
- description: "Butcher cuts, fresh fish, smoked meats, sausages, seafood platters, artisanal jerky."
2142
- },
2143
- {
2144
- id: "dairy-eggs",
2145
- name: "Dairy & Eggs",
2146
- description: "Farm eggs, handmade cheeses, yoghurt, fresh milk, goat\u2019s milk products."
2147
- },
2148
- {
2149
- id: "bakery-pastries",
2150
- name: "Bakery & Pastries",
2151
- description: "Freshly baked bread, sourdough, bagels, croissants, focaccia, traditional baked goods."
2152
- },
2153
- {
2154
- id: "spices-condiments",
2155
- name: "Spices & Condiments",
2156
- description: "Dried herbs, spice blends, specialty salts, hot sauces, infused oils, chutneys."
2157
- },
2158
- {
2159
- id: "packaged-specialty-foods",
2160
- name: "Packaged & Specialty Foods",
2161
- description: "Honey, jams, preserves, pickles, nut butters, sauces, pre-packaged snacks."
2162
- },
2163
- {
2164
- id: "other-fresh-food-items",
2165
- name: "Other fresh food items",
2166
- description: "Items that don\u2019t fit above, e.g. fermented foods, plant-based substitutes."
2167
- }
2168
- ]
2169
- },
2170
- {
2171
- id: "beverages-specialty-drinks",
2172
- name: "Beverages & Specialty Drinks",
2173
- items: [
2174
- {
2175
- id: "fresh-juices-smoothies",
2176
- name: "Fresh Juices & Smoothies",
2177
- description: "Cold-pressed juices, detox blends, fruit smoothies, tropical mixes."
2178
- },
2179
- {
2180
- id: "coffee-teas",
2181
- name: "Coffee & Teas",
2182
- description: "Espresso, pour-over coffee, herbal teas, matcha, bubble tea, locally blended tea."
2183
- },
2184
- {
2185
- id: "dairy-plant-based-drinks",
2186
- name: "Dairy & Plant-Based Drinks",
2187
- description: "Milkshakes, lassis, almond/oat milk drinks, coconut water."
2188
- },
2189
- {
2190
- id: "alcoholic-beverages",
2191
- name: "Alcoholic Beverages",
2192
- description: "Local wines, craft beer, mead, cider, infused spirits, cocktail kits."
2193
- },
2194
- {
2195
- id: "other-beverages",
2196
- name: "Other beverages",
2197
- description: "Kombucha, kefir, energy drinks, non-alcoholic wines or beers."
2198
- }
2199
- ]
2200
- },
2201
- {
2202
- id: "savoury-prepared-foods-street-food",
2203
- name: "Savoury Prepared Foods & Street Food",
2204
- items: [
2205
- {
2206
- id: "local-specialties",
2207
- name: "Local Specialties",
2208
- description: "Meat pies, hangi, seafood chowder, fry bread, traditional NZ dishes."
2209
- },
2210
- {
2211
- id: "asian-cuisine",
2212
- name: "Asian Cuisine",
2213
- description: "Sushi, bao buns, dumplings, ramen, satay, spring rolls, fried rice."
2214
- },
2215
- {
2216
- id: "mediterranean-cuisine",
2217
- name: "Mediterranean Cuisine",
2218
- description: "Falafel, hummus wraps, souvlaki, Greek salad, dolma."
2219
- },
2220
- {
2221
- id: "italian-delights",
2222
- name: "Italian Delights",
2223
- description: "Pizza, calzone, focaccia, fresh pasta, arancini."
2224
- },
2225
- {
2226
- id: "bbq-grilled-foods",
2227
- name: "BBQ & Grilled Foods",
2228
- description: "Kebabs, grilled chicken, ribs, burgers, sausages."
2229
- },
2230
- {
2231
- id: "savoury-crepes-pancakes",
2232
- name: "Savoury Crepes & Pancakes",
2233
- description: "Filled savoury crepes, mini savoury pancakes."
2234
- },
2235
- {
2236
- id: "savoury-baked-goods-pastries",
2237
- name: "Savoury Baked Goods & Pastries",
2238
- description: "Quiches, savoury muffins, filled savoury pastries, empanadas."
2239
- },
2240
- {
2241
- id: "vegan-vegetarian-dishes",
2242
- name: "Vegan & Vegetarian Dishes",
2243
- description: "Buddha bowls, plant-based burgers, salads, vegan sushi."
2244
- },
2245
- {
2246
- id: "other-savoury-foods",
2247
- name: "Other Savoury Foods",
2248
- description: "Fusion dishes, mixed platters, savoury meal kits."
2249
- }
2250
- ]
2251
- },
2252
- {
2253
- id: "sweet-prepared-foods",
2254
- name: "Sweet Prepared Foods",
2255
- items: [
2256
- {
2257
- id: "sweet-crepes-pancakes-fried-treats",
2258
- name: "Sweet Crepes, Pancakes & Fried Treats",
2259
- description: "Crepes, waffles, mini pancakes, muffins, doughnuts."
2260
- },
2261
- {
2262
- id: "sweet-baked-goods-desserts",
2263
- name: "Sweet Baked Goods & Desserts",
2264
- description: "Cakes, pastries, slices, trifles, layered desserts."
2265
- },
2266
- {
2267
- id: "fruit-based-snacks",
2268
- name: "Fruit-Based Snacks",
2269
- description: "Fruit skewers, dried fruit packs, chocolate-dipped fruit."
2270
- },
2271
- {
2272
- id: "candy-confectionery",
2273
- name: "Candy & Confectionery",
2274
- description: "Fudge, handmade candies, toffee, nougat, brittle."
2275
- },
2276
- {
2277
- id: "other-sweet-foods",
2278
- name: "Other Sweet Foods",
2279
- description: "Fusion desserts, sweet platters, sweet meal kits."
2280
- }
2281
- ]
2282
- }
2283
- ]
2800
+ helperText: "Application Deadline (hours before event start) *",
2801
+ keyboardType: "number-pad",
2802
+ name: "applicationDeadlineHours",
2803
+ placeholder: "Application Deadline (in hours)"
2804
+ },
2805
+ {
2806
+ helperText: "Payment Due (hours after application or invitation acceptance) *",
2807
+ keyboardType: "number-pad",
2808
+ name: "paymentDueHours",
2809
+ placeholder: "Payment Due (in hours)"
2810
+ },
2811
+ {
2812
+ helperText: "Pack-In Time (hours before event start) *",
2813
+ keyboardType: "number-pad",
2814
+ name: "packInTime",
2815
+ placeholder: "Pack In Time (in hours)"
2284
2816
  }
2285
2817
  ];
2286
-
2287
- // src/formFields/categories/handmadeAndLocalProducts.ts
2288
- var handmadeAndLocalProducts = [
2818
+ var eventInfoPaymentInfo = [
2289
2819
  {
2290
- id: "handmade-local-products",
2291
- name: "Handmade & Local Products",
2292
- description: "Unique, handmade, or locally produced artisan goods.",
2293
- subcategories: [
2294
- {
2295
- id: "home-living",
2296
- name: "Home & Living",
2297
- items: [
2298
- {
2299
- id: "ceramics-pottery",
2300
- name: "Ceramics & Pottery",
2301
- description: "Handmade mugs, vases, bowls, decorative plates, plant pots."
2302
- },
2303
- {
2304
- id: "candles-home-scents",
2305
- name: "Candles & Home Scents",
2306
- description: "Soy candles, beeswax candles, wax melts, incense sticks, room sprays and herbal sachets."
2307
- },
2308
- {
2309
- id: "botanical-crafts",
2310
- name: "Botanical Crafts",
2311
- description: "Dried-flower d\xE9cor and pressed-flower crafts"
2312
- },
2313
- {
2314
- id: "textiles-embroidery",
2315
- name: "Textiles & Embroidery",
2316
- description: "Handsewn items, embroidered napkins, home linens, aprons, fabric gift wraps, handmade fabric bags, quilted goods, personalized textile gifts."
2317
- },
2318
- {
2319
- id: "woodcraft-metalcraft",
2320
- name: "Woodcraft & Metalcraft",
2321
- description: "Wooden boards, handmade frames, sculptures, metal signs, furniture."
2322
- },
2323
- {
2324
- id: "handmade-soaps-natural-body-goods",
2325
- name: "Handmade Soaps & Natural Body Goods",
2326
- description: "Handmade soaps, balms, oils, bath items"
2327
- },
2328
- {
2329
- id: "seasonal-festive-crafts",
2330
- name: "Seasonal & Festive Crafts",
2331
- description: "Christmas, Easter and seasonal handmade decor"
2332
- },
2333
- {
2334
- id: "other-home-living-products",
2335
- name: "Other home & living products",
2336
- description: "Items that don't fit above but serve home-related purposes."
2337
- }
2338
- ]
2339
- },
2340
- {
2341
- id: "art-personal-expression",
2342
- name: "Art & Personal Expression",
2343
- items: [
2344
- {
2345
- id: "paintings-illustrations",
2346
- name: "Paintings & Illustrations",
2347
- description: "Paintings, canvas art, hand-drawn illustrations, digital prints, graphic art and calligraphy pieces."
2348
- },
2349
- {
2350
- id: "sculptures-carvings",
2351
- name: "Sculptures & Carvings ",
2352
- description: "Sculptures made from wood, stone, metal, clay or resin, carved decorative pieces and artistic 3D works."
2353
- },
2354
- {
2355
- id: "creative-handmade-alternative-art",
2356
- name: "Creative Handmade & Alternative Art",
2357
- description: "Handmade textile d\xE9cor, fabric ornaments, mixed-media art, creative craft pieces and modern handmade artworks."
2358
- },
2359
- {
2360
- id: "handmade-mini-figures-decor",
2361
- name: "Handmade Mini Figures & D\xE9cor",
2362
- description: "Small handmade figures, tiny houses and crafted mini decorative items."
2363
- },
2364
- {
2365
- id: "other-artistic-expressive-products",
2366
- name: "Other Artistic or Expressive Products",
2367
- description: "Custom artworks, specialty handmade d\xE9cor, unique crafts."
2368
- }
2369
- ]
2370
- },
2371
- {
2372
- id: "handmade-jewellery-accessories-cultural-crafts",
2373
- name: "Handmade Jewellery, Accessories & Cultural Crafts",
2374
- items: [
2375
- {
2376
- id: "jewellery-handmade-items-nz-traditional-materials",
2377
- name: "Jewellery & Handmade Items from NZ Traditional Materials",
2378
- description: "Handmade jewellery and decorative or functional items crafted from pounamu, bone, wood and other traditional New Zealand materials."
2379
- },
2380
- {
2381
- id: "maori-pasifika-cultural-crafts-clothing",
2382
- name: "M\u0101ori & Pasifika Cultural Crafts and Clothing",
2383
- description: "Culturally inspired handmade items, accessories and garments featuring M\u0101ori or Pasifika motifs, traditional patterns and regional craftsmanship."
2384
- },
2385
- {
2386
- id: "traditional-handmade-clothing-jewellery-crafts-global-cultures",
2387
- name: "Traditional Handmade Clothing, Jewellery & Crafts from Global Cultures",
2388
- description: "Handcrafted clothing, jewellery and cultural items from diverse traditions \u2014 including Asian, African, European, Middle Eastern, Indian, Chinese, Japanese, Pacific, and other culturally significant handmade pieces."
2389
- },
2390
- {
2391
- id: "other-handmade-cultural-items",
2392
- name: "Other Handmade Cultural Items",
2393
- description: "Unique or culturally inspired handmade pieces not specifically covered in the categories above."
2394
- }
2395
- ]
2396
- },
2397
- {
2398
- id: "gift-ideas-accessories",
2399
- name: "Gift Ideas & Accessories",
2400
- items: [
2401
- {
2402
- id: "handmade-pens-keychains-fridge-magnets",
2403
- name: "Handmade Pens, Keychains and Fridge Magnets",
2404
- description: null
2405
- },
2406
- {
2407
- id: "gift-packaging-wrapping-accessories",
2408
- name: "Gift Packaging & Wrapping Accessories",
2409
- description: null
2410
- },
2411
- {
2412
- id: "handmade-crochet-knitting-fibre-crafts",
2413
- name: "Handmade Crochet, Knitting & Fibre Crafts",
2414
- description: "Handmade crochet and knitted items, fabric-based crafts, small decorative pieces, creative fibre artworks and unique handcrafted accessories."
2415
- },
2416
- {
2417
- id: "handmade-toys-mini-play-items",
2418
- name: "Handmade Toys & Mini Play Items",
2419
- description: "small handmade toys, soft toys, wooden miniatures, crochet or felt play pieces"
2420
- },
2421
- {
2422
- id: "other-small-handmade-gifts-accessories",
2423
- name: "Other small handmade gifts or accessories",
2424
- description: "Compact creative items made to surprise or delight."
2425
- }
2426
- ]
2427
- }
2428
- ]
2820
+ helperText: "Account holder name *",
2821
+ name: "accountHolderName",
2822
+ placeholder: "Account holder name"
2823
+ },
2824
+ {
2825
+ helperText: "Account number *",
2826
+ keyboardType: "number-pad",
2827
+ name: "accountNumber",
2828
+ placeholder: "Account number"
2829
+ },
2830
+ {
2831
+ helperText: "Payment link, where applicants can pay *",
2832
+ keyboardType: "url",
2833
+ name: "link",
2834
+ placeholder: "Payment link"
2429
2835
  }
2430
2836
  ];
2431
-
2432
- // src/formFields/categories/healthAndWellness.ts
2433
- var healthAndWellness = [
2837
+ var requirementsOptions = [
2838
+ {
2839
+ category: "Environment",
2840
+ label: "All packaging must be eco-friendly or recyclable where possible.",
2841
+ value: false
2842
+ },
2843
+ {
2844
+ category: "Environment",
2845
+ label: "No single-use plastic bags are to be handed out.",
2846
+ value: false
2847
+ },
2848
+ {
2849
+ category: "Environment",
2850
+ label: "Stall area must be left clean with no trace of activity after pack-down.",
2851
+ value: false
2852
+ },
2853
+ {
2854
+ category: "Environment",
2855
+ label: "No disposal of oils, fats, or chemicals in public drains or on grassed areas.",
2856
+ value: false
2857
+ },
2858
+ {
2859
+ category: "Environment",
2860
+ label: "You must provide bins at your site for rubbish and recycling, and take away all bins including rubbish, to dispose of outside of the town centre.",
2861
+ value: false
2862
+ },
2863
+ {
2864
+ category: "Food Safety",
2865
+ label: "Food must be prepared and stored according to your food regulation.",
2866
+ value: false
2867
+ },
2868
+ {
2869
+ category: "Food Safety",
2870
+ label: "The stallholder must display a current food grade certificate.",
2871
+ value: false
2872
+ },
2873
+ {
2874
+ category: "Food Safety",
2875
+ label: "Only licensed food vendors may sell ready-to-eat food items.",
2876
+ value: false
2877
+ },
2878
+ {
2879
+ category: "Food Safety",
2880
+ label: "Handwashing facilities must be available at your stall if preparing food.",
2881
+ value: false
2882
+ },
2883
+ {
2884
+ category: "Food Safety",
2885
+ label: "You must have a food safety plan in place for your stall.",
2886
+ value: false
2887
+ },
2888
+ {
2889
+ category: "Food Safety",
2890
+ label: "Allergens must be clearly listed on packaged and unpackaged food items.",
2891
+ value: false
2892
+ },
2893
+ {
2894
+ category: "Legal & Safety",
2895
+ label: "All stallholders must comply with local council regulations.",
2896
+ value: false
2897
+ },
2898
+ {
2899
+ category: "Legal & Safety",
2900
+ label: "No unauthorised subletting of stall space to other vendors.",
2901
+ value: false
2902
+ },
2903
+ {
2904
+ category: "Legal & Safety",
2905
+ label: "Gas bottles and fuel containers must be secured and in good condition if applicable.",
2906
+ value: false
2907
+ },
2908
+ {
2909
+ category: "Legal & Safety",
2910
+ label: "Fire extinguishers must be available for stalls using cooking or heating equipment.",
2911
+ value: false
2912
+ },
2913
+ {
2914
+ category: "Legal & Safety",
2915
+ label: "Stallholders must not sell items that are illegal or prohibited by law.",
2916
+ value: false
2917
+ },
2918
+ {
2919
+ category: "Legal & Safety",
2920
+ label: "All electrical equipment must be tested and tagged.",
2921
+ value: false
2922
+ },
2434
2923
  {
2435
- id: "health-wellness",
2436
- name: "Health & Wellness",
2437
- description: "Natural products and services that promote wellbeing, body care, and holistic health.",
2438
- subcategories: [
2439
- {
2440
- id: "body-skincare",
2441
- name: "Body & Skincare",
2442
- items: [
2443
- {
2444
- id: "skincare-body-products",
2445
- name: "Skincare & Body Products",
2446
- description: "Soaps, creams, lip balms, bath salts, bath bombs, body oils, natural deodorants."
2447
- },
2448
- {
2449
- id: "other-body-care-items",
2450
- name: "Other body care items",
2451
- description: "Additional handmade or eco-conscious personal care goods."
2452
- }
2453
- ]
2454
- },
2455
- {
2456
- id: "aromatherapy-herbal-wellness",
2457
- name: "Aromatherapy & Herbal Wellness",
2458
- items: [
2459
- {
2460
- id: "aromatherapy-herbal-remedies",
2461
- name: "Aromatherapy & Herbal Remedies",
2462
- description: "Essential oils, herbal balms, massage oils, salves, natural teas, rollers."
2463
- },
2464
- {
2465
- id: "other-herbal-aroma-products",
2466
- name: "Other herbal or aroma-based products",
2467
- description: "Wellness blends, herb sachets, custom infusions."
2468
- }
2469
- ]
2470
- },
2471
- {
2472
- id: "wellness-tools-accessories",
2473
- name: "Wellness Tools & Accessories",
2474
- items: [
2475
- {
2476
- id: "wellness-accessories",
2477
- name: "Wellness Accessories",
2478
- description: "Yoga mats, meditation cushions, eye pillows, incense, smudging sticks, eco water bottles, wellness journals."
2479
- },
2480
- {
2481
- id: "spiritual-tools-crystals",
2482
- name: "Spiritual Tools & Crystals",
2483
- description: "Healing crystals, gemstone bracelets, pendulums, sprays, spiritual kits, altar decor."
2484
- },
2485
- {
2486
- id: "other-wellness-spiritual-items",
2487
- name: "Other wellness or spiritual items",
2488
- description: "Items that aid relaxation, focus, or inner work."
2489
- }
2490
- ]
2491
- }
2492
- ]
2924
+ category: "Legal & Safety",
2925
+ label: "Noise levels must be kept to a minimum unless part of a permitted performance.",
2926
+ value: false
2927
+ },
2928
+ {
2929
+ category: "Legal & Safety",
2930
+ label: "Pets at the stall must be secured and well-behaved at all times.",
2931
+ value: false
2932
+ },
2933
+ {
2934
+ category: "Legal & Safety",
2935
+ label: "Cables must be secured and not create tripping hazards.",
2936
+ value: false
2937
+ },
2938
+ {
2939
+ category: "Legal & Safety",
2940
+ label: "Stalls must not obstruct emergency access routes.",
2941
+ value: false
2942
+ },
2943
+ {
2944
+ category: "Legal & Safety",
2945
+ label: "First aid kit must be available at the stall for minor injuries.",
2946
+ value: false
2947
+ },
2948
+ {
2949
+ category: "Legal & Safety",
2950
+ label: "Stallholders must hold valid liability insurance where required.",
2951
+ value: false
2952
+ },
2953
+ {
2954
+ category: "Legal & Safety",
2955
+ label: "You must secure your gazebo and equipment to withstand wind or bad weather.",
2956
+ value: false
2957
+ },
2958
+ {
2959
+ category: "Legal & Safety",
2960
+ label: "You are responsible for the safety of your setup and any potential hazards.",
2961
+ value: false
2962
+ },
2963
+ {
2964
+ category: "Operations",
2965
+ label: "Generators must be quiet and pre-approved by the event organiser.",
2966
+ value: false
2967
+ },
2968
+ {
2969
+ category: "Operations",
2970
+ label: "Only approved products or services may be sold \u2014 no last-minute changes.",
2971
+ value: false
2972
+ },
2973
+ {
2974
+ category: "Operations",
2975
+ label: "Stallholders must arrive and be fully set up by the designated opening time.",
2976
+ value: false
2977
+ },
2978
+ {
2979
+ category: "Operations",
2980
+ label: "You may not pack down your stall before the event officially ends.",
2981
+ value: false
2982
+ },
2983
+ {
2984
+ category: "Operations",
2985
+ label: "You must be self-sufficient in all operations.",
2986
+ value: false
2987
+ },
2988
+ {
2989
+ category: "Operations",
2990
+ label: "Stall layout must be kept within your allocated space.",
2991
+ value: false
2493
2992
  }
2494
2993
  ];
2495
-
2496
- // src/formFields/categories/homeGardenHousehold.ts
2497
- var homeGardenHousehold = [
2994
+ var stallTypes = [
2995
+ "1.8m table only",
2996
+ "2x2m mini stall",
2997
+ "3x3m tent site",
2998
+ "Corner stall",
2999
+ "Craft stall with power",
3000
+ "Craft stall without power",
3001
+ "Double stall (6x3m)",
3002
+ "Food truck site",
3003
+ "Food vendor with power",
3004
+ "Food vendor without power",
3005
+ "Inside hall stall",
3006
+ "Non-profit/community stall",
3007
+ "Outdoor open area",
3008
+ "Shared table space",
3009
+ "Wall-based vendor",
3010
+ "Workshop/seating area"
3011
+ ];
3012
+ var stallTypeOptions = stallTypes.map((type) => ({
3013
+ label: type,
3014
+ price: 0,
3015
+ stallCapacity: 0
3016
+ }));
3017
+ var refundPolicyOptions = [
2498
3018
  {
2499
- id: "home-garden-household-goods",
2500
- name: "Home, Garden & Household Goods",
2501
- description: "Functional, decorative, and eco-conscious products designed for everyday use indoors and outdoors.",
2502
- subcategories: [
2503
- {
2504
- id: "home-decor-living",
2505
- name: "Home Decor & Living",
2506
- items: [
2507
- {
2508
- id: "home-decor",
2509
- name: "Home Decor",
2510
- description: "Cushions, wall art, table runners, vases, trays, mirrors, handmade centerpieces."
2511
- },
2512
- {
2513
- id: "kitchenware-dining",
2514
- name: "Kitchenware & Dining",
2515
- description: "Mugs, bowls, cutting boards, utensils, jars, coasters, kitchen textiles."
2516
- },
2517
- {
2518
- id: "mini-figures-decor",
2519
- name: "Mini Figures & D\xE9cor",
2520
- description: "handmade or non-handmade small figures, tiny houses and miniature decorative items."
2521
- },
2522
- {
2523
- id: "other-indoor-home-items",
2524
- name: "Other indoor home items",
2525
- description: "Any decorative or practical household items not listed above."
2526
- }
2527
- ]
2528
- },
2529
- {
2530
- id: "cleaning-eco-essentials",
2531
- name: "Cleaning & Eco Essentials",
2532
- items: [
2533
- {
2534
- id: "cleaning-eco-supplies",
2535
- name: "Cleaning & Eco Supplies",
2536
- description: "Beeswax wraps, reusable cloths, brushes, natural soaps, detergent bars, eco sponges."
2537
- },
2538
- {
2539
- id: "other-eco-cleaning-items",
2540
- name: "Other eco or cleaning items",
2541
- description: "Environmentally friendly goods not listed above."
2542
- }
2543
- ]
2544
- },
2545
- {
2546
- id: "garden-outdoor-living",
2547
- name: "Garden & Outdoor Living",
2548
- items: [
2549
- {
2550
- id: "plants-botanical-decor",
2551
- name: "Plants & Botanical Decor",
2552
- description: "Potted herbs, succulents, dried flowers, terrariums, plant-based ornaments."
2553
- },
2554
- {
2555
- id: "fresh-flowers-botanical-bouquets",
2556
- name: "Fresh Flowers & Botanical Bouquets",
2557
- description: "Cut flowers, seasonal bouquets, simple floral arrangements, native flower selections, and other fresh botanical items."
2558
- },
2559
- {
2560
- id: "natural-decor-nature-inspired-elements",
2561
- name: "Natural Decor & Nature-Inspired Elements",
2562
- description: "Seashell d\xE9cor, driftwood pieces, sand ornaments, natural wood accents, stone or mineral decorations, and other nature-based decorative items."
2563
- },
2564
- {
2565
- id: "garden-tools-outdoor-items",
2566
- name: "Garden Tools & Outdoor Items",
2567
- description: "Plant markers, garden signs, stakes, small tools, wind chimes, gifts."
2568
- },
2569
- {
2570
- id: "other-outdoor-garden-products",
2571
- name: "Other outdoor or garden products",
2572
- description: "Functional or decorative items for outside use."
2573
- }
2574
- ]
2575
- }
2576
- ]
3019
+ category: "Cancelled by Vendor",
3020
+ label: "Full refund if cancelled 30+ days before the event.",
3021
+ value: false
3022
+ },
3023
+ {
3024
+ category: "Cancelled by Vendor",
3025
+ label: "50% refund if cancelled 14\u201329 days before the event.",
3026
+ value: false
3027
+ },
3028
+ {
3029
+ category: "Cancelled by Vendor",
3030
+ label: "No refund if cancelled less than 14 days before the event.",
3031
+ value: false
3032
+ },
3033
+ {
3034
+ category: "Cancelled by Vendor",
3035
+ label: "Full refund if cancelled due to illness or emergency.",
3036
+ value: false
3037
+ },
3038
+ {
3039
+ category: "Cancelled by Vendor",
3040
+ label: "No refund for no-shows or last-minute cancellations.",
3041
+ value: false
3042
+ },
3043
+ {
3044
+ category: "Cancelled by Vendor",
3045
+ label: "No refund",
3046
+ value: false
3047
+ },
3048
+ {
3049
+ category: "Cancelled by Organiser",
3050
+ label: "Full refund if the event is cancelled by the organiser.",
3051
+ value: false
3052
+ },
3053
+ {
3054
+ category: "Cancelled by Organiser",
3055
+ label: "Credit towards a future event if cancelled by the organiser.",
3056
+ value: false
3057
+ },
3058
+ {
3059
+ category: "Cancelled by Organiser",
3060
+ label: "Refund only in cases of force majeure (e.g., natural disasters, government restrictions).",
3061
+ value: false
3062
+ },
3063
+ {
3064
+ category: "Cancelled by Organiser",
3065
+ label: "No refund",
3066
+ value: false
2577
3067
  }
2578
3068
  ];
2579
3069
 
2580
- // src/formFields/categories/petProductsAndAnimalGoods.ts
2581
- var petProductsAndAnimalGoods = [
3070
+ // src/formFields/global.ts
3071
+ var emailField = {
3072
+ helperText: "Enter email address",
3073
+ keyboardType: "email-address",
3074
+ name: "email",
3075
+ placeholder: "Email"
3076
+ };
3077
+ var companyContactFields = [
2582
3078
  {
2583
- id: "pet-products-animal-goods",
2584
- name: "Pet Products & Animal Goods",
2585
- description: "Items for pets, pet lovers, or animal-themed market stalls.",
2586
- subcategories: [
2587
- {
2588
- id: "products-for-pets",
2589
- name: "Products for Pets",
2590
- items: [
2591
- {
2592
- id: "pet-food-treats",
2593
- name: "Pet Food & Treats",
2594
- description: "Homemade dog biscuits, cat snacks, natural chews, pet-safe cakes, training treats."
2595
- },
2596
- {
2597
- id: "apparel-toys-accessories",
2598
- name: "Apparel, Toys & Accessories",
2599
- description: "Leashes, collars, harnesses, toys, grooming tools, beds, travel gear, jumpers, bandanas."
2600
- },
2601
- {
2602
- id: "other-pet-products",
2603
- name: "Other pet products",
2604
- description: "Any pet-related items not listed above."
2605
- }
2606
- ]
2607
- },
2608
- {
2609
- id: "small-pets-birds-exotic-animals",
2610
- name: "Small Pets, Birds & Exotic Animals",
2611
- items: [
2612
- {
2613
- id: "products-small-pets-birds-exotics",
2614
- name: "Products for Small Pets, Birds & Exotics",
2615
- description: "Toys, enclosures, perches, feeding bowls, bedding, habitat decor, transport gear, and care items for birds, rabbits, hamsters, reptiles, turtles, aquarium pets, and other exotic species."
2616
- },
2617
- {
2618
- id: "other-small-exotic-animal-items",
2619
- name: "Other small or exotic animal items",
2620
- description: "Unusual accessories for non-mainstream pets."
2621
- }
2622
- ]
2623
- },
2624
- {
2625
- id: "farm-working-animals",
2626
- name: "Farm & Working Animals",
2627
- items: [
2628
- {
2629
- id: "goods-for-farm-working-animals",
2630
- name: "Goods for Farm & Working Animals",
2631
- description: "Treats, care products, equipment, signage and accessories for chickens, goats, alpacas, horses, and other livestock."
2632
- },
2633
- {
2634
- id: "other-farm-animal-items",
2635
- name: "Other farm animal-related items",
2636
- description: "Rural, barnyard, or utility-specific gear not listed above."
2637
- }
2638
- ]
2639
- },
2640
- {
2641
- id: "animal-themed-gifts-custom-items",
2642
- name: "Animal-Themed Gifts & Custom Items",
2643
- items: [
2644
- {
2645
- id: "pet-art-custom-gifts",
2646
- name: "Pet Art & Custom Gifts",
2647
- description: "Pet portraits, name tags, personalized bowls, breed-specific items, pet-themed home decor and stationery."
2648
- },
2649
- {
2650
- id: "other-animal-themed-gifts",
2651
- name: "Other animal-themed gifts",
2652
- description: "Artistic or sentimental items made for animal lovers."
2653
- }
2654
- ]
2655
- }
2656
- ]
3079
+ ...emailField,
3080
+ name: "contactDetails.email"
3081
+ },
3082
+ {
3083
+ helperText: "Enter your mobile phone number",
3084
+ keyboardType: "phone-pad",
3085
+ name: "contactDetails.mobilePhone",
3086
+ placeholder: "Mobile Phone Number"
3087
+ },
3088
+ {
3089
+ helperText: "Enter your landline phone number",
3090
+ keyboardType: "phone-pad",
3091
+ name: "contactDetails.landlinePhone",
3092
+ placeholder: "Landline Phone Number"
2657
3093
  }
2658
3094
  ];
2659
3095
 
2660
- // src/formFields/categories/serviceAndExperience.ts
2661
- var serviceAndExperience = [
3096
+ // src/formFields/auth.ts
3097
+ var loginFields = [
2662
3098
  {
2663
- id: "services-experiences",
2664
- name: "Services & Experiences",
2665
- description: "On-site offerings that provide entertainment, personal care, learning, or interactive activities beyond products.",
2666
- subcategories: [
2667
- {
2668
- id: "personal-care-body-art",
2669
- name: "Personal Care & Body Art",
2670
- items: [
2671
- {
2672
- id: "nails-handcare",
2673
- name: "Nails & Handcare",
2674
- description: "Nail painting, decoration, quick manicures, temporary nail extensions."
2675
- },
2676
- {
2677
- id: "hair-styling-braiding",
2678
- name: "Hair Styling & Braiding",
2679
- description: "Hair braiding, plaits, child-friendly festival hairstyles."
2680
- },
2681
- {
2682
- id: "face-body-decoration",
2683
- name: "Face & Body Decoration",
2684
- description: "Henna, glitter tattoos, face painting, light makeup, eyelash styling, professional tattooing (where permitted)."
2685
- },
2686
- {
2687
- id: "other-beauty-grooming-services",
2688
- name: "Other beauty or grooming services",
2689
- description: "Small-scale personal care options offered on-site."
2690
- }
2691
- ]
2692
- },
2693
- {
2694
- id: "practical-wellness-services",
2695
- name: "Practical & Wellness Services",
2696
- items: [
2697
- {
2698
- id: "mobile-practical-services",
2699
- name: "Mobile & Practical Services",
2700
- description: "Shoe repair, phone repairs, knife sharpening, key cutting, battery replacement, bike repairs, engraving."
2701
- },
2702
- {
2703
- id: "wellness-alternative-therapies",
2704
- name: "Wellness & Alternative Therapies",
2705
- description: "Massage, aromatherapy, reflexology, energy healing (e.g. Reiki), natural consultations."
2706
- },
2707
- {
2708
- id: "other-service-based-offerings",
2709
- name: "Other service-based offerings",
2710
- description: "Wellness or functional services not listed above."
2711
- }
2712
- ]
2713
- },
2714
- {
2715
- id: "creative-educational-experiences",
2716
- name: "Creative & Educational Experiences",
2717
- items: [
2718
- {
2719
- id: "creative-workshops-maker-services",
2720
- name: "Creative Workshops & Maker Services",
2721
- description: "Candle making, pottery, jewelry crafting, soap or balm workshops, calligraphy, seasonal crafts."
2722
- },
2723
- {
2724
- id: "education-awareness-stalls",
2725
- name: "Education & Awareness Stalls",
2726
- description: "Eco awareness, cultural storytelling, local history, first aid demos, health booths, sustainability education, kids\u2019 science displays."
2727
- },
2728
- {
2729
- id: "other-creative-educational-services",
2730
- name: "Other creative or educational services",
2731
- description: "Informal learning, demonstrations, or community-focused sessions."
2732
- }
2733
- ]
2734
- },
2735
- {
2736
- id: "kids-activities-family-fun",
2737
- name: "Kids\u2019 Activities & Family Fun",
2738
- items: [
2739
- {
2740
- id: "kids-activities-fun",
2741
- name: "Kids\u2019 Activities & Fun",
2742
- description: "Face painting, glitter tattoos, pony rides, bouncy castles, small amusement rides, balloon twisting, animal petting zones."
2743
- },
2744
- {
2745
- id: "other-family-oriented-activities",
2746
- name: "Other family-oriented activities",
2747
- description: "On-site entertainment that engages children or family groups."
2748
- }
2749
- ]
2750
- }
2751
- ]
3099
+ ...emailField,
3100
+ required: true
3101
+ },
3102
+ {
3103
+ helperText: "Enter password",
3104
+ keyboardType: "default",
3105
+ name: "password",
3106
+ placeholder: "Password",
3107
+ required: true,
3108
+ secureTextEntry: true
3109
+ }
3110
+ ];
3111
+ var registerFields = [
3112
+ {
3113
+ helperText: "Enter first name",
3114
+ keyboardType: "default",
3115
+ name: "firstName",
3116
+ placeholder: "First Name",
3117
+ required: true
3118
+ },
3119
+ {
3120
+ helperText: "Enter last name",
3121
+ keyboardType: "default",
3122
+ name: "lastName",
3123
+ placeholder: "Last Name",
3124
+ required: true
3125
+ },
3126
+ {
3127
+ ...emailField,
3128
+ required: true
3129
+ },
3130
+ {
3131
+ helperText: "Enter password",
3132
+ keyboardType: "default",
3133
+ name: "password",
3134
+ placeholder: "Password",
3135
+ required: true,
3136
+ secureTextEntry: true
3137
+ },
3138
+ {
3139
+ helperText: "Promotional code (optional)",
3140
+ keyboardType: "default",
3141
+ name: "promoCode",
3142
+ placeholder: "Promotional Code",
3143
+ required: false
2752
3144
  }
2753
3145
  ];
2754
-
2755
- // src/formFields/categories/toysChildren.ts
2756
- var toysChildren = [
3146
+ var requestPasswordResetFields = [
2757
3147
  {
2758
- id: "toys-childrens-items",
2759
- name: "Toys & Children\u2019s Items",
2760
- description: "Products and services made for or inspired by children.",
2761
- subcategories: [
2762
- {
2763
- id: "toys-playthings",
2764
- name: "Toys & Playthings",
2765
- items: [
2766
- {
2767
- id: "toys-classic-electric-character",
2768
- name: "Toys \u2013 Classic, Electric & Character-Based",
2769
- description: "Building blocks, dolls, puzzles, plush animals, toy vehicles, remote-control toys, light-up gadgets, character figurines, themed playsets."
2770
- },
2771
- {
2772
- id: "handmade-toys-crafty-playthings",
2773
- name: "Handmade Toys & Crafty Playthings",
2774
- description: "Wooden puzzles, crocheted animals, felt toys, fabric dolls, DIY kits, nature-inspired games, sensory toys."
2775
- },
2776
- {
2777
- id: "other-play-items",
2778
- name: "Other play items",
2779
- description: "Toys not listed above, including limited-edition or hybrid items."
2780
- }
2781
- ]
2782
- },
2783
- {
2784
- id: "educational-developmental",
2785
- name: "Educational & Developmental",
2786
- items: [
2787
- {
2788
- id: "educational-developmental-tools",
2789
- name: "Educational & Developmental Tools",
2790
- description: "STEM kits, Montessori toys, storybooks, picture books, flashcards, early learning games, language tools."
2791
- },
2792
- {
2793
- id: "other-educational-experience-based-items",
2794
- name: "Other educational or experience-based items",
2795
- description: "Creative experiences or learning aids not listed above."
2796
- }
2797
- ]
2798
- },
2799
- {
2800
- id: "baby-kidswear-accessories",
2801
- name: "Baby & Kidswear + Accessories",
2802
- items: [
2803
- {
2804
- id: "baby-kidswear-accessories",
2805
- name: "Baby & Kidswear + Accessories",
2806
- description: "Handmade baby clothes, toddler outfits, bibs, hats, headbands, bags, pacifier clips, soft shoes."
2807
- },
2808
- {
2809
- id: "baby-developmental-soft-toys",
2810
- name: "Baby Developmental Soft Toys",
2811
- description: "Sensory toys, rattles, fabric books, teething items, high-contrast cards, and early-skill. Montessori materials designed to support infants\u2019 cognitive and motor development."
2812
- },
2813
- {
2814
- id: "other-childrens-clothing-accessories",
2815
- name: "Other children\u2019s clothing or accessories",
2816
- description: "Unique fashion or functional pieces for kids."
2817
- }
2818
- ]
2819
- }
2820
- ]
3148
+ ...emailField,
3149
+ helperText: "Enter email address to reset your password",
3150
+ required: true
2821
3151
  }
2822
3152
  ];
2823
-
2824
- // src/formFields/categories/vintageAndAntique.ts
2825
- var vintageAndAntique = [
3153
+ var resetPasswordFields = [
2826
3154
  {
2827
- id: "vintage-antique",
2828
- name: "Vintage & Antique",
2829
- description: "Unique, historic, or nostalgic items with collectible or decorative value.",
2830
- subcategories: [
2831
- {
2832
- id: "vintage-antique-clothing-accessories",
2833
- name: "Vintage & Antique Clothing & Accessories",
2834
- items: [
2835
- {
2836
- id: "clothing-vintage-fashion",
2837
- name: "Clothing and wearable items from past eras",
2838
- description: "Vintage dresses, jackets, hats, gloves, belts, bags, shoes, jewellery."
2839
- },
2840
- {
2841
- id: "other-clothing-accessory-items",
2842
- name: "Other clothing-related items",
2843
- description: "Hair clips, brooches, pins, scarf rings, small fashion accessories."
2844
- }
2845
- ]
2846
- },
2847
- {
2848
- id: "collectibles-memorabilia",
2849
- name: "Collectibles & Memorabilia",
2850
- items: [
2851
- {
2852
- id: "small-collectible-items",
2853
- name: "Small collectible items with historical or nostalgic significance",
2854
- description: "Coins, stamps, toys, postcards, comics, sports cards, vintage packaging."
2855
- },
2856
- {
2857
- id: "other-collectible-items",
2858
- name: "Other collectible items",
2859
- description: "Rare small objects, miniature figurines, special-edition items."
2860
- }
2861
- ]
2862
- },
2863
- {
2864
- id: "homewares-decor-curiosities",
2865
- name: "Homewares, Decor & Curiosities",
2866
- items: [
2867
- {
2868
- id: "decorative-functional-vintage-items",
2869
- name: "Decorative or functional items with a vintage or antique aesthetic",
2870
- description: "Teacups, plates, vases, mirrors, clocks, furniture, old tools, lanterns, typewriters, curiosities."
2871
- },
2872
- {
2873
- id: "handmade-vintage-art",
2874
- name: "Handmade vintage art",
2875
- description: "Paintings, sculptures, crafted pieces."
2876
- },
2877
- {
2878
- id: "other-home-decor-items",
2879
- name: "Other home or decor items",
2880
- description: "Decorative pieces not listed above, unique household objects."
2881
- }
2882
- ]
2883
- },
2884
- {
2885
- id: "vintage-media-printed-nostalgia",
2886
- name: "Vintage Media & Printed Nostalgia",
2887
- items: [
2888
- {
2889
- id: "older-media-printed-works",
2890
- name: "Older media formats and printed works",
2891
- description: "Vinyl records, cassette tapes, CDs, DVDs, books, magazines, board games, posters."
2892
- },
2893
- {
2894
- id: "other-media-printed-items",
2895
- name: "Other media or printed items",
2896
- description: "Maps, manuals, leaflets, out-of-print materials."
2897
- }
2898
- ]
2899
- },
2900
- {
2901
- id: "other-vintage-antique-items",
2902
- name: "Other Vintage & Antique Items",
2903
- items: [
2904
- {
2905
- id: "any-vintage-antique-items-not-listed",
2906
- name: "Any vintage or antique items not listed above",
2907
- description: "Unique, rare or uncategorised pieces."
2908
- }
2909
- ]
2910
- }
2911
- ]
3155
+ helperText: "Enter your new password",
3156
+ keyboardType: "default",
3157
+ name: "password",
3158
+ placeholder: "Password",
3159
+ required: true,
3160
+ secureTextEntry: true
3161
+ },
3162
+ {
3163
+ helperText: "Confirm your new password",
3164
+ keyboardType: "default",
3165
+ name: "confirmPassword",
3166
+ placeholder: "Confirm Password",
3167
+ required: true,
3168
+ secureTextEntry: true
3169
+ }
3170
+ ];
3171
+ var validateVerificationTokenFields = [
3172
+ {
3173
+ ...emailField,
3174
+ disabled: true,
3175
+ helperText: "Your email address"
3176
+ },
3177
+ {
3178
+ helperText: "Enter the Verification code sent to you by email",
3179
+ keyboardType: "number-pad",
3180
+ name: "verificationToken",
3181
+ placeholder: "Verification code",
3182
+ required: true
2912
3183
  }
2913
3184
  ];
2914
3185
 
2915
- // src/formFields/categories/index.ts
2916
- var categoryColors = {
2917
- "clothing-fashion": "#9D4EDD",
2918
- "electronics-technology": "#3AF3FF",
2919
- "food-beverages": "#FF0D1F",
2920
- "handmade-local-products": "#EE7E54",
2921
- "health-wellness": "#E23794",
2922
- "home-garden-household-goods": "#067325",
2923
- "pet-products-animal-goods": "#68E788",
2924
- "services-experiences": "#2E16A5",
2925
- "toys-childrens-items": "#FFF966",
2926
- "vintage-antique": "#8D6748"
2927
- };
2928
- var assignColorToCategories = (categories) => {
2929
- const result = categories.map((category) => ({
2930
- ...category,
2931
- color: categoryColors[category.id]
2932
- }));
2933
- return result;
2934
- };
2935
- var availableCategories = assignColorToCategories([
2936
- ...foodAndBeverages,
2937
- ...handmadeAndLocalProducts,
2938
- ...clothingAndFashion,
2939
- ...homeGardenHousehold,
2940
- ...toysChildren,
2941
- ...healthAndWellness,
2942
- ...electronicsAndTechnology,
2943
- ...vintageAndAntique,
2944
- ...petProductsAndAnimalGoods,
2945
- ...serviceAndExperience
2946
- ]);
3186
+ // src/formFields/user.ts
3187
+ var profileFields = [
3188
+ {
3189
+ ...emailField,
3190
+ disabled: true,
3191
+ helperText: "Email cannot be changed"
3192
+ },
3193
+ {
3194
+ helperText: "Enter first name",
3195
+ keyboardType: "default",
3196
+ name: "firstName",
3197
+ placeholder: "First Name"
3198
+ },
3199
+ {
3200
+ helperText: "Enter last name",
3201
+ keyboardType: "default",
3202
+ name: "lastName",
3203
+ placeholder: "Last Name"
3204
+ },
3205
+ {
3206
+ helperText: "Enter your new password",
3207
+ keyboardType: "default",
3208
+ name: "password",
3209
+ placeholder: "Password",
3210
+ secureTextEntry: true
3211
+ },
3212
+ {
3213
+ helperText: "Confirm your new password",
3214
+ keyboardType: "default",
3215
+ name: "confirmPassword",
3216
+ placeholder: "Confirm Password",
3217
+ secureTextEntry: true
3218
+ }
3219
+ ];
2947
3220
 
2948
3221
  // src/formFields/socialMedia.ts
2949
3222
  var socialMedia = [
@@ -8497,6 +8770,7 @@ var fonts = {
8497
8770
  IMAGE_EXTENSION,
8498
8771
  IOS_URL,
8499
8772
  ImageTypeEnum,
8773
+ KNOWN_EVENT_SCHEDULE_STATUSES,
8500
8774
  OG_DESCRIPTION_LINE_BREAK,
8501
8775
  POST_SHARE_RESOURCE_TYPES,
8502
8776
  PROMO_CODE_PREFIX,
@@ -8550,6 +8824,7 @@ var fonts = {
8550
8824
  badgeIds,
8551
8825
  badges,
8552
8826
  buildApplicationShareDescription,
8827
+ buildCalendarSheetContentData,
8553
8828
  buildFacebookShareQuote,
8554
8829
  buildInvitationShareDescription,
8555
8830
  buildPublicEventShareDescription,
@@ -8565,6 +8840,8 @@ var fonts = {
8565
8840
  cluiFiles,
8566
8841
  cluiIds,
8567
8842
  cluiImages,
8843
+ collectStallholderStartDates,
8844
+ collectVendorEventRelationDateTimes,
8568
8845
  companyContactFields,
8569
8846
  computeDailyClueState,
8570
8847
  contactUsFields,
@@ -8573,11 +8850,19 @@ var fonts = {
8573
8850
  emailField,
8574
8851
  eventBasicInfoFields,
8575
8852
  eventEndDateFields,
8853
+ eventHasSelectedDate,
8576
8854
  eventInfo,
8577
8855
  eventInfoPaymentInfo,
8578
8856
  eventMatchesDateStatusPeriod,
8579
8857
  eventStartDateFields,
8858
+ eventStartDatesSet,
8580
8859
  filterEventsByDateStatusPeriod,
8860
+ filterRegisteredVendorsByEventDatesOnly,
8861
+ filterRegisteredVendorsForEvent,
8862
+ filterUnregisteredVendorsByEventDatesOnly,
8863
+ filterUnregisteredVendorsForEvent,
8864
+ filterVendorEventsBySelectedDate,
8865
+ findEventDateTimeByIsoDate,
8581
8866
  fonts,
8582
8867
  foodFlavourOptions,
8583
8868
  formatCategoryLabel,
@@ -8596,11 +8881,28 @@ var fonts = {
8596
8881
  formatShareTagsSection,
8597
8882
  formatStallCapacityLabel,
8598
8883
  formatTimestamp,
8884
+ fromCalendarIsoDate,
8599
8885
  futureTimePeriods,
8600
8886
  gameScreenIdentifierList,
8601
8887
  gameTypeToDisplayName,
8602
8888
  getAllowedEventDateStatuses,
8603
8889
  getCurrentAndFutureDates,
8890
+ getEventCalendarIsoDates,
8891
+ getEventDatesWithStallholders,
8892
+ getEventScheduleStatusLabel,
8893
+ getEventScheduleStatusPresentation,
8894
+ getEventScheduleStatusTone,
8895
+ getEventStallholderEmptyMessage,
8896
+ getRegisteredVendorCategoryNames,
8897
+ getRegisteredVendorStartDates,
8898
+ getStallholderCategoryNames,
8899
+ getStallholderCategoryOptions,
8900
+ getUnregisteredVendorCategoryNames,
8901
+ getUnregisteredVendorStartDates,
8902
+ getVendorEventRelationDateOptions,
8903
+ getVendorEventRelationStartDates,
8904
+ getVendorEventsEmptyMessage,
8905
+ hasMatchingEventDate,
8604
8906
  iconFiles,
8605
8907
  iconIds,
8606
8908
  icons,
@@ -8617,6 +8919,8 @@ var fonts = {
8617
8919
  logoIds,
8618
8920
  logos,
8619
8921
  mapArrayToOptions,
8922
+ matchesCategory,
8923
+ matchesSelectedDate,
8620
8924
  normalizeShareOgDescription,
8621
8925
  normalizeShareRouteId,
8622
8926
  normalizeShareText,
@@ -8637,6 +8941,7 @@ var fonts = {
8637
8941
  profileFields,
8638
8942
  refundPolicyOptions,
8639
8943
  registerFields,
8944
+ relationHasSelectedDate,
8640
8945
  removeTypename,
8641
8946
  requestPasswordResetFields,
8642
8947
  requirementsOptions,
@@ -8644,6 +8949,7 @@ var fonts = {
8644
8949
  rewardNiceNames,
8645
8950
  seededShuffle,
8646
8951
  shareMessageFooterPlacementForType,
8952
+ shouldShowEventActionsWithWeather,
8647
8953
  socialMediaFields,
8648
8954
  sortDatesChronologically,
8649
8955
  splitShareDescriptionSections,
@@ -8651,6 +8957,7 @@ var fonts = {
8651
8957
  statusOptions,
8652
8958
  tagOptions,
8653
8959
  timeFormat,
8960
+ toCalendarIsoDate,
8654
8961
  toGraphqlQueryString,
8655
8962
  toNZTime,
8656
8963
  truncateText,