@firecms/core 3.0.0-canary.50 → 3.0.0-canary.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/components/{EntityCollectionTable/internal → common}/default_entity_actions.d.ts +1 -1
  2. package/dist/components/common/index.d.ts +1 -0
  3. package/dist/core/Drawer.d.ts +5 -12
  4. package/dist/core/DrawerNavigationItem.d.ts +9 -0
  5. package/dist/core/Scaffold.d.ts +6 -9
  6. package/dist/core/index.d.ts +3 -4
  7. package/dist/hooks/index.d.ts +1 -0
  8. package/dist/index.es.js +3102 -3129
  9. package/dist/index.es.js.map +1 -1
  10. package/dist/index.umd.js +5 -5
  11. package/dist/index.umd.js.map +1 -1
  12. package/dist/types/navigation.d.ts +2 -2
  13. package/dist/util/icon_synonyms.d.ts +0 -93
  14. package/dist/util/resolutions.d.ts +8 -4
  15. package/package.json +4 -4
  16. package/src/components/EntityCollectionView/EntityCollectionView.tsx +3 -7
  17. package/src/components/EntityView.tsx +1 -1
  18. package/src/components/PropertyIdCopyTooltipContent.tsx +2 -3
  19. package/src/components/ReferenceWidget.tsx +1 -1
  20. package/src/components/{EntityCollectionTable/internal → common}/default_entity_actions.tsx +2 -2
  21. package/src/components/common/index.ts +1 -0
  22. package/src/components/common/types.tsx +1 -1
  23. package/src/components/common/useColumnsIds.tsx +10 -2
  24. package/src/core/Drawer.tsx +14 -66
  25. package/src/core/DrawerNavigationItem.tsx +62 -0
  26. package/src/core/EntitySidePanel.tsx +1 -1
  27. package/src/core/FireCMS.tsx +3 -4
  28. package/src/core/Scaffold.tsx +75 -61
  29. package/src/core/index.tsx +3 -4
  30. package/src/form/EntityForm.tsx +2 -2
  31. package/src/form/field_bindings/SelectFieldBinding.tsx +4 -1
  32. package/src/hooks/index.tsx +1 -0
  33. package/src/hooks/useBuildNavigationController.tsx +0 -1
  34. package/src/hooks/useResolvedNavigationFrom.tsx +1 -1
  35. package/src/internal/useBuildSideEntityController.tsx +3 -2
  36. package/src/preview/components/EnumValuesChip.tsx +1 -1
  37. package/src/preview/property_previews/NumberPropertyPreview.tsx +1 -0
  38. package/src/types/navigation.ts +1 -2
  39. package/src/types/storage.ts +1 -1
  40. package/src/util/enums.ts +1 -1
  41. package/src/util/icon_synonyms.ts +2 -95
  42. package/src/util/resolutions.ts +26 -7
  43. package/dist/internal/useBuildCustomizationController.d.ts +0 -2
  44. package/src/internal/useBuildCustomizationController.tsx +0 -5
