@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,45 +1,17 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.array.filter.js");
4
- require("core-js/modules/es.array.from.js");
5
- require("core-js/modules/es.array.iterator.js");
6
- require("core-js/modules/es.array.slice.js");
7
- require("core-js/modules/es.object.get-own-property-descriptors.js");
8
- require("core-js/modules/es.object.to-string.js");
9
- require("core-js/modules/es.regexp.exec.js");
10
- require("core-js/modules/es.regexp.to-string.js");
11
- require("core-js/modules/web.dom-collections.for-each.js");
12
- require("core-js/modules/web.dom-collections.iterator.js");
13
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
14
3
  Object.defineProperty(exports, "__esModule", {
15
4
  value: true
16
5
  });
17
6
  exports.default = void 0;
18
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
19
- require("core-js/modules/es.symbol.js");
20
- require("core-js/modules/es.symbol.description.js");
21
- require("core-js/modules/es.array.map.js");
22
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
23
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
24
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
25
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
26
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
27
- var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
28
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
29
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
30
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
7
  var _base_core = require("../../shared/models/base_core");
32
8
  var _mutations = require("../types/mutations");
33
9
  var _private_utils = require("../../shared/private_utils");
34
10
  var _record_store = _interopRequireDefault(require("./record_store"));
35
11
  var _table = _interopRequireDefault(require("./table"));
36
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
37
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
38
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
39
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
40
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
41
- 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)); }
42
- 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: Base */ /** */
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ /** @module @airtable/blocks/models: Base */ /** */
14
+
43
15
  /**
44
16
  * Model class representing a base.
45
17
  *
@@ -55,252 +27,201 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
55
27
  * ```
56
28
  * @docsPath models/Base
57
29
  */
