@airtable/blocks 0.0.0-experimental-3e47d4d04-20250909 → 0.0.0-experimental-446b49015-20251008

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 (449) hide show
  1. package/dist/esm/base/models/base.js +1 -35
  2. package/dist/esm/base/types/airtable_interface.js +1 -3
  3. package/dist/esm/base/ui/block_wrapper.js +131 -96
  4. package/dist/esm/base/ui/cell_renderer.js +5 -176
  5. package/dist/esm/base/ui/global_alert.js +7 -3
  6. package/dist/esm/base/ui/global_css_helpers.js +28 -0
  7. package/dist/esm/base/ui/ui.js +1 -21
  8. package/dist/esm/base/ui/unstable_standalone_ui.js +28 -26
  9. package/dist/esm/base/ui/use_loadable.js +2 -3
  10. package/dist/esm/interface/models/base.js +0 -5
  11. package/dist/esm/interface/models/record_store.js +3 -0
  12. package/dist/esm/interface/types/airtable_interface.js +2 -3
  13. package/dist/esm/interface/ui/block_wrapper.js +45 -54
  14. package/dist/esm/interface/ui/cell_renderer.js +19 -0
  15. package/dist/esm/interface/ui/global_css_helpers.js +17 -0
  16. package/dist/esm/interface/ui/ui.js +1 -1
  17. package/dist/esm/interface/ui/use_custom_properties.js +43 -14
  18. package/dist/esm/shared/models/base_core.js +18 -3
  19. package/dist/esm/shared/private_utils.js +51 -1
  20. package/dist/esm/shared/sdk_core.js +1 -1
  21. package/dist/esm/shared/ui/cell_renderer.js +137 -0
  22. package/dist/esm/shared/ui/use_watchable.js +2 -3
  23. package/dist/types/src/base/models/base.d.ts.map +1 -1
  24. package/dist/types/src/base/types/airtable_interface.d.ts +1 -3
  25. package/dist/types/src/base/types/airtable_interface.d.ts.map +1 -1
  26. package/dist/types/src/base/types/base.d.ts +0 -1
  27. package/dist/types/src/base/types/base.d.ts.map +1 -1
  28. package/dist/types/src/base/ui/block_wrapper.d.ts +2 -16
  29. package/dist/types/src/base/ui/block_wrapper.d.ts.map +1 -1
  30. package/dist/types/src/base/ui/cell_renderer.d.ts +6 -58
  31. package/dist/types/src/base/ui/cell_renderer.d.ts.map +1 -1
  32. package/dist/types/src/base/ui/global_css_helpers.d.ts +4 -0
  33. package/dist/types/src/base/ui/global_css_helpers.d.ts.map +1 -0
  34. package/dist/types/src/base/ui/ui.d.ts +1 -21
  35. package/dist/types/src/base/ui/ui.d.ts.map +1 -1
  36. package/dist/types/src/base/ui/unstable_standalone_ui.d.ts +2 -22
  37. package/dist/types/src/base/ui/unstable_standalone_ui.d.ts.map +1 -1
  38. package/dist/types/src/base/ui/use_loadable.d.ts.map +1 -1
  39. package/dist/types/src/interface/models/base.d.ts.map +1 -1
  40. package/dist/types/src/interface/types/airtable_interface.d.ts +6 -4
  41. package/dist/types/src/interface/types/airtable_interface.d.ts.map +1 -1
  42. package/dist/types/src/interface/ui/block_wrapper.d.ts +1 -4
  43. package/dist/types/src/interface/ui/block_wrapper.d.ts.map +1 -1
  44. package/dist/types/src/interface/ui/cell_renderer.d.ts +19 -0
  45. package/dist/types/src/interface/ui/cell_renderer.d.ts.map +1 -0
  46. package/dist/types/src/interface/ui/global_css_helpers.d.ts +3 -0
  47. package/dist/types/src/interface/ui/global_css_helpers.d.ts.map +1 -0
  48. package/dist/types/src/interface/ui/ui.d.ts +1 -1
  49. package/dist/types/src/interface/ui/ui.d.ts.map +1 -1
  50. package/dist/types/src/interface/ui/use_custom_properties.d.ts +7 -0
  51. package/dist/types/src/interface/ui/use_custom_properties.d.ts.map +1 -1
  52. package/dist/types/src/shared/models/base_core.d.ts.map +1 -1
  53. package/dist/types/src/shared/private_utils.d.ts +9 -1
  54. package/dist/types/src/shared/private_utils.d.ts.map +1 -1
  55. package/dist/types/src/shared/types/base_core.d.ts +1 -0
  56. package/dist/types/src/shared/types/base_core.d.ts.map +1 -1
  57. package/dist/types/src/shared/ui/cell_renderer.d.ts +32 -0
  58. package/dist/types/src/shared/ui/cell_renderer.d.ts.map +1 -0
  59. package/dist/types/src/shared/ui/use_watchable.d.ts.map +1 -1
  60. package/package.json +5 -39
  61. package/dist/esm/base/ui/baymax_utils.js +0 -455
  62. package/dist/esm/base/ui/box.js +0 -77
  63. package/dist/esm/base/ui/button.js +0 -143
  64. package/dist/esm/base/ui/choice_token.js +0 -84
  65. package/dist/esm/base/ui/collaborator_token.js +0 -115
  66. package/dist/esm/base/ui/color_palette.js +0 -185
  67. package/dist/esm/base/ui/color_palette_synced.js +0 -62
  68. package/dist/esm/base/ui/confirmation_dialog.js +0 -96
  69. package/dist/esm/base/ui/control_sizes.js +0 -92
  70. package/dist/esm/base/ui/create_detect_element_resize.js +0 -197
  71. package/dist/esm/base/ui/css_helpers.js +0 -17
  72. package/dist/esm/base/ui/dialog.js +0 -93
  73. package/dist/esm/base/ui/dialog_close_button.js +0 -96
  74. package/dist/esm/base/ui/field_icon.js +0 -37
  75. package/dist/esm/base/ui/field_picker.js +0 -91
  76. package/dist/esm/base/ui/field_picker_synced.js +0 -59
  77. package/dist/esm/base/ui/form_field.js +0 -102
  78. package/dist/esm/base/ui/geometry/geometry.js +0 -9
  79. package/dist/esm/base/ui/geometry/point.js +0 -12
  80. package/dist/esm/base/ui/geometry/rect.js +0 -44
  81. package/dist/esm/base/ui/geometry/size.js +0 -12
  82. package/dist/esm/base/ui/heading.js +0 -125
  83. package/dist/esm/base/ui/icon.js +0 -102
  84. package/dist/esm/base/ui/icon_config.js +0 -423
  85. package/dist/esm/base/ui/input.js +0 -152
  86. package/dist/esm/base/ui/input_synced.js +0 -59
  87. package/dist/esm/base/ui/key_codes.js +0 -66
  88. package/dist/esm/base/ui/label.js +0 -73
  89. package/dist/esm/base/ui/link.js +0 -189
  90. package/dist/esm/base/ui/loader.js +0 -52
  91. package/dist/esm/base/ui/modal.js +0 -135
  92. package/dist/esm/base/ui/model_picker_select.js +0 -50
  93. package/dist/esm/base/ui/popover.js +0 -312
  94. package/dist/esm/base/ui/progress_bar.js +0 -106
  95. package/dist/esm/base/ui/record_card.js +0 -556
  96. package/dist/esm/base/ui/record_card_list.js +0 -292
  97. package/dist/esm/base/ui/select.js +0 -182
  98. package/dist/esm/base/ui/select_and_select_buttons_helpers.js +0 -53
  99. package/dist/esm/base/ui/select_buttons.js +0 -150
  100. package/dist/esm/base/ui/select_buttons_synced.js +0 -55
  101. package/dist/esm/base/ui/select_synced.js +0 -58
  102. package/dist/esm/base/ui/switch.js +0 -160
  103. package/dist/esm/base/ui/switch_synced.js +0 -46
  104. package/dist/esm/base/ui/synced.js +0 -39
  105. package/dist/esm/base/ui/system/all_styles_set.js +0 -86
  106. package/dist/esm/base/ui/system/appearance/appearance_set.js +0 -21
  107. package/dist/esm/base/ui/system/appearance/background_color.js +0 -12
  108. package/dist/esm/base/ui/system/appearance/border.js +0 -48
  109. package/dist/esm/base/ui/system/appearance/border_radius.js +0 -12
  110. package/dist/esm/base/ui/system/appearance/box_shadow.js +0 -12
  111. package/dist/esm/base/ui/system/appearance/opacity.js +0 -12
  112. package/dist/esm/base/ui/system/dimensions/dimensions_set.js +0 -23
  113. package/dist/esm/base/ui/system/dimensions/height.js +0 -12
  114. package/dist/esm/base/ui/system/dimensions/max_height.js +0 -12
  115. package/dist/esm/base/ui/system/dimensions/max_width.js +0 -12
  116. package/dist/esm/base/ui/system/dimensions/min_height.js +0 -12
  117. package/dist/esm/base/ui/system/dimensions/min_width.js +0 -12
  118. package/dist/esm/base/ui/system/dimensions/width.js +0 -12
  119. package/dist/esm/base/ui/system/display.js +0 -13
  120. package/dist/esm/base/ui/system/flex_container/align_content.js +0 -9
  121. package/dist/esm/base/ui/system/flex_container/align_items.js +0 -9
  122. package/dist/esm/base/ui/system/flex_container/flex_container_set.js +0 -23
  123. package/dist/esm/base/ui/system/flex_container/flex_direction.js +0 -9
  124. package/dist/esm/base/ui/system/flex_container/flex_wrap.js +0 -9
  125. package/dist/esm/base/ui/system/flex_container/justify_content.js +0 -9
  126. package/dist/esm/base/ui/system/flex_container/justify_items.js +0 -10
  127. package/dist/esm/base/ui/system/flex_item/align_self.js +0 -9
  128. package/dist/esm/base/ui/system/flex_item/flex.js +0 -9
  129. package/dist/esm/base/ui/system/flex_item/flex_basis.js +0 -9
  130. package/dist/esm/base/ui/system/flex_item/flex_grow.js +0 -9
  131. package/dist/esm/base/ui/system/flex_item/flex_item_set.js +0 -25
  132. package/dist/esm/base/ui/system/flex_item/flex_shrink.js +0 -9
  133. package/dist/esm/base/ui/system/flex_item/justify_self.js +0 -10
  134. package/dist/esm/base/ui/system/flex_item/order.js +0 -9
  135. package/dist/esm/base/ui/system/index.js +0 -96
  136. package/dist/esm/base/ui/system/overflow.js +0 -15
  137. package/dist/esm/base/ui/system/position/bottom.js +0 -17
  138. package/dist/esm/base/ui/system/position/left.js +0 -17
  139. package/dist/esm/base/ui/system/position/position.js +0 -9
  140. package/dist/esm/base/ui/system/position/position_set.js +0 -23
  141. package/dist/esm/base/ui/system/position/right.js +0 -17
  142. package/dist/esm/base/ui/system/position/top.js +0 -17
  143. package/dist/esm/base/ui/system/position/z_index.js +0 -12
  144. package/dist/esm/base/ui/system/spacing/margin.js +0 -65
  145. package/dist/esm/base/ui/system/spacing/padding.js +0 -58
  146. package/dist/esm/base/ui/system/spacing/spacing_set.js +0 -15
  147. package/dist/esm/base/ui/system/typography/font_family.js +0 -12
  148. package/dist/esm/base/ui/system/typography/font_size.js +0 -12
  149. package/dist/esm/base/ui/system/typography/font_style.js +0 -9
  150. package/dist/esm/base/ui/system/typography/font_weight.js +0 -12
  151. package/dist/esm/base/ui/system/typography/letter_spacing.js +0 -12
  152. package/dist/esm/base/ui/system/typography/line_height.js +0 -9
  153. package/dist/esm/base/ui/system/typography/text_align.js +0 -9
  154. package/dist/esm/base/ui/system/typography/text_color.js +0 -12
  155. package/dist/esm/base/ui/system/typography/text_decoration.js +0 -9
  156. package/dist/esm/base/ui/system/typography/text_transform.js +0 -9
  157. package/dist/esm/base/ui/system/typography/typography_set.js +0 -31
  158. package/dist/esm/base/ui/system/utils/csstype.js +0 -1
  159. package/dist/esm/base/ui/system/utils/ensure_numbers_are_within_scale.js +0 -36
  160. package/dist/esm/base/ui/system/utils/get_style_props_for_responsive_prop.js +0 -67
  161. package/dist/esm/base/ui/system/utils/types.js +0 -1
  162. package/dist/esm/base/ui/table_picker.js +0 -64
  163. package/dist/esm/base/ui/table_picker_synced.js +0 -55
  164. package/dist/esm/base/ui/text.js +0 -109
  165. package/dist/esm/base/ui/text_button.js +0 -189
  166. package/dist/esm/base/ui/theme/default_theme/button_variants.js +0 -53
  167. package/dist/esm/base/ui/theme/default_theme/control_sizes.js +0 -96
  168. package/dist/esm/base/ui/theme/default_theme/heading_styles.js +0 -93
  169. package/dist/esm/base/ui/theme/default_theme/index.js +0 -31
  170. package/dist/esm/base/ui/theme/default_theme/input_variants.js +0 -32
  171. package/dist/esm/base/ui/theme/default_theme/link_variants.js +0 -29
  172. package/dist/esm/base/ui/theme/default_theme/select_buttons_variants.js +0 -66
  173. package/dist/esm/base/ui/theme/default_theme/select_variants.js +0 -44
  174. package/dist/esm/base/ui/theme/default_theme/switch_variants.js +0 -78
  175. package/dist/esm/base/ui/theme/default_theme/text_button_variants.js +0 -38
  176. package/dist/esm/base/ui/theme/default_theme/text_styles.js +0 -75
  177. package/dist/esm/base/ui/theme/default_theme/tokens.js +0 -205
  178. package/dist/esm/base/ui/theme/theme_context.js +0 -7
  179. package/dist/esm/base/ui/theme/use_theme.js +0 -4
  180. package/dist/esm/base/ui/tooltip.js +0 -165
  181. package/dist/esm/base/ui/types/aria_props.js +0 -1
  182. package/dist/esm/base/ui/types/data_attributes_prop.js +0 -1
  183. package/dist/esm/base/ui/types/tooltip_anchor_props.js +0 -1
  184. package/dist/esm/base/ui/use_form_field.js +0 -14
  185. package/dist/esm/base/ui/use_styled_system.js +0 -19
  186. package/dist/esm/base/ui/use_text_color_for_background_color.js +0 -9
  187. package/dist/esm/base/ui/view_picker.js +0 -82
  188. package/dist/esm/base/ui/view_picker_synced.js +0 -59
  189. package/dist/esm/base/ui/viewport_constraint.js +0 -120
  190. package/dist/esm/base/ui/with_styled_system.js +0 -120
  191. package/dist/types/src/base/ui/baymax_utils.d.ts +0 -2
  192. package/dist/types/src/base/ui/baymax_utils.d.ts.map +0 -1
  193. package/dist/types/src/base/ui/box.d.ts +0 -35
  194. package/dist/types/src/base/ui/box.d.ts.map +0 -1
  195. package/dist/types/src/base/ui/button.d.ts +0 -86
  196. package/dist/types/src/base/ui/button.d.ts.map +0 -1
  197. package/dist/types/src/base/ui/choice_token.d.ts +0 -49
  198. package/dist/types/src/base/ui/choice_token.d.ts.map +0 -1
  199. package/dist/types/src/base/ui/collaborator_token.d.ts +0 -45
  200. package/dist/types/src/base/ui/collaborator_token.d.ts.map +0 -1
  201. package/dist/types/src/base/ui/color_palette.d.ts +0 -77
  202. package/dist/types/src/base/ui/color_palette.d.ts.map +0 -1
  203. package/dist/types/src/base/ui/color_palette_synced.d.ts +0 -30
  204. package/dist/types/src/base/ui/color_palette_synced.d.ts.map +0 -1
  205. package/dist/types/src/base/ui/confirmation_dialog.d.ts +0 -66
  206. package/dist/types/src/base/ui/confirmation_dialog.d.ts.map +0 -1
  207. package/dist/types/src/base/ui/control_sizes.d.ts +0 -16
  208. package/dist/types/src/base/ui/control_sizes.d.ts.map +0 -1
  209. package/dist/types/src/base/ui/css_helpers.d.ts +0 -6
  210. package/dist/types/src/base/ui/css_helpers.d.ts.map +0 -1
  211. package/dist/types/src/base/ui/dialog.d.ts +0 -58
  212. package/dist/types/src/base/ui/dialog.d.ts.map +0 -1
  213. package/dist/types/src/base/ui/dialog_close_button.d.ts +0 -40
  214. package/dist/types/src/base/ui/dialog_close_button.d.ts.map +0 -1
  215. package/dist/types/src/base/ui/field_icon.d.ts +0 -25
  216. package/dist/types/src/base/ui/field_icon.d.ts.map +0 -1
  217. package/dist/types/src/base/ui/field_picker.d.ts +0 -34
  218. package/dist/types/src/base/ui/field_picker.d.ts.map +0 -1
  219. package/dist/types/src/base/ui/field_picker_synced.d.ts +0 -18
  220. package/dist/types/src/base/ui/field_picker_synced.d.ts.map +0 -1
  221. package/dist/types/src/base/ui/form_field.d.ts +0 -42
  222. package/dist/types/src/base/ui/form_field.d.ts.map +0 -1
  223. package/dist/types/src/base/ui/geometry/geometry.d.ts +0 -3
  224. package/dist/types/src/base/ui/geometry/geometry.d.ts.map +0 -1
  225. package/dist/types/src/base/ui/geometry/point.d.ts +0 -2
  226. package/dist/types/src/base/ui/geometry/point.d.ts.map +0 -1
  227. package/dist/types/src/base/ui/geometry/rect.d.ts +0 -2
  228. package/dist/types/src/base/ui/geometry/rect.d.ts.map +0 -1
  229. package/dist/types/src/base/ui/geometry/size.d.ts +0 -2
  230. package/dist/types/src/base/ui/geometry/size.d.ts.map +0 -1
  231. package/dist/types/src/base/ui/heading.d.ts +0 -64
  232. package/dist/types/src/base/ui/heading.d.ts.map +0 -1
  233. package/dist/types/src/base/ui/icon.d.ts +0 -45
  234. package/dist/types/src/base/ui/icon.d.ts.map +0 -1
  235. package/dist/types/src/base/ui/icon_config.d.ts +0 -424
  236. package/dist/types/src/base/ui/icon_config.d.ts.map +0 -1
  237. package/dist/types/src/base/ui/input.d.ts +0 -120
  238. package/dist/types/src/base/ui/input.d.ts.map +0 -1
  239. package/dist/types/src/base/ui/input_synced.d.ts +0 -18
  240. package/dist/types/src/base/ui/input_synced.d.ts.map +0 -1
  241. package/dist/types/src/base/ui/key_codes.d.ts +0 -2
  242. package/dist/types/src/base/ui/key_codes.d.ts.map +0 -1
  243. package/dist/types/src/base/ui/label.d.ts +0 -35
  244. package/dist/types/src/base/ui/label.d.ts.map +0 -1
  245. package/dist/types/src/base/ui/link.d.ts +0 -84
  246. package/dist/types/src/base/ui/link.d.ts.map +0 -1
  247. package/dist/types/src/base/ui/loader.d.ts +0 -38
  248. package/dist/types/src/base/ui/loader.d.ts.map +0 -1
  249. package/dist/types/src/base/ui/modal.d.ts +0 -54
  250. package/dist/types/src/base/ui/modal.d.ts.map +0 -1
  251. package/dist/types/src/base/ui/model_picker_select.d.ts +0 -19
  252. package/dist/types/src/base/ui/model_picker_select.d.ts.map +0 -1
  253. package/dist/types/src/base/ui/popover.d.ts +0 -106
  254. package/dist/types/src/base/ui/popover.d.ts.map +0 -1
  255. package/dist/types/src/base/ui/progress_bar.d.ts +0 -60
  256. package/dist/types/src/base/ui/progress_bar.d.ts.map +0 -1
  257. package/dist/types/src/base/ui/record_card.d.ts +0 -80
  258. package/dist/types/src/base/ui/record_card.d.ts.map +0 -1
  259. package/dist/types/src/base/ui/record_card_list.d.ts +0 -88
  260. package/dist/types/src/base/ui/record_card_list.d.ts.map +0 -1
  261. package/dist/types/src/base/ui/select.d.ts +0 -82
  262. package/dist/types/src/base/ui/select.d.ts.map +0 -1
  263. package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts +0 -25
  264. package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts.map +0 -1
  265. package/dist/types/src/base/ui/select_buttons.d.ts +0 -56
  266. package/dist/types/src/base/ui/select_buttons.d.ts.map +0 -1
  267. package/dist/types/src/base/ui/select_buttons_synced.d.ts +0 -18
  268. package/dist/types/src/base/ui/select_buttons_synced.d.ts.map +0 -1
  269. package/dist/types/src/base/ui/select_synced.d.ts +0 -18
  270. package/dist/types/src/base/ui/select_synced.d.ts.map +0 -1
  271. package/dist/types/src/base/ui/switch.d.ts +0 -82
  272. package/dist/types/src/base/ui/switch.d.ts.map +0 -1
  273. package/dist/types/src/base/ui/switch_synced.d.ts +0 -18
  274. package/dist/types/src/base/ui/switch_synced.d.ts.map +0 -1
  275. package/dist/types/src/base/ui/synced.d.ts +0 -23
  276. package/dist/types/src/base/ui/synced.d.ts.map +0 -1
  277. package/dist/types/src/base/ui/system/all_styles_set.d.ts +0 -85
  278. package/dist/types/src/base/ui/system/all_styles_set.d.ts.map +0 -1
  279. package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts +0 -14
  280. package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts.map +0 -1
  281. package/dist/types/src/base/ui/system/appearance/background_color.d.ts +0 -12
  282. package/dist/types/src/base/ui/system/appearance/background_color.d.ts.map +0 -1
  283. package/dist/types/src/base/ui/system/appearance/border.d.ts +0 -30
  284. package/dist/types/src/base/ui/system/appearance/border.d.ts.map +0 -1
  285. package/dist/types/src/base/ui/system/appearance/border_radius.d.ts +0 -12
  286. package/dist/types/src/base/ui/system/appearance/border_radius.d.ts.map +0 -1
  287. package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts +0 -12
  288. package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts.map +0 -1
  289. package/dist/types/src/base/ui/system/appearance/opacity.d.ts +0 -12
  290. package/dist/types/src/base/ui/system/appearance/opacity.d.ts.map +0 -1
  291. package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts +0 -15
  292. package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts.map +0 -1
  293. package/dist/types/src/base/ui/system/dimensions/height.d.ts +0 -12
  294. package/dist/types/src/base/ui/system/dimensions/height.d.ts.map +0 -1
  295. package/dist/types/src/base/ui/system/dimensions/max_height.d.ts +0 -12
  296. package/dist/types/src/base/ui/system/dimensions/max_height.d.ts.map +0 -1
  297. package/dist/types/src/base/ui/system/dimensions/max_width.d.ts +0 -12
  298. package/dist/types/src/base/ui/system/dimensions/max_width.d.ts.map +0 -1
  299. package/dist/types/src/base/ui/system/dimensions/min_height.d.ts +0 -12
  300. package/dist/types/src/base/ui/system/dimensions/min_height.d.ts.map +0 -1
  301. package/dist/types/src/base/ui/system/dimensions/min_width.d.ts +0 -12
  302. package/dist/types/src/base/ui/system/dimensions/min_width.d.ts.map +0 -1
  303. package/dist/types/src/base/ui/system/dimensions/width.d.ts +0 -12
  304. package/dist/types/src/base/ui/system/dimensions/width.d.ts.map +0 -1
  305. package/dist/types/src/base/ui/system/display.d.ts +0 -13
  306. package/dist/types/src/base/ui/system/display.d.ts.map +0 -1
  307. package/dist/types/src/base/ui/system/flex_container/align_content.d.ts +0 -12
  308. package/dist/types/src/base/ui/system/flex_container/align_content.d.ts.map +0 -1
  309. package/dist/types/src/base/ui/system/flex_container/align_items.d.ts +0 -12
  310. package/dist/types/src/base/ui/system/flex_container/align_items.d.ts.map +0 -1
  311. package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts +0 -15
  312. package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts.map +0 -1
  313. package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts +0 -12
  314. package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts.map +0 -1
  315. package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts +0 -12
  316. package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts.map +0 -1
  317. package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts +0 -12
  318. package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts.map +0 -1
  319. package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts +0 -12
  320. package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts.map +0 -1
  321. package/dist/types/src/base/ui/system/flex_item/align_self.d.ts +0 -12
  322. package/dist/types/src/base/ui/system/flex_item/align_self.d.ts.map +0 -1
  323. package/dist/types/src/base/ui/system/flex_item/flex.d.ts +0 -12
  324. package/dist/types/src/base/ui/system/flex_item/flex.d.ts.map +0 -1
  325. package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts +0 -12
  326. package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts.map +0 -1
  327. package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts +0 -12
  328. package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts.map +0 -1
  329. package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts +0 -16
  330. package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts.map +0 -1
  331. package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts +0 -12
  332. package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts.map +0 -1
  333. package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts +0 -12
  334. package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts.map +0 -1
  335. package/dist/types/src/base/ui/system/flex_item/order.d.ts +0 -12
  336. package/dist/types/src/base/ui/system/flex_item/order.d.ts.map +0 -1
  337. package/dist/types/src/base/ui/system/index.d.ts +0 -106
  338. package/dist/types/src/base/ui/system/index.d.ts.map +0 -1
  339. package/dist/types/src/base/ui/system/overflow.d.ts +0 -17
  340. package/dist/types/src/base/ui/system/overflow.d.ts.map +0 -1
  341. package/dist/types/src/base/ui/system/position/bottom.d.ts +0 -12
  342. package/dist/types/src/base/ui/system/position/bottom.d.ts.map +0 -1
  343. package/dist/types/src/base/ui/system/position/left.d.ts +0 -12
  344. package/dist/types/src/base/ui/system/position/left.d.ts.map +0 -1
  345. package/dist/types/src/base/ui/system/position/position.d.ts +0 -12
  346. package/dist/types/src/base/ui/system/position/position.d.ts.map +0 -1
  347. package/dist/types/src/base/ui/system/position/position_set.d.ts +0 -15
  348. package/dist/types/src/base/ui/system/position/position_set.d.ts.map +0 -1
  349. package/dist/types/src/base/ui/system/position/right.d.ts +0 -12
  350. package/dist/types/src/base/ui/system/position/right.d.ts.map +0 -1
  351. package/dist/types/src/base/ui/system/position/top.d.ts +0 -12
  352. package/dist/types/src/base/ui/system/position/top.d.ts.map +0 -1
  353. package/dist/types/src/base/ui/system/position/z_index.d.ts +0 -12
  354. package/dist/types/src/base/ui/system/position/z_index.d.ts.map +0 -1
  355. package/dist/types/src/base/ui/system/spacing/margin.d.ts +0 -24
  356. package/dist/types/src/base/ui/system/spacing/margin.d.ts.map +0 -1
  357. package/dist/types/src/base/ui/system/spacing/padding.d.ts +0 -24
  358. package/dist/types/src/base/ui/system/spacing/padding.d.ts.map +0 -1
  359. package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts +0 -11
  360. package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts.map +0 -1
  361. package/dist/types/src/base/ui/system/typography/font_family.d.ts +0 -12
  362. package/dist/types/src/base/ui/system/typography/font_family.d.ts.map +0 -1
  363. package/dist/types/src/base/ui/system/typography/font_size.d.ts +0 -12
  364. package/dist/types/src/base/ui/system/typography/font_size.d.ts.map +0 -1
  365. package/dist/types/src/base/ui/system/typography/font_style.d.ts +0 -12
  366. package/dist/types/src/base/ui/system/typography/font_style.d.ts.map +0 -1
  367. package/dist/types/src/base/ui/system/typography/font_weight.d.ts +0 -12
  368. package/dist/types/src/base/ui/system/typography/font_weight.d.ts.map +0 -1
  369. package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts +0 -12
  370. package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts.map +0 -1
  371. package/dist/types/src/base/ui/system/typography/line_height.d.ts +0 -12
  372. package/dist/types/src/base/ui/system/typography/line_height.d.ts.map +0 -1
  373. package/dist/types/src/base/ui/system/typography/text_align.d.ts +0 -12
  374. package/dist/types/src/base/ui/system/typography/text_align.d.ts.map +0 -1
  375. package/dist/types/src/base/ui/system/typography/text_color.d.ts +0 -16
  376. package/dist/types/src/base/ui/system/typography/text_color.d.ts.map +0 -1
  377. package/dist/types/src/base/ui/system/typography/text_decoration.d.ts +0 -14
  378. package/dist/types/src/base/ui/system/typography/text_decoration.d.ts.map +0 -1
  379. package/dist/types/src/base/ui/system/typography/text_transform.d.ts +0 -12
  380. package/dist/types/src/base/ui/system/typography/text_transform.d.ts.map +0 -1
  381. package/dist/types/src/base/ui/system/typography/typography_set.d.ts +0 -19
  382. package/dist/types/src/base/ui/system/typography/typography_set.d.ts.map +0 -1
  383. package/dist/types/src/base/ui/system/utils/csstype.d.ts +0 -3977
  384. package/dist/types/src/base/ui/system/utils/csstype.d.ts.map +0 -1
  385. package/dist/types/src/base/ui/system/utils/ensure_numbers_are_within_scale.d.ts +0 -2
  386. package/dist/types/src/base/ui/system/utils/ensure_numbers_are_within_scale.d.ts.map +0 -1
  387. package/dist/types/src/base/ui/system/utils/get_style_props_for_responsive_prop.d.ts +0 -2
  388. package/dist/types/src/base/ui/system/utils/get_style_props_for_responsive_prop.d.ts.map +0 -1
  389. package/dist/types/src/base/ui/system/utils/types.d.ts +0 -31
  390. package/dist/types/src/base/ui/system/utils/types.d.ts.map +0 -1
  391. package/dist/types/src/base/ui/table_picker.d.ts +0 -28
  392. package/dist/types/src/base/ui/table_picker.d.ts.map +0 -1
  393. package/dist/types/src/base/ui/table_picker_synced.d.ts +0 -18
  394. package/dist/types/src/base/ui/table_picker_synced.d.ts.map +0 -1
  395. package/dist/types/src/base/ui/text.d.ts +0 -66
  396. package/dist/types/src/base/ui/text.d.ts.map +0 -1
  397. package/dist/types/src/base/ui/text_button.d.ts +0 -83
  398. package/dist/types/src/base/ui/text_button.d.ts.map +0 -1
  399. package/dist/types/src/base/ui/theme/default_theme/button_variants.d.ts +0 -8
  400. package/dist/types/src/base/ui/theme/default_theme/button_variants.d.ts.map +0 -1
  401. package/dist/types/src/base/ui/theme/default_theme/control_sizes.d.ts +0 -107
  402. package/dist/types/src/base/ui/theme/default_theme/control_sizes.d.ts.map +0 -1
  403. package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts +0 -11
  404. package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts.map +0 -1
  405. package/dist/types/src/base/ui/theme/default_theme/index.d.ts +0 -342
  406. package/dist/types/src/base/ui/theme/default_theme/index.d.ts.map +0 -1
  407. package/dist/types/src/base/ui/theme/default_theme/input_variants.d.ts +0 -5
  408. package/dist/types/src/base/ui/theme/default_theme/input_variants.d.ts.map +0 -1
  409. package/dist/types/src/base/ui/theme/default_theme/link_variants.d.ts +0 -7
  410. package/dist/types/src/base/ui/theme/default_theme/link_variants.d.ts.map +0 -1
  411. package/dist/types/src/base/ui/theme/default_theme/select_buttons_variants.d.ts +0 -8
  412. package/dist/types/src/base/ui/theme/default_theme/select_buttons_variants.d.ts.map +0 -1
  413. package/dist/types/src/base/ui/theme/default_theme/select_variants.d.ts +0 -5
  414. package/dist/types/src/base/ui/theme/default_theme/select_variants.d.ts.map +0 -1
  415. package/dist/types/src/base/ui/theme/default_theme/switch_variants.d.ts +0 -16
  416. package/dist/types/src/base/ui/theme/default_theme/switch_variants.d.ts.map +0 -1
  417. package/dist/types/src/base/ui/theme/default_theme/text_button_variants.d.ts +0 -7
  418. package/dist/types/src/base/ui/theme/default_theme/text_button_variants.d.ts.map +0 -1
  419. package/dist/types/src/base/ui/theme/default_theme/text_styles.d.ts +0 -76
  420. package/dist/types/src/base/ui/theme/default_theme/text_styles.d.ts.map +0 -1
  421. package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts +0 -111
  422. package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts.map +0 -1
  423. package/dist/types/src/base/ui/theme/theme_context.d.ts +0 -342
  424. package/dist/types/src/base/ui/theme/theme_context.d.ts.map +0 -1
  425. package/dist/types/src/base/ui/theme/use_theme.d.ts +0 -342
  426. package/dist/types/src/base/ui/theme/use_theme.d.ts.map +0 -1
  427. package/dist/types/src/base/ui/tooltip.d.ts +0 -64
  428. package/dist/types/src/base/ui/tooltip.d.ts.map +0 -1
  429. package/dist/types/src/base/ui/types/aria_props.d.ts +0 -22
  430. package/dist/types/src/base/ui/types/aria_props.d.ts.map +0 -1
  431. package/dist/types/src/base/ui/types/data_attributes_prop.d.ts +0 -10
  432. package/dist/types/src/base/ui/types/data_attributes_prop.d.ts.map +0 -1
  433. package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +0 -13
  434. package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts.map +0 -1
  435. package/dist/types/src/base/ui/use_form_field.d.ts +0 -2
  436. package/dist/types/src/base/ui/use_form_field.d.ts.map +0 -1
  437. package/dist/types/src/base/ui/use_styled_system.d.ts +0 -2
  438. package/dist/types/src/base/ui/use_styled_system.d.ts.map +0 -1
  439. package/dist/types/src/base/ui/use_text_color_for_background_color.d.ts +0 -2
  440. package/dist/types/src/base/ui/use_text_color_for_background_color.d.ts.map +0 -1
  441. package/dist/types/src/base/ui/view_picker.d.ts +0 -34
  442. package/dist/types/src/base/ui/view_picker.d.ts.map +0 -1
  443. package/dist/types/src/base/ui/view_picker_synced.d.ts +0 -18
  444. package/dist/types/src/base/ui/view_picker_synced.d.ts.map +0 -1
  445. package/dist/types/src/base/ui/viewport_constraint.d.ts +0 -57
  446. package/dist/types/src/base/ui/viewport_constraint.d.ts.map +0 -1
  447. package/dist/types/src/base/ui/with_styled_system.d.ts +0 -2
  448. package/dist/types/src/base/ui/with_styled_system.d.ts.map +0 -1
  449. package/types/styled-system__core.d.ts +0 -41
