@airtable/blocks 0.0.0-experimental-f52bc4e5e-20250709 → 0.0.0-experimental-75d011284-20250904

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 (481) hide show
  1. package/dist/cjs/base/assert_run_context.js +12 -0
  2. package/dist/cjs/base/index.js +30 -30
  3. package/dist/cjs/base/models/abstract_model_with_async_data.js +154 -237
  4. package/dist/cjs/base/models/base.js +188 -267
  5. package/dist/cjs/base/models/create_aggregators.js +29 -46
  6. package/dist/cjs/base/models/cursor.js +206 -294
  7. package/dist/cjs/base/models/field.js +307 -395
  8. package/dist/cjs/base/models/grouped_record_query_result.js +219 -338
  9. package/dist/cjs/base/models/linked_records_query_result.js +450 -625
  10. package/dist/cjs/base/models/models.js +19 -22
  11. package/dist/cjs/base/models/mutations.js +267 -293
  12. package/dist/cjs/base/models/object_pool.js +117 -156
  13. package/dist/cjs/base/models/record.js +191 -256
  14. package/dist/cjs/base/models/record_coloring.js +6 -6
  15. package/dist/cjs/base/models/record_query_result.js +351 -435
  16. package/dist/cjs/base/models/record_store.js +403 -753
  17. package/dist/cjs/base/models/session.js +125 -153
  18. package/dist/cjs/base/models/table.js +457 -605
  19. package/dist/cjs/base/models/table_or_view_query_result.js +656 -920
  20. package/dist/cjs/base/models/view.js +284 -389
  21. package/dist/cjs/base/models/view_data_store.js +218 -356
  22. package/dist/cjs/base/models/view_metadata_query_result.js +109 -157
  23. package/dist/cjs/base/perform_record_action.js +89 -131
  24. package/dist/cjs/base/sdk.js +129 -184
  25. package/dist/cjs/base/settings_button.js +54 -74
  26. package/dist/cjs/base/types/airtable_interface.js +1 -1
  27. package/dist/cjs/base/types/mutations.js +5 -11
  28. package/dist/cjs/base/types/undo_redo.js +1 -1
  29. package/dist/cjs/base/types/view.js +1 -1
  30. package/dist/cjs/base/ui/base_provider.js +6 -8
  31. package/dist/cjs/base/ui/baymax_utils.js +436 -108
  32. package/dist/cjs/base/ui/block_wrapper.js +81 -106
  33. package/dist/cjs/base/ui/box.js +34 -60
  34. package/dist/cjs/base/ui/button.js +44 -74
  35. package/dist/cjs/base/ui/cell_renderer.js +132 -189
  36. package/dist/cjs/base/ui/choice_token.js +25 -42
  37. package/dist/cjs/base/ui/collaborator_token.js +31 -53
  38. package/dist/cjs/base/ui/color_palette.js +130 -173
  39. package/dist/cjs/base/ui/color_palette_synced.js +41 -70
  40. package/dist/cjs/base/ui/confirmation_dialog.js +70 -120
  41. package/dist/cjs/base/ui/control_sizes.js +24 -22
  42. package/dist/cjs/base/ui/create_detect_element_resize.js +6 -10
  43. package/dist/cjs/base/ui/css_helpers.js +1 -1
  44. package/dist/cjs/base/ui/dialog.js +57 -98
  45. package/dist/cjs/base/ui/dialog_close_button.js +52 -98
  46. package/dist/cjs/base/ui/expand_record.js +1 -2
  47. package/dist/cjs/base/ui/expand_record_list.js +3 -4
  48. package/dist/cjs/base/ui/expand_record_picker_async.js +28 -57
  49. package/dist/cjs/base/ui/field_icon.js +15 -33
  50. package/dist/cjs/base/ui/field_picker.js +25 -70
  51. package/dist/cjs/base/ui/field_picker_synced.js +18 -40
  52. package/dist/cjs/base/ui/form_field.js +27 -55
  53. package/dist/cjs/base/ui/geometry/geometry.js +5 -5
  54. package/dist/cjs/base/ui/geometry/point.js +10 -12
  55. package/dist/cjs/base/ui/geometry/rect.js +36 -52
  56. package/dist/cjs/base/ui/geometry/size.js +10 -12
  57. package/dist/cjs/base/ui/global_alert.js +31 -52
  58. package/dist/cjs/base/ui/heading.js +45 -94
  59. package/dist/cjs/base/ui/icon.js +39 -59
  60. package/dist/cjs/base/ui/icon_config.js +6 -12
  61. package/dist/cjs/base/ui/initialize_block.js +16 -35
  62. package/dist/cjs/base/ui/input.js +62 -101
  63. package/dist/cjs/base/ui/input_synced.js +17 -40
  64. package/dist/cjs/base/ui/key_codes.js +2 -3
  65. package/dist/cjs/base/ui/label.js +30 -55
  66. package/dist/cjs/base/ui/link.js +54 -87
  67. package/dist/cjs/base/ui/loader.js +15 -36
  68. package/dist/cjs/base/ui/modal.js +88 -127
  69. package/dist/cjs/base/ui/model_picker_select.js +18 -44
  70. package/dist/cjs/base/ui/popover.js +236 -328
  71. package/dist/cjs/base/ui/progress_bar.js +34 -47
  72. package/dist/cjs/base/ui/record_card.js +389 -478
  73. package/dist/cjs/base/ui/record_card_list.js +150 -224
  74. package/dist/cjs/base/ui/select.js +60 -116
  75. package/dist/cjs/base/ui/select_and_select_buttons_helpers.js +15 -39
  76. package/dist/cjs/base/ui/select_buttons.js +50 -83
  77. package/dist/cjs/base/ui/select_buttons_synced.js +17 -39
  78. package/dist/cjs/base/ui/select_synced.js +17 -39
  79. package/dist/cjs/base/ui/switch.js +42 -71
  80. package/dist/cjs/base/ui/switch_synced.js +16 -38
  81. package/dist/cjs/base/ui/synced.js +27 -48
  82. package/dist/cjs/base/ui/system/all_styles_set.js +4 -12
  83. package/dist/cjs/base/ui/system/appearance/appearance_set.js +10 -13
  84. package/dist/cjs/base/ui/system/appearance/background_color.js +3 -6
  85. package/dist/cjs/base/ui/system/appearance/border.js +3 -6
  86. package/dist/cjs/base/ui/system/appearance/border_radius.js +3 -6
  87. package/dist/cjs/base/ui/system/appearance/box_shadow.js +3 -6
  88. package/dist/cjs/base/ui/system/appearance/opacity.js +3 -6
  89. package/dist/cjs/base/ui/system/dimensions/dimensions_set.js +11 -13
  90. package/dist/cjs/base/ui/system/dimensions/height.js +3 -6
  91. package/dist/cjs/base/ui/system/dimensions/max_height.js +3 -6
  92. package/dist/cjs/base/ui/system/dimensions/max_width.js +3 -6
  93. package/dist/cjs/base/ui/system/dimensions/min_height.js +3 -6
  94. package/dist/cjs/base/ui/system/dimensions/min_width.js +3 -6
  95. package/dist/cjs/base/ui/system/dimensions/width.js +3 -6
  96. package/dist/cjs/base/ui/system/display.js +3 -6
  97. package/dist/cjs/base/ui/system/flex_container/align_content.js +3 -6
  98. package/dist/cjs/base/ui/system/flex_container/align_items.js +3 -6
  99. package/dist/cjs/base/ui/system/flex_container/flex_container_set.js +11 -13
  100. package/dist/cjs/base/ui/system/flex_container/flex_direction.js +3 -6
  101. package/dist/cjs/base/ui/system/flex_container/flex_wrap.js +3 -6
  102. package/dist/cjs/base/ui/system/flex_container/justify_content.js +3 -6
  103. package/dist/cjs/base/ui/system/flex_container/justify_items.js +3 -6
  104. package/dist/cjs/base/ui/system/flex_item/align_self.js +3 -6
  105. package/dist/cjs/base/ui/system/flex_item/flex.js +3 -6
  106. package/dist/cjs/base/ui/system/flex_item/flex_basis.js +3 -6
  107. package/dist/cjs/base/ui/system/flex_item/flex_grow.js +3 -6
  108. package/dist/cjs/base/ui/system/flex_item/flex_item_set.js +12 -13
  109. package/dist/cjs/base/ui/system/flex_item/flex_shrink.js +3 -6
  110. package/dist/cjs/base/ui/system/flex_item/justify_self.js +3 -6
  111. package/dist/cjs/base/ui/system/flex_item/order.js +3 -6
  112. package/dist/cjs/base/ui/system/index.js +104 -416
  113. package/dist/cjs/base/ui/system/overflow.js +3 -6
  114. package/dist/cjs/base/ui/system/position/bottom.js +4 -6
  115. package/dist/cjs/base/ui/system/position/left.js +4 -6
  116. package/dist/cjs/base/ui/system/position/position.js +3 -6
  117. package/dist/cjs/base/ui/system/position/position_set.js +11 -13
  118. package/dist/cjs/base/ui/system/position/right.js +4 -6
  119. package/dist/cjs/base/ui/system/position/top.js +4 -6
  120. package/dist/cjs/base/ui/system/position/z_index.js +3 -6
  121. package/dist/cjs/base/ui/system/spacing/margin.js +4 -6
  122. package/dist/cjs/base/ui/system/spacing/padding.js +4 -6
  123. package/dist/cjs/base/ui/system/spacing/spacing_set.js +7 -13
  124. package/dist/cjs/base/ui/system/typography/font_family.js +3 -6
  125. package/dist/cjs/base/ui/system/typography/font_size.js +3 -6
  126. package/dist/cjs/base/ui/system/typography/font_style.js +3 -6
  127. package/dist/cjs/base/ui/system/typography/font_weight.js +3 -6
  128. package/dist/cjs/base/ui/system/typography/letter_spacing.js +3 -6
  129. package/dist/cjs/base/ui/system/typography/line_height.js +3 -6
  130. package/dist/cjs/base/ui/system/typography/text_align.js +3 -6
  131. package/dist/cjs/base/ui/system/typography/text_color.js +3 -6
  132. package/dist/cjs/base/ui/system/typography/text_decoration.js +3 -6
  133. package/dist/cjs/base/ui/system/typography/text_transform.js +3 -6
  134. package/dist/cjs/base/ui/system/typography/typography_set.js +15 -13
  135. package/dist/cjs/base/ui/system/utils/ensure_numbers_are_within_scale.js +3 -4
  136. package/dist/cjs/base/ui/system/utils/get_style_props_for_responsive_prop.js +47 -87
  137. package/dist/cjs/base/ui/table_picker.js +18 -42
  138. package/dist/cjs/base/ui/table_picker_synced.js +17 -39
  139. package/dist/cjs/base/ui/text.js +40 -73
  140. package/dist/cjs/base/ui/text_button.js +51 -83
  141. package/dist/cjs/base/ui/theme/default_theme/button_variants.js +3 -3
  142. package/dist/cjs/base/ui/theme/default_theme/control_sizes.js +51 -45
  143. package/dist/cjs/base/ui/theme/default_theme/heading_styles.js +1 -1
  144. package/dist/cjs/base/ui/theme/default_theme/index.js +9 -15
  145. package/dist/cjs/base/ui/theme/default_theme/input_variants.js +3 -3
  146. package/dist/cjs/base/ui/theme/default_theme/link_variants.js +3 -3
  147. package/dist/cjs/base/ui/theme/default_theme/select_buttons_variants.js +4 -4
  148. package/dist/cjs/base/ui/theme/default_theme/select_variants.js +8 -17
  149. package/dist/cjs/base/ui/theme/default_theme/switch_variants.js +23 -29
  150. package/dist/cjs/base/ui/theme/default_theme/text_button_variants.js +5 -5
  151. package/dist/cjs/base/ui/theme/default_theme/text_styles.js +1 -1
  152. package/dist/cjs/base/ui/theme/default_theme/tokens.js +14 -14
  153. package/dist/cjs/base/ui/theme/theme_context.js +2 -2
  154. package/dist/cjs/base/ui/theme/use_theme.js +2 -2
  155. package/dist/cjs/base/ui/tooltip.js +134 -174
  156. package/dist/cjs/base/ui/types/aria_props.js +1 -23
  157. package/dist/cjs/base/ui/types/data_attributes_prop.js +1 -18
  158. package/dist/cjs/base/ui/types/tooltip_anchor_props.js +1 -17
  159. package/dist/cjs/base/ui/ui.js +48 -49
  160. package/dist/cjs/base/ui/unstable_standalone_ui.js +27 -27
  161. package/dist/cjs/base/ui/use_base.js +1 -1
  162. package/dist/cjs/base/ui/use_cursor.js +5 -4
  163. package/dist/cjs/base/ui/use_form_field.js +1 -1
  164. package/dist/cjs/base/ui/use_loadable.js +25 -91
  165. package/dist/cjs/base/ui/use_record_action_data.js +4 -3
  166. package/dist/cjs/base/ui/use_records.js +9 -13
  167. package/dist/cjs/base/ui/use_session.js +1 -1
  168. package/dist/cjs/base/ui/use_settings_button.js +4 -3
  169. package/dist/cjs/base/ui/use_styled_system.js +7 -14
  170. package/dist/cjs/base/ui/use_text_color_for_background_color.js +4 -3
  171. package/dist/cjs/base/ui/use_view_metadata.js +4 -4
  172. package/dist/cjs/base/ui/use_viewport.js +2 -2
  173. package/dist/cjs/base/ui/view_picker.js +26 -70
  174. package/dist/cjs/base/ui/view_picker_synced.js +18 -40
  175. package/dist/cjs/base/ui/viewport_constraint.js +67 -114
  176. package/dist/cjs/base/ui/with_styled_system.js +25 -61
  177. package/dist/cjs/base/undo_redo.js +21 -32
  178. package/dist/cjs/base/unstable_testing_utils.js +27 -27
  179. package/dist/cjs/base/viewport.js +268 -312
  180. package/dist/cjs/injected/airtable_interface.js +4 -4
  181. package/dist/cjs/interface/assert_run_context.js +12 -0
  182. package/dist/cjs/interface/index.js +4 -18
  183. package/dist/cjs/interface/models/base.js +15 -34
  184. package/dist/cjs/interface/models/field.js +5 -19
  185. package/dist/cjs/interface/models/models.js +8 -7
  186. package/dist/cjs/interface/models/mutations.js +50 -66
  187. package/dist/cjs/interface/models/record.js +29 -49
  188. package/dist/cjs/interface/models/record_store.js +25 -57
  189. package/dist/cjs/interface/models/session.js +2 -16
  190. package/dist/cjs/interface/models/table.js +66 -95
  191. package/dist/cjs/interface/sdk.js +61 -87
  192. package/dist/cjs/interface/types/airtable_interface.js +2 -2
  193. package/dist/cjs/interface/types/mutations.js +3 -10
  194. package/dist/cjs/interface/ui/block_wrapper.js +56 -48
  195. package/dist/cjs/interface/ui/initialize_block.js +13 -28
  196. package/dist/cjs/interface/ui/ui.js +20 -19
  197. package/dist/cjs/interface/ui/use_base.js +1 -1
  198. package/dist/cjs/interface/ui/use_custom_properties.js +19 -35
  199. package/dist/cjs/interface/ui/use_records.js +6 -5
  200. package/dist/cjs/interface/ui/use_run_info.js +2 -2
  201. package/dist/cjs/interface/ui/use_session.js +1 -1
  202. package/dist/cjs/shared/color_utils.js +9 -16
  203. package/dist/cjs/shared/colors.js +2 -2
  204. package/dist/cjs/shared/error_utils.js +9 -11
  205. package/dist/cjs/shared/event_tracker.js +3 -3
  206. package/dist/cjs/shared/global_config.js +337 -449
  207. package/dist/cjs/shared/models/abstract_model.js +72 -97
  208. package/dist/cjs/shared/models/base_core.js +394 -514
  209. package/dist/cjs/shared/models/field_core.js +236 -279
  210. package/dist/cjs/shared/models/mutations_core.js +283 -379
  211. package/dist/cjs/shared/models/record_core.js +174 -231
  212. package/dist/cjs/shared/models/record_store_core.js +119 -172
  213. package/dist/cjs/shared/models/session_core.js +116 -170
  214. package/dist/cjs/shared/models/table_core.js +1258 -1501
  215. package/dist/cjs/shared/private_utils.js +54 -124
  216. package/dist/cjs/shared/sdk_core.js +68 -70
  217. package/dist/cjs/shared/types/field_core.js +1 -1
  218. package/dist/cjs/shared/types/mutation_constants.js +4 -4
  219. package/dist/cjs/shared/types/mutations_core.js +1 -1
  220. package/dist/cjs/shared/types/permission_levels.js +1 -1
  221. package/dist/cjs/shared/ui/global_config_synced_component_helpers.js +9 -9
  222. package/dist/cjs/shared/ui/loader.js +14 -35
  223. package/dist/cjs/shared/ui/remote_utils.js +5 -7
  224. package/dist/cjs/shared/ui/sdk_context.js +4 -8
  225. package/dist/cjs/shared/ui/use_array_identity.js +2 -2
  226. package/dist/cjs/shared/ui/use_base.js +6 -5
  227. package/dist/cjs/shared/ui/use_color_scheme.js +3 -8
  228. package/dist/cjs/shared/ui/use_global_config.js +5 -4
  229. package/dist/cjs/shared/ui/use_session.js +6 -5
  230. package/dist/cjs/shared/ui/use_synced.js +7 -5
  231. package/dist/cjs/shared/ui/use_watchable.js +13 -42
  232. package/dist/cjs/shared/ui/with_hooks.js +6 -13
  233. package/dist/cjs/shared/unstable_private_utils.js +4 -6
  234. package/dist/cjs/shared/warning.js +5 -5
  235. package/dist/cjs/shared/watchable.js +110 -176
  236. package/dist/cjs/stats/block_stats.js +62 -85
  237. package/dist/cjs/testing/base/abstract_mock_airtable_interface.js +208 -0
  238. package/dist/cjs/testing/interface/abstract_mock_airtable_interface.js +124 -0
  239. package/dist/types/src/base/assert_run_context.d.ts +2 -0
  240. package/dist/types/src/base/assert_run_context.d.ts.map +1 -0
  241. package/dist/types/src/base/index.d.ts +1 -0
  242. package/dist/types/src/base/index.d.ts.map +1 -1
  243. package/dist/types/src/base/models/models.d.ts +1 -0
  244. package/dist/types/src/base/models/models.d.ts.map +1 -1
  245. package/dist/types/src/base/models/mutations.d.ts.map +1 -1
  246. package/dist/types/src/base/sdk.d.ts.map +1 -1
  247. package/dist/types/src/base/ui/block_wrapper.d.ts +1 -1
  248. package/dist/types/src/base/ui/box.d.ts.map +1 -1
  249. package/dist/types/src/base/ui/button.d.ts +0 -5
  250. package/dist/types/src/base/ui/button.d.ts.map +1 -1
  251. package/dist/types/src/base/ui/cell_renderer.d.ts +1 -22
  252. package/dist/types/src/base/ui/cell_renderer.d.ts.map +1 -1
  253. package/dist/types/src/base/ui/choice_token.d.ts +1 -21
  254. package/dist/types/src/base/ui/choice_token.d.ts.map +1 -1
  255. package/dist/types/src/base/ui/collaborator_token.d.ts +0 -20
  256. package/dist/types/src/base/ui/collaborator_token.d.ts.map +1 -1
  257. package/dist/types/src/base/ui/color_palette.d.ts +1 -32
  258. package/dist/types/src/base/ui/color_palette.d.ts.map +1 -1
  259. package/dist/types/src/base/ui/color_palette_synced.d.ts +0 -14
  260. package/dist/types/src/base/ui/color_palette_synced.d.ts.map +1 -1
  261. package/dist/types/src/base/ui/confirmation_dialog.d.ts +0 -17
  262. package/dist/types/src/base/ui/confirmation_dialog.d.ts.map +1 -1
  263. package/dist/types/src/base/ui/control_sizes.d.ts +0 -1
  264. package/dist/types/src/base/ui/control_sizes.d.ts.map +1 -1
  265. package/dist/types/src/base/ui/dialog.d.ts +1 -23
  266. package/dist/types/src/base/ui/dialog.d.ts.map +1 -1
  267. package/dist/types/src/base/ui/dialog_close_button.d.ts +2 -24
  268. package/dist/types/src/base/ui/dialog_close_button.d.ts.map +1 -1
  269. package/dist/types/src/base/ui/field_icon.d.ts +1 -17
  270. package/dist/types/src/base/ui/field_icon.d.ts.map +1 -1
  271. package/dist/types/src/base/ui/field_picker.d.ts +0 -23
  272. package/dist/types/src/base/ui/field_picker.d.ts.map +1 -1
  273. package/dist/types/src/base/ui/field_picker_synced.d.ts.map +1 -1
  274. package/dist/types/src/base/ui/form_field.d.ts +0 -4
  275. package/dist/types/src/base/ui/form_field.d.ts.map +1 -1
  276. package/dist/types/src/base/ui/heading.d.ts +1 -1
  277. package/dist/types/src/base/ui/heading.d.ts.map +1 -1
  278. package/dist/types/src/base/ui/icon.d.ts +0 -16
  279. package/dist/types/src/base/ui/icon.d.ts.map +1 -1
  280. package/dist/types/src/base/ui/icon_config.d.ts +50 -51
  281. package/dist/types/src/base/ui/icon_config.d.ts.map +1 -1
  282. package/dist/types/src/base/ui/initialize_block.d.ts.map +1 -1
  283. package/dist/types/src/base/ui/input.d.ts +12 -46
  284. package/dist/types/src/base/ui/input.d.ts.map +1 -1
  285. package/dist/types/src/base/ui/input_synced.d.ts.map +1 -1
  286. package/dist/types/src/base/ui/label.d.ts.map +1 -1
  287. package/dist/types/src/base/ui/link.d.ts +1 -5
  288. package/dist/types/src/base/ui/link.d.ts.map +1 -1
  289. package/dist/types/src/base/ui/loader.d.ts +3 -20
  290. package/dist/types/src/base/ui/loader.d.ts.map +1 -1
  291. package/dist/types/src/base/ui/modal.d.ts +1 -14
  292. package/dist/types/src/base/ui/modal.d.ts.map +1 -1
  293. package/dist/types/src/base/ui/model_picker_select.d.ts.map +1 -1
  294. package/dist/types/src/base/ui/popover.d.ts +1 -17
  295. package/dist/types/src/base/ui/popover.d.ts.map +1 -1
  296. package/dist/types/src/base/ui/progress_bar.d.ts +1 -24
  297. package/dist/types/src/base/ui/progress_bar.d.ts.map +1 -1
  298. package/dist/types/src/base/ui/record_card.d.ts +1 -23
  299. package/dist/types/src/base/ui/record_card.d.ts.map +1 -1
  300. package/dist/types/src/base/ui/record_card_list.d.ts +1 -18
  301. package/dist/types/src/base/ui/record_card_list.d.ts.map +1 -1
  302. package/dist/types/src/base/ui/select.d.ts +0 -44
  303. package/dist/types/src/base/ui/select.d.ts.map +1 -1
  304. package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts +0 -2
  305. package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts.map +1 -1
  306. package/dist/types/src/base/ui/select_buttons.d.ts +0 -22
  307. package/dist/types/src/base/ui/select_buttons.d.ts.map +1 -1
  308. package/dist/types/src/base/ui/select_buttons_synced.d.ts.map +1 -1
  309. package/dist/types/src/base/ui/select_synced.d.ts.map +1 -1
  310. package/dist/types/src/base/ui/switch.d.ts +0 -22
  311. package/dist/types/src/base/ui/switch.d.ts.map +1 -1
  312. package/dist/types/src/base/ui/switch_synced.d.ts.map +1 -1
  313. package/dist/types/src/base/ui/synced.d.ts +2 -8
  314. package/dist/types/src/base/ui/synced.d.ts.map +1 -1
  315. package/dist/types/src/base/ui/system/all_styles_set.d.ts +0 -3
  316. package/dist/types/src/base/ui/system/all_styles_set.d.ts.map +1 -1
  317. package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts +0 -1
  318. package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts.map +1 -1
  319. package/dist/types/src/base/ui/system/appearance/background_color.d.ts +0 -1
  320. package/dist/types/src/base/ui/system/appearance/background_color.d.ts.map +1 -1
  321. package/dist/types/src/base/ui/system/appearance/border.d.ts +0 -1
  322. package/dist/types/src/base/ui/system/appearance/border.d.ts.map +1 -1
  323. package/dist/types/src/base/ui/system/appearance/border_radius.d.ts +0 -1
  324. package/dist/types/src/base/ui/system/appearance/border_radius.d.ts.map +1 -1
  325. package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts +0 -1
  326. package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts.map +1 -1
  327. package/dist/types/src/base/ui/system/appearance/opacity.d.ts +0 -1
  328. package/dist/types/src/base/ui/system/appearance/opacity.d.ts.map +1 -1
  329. package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts +0 -1
  330. package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts.map +1 -1
  331. package/dist/types/src/base/ui/system/dimensions/height.d.ts +0 -1
  332. package/dist/types/src/base/ui/system/dimensions/height.d.ts.map +1 -1
  333. package/dist/types/src/base/ui/system/dimensions/max_height.d.ts +0 -1
  334. package/dist/types/src/base/ui/system/dimensions/max_height.d.ts.map +1 -1
  335. package/dist/types/src/base/ui/system/dimensions/max_width.d.ts +0 -1
  336. package/dist/types/src/base/ui/system/dimensions/max_width.d.ts.map +1 -1
  337. package/dist/types/src/base/ui/system/dimensions/min_height.d.ts +0 -1
  338. package/dist/types/src/base/ui/system/dimensions/min_height.d.ts.map +1 -1
  339. package/dist/types/src/base/ui/system/dimensions/min_width.d.ts +0 -1
  340. package/dist/types/src/base/ui/system/dimensions/min_width.d.ts.map +1 -1
  341. package/dist/types/src/base/ui/system/dimensions/width.d.ts +0 -1
  342. package/dist/types/src/base/ui/system/dimensions/width.d.ts.map +1 -1
  343. package/dist/types/src/base/ui/system/display.d.ts +0 -1
  344. package/dist/types/src/base/ui/system/display.d.ts.map +1 -1
  345. package/dist/types/src/base/ui/system/flex_container/align_content.d.ts +0 -1
  346. package/dist/types/src/base/ui/system/flex_container/align_content.d.ts.map +1 -1
  347. package/dist/types/src/base/ui/system/flex_container/align_items.d.ts +0 -1
  348. package/dist/types/src/base/ui/system/flex_container/align_items.d.ts.map +1 -1
  349. package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts +0 -1
  350. package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts.map +1 -1
  351. package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts +0 -1
  352. package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts.map +1 -1
  353. package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts +0 -1
  354. package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts.map +1 -1
  355. package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts +0 -1
  356. package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts.map +1 -1
  357. package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts +0 -1
  358. package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts.map +1 -1
  359. package/dist/types/src/base/ui/system/flex_item/align_self.d.ts +0 -1
  360. package/dist/types/src/base/ui/system/flex_item/align_self.d.ts.map +1 -1
  361. package/dist/types/src/base/ui/system/flex_item/flex.d.ts +0 -1
  362. package/dist/types/src/base/ui/system/flex_item/flex.d.ts.map +1 -1
  363. package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts +0 -1
  364. package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts.map +1 -1
  365. package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts +0 -1
  366. package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts.map +1 -1
  367. package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts +0 -1
  368. package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts.map +1 -1
  369. package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts +0 -1
  370. package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts.map +1 -1
  371. package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts +0 -1
  372. package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts.map +1 -1
  373. package/dist/types/src/base/ui/system/flex_item/order.d.ts +0 -1
  374. package/dist/types/src/base/ui/system/flex_item/order.d.ts.map +1 -1
  375. package/dist/types/src/base/ui/system/index.d.ts +52 -52
  376. package/dist/types/src/base/ui/system/index.d.ts.map +1 -1
  377. package/dist/types/src/base/ui/system/overflow.d.ts +0 -1
  378. package/dist/types/src/base/ui/system/overflow.d.ts.map +1 -1
  379. package/dist/types/src/base/ui/system/position/bottom.d.ts +0 -1
  380. package/dist/types/src/base/ui/system/position/bottom.d.ts.map +1 -1
  381. package/dist/types/src/base/ui/system/position/left.d.ts +0 -1
  382. package/dist/types/src/base/ui/system/position/left.d.ts.map +1 -1
  383. package/dist/types/src/base/ui/system/position/position.d.ts +0 -1
  384. package/dist/types/src/base/ui/system/position/position.d.ts.map +1 -1
  385. package/dist/types/src/base/ui/system/position/position_set.d.ts +0 -1
  386. package/dist/types/src/base/ui/system/position/position_set.d.ts.map +1 -1
  387. package/dist/types/src/base/ui/system/position/right.d.ts +0 -1
  388. package/dist/types/src/base/ui/system/position/right.d.ts.map +1 -1
  389. package/dist/types/src/base/ui/system/position/top.d.ts +0 -1
  390. package/dist/types/src/base/ui/system/position/top.d.ts.map +1 -1
  391. package/dist/types/src/base/ui/system/position/z_index.d.ts +0 -1
  392. package/dist/types/src/base/ui/system/position/z_index.d.ts.map +1 -1
  393. package/dist/types/src/base/ui/system/spacing/margin.d.ts +0 -1
  394. package/dist/types/src/base/ui/system/spacing/margin.d.ts.map +1 -1
  395. package/dist/types/src/base/ui/system/spacing/padding.d.ts +0 -1
  396. package/dist/types/src/base/ui/system/spacing/padding.d.ts.map +1 -1
  397. package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts +0 -1
  398. package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts.map +1 -1
  399. package/dist/types/src/base/ui/system/typography/font_family.d.ts +0 -1
  400. package/dist/types/src/base/ui/system/typography/font_family.d.ts.map +1 -1
  401. package/dist/types/src/base/ui/system/typography/font_size.d.ts +0 -1
  402. package/dist/types/src/base/ui/system/typography/font_size.d.ts.map +1 -1
  403. package/dist/types/src/base/ui/system/typography/font_style.d.ts +0 -1
  404. package/dist/types/src/base/ui/system/typography/font_style.d.ts.map +1 -1
  405. package/dist/types/src/base/ui/system/typography/font_weight.d.ts +0 -1
  406. package/dist/types/src/base/ui/system/typography/font_weight.d.ts.map +1 -1
  407. package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts +0 -1
  408. package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts.map +1 -1
  409. package/dist/types/src/base/ui/system/typography/line_height.d.ts +0 -1
  410. package/dist/types/src/base/ui/system/typography/line_height.d.ts.map +1 -1
  411. package/dist/types/src/base/ui/system/typography/text_align.d.ts +0 -1
  412. package/dist/types/src/base/ui/system/typography/text_align.d.ts.map +1 -1
  413. package/dist/types/src/base/ui/system/typography/text_color.d.ts +0 -1
  414. package/dist/types/src/base/ui/system/typography/text_color.d.ts.map +1 -1
  415. package/dist/types/src/base/ui/system/typography/text_decoration.d.ts +0 -1
  416. package/dist/types/src/base/ui/system/typography/text_decoration.d.ts.map +1 -1
  417. package/dist/types/src/base/ui/system/typography/text_transform.d.ts +0 -1
  418. package/dist/types/src/base/ui/system/typography/text_transform.d.ts.map +1 -1
  419. package/dist/types/src/base/ui/system/typography/typography_set.d.ts +0 -1
  420. package/dist/types/src/base/ui/system/typography/typography_set.d.ts.map +1 -1
  421. package/dist/types/src/base/ui/table_picker.d.ts +0 -21
  422. package/dist/types/src/base/ui/table_picker.d.ts.map +1 -1
  423. package/dist/types/src/base/ui/table_picker_synced.d.ts.map +1 -1
  424. package/dist/types/src/base/ui/text.d.ts +0 -3
  425. package/dist/types/src/base/ui/text.d.ts.map +1 -1
  426. package/dist/types/src/base/ui/text_button.d.ts +1 -5
  427. package/dist/types/src/base/ui/text_button.d.ts.map +1 -1
  428. package/dist/types/src/base/ui/theme/default_theme/index.d.ts +1 -1
  429. package/dist/types/src/base/ui/theme/theme_context.d.ts +1 -1
  430. package/dist/types/src/base/ui/theme/use_theme.d.ts +1 -1
  431. package/dist/types/src/base/ui/tooltip.d.ts +0 -16
  432. package/dist/types/src/base/ui/tooltip.d.ts.map +1 -1
  433. package/dist/types/src/base/ui/types/aria_props.d.ts.map +1 -1
  434. package/dist/types/src/base/ui/types/data_attributes_prop.d.ts +0 -4
  435. package/dist/types/src/base/ui/types/data_attributes_prop.d.ts.map +1 -1
  436. package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +0 -7
  437. package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts.map +1 -1
  438. package/dist/types/src/base/ui/ui.d.ts +1 -0
  439. package/dist/types/src/base/ui/ui.d.ts.map +1 -1
  440. package/dist/types/src/base/ui/view_picker.d.ts +0 -23
  441. package/dist/types/src/base/ui/view_picker.d.ts.map +1 -1
  442. package/dist/types/src/base/ui/view_picker_synced.d.ts.map +1 -1
  443. package/dist/types/src/base/ui/viewport_constraint.d.ts +1 -14
  444. package/dist/types/src/base/ui/viewport_constraint.d.ts.map +1 -1
  445. package/dist/types/src/base/unstable_testing_utils.d.ts +1 -1
  446. package/dist/types/src/base/unstable_testing_utils.d.ts.map +1 -1
  447. package/dist/types/src/interface/assert_run_context.d.ts +2 -0
  448. package/dist/types/src/interface/assert_run_context.d.ts.map +1 -0
  449. package/dist/types/src/interface/index.d.ts +1 -6
  450. package/dist/types/src/interface/index.d.ts.map +1 -1
  451. package/dist/types/src/interface/models/models.d.ts +1 -0
  452. package/dist/types/src/interface/models/models.d.ts.map +1 -1
  453. package/dist/types/src/interface/models/mutations.d.ts.map +1 -1
  454. package/dist/types/src/interface/ui/initialize_block.d.ts.map +1 -1
  455. package/dist/types/src/interface/ui/ui.d.ts +1 -0
  456. package/dist/types/src/interface/ui/ui.d.ts.map +1 -1
  457. package/dist/types/src/interface/ui/use_custom_properties.d.ts +1 -1
  458. package/dist/types/src/shared/models/mutations_core.d.ts.map +1 -1
  459. package/dist/types/src/shared/private_utils.d.ts +0 -9
  460. package/dist/types/src/shared/private_utils.d.ts.map +1 -1
  461. package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts +0 -2
  462. package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts.map +1 -1
  463. package/dist/types/src/shared/ui/loader.d.ts.map +1 -1
  464. package/dist/types/src/shared/ui/with_hooks.d.ts +2 -2
  465. package/dist/types/src/shared/ui/with_hooks.d.ts.map +1 -1
  466. package/dist/types/src/testing/{abstract_mock_airtable_interface.d.ts → base/abstract_mock_airtable_interface.d.ts} +13 -13
  467. package/dist/types/src/testing/base/abstract_mock_airtable_interface.d.ts.map +1 -0
  468. package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts +51 -0
  469. package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts.map +1 -0
  470. package/package.json +13 -13
  471. package/dist/cjs/base/ui/system/utils/create_responsive_prop_type.js +0 -19
  472. package/dist/cjs/base/ui/system/utils/create_style_prop_types.js +0 -24
  473. package/dist/cjs/base/ui/system/utils/enum_prop_type_utils.js +0 -35
  474. package/dist/cjs/testing/abstract_mock_airtable_interface.js +0 -277
  475. package/dist/types/src/base/ui/system/utils/create_responsive_prop_type.d.ts +0 -2
  476. package/dist/types/src/base/ui/system/utils/create_responsive_prop_type.d.ts.map +0 -1
  477. package/dist/types/src/base/ui/system/utils/create_style_prop_types.d.ts +0 -4
  478. package/dist/types/src/base/ui/system/utils/create_style_prop_types.d.ts.map +0 -1
  479. package/dist/types/src/base/ui/system/utils/enum_prop_type_utils.d.ts +0 -21
  480. package/dist/types/src/base/ui/system/utils/enum_prop_type_utils.d.ts.map +0 -1
  481. package/dist/types/src/testing/abstract_mock_airtable_interface.d.ts.map +0 -1