58
- var Base = /*#__PURE__*/function (_BaseCore) {
59
- function Base() {
60
- (0, _classCallCheck2.default)(this, Base);
61
- return _callSuper(this, Base, arguments);
30
+ class Base extends _base_core.BaseCore {
31
+ /** @internal */
32
+ static _className = 'Base';
33
+
34
+ /** @internal */
35
+ _constructTable(tableId) {
36
+ const recordStore = this.__getRecordStore(tableId);
37
+ return new _table.default(this, recordStore, tableId, this._sdk);
62
38
  }
63
- (0, _inherits2.default)(Base, _BaseCore);
64
- return (0, _createClass2.default)(Base, [{
65
- key: "_constructTable",
66
- value: /** @internal */
67
- function _constructTable(tableId) {
68
- var recordStore = this.__getRecordStore(tableId);
69
- return new _table.default(this, recordStore, tableId, this._sdk);
70
- }
71
39
 
72
- /** @internal */
73
- }, {
74
- key: "_constructRecordStore",
75
- value: function _constructRecordStore(sdk, tableId) {
76
- return new _record_store.default(sdk, tableId);
77
- }
40
+ /** @internal */
41
+ _constructRecordStore(sdk, tableId) {
42
+ return new _record_store.default(sdk, tableId);
43
+ }
78
44
 
79
- /** @internal */
80
- }, {
81
- key: "_iterateTableIds",
82
- value: function _iterateTableIds() {
83
- return this._data.tableOrder;
84
- }
45
+ /** @internal */
46
+ _iterateTableIds() {
47
+ return this._data.tableOrder;
48
+ }
85
49
 
86
- /**
87
- * Checks whether the current user has permission to create a table.
88
- *
89
- * Accepts partial input, in the same format as {@link createTableAsync}.
90
- *
91
- * Returns `{hasPermission: true}` if the current user can update the specified record,
92
- * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
93
- * used to display an error message to the user.
94
- *
95
- * @param name name for the table. must be case-insensitive unique
96
- * @param fields array of fields to create in the table
97
- *
98
- * @example
99
- * ```js
100
- * const createTableCheckResult = base.checkPermissionsForCreateTable();
101
- *
102
- * if (!createTableCheckResult.hasPermission) {
103
- * alert(createTableCheckResult.reasonDisplayString);
104
- * }
105
- * ```
106
- */
107
- }, {
108
- key: "checkPermissionsForCreateTable",
109
- value: function checkPermissionsForCreateTable(name, fields) {
110
- return this._sdk.__mutations.checkPermissionsForMutation({
111
- type: _mutations.MutationTypes.CREATE_SINGLE_TABLE,
112
- id: undefined,
113
- // Generated in createTableAsync.
114
- name: name,
115
- fields: fields === null || fields === void 0 ? void 0 : fields.map(field => {
116
- return {
117
- name: field.name,
118
- config: field.type ? _objectSpread({
119
- type: field.type
120
- }, field.options ? {
50
+ /**
51
+ * Checks whether the current user has permission to create a table.
52
+ *
53
+ * Accepts partial input, in the same format as {@link createTableAsync}.
54
+ *
55
+ * Returns `{hasPermission: true}` if the current user can update the specified record,
56
+ * `{hasPermission: false, reasonDisplayString: string}` otherwise. `reasonDisplayString` may be
57
+ * used to display an error message to the user.
58
+ *
59
+ * @param name name for the table. must be case-insensitive unique
60
+ * @param fields array of fields to create in the table
61
+ *
62
+ * @example
63
+ * ```js
64
+ * const createTableCheckResult = base.checkPermissionsForCreateTable();
65
+ *
66
+ * if (!createTableCheckResult.hasPermission) {
67
+ * alert(createTableCheckResult.reasonDisplayString);
68
+ * }
69
+ * ```
70
+ */
71
+ checkPermissionsForCreateTable(name, fields) {
72
+ return this._sdk.__mutations.checkPermissionsForMutation({
73
+ type: _mutations.MutationTypes.CREATE_SINGLE_TABLE,
74
+ id: undefined,
75
+ // Generated in createTableAsync.
76
+ name: name,
77
+ fields: fields?.map(field => {
78
+ return {
79
+ name: field.name,
80
+ config: field.type ? {
81
+ type: field.type,
82
+ // In field.options we translate options to null when it's undefined (no options),
83
+ // but the mutation expects config to match the PublicApiConfig, where it's
84
+ // not present at all (options: undefined will fail validation).
85
+ ...(field.options ? {
121
86
  options: field.options
122
- } : null) : undefined,
123
- description: field.description
124
- };
125
- })
126
- });
127
- }
87
+ } : null)
88
+ } : undefined,
89
+ description: field.description
90
+ };
91
+ })
92
+ });
93
+ }
128
94
 
129
- /**
130
- * An alias for `checkPermissionsForCreateTable(name, fields).hasPermission`.
131
- *
132
- * Checks whether the current user has permission to create a table.
133
- *
134
- * Accepts partial input, in the same format as {@link createTableAsync}.
135
- *
136
- * @param name name for the table. must be case-insensitive unique
137
- * @param fields array of fields to create in the table
138
- *
139
- * @example
140
- * ```js
141
- * const canCreateTable = table.hasPermissionToCreateTable();
142
- *
143
- * if (!canCreateTable) {
144
- * alert('not allowed!');
145
- * }
146
- * ```
147
- */
148
- }, {
149
- key: "hasPermissionToCreateTable",
150
- value: function hasPermissionToCreateTable(name, fields) {
151
- return this.checkPermissionsForCreateTable(name, fields).hasPermission;
152
- }
95
+ /**
96
+ * An alias for `checkPermissionsForCreateTable(name, fields).hasPermission`.
97
+ *
98
+ * Checks whether the current user has permission to create a table.
99
+ *
100
+ * Accepts partial input, in the same format as {@link createTableAsync}.
101
+ *
102
+ * @param name name for the table. must be case-insensitive unique
103
+ * @param fields array of fields to create in the table
104
+ *
105
+ * @example
106
+ * ```js
107
+ * const canCreateTable = table.hasPermissionToCreateTable();
108
+ *
109
+ * if (!canCreateTable) {
110
+ * alert('not allowed!');
111
+ * }
112
+ * ```
113
+ */
114
+ hasPermissionToCreateTable(name, fields) {
115
+ return this.checkPermissionsForCreateTable(name, fields).hasPermission;
116
+ }
153
117
 
154
- /**
155
- * Creates a new table.
156
- *
157
- * Throws an error if the user does not have permission to create a table, if an invalid
158
- * table name is provided, or if invalid fields are provided (invalid name, type, options or
159
- * description).
160
- *
161
- * Refer to {@link FieldType} for supported field types, the write format for field options, and
162
- * other specifics for certain field types.
163
- *
164
- * At least one field must be specified. The first field in the `fields` array will be used as
165
- * the table's [primary field](https://support.airtable.com/hc/en-us/articles/202624179-The-Name-Field)
166
- * and must be a supported primary field type. Fields must have case-insensitive unique names
167
- * within the table.
168
- *
169
- * A default grid view will be created with all fields visible.
170
- *
171
- * This action is asynchronous. Unlike new records, new tables are **not** created
172
- * optimistically locally. You must `await` the returned promise before using the new
173
- * table in your extension.
174
- *
175
- * @param name name for the table. must be case-insensitive unique
176
- * @param fields array of fields to create in the table: see below for an example. `name` and
177
- * `type` must be specified for all fields, while `options` is only required for fields that
178
- * have field options. `description` is optional and will be `''` if not specified or if
179
- * specified as `null`.
180
- *
181
- * @example
182
- * ```js
183
- * async function createNewTable() {
184
- * const name = 'My new table';
185
- * const fields = [
186
- * // Name will be the primary field of the table.
187
- * {name: 'Name', type: FieldType.SINGLE_LINE_TEXT, description: 'This is the primary field'},
188
- * {name: 'Notes', type: FieldType.RICH_TEXT},
189
- * {name: 'Attachments', type: FieldType.MULTIPLE_ATTACHMENTS},
190
- * {name: 'Number', type: FieldType.NUMBER, options: {
191
- * precision: 8,
192
- * }},
193
- * {name: 'Select', type: FieldType.SINGLE_SELECT, options: {
194
- * choices: [
195
- * {name: 'A'},
196
- * {name: 'B'},
197
- * ],
198
- * }},
199
- * ];
200
- *
201
- * if (base.hasPermissionToCreateTable(name, fields)) {
202
- * await base.createTableAsync(name, fields);
203
- * }
204
- * }
205
- * ```
206
- */
207
- }, {
208
- key: "createTableAsync",
209
- value: (function () {
210
- var _createTableAsync = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(name, fields) {
211
- var tableId;
212
- return _regenerator.default.wrap(function _callee$(_context) {
213
- while (1) switch (_context.prev = _context.next) {
214
- case 0:
215
- tableId = this._sdk.__airtableInterface.idGenerator.generateTableId();
216
- _context.next = 3;
217
- return this._sdk.__mutations.applyMutationAsync({
218
- id: tableId,
219
- type: _mutations.MutationTypes.CREATE_SINGLE_TABLE,
220
- name,
221
- fields: fields.map(field => {
222
- var _field$description;
223
- return {
224
- name: field.name,
225
- config: _objectSpread({
226
- type: field.type
227
- }, field.options ? {
228
- options: field.options
229
- } : null),
230
- // Coerce undefined to null so that only old SDKs pass "undefined" for description
231
- // '' is permitted, as we already set empty descriptions to '' when editing descriptions
232
- // from the UI
233
- description: (_field$description = field.description) !== null && _field$description !== void 0 ? _field$description : null
234
- };
235
- })
236
- });
237
- case 3:
238
- return _context.abrupt("return", this.getTableById(tableId));
239
- case 4:
240
- case "end":
241
- return _context.stop();
242
- }
243
- }, _callee, this);
244
- }));
245
- function createTableAsync(_x, _x2) {
246
- return _createTableAsync.apply(this, arguments);
247
- }
248
- return createTableAsync;
249
- }()
250
- /**
251
- * @internal
252
- */
253
- )
254
- }, {
255
- key: "__triggerOnChangeForChangedPaths",
256
- value: function __triggerOnChangeForChangedPaths(changedPaths) {
257
- (0, _get2.default)((0, _getPrototypeOf2.default)(Base.prototype), "__triggerOnChangeForChangedPaths", this).call(this, changedPaths);
258
- var didSchemaChange = false;
259
- if (changedPaths.tableOrder) {
260
- this._onChange(_base_core.WatchableBaseKeys.tables);
261
- didSchemaChange = true;
118
+ /**
119
+ * Creates a new table.
120
+ *
121
+ * Throws an error if the user does not have permission to create a table, if an invalid
122
+ * table name is provided, or if invalid fields are provided (invalid name, type, options or
123
+ * description).
124
+ *
125
+ * Refer to {@link FieldType} for supported field types, the write format for field options, and
126
+ * other specifics for certain field types.
127
+ *
128
+ * At least one field must be specified. The first field in the `fields` array will be used as
129
+ * the table's [primary field](https://support.airtable.com/hc/en-us/articles/202624179-The-Name-Field)
130
+ * and must be a supported primary field type. Fields must have case-insensitive unique names
131
+ * within the table.
132
+ *
133
+ * A default grid view will be created with all fields visible.
134
+ *
135
+ * This action is asynchronous. Unlike new records, new tables are **not** created
136
+ * optimistically locally. You must `await` the returned promise before using the new
137
+ * table in your extension.
138
+ *
139
+ * @param name name for the table. must be case-insensitive unique
140
+ * @param fields array of fields to create in the table: see below for an example. `name` and
141
+ * `type` must be specified for all fields, while `options` is only required for fields that
142
+ * have field options. `description` is optional and will be `''` if not specified or if
143
+ * specified as `null`.
144
+ *
145
+ * @example
146
+ * ```js
147
+ * async function createNewTable() {
148
+ * const name = 'My new table';
149
+ * const fields = [
150
+ * // Name will be the primary field of the table.
151
+ * {name: 'Name', type: FieldType.SINGLE_LINE_TEXT, description: 'This is the primary field'},
152
+ * {name: 'Notes', type: FieldType.RICH_TEXT},
153
+ * {name: 'Attachments', type: FieldType.MULTIPLE_ATTACHMENTS},
154
+ * {name: 'Number', type: FieldType.NUMBER, options: {
155
+ * precision: 8,
156
+ * }},
157
+ * {name: 'Select', type: FieldType.SINGLE_SELECT, options: {
158
+ * choices: [
159
+ * {name: 'A'},
160
+ * {name: 'B'},
161
+ * ],
162
+ * }},
163
+ * ];
164
+ *
165
+ * if (base.hasPermissionToCreateTable(name, fields)) {
166
+ * await base.createTableAsync(name, fields);
167
+ * }
168
+ * }
169
+ * ```
170
+ */
171
+ async createTableAsync(name, fields) {
172
+ const tableId = this._sdk.__airtableInterface.idGenerator.generateTableId();
173
+ await this._sdk.__mutations.applyMutationAsync({
174
+ id: tableId,
175
+ type: _mutations.MutationTypes.CREATE_SINGLE_TABLE,
176
+ name,
177
+ fields: fields.map(field => {
178
+ return {
179
+ name: field.name,
180
+ config: {
181
+ type: field.type,
182
+ // In field.options we translate options to null when it's undefined (no options),
183
+ // but the mutation expects config to match the PublicApiConfig, where it's
184
+ // not present at all (options: undefined will fail validation).
185
+ ...(field.options ? {
186
+ options: field.options
187
+ } : null)
188
+ },
189
+ // Coerce undefined to null so that only old SDKs pass "undefined" for description
190
+ // '' is permitted, as we already set empty descriptions to '' when editing descriptions
191
+ // from the UI
192
+ description: field.description ?? null
193
+ };
194
+ })
195
+ });
196
+ return this.getTableById(tableId);
197
+ }
262
198
 
263
- // Clean up deleted tables
264
- var _iterator = _createForOfIteratorHelper((0, _private_utils.entries)(this._tableModelsById)),
265
- _step;
266
- try {
267
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
268
- var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
269
- tableId = _step$value[0],
270
- tableModel = _step$value[1];
271
- if (tableModel.isDeleted) {
272
- delete this._tableModelsById[tableId];
273
- }
274
- }
275
- } catch (err) {
276
- _iterator.e(err);
277
- } finally {
278
- _iterator.f();
279
- }
280
- var _iterator2 = _createForOfIteratorHelper((0, _private_utils.entries)(this._tableRecordStoresByTableId)),
281
- _step2;
282
- try {
283
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
284
- var _step2$value = (0, _slicedToArray2.default)(_step2.value, 2),
285
- _tableId = _step2$value[0],
286
- recordStore = _step2$value[1];
287
- if (recordStore && recordStore.isDeleted) {
288
- recordStore.__onDataDeletion();
289
- delete this._tableRecordStoresByTableId[_tableId];
290
- }
291
- }
292
- } catch (err) {
293
- _iterator2.e(err);
294
- } finally {
295
- _iterator2.f();
199
+ /**
200
+ * @internal
201
+ */
202
+ __triggerOnChangeForChangedPaths(changedPaths) {
203
+ super.__triggerOnChangeForChangedPaths(changedPaths);
204
+ let didSchemaChange = false;
205
+ if (changedPaths.tableOrder) {
206
+ this._onChange(_base_core.WatchableBaseKeys.tables);
207
+ didSchemaChange = true;
208
+
209
+ // Clean up deleted tables
210
+ for (const [tableId, tableModel] of (0, _private_utils.entries)(this._tableModelsById)) {
211
+ if (tableModel.isDeleted) {
212
+ delete this._tableModelsById[tableId];
296
213
  }
297
214
  }
298
- if (didSchemaChange) {
299
- this._onChange(_base_core.WatchableBaseKeys.schema);
215
+ for (const [tableId, recordStore] of (0, _private_utils.entries)(this._tableRecordStoresByTableId)) {
216
+ if (recordStore && recordStore.isDeleted) {
217
+ recordStore.__onDataDeletion();
218
+ delete this._tableRecordStoresByTableId[tableId];
219
+ }
300
220
  }
301
221
  }
302
- }]);
303
- }(_base_core.BaseCore);
304
- /** @internal */
305
- (0, _defineProperty2.default)(Base, "_className", 'Base');
222
+ if (didSchemaChange) {
223
+ this._onChange(_base_core.WatchableBaseKeys.schema);
224
+ }
225
+ }
226
+ }
306
227
  var _default = exports.default = Base;
@@ -1,25 +1,14 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.symbol.js");
4
- require("core-js/modules/es.symbol.description.js");
5
- require("core-js/modules/es.array.from.js");
6
- require("core-js/modules/es.array.iterator.js");
7
- require("core-js/modules/es.array.slice.js");
8
- require("core-js/modules/es.object.to-string.js");
9
- require("core-js/modules/es.regexp.exec.js");
10
- require("core-js/modules/es.regexp.to-string.js");
11
- require("core-js/modules/web.dom-collections.iterator.js");
12
3
  Object.defineProperty(exports, "__esModule", {
13
4
  value: true
14
5
  });
15
6
  exports.__injectSdkIntoCreateAggregators = __injectSdkIntoCreateAggregators;
16
7
  exports.default = createAggregators;
17
- require("core-js/modules/es.array.map.js");
18
8
  var _error_utils = require("../../shared/error_utils");
19
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
20
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
21
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } // istanbul ignore file
9
+ // istanbul ignore file
22
10
  /** @module @airtable/blocks/models: Aggregators */ /** */