@@ -1,102 +0,0 @@
1
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- /** @module @airtable/blocks/ui: FormField */ /** */
3
- import React, { useState } from 'react';
4
- import { cx } from 'emotion';
5
- import { compose } from '@styled-system/core';
6
- import { getLocallyUniqueId } from '../../shared/private_utils';
7
- import Box from './box';
8
- import Text, { TextSize } from './text';
9
- import Label from './label';
10
- import { FormFieldContext } from './use_form_field';
11
- import useStyledSystem from './use_styled_system';
12
- import { maxWidth, minWidth, width, flexItemSet, positionSet, spacingSet } from './system';
13
-
14
- /**
15
- * Style props for the {@link FormField} component. Accepts:
16
- * * {@link FlexItemSetProps}
17
- * * {@link MaxWidthProps}
18
- * * {@link MinWidthProps}
19
- * * {@link PositionSetProps}
20
- * * {@link SpacingSetProps}
21
- * * {@link WidthProps}
22
- *
23
- * @noInheritDoc
24
- */
25
-
26
- const styleParser = compose(maxWidth, minWidth, width, flexItemSet, positionSet, spacingSet);
27
-
28
- /**
29
- * Props for the {@link FormField} component. Also accepts:
30
- * * {@link FormFieldStyleProps}
31
- *
32
- * @noInheritDoc
33
- * @docsPath UI/components/FormField
34
- */
35
-
36
- /**
37
- * A form field component that wraps any control field, supplying a provided label and optional
38
- * description.
39
- *
40
- * [[ Story id="formfield--example" title="Form field example" ]]
41
- *
42
- * This component will automatically set up the `for` attribute on the outputted label with the `id` attribute
43
- * on the wrapped control field for the following UI components: Label, Select, FieldPicker,
44
- * ModelPicker, and ViewPicker. If you'd like to manually override this behavior, you can provide an
45
- * `htmlFor` prop to this component and manually set the `id` attribute on your wrapped control to
46
- * the same value.
47
- *
48
- * @docsPath UI/components/FormField
49
- * @component
50
- */
51
- const FormField = (props, ref) => {
52
- const {
53
- id,
54
- className,
55
- style,
56
- label = TextSize.default,
57
- htmlFor,
58
- description,
59
- children,
60
- ...styleProps
61
- } = props;
62
- const classNameForStyleProps = useStyledSystem({
63
- width: '100%',
64
- ...styleProps
65
- }, styleParser);
66
- const [generatedId] = useState(getLocallyUniqueId('form-field-'));
67
- const controlId = htmlFor || generatedId;
68
- const [generatedDescriptionId] = useState(getLocallyUniqueId('input-description-'));
69
- const descriptionId = description ? generatedDescriptionId : '';
70
- let optionalLabelProps;
71
- if (description) {
72
- optionalLabelProps = {
73
- marginBottom: 1
74
- };
75
- }
76
- return /*#__PURE__*/React.createElement(Box, {
77
- ref: ref,
78
- id: id,
79
- className: cx(classNameForStyleProps, className),
80
- style: style,
81
- display: "flex",
82
- flexDirection: "column",
83
- marginBottom: 3
84
- }, /*#__PURE__*/React.createElement(Label, _extends({
85
- htmlFor: controlId,
86
- size: "default"
87
- }, optionalLabelProps), label), description && /*#__PURE__*/React.createElement(Text, {
88
- variant: "paragraph",
89
- id: descriptionId,
90
- size: "default",
91
- textColor: "light",
92
- marginBottom: "6px"
93
- }, description), /*#__PURE__*/React.createElement(FormFieldContext.Provider, {
94
- value: {
95
- controlId,
96
- descriptionId
97
- }
98
- }, children));
99
- };
100
- const ForwardedRefFormField = /*#__PURE__*/React.forwardRef(FormField);
101
- ForwardedRefFormField.displayName = 'FormField';
102
- export default ForwardedRefFormField;
@@ -1,9 +0,0 @@
1
- /**
2
- * Everything in Geometry is lifted from Hyperbase.
3
- * Once we refactor/deprecate Popover we can deprecate this as well.
4
- *
5
- * @internal
6
- */ /** */
7
- export { default as Rect } from './rect';
8
- export { default as Size } from './size';
9
- export { default as Point } from './point';
@@ -1,12 +0,0 @@
1
- /** @internal */
2
- export default class Point {
3
- /** @internal */
4
-
5
- /** @internal */
6
-
7
- /** @internal */
8
- constructor(x, y) {
9
- this.x = x;
10
- this.y = y;
11
- }
12
- }
@@ -1,44 +0,0 @@
1
- import Point from './point';
2
-
3
- /** @internal */
4
- export default class Rect {
5
- /** @internal */
6
-
7
- /** @internal */
8
-
9
- /** @internal */
10
-
11
- /** @internal */
12
-
13
- /** @internal */
14
- constructor(x, y, width, height) {
15
- this.x = x;
16
- this.y = y;
17
- this.width = width;
18
- this.height = height;
19
- }
20
- /** @internal */
21
- growBy(amount) {
22
- return new Rect(this.x - amount, this.y - amount, this.width + 2 * amount, this.height + 2 * amount);
23
- }
24
- /** @internal */
25
- top() {
26
- return this.y;
27
- }
28
- /** @internal */
29
- left() {
30
- return this.x;
31
- }
32
- /** @internal */
33
- right() {
34
- return this.x + this.width;
35
- }
36
- /** @internal */
37
- bottom() {
38
- return this.y + this.height;
39
- }
40
- /** @internal */
41
- centerPoint() {
42
- return new Point(this.x + this.width / 2, this.y + this.height / 2);
43
- }
44
- }
@@ -1,12 +0,0 @@
1
- /** @internal */
2
- export default class Size {
3
- /** @internal */
4
-
5
- /** @internal */
6
-
7
- /** @internal */
8
- constructor(width, height) {
9
- this.width = width;
10
- this.height = height;
11
- }
12
- }
@@ -1,125 +0,0 @@
1
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- /** @module @airtable/blocks/ui: Heading */ /** */
3
- import * as React from 'react';
4
- import { cx } from 'emotion';
5
- import { invariant } from '../../shared/error_utils';
6
- import { has, createEnum, keys } from '../../shared/private_utils';
7
- import useStyledSystem from './use_styled_system';
8
- import getStylePropsForResponsiveProp from './system/utils/get_style_props_for_responsive_prop';
9
- import useTheme from './theme/use_theme';
10
-
11
- /**
12
- * Sizes for the {@link Heading} component.
13
- */
14
-
15
- const HeadingSize = createEnum('xsmall', 'small', 'default', 'large', 'xlarge', 'xxlarge');
16
-
17
- /**
18
- * Size prop for the {@link Heading} component.
19
- */
20
-
21
- /**
22
- * Variant prop for the {@link Heading} component.
23
- * • **default** - Headings typically used for titles.
24
- * • **caps** - All-caps headings typically used for field names and smaller section headings.
25
- */
26
-
27
- const HeadingVariant = createEnum('default', 'caps');
28
-
29
- /** @internal */
30
- function warnIfHeadingSizeOutOfRangeForVariant(size, variant, headingSizesForVariant) {
31
- if (process.env.NODE_ENV === 'development' && !has(headingSizesForVariant, size)) {
32
- // eslint-disable-next-line
33
- console.warn(`[@airtable/blocks/ui] warning: <Heading variant='${variant}' /> only supports the following values for the size prop: ${Object.keys(headingSizesForVariant).join(', ')}. The component will fall back to the default size.`);
34
- }
35
- }
36
-
37
- /** @internal */
38
- function useHeadingStyle(headingSizeProp, variant) {
39
- const {
40
- headingStyles
41
- } = useTheme();
42
- const headingSizesForVariant = headingStyles[variant];
43
- let styleProps;
44
- if (typeof headingSizeProp === 'string') {
45
- warnIfHeadingSizeOutOfRangeForVariant(headingSizeProp, variant, headingSizesForVariant);
46
- styleProps = headingSizesForVariant[headingSizeProp] || headingSizesForVariant[HeadingSize.default];
47
- } else {
48
- const responsiveSizePropObject = {};
49
- for (const sizeKey of keys(headingSizeProp)) {
50
- const sizeProp = headingSizeProp[sizeKey];
51
- invariant(sizeProp, 'sizeProp');
52
- warnIfHeadingSizeOutOfRangeForVariant(sizeProp, variant, headingSizesForVariant);
53
- responsiveSizePropObject[sizeKey] = sizeProp || HeadingSize.default;
54
- }
55
- styleProps = getStylePropsForResponsiveProp(responsiveSizePropObject,
56
- // Cast to any to because `caps` don't all have the same sizes as `default`.
57
- // This in turn requires each size to be typed as optional.
58
- headingSizesForVariant);
59
- }
60
- return useStyledSystem(styleProps);
61
- }
62
-
63
- /**
64
- * Props for the {@link Heading} component. Also supports:
65
- * * {@link AllStylesProps}
66
- * * {@link AriaProps}
67
- *
68
- * @docsPath UI/components/Heading
69
- * @noInheritDoc
70
- */
71
-
72
- /**
73
- * A heading component with sizes and variants.
74
- *
75
- * [[ Story id="heading--example" title="Heading example" ]]
76
- *
77
- * @docsPath UI/components/Heading
78
- * @component
79
- */
80
- const Heading = (props, ref) => {
81
- const {
82
- as: Component = 'h3',
83
- size = HeadingSize.default,
84
- variant = HeadingVariant.default,
85
- children,
86
- id,
87
- role,
88
- dataAttributes,
89
- className,
90
- style,
91
- 'aria-label': ariaLabel,
92
- 'aria-labelledby': ariaLabelledBy,
93
- 'aria-describedby': ariaDescribedBy,
94
- 'aria-controls': ariaControls,
95
- 'aria-expanded': ariaExpanded,
96
- 'aria-haspopup': ariaHasPopup,
97
- 'aria-hidden': ariaHidden,
98
- 'aria-live': ariaLive,
99
- ...styleProps
100
- } = props;
101
- const classNameForHeadingSize = useHeadingStyle(size, variant);
102
- const classNameForStyleProps = useStyledSystem({
103
- fontFamily: 'default',
104
- textColor: 'default',
105
- ...styleProps
106
- });
107
- return /*#__PURE__*/React.createElement(Component, _extends({
108
- ref: ref,
109
- id: id,
110
- className: cx(classNameForHeadingSize, classNameForStyleProps, className),
111
- style: style,
112
- role: role,
113
- "aria-label": ariaLabel,
114
- "aria-labelledby": ariaLabelledBy,
115
- "aria-describedby": ariaDescribedBy,
116
- "aria-controls": ariaControls,
117
- "aria-expanded": ariaExpanded,
118
- "aria-haspopup": ariaHasPopup,
119
- "aria-hidden": ariaHidden,
120
- "aria-live": ariaLive
121
- }, dataAttributes), children);
122
- };
123
- const ForwardedRefHeading = /*#__PURE__*/React.forwardRef(Heading);
124
- ForwardedRefHeading.displayName = 'Heading';
125
- export default ForwardedRefHeading;
@@ -1,102 +0,0 @@
1
- /** @module @airtable/blocks/ui: Icon */ /** */
2
- import React from 'react';
3
- import { compose } from '@styled-system/core';
4
- import { cx } from 'emotion';
5
- import warning from '../../shared/warning';
6
- import useStyledSystem from './use_styled_system';
7
- import { flexItemSet, positionSet, margin, width, height } from './system';
8
- import { legacyIconNameToPhosphorIconName, phosphorIconConfig, deprecatedIconNameToReplacementName } from './icon_config';
9
-
10
- /**
11
- * Style props shared between the {@link Icon} and {@link FieldIcon} components. Accepts:
12
- * * {@link FlexItemSetProps}
13
- * * {@link PositionSetProps}
14
- * * {@link MarginProps}
15
- *
16
- * @noInheritDoc
17
- */
18
-
19
- const styleParser = compose(flexItemSet, positionSet, margin, width, height);
20
-
21
- /**
22
- * Props shared between the {@link Icon} and {@link FieldIcon} components.
23
- *
24
- * @noInheritDoc
25
- */
26
- // TODO (stephen): inherit shared props without inheriting style props
27
-
28
- /**
29
- * Props for the {@link Icon} component. Also accepts:
30
- * * {@link IconStyleProps}
31
- */
32
-
33
- /**
34
- * A vector icon from the Airtable icon set.
35
- *
36
- * [[ Story id="icon--example" title="Icon example" height="576px"]]
37
- *
38
- * @component
39
- * @docsPath UI/components/Icon
40
- */
41
- const Icon = (props, ref) => {
42
- const {
43
- name,
44
- size = 16,
45
- fillColor = 'currentColor',
46
- onMouseEnter,
47
- onMouseLeave,
48
- onClick,
49
- // This hasOnClick prop is set by the Tooltip wrapper. Destructure it here just to get it out of `props`.
50
- // See 7a80fefd0a0bc871c31e0c063662c6100b0ca77d
51
- // TODO(stephen): clean this up.
52
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
53
- hasOnClick,
54
- className,
55
- style,
56
- pathClassName,
57
- pathStyle,
58
- suppressWarning = false,
59
- ...styleProps
60
- } = props;
61
- const classNameForStyleProps = useStyledSystem({
62
- ...styleProps,
63
- width: size,
64
- height: size
65
- }, styleParser);
66
- const phosphorIconName = legacyIconNameToPhosphorIconName[name];
67
- const pathData = phosphorIconName ? phosphorIconConfig[phosphorIconName] : null;
68
- if (!pathData) {
69
- return null;
70
- }
71
- if (deprecatedIconNameToReplacementName.has(name) && !suppressWarning) {
72
- const alternative = deprecatedIconNameToReplacementName.get(name);
73
- let alternativeText = '';
74
- if (alternative) {
75
- alternativeText = `Use <Icon name='${alternative}' .../> instead.`;
76
- }
77
- warning(`'${name}' as an icon name is deprecated. ${alternativeText}`);
78
- }
79
- return /*#__PURE__*/React.createElement("svg", {
80
- ref: ref,
81
- viewBox: "0 0 16 16"
82
- // TODO (stephen): remove tooltip anchor props
83
- ,
84
- onMouseEnter: onMouseEnter,
85
- onMouseLeave: onMouseLeave,
86
- onClick: onClick,
87
- className: cx(classNameForStyleProps, className),
88
- style: {
89
- shapeRendering: 'geometricPrecision',
90
- ...style
91
- }
92
- }, /*#__PURE__*/React.createElement("path", {
93
- fillRule: "evenodd",
94
- className: pathClassName,
95
- style: pathStyle,
96
- fill: fillColor,
97
- d: pathData
98
- }));
99
- };
100
- const ForwardedRefIcon = /*#__PURE__*/React.forwardRef(Icon);
101
- ForwardedRefIcon.displayName = 'Icon';
102
- export default ForwardedRefIcon;