@@ -1,28 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.default = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- require("core-js/modules/es.array.filter.js");
10
- require("core-js/modules/es.array.iterator.js");
11
- require("core-js/modules/es.object.to-string.js");
12
- require("core-js/modules/es.set.js");
13
- require("core-js/modules/web.dom-collections.iterator.js");
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
16
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
20
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
7
  var _field_core = require("../../shared/models/field_core");
22
8
  var _mutations = require("../types/mutations");
23
9
  var _private_utils = require("../../shared/private_utils");
24
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
25
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /** @module @airtable/blocks/models: Field */ /** */
10
+ /** @module @airtable/blocks/models: Field */ /** */
11
+
26
12
  /**
27
13
  * Model class representing a field in a table.
28
14
  *
@@ -36,392 +22,318 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
36
22
  * ```
37
23
  * @docsPath models/Field
38
24
  */
39
- var Field = /*#__PURE__*/function (_FieldCore) {
40
- function Field() {
41
- (0, _classCallCheck2.default)(this, Field);
42
- return _callSuper(this, Field, arguments);
25
+ class Field extends _field_core.FieldCore {
26
+ /** @internal */
27
+ static _className = 'Field';
28
+
29
+ // The following method is untested because its implementation resists
30
+ // testing and because it is expected to be redesigned.
31
+ // istanbul ignore next
32
+ /**
33
+ * A list of available aggregators given this field's configuration.
34
+ *
35
+ * @example
36
+ * ```js
37
+ * const fieldAggregators = myField.availableAggregators;
38
+ * ```
39
+ */
40
+ get availableAggregators() {
41
+ const airtableInterface = this._sdk.__airtableInterface;
42
+ const availableAggregatorKeysSet = new Set(airtableInterface.aggregators.getAvailableAggregatorKeysForField(this._data));
43
+ const {
44
+ aggregators
45
+ } = require('./models');
46
+ return (0, _private_utils.values)(aggregators).filter(aggregator => {
47
+ return availableAggregatorKeysSet.has(aggregator.key);
48
+ });
49
+ }
50
+ // The following method is untested because its implementation resists
51
+ // testing and because it is expected to be redesigned.
52
+ // istanbul ignore next
53
+ /**
54
+ * Checks if the given aggregator is available for this field.
55
+ *
56
+ * @param aggregator The aggregator object or aggregator key.
57
+ * @example
58
+ * ```js
59
+ * import {aggregators} from '@airtable/blocks/base/models';
60
+ * const aggregator = aggregators.totalAttachmentSize;
61
+ *
62
+ * // Using an aggregator object
63
+ * console.log(myAttachmentField.isAggregatorAvailable(aggregator));
64
+ * // => true
65
+ *
66
+ * // Using an aggregator key
67
+ * console.log(myTextField.isAggregatorAvailable('totalAttachmentSize'));
68
+ * // => false
69
+ * ```
70
+ */
71
+ isAggregatorAvailable(aggregator) {
72
+ const aggregatorKey = typeof aggregator === 'string' ? aggregator : aggregator.key;
73
+ const airtableInterface = this._sdk.__airtableInterface;
74
+ const availableAggregatorKeys = airtableInterface.aggregators.getAvailableAggregatorKeysForField(this._data);
75
+ return availableAggregatorKeys.some(key => key === aggregatorKey);
76
+ }
77
+
78
+ /**
79
+ * Checks whether the current user has permission to perform the given name update.
80
+ *
81
+ * Accepts partial input, in the same format as {@link updateNameAsync}.
82
+ *
83
+ * Returns `{hasPermission: true}` if the current user can update the specified field,
84
+ * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
85
+ * used to display an error message to the user.
86
+ *
87
+ * @param name new name for the field
88
+ *
89
+ * @example
90
+ * ```js
91
+ * const updateFieldCheckResult = field.checkPermissionsForUpdateName();
92
+ *
93
+ * if (!updateFieldCheckResult.hasPermission) {
94
+ * alert(updateFieldCheckResult.reasonDisplayString);
95
+ * }
96
+ * ```
97
+ */
98
+ checkPermissionsForUpdateName(name) {
99
+ return this._sdk.__mutations.checkPermissionsForMutation({
100
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_NAME,
101
+ tableId: this.parentTable.id,
102
+ id: this.id,
103
+ name
104
+ });
43
105
  }
44
- (0, _inherits2.default)(Field, _FieldCore);
45
- return (0, _createClass2.default)(Field, [{
46
- key: "availableAggregators",
47
- get:
48
- // The following method is untested because its implementation resists
49
- // testing and because it is expected to be redesigned.
50
- // istanbul ignore next
51
- /**
52
- * A list of available aggregators given this field's configuration.
53
- *
54
- * @example
55
- * ```js
56
- * const fieldAggregators = myField.availableAggregators;
57
- * ```
58
- */
59
- function get() {
60
- var airtableInterface = this._sdk.__airtableInterface;
61
- var availableAggregatorKeysSet = new Set(airtableInterface.aggregators.getAvailableAggregatorKeysForField(this._data));
62
- var _require = require('./models'),
63
- aggregators = _require.aggregators;
64
- return (0, _private_utils.values)(aggregators).filter(aggregator => {
65
- return availableAggregatorKeysSet.has(aggregator.key);
66
- });
67
- }
68
- // The following method is untested because its implementation resists
69
- // testing and because it is expected to be redesigned.
70
- // istanbul ignore next
71
- /**
72
- * Checks if the given aggregator is available for this field.
73
- *
74
- * @param aggregator The aggregator object or aggregator key.
75
- * @example
76
- * ```js
77
- * import {aggregators} from '@airtable/blocks/base/models';
78
- * const aggregator = aggregators.totalAttachmentSize;
79
- *
80
- * // Using an aggregator object
81
- * console.log(myAttachmentField.isAggregatorAvailable(aggregator));
82
- * // => true
83
- *
84
- * // Using an aggregator key
85
- * console.log(myTextField.isAggregatorAvailable('totalAttachmentSize'));
86
- * // => false
87
- * ```
88
- */
89
- }, {
90
- key: "isAggregatorAvailable",
91
- value: function isAggregatorAvailable(aggregator) {
92
- var aggregatorKey = typeof aggregator === 'string' ? aggregator : aggregator.key;
93
- var airtableInterface = this._sdk.__airtableInterface;
94
- var availableAggregatorKeys = airtableInterface.aggregators.getAvailableAggregatorKeysForField(this._data);
95
- return availableAggregatorKeys.some(key => key === aggregatorKey);
96
- }
97
106
 
98
- /**
99
- * Checks whether the current user has permission to perform the given name update.
100
- *
101
- * Accepts partial input, in the same format as {@link updateNameAsync}.
102
- *
103
- * Returns `{hasPermission: true}` if the current user can update the specified field,
104
- * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
105
- * used to display an error message to the user.
106
- *
107
- * @param name new name for the field
108
- *
109
- * @example
110
- * ```js
111
- * const updateFieldCheckResult = field.checkPermissionsForUpdateName();
112
- *
113
- * if (!updateFieldCheckResult.hasPermission) {
114
- * alert(updateFieldCheckResult.reasonDisplayString);
115
- * }
116
- * ```
117
- */
118
- }, {
119
- key: "checkPermissionsForUpdateName",
120
- value: function checkPermissionsForUpdateName(name) {
121
- return this._sdk.__mutations.checkPermissionsForMutation({
122
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_NAME,
123
- tableId: this.parentTable.id,
124
- id: this.id,
125
- name
126
- });
127
- }
107
+ /**
108
+ * An alias for `checkPermissionsForUpdateName(options).hasPermission`.
109
+ *
110
+ * Checks whether the current user has permission to perform the name update.
111
+ *
112
+ * Accepts partial input, in the same format as {@link updateNameAsync}.
113
+ *
114
+ * @param name new name for the field
115
+ *
116
+ * @example
117
+ * ```js
118
+ * const canUpdateField = field.hasPermissionToUpdateName();
119
+ *
120
+ * if (!canUpdateField) {
121
+ * alert('not allowed!');
122
+ * }
123
+ * ```
124
+ */
125
+ hasPermissionToUpdateName(name) {
126
+ return this.checkPermissionsForUpdateName(name).hasPermission;
127
+ }
128
128
 
129
- /**
130
- * An alias for `checkPermissionsForUpdateName(options).hasPermission`.
131
- *
132
- * Checks whether the current user has permission to perform the name update.
133
- *
134
- * Accepts partial input, in the same format as {@link updateNameAsync}.
135
- *
136
- * @param name new name for the field
137
- *
138
- * @example
139
- * ```js
140
- * const canUpdateField = field.hasPermissionToUpdateName();
141
- *
142
- * if (!canUpdateField) {
143
- * alert('not allowed!');
144
- * }
145
- * ```
146
- */
147
- }, {
148
- key: "hasPermissionToUpdateName",
149
- value: function hasPermissionToUpdateName(name) {
150
- return this.checkPermissionsForUpdateName(name).hasPermission;
151
- }
129
+ /**
130
+ * Updates the name for this field.
131
+ *
132
+ * Throws an error if the user does not have permission to update the field, or if an invalid
133
+ * name is provided.
134
+ *
135
+ * This action is asynchronous. Unlike updates to cell values, updates to field name are
136
+ * **not** applied optimistically locally. You must `await` the returned promise before
137
+ * relying on the change in your extension.
138
+ *
139
+ * @param name new name for the field
140
+ *
141
+ * @example
142
+ * ```js
143
+ * await myTextField.updateNameAsync('My New Name');
144
+ * ```
145
+ */
146
+ async updateNameAsync(name) {
147
+ await this._sdk.__mutations.applyMutationAsync({
148
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_NAME,
149
+ tableId: this.parentTable.id,
150
+ id: this.id,
151
+ name
152
+ });
153
+ }
152
154
 
153
- /**
154
- * Updates the name for this field.
155
- *
156
- * Throws an error if the user does not have permission to update the field, or if an invalid
157
- * name is provided.
158
- *
159
- * This action is asynchronous. Unlike updates to cell values, updates to field name are
160
- * **not** applied optimistically locally. You must `await` the returned promise before
161
- * relying on the change in your extension.
162
- *
163
- * @param name new name for the field
164
- *
165
- * @example
166
- * ```js
167
- * await myTextField.updateNameAsync('My New Name');
168
- * ```
169
- */
170
- }, {
171
- key: "updateNameAsync",
172
- value: (function () {
173
- var _updateNameAsync = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(name) {
174
- return _regenerator.default.wrap(function _callee$(_context) {
175
- while (1) switch (_context.prev = _context.next) {
176
- case 0:
177
- _context.next = 2;
178
- return this._sdk.__mutations.applyMutationAsync({
179
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_NAME,
180
- tableId: this.parentTable.id,
181
- id: this.id,
182
- name
183
- });
184
- case 2:
185
- case "end":
186
- return _context.stop();
187
- }
188
- }, _callee, this);
189
- }));
190
- function updateNameAsync(_x) {
191
- return _updateNameAsync.apply(this, arguments);
192
- }
193
- return updateNameAsync;
194
- }()
195
- /**
196
- * Checks whether the current user has permission to perform the given description update.
197
- *
198
- * Accepts partial input, in the same format as {@link updateDescriptionAsync}.
199
- *
200
- * Returns `{hasPermission: true}` if the current user can update the specified field,
201
- * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
202
- * used to display an error message to the user.
203
- *
204
- * @param description new description for the field
205
- *
206
- * @example
207
- * ```js
208
- * const updateFieldCheckResult = field.checkPermissionsForUpdateDescription();
209
- *
210
- * if (!updateFieldCheckResult.hasPermission) {
211
- * alert(updateFieldCheckResult.reasonDisplayString);
212
- * }
213
- * ```
214
- */
215
- )
216
- }, {
217
- key: "checkPermissionsForUpdateDescription",
218
- value: function checkPermissionsForUpdateDescription(description) {
219
- return this._sdk.__mutations.checkPermissionsForMutation({
220
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_DESCRIPTION,
221
- tableId: this.parentTable.id,
222
- id: this.id,
223
- description
224
- });
225
- }
155
+ /**
156
+ * Checks whether the current user has permission to perform the given description update.
157
+ *
158
+ * Accepts partial input, in the same format as {@link updateDescriptionAsync}.
159
+ *
160
+ * Returns `{hasPermission: true}` if the current user can update the specified field,
161
+ * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
162
+ * used to display an error message to the user.
163
+ *
164
+ * @param description new description for the field
165
+ *
166
+ * @example
167
+ * ```js
168
+ * const updateFieldCheckResult = field.checkPermissionsForUpdateDescription();
169
+ *
170
+ * if (!updateFieldCheckResult.hasPermission) {
171
+ * alert(updateFieldCheckResult.reasonDisplayString);
172
+ * }
173
+ * ```
174
+ */
175
+ checkPermissionsForUpdateDescription(description) {
176
+ return this._sdk.__mutations.checkPermissionsForMutation({
177
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_DESCRIPTION,
178
+ tableId: this.parentTable.id,
179
+ id: this.id,
180
+ description
181
+ });
182
+ }
183
+
184
+ /**
185
+ * An alias for `checkPermissionsForUpdateDescription(options).hasPermission`.
186
+ *
187
+ * Checks whether the current user has permission to perform the description update.
188
+ *
189
+ * Accepts partial input, in the same format as {@link updateDescriptionAsync}.
190
+ *
191
+ * @param description new description for the field
192
+ *
193
+ * @example
194
+ * ```js
195
+ * const canUpdateField = field.hasPermissionToUpdateDescription();
196
+ *
197
+ * if (!canUpdateField) {
198
+ * alert('not allowed!');
199
+ * }
200
+ * ```
201
+ */
202
+ hasPermissionToUpdateDescription(description) {
203
+ return this.checkPermissionsForUpdateDescription(description).hasPermission;
204
+ }
226
205
 
227
- /**
228
- * An alias for `checkPermissionsForUpdateDescription(options).hasPermission`.
229
- *
230
- * Checks whether the current user has permission to perform the description update.
231
- *
232
- * Accepts partial input, in the same format as {@link updateDescriptionAsync}.
233
- *
234
- * @param description new description for the field
235
- *
236
- * @example
237
- * ```js
238
- * const canUpdateField = field.hasPermissionToUpdateDescription();
239
- *
240
- * if (!canUpdateField) {
241
- * alert('not allowed!');
242
- * }
243
- * ```
244
- */
245
- }, {
246
- key: "hasPermissionToUpdateDescription",
247
- value: function hasPermissionToUpdateDescription(description) {
248
- return this.checkPermissionsForUpdateDescription(description).hasPermission;
249
- }
206
+ /**
207
+ * Updates the description for this field.
208
+ *
209
+ * To remove an existing description, pass `''` as the new description.
210
+ * `null` is also accepted and will be coerced to `''` for consistency with field creation.
211
+ *
212
+ * Throws an error if the user does not have permission to update the field, or if an invalid
213
+ * description is provided.
214
+ *
215
+ * This action is asynchronous. Unlike updates to cell values, updates to field descriptions are
216
+ * **not** applied optimistically locally. You must `await` the returned promise before
217
+ * relying on the change in your extension.
218
+ *
219
+ * @param description new description for the field
220
+ *
221
+ * @example
222
+ * ```js
223
+ * await myTextField.updateDescriptionAsync('This is a text field');
224
+ * ```
225
+ */
226
+ async updateDescriptionAsync(description) {
227
+ await this._sdk.__mutations.applyMutationAsync({
228
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_DESCRIPTION,
229
+ tableId: this.parentTable.id,
230
+ id: this.id,
231
+ description
232
+ });
233
+ }
250
234
 
251
- /**
252
- * Updates the description for this field.
253
- *
254
- * To remove an existing description, pass `''` as the new description.
255
- * `null` is also accepted and will be coerced to `''` for consistency with field creation.
256
- *
257
- * Throws an error if the user does not have permission to update the field, or if an invalid
258
- * description is provided.
259
- *
260
- * This action is asynchronous. Unlike updates to cell values, updates to field descriptions are
261
- * **not** applied optimistically locally. You must `await` the returned promise before
262
- * relying on the change in your extension.
263
- *
264
- * @param description new description for the field
265
- *
266
- * @example
267
- * ```js
268
- * await myTextField.updateDescriptionAsync('This is a text field');
269
- * ```
270
- */
271
- }, {
272
- key: "updateDescriptionAsync",
273
- value: (function () {
274
- var _updateDescriptionAsync = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(description) {
275
- return _regenerator.default.wrap(function _callee2$(_context2) {
276
- while (1) switch (_context2.prev = _context2.next) {
277
- case 0:
278
- _context2.next = 2;
279
- return this._sdk.__mutations.applyMutationAsync({
280
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_DESCRIPTION,
281
- tableId: this.parentTable.id,
282
- id: this.id,
283
- description
284
- });
285
- case 2:
286
- case "end":
287
- return _context2.stop();
288
- }
289
- }, _callee2, this);
290
- }));
291
- function updateDescriptionAsync(_x2) {
292
- return _updateDescriptionAsync.apply(this, arguments);
235
+ /**
236
+ * Checks whether the current user has permission to perform the given options update.
237
+ *
238
+ * Accepts partial input, in the same format as {@link updateOptionsAsync}.
239
+ *
240
+ * Returns `{hasPermission: true}` if the current user can update the specified field,
241
+ * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
242
+ * used to display an error message to the user.
243
+ *
244
+ * @param options new options for the field
245
+ *
246
+ * @example
247
+ * ```js
248
+ * const updateFieldCheckResult = field.checkPermissionsForUpdateOptions();
249
+ *
250
+ * if (!updateFieldCheckResult.hasPermission) {
251
+ * alert(updateFieldCheckResult.reasonDisplayString);
252
+ * }
253
+ * ```
254
+ */
255
+ checkPermissionsForUpdateOptions(options) {
256
+ return this._sdk.__mutations.checkPermissionsForMutation({
257
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_CONFIG,
258
+ tableId: this.parentTable.id,
259
+ id: this.id,
260
+ config: {
261
+ type: this.type,
262
+ options: options
293
263
  }
294
- return updateDescriptionAsync;
295
- }()
296
- /**
297
- * Checks whether the current user has permission to perform the given options update.
298
- *
299
- * Accepts partial input, in the same format as {@link updateOptionsAsync}.
300
- *
301
- * Returns `{hasPermission: true}` if the current user can update the specified field,
302
- * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
303
- * used to display an error message to the user.
304
- *
305
- * @param options new options for the field
306
- *
307
- * @example
308
- * ```js
309
- * const updateFieldCheckResult = field.checkPermissionsForUpdateOptions();
310
- *
311
- * if (!updateFieldCheckResult.hasPermission) {
312
- * alert(updateFieldCheckResult.reasonDisplayString);
313
- * }
314
- * ```
315
- */
316
- )
317
- }, {
318
- key: "checkPermissionsForUpdateOptions",
319
- value: function checkPermissionsForUpdateOptions(options) {
320
- return this._sdk.__mutations.checkPermissionsForMutation({
321
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_CONFIG,
322
- tableId: this.parentTable.id,
323
- id: this.id,
324
- config: {
325
- type: this.type,
326
- options: options
327
- }
328
- });
329
- }
264
+ });
265
+ }
330
266
 
331
- /**
332
- * An alias for `checkPermissionsForUpdateOptions(options).hasPermission`.
333
- *
334
- * Checks whether the current user has permission to perform the options update.
335
- *
336
- * Accepts partial input, in the same format as {@link updateOptionsAsync}.
337
- *
338
- * @param options new options for the field
339
- *
340
- * @example
341
- * ```js
342
- * const canUpdateField = field.hasPermissionToUpdateOptions();
343
- *
344
- * if (!canUpdateField) {
345
- * alert('not allowed!');
346
- * }
347
- * ```
348
- */
349
- }, {
350
- key: "hasPermissionToUpdateOptions",
351
- value: function hasPermissionToUpdateOptions(options) {
352
- return this.checkPermissionsForUpdateOptions(options).hasPermission;
353
- }
267
+ /**
268
+ * An alias for `checkPermissionsForUpdateOptions(options).hasPermission`.
269
+ *
270
+ * Checks whether the current user has permission to perform the options update.
271
+ *
272
+ * Accepts partial input, in the same format as {@link updateOptionsAsync}.
273
+ *
274
+ * @param options new options for the field
275
+ *
276
+ * @example
277
+ * ```js
278
+ * const canUpdateField = field.hasPermissionToUpdateOptions();
279
+ *
280
+ * if (!canUpdateField) {
281
+ * alert('not allowed!');
282
+ * }
283
+ * ```
284
+ */
285
+ hasPermissionToUpdateOptions(options) {
286
+ return this.checkPermissionsForUpdateOptions(options).hasPermission;
287
+ }
354
288
 
355
- /**
356
- * Updates the options for this field.
357
- *
358
- * Throws an error if the user does not have permission to update the field, if invalid
359
- * options are provided, if this field has no writable options, or if updates to this field
360
- * type is not supported.
361
- *
362
- * Refer to {@link FieldType} for supported field types, the write format for options, and
363
- * other specifics for certain field types.
364
- *
365
- * This action is asynchronous. Unlike updates to cell values, updates to field options are
366
- * **not** applied optimistically locally. You must `await` the returned promise before
367
- * relying on the change in your extension.
368
- *
369
- * Optionally, you can pass an `opts` object as the second argument. See {@link UpdateFieldOptionsOpts}
370
- * for available options.
371
- *
372
- * @param options new options for the field
373
- * @param opts optional options to affect the behavior of the update
374
- *
375
- * @example
376
- * ```js
377
- * async function addChoiceToSelectField(selectField, nameForNewOption) {
378
- * const updatedOptions = {
379
- * choices: [
380
- * ...selectField.options.choices,
381
- * {name: nameForNewOption},
382
- * ]
383
- * };
384
- *
385
- * if (selectField.hasPermissionToUpdateOptions(updatedOptions)) {
386
- * await selectField.updateOptionsAsync(updatedOptions);
387
- * }
388
- * }
389
- * ```
390
- */
391
- }, {
392
- key: "updateOptionsAsync",
393
- value: (function () {
394
- var _updateOptionsAsync = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(options) {
395
- var opts,
396
- _args3 = arguments;
397
- return _regenerator.default.wrap(function _callee3$(_context3) {
398
- while (1) switch (_context3.prev = _context3.next) {
399
- case 0:
400
- opts = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
401
- _context3.next = 3;
402
- return this._sdk.__mutations.applyMutationAsync({
403
- type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_CONFIG,
404
- tableId: this.parentTable.id,
405
- id: this.id,
406
- config: {
407
- type: this.type,
408
- options: options
409
- },
410
- opts
411
- });
412
- case 3:
413
- case "end":
414
- return _context3.stop();
415
- }
416
- }, _callee3, this);
417
- }));
418
- function updateOptionsAsync(_x3) {
419
- return _updateOptionsAsync.apply(this, arguments);
420
- }
421
- return updateOptionsAsync;
422
- }())
423
- }]);
424
- }(_field_core.FieldCore);
425
- /** @internal */
426
- (0, _defineProperty2.default)(Field, "_className", 'Field');
289
+ /**
290
+ * Updates the options for this field.
291
+ *
292
+ * Throws an error if the user does not have permission to update the field, if invalid
293
+ * options are provided, if this field has no writable options, or if updates to this field
294
+ * type is not supported.
295
+ *
296
+ * Refer to {@link FieldType} for supported field types, the write format for options, and
297
+ * other specifics for certain field types.
298
+ *
299
+ * This action is asynchronous. Unlike updates to cell values, updates to field options are
300
+ * **not** applied optimistically locally. You must `await` the returned promise before
301
+ * relying on the change in your extension.
302
+ *
303
+ * Optionally, you can pass an `opts` object as the second argument. See {@link UpdateFieldOptionsOpts}
304
+ * for available options.
305
+ *
306
+ * @param options new options for the field
307
+ * @param opts optional options to affect the behavior of the update
308
+ *
309
+ * @example
310
+ * ```js
311
+ * async function addChoiceToSelectField(selectField, nameForNewOption) {
312
+ * const updatedOptions = {
313
+ * choices: [
314
+ * ...selectField.options.choices,
315
+ * {name: nameForNewOption},
316
+ * ]
317
+ * };
318
+ *
319
+ * if (selectField.hasPermissionToUpdateOptions(updatedOptions)) {
320
+ * await selectField.updateOptionsAsync(updatedOptions);
321
+ * }
322
+ * }
323
+ * ```
324
+ */
325
+ async updateOptionsAsync(options) {
326
+ let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
327
+ await this._sdk.__mutations.applyMutationAsync({
328
+ type: _mutations.MutationTypes.UPDATE_SINGLE_FIELD_CONFIG,
329
+ tableId: this.parentTable.id,
330
+ id: this.id,
331
+ config: {
332
+ type: this.type,
333
+ options: options
334
+ },
335
+ opts
336
+ });
337
+ }
338
+ }
427
339
  var _default = exports.default = Field;