@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.
- package/dist/cjs/base/assert_run_context.js +12 -0
- package/dist/cjs/base/index.js +30 -30
- package/dist/cjs/base/models/abstract_model_with_async_data.js +154 -237
- package/dist/cjs/base/models/base.js +188 -267
- package/dist/cjs/base/models/create_aggregators.js +29 -46
- package/dist/cjs/base/models/cursor.js +206 -294
- package/dist/cjs/base/models/field.js +307 -395
- package/dist/cjs/base/models/grouped_record_query_result.js +219 -338
- package/dist/cjs/base/models/linked_records_query_result.js +450 -625
- package/dist/cjs/base/models/models.js +19 -22
- package/dist/cjs/base/models/mutations.js +267 -293
- package/dist/cjs/base/models/object_pool.js +117 -156
- package/dist/cjs/base/models/record.js +191 -256
- package/dist/cjs/base/models/record_coloring.js +6 -6
- package/dist/cjs/base/models/record_query_result.js +351 -435
- package/dist/cjs/base/models/record_store.js +403 -753
- package/dist/cjs/base/models/session.js +125 -153
- package/dist/cjs/base/models/table.js +457 -605
- package/dist/cjs/base/models/table_or_view_query_result.js +656 -920
- package/dist/cjs/base/models/view.js +284 -389
- package/dist/cjs/base/models/view_data_store.js +218 -356
- package/dist/cjs/base/models/view_metadata_query_result.js +109 -157
- package/dist/cjs/base/perform_record_action.js +89 -131
- package/dist/cjs/base/sdk.js +129 -184
- package/dist/cjs/base/settings_button.js +54 -74
- package/dist/cjs/base/types/airtable_interface.js +1 -1
- package/dist/cjs/base/types/mutations.js +5 -11
- package/dist/cjs/base/types/undo_redo.js +1 -1
- package/dist/cjs/base/types/view.js +1 -1
- package/dist/cjs/base/ui/base_provider.js +6 -8
- package/dist/cjs/base/ui/baymax_utils.js +436 -108
- package/dist/cjs/base/ui/block_wrapper.js +81 -106
- package/dist/cjs/base/ui/box.js +34 -60
- package/dist/cjs/base/ui/button.js +44 -74
- package/dist/cjs/base/ui/cell_renderer.js +132 -189
- package/dist/cjs/base/ui/choice_token.js +25 -42
- package/dist/cjs/base/ui/collaborator_token.js +31 -53
- package/dist/cjs/base/ui/color_palette.js +130 -173
- package/dist/cjs/base/ui/color_palette_synced.js +41 -70
- package/dist/cjs/base/ui/confirmation_dialog.js +70 -120
- package/dist/cjs/base/ui/control_sizes.js +24 -22
- package/dist/cjs/base/ui/create_detect_element_resize.js +6 -10
- package/dist/cjs/base/ui/css_helpers.js +1 -1
- package/dist/cjs/base/ui/dialog.js +57 -98
- package/dist/cjs/base/ui/dialog_close_button.js +52 -98
- package/dist/cjs/base/ui/expand_record.js +1 -2
- package/dist/cjs/base/ui/expand_record_list.js +3 -4
- package/dist/cjs/base/ui/expand_record_picker_async.js +28 -57
- package/dist/cjs/base/ui/field_icon.js +15 -33
- package/dist/cjs/base/ui/field_picker.js +25 -70
- package/dist/cjs/base/ui/field_picker_synced.js +18 -40
- package/dist/cjs/base/ui/form_field.js +27 -55
- package/dist/cjs/base/ui/geometry/geometry.js +5 -5
- package/dist/cjs/base/ui/geometry/point.js +10 -12
- package/dist/cjs/base/ui/geometry/rect.js +36 -52
- package/dist/cjs/base/ui/geometry/size.js +10 -12
- package/dist/cjs/base/ui/global_alert.js +31 -52
- package/dist/cjs/base/ui/heading.js +45 -94
- package/dist/cjs/base/ui/icon.js +39 -59
- package/dist/cjs/base/ui/icon_config.js +6 -12
- package/dist/cjs/base/ui/initialize_block.js +16 -35
- package/dist/cjs/base/ui/input.js +62 -101
- package/dist/cjs/base/ui/input_synced.js +17 -40
- package/dist/cjs/base/ui/key_codes.js +2 -3
- package/dist/cjs/base/ui/label.js +30 -55
- package/dist/cjs/base/ui/link.js +54 -87
- package/dist/cjs/base/ui/loader.js +15 -36
- package/dist/cjs/base/ui/modal.js +88 -127
- package/dist/cjs/base/ui/model_picker_select.js +18 -44
- package/dist/cjs/base/ui/popover.js +236 -328
- package/dist/cjs/base/ui/progress_bar.js +34 -47
- package/dist/cjs/base/ui/record_card.js +389 -478
- package/dist/cjs/base/ui/record_card_list.js +150 -224
- package/dist/cjs/base/ui/select.js +60 -116
- package/dist/cjs/base/ui/select_and_select_buttons_helpers.js +15 -39
- package/dist/cjs/base/ui/select_buttons.js +50 -83
- package/dist/cjs/base/ui/select_buttons_synced.js +17 -39
- package/dist/cjs/base/ui/select_synced.js +17 -39
- package/dist/cjs/base/ui/switch.js +42 -71
- package/dist/cjs/base/ui/switch_synced.js +16 -38
- package/dist/cjs/base/ui/synced.js +27 -48
- package/dist/cjs/base/ui/system/all_styles_set.js +4 -12
- package/dist/cjs/base/ui/system/appearance/appearance_set.js +10 -13
- package/dist/cjs/base/ui/system/appearance/background_color.js +3 -6
- package/dist/cjs/base/ui/system/appearance/border.js +3 -6
- package/dist/cjs/base/ui/system/appearance/border_radius.js +3 -6
- package/dist/cjs/base/ui/system/appearance/box_shadow.js +3 -6
- package/dist/cjs/base/ui/system/appearance/opacity.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/dimensions_set.js +11 -13
- package/dist/cjs/base/ui/system/dimensions/height.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/max_height.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/max_width.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/min_height.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/min_width.js +3 -6
- package/dist/cjs/base/ui/system/dimensions/width.js +3 -6
- package/dist/cjs/base/ui/system/display.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/align_content.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/align_items.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/flex_container_set.js +11 -13
- package/dist/cjs/base/ui/system/flex_container/flex_direction.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/flex_wrap.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/justify_content.js +3 -6
- package/dist/cjs/base/ui/system/flex_container/justify_items.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/align_self.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/flex.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/flex_basis.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/flex_grow.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/flex_item_set.js +12 -13
- package/dist/cjs/base/ui/system/flex_item/flex_shrink.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/justify_self.js +3 -6
- package/dist/cjs/base/ui/system/flex_item/order.js +3 -6
- package/dist/cjs/base/ui/system/index.js +104 -416
- package/dist/cjs/base/ui/system/overflow.js +3 -6
- package/dist/cjs/base/ui/system/position/bottom.js +4 -6
- package/dist/cjs/base/ui/system/position/left.js +4 -6
- package/dist/cjs/base/ui/system/position/position.js +3 -6
- package/dist/cjs/base/ui/system/position/position_set.js +11 -13
- package/dist/cjs/base/ui/system/position/right.js +4 -6
- package/dist/cjs/base/ui/system/position/top.js +4 -6
- package/dist/cjs/base/ui/system/position/z_index.js +3 -6
- package/dist/cjs/base/ui/system/spacing/margin.js +4 -6
- package/dist/cjs/base/ui/system/spacing/padding.js +4 -6
- package/dist/cjs/base/ui/system/spacing/spacing_set.js +7 -13
- package/dist/cjs/base/ui/system/typography/font_family.js +3 -6
- package/dist/cjs/base/ui/system/typography/font_size.js +3 -6
- package/dist/cjs/base/ui/system/typography/font_style.js +3 -6
- package/dist/cjs/base/ui/system/typography/font_weight.js +3 -6
- package/dist/cjs/base/ui/system/typography/letter_spacing.js +3 -6
- package/dist/cjs/base/ui/system/typography/line_height.js +3 -6
- package/dist/cjs/base/ui/system/typography/text_align.js +3 -6
- package/dist/cjs/base/ui/system/typography/text_color.js +3 -6
- package/dist/cjs/base/ui/system/typography/text_decoration.js +3 -6
- package/dist/cjs/base/ui/system/typography/text_transform.js +3 -6
- package/dist/cjs/base/ui/system/typography/typography_set.js +15 -13
- package/dist/cjs/base/ui/system/utils/ensure_numbers_are_within_scale.js +3 -4
- package/dist/cjs/base/ui/system/utils/get_style_props_for_responsive_prop.js +47 -87
- package/dist/cjs/base/ui/table_picker.js +18 -42
- package/dist/cjs/base/ui/table_picker_synced.js +17 -39
- package/dist/cjs/base/ui/text.js +40 -73
- package/dist/cjs/base/ui/text_button.js +51 -83
- package/dist/cjs/base/ui/theme/default_theme/button_variants.js +3 -3
- package/dist/cjs/base/ui/theme/default_theme/control_sizes.js +51 -45
- package/dist/cjs/base/ui/theme/default_theme/heading_styles.js +1 -1
- package/dist/cjs/base/ui/theme/default_theme/index.js +9 -15
- package/dist/cjs/base/ui/theme/default_theme/input_variants.js +3 -3
- package/dist/cjs/base/ui/theme/default_theme/link_variants.js +3 -3
- package/dist/cjs/base/ui/theme/default_theme/select_buttons_variants.js +4 -4
- package/dist/cjs/base/ui/theme/default_theme/select_variants.js +8 -17
- package/dist/cjs/base/ui/theme/default_theme/switch_variants.js +23 -29
- package/dist/cjs/base/ui/theme/default_theme/text_button_variants.js +5 -5
- package/dist/cjs/base/ui/theme/default_theme/text_styles.js +1 -1
- package/dist/cjs/base/ui/theme/default_theme/tokens.js +14 -14
- package/dist/cjs/base/ui/theme/theme_context.js +2 -2
- package/dist/cjs/base/ui/theme/use_theme.js +2 -2
- package/dist/cjs/base/ui/tooltip.js +134 -174
- package/dist/cjs/base/ui/types/aria_props.js +1 -23
- package/dist/cjs/base/ui/types/data_attributes_prop.js +1 -18
- package/dist/cjs/base/ui/types/tooltip_anchor_props.js +1 -17
- package/dist/cjs/base/ui/ui.js +48 -49
- package/dist/cjs/base/ui/unstable_standalone_ui.js +27 -27
- package/dist/cjs/base/ui/use_base.js +1 -1
- package/dist/cjs/base/ui/use_cursor.js +5 -4
- package/dist/cjs/base/ui/use_form_field.js +1 -1
- package/dist/cjs/base/ui/use_loadable.js +25 -91
- package/dist/cjs/base/ui/use_record_action_data.js +4 -3
- package/dist/cjs/base/ui/use_records.js +9 -13
- package/dist/cjs/base/ui/use_session.js +1 -1
- package/dist/cjs/base/ui/use_settings_button.js +4 -3
- package/dist/cjs/base/ui/use_styled_system.js +7 -14
- package/dist/cjs/base/ui/use_text_color_for_background_color.js +4 -3
- package/dist/cjs/base/ui/use_view_metadata.js +4 -4
- package/dist/cjs/base/ui/use_viewport.js +2 -2
- package/dist/cjs/base/ui/view_picker.js +26 -70
- package/dist/cjs/base/ui/view_picker_synced.js +18 -40
- package/dist/cjs/base/ui/viewport_constraint.js +67 -114
- package/dist/cjs/base/ui/with_styled_system.js +25 -61
- package/dist/cjs/base/undo_redo.js +21 -32
- package/dist/cjs/base/unstable_testing_utils.js +27 -27
- package/dist/cjs/base/viewport.js +268 -312
- package/dist/cjs/injected/airtable_interface.js +4 -4
- package/dist/cjs/interface/assert_run_context.js +12 -0
- package/dist/cjs/interface/index.js +4 -18
- package/dist/cjs/interface/models/base.js +15 -34
- package/dist/cjs/interface/models/field.js +5 -19
- package/dist/cjs/interface/models/models.js +8 -7
- package/dist/cjs/interface/models/mutations.js +50 -66
- package/dist/cjs/interface/models/record.js +29 -49
- package/dist/cjs/interface/models/record_store.js +25 -57
- package/dist/cjs/interface/models/session.js +2 -16
- package/dist/cjs/interface/models/table.js +66 -95
- package/dist/cjs/interface/sdk.js +61 -87
- package/dist/cjs/interface/types/airtable_interface.js +2 -2
- package/dist/cjs/interface/types/mutations.js +3 -10
- package/dist/cjs/interface/ui/block_wrapper.js +56 -48
- package/dist/cjs/interface/ui/initialize_block.js +13 -28
- package/dist/cjs/interface/ui/ui.js +20 -19
- package/dist/cjs/interface/ui/use_base.js +1 -1
- package/dist/cjs/interface/ui/use_custom_properties.js +19 -35
- package/dist/cjs/interface/ui/use_records.js +6 -5
- package/dist/cjs/interface/ui/use_run_info.js +2 -2
- package/dist/cjs/interface/ui/use_session.js +1 -1
- package/dist/cjs/shared/color_utils.js +9 -16
- package/dist/cjs/shared/colors.js +2 -2
- package/dist/cjs/shared/error_utils.js +9 -11
- package/dist/cjs/shared/event_tracker.js +3 -3
- package/dist/cjs/shared/global_config.js +337 -449
- package/dist/cjs/shared/models/abstract_model.js +72 -97
- package/dist/cjs/shared/models/base_core.js +394 -514
- package/dist/cjs/shared/models/field_core.js +236 -279
- package/dist/cjs/shared/models/mutations_core.js +283 -379
- package/dist/cjs/shared/models/record_core.js +174 -231
- package/dist/cjs/shared/models/record_store_core.js +119 -172
- package/dist/cjs/shared/models/session_core.js +116 -170
- package/dist/cjs/shared/models/table_core.js +1258 -1501
- package/dist/cjs/shared/private_utils.js +54 -124
- package/dist/cjs/shared/sdk_core.js +68 -70
- package/dist/cjs/shared/types/field_core.js +1 -1
- package/dist/cjs/shared/types/mutation_constants.js +4 -4
- package/dist/cjs/shared/types/mutations_core.js +1 -1
- package/dist/cjs/shared/types/permission_levels.js +1 -1
- package/dist/cjs/shared/ui/global_config_synced_component_helpers.js +9 -9
- package/dist/cjs/shared/ui/loader.js +14 -35
- package/dist/cjs/shared/ui/remote_utils.js +5 -7
- package/dist/cjs/shared/ui/sdk_context.js +4 -8
- package/dist/cjs/shared/ui/use_array_identity.js +2 -2
- package/dist/cjs/shared/ui/use_base.js +6 -5
- package/dist/cjs/shared/ui/use_color_scheme.js +3 -8
- package/dist/cjs/shared/ui/use_global_config.js +5 -4
- package/dist/cjs/shared/ui/use_session.js +6 -5
- package/dist/cjs/shared/ui/use_synced.js +7 -5
- package/dist/cjs/shared/ui/use_watchable.js +13 -42
- package/dist/cjs/shared/ui/with_hooks.js +6 -13
- package/dist/cjs/shared/unstable_private_utils.js +4 -6
- package/dist/cjs/shared/warning.js +5 -5
- package/dist/cjs/shared/watchable.js +110 -176
- package/dist/cjs/stats/block_stats.js +62 -85
- package/dist/cjs/testing/base/abstract_mock_airtable_interface.js +208 -0
- package/dist/cjs/testing/interface/abstract_mock_airtable_interface.js +124 -0
- package/dist/types/src/base/assert_run_context.d.ts +2 -0
- package/dist/types/src/base/assert_run_context.d.ts.map +1 -0
- package/dist/types/src/base/index.d.ts +1 -0
- package/dist/types/src/base/index.d.ts.map +1 -1
- package/dist/types/src/base/models/models.d.ts +1 -0
- package/dist/types/src/base/models/models.d.ts.map +1 -1
- package/dist/types/src/base/models/mutations.d.ts.map +1 -1
- package/dist/types/src/base/sdk.d.ts.map +1 -1
- package/dist/types/src/base/ui/block_wrapper.d.ts +1 -1
- package/dist/types/src/base/ui/box.d.ts.map +1 -1
- package/dist/types/src/base/ui/button.d.ts +0 -5
- package/dist/types/src/base/ui/button.d.ts.map +1 -1
- package/dist/types/src/base/ui/cell_renderer.d.ts +1 -22
- package/dist/types/src/base/ui/cell_renderer.d.ts.map +1 -1
- package/dist/types/src/base/ui/choice_token.d.ts +1 -21
- package/dist/types/src/base/ui/choice_token.d.ts.map +1 -1
- package/dist/types/src/base/ui/collaborator_token.d.ts +0 -20
- package/dist/types/src/base/ui/collaborator_token.d.ts.map +1 -1
- package/dist/types/src/base/ui/color_palette.d.ts +1 -32
- package/dist/types/src/base/ui/color_palette.d.ts.map +1 -1
- package/dist/types/src/base/ui/color_palette_synced.d.ts +0 -14
- package/dist/types/src/base/ui/color_palette_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/confirmation_dialog.d.ts +0 -17
- package/dist/types/src/base/ui/confirmation_dialog.d.ts.map +1 -1
- package/dist/types/src/base/ui/control_sizes.d.ts +0 -1
- package/dist/types/src/base/ui/control_sizes.d.ts.map +1 -1
- package/dist/types/src/base/ui/dialog.d.ts +1 -23
- package/dist/types/src/base/ui/dialog.d.ts.map +1 -1
- package/dist/types/src/base/ui/dialog_close_button.d.ts +2 -24
- package/dist/types/src/base/ui/dialog_close_button.d.ts.map +1 -1
- package/dist/types/src/base/ui/field_icon.d.ts +1 -17
- package/dist/types/src/base/ui/field_icon.d.ts.map +1 -1
- package/dist/types/src/base/ui/field_picker.d.ts +0 -23
- package/dist/types/src/base/ui/field_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/field_picker_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/form_field.d.ts +0 -4
- package/dist/types/src/base/ui/form_field.d.ts.map +1 -1
- package/dist/types/src/base/ui/heading.d.ts +1 -1
- package/dist/types/src/base/ui/heading.d.ts.map +1 -1
- package/dist/types/src/base/ui/icon.d.ts +0 -16
- package/dist/types/src/base/ui/icon.d.ts.map +1 -1
- package/dist/types/src/base/ui/icon_config.d.ts +50 -51
- package/dist/types/src/base/ui/icon_config.d.ts.map +1 -1
- package/dist/types/src/base/ui/initialize_block.d.ts.map +1 -1
- package/dist/types/src/base/ui/input.d.ts +12 -46
- package/dist/types/src/base/ui/input.d.ts.map +1 -1
- package/dist/types/src/base/ui/input_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/label.d.ts.map +1 -1
- package/dist/types/src/base/ui/link.d.ts +1 -5
- package/dist/types/src/base/ui/link.d.ts.map +1 -1
- package/dist/types/src/base/ui/loader.d.ts +3 -20
- package/dist/types/src/base/ui/loader.d.ts.map +1 -1
- package/dist/types/src/base/ui/modal.d.ts +1 -14
- package/dist/types/src/base/ui/modal.d.ts.map +1 -1
- package/dist/types/src/base/ui/model_picker_select.d.ts.map +1 -1
- package/dist/types/src/base/ui/popover.d.ts +1 -17
- package/dist/types/src/base/ui/popover.d.ts.map +1 -1
- package/dist/types/src/base/ui/progress_bar.d.ts +1 -24
- package/dist/types/src/base/ui/progress_bar.d.ts.map +1 -1
- package/dist/types/src/base/ui/record_card.d.ts +1 -23
- package/dist/types/src/base/ui/record_card.d.ts.map +1 -1
- package/dist/types/src/base/ui/record_card_list.d.ts +1 -18
- package/dist/types/src/base/ui/record_card_list.d.ts.map +1 -1
- package/dist/types/src/base/ui/select.d.ts +0 -44
- package/dist/types/src/base/ui/select.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts +0 -2
- package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_buttons.d.ts +0 -22
- package/dist/types/src/base/ui/select_buttons.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_buttons_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/switch.d.ts +0 -22
- package/dist/types/src/base/ui/switch.d.ts.map +1 -1
- package/dist/types/src/base/ui/switch_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/synced.d.ts +2 -8
- package/dist/types/src/base/ui/synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/all_styles_set.d.ts +0 -3
- package/dist/types/src/base/ui/system/all_styles_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/background_color.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/background_color.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/border.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/border.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/border_radius.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/border_radius.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/appearance/opacity.d.ts +0 -1
- package/dist/types/src/base/ui/system/appearance/opacity.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/height.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/height.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/max_height.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/max_height.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/max_width.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/max_width.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/min_height.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/min_height.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/min_width.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/min_width.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/dimensions/width.d.ts +0 -1
- package/dist/types/src/base/ui/system/dimensions/width.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/display.d.ts +0 -1
- package/dist/types/src/base/ui/system/display.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/align_content.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/align_content.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/align_items.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/align_items.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/align_self.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/align_self.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/flex.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/flex_item/order.d.ts +0 -1
- package/dist/types/src/base/ui/system/flex_item/order.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/index.d.ts +52 -52
- package/dist/types/src/base/ui/system/index.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/overflow.d.ts +0 -1
- package/dist/types/src/base/ui/system/overflow.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/bottom.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/bottom.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/left.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/left.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/position.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/position.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/position_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/position_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/right.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/right.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/top.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/top.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/z_index.d.ts +0 -1
- package/dist/types/src/base/ui/system/position/z_index.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/spacing/margin.d.ts +0 -1
- package/dist/types/src/base/ui/system/spacing/margin.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/spacing/padding.d.ts +0 -1
- package/dist/types/src/base/ui/system/spacing/padding.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/font_family.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/font_family.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/font_size.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/font_size.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/font_style.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/font_style.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/font_weight.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/font_weight.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/line_height.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/line_height.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/text_align.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/text_align.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/text_color.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/text_color.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/text_decoration.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/text_decoration.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/text_transform.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/text_transform.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/typography/typography_set.d.ts +0 -1
- package/dist/types/src/base/ui/system/typography/typography_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/table_picker.d.ts +0 -21
- package/dist/types/src/base/ui/table_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/table_picker_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/text.d.ts +0 -3
- package/dist/types/src/base/ui/text.d.ts.map +1 -1
- package/dist/types/src/base/ui/text_button.d.ts +1 -5
- package/dist/types/src/base/ui/text_button.d.ts.map +1 -1
- package/dist/types/src/base/ui/theme/default_theme/index.d.ts +1 -1
- package/dist/types/src/base/ui/theme/theme_context.d.ts +1 -1
- package/dist/types/src/base/ui/theme/use_theme.d.ts +1 -1
- package/dist/types/src/base/ui/tooltip.d.ts +0 -16
- package/dist/types/src/base/ui/tooltip.d.ts.map +1 -1
- package/dist/types/src/base/ui/types/aria_props.d.ts.map +1 -1
- package/dist/types/src/base/ui/types/data_attributes_prop.d.ts +0 -4
- package/dist/types/src/base/ui/types/data_attributes_prop.d.ts.map +1 -1
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +0 -7
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts.map +1 -1
- package/dist/types/src/base/ui/ui.d.ts +1 -0
- package/dist/types/src/base/ui/ui.d.ts.map +1 -1
- package/dist/types/src/base/ui/view_picker.d.ts +0 -23
- package/dist/types/src/base/ui/view_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/view_picker_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/viewport_constraint.d.ts +1 -14
- package/dist/types/src/base/ui/viewport_constraint.d.ts.map +1 -1
- package/dist/types/src/base/unstable_testing_utils.d.ts +1 -1
- package/dist/types/src/base/unstable_testing_utils.d.ts.map +1 -1
- package/dist/types/src/interface/assert_run_context.d.ts +2 -0
- package/dist/types/src/interface/assert_run_context.d.ts.map +1 -0
- package/dist/types/src/interface/index.d.ts +1 -6
- package/dist/types/src/interface/index.d.ts.map +1 -1
- package/dist/types/src/interface/models/models.d.ts +1 -0
- package/dist/types/src/interface/models/models.d.ts.map +1 -1
- package/dist/types/src/interface/models/mutations.d.ts.map +1 -1
- package/dist/types/src/interface/ui/initialize_block.d.ts.map +1 -1
- package/dist/types/src/interface/ui/ui.d.ts +1 -0
- package/dist/types/src/interface/ui/ui.d.ts.map +1 -1
- package/dist/types/src/interface/ui/use_custom_properties.d.ts +1 -1
- package/dist/types/src/shared/models/mutations_core.d.ts.map +1 -1
- package/dist/types/src/shared/private_utils.d.ts +0 -9
- package/dist/types/src/shared/private_utils.d.ts.map +1 -1
- package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts +0 -2
- package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts.map +1 -1
- package/dist/types/src/shared/ui/loader.d.ts.map +1 -1
- package/dist/types/src/shared/ui/with_hooks.d.ts +2 -2
- package/dist/types/src/shared/ui/with_hooks.d.ts.map +1 -1
- package/dist/types/src/testing/{abstract_mock_airtable_interface.d.ts → base/abstract_mock_airtable_interface.d.ts} +13 -13
- package/dist/types/src/testing/base/abstract_mock_airtable_interface.d.ts.map +1 -0
- package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts +51 -0
- package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts.map +1 -0
- package/package.json +13 -13
- package/dist/cjs/base/ui/system/utils/create_responsive_prop_type.js +0 -19
- package/dist/cjs/base/ui/system/utils/create_style_prop_types.js +0 -24
- package/dist/cjs/base/ui/system/utils/enum_prop_type_utils.js +0 -35
- package/dist/cjs/testing/abstract_mock_airtable_interface.js +0 -277
- package/dist/types/src/base/ui/system/utils/create_responsive_prop_type.d.ts +0 -2
- package/dist/types/src/base/ui/system/utils/create_responsive_prop_type.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/create_style_prop_types.d.ts +0 -4
- package/dist/types/src/base/ui/system/utils/create_style_prop_types.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/enum_prop_type_utils.d.ts +0 -21
- package/dist/types/src/base/ui/system/utils/enum_prop_type_utils.d.ts.map +0 -1
- package/dist/types/src/testing/abstract_mock_airtable_interface.d.ts.map +0 -1
|
@@ -1,40 +1,19 @@
|
|
|
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
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
13
3
|
Object.defineProperty(exports, "__esModule", {
|
|
14
4
|
value: true
|
|
15
5
|
});
|
|
16
6
|
exports.default = void 0;
|
|
17
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
18
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
19
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
20
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
21
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
22
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
24
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
25
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
26
7
|
var _private_utils = require("../../shared/private_utils");
|
|
27
8
|
var _error_utils = require("../../shared/error_utils");
|
|
28
9
|
var _abstract_model_with_async_data = _interopRequireDefault(require("./abstract_model_with_async_data"));
|
|
29
10
|
var _table = _interopRequireDefault(require("./table"));
|
|
30
11
|
var _view = _interopRequireDefault(require("./view"));
|
|
31
12
|
var _record = _interopRequireDefault(require("./record"));
|
|
32
|
-
function
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
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: Cursor */ /** */
|
|
37
|
-
var WatchableCursorKeys = Object.freeze({
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
/** @module @airtable/blocks/models: Cursor */ /** */
|
|
15
|
+
|
|
16
|
+
const WatchableCursorKeys = Object.freeze({
|
|
38
17
|
selectedRecordIds: 'selectedRecordIds',
|
|
39
18
|
selectedFieldIds: 'selectedFieldIds',
|
|
40
19
|
activeTableId: 'activeTableId',
|
|
@@ -52,6 +31,7 @@ var WatchableCursorKeys = Object.freeze({
|
|
|
52
31
|
*/
|
|
53
32
|
|
|
54
33
|
/** @hidden */
|
|
34
|
+
|
|
55
35
|
// NOTE: cursor is an AbstractModel because it includes loadable data.
|
|
56
36
|
/**
|
|
57
37
|
* Model class containing information about the state of the user's current interactions in
|
|
@@ -100,294 +80,226 @@ var WatchableCursorKeys = Object.freeze({
|
|
|
100
80
|
*
|
|
101
81
|
* @docsPath models/Cursor
|
|
102
82
|
*/
|
|
103
|
-
|
|
83
|
+
class Cursor extends _abstract_model_with_async_data.default {
|
|
84
|
+
/** @internal */
|
|
85
|
+
static _className = 'Cursor';
|
|
86
|
+
/** @internal */
|
|
87
|
+
static _isWatchableKey(key) {
|
|
88
|
+
return (0, _private_utils.isEnumValue)(WatchableCursorKeys, key);
|
|
89
|
+
}
|
|
90
|
+
/** @internal */
|
|
91
|
+
static _shouldLoadDataForKey(key) {
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
/** @internal */
|
|
95
|
+
|
|
104
96
|
/** @internal */
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
var selectedFieldIdSet = (_baseData$cursorData$2 = (_baseData$cursorData2 = baseData.cursorData) === null || _baseData$cursorData2 === void 0 ? void 0 : _baseData$cursorData2.selectedFieldIdSet) !== null && _baseData$cursorData$2 !== void 0 ? _baseData$cursorData$2 : null;
|
|
115
|
-
var activeTableId = baseData.activeTableId;
|
|
116
|
-
var activeTable = activeTableId ? baseData.tablesById[activeTableId] : null;
|
|
117
|
-
var activeViewId = (_activeTable$activeVi = activeTable === null || activeTable === void 0 ? void 0 : activeTable.activeViewId) !== null && _activeTable$activeVi !== void 0 ? _activeTable$activeVi : null;
|
|
118
|
-
_this._cursorData = {
|
|
97
|
+
constructor(sdk) {
|
|
98
|
+
super(sdk, 'cursor');
|
|
99
|
+
const baseData = sdk.__airtableInterface.sdkInitData.baseData;
|
|
100
|
+
const selectedRecordIdSet = baseData.cursorData?.selectedRecordIdSet ?? null;
|
|
101
|
+
const selectedFieldIdSet = baseData.cursorData?.selectedFieldIdSet ?? null;
|
|
102
|
+
const activeTableId = baseData.activeTableId;
|
|
103
|
+
const activeTable = activeTableId ? baseData.tablesById[activeTableId] : null;
|
|
104
|
+
const activeViewId = activeTable?.activeViewId ?? null;
|
|
105
|
+
this._cursorData = {
|
|
119
106
|
selectedRecordIdSet,
|
|
120
107
|
selectedFieldIdSet,
|
|
121
108
|
activeTableId,
|
|
122
109
|
activeViewId
|
|
123
110
|
};
|
|
124
|
-
Object.seal(
|
|
125
|
-
return _this;
|
|
111
|
+
Object.seal(this);
|
|
126
112
|
}
|
|
127
113
|
|
|
128
114
|
/**
|
|
129
115
|
* @internal
|
|
130
116
|
*/
|
|
131
|
-
(
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
* Can be watched.
|
|
208
|
-
*/
|
|
209
|
-
}, {
|
|
210
|
-
key: "selectedFieldIds",
|
|
211
|
-
get: function get() {
|
|
212
|
-
var selectedFieldIdSet = this._data.selectedFieldIdSet;
|
|
213
|
-
(0, _error_utils.invariant)(selectedFieldIdSet, 'Cursor data is not loaded');
|
|
214
|
-
var selectedRecordIds = Object.keys(selectedFieldIdSet);
|
|
215
|
-
return selectedRecordIds;
|
|
216
|
-
}
|
|
217
|
-
/**
|
|
218
|
-
* Checks whether a given record is selected.
|
|
219
|
-
*
|
|
220
|
-
* Selected records are not loaded by default. You must load cursor data with
|
|
221
|
-
* `useLoadable(cursor)` (recommended) or `cursor.loadDataAsync()` before use.
|
|
222
|
-
*
|
|
223
|
-
* @param recordOrRecordId The record or record ID to check for.
|
|
224
|
-
*/
|
|
225
|
-
}, {
|
|
226
|
-
key: "isRecordSelected",
|
|
227
|
-
value: function isRecordSelected(recordOrRecordId) {
|
|
228
|
-
var selectedRecordIdSet = this._data.selectedRecordIdSet;
|
|
229
|
-
(0, _error_utils.invariant)(selectedRecordIdSet, 'Cursor data is not loaded');
|
|
230
|
-
var recordId;
|
|
231
|
-
if (recordOrRecordId instanceof _record.default) {
|
|
232
|
-
recordId = recordOrRecordId.id;
|
|
233
|
-
} else {
|
|
234
|
-
recordId = recordOrRecordId;
|
|
235
|
-
}
|
|
236
|
-
return !!selectedRecordIdSet[recordId];
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* The currently active table ID. Can be null when the active table has changed and is not yet
|
|
240
|
-
* loaded, and can also refer to a table that is not yet loaded.
|
|
241
|
-
*
|
|
242
|
-
* When fetching the {@link Table}, use `base.getTableByIdIfExists(cursor.activeTableId)` and
|
|
243
|
-
* check the return value is not `null` to be resilient to those cases.
|
|
244
|
-
*
|
|
245
|
-
* Can be watched.
|
|
246
|
-
*/
|
|
247
|
-
}, {
|
|
248
|
-
key: "activeTableId",
|
|
249
|
-
get: function get() {
|
|
250
|
-
return this._data.activeTableId;
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* The currently active view ID. This will always be a view belonging to `activeTableId`. Can be
|
|
254
|
-
* null when the active view has changed and is not yet loaded, and can also refer to a view
|
|
255
|
-
* that is not yet loaded.
|
|
256
|
-
*
|
|
257
|
-
* When fetching the {@link View}, use `table.getViewByIdIfExists(cursor.activeViewId)` and
|
|
258
|
-
* check the return value is not `null` to be resilient to those cases.
|
|
259
|
-
*
|
|
260
|
-
* Can be watched.
|
|
261
|
-
*/
|
|
262
|
-
}, {
|
|
263
|
-
key: "activeViewId",
|
|
264
|
-
get: function get() {
|
|
265
|
-
return this._data.activeViewId;
|
|
266
|
-
}
|
|
267
|
-
/**
|
|
268
|
-
* Sets the specified table to active in the Airtable UI. If the extension installation or extensions pane
|
|
269
|
-
* is fullscreen, fullscreen mode will be exited.
|
|
270
|
-
*
|
|
271
|
-
* @param tableOrTableId The target table or table ID to set as active in the Airtable main page.
|
|
272
|
-
*/
|
|
273
|
-
}, {
|
|
274
|
-
key: "setActiveTable",
|
|
275
|
-
value: function setActiveTable(tableOrTableId) {
|
|
276
|
-
var tableId = tableOrTableId instanceof _table.default ? tableOrTableId.id : tableOrTableId;
|
|
277
|
-
this._sdk.__airtableInterface.setActiveViewOrTable(tableId);
|
|
278
|
-
}
|
|
279
|
-
/**
|
|
280
|
-
* Sets the specified view (and corresponding table) to active in the Airtable UI. If the extension
|
|
281
|
-
* installation or extensions pane is fullscreen, fullscreen mode will be exited.
|
|
282
|
-
*
|
|
283
|
-
* @param tableOrTableId The table or table ID that the target view belongs to.
|
|
284
|
-
* @param viewOrViewId The target view or view ID to set as active in the Airtable main page.
|
|
285
|
-
*/
|
|
286
|
-
}, {
|
|
287
|
-
key: "setActiveView",
|
|
288
|
-
value: function setActiveView(tableOrTableId, viewOrViewId) {
|
|
289
|
-
var tableId = tableOrTableId instanceof _table.default ? tableOrTableId.id : tableOrTableId;
|
|
290
|
-
var viewId = viewOrViewId instanceof _view.default ? viewOrViewId.id : viewOrViewId;
|
|
291
|
-
this._sdk.__airtableInterface.setActiveViewOrTable(tableId, viewId);
|
|
117
|
+
get _dataOrNullIfDeleted() {
|
|
118
|
+
return this._cursorData;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* @internal
|
|
122
|
+
*/
|
|
123
|
+
_onChangeIsDataLoaded() {
|
|
124
|
+
this._onChange(WatchableCursorKeys.isDataLoaded);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* @internal
|
|
128
|
+
*/
|
|
129
|
+
async _loadDataAsync() {
|
|
130
|
+
const cursorData = await this._sdk.__airtableInterface.fetchAndSubscribeToCursorDataAsync();
|
|
131
|
+
this._cursorData.selectedRecordIdSet = cursorData.selectedRecordIdSet;
|
|
132
|
+
this._cursorData.selectedFieldIdSet = cursorData.selectedFieldIdSet;
|
|
133
|
+
return [WatchableCursorKeys.selectedRecordIds, WatchableCursorKeys.selectedFieldIds];
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @internal
|
|
137
|
+
*/
|
|
138
|
+
_unloadData() {
|
|
139
|
+
this._sdk.__airtableInterface.unsubscribeFromCursorData();
|
|
140
|
+
this._cursorData.selectedRecordIdSet = null;
|
|
141
|
+
this._cursorData.selectedFieldIdSet = null;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* The record IDs of all currently selected records, or an empty array if no records are selected.
|
|
145
|
+
*
|
|
146
|
+
* Not loaded by default. You must load cursor data with `useLoadable(cursor)` (recommended) or
|
|
147
|
+
* `cursor.loadDataAsync()` before use.
|
|
148
|
+
*
|
|
149
|
+
* Can be watched.
|
|
150
|
+
*/
|
|
151
|
+
get selectedRecordIds() {
|
|
152
|
+
const {
|
|
153
|
+
selectedRecordIdSet
|
|
154
|
+
} = this._data;
|
|
155
|
+
(0, _error_utils.invariant)(selectedRecordIdSet, 'Cursor data is not loaded');
|
|
156
|
+
const selectedRecordIds = Object.keys(selectedRecordIdSet);
|
|
157
|
+
return selectedRecordIds;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* The field IDs of all currently selected fields, or an empty array if no fields are selected.
|
|
161
|
+
*
|
|
162
|
+
* Not loaded by default: you must load cursor data with `useLoadable(cursor)` (recommended) or
|
|
163
|
+
* `cursor.loadDataAsync()` before use.
|
|
164
|
+
*
|
|
165
|
+
* Can be watched.
|
|
166
|
+
*/
|
|
167
|
+
get selectedFieldIds() {
|
|
168
|
+
const {
|
|
169
|
+
selectedFieldIdSet
|
|
170
|
+
} = this._data;
|
|
171
|
+
(0, _error_utils.invariant)(selectedFieldIdSet, 'Cursor data is not loaded');
|
|
172
|
+
const selectedRecordIds = Object.keys(selectedFieldIdSet);
|
|
173
|
+
return selectedRecordIds;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Checks whether a given record is selected.
|
|
177
|
+
*
|
|
178
|
+
* Selected records are not loaded by default. You must load cursor data with
|
|
179
|
+
* `useLoadable(cursor)` (recommended) or `cursor.loadDataAsync()` before use.
|
|
180
|
+
*
|
|
181
|
+
* @param recordOrRecordId The record or record ID to check for.
|
|
182
|
+
*/
|
|
183
|
+
isRecordSelected(recordOrRecordId) {
|
|
184
|
+
const {
|
|
185
|
+
selectedRecordIdSet
|
|
186
|
+
} = this._data;
|
|
187
|
+
(0, _error_utils.invariant)(selectedRecordIdSet, 'Cursor data is not loaded');
|
|
188
|
+
let recordId;
|
|
189
|
+
if (recordOrRecordId instanceof _record.default) {
|
|
190
|
+
recordId = recordOrRecordId.id;
|
|
191
|
+
} else {
|
|
192
|
+
recordId = recordOrRecordId;
|
|
292
193
|
}
|
|
194
|
+
return !!selectedRecordIdSet[recordId];
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* The currently active table ID. Can be null when the active table has changed and is not yet
|
|
198
|
+
* loaded, and can also refer to a table that is not yet loaded.
|
|
199
|
+
*
|
|
200
|
+
* When fetching the {@link Table}, use `base.getTableByIdIfExists(cursor.activeTableId)` and
|
|
201
|
+
* check the return value is not `null` to be resilient to those cases.
|
|
202
|
+
*
|
|
203
|
+
* Can be watched.
|
|
204
|
+
*/
|
|
205
|
+
get activeTableId() {
|
|
206
|
+
return this._data.activeTableId;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* The currently active view ID. This will always be a view belonging to `activeTableId`. Can be
|
|
210
|
+
* null when the active view has changed and is not yet loaded, and can also refer to a view
|
|
211
|
+
* that is not yet loaded.
|
|
212
|
+
*
|
|
213
|
+
* When fetching the {@link View}, use `table.getViewByIdIfExists(cursor.activeViewId)` and
|
|
214
|
+
* check the return value is not `null` to be resilient to those cases.
|
|
215
|
+
*
|
|
216
|
+
* Can be watched.
|
|
217
|
+
*/
|
|
218
|
+
get activeViewId() {
|
|
219
|
+
return this._data.activeViewId;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Sets the specified table to active in the Airtable UI. If the extension installation or extensions pane
|
|
223
|
+
* is fullscreen, fullscreen mode will be exited.
|
|
224
|
+
*
|
|
225
|
+
* @param tableOrTableId The target table or table ID to set as active in the Airtable main page.
|
|
226
|
+
*/
|
|
227
|
+
setActiveTable(tableOrTableId) {
|
|
228
|
+
const tableId = tableOrTableId instanceof _table.default ? tableOrTableId.id : tableOrTableId;
|
|
229
|
+
this._sdk.__airtableInterface.setActiveViewOrTable(tableId);
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Sets the specified view (and corresponding table) to active in the Airtable UI. If the extension
|
|
233
|
+
* installation or extensions pane is fullscreen, fullscreen mode will be exited.
|
|
234
|
+
*
|
|
235
|
+
* @param tableOrTableId The table or table ID that the target view belongs to.
|
|
236
|
+
* @param viewOrViewId The target view or view ID to set as active in the Airtable main page.
|
|
237
|
+
*/
|
|
238
|
+
setActiveView(tableOrTableId, viewOrViewId) {
|
|
239
|
+
const tableId = tableOrTableId instanceof _table.default ? tableOrTableId.id : tableOrTableId;
|
|
240
|
+
const viewId = viewOrViewId instanceof _view.default ? viewOrViewId.id : viewOrViewId;
|
|
241
|
+
this._sdk.__airtableInterface.setActiveViewOrTable(tableId, viewId);
|
|
242
|
+
}
|
|
293
243
|
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
{
|
|
316
|
-
(0, _error_utils.invariant)(path.length === 2, 'cannot set within selectedRecordIdSet');
|
|
317
|
-
this._cursorData.selectedRecordIdSet = value;
|
|
318
|
-
changedKeys[WatchableCursorKeys.selectedRecordIds] = true;
|
|
319
|
-
break;
|
|
320
|
-
}
|
|
321
|
-
case 'selectedFieldIdSet':
|
|
322
|
-
{
|
|
323
|
-
(0, _error_utils.invariant)(path.length === 2, 'cannot set within selectedFieldIdSet');
|
|
324
|
-
this._cursorData.selectedFieldIdSet = value;
|
|
325
|
-
changedKeys[WatchableCursorKeys.selectedFieldIds] = true;
|
|
326
|
-
break;
|
|
327
|
-
}
|
|
328
|
-
default:
|
|
329
|
-
// No-op for future unknown paths.
|
|
244
|
+
/**
|
|
245
|
+
* @internal
|
|
246
|
+
*/
|
|
247
|
+
__applyChangesWithoutTriggeringEvents(changes) {
|
|
248
|
+
const changedKeys = {
|
|
249
|
+
[WatchableCursorKeys.selectedRecordIds]: false,
|
|
250
|
+
[WatchableCursorKeys.activeTableId]: false,
|
|
251
|
+
[WatchableCursorKeys.activeViewId]: false
|
|
252
|
+
};
|
|
253
|
+
for (const {
|
|
254
|
+
path,
|
|
255
|
+
value
|
|
256
|
+
} of changes) {
|
|
257
|
+
if (path[0] === 'cursorData') {
|
|
258
|
+
switch (path[1]) {
|
|
259
|
+
case 'selectedRecordIdSet':
|
|
260
|
+
{
|
|
261
|
+
(0, _error_utils.invariant)(path.length === 2, 'cannot set within selectedRecordIdSet');
|
|
262
|
+
this._cursorData.selectedRecordIdSet = value;
|
|
263
|
+
changedKeys[WatchableCursorKeys.selectedRecordIds] = true;
|
|
264
|
+
break;
|
|
330
265
|
}
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
this._cursorData.activeViewId = null;
|
|
338
|
-
changedKeys[WatchableCursorKeys.activeViewId] = true;
|
|
266
|
+
case 'selectedFieldIdSet':
|
|
267
|
+
{
|
|
268
|
+
(0, _error_utils.invariant)(path.length === 2, 'cannot set within selectedFieldIdSet');
|
|
269
|
+
this._cursorData.selectedFieldIdSet = value;
|
|
270
|
+
changedKeys[WatchableCursorKeys.selectedFieldIds] = true;
|
|
271
|
+
break;
|
|
339
272
|
}
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
(0, _error_utils.invariant)(value === null || typeof value === 'string', 'activeTableId must be string or null');
|
|
343
|
-
this._cursorData.activeViewId = value;
|
|
344
|
-
changedKeys[WatchableCursorKeys.activeViewId] = true;
|
|
345
|
-
}
|
|
273
|
+
default:
|
|
274
|
+
// No-op for future unknown paths.
|
|
346
275
|
}
|
|
347
|
-
} catch (err) {
|
|
348
|
-
_iterator.e(err);
|
|
349
|
-
} finally {
|
|
350
|
-
_iterator.f();
|
|
351
276
|
}
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
value: function __triggerOnChangeForChangedKeys(changedKeys) {
|
|
360
|
-
var _iterator2 = _createForOfIteratorHelper((0, _private_utils.entries)(changedKeys)),
|
|
361
|
-
_step2;
|
|
362
|
-
try {
|
|
363
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
364
|
-
var _step2$value = (0, _slicedToArray2.default)(_step2.value, 2),
|
|
365
|
-
key = _step2$value[0],
|
|
366
|
-
didChange = _step2$value[1];
|
|
367
|
-
if (didChange) {
|
|
368
|
-
this._onChange(key);
|
|
369
|
-
}
|
|
277
|
+
if (path[0] === 'activeTableId') {
|
|
278
|
+
(0, _error_utils.invariant)(value === null || typeof value === 'string', 'activeTableId must be string or null');
|
|
279
|
+
this._cursorData.activeTableId = value;
|
|
280
|
+
changedKeys[WatchableCursorKeys.activeTableId] = true;
|
|
281
|
+
if (value === null) {
|
|
282
|
+
this._cursorData.activeViewId = null;
|
|
283
|
+
changedKeys[WatchableCursorKeys.activeViewId] = true;
|
|
370
284
|
}
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
285
|
+
}
|
|
286
|
+
if (path[0] === 'tablesById' && path[1] === this.activeTableId && path[2] === 'activeViewId') {
|
|
287
|
+
(0, _error_utils.invariant)(value === null || typeof value === 'string', 'activeTableId must be string or null');
|
|
288
|
+
this._cursorData.activeViewId = value;
|
|
289
|
+
changedKeys[WatchableCursorKeys.activeViewId] = true;
|
|
375
290
|
}
|
|
376
291
|
}
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
return true;
|
|
292
|
+
return changedKeys;
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* @internal
|
|
296
|
+
*/
|
|
297
|
+
__triggerOnChangeForChangedKeys(changedKeys) {
|
|
298
|
+
for (const [key, didChange] of (0, _private_utils.entries)(changedKeys)) {
|
|
299
|
+
if (didChange) {
|
|
300
|
+
this._onChange(key);
|
|
301
|
+
}
|
|
388
302
|
}
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
/** @internal */
|
|
392
|
-
(0, _defineProperty2.default)(Cursor, "_className", 'Cursor');
|
|
303
|
+
}
|
|
304
|
+
}
|
|
393
305
|
var _default = exports.default = Cursor;
|