11
+
23
12
  /**
24
13
  * Aggregators can be used to compute aggregates for cell values.
25
14
  *
@@ -47,24 +36,26 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
47
36
  * @hidden
48
37
  */
49
38
 
50
- var aggregate = (aggregatorKey, records, field) => {
39
+ const aggregate = (aggregatorKey, records, field) => {
51
40
  if (!field.isAggregatorAvailable(aggregatorKey)) {
52
41
  throw (0, _error_utils.spawnError)('The %s aggregator is not available for %s fields', aggregatorKey, field.type);
53
42
  }
54
- var _sdk2 = sdk,
55
- appInterface = _sdk2.__appInterface,
56
- airtableInterface = _sdk2.__airtableInterface;
57
- var cellValues = records.map(record => record._getRawCellValue(field));
43
+ const {
44
+ __appInterface: appInterface,
45
+ __airtableInterface: airtableInterface
46
+ } = sdk;
47
+ const cellValues = records.map(record => record._getRawCellValue(field));
58
48
  return airtableInterface.aggregators.aggregate(appInterface, aggregatorKey, cellValues, field._data);
59
49
  };
60
- var aggregateToString = (aggregatorKey, records, field) => {
50
+ const aggregateToString = (aggregatorKey, records, field) => {
61
51
  if (!field.isAggregatorAvailable(aggregatorKey)) {
62
52
  throw (0, _error_utils.spawnError)('The %s aggregator is not available for %s fields', aggregatorKey, field.type);
63
53
  }
64
- var _sdk3 = sdk,
65
- appInterface = _sdk3.__appInterface,
66
- airtableInterface = _sdk3.__airtableInterface;
67
- var cellValues = records.map(record => record._getRawCellValue(field));
54
+ const {
55
+ __appInterface: appInterface,
56
+ __airtableInterface: airtableInterface
57
+ } = sdk;
58
+ const cellValues = records.map(record => record._getRawCellValue(field));
68
59
  return airtableInterface.aggregators.aggregateToString(appInterface, aggregatorKey, cellValues, field._data);
69
60
  };
70
61
 
@@ -80,33 +71,25 @@ var aggregateToString = (aggregatorKey, records, field) => {
80
71
  * @hidden
81
72
  */
82
73
  function createAggregators() {
83
- var _sdk4 = sdk,
84
- airtableInterface = _sdk4.__airtableInterface;
85
- var aggregators = {};
86
- var aggregatorKeys = airtableInterface.aggregators.getAllAvailableAggregatorKeys();
87
- var _iterator = _createForOfIteratorHelper(aggregatorKeys),
88
- _step;
89
- try {
90
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
91
- var _key = _step.value;
92
- var config = airtableInterface.aggregators.getAggregatorConfig(_key);
93
- aggregators[_key] = Object.freeze({
94
- key: _key,
95
- displayName: config.displayName,
96
- shortDisplayName: config.shortDisplayName,
97
- aggregate: aggregate.bind(null, _key),
98
- aggregateToString: aggregateToString.bind(null, _key)
99
- });
100
- }
101
- } catch (err) {
102
- _iterator.e(err);
103
- } finally {
104
- _iterator.f();
74
+ const {
75
+ __airtableInterface: airtableInterface
76
+ } = sdk;
77
+ const aggregators = {};
78
+ const aggregatorKeys = airtableInterface.aggregators.getAllAvailableAggregatorKeys();
79
+ for (const key of aggregatorKeys) {
80
+ const config = airtableInterface.aggregators.getAggregatorConfig(key);
81
+ aggregators[key] = Object.freeze({
82
+ key,
83
+ displayName: config.displayName,
84
+ shortDisplayName: config.shortDisplayName,
85
+ aggregate: aggregate.bind(null, key),
86
+ aggregateToString: aggregateToString.bind(null, key)
87
+ });
105
88
  }
106
89
  Object.freeze(aggregators);
107
90
  return aggregators;
108
91
  }
109
- var sdk;
92
+ let sdk;
110
93
 
111
94
  // The application-level Sdk instance must be injected dynamically to avoid
112
95
  // circular dependencies at the time of module resolution.