@@ -280,7 +280,6 @@ export const iconSynonyms = {
280
280
  cast: "Android airplay chromecast connect desktop device display hardware iOS mac monitor screencast streaming television tv web window wireless",
281
281
  cast_connected: "Android airplay chromecast desktop device display hardware iOS mac monitor screencast streaming television tv web window wireless",
282
282
  cast_for_education: "Android airplay chrome connect desktop device display hardware iOS learning lessons mac monitor screencast streaming teaching television tv web window wireless",
283
- catching_pokemon: "go pokestop travel",
284
283
  category: "categories circle collection items product sort square triangle",
285
284
  celebration: "activity birthday event fun party",
286
285
  cell_tower: "broadcast casting network signal transmitting wireless",
@@ -357,8 +356,8 @@ export const iconSynonyms = {
357
356
  contact_phone: "account avatar call communicate face human information message mobile number people person profile user",
358
357
  contacts: "account address avatar call cell face human information mobile number people person phone profile user",
359
358
  contact_support: "? alert announcement bubble chat comment communicate help information mark message punctuation speech symbol vquestion",
360
- content_copy: "cut document duplicate file multiple past",
361
- content_cut: "copy document file past scissors trim",
359
+ content_copy: "copy document duplicate file multiple past",
360
+ content_cut: "cut document file past scissors trim",
362
361
  content_paste: "clipboard copy cut document file multiple",
363
362
  content_paste_go: "clipboard disabled document enabled file slash",
364
363
  content_paste_off: "clipboard disabled document enabled file slash",
@@ -381,10 +380,6 @@ export const iconSynonyms = {
381
380
  credit_score: "approve bill card cash check coin commerce complete cost currency dollars done finance loan mark money ok online payment select symbol tick validate verified yes",
382
381
  crib: "babies baby bassinet bed children cradle infant kid newborn sleeping toddler",
383
382
  crop: "adjustments area editing frame images photos rectangle settings size square",
384
- crop_169: "adjustments area by editing frame images photos picture rectangle settings size square",
385
- crop_32: "adjustments area by editing frame images photos picture rectangle settings size square",
386
- crop_54: "adjustments area by editing frame images photos picture rectangle settings size square",
387
- crop_75: "adjustments area by editing frame images photos picture rectangle settings size square",
388
383
  crop_din: "adjustments area editing frame images photos picture rectangle settings size square",
389
384
  crop_free: "adjustments barcode editing focus frame image photos qrcode settings size square zoom",
390
385
  crop_landscape: "adjustments area editing frame images photos picture settings size square",
@@ -419,7 +414,6 @@ export const iconSynonyms = {
419
414
  delete_forever: "bin cancel exit garbage junk recycle remove trashcan",
420
415
  delete_outline: "bin can garbage remove trash",
421
416
  delete_sweep: "bin garbage junk recycle remove trashcan",
422
- delivery_dining: "food meal restaurant scooter takeout transportation vehicle vespa",
423
417
  density_large: "horizontal lines rules",
424
418
  density_medium: "horizontal lines rules",
425
419
  density_small: "horizontal lines rules",
@@ -524,10 +518,6 @@ export const iconSynonyms = {
524
518
  edit_road: "destination direction highway maps pencil street traffic",
525
519
  egg: "breakfast brunch food",
526
520
  egg_alt: "breakfast brunch food",
527
- eighteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
528
- eight_k: "8000 8K alphabet character digit display font letter number pixels resolution symbol text type video",
529
- eight_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
530
- eightteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
531
521
  eject: "arrow disc drive dvd player remove triangle up usb",
532
522
  elderly: "body cane human old people person senior",
533
523
  elderly_woman: "body cane female gender girl human lady old people person senior social symbol women",
@@ -540,7 +530,6 @@ export const iconSynonyms = {
540
530
  electric_rickshaw: "automobile cars india maps transportation truck vehicle",
541
531
  electric_scooter: "automobile bike cars maps transportation vehicle vespa",
542
532
  elevator: "body down human people person up",
543
- eleven_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
544
533
  email: "envelope letter message note post receive send write",
545
534
  e_mobiledata: "alphabet font letter text type",
546
535
  emoji_emotions: "emoticon expressions face feelings glad happiness happy like mood person pleased smiley smiling social survey",
@@ -580,7 +569,6 @@ export const iconSynonyms = {
580
569
  extension: "add-ons app extended game item jigsaw piece plugin puzzle shape",
581
570
  extension_off: "disabled enabled extended jigsaw piece puzzle shape slash",
582
571
  face: "account avatar emoji eyes human login logout people person profile recognition security social thumbnail unlock user",
583
- facebook: "brand logo social",
584
572
  face_retouching_natural: "editing effect emoji emotion faces image photography settings star tag",
585
573
  face_retouching_off: "disabled editing effect emoji emotion enabled faces image natural photography settings slash tag",
586
574
  fact_check: "approve complete done list mark ok select tick validate verified yes",
@@ -604,7 +592,6 @@ export const iconSynonyms = {
604
592
  fiber_new: "alphabet character font letter network symbol text type",
605
593
  fiber_pin: "alphabet character font letter network symbol text type",
606
594
  fiber_smart_record: "circle dot play watch",
607
- fifteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
608
595
  file_copy: "bill clone content cut document duplicate invoice item multiple page past",
609
596
  file_download: "arrows downloads drive export install upload",
610
597
  file_download_done: "arrows check downloads drive installed tick upload",
@@ -641,14 +628,8 @@ export const iconSynonyms = {
641
628
  fire_extinguisher: "emergency water",
642
629
  fireplace: "chimney flame home house living pit room warm winter",
643
630
  first_page: "arrow back chevron left rewind",
644
- fitbit: "athlete athletic exercise fitness hobby",
645
631
  fitness_center: "athlete dumbbell exercise gym health hobby places sport weights workout",
646
632
  fit_screen: "enlarge format layout reduce scale size",
647
- five_g: "5g alphabet cellular character data digit font letter mobile network number phone signal speed symbol text type wifi",
648
- five_k: "5000 5K alphabet character digit display font letter number pixels resolution symbol text type video",
649
- five_k_plus: "+ 5000 5K alphabet character digit display font letter number pixels resolution symbol text type video",
650
- five_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
651
- fivteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
652
633
  flag: "country goal mark nation report start",
653
634
  flag_circle: "country goal mark nation report round start",
654
635
  flaky: "approve check close complete contrast done exit mark no ok options select stop tick verified yes",
@@ -717,11 +698,6 @@ export const iconSynonyms = {
717
698
  forward_5: "10 arrow circle controls digit fast music number rotate seconds speed symbol time video",
718
699
  forward_to_inbox: "arrow email envelop letter message send",
719
700
  foundation: "architecture base basis building construction estate home house real residential",
720
- four_g_mobiledata: "alphabet cellular character digit font letter network number phone signal speed symbol text type wifi",
721
- four_g_plus_mobiledata: "alphabet cellular character digit font letter network number phone signal speed symbol text type wifi",
722
- four_k: "4000 4K alphabet character digit display font letter number pixels resolution symbol text type video",
723
- four_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
724
- fourteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
725
701
  free_breakfast: "beverage cafe coffee cup drink mug tea",
726
702
  fullscreen: "adjust application components interface size ui ux view website",
727
703
  fullscreen_exit: "adjust application components interface size ui ux view website",
@@ -737,10 +713,8 @@ export const iconSynonyms = {
737
713
  gif_box: "alphabet animated animation bitmap character font format graphics interchange letter symbol text type",
738
714
  girl: "body female gender human lady people person social symbol woman women",
739
715
  gite: "architecture estate home hostel house maps place real residence residential stay traveling",
740
- git_hub: "brand code",
741
716
  g_mobiledata: "alphabet character font letter network service symbol text type",
742
717
  golf_course: "athlete athletic ball club entertainment flag golfer golfing hobby hole places putt sports",
743
- google: "brand logo",
744
718
  gpp_bad: "cancel certified close error exit no privacy private protection remove security shield sim stop verified",
745
719
  gpp_good: "certified check ok pass security shield sim tick",
746
720
  gpp_maybe: "! alert attention caution certified danger error exclamation important mark notification privacy private protection security shield sim symbol verified warning",
@@ -753,8 +727,6 @@ export const iconSynonyms = {
753
727
  grain: "dots editing effect filter images photography pictures",
754
728
  graphic_eq: "audio equalizer music recording sound voice",
755
729
  grass: "backyard fodder ground home lawn plant turf",
756
- grid3x3: "layout line space",
757
- grid4x4: "by layout lines space",
758
730
  grid_goldenratio: "layout lines space",
759
731
  grid_off: "collage disabled enabled image layout on slash view",
760
732
  grid_on: "collage disabled enabled image layout off sheet slash view",
@@ -799,7 +771,6 @@ export const iconSynonyms = {
799
771
  hide_image: "disabled enabled landscape mountains off on photography picture slash",
800
772
  hide_source: "circle disabled enabled offline on shape slash",
801
773
  highlight: "color doc editing editor emphasize fill flashlight format marker paint spreadsheet style text type writing",
802
- highlight_alt: "arrow box click cursor draw focus pointer selection target",
803
774
  highlight_off: "cancel circle clear click close delete disable exit focus no quit remove stop target times",
804
775
  high_quality: "alphabet character definition display font hq letter movies resolution screen symbol text tv type",
805
776
  hiking: "backpacking bag climbing duffle mountain social sports stick trail travel walking",
@@ -859,14 +830,12 @@ export const iconSynonyms = {
859
830
  insert_page_break: "document file paper",
860
831
  insert_photo: "image landscape mountains photography picture wallpaper",
861
832
  insights: "analytics bars chart data diagram infographic measure metrics stars statistics tracking",
862
- instagram: "brand logo social",
863
833
  install_desktop: "Android chrome device display fix hardware iOS mac monitor place pwa screen web window",
864
834
  install_mobile: "Android cell device hardware iOS phone pwa tablet",
865
835
  integration_instructions: "brackets clipboard code css developer document engineering html platform",
866
836
  interests: "circle heart shapes social square triangle",
867
837
  interpreter_mode: "language microphone person speaking symbol",
868
838
  inventory: "archive box buy check clipboard document e-commerce file list organize packages product purchase shop stock store supply",
869
- inventory2: "archive box file organize packages product stock storage supply",
870
839
  invert_colors: "droplet editing hue inverted liquid palette tone water",
871
840
  invert_colors_off: "disabled droplet enabled hue inverted liquid offline opacity palette slash tone water",
872
841
  ios_share: "arrows button direction export internet link send sharing social up website",
@@ -936,7 +905,6 @@ export const iconSynonyms = {
936
905
  line_weight: "editor height size spacing style thickness",
937
906
  link: "anchor chain clip connection external hyperlink linked links multimedia unlisted url",
938
907
  linked_camera: "connection lens network photography picture signals sync wireless",
939
- linked_in: "brand logo social",
940
908
  link_off: "anchor attached chain clip connection disabled enabled linked links multimedia slash unlink url",
941
909
  liquor: "alcohol bar bottle club cocktail drink food party store wine",
942
910
  list: "editor file format index menu options playlist task todo",
@@ -1065,7 +1033,6 @@ export const iconSynonyms = {
1065
1033
  monochrome_photos: "black camera image photography picture white",
1066
1034
  mood: "emoji emoticon emotions expressions face feelings glad happiness happy like person pleased smiley smiling social survey",
1067
1035
  mood_bad: "disappointment dislike emoji emoticon emotions expressions face feelings person rating smiley social survey unhappiness unhappy unpleased unsmile unsmiling",
1068
- moped: "automobile bike cars direction maps motorized public scooter transportation vehicle vespa",
1069
1036
  more: "3 archive badge bookmark dots etc favorite indent label remember save stamp sticker tab tag three",
1070
1037
  more_horiz: "3 application components dots etc horizontal interface ios pending screen status three ui ux website",
1071
1038
  more_time: "+ add clock date new plus schedule symbol",
@@ -1113,13 +1080,8 @@ export const iconSynonyms = {
1113
1080
  nightlight_round: "dark half mode moon",
1114
1081
  night_shelter: "architecture bed building estate homeless house place real sleep",
1115
1082
  nights_stay: "cloud crescent dark mode moon phases silence silent sky time weather",
1116
- nine_k: "9000 9K alphabet character digit display font letter number pixels resolution symbol text type video",
1117
- nine_k_plus: "+ 9000 9K alphabet character digit display font letter number pixels resolution symbol text type video",
1118
- nine_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
1119
- nineteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1120
1083
  no_accounts: "avatar disabled enabled face human offline people person profile slash thumbnail unavailable unidentifiable unknown user",
1121
1084
  no_backpack: "accessory bookbag knapsack travel",
1122
- no_cell: "Android device disabled enabled hardware iOS mobile off phone slash tablet",
1123
1085
  no_drinks: "alcohol beverage bottle cocktail food liquor wine",
1124
1086
  no_encryption: "disabled enabled lock off password safety security slash",
1125
1087
  no_encryption_gmailerrorred: "disabled enabled locked off slash",
@@ -1157,9 +1119,6 @@ export const iconSynonyms = {
1157
1119
  oil_barrel: "droplet gasoline nest water",
1158
1120
  ondemand_video: "Android chrome desktop device hardware iOS mac monitor play television tv web window",
1159
1121
  on_device_training: "arrow bulb call cell contact hardware idea inprogress light loading mobile model refresh renew restore reverse rotate telephone",
1160
- one_k: "1000 1K alphabet character digit display font letter number pixels resolution symbol text type video",
1161
- one_kk: "10000 10K alphabet character digit display font letter number pixels resolution symbol text type video",
1162
- one_k_plus: "+ 1000 1K alphabet character digit display font letter number pixels resolution symbol text type video",
1163
1122
  online_prediction: "bulb connection idea light network signal wireless",
1164
1123
  opacity: "color droplet hue inverted liquid palette tone water",
1165
1124
  open_in_browser: "arrow box new up website window",
@@ -1181,13 +1140,9 @@ export const iconSynonyms = {
1181
1140
  panorama: "angle image mountains photography picture view wide",
1182
1141
  panorama_fish_eye: "angle circle image photography picture wide",
1183
1142
  panorama_horizontal: "angle image photography picture wide",
1184
- panorama_horizontal_select: "angle image photography picture wide",
1185
1143
  panorama_photosphere: "angle horizontal image photography picture wide",
1186
- panorama_photosphere_select: "angle horizontal image photography picture wide",
1187
1144
  panorama_vertical: "angle image photography picture wide",
1188
- panorama_vertical_select: "angle image photography picture wide",
1189
1145
  panorama_wide_angle: "image photography picture",
1190
- panorama_wide_angle_select: "image photography picture",
1191
1146
  pan_tool: "drag fingers gesture hands human move scan stop touch wait",
1192
1147
  paragliding: "athlete athletic body entertainment exercise fly hobby human parachute people person skydiving social sports travel",
1193
1148
  park: "attraction fresh local nature outside plant tree",
@@ -1271,16 +1226,11 @@ export const iconSynonyms = {
1271
1226
  pin: "1 2 3 digit key login logout number password pattern security star symbol unlock",
1272
1227
  pinch: "arrows compress direction finger grasp hand navigation nip squeeze tweak",
1273
1228
  pin_drop: "destination direction gps location maps navigation place stop",
1274
- pinterest: "brand logo social",
1275
1229
  pivot_table_chart: "analytics arrows bars data diagram direction drive editing grid infographic measure metrics rotate sheet statistics tracking",
1276
- pix: "bill brazil card cash commerce credit currency finance money payment",
1277
1230
  place: "destination direction location maps navigation pin point stop",
1278
1231
  plagiarism: "document find glass look magnifying page paper search see",
1279
1232
  play_arrow: "controls media music player start video",
1280
1233
  play_circle: "arrow controls media music video",
1281
- play_circle_filled: "arrow controls media music start video",
1282
- play_circle_filled_white: "start",
1283
- play_circle_outline: "arrow controls media music start video",
1284
1234
  play_disabled: "controls enabled media music off slash video",
1285
1235
  play_for_work: "arrow circle down google half",
1286
1236
  play_lesson: "audio bookmark digital ebook lesson multimedia play reading ribbon",
@@ -1353,7 +1303,6 @@ export const iconSynonyms = {
1353
1303
  recommend: "approved circle confirm favorite gesture hand like reaction social support thumbs well",
1354
1304
  record_voice_over: "account face human people person profile recording sound speaking speech transcript user",
1355
1305
  rectangle: "four parallelograms polygons quadrilaterals recangle shape sides",
1356
- reddit: "brand logo social",
1357
1306
  redeem: "bill cart cash certificate coin commerce credit currency dollars giftcard money online payment present shopping",
1358
1307
  redo: "arrow backward forward next repeat rotate undo",
1359
1308
  reduce_capacity: "arrow body covid decrease down human people person social",
@@ -1496,10 +1445,6 @@ export const iconSynonyms = {
1496
1445
  settings_suggest: "change details gear options recommendation service suggestion system",
1497
1446
  settings_system_daydream: "backup cloud drive storage",
1498
1447
  settings_voice: "microphone recorder speaker",
1499
- seven_k: "7000 7K alphabet character digit display font letter number pixels resolution symbol text type video",
1500
- seven_k_plus: "+ 7000 7K alphabet character digit display font letter number pixels resolution symbol text type video",
1501
- seven_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
1502
- seventeen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1503
1448
  share: "android connect contect link multimedia multiple network options send shared sharing social",
1504
1449
  share_location: "destination direction gps maps pin place stop tracking",
1505
1450
  shield: "certified privacy private protection secure security verified",
@@ -1522,19 +1467,13 @@ export const iconSynonyms = {
1522
1467
  signal_cellular_4_bar: "data internet mobile network phone speed wifi wireless",
1523
1468
  signal_cellular_alt: "analytics bar chart data diagram infographic internet measure metrics mobile network phone statistics tracking wifi wireless",
1524
1469
  signal_cellular_connected_no_internet_0_bar: "! alert attention caution danger data error exclamation important mark mobile network notification phone symbol warning wifi wireless",
1525
- signal_cellular_connected_no_internet_1_bar: "network",
1526
- signal_cellular_connected_no_internet_2_bar: "network",
1527
- signal_cellular_connected_no_internet_3_bar: "network",
1528
1470
  signal_cellular_connected_no_internet_4_bar: "! alert attention caution danger data error exclamation important mark mobile network notification phone symbol warning wifi wireless",
1529
1471
  signal_cellular_nodata: "internet mobile network offline phone quit wifi wireless x",
1530
1472
  signal_cellular_no_sim: "camera card chip device disabled enabled memory network offline phone slash storage",
1531
1473
  signal_cellular_null: "data internet mobile network phone wifi wireless",
1532
1474
  signal_cellular_off: "data disabled enabled internet mobile network offline phone slash wifi wireless",
1533
1475
  signal_wifi_bad: "bar cancel cellular close data exit internet mobile network no phone quit remove stop wireless",
1534
- signal_wifi_connected_no_internet4: "cellular data mobile network offline phone wireless x",
1535
1476
  signal_wifi_off: "cellular data disabled enabled internet mobile network phone slash speed wireless",
1536
- signal_wifi_statusbar4_bar: "cellular data internet mobile network phone speed wireless",
1537
- signal_wifi_statusbar_connected_no_internet4: "! alert attention caution cellular danger data error exclamation important mark mobile network notification phone speed symbol warning wireless",
1538
1477
  signal_wifi_statusbar_null: "cellular data internet mobile network phone speed wireless",
1539
1478
  signpost: "arrow direction left maps right signal signs street traffic",
1540
1479
  sim_card: "camera chip device memory network phone storage",
@@ -1542,12 +1481,6 @@ export const iconSynonyms = {
1542
1481
  sim_card_download: "arrow camera chip device memory phone storage",
1543
1482
  single_bed: "bedroom double furniture home hotel house king night pillows queen rest sleep twin",
1544
1483
  sip: "alphabet call character dialer font initiation internet letter over phone protocol routing session symbol text type voice",
1545
- six_k: "6000 6K alphabet character digit display font letter number pixels resolution symbol text type video",
1546
- six_k_plus: "+ 6000 6K alphabet character digit display font letter number pixels resolution symbol text type video",
1547
- six_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
1548
- sixteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1549
- sixty_fps: "camera digit frames number symbol video",
1550
- sixty_fps_select: "camera digits frame frequency numbers per rate seconds video",
1551
1484
  skateboarding: "athlete athletic body entertainment exercise hobby human people person skateboarder social sports",
1552
1485
  skip_next: "arrow back controls forward music play previous transport video",
1553
1486
  skip_previous: "arrow backward controls forward music next play transport video",
@@ -1618,10 +1551,8 @@ export const iconSynonyms = {
1618
1551
  stairs: "down staircase up",
1619
1552
  star: "best bookmark favorite highlight ranking rate rating save toggle",
1620
1553
  star_border: "best bookmark favorite highlight outline ranking rate rating save toggle",
1621
- star_border_purple_500: "best bookmark favorite highlight outline ranking rate rating save toggle",
1622
1554
  star_half: "0.5 1/2 achievement bookmark favorite highlight important marked ranking rate rating reward saved shape special toggle",
1623
1555
  star_outline: "bookmark favorite half highlight ranking rate rating save toggle",
1624
- star_purple_500: "best bookmark favorite highlight ranking rate rating save toggle",
1625
1556
  star_rate: "achievement bookmark favorite highlight important marked ranking rating reward saved shape special",
1626
1557
  stars: "achievement bookmark circle favorite highlight important like love marked ranking rate rating reward saved shape special",
1627
1558
  start: "arrow keyboard next right",
@@ -1709,8 +1640,6 @@ export const iconSynonyms = {
1709
1640
  task: "approve check complete data document done drive file folders mark ok page paper select sheet slide tick validate verified writing yes",
1710
1641
  task_alt: "approve check circle complete done mark ok select tick validate verified yes",
1711
1642
  taxi_alert: "! attention automobile cab cars caution danger direction error exclamation important lyft maps mark notification public symbol transportation uber vehicle warning yellow",
1712
- telegram: "brand call chat logo messaging voice",
1713
- ten_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1714
1643
  terminal: "application code emulator program software",
1715
1644
  terrain: "geography landscape mountain",
1716
1645
  text_decrease: "- alphabet character font letter minus remove resize subtract symbol type",
@@ -1730,16 +1659,6 @@ export const iconSynonyms = {
1730
1659
  theaters: "film media movies photography showtimes video watch",
1731
1660
  thermostat: "forecast temperature weather",
1732
1661
  thermostat_auto: "A celsius fahrenheit temperature thermometer",
1733
- thirteen_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1734
- thirty_fps: "alphabet camera character digit font frames letter number symbol text type video",
1735
- thirty_fps_select: "camera digits frame frequency image numbers per rate seconds video",
1736
- three_d_rotation: "3d D alphabet arrows av camera character digit font letter number symbol text type vr",
1737
- three_g_mobiledata: "alphabet cellular character digit font letter network number phone signal speed symbol text type wifi",
1738
- three_k: "3000 3K alphabet character digit display font letter number pixels resolution symbol text type video",
1739
- three_k_plus: "+ 3000 3K alphabet character digit display font letter number pixels resolution symbol text type video",
1740
- three_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
1741
- three_p: "account avatar bubble chat comment communicate face human message party people person profile speech user",
1742
- three_sixty: "arrow av camera direction rotate rotation vr",
1743
1662
  thumb_down: "dislike downvote favorite fingers gesture hands ranking rate rating reject up",
1744
1663
  thumb_down_alt: "bad decline disapprove dislike feedback hand hate negative no reject social veto vote",
1745
1664
  thumb_down_off_alt: "bad decline disapprove dislike favorite feedback filled fingers gesture hands hate negative no ranking rate rating reject sad social veto vote",
@@ -1755,7 +1674,6 @@ export const iconSynonyms = {
1755
1674
  timer_3: "digits duration numbers seconds",
1756
1675
  timer_3_select: "alphabet camera character digit font letter number seconds symbol text type",
1757
1676
  timer_off: "alarm alart bell clock disabled duration enabled notification slash stopwatch",
1758
- times_one_mobiledata: "alphabet cellular character digit font letter network number phone signal speed symbol text type wifi",
1759
1677
  time_to_leave: "automobile cars destination direction drive estimate eta maps public transportation travel trip vehicle",
1760
1678
  tips_and_updates: "alert announcement electricity idea information lamp lightbulb stars",
1761
1679
  title: "T alphabet character font header letter subject symbol text type",
@@ -1799,16 +1717,6 @@ export const iconSynonyms = {
1799
1717
  turn_slight_right: "arrows directions maps navigation path route sharp sign traffic",
1800
1718
  tv: "device display linear living monitor room screencast stream television video wireless",
1801
1719
  tv_off: "Android chrome desktop device disabled enabled hardware iOS mac monitor slash television web window",
1802
- twelve_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1803
- twenty_four_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1804
- twenty_one_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1805
- twenty_three_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1806
- twenty_two_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1807
- twenty_zero_mp: "camera digits font image letters megapixels numbers quality resolution symbol text type",
1808
- twitter: "brand logo social",
1809
- two_k: "2000 2K alphabet character digit display font letter number pixels resolution symbol text type video",
1810
- two_k_plus: "+ alphabet character digit font letter number symbol text type",
1811
- two_mp: "camera digit font image letters megapixels number quality resolution symbol text type",
1812
1720
  two_wheeler: "automobile bicycle cars direction maps moped motorbike motorcycle public ride riding scooter transportation travel twom vehicle wheeler wheels",
1813
1721
  umbrella: "beach protection rain sunny",
1814
1722
  unarchive: "arrow inbox mail store undo up",
@@ -1938,7 +1846,6 @@ export const iconSynonyms = {
1938
1846
  wrong_location: "cancel close destination direction exit maps no pin place quit remove stop",
1939
1847
  wysiwyg: "composer mode screen software system text view visibility website window",
1940
1848
  yard: "backyard flower garden home house nature pettle plants",
1941
- you_tube: "brand logo social video",
1942
1849
  youtube_searched_for: "arrow backwards find glass history inprogress loading look magnifying refresh renew restore reverse rotate see yt",
1943
1850
  zoom_in: "bigger find glass grow look magnifier magnifying plus scale search see size",
1944
1851
  zoom_in_map: "arrows destination location maps move place stop",
@@ -38,7 +38,8 @@ export const resolveCollection = <M extends Record<string, any>, >
38
38
  values,
39
39
  previousValues,
40
40
  userConfigPersistence,
41
- fields
41
+ fields,
42
+ ignoreMissingFields = false
42
43
  }: {
43
44
  collection: EntityCollection<M> | ResolvedEntityCollection<M>;
44
45
  path: string,
@@ -47,6 +48,7 @@ export const resolveCollection = <M extends Record<string, any>, >
47
48
  previousValues?: Partial<EntityValues<M>>,
48
49
  userConfigPersistence?: UserConfigurationPersistence;
49
50
  fields?: Record<string, PropertyConfig>;
51
+ ignoreMissingFields?: boolean;
50
52
  }): ResolvedEntityCollection<M> => {
51
53
 
52
54
  const collectionOverride = userConfigPersistence?.getCollectionConfig<M>(path);
@@ -65,7 +67,8 @@ export const resolveCollection = <M extends Record<string, any>, >
65
67
  previousValues: usedPreviousValues,
66
68
  path,
67
69
  entityId,
68
- fields
70
+ fields,
71
+ ignoreMissingFields
69
72
  });
70
73
  if (!childResolvedProperty) return {};
71
74
  return ({
@@ -97,6 +100,7 @@ export const resolveCollection = <M extends Record<string, any>, >
97
100
  export function resolveProperty<T extends CMSType = CMSType, M extends Record<string, any> = any>({
98
101
  propertyOrBuilder,
99
102
  fromBuilder = false,
103
+ ignoreMissingFields = false,
100
104
  ...props
101
105
  }: {
102
106
  propertyKey?: string,
@@ -108,6 +112,7 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
108
112
  index?: number,
109
113
  fromBuilder?: boolean;
110
114
  fields?: Record<string, PropertyConfig<any>>;
115
+ ignoreMissingFields?: boolean;
111
116
  }): ResolvedProperty<T> | null {
112
117
 
113
118
  if (typeof propertyOrBuilder === "object" && "resolved" in propertyOrBuilder) {
@@ -139,12 +144,14 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
139
144
  resolvedProperty = resolveProperty({
140
145
  ...props,
141
146
  propertyOrBuilder: result,
142
- fromBuilder: true
147
+ fromBuilder: true,
148
+ ignoreMissingFields
143
149
  });
144
150
  } else {
145
151
  const property = propertyOrBuilder as Property<T>;
146
152
  if (property.dataType === "map" && property.properties) {
147
153
  const properties = resolveProperties({
154
+ ignoreMissingFields,
148
155
  ...props,
149
156
  properties: property.properties,
150
157
  });
@@ -158,6 +165,7 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
158
165
  resolvedProperty = resolveArrayProperty({
159
166
  property,
160
167
  fromBuilder,
168
+ ignoreMissingFields,
161
169
  ...props
162
170
  }) as ResolvedProperty<any>;
163
171
  } else if ((property.dataType === "string" || property.dataType === "number") && property.enumValues) {
@@ -175,10 +183,10 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
175
183
 
176
184
  if (resolvedProperty.propertyConfig && !isDefaultFieldConfigId(resolvedProperty.propertyConfig)) {
177
185
  const cmsFields = props.fields;
178
- if (!cmsFields) {
186
+ if (!cmsFields && !ignoreMissingFields) {
179
187
  throw Error(`Trying to resolve a property with key '${resolvedProperty.propertyConfig}' that inherits from a custom property config but no custom property configs were provided. Use the property 'propertyConfigs' in your app config to provide them`);
180
188
  }
181
- const customField: PropertyConfig<any> = cmsFields[resolvedProperty.propertyConfig];
189
+ const customField: PropertyConfig | undefined = cmsFields?.[resolvedProperty.propertyConfig];
182
190
  if (!customField) {
183
191
  console.warn(`Trying to resolve a property with key '${resolvedProperty.propertyConfig}' that inherits from a custom property config but no custom property config with that key was found. Check the 'propertyConfigs' in your app config`)
184
192
  console.warn("Available property configs", cmsFields);
@@ -191,6 +199,7 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
191
199
  }
192
200
  const customFieldProperty = resolveProperty<any>({
193
201
  propertyOrBuilder: configPropertyOrBuilder,
202
+ ignoreMissingFields,
194
203
  ...props
195
204
  });
196
205
  if (customFieldProperty) {
@@ -211,6 +220,7 @@ export function resolveProperty<T extends CMSType = CMSType, M extends Record<st
211
220
  export function resolveArrayProperty<T extends any[], M>({
212
221
  propertyKey,
213
222
  property,
223
+ ignoreMissingFields = false,
214
224
  ...props
215
225
  }: {
216
226
  propertyKey?: string,
@@ -222,6 +232,7 @@ export function resolveArrayProperty<T extends any[], M>({
222
232
  index?: number,
223
233
  fromBuilder?: boolean;
224
234
  fields?: Record<string, PropertyConfig>;
235
+ ignoreMissingFields?: boolean;
225
236
  }): ResolvedArrayProperty {
226
237
  const propertyValue = propertyKey ? getIn(props.values, propertyKey) : undefined;
227
238
 
@@ -235,6 +246,7 @@ export function resolveArrayProperty<T extends any[], M>({
235
246
  return resolveProperty({
236
247
  propertyKey: `${propertyKey}.${index}`,
237
248
  propertyOrBuilder: p as Property<any>,
249
+ ignoreMissingFields,
238
250
  ...props,
239
251
  index
240
252
  });
@@ -246,6 +258,7 @@ export function resolveArrayProperty<T extends any[], M>({
246
258
  ? propertyValue.map((v: any, index: number) => resolveProperty({
247
259
  propertyKey: `${propertyKey}.${index}`,
248
260
  propertyOrBuilder: of,
261
+ ignoreMissingFields,
249
262
  ...props,
250
263
  index
251
264
  })).filter(e => Boolean(e)) as ResolvedProperty[]
@@ -253,9 +266,10 @@ export function resolveArrayProperty<T extends any[], M>({
253
266
  const ofProperty = resolveProperty({
254
267
  propertyKey: `${propertyKey}`,
255
268
  propertyOrBuilder: of,
269
+ ignoreMissingFields,
256
270
  ...props
257
271
  });
258
- if (!ofProperty)
272
+ if (!ofProperty && !ignoreMissingFields)
259
273
  throw Error("When using a property builder as the 'of' prop of an ArrayProperty, you must return a valid child property")
260
274
  return {
261
275
  ...property,
@@ -275,12 +289,14 @@ export function resolveArrayProperty<T extends any[], M>({
275
289
  return resolveProperty({
276
290
  propertyKey: `${propertyKey}.${index}`,
277
291
  propertyOrBuilder: childProperty,
292
+ ignoreMissingFields,
278
293
  ...props
279
294
  });
280
295
  }).filter(e => Boolean(e)) as ResolvedProperty[]
281
296
  : [];
282
297
  const properties = resolveProperties<any>({
283
298
  properties: property.oneOf.properties,
299
+ ignoreMissingFields,
284
300
  ...props
285
301
  });
286
302
  return {
@@ -312,6 +328,7 @@ export function resolveArrayProperty<T extends any[], M>({
312
328
  */
313
329
  export function resolveProperties<M extends Record<string, any>>({
314
330
  properties,
331
+ ignoreMissingFields,
315
332
  ...props
316
333
  }: {
317
334
  properties: PropertiesOrBuilders<M>,
@@ -322,12 +339,14 @@ export function resolveProperties<M extends Record<string, any>>({
322
339
  index?: number,
323
340
  fromBuilder?: boolean;
324
341
  fields?: Record<string, PropertyConfig>;
342
+ ignoreMissingFields?: boolean;
325
343
  }): ResolvedProperties<M> {
326
344
  return Object.entries<PropertyOrBuilder>(properties as Record<string, PropertyOrBuilder>)
327
345
  .map(([key, property]) => {
328
346
  const childResolvedProperty = resolveProperty({
329
347
  propertyKey: key,
330
348
  propertyOrBuilder: property,
349
+ ignoreMissingFields,
331
350
  ...props
332
351
  });
333
352
  if (!childResolvedProperty) return {};
@@ -349,7 +368,7 @@ export function resolvePropertyEnum(property: StringProperty | NumberProperty, f
349
368
  return {
350
369
  ...property,
351
370
  resolved: true,
352
- enumValues: enumToObjectEntries(property.enumValues)?.filter((value) => value && value.id && value.label) ?? [],
371
+ enumValues: enumToObjectEntries(property.enumValues)?.filter((value) => value && (value.id || value.id === 0) && value.label) ?? [],
353
372
  fromBuilder: fromBuilder ?? false
354
373
  }
355
374
  }
@@ -1,2 +0,0 @@
1
- import { CustomizationController } from "../types/customization_controller";
2
- export declare function useBuildCustomizationController(controller: CustomizationController): CustomizationController;
@@ -1,5 +0,0 @@
1
- import { CustomizationController } from "../types/customization_controller";
2
-
3
- export function useBuildCustomizationController(controller: CustomizationController): CustomizationController {
4
- return controller;
5
- }