@airtable/blocks 0.0.0-experimental-f52bc4e5e-20250709 → 0.0.0-experimental-3649c7162-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/esm/base/assert_run_context.js +12 -0
- package/dist/{cjs → esm}/base/index.js +30 -32
- package/dist/esm/base/models/abstract_model_with_async_data.js +190 -0
- package/dist/esm/base/models/base.js +252 -0
- package/dist/esm/base/models/create_aggregators.js +90 -0
- package/dist/esm/base/models/cursor.js +305 -0
- package/dist/esm/base/models/field.js +338 -0
- package/dist/esm/base/models/grouped_record_query_result.js +280 -0
- package/dist/esm/base/models/linked_records_query_result.js +553 -0
- package/dist/{cjs → esm}/base/models/models.js +19 -40
- package/dist/esm/base/models/mutations.js +312 -0
- package/dist/esm/base/models/object_pool.js +145 -0
- package/dist/esm/base/models/record.js +239 -0
- package/dist/{cjs → esm}/base/models/record_coloring.js +6 -6
- package/dist/esm/base/models/record_query_result.js +657 -0
- package/dist/esm/base/models/record_store.js +475 -0
- package/dist/esm/base/models/session.js +154 -0
- package/dist/esm/base/models/table.js +520 -0
- package/dist/esm/base/models/table_or_view_query_result.js +749 -0
- package/dist/esm/base/models/view.js +326 -0
- package/dist/esm/base/models/view_data_store.js +265 -0
- package/dist/esm/base/models/view_metadata_query_result.js +176 -0
- package/dist/esm/base/perform_record_action.js +215 -0
- package/dist/esm/base/sdk.js +178 -0
- package/dist/esm/base/settings_button.js +118 -0
- package/dist/{cjs → esm}/base/types/airtable_interface.js +1 -1
- package/dist/{cjs → esm}/base/types/mutations.js +5 -11
- package/dist/{cjs → esm}/base/types/undo_redo.js +1 -1
- package/dist/{cjs → esm}/base/types/view.js +1 -1
- package/dist/{cjs → esm}/base/ui/base_provider.js +6 -8
- package/dist/esm/base/ui/baymax_utils.js +461 -0
- package/dist/esm/base/ui/block_wrapper.js +118 -0
- package/dist/esm/base/ui/box.js +84 -0
- package/dist/esm/base/ui/button.js +152 -0
- package/dist/esm/base/ui/cell_renderer.js +198 -0
- package/dist/esm/base/ui/choice_token.js +93 -0
- package/dist/esm/base/ui/collaborator_token.js +123 -0
- package/dist/esm/base/ui/color_palette.js +196 -0
- package/dist/esm/base/ui/color_palette_synced.js +69 -0
- package/dist/esm/base/ui/confirmation_dialog.js +103 -0
- package/dist/{cjs → esm}/base/ui/control_sizes.js +24 -22
- package/dist/{cjs → esm}/base/ui/create_detect_element_resize.js +6 -10
- package/dist/{cjs → esm}/base/ui/css_helpers.js +1 -1
- package/dist/esm/base/ui/dialog.js +101 -0
- package/dist/esm/base/ui/dialog_close_button.js +106 -0
- package/dist/{cjs → esm}/base/ui/expand_record.js +1 -2
- package/dist/{cjs → esm}/base/ui/expand_record_list.js +3 -4
- package/dist/esm/base/ui/expand_record_picker_async.js +71 -0
- package/dist/esm/base/ui/field_icon.js +44 -0
- package/dist/esm/base/ui/field_picker.js +98 -0
- package/dist/esm/base/ui/field_picker_synced.js +66 -0
- package/dist/esm/base/ui/form_field.js +109 -0
- package/dist/{cjs → esm}/base/ui/geometry/geometry.js +5 -5
- package/dist/esm/base/ui/geometry/point.js +19 -0
- package/dist/esm/base/ui/geometry/rect.js +51 -0
- package/dist/esm/base/ui/geometry/size.js +19 -0
- package/dist/esm/base/ui/global_alert.js +71 -0
- package/dist/esm/base/ui/heading.js +132 -0
- package/dist/esm/base/ui/icon.js +109 -0
- package/dist/{cjs → esm}/base/ui/icon_config.js +6 -12
- package/dist/{cjs → esm}/base/ui/initialize_block.js +16 -35
- package/dist/esm/base/ui/input.js +161 -0
- package/dist/esm/base/ui/input_synced.js +66 -0
- package/dist/{cjs → esm}/base/ui/key_codes.js +2 -3
- package/dist/esm/base/ui/label.js +80 -0
- package/dist/esm/base/ui/link.js +196 -0
- package/dist/esm/base/ui/loader.js +61 -0
- package/dist/esm/base/ui/modal.js +145 -0
- package/dist/esm/base/ui/model_picker_select.js +57 -0
- package/dist/esm/base/ui/popover.js +315 -0
- package/dist/esm/base/ui/progress_bar.js +115 -0
- package/dist/esm/base/ui/record_card.js +564 -0
- package/dist/esm/base/ui/record_card_list.js +303 -0
- package/dist/esm/base/ui/select.js +191 -0
- package/dist/esm/base/ui/select_and_select_buttons_helpers.js +63 -0
- package/dist/esm/base/ui/select_buttons.js +159 -0
- package/dist/esm/base/ui/select_buttons_synced.js +62 -0
- package/dist/esm/base/ui/select_synced.js +65 -0
- package/dist/esm/base/ui/switch.js +167 -0
- package/dist/esm/base/ui/switch_synced.js +53 -0
- package/dist/esm/base/ui/synced.js +49 -0
- package/dist/{cjs → esm}/base/ui/system/all_styles_set.js +4 -12
- package/dist/esm/base/ui/system/appearance/appearance_set.js +27 -0
- package/dist/esm/base/ui/system/appearance/background_color.js +18 -0
- package/dist/{cjs → esm}/base/ui/system/appearance/border.js +3 -6
- package/dist/esm/base/ui/system/appearance/border_radius.js +18 -0
- package/dist/esm/base/ui/system/appearance/box_shadow.js +18 -0
- package/dist/esm/base/ui/system/appearance/opacity.js +18 -0
- package/dist/esm/base/ui/system/dimensions/dimensions_set.js +29 -0
- package/dist/esm/base/ui/system/dimensions/height.js +18 -0
- package/dist/esm/base/ui/system/dimensions/max_height.js +18 -0
- package/dist/esm/base/ui/system/dimensions/max_width.js +18 -0
- package/dist/esm/base/ui/system/dimensions/min_height.js +18 -0
- package/dist/esm/base/ui/system/dimensions/min_width.js +18 -0
- package/dist/esm/base/ui/system/dimensions/width.js +18 -0
- package/dist/esm/base/ui/system/display.js +19 -0
- package/dist/esm/base/ui/system/flex_container/align_content.js +15 -0
- package/dist/esm/base/ui/system/flex_container/align_items.js +15 -0
- package/dist/esm/base/ui/system/flex_container/flex_container_set.js +29 -0
- package/dist/esm/base/ui/system/flex_container/flex_direction.js +15 -0
- package/dist/esm/base/ui/system/flex_container/flex_wrap.js +15 -0
- package/dist/esm/base/ui/system/flex_container/justify_content.js +15 -0
- package/dist/esm/base/ui/system/flex_container/justify_items.js +16 -0
- package/dist/esm/base/ui/system/flex_item/align_self.js +15 -0
- package/dist/esm/base/ui/system/flex_item/flex.js +15 -0
- package/dist/esm/base/ui/system/flex_item/flex_basis.js +15 -0
- package/dist/esm/base/ui/system/flex_item/flex_grow.js +15 -0
- package/dist/esm/base/ui/system/flex_item/flex_item_set.js +31 -0
- package/dist/esm/base/ui/system/flex_item/flex_shrink.js +15 -0
- package/dist/esm/base/ui/system/flex_item/justify_self.js +16 -0
- package/dist/esm/base/ui/system/flex_item/order.js +15 -0
- package/dist/{cjs → esm}/base/ui/system/index.js +104 -416
- package/dist/esm/base/ui/system/overflow.js +21 -0
- package/dist/{cjs → esm}/base/ui/system/position/bottom.js +4 -6
- package/dist/{cjs → esm}/base/ui/system/position/left.js +4 -6
- package/dist/esm/base/ui/system/position/position.js +15 -0
- package/dist/esm/base/ui/system/position/position_set.js +29 -0
- package/dist/{cjs → esm}/base/ui/system/position/right.js +4 -6
- package/dist/{cjs → esm}/base/ui/system/position/top.js +4 -6
- package/dist/esm/base/ui/system/position/z_index.js +18 -0
- package/dist/{cjs → esm}/base/ui/system/spacing/margin.js +4 -6
- package/dist/{cjs → esm}/base/ui/system/spacing/padding.js +4 -6
- package/dist/esm/base/ui/system/spacing/spacing_set.js +21 -0
- package/dist/esm/base/ui/system/typography/font_family.js +18 -0
- package/dist/esm/base/ui/system/typography/font_size.js +18 -0
- package/dist/esm/base/ui/system/typography/font_style.js +15 -0
- package/dist/esm/base/ui/system/typography/font_weight.js +18 -0
- package/dist/esm/base/ui/system/typography/letter_spacing.js +18 -0
- package/dist/esm/base/ui/system/typography/line_height.js +15 -0
- package/dist/esm/base/ui/system/typography/text_align.js +15 -0
- package/dist/esm/base/ui/system/typography/text_color.js +18 -0
- package/dist/esm/base/ui/system/typography/text_decoration.js +15 -0
- package/dist/esm/base/ui/system/typography/text_transform.js +15 -0
- package/dist/esm/base/ui/system/typography/typography_set.js +37 -0
- package/dist/{cjs → esm}/base/ui/system/utils/ensure_numbers_are_within_scale.js +3 -4
- package/dist/esm/base/ui/system/utils/get_style_props_for_responsive_prop.js +73 -0
- package/dist/esm/base/ui/table_picker.js +71 -0
- package/dist/esm/base/ui/table_picker_synced.js +62 -0
- package/dist/esm/base/ui/text.js +117 -0
- package/dist/esm/base/ui/text_button.js +196 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/button_variants.js +3 -3
- package/dist/esm/base/ui/theme/default_theme/control_sizes.js +102 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/heading_styles.js +1 -1
- package/dist/{cjs → esm}/base/ui/theme/default_theme/index.js +9 -15
- package/dist/{cjs → esm}/base/ui/theme/default_theme/input_variants.js +3 -3
- package/dist/{cjs → esm}/base/ui/theme/default_theme/link_variants.js +3 -3
- package/dist/{cjs → esm}/base/ui/theme/default_theme/select_buttons_variants.js +4 -4
- package/dist/esm/base/ui/theme/default_theme/select_variants.js +50 -0
- package/dist/esm/base/ui/theme/default_theme/switch_variants.js +85 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/text_button_variants.js +5 -5
- package/dist/{cjs → esm}/base/ui/theme/default_theme/text_styles.js +1 -1
- package/dist/{cjs → esm}/base/ui/theme/default_theme/tokens.js +14 -14
- package/dist/{cjs → esm}/base/ui/theme/theme_context.js +2 -2
- package/dist/{cjs → esm}/base/ui/theme/use_theme.js +2 -2
- package/dist/esm/base/ui/tooltip.js +175 -0
- package/dist/{cjs → esm}/base/ui/ui.js +48 -49
- package/dist/{cjs → esm}/base/ui/unstable_standalone_ui.js +27 -27
- package/dist/{cjs → esm}/base/ui/use_base.js +1 -1
- package/dist/{cjs → esm}/base/ui/use_cursor.js +5 -4
- package/dist/{cjs → esm}/base/ui/use_form_field.js +1 -1
- package/dist/{cjs → esm}/base/ui/use_loadable.js +25 -91
- package/dist/{cjs → esm}/base/ui/use_record_action_data.js +4 -3
- package/dist/{cjs → esm}/base/ui/use_records.js +9 -13
- package/dist/{cjs → esm}/base/ui/use_session.js +1 -1
- package/dist/{cjs → esm}/base/ui/use_settings_button.js +4 -3
- package/dist/esm/base/ui/use_styled_system.js +25 -0
- package/dist/{cjs → esm}/base/ui/use_text_color_for_background_color.js +4 -3
- package/dist/{cjs → esm}/base/ui/use_view_metadata.js +4 -4
- package/dist/{cjs → esm}/base/ui/use_viewport.js +2 -2
- package/dist/esm/base/ui/view_picker.js +89 -0
- package/dist/esm/base/ui/view_picker_synced.js +66 -0
- package/dist/esm/base/ui/viewport_constraint.js +129 -0
- package/dist/esm/base/ui/with_styled_system.js +129 -0
- package/dist/esm/base/undo_redo.js +37 -0
- package/dist/{cjs → esm}/base/unstable_testing_utils.js +27 -27
- package/dist/esm/base/viewport.js +353 -0
- package/dist/esm/injected/airtable_interface.js +22 -0
- package/dist/esm/interface/assert_run_context.js +12 -0
- package/dist/esm/interface/index.js +22 -0
- package/dist/esm/interface/models/base.js +35 -0
- package/dist/esm/interface/models/field.js +28 -0
- package/dist/{cjs → esm}/interface/models/models.js +8 -7
- package/dist/esm/interface/models/mutations.js +63 -0
- package/dist/esm/interface/models/record.js +51 -0
- package/dist/esm/interface/models/record_store.js +51 -0
- package/dist/esm/interface/models/session.js +28 -0
- package/dist/esm/interface/models/table.js +97 -0
- package/dist/esm/interface/sdk.js +78 -0
- package/dist/{cjs → esm}/interface/types/airtable_interface.js +2 -2
- package/dist/esm/interface/types/mutations.js +17 -0
- package/dist/esm/interface/ui/block_wrapper.js +69 -0
- package/dist/{cjs → esm}/interface/ui/initialize_block.js +13 -28
- package/dist/{cjs → esm}/interface/ui/ui.js +20 -19
- package/dist/{cjs → esm}/interface/ui/use_base.js +1 -1
- package/dist/{cjs → esm}/interface/ui/use_custom_properties.js +19 -35
- package/dist/{cjs → esm}/interface/ui/use_records.js +6 -5
- package/dist/{cjs → esm}/interface/ui/use_run_info.js +2 -2
- package/dist/{cjs → esm}/interface/ui/use_session.js +1 -1
- package/dist/{cjs → esm}/shared/color_utils.js +9 -16
- package/dist/{cjs → esm}/shared/colors.js +2 -2
- package/dist/{cjs → esm}/shared/error_utils.js +9 -11
- package/dist/{cjs → esm}/shared/event_tracker.js +3 -3
- package/dist/esm/shared/global_config.js +399 -0
- package/dist/esm/shared/models/abstract_model.js +94 -0
- package/dist/esm/shared/models/base_core.js +482 -0
- package/dist/esm/shared/models/field_core.js +288 -0
- package/dist/esm/shared/models/mutations_core.js +343 -0
- package/dist/esm/shared/models/record_core.js +215 -0
- package/dist/esm/shared/models/record_store_core.js +160 -0
- package/dist/esm/shared/models/session_core.js +160 -0
- package/dist/esm/shared/models/table_core.js +1318 -0
- package/dist/{cjs → esm}/shared/private_utils.js +54 -124
- package/dist/esm/shared/sdk_core.js +113 -0
- package/dist/{cjs → esm}/shared/types/field_core.js +1 -1
- package/dist/esm/shared/types/mutation_constants.js +11 -0
- package/dist/{cjs → esm}/shared/types/mutations_core.js +1 -1
- package/dist/{cjs → esm}/shared/types/permission_levels.js +1 -1
- package/dist/esm/shared/types/record.js +1 -0
- package/dist/esm/shared/types/stat.js +1 -0
- package/dist/esm/shared/types/table_core.js +1 -0
- package/dist/{cjs → esm}/shared/ui/global_config_synced_component_helpers.js +9 -9
- package/dist/esm/shared/ui/loader.js +47 -0
- package/dist/{cjs → esm}/shared/ui/remote_utils.js +5 -7
- package/dist/{cjs → esm}/shared/ui/sdk_context.js +4 -8
- package/dist/{cjs → esm}/shared/ui/use_array_identity.js +2 -2
- package/dist/{cjs → esm}/shared/ui/use_base.js +6 -5
- package/dist/{cjs → esm}/shared/ui/use_color_scheme.js +3 -8
- package/dist/{cjs → esm}/shared/ui/use_global_config.js +5 -4
- package/dist/{cjs → esm}/shared/ui/use_session.js +6 -5
- package/dist/{cjs → esm}/shared/ui/use_synced.js +7 -5
- package/dist/{cjs → esm}/shared/ui/use_watchable.js +13 -42
- package/dist/{cjs → esm}/shared/ui/with_hooks.js +6 -13
- package/dist/{cjs → esm}/shared/unstable_private_utils.js +4 -6
- package/dist/{cjs → esm}/shared/warning.js +5 -5
- package/dist/esm/shared/watchable.js +150 -0
- package/dist/esm/stats/block_stats.js +73 -0
- package/dist/esm/testing/base/abstract_mock_airtable_interface.js +208 -0
- package/dist/esm/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/base.d.ts +19 -0
- package/dist/types/src/base/models/base.d.ts.map +1 -1
- package/dist/types/src/base/models/create_aggregators.d.ts +3 -4
- package/dist/types/src/base/models/create_aggregators.d.ts.map +1 -1
- package/dist/types/src/base/models/field.d.ts +3 -2
- package/dist/types/src/base/models/field.d.ts.map +1 -1
- package/dist/types/src/base/models/models.d.ts +1 -2
- 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/models.js +1 -1
- package/package.json +24 -23
- package/types.js +1 -1
- package/dist/cjs/base/models/abstract_model_with_async_data.js +0 -273
- package/dist/cjs/base/models/base.js +0 -306
- package/dist/cjs/base/models/create_aggregators.js +0 -115
- package/dist/cjs/base/models/cursor.js +0 -393
- package/dist/cjs/base/models/field.js +0 -427
- package/dist/cjs/base/models/grouped_record_query_result.js +0 -399
- package/dist/cjs/base/models/linked_records_query_result.js +0 -728
- package/dist/cjs/base/models/mutations.js +0 -338
- package/dist/cjs/base/models/object_pool.js +0 -184
- package/dist/cjs/base/models/record.js +0 -304
- package/dist/cjs/base/models/record_query_result.js +0 -741
- package/dist/cjs/base/models/record_store.js +0 -825
- package/dist/cjs/base/models/session.js +0 -182
- package/dist/cjs/base/models/table.js +0 -668
- package/dist/cjs/base/models/table_or_view_query_result.js +0 -1013
- package/dist/cjs/base/models/view.js +0 -431
- package/dist/cjs/base/models/view_data_store.js +0 -403
- package/dist/cjs/base/models/view_metadata_query_result.js +0 -224
- package/dist/cjs/base/perform_record_action.js +0 -257
- package/dist/cjs/base/sdk.js +0 -233
- package/dist/cjs/base/settings_button.js +0 -138
- package/dist/cjs/base/ui/baymax_utils.js +0 -133
- package/dist/cjs/base/ui/block_wrapper.js +0 -143
- package/dist/cjs/base/ui/box.js +0 -110
- package/dist/cjs/base/ui/button.js +0 -182
- package/dist/cjs/base/ui/cell_renderer.js +0 -255
- package/dist/cjs/base/ui/choice_token.js +0 -110
- package/dist/cjs/base/ui/collaborator_token.js +0 -145
- package/dist/cjs/base/ui/color_palette.js +0 -239
- package/dist/cjs/base/ui/color_palette_synced.js +0 -98
- package/dist/cjs/base/ui/confirmation_dialog.js +0 -153
- package/dist/cjs/base/ui/dialog.js +0 -142
- package/dist/cjs/base/ui/dialog_close_button.js +0 -152
- package/dist/cjs/base/ui/expand_record_picker_async.js +0 -100
- package/dist/cjs/base/ui/field_icon.js +0 -62
- package/dist/cjs/base/ui/field_picker.js +0 -143
- package/dist/cjs/base/ui/field_picker_synced.js +0 -88
- package/dist/cjs/base/ui/form_field.js +0 -137
- package/dist/cjs/base/ui/geometry/point.js +0 -21
- package/dist/cjs/base/ui/geometry/rect.js +0 -67
- package/dist/cjs/base/ui/geometry/size.js +0 -21
- package/dist/cjs/base/ui/global_alert.js +0 -92
- package/dist/cjs/base/ui/heading.js +0 -181
- package/dist/cjs/base/ui/icon.js +0 -129
- package/dist/cjs/base/ui/input.js +0 -200
- package/dist/cjs/base/ui/input_synced.js +0 -89
- package/dist/cjs/base/ui/label.js +0 -105
- package/dist/cjs/base/ui/link.js +0 -229
- package/dist/cjs/base/ui/loader.js +0 -82
- package/dist/cjs/base/ui/modal.js +0 -184
- package/dist/cjs/base/ui/model_picker_select.js +0 -83
- package/dist/cjs/base/ui/popover.js +0 -407
- package/dist/cjs/base/ui/progress_bar.js +0 -128
- package/dist/cjs/base/ui/record_card.js +0 -653
- package/dist/cjs/base/ui/record_card_list.js +0 -377
- package/dist/cjs/base/ui/select.js +0 -247
- package/dist/cjs/base/ui/select_and_select_buttons_helpers.js +0 -87
- package/dist/cjs/base/ui/select_buttons.js +0 -192
- package/dist/cjs/base/ui/select_buttons_synced.js +0 -84
- package/dist/cjs/base/ui/select_synced.js +0 -87
- package/dist/cjs/base/ui/switch.js +0 -196
- package/dist/cjs/base/ui/switch_synced.js +0 -75
- package/dist/cjs/base/ui/synced.js +0 -70
- package/dist/cjs/base/ui/system/appearance/appearance_set.js +0 -30
- package/dist/cjs/base/ui/system/appearance/background_color.js +0 -21
- package/dist/cjs/base/ui/system/appearance/border_radius.js +0 -21
- package/dist/cjs/base/ui/system/appearance/box_shadow.js +0 -21
- package/dist/cjs/base/ui/system/appearance/opacity.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/dimensions_set.js +0 -31
- package/dist/cjs/base/ui/system/dimensions/height.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/max_height.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/max_width.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/min_height.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/min_width.js +0 -21
- package/dist/cjs/base/ui/system/dimensions/width.js +0 -21
- package/dist/cjs/base/ui/system/display.js +0 -22
- package/dist/cjs/base/ui/system/flex_container/align_content.js +0 -18
- package/dist/cjs/base/ui/system/flex_container/align_items.js +0 -18
- package/dist/cjs/base/ui/system/flex_container/flex_container_set.js +0 -31
- package/dist/cjs/base/ui/system/flex_container/flex_direction.js +0 -18
- package/dist/cjs/base/ui/system/flex_container/flex_wrap.js +0 -18
- package/dist/cjs/base/ui/system/flex_container/justify_content.js +0 -18
- package/dist/cjs/base/ui/system/flex_container/justify_items.js +0 -19
- package/dist/cjs/base/ui/system/flex_item/align_self.js +0 -18
- package/dist/cjs/base/ui/system/flex_item/flex.js +0 -18
- package/dist/cjs/base/ui/system/flex_item/flex_basis.js +0 -18
- package/dist/cjs/base/ui/system/flex_item/flex_grow.js +0 -18
- package/dist/cjs/base/ui/system/flex_item/flex_item_set.js +0 -32
- package/dist/cjs/base/ui/system/flex_item/flex_shrink.js +0 -18
- package/dist/cjs/base/ui/system/flex_item/justify_self.js +0 -19
- package/dist/cjs/base/ui/system/flex_item/order.js +0 -18
- package/dist/cjs/base/ui/system/overflow.js +0 -24
- package/dist/cjs/base/ui/system/position/position.js +0 -18
- package/dist/cjs/base/ui/system/position/position_set.js +0 -31
- package/dist/cjs/base/ui/system/position/z_index.js +0 -21
- package/dist/cjs/base/ui/system/spacing/spacing_set.js +0 -27
- package/dist/cjs/base/ui/system/typography/font_family.js +0 -21
- package/dist/cjs/base/ui/system/typography/font_size.js +0 -21
- package/dist/cjs/base/ui/system/typography/font_style.js +0 -18
- package/dist/cjs/base/ui/system/typography/font_weight.js +0 -21
- package/dist/cjs/base/ui/system/typography/letter_spacing.js +0 -21
- package/dist/cjs/base/ui/system/typography/line_height.js +0 -18
- package/dist/cjs/base/ui/system/typography/text_align.js +0 -18
- package/dist/cjs/base/ui/system/typography/text_color.js +0 -21
- package/dist/cjs/base/ui/system/typography/text_decoration.js +0 -18
- package/dist/cjs/base/ui/system/typography/text_transform.js +0 -18
- package/dist/cjs/base/ui/system/typography/typography_set.js +0 -35
- 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/base/ui/system/utils/get_style_props_for_responsive_prop.js +0 -113
- package/dist/cjs/base/ui/table_picker.js +0 -95
- package/dist/cjs/base/ui/table_picker_synced.js +0 -84
- package/dist/cjs/base/ui/text.js +0 -150
- package/dist/cjs/base/ui/text_button.js +0 -228
- package/dist/cjs/base/ui/theme/default_theme/control_sizes.js +0 -96
- package/dist/cjs/base/ui/theme/default_theme/select_variants.js +0 -59
- package/dist/cjs/base/ui/theme/default_theme/switch_variants.js +0 -91
- package/dist/cjs/base/ui/tooltip.js +0 -215
- package/dist/cjs/base/ui/types/aria_props.js +0 -23
- package/dist/cjs/base/ui/types/data_attributes_prop.js +0 -18
- package/dist/cjs/base/ui/types/tooltip_anchor_props.js +0 -17
- package/dist/cjs/base/ui/use_styled_system.js +0 -32
- package/dist/cjs/base/ui/view_picker.js +0 -133
- package/dist/cjs/base/ui/view_picker_synced.js +0 -88
- package/dist/cjs/base/ui/viewport_constraint.js +0 -176
- package/dist/cjs/base/ui/with_styled_system.js +0 -165
- package/dist/cjs/base/undo_redo.js +0 -48
- package/dist/cjs/base/viewport.js +0 -397
- package/dist/cjs/injected/airtable_interface.js +0 -22
- package/dist/cjs/interface/index.js +0 -36
- package/dist/cjs/interface/models/base.js +0 -54
- package/dist/cjs/interface/models/field.js +0 -42
- package/dist/cjs/interface/models/mutations.js +0 -79
- package/dist/cjs/interface/models/record.js +0 -71
- package/dist/cjs/interface/models/record_store.js +0 -83
- package/dist/cjs/interface/models/session.js +0 -42
- package/dist/cjs/interface/models/table.js +0 -126
- package/dist/cjs/interface/sdk.js +0 -104
- package/dist/cjs/interface/types/mutations.js +0 -24
- package/dist/cjs/interface/ui/block_wrapper.js +0 -61
- package/dist/cjs/shared/global_config.js +0 -511
- package/dist/cjs/shared/models/abstract_model.js +0 -119
- package/dist/cjs/shared/models/base_core.js +0 -602
- package/dist/cjs/shared/models/field_core.js +0 -331
- package/dist/cjs/shared/models/mutations_core.js +0 -439
- package/dist/cjs/shared/models/record_core.js +0 -272
- package/dist/cjs/shared/models/record_store_core.js +0 -213
- package/dist/cjs/shared/models/session_core.js +0 -214
- package/dist/cjs/shared/models/table_core.js +0 -1561
- package/dist/cjs/shared/sdk_core.js +0 -115
- package/dist/cjs/shared/types/mutation_constants.js +0 -11
- package/dist/cjs/shared/ui/loader.js +0 -68
- package/dist/cjs/shared/watchable.js +0 -216
- package/dist/cjs/stats/block_stats.js +0 -96
- 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
- /package/dist/{cjs → esm}/base/types/aggregators.js +0 -0
- /package/dist/{cjs → esm}/base/types/backend_fetch_types.js +0 -0
- /package/dist/{cjs → esm}/base/types/base.js +0 -0
- /package/dist/{cjs → esm}/base/types/cursor.js +0 -0
- /package/dist/{cjs → esm}/base/types/field.js +0 -0
- /package/dist/{cjs → esm}/base/types/record.js +0 -0
- /package/dist/{cjs → esm}/base/types/record_action_data.js +0 -0
- /package/dist/{cjs → esm}/base/types/table.js +0 -0
- /package/dist/{cjs → esm}/base/types/viewport.js +0 -0
- /package/dist/{cjs → esm}/base/ui/system/utils/csstype.js +0 -0
- /package/dist/{cjs → esm}/base/ui/system/utils/types.js +0 -0
- /package/dist/{cjs/interface/types/base.js → esm/base/ui/types/aria_props.js} +0 -0
- /package/dist/{cjs/interface/types/field.js → esm/base/ui/types/data_attributes_prop.js} +0 -0
- /package/dist/{cjs/interface/types/record.js → esm/base/ui/types/tooltip_anchor_props.js} +0 -0
- /package/dist/{cjs/interface/types/table.js → esm/interface/types/base.js} +0 -0
- /package/dist/{cjs/sdk_mode.js → esm/interface/types/field.js} +0 -0
- /package/dist/{cjs/shared → esm/interface}/types/record.js +0 -0
- /package/dist/{cjs/shared/types/airtable_interface_core.js → esm/interface/types/table.js} +0 -0
- /package/dist/{cjs → esm}/interface/ui/expand_record.js +0 -0
- /package/dist/{cjs/shared/types/attachment.js → esm/sdk_mode.js} +0 -0
- /package/dist/{cjs/shared/types/base_core.js → esm/shared/types/airtable_interface_core.js} +0 -0
- /package/dist/{cjs/shared/types/collaborator.js → esm/shared/types/attachment.js} +0 -0
- /package/dist/{cjs/shared/types/global_config.js → esm/shared/types/base_core.js} +0 -0
- /package/dist/{cjs/shared/types/hyper_ids.js → esm/shared/types/collaborator.js} +0 -0
- /package/dist/{cjs/shared/types/stat.js → esm/shared/types/global_config.js} +0 -0
- /package/dist/{cjs/shared/types/table_core.js → esm/shared/types/hyper_ids.js} +0 -0
|
@@ -1,741 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
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
|
-
Object.defineProperty(exports, "__esModule", {
|
|
14
|
-
value: true
|
|
15
|
-
});
|
|
16
|
-
exports.default = void 0;
|
|
17
|
-
exports.normalizeSortsOrGroups = normalizeSortsOrGroups;
|
|
18
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
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 _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
24
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
26
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
-
require("core-js/modules/es.array.concat.js");
|
|
28
|
-
require("core-js/modules/es.array.map.js");
|
|
29
|
-
require("core-js/modules/es.string.starts-with.js");
|
|
30
|
-
var _colors = _interopRequireDefault(require("../../shared/colors"));
|
|
31
|
-
var _field_core = require("../../shared/types/field_core");
|
|
32
|
-
var _private_utils = require("../../shared/private_utils");
|
|
33
|
-
var _error_utils = require("../../shared/error_utils");
|
|
34
|
-
var _abstract_model_with_async_data = _interopRequireDefault(require("./abstract_model_with_async_data"));
|
|
35
|
-
var _field = _interopRequireDefault(require("./field"));
|
|
36
|
-
var _record_coloring = require("./record_coloring");
|
|
37
|
-
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; } } }; }
|
|
38
|
-
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; } }
|
|
39
|
-
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; }
|
|
40
|
-
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)); }
|
|
41
|
-
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: RecordQueryResult */ /** */
|
|
42
|
-
var WatchableRecordQueryResultKeys = Object.freeze({
|
|
43
|
-
records: 'records',
|
|
44
|
-
recordIds: 'recordIds',
|
|
45
|
-
cellValues: 'cellValues',
|
|
46
|
-
recordColors: 'recordColors',
|
|
47
|
-
groups: 'groups',
|
|
48
|
-
groupLevels: 'groupLevels',
|
|
49
|
-
isDataLoaded: 'isDataLoaded'
|
|
50
|
-
});
|
|
51
|
-
var WatchableCellValuesInFieldKeyPrefix = 'cellValuesInField:';
|
|
52
|
-
|
|
53
|
-
// The string case is to accommodate cellValuesInField:$FieldId.
|
|
54
|
-
/**
|
|
55
|
-
* A key in {@link RecordQueryResult} that can be watched
|
|
56
|
-
* - `records`
|
|
57
|
-
* - `recordIds`
|
|
58
|
-
* - `cellValues`
|
|
59
|
-
* - `recordColors`
|
|
60
|
-
* - `isDataLoaded`
|
|
61
|
-
* - `cellValuesInField:{FIELD_ID}`
|
|
62
|
-
*/
|
|
63
|
-
|
|
64
|
-
/** */
|
|
65
|
-
|
|
66
|
-
/** @hidden */
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* NormalizedGroupLevel is in airtable_interface
|
|
70
|
-
*
|
|
71
|
-
* @hidden
|
|
72
|
-
*/
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* View Config that can be set by developer
|
|
76
|
-
*
|
|
77
|
-
* @hidden
|
|
78
|
-
*/
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* Used to control what data is loaded in a {@link RecordQueryResult}. Used when creating a
|
|
82
|
-
* query result using `table/view.selectRecords()` and in convenience hooks {@link useRecords}.
|
|
83
|
-
*
|
|
84
|
-
* ## sorts
|
|
85
|
-
* Pass an array of sorts to control the order of records. The first sort in the array has the
|
|
86
|
-
* highest priority. If you don't specify sorts, the result will use the inherent order of the
|
|
87
|
-
* source model: the same order you'd see in the main UI for views and linked record fields, and
|
|
88
|
-
* an arbitrary (but stable) order for tables.
|
|
89
|
-
*
|
|
90
|
-
* Record creation time is used as a tiebreaker: pass an empty array to sort by creation time.
|
|
91
|
-
*
|
|
92
|
-
* ```js
|
|
93
|
-
* const opts = {
|
|
94
|
-
* sorts: [
|
|
95
|
-
* // sort by someField in ascending order...
|
|
96
|
-
* {field: someField},
|
|
97
|
-
* // then by someOtherField in descending order
|
|
98
|
-
* {field: someOtherField, direction: 'desc'},
|
|
99
|
-
* ]
|
|
100
|
-
* };
|
|
101
|
-
* const records = useRecords(table, opts);
|
|
102
|
-
* const queryResult = table.selectRecords(opts);
|
|
103
|
-
* ```
|
|
104
|
-
*
|
|
105
|
-
* ## fields
|
|
106
|
-
* Generally, it's a good idea to load as little data into your extension as possible - Airtable bases
|
|
107
|
-
* can get pretty big, and we have to keep all that information in memory and up to date if you ask
|
|
108
|
-
* for it. The fields option lets you make sure that only data relevant to you is loaded.
|
|
109
|
-
*
|
|
110
|
-
* You can specify fields with a {@link Field}, by ID, or by name:
|
|
111
|
-
* ```js
|
|
112
|
-
* const opts = {
|
|
113
|
-
* fields: [
|
|
114
|
-
* // we want to only load fieldA:
|
|
115
|
-
* fieldA,
|
|
116
|
-
* // the field with this id:
|
|
117
|
-
* 'fldXXXXXXXXXXXXXX',
|
|
118
|
-
* // and the field named 'Rating':
|
|
119
|
-
* 'Rating',
|
|
120
|
-
* ],
|
|
121
|
-
* };
|
|
122
|
-
* const records = useRecords(table, opts);
|
|
123
|
-
* const queryResult = table.selectRecords(opts);
|
|
124
|
-
* ```
|
|
125
|
-
*
|
|
126
|
-
* ## recordColorMode
|
|
127
|
-
* Just like a view in Airtable, you can control the colors of records in a field. There are three
|
|
128
|
-
* supported record color modes: none, by a view, and by a select field.
|
|
129
|
-
*
|
|
130
|
-
* ```js
|
|
131
|
-
* import {recordColoring} from '@airtable/blocks/base/models';
|
|
132
|
-
* // No record coloring:
|
|
133
|
-
* const opts = {
|
|
134
|
-
* recordColorMode: recordColoring.modes.none(),
|
|
135
|
-
* };
|
|
136
|
-
*
|
|
137
|
-
* // Color according to the rules of a view:
|
|
138
|
-
* const opts = {
|
|
139
|
-
* recordColorMode: recordColoring.modes.byView(someView),
|
|
140
|
-
* };
|
|
141
|
-
*
|
|
142
|
-
* // Color by a single select field:
|
|
143
|
-
* const opts = {
|
|
144
|
-
* recordColorMode: recordColoring.modes.bySelectField(someSelectField),
|
|
145
|
-
* });
|
|
146
|
-
* ```
|
|
147
|
-
*
|
|
148
|
-
* You can access view coloring information directly from a {@link RecordQueryResult} or a
|
|
149
|
-
* {@link Record}, but you can only directly access single select coloring from a RecordQueryResult:
|
|
150
|
-
*
|
|
151
|
-
* ```
|
|
152
|
-
* const queryResult = table.selectRecords(opts);
|
|
153
|
-
* const records = useRecords(table, opts);
|
|
154
|
-
*
|
|
155
|
-
* // Returns based on opts coloring mode
|
|
156
|
-
* queryResult.getRecordColor(recordId);
|
|
157
|
-
*
|
|
158
|
-
* // Returns based on view
|
|
159
|
-
* // Will throw if you did not pass recordColoring.modes.byView(view) in opts
|
|
160
|
-
* records[0].getColorInView(view);
|
|
161
|
-
* ```
|
|
162
|
-
*
|
|
163
|
-
* Use `record.getCellValue(singleSelectField).color` to access the color of a single select field
|
|
164
|
-
* for a record.
|
|
165
|
-
*
|
|
166
|
-
* By default, views will have whichever coloring is set up in Airtable and tables won't have any
|
|
167
|
-
* record coloring:
|
|
168
|
-
*
|
|
169
|
-
* ```js
|
|
170
|
-
* // these two are the same:
|
|
171
|
-
* someView.selectRecords();
|
|
172
|
-
* someView.selectRecords({
|
|
173
|
-
* recordColorMode: recordColoring.modes.byView(someView),
|
|
174
|
-
* });
|
|
175
|
-
*
|
|
176
|
-
* // as are these two:
|
|
177
|
-
* someTable.selectRecords();
|
|
178
|
-
* someTable.selectRecords({
|
|
179
|
-
* recordColorMode: recordColoring.modes.none(),
|
|
180
|
-
* });
|
|
181
|
-
* ```
|
|
182
|
-
*
|
|
183
|
-
* */
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* A subset of {@link RecordQueryResultOpts} used in {@link useRecordById} that omits sorts, as
|
|
187
|
-
* there is only a single record.
|
|
188
|
-
*
|
|
189
|
-
* See RecordQueryResultOpts for full details and examples.
|
|
190
|
-
*
|
|
191
|
-
* ```js
|
|
192
|
-
* const opts = {
|
|
193
|
-
* fields: ['My field'],
|
|
194
|
-
* recordColorMode: recordColoring.modes.byView(view),
|
|
195
|
-
* };
|
|
196
|
-
* const record = useRecordById(table, recordId, opts);
|
|
197
|
-
* */
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* A subset of {@link RecordQueryResultOpts} used in {@link useRecordIds} that omits fields and
|
|
201
|
-
* recordColorMode, as record cell values and color are not accessible via this hook.
|
|
202
|
-
*
|
|
203
|
-
* See RecordQueryResultOpts for full details and examples.
|
|
204
|
-
*
|
|
205
|
-
* ```js
|
|
206
|
-
* const opts = {
|
|
207
|
-
* sorts: [
|
|
208
|
-
* // sort by someField in ascending order...
|
|
209
|
-
* {field: someField},
|
|
210
|
-
* // then by someOtherField in descending order
|
|
211
|
-
* {field: someOtherField, direction: 'desc'},
|
|
212
|
-
* ]
|
|
213
|
-
* };
|
|
214
|
-
* const recordIds = useRecordIds(table, opts);
|
|
215
|
-
* */
|
|
216
|
-
|
|
217
|
-
/** @internal */
|
|
218
|
-
|
|
219
|
-
/** @internal */
|
|
220
|
-
|
|
221
|
-
/**
|
|
222
|
-
* @internal
|
|
223
|
-
*/
|
|
224
|
-
function _normalizeSortOrGroup(table, sortOrGroup) {
|
|
225
|
-
var _sortOrGroup$directio;
|
|
226
|
-
var field = table.__getFieldMatching(sortOrGroup.field);
|
|
227
|
-
if (sortOrGroup.direction !== undefined && sortOrGroup.direction !== 'asc' && sortOrGroup.direction !== 'desc') {
|
|
228
|
-
throw (0, _error_utils.spawnError)('Invalid sort direction: %s', sortOrGroup.direction);
|
|
229
|
-
}
|
|
230
|
-
return {
|
|
231
|
-
fieldId: field.id,
|
|
232
|
-
direction: (_sortOrGroup$directio = sortOrGroup.direction) !== null && _sortOrGroup$directio !== void 0 ? _sortOrGroup$directio : 'asc'
|
|
233
|
-
};
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
/**
|
|
237
|
-
* @internal
|
|
238
|
-
*/
|
|
239
|
-
function normalizeSortsOrGroups(table, sortsOrGroups) {
|
|
240
|
-
if (sortsOrGroups === undefined || sortsOrGroups === null) {
|
|
241
|
-
return sortsOrGroups;
|
|
242
|
-
}
|
|
243
|
-
return sortsOrGroups.map(sortOrGroup => _normalizeSortOrGroup(table, sortOrGroup));
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
/**
|
|
247
|
-
* A RecordQueryResult represents a set of records. It's a little bit like a one-off View in Airtable: it
|
|
248
|
-
* contains a bunch of records, filtered to a useful subset of the records in the table. Those
|
|
249
|
-
* records can be sorted according to your specification, and they can be colored by a select field
|
|
250
|
-
* or using the color from a view. Just like a view, you can either have all the fields in a table
|
|
251
|
-
* available, or you can just ask for the fields that are relevant to you. There are two types of
|
|
252
|
-
* QueryResult:
|
|
253
|
-
*
|
|
254
|
-
* - {@link TableOrViewQueryResult} is the most common, and is a query result filtered to all the
|
|
255
|
-
* records in a specific {@link Table} or {@link View}. You can get one of these with
|
|
256
|
-
* `table.selectRecords()` or `view.selectRecords()`.
|
|
257
|
-
* - {@link LinkedRecordsQueryResult} is a query result of all the records in a particular
|
|
258
|
-
* [linked record cell](https://support.airtable.com/hc/en-us/articles/206452848-Linked-record-fields).
|
|
259
|
-
* You can get one of these with `record.selectLinkedRecordsFromCell(someField)`.
|
|
260
|
-
*
|
|
261
|
-
* Once you've got a query result, you need to load it before you can start working with it -
|
|
262
|
-
* extensions don't load record data by default. We recommend using {@link useRecords},
|
|
263
|
-
* {@link useRecordIds}, {@link useRecordById} or {@link useLoadable} to handle this.
|
|
264
|
-
*
|
|
265
|
-
* If you're not using a query result in a React component, you can manually load the data and
|
|
266
|
-
* unload it when you're finished:
|
|
267
|
-
*
|
|
268
|
-
* ```js
|
|
269
|
-
* async function fetchRecordsAndDoSomethingAsync(myTable) {
|
|
270
|
-
* // query for all the records in "myTable"
|
|
271
|
-
* const queryResult = myTable.selectRecords();
|
|
272
|
-
*
|
|
273
|
-
* // load the data in the query result:
|
|
274
|
-
* await queryResult.loadDataAsync();
|
|
275
|
-
*
|
|
276
|
-
* // work with the data in the query result
|
|
277
|
-
* doSomething(queryResult);
|
|
278
|
-
*
|
|
279
|
-
* // when you're done, unload the data:
|
|
280
|
-
* queryResult.unloadData();
|
|
281
|
-
* }
|
|
282
|
-
* ```
|
|
283
|
-
*
|
|
284
|
-
* Whilst loaded, a query result will automatically keep up to date with what's in Airtable:
|
|
285
|
-
* records will get added or removed, the order will change, cell values will be updated, etc.
|
|
286
|
-
* Again, if you're writing a React component then our hooks will look after that for you. If not,
|
|
287
|
-
* you can get notified of these changes with `.watch()`.
|
|
288
|
-
*
|
|
289
|
-
* When calling a `.select*` method, you can pass in a number of options to control the sort order,
|
|
290
|
-
* fields loaded and coloring mode of records: see {@link RecordQueryResultOpts} for examples.
|
|
291
|
-
*
|
|
292
|
-
* @docsPath models/query results/RecordQueryResult
|
|
293
|
-
*/
|
|
294
|
-
var RecordQueryResult = /*#__PURE__*/function (_AbstractModelWithAsy) {
|
|
295
|
-
/**
|
|
296
|
-
* @internal
|
|
297
|
-
*/
|
|
298
|
-
function RecordQueryResult(sdk, normalizedOpts) {
|
|
299
|
-
var _this;
|
|
300
|
-
(0, _classCallCheck2.default)(this, RecordQueryResult);
|
|
301
|
-
_this = _callSuper(this, RecordQueryResult, [sdk, (0, _private_utils.getLocallyUniqueId)('RecordQueryResult')]);
|
|
302
|
-
/** @internal */
|
|
303
|
-
(0, _defineProperty2.default)(_this, "_normalizedOpts", void 0);
|
|
304
|
-
/** @internal */
|
|
305
|
-
(0, _defineProperty2.default)(_this, "_recordStore", void 0);
|
|
306
|
-
/** @internal */
|
|
307
|
-
(0, _defineProperty2.default)(_this, "_recordColorChangeHandler", null);
|
|
308
|
-
_this._normalizedOpts = normalizedOpts;
|
|
309
|
-
_this._recordStore = normalizedOpts.recordStore;
|
|
310
|
-
return _this;
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* @internal
|
|
315
|
-
*/
|
|
316
|
-
(0, _inherits2.default)(RecordQueryResult, _AbstractModelWithAsy);
|
|
317
|
-
return (0, _createClass2.default)(RecordQueryResult, [{
|
|
318
|
-
key: "_serializedOpts",
|
|
319
|
-
get: function get() {
|
|
320
|
-
return JSON.stringify([this._normalizedOpts.sorts, this._normalizedOpts.fieldIdsOrNullIfAllFields, this._normalizedOpts.table.id, (0, _record_coloring.serialize)(this._normalizedOpts.recordColorMode)]);
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
/**
|
|
324
|
-
* The records in this RecordQueryResult.
|
|
325
|
-
* Throws if data is not loaded yet.
|
|
326
|
-
* Can be watched.
|
|
327
|
-
*/
|
|
328
|
-
}, {
|
|
329
|
-
key: "records",
|
|
330
|
-
get: function get() {
|
|
331
|
-
return this.recordIds.map(recordId => {
|
|
332
|
-
var record = this._recordStore.getRecordByIdIfExists(recordId);
|
|
333
|
-
(0, _error_utils.invariant)(record, 'Record missing in table');
|
|
334
|
-
return record;
|
|
335
|
-
});
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
/**
|
|
339
|
-
* Get a specific record in the query result, or null if that record doesn't exist or is
|
|
340
|
-
* filtered out. Throws if data is not loaded yet. Watch using `'recordIds'`.
|
|
341
|
-
*
|
|
342
|
-
* @param recordId the ID of the {@link Record} you want
|
|
343
|
-
*/
|
|
344
|
-
}, {
|
|
345
|
-
key: "getRecordByIdIfExists",
|
|
346
|
-
value: function getRecordByIdIfExists(recordId) {
|
|
347
|
-
var record = this._recordStore.getRecordByIdIfExists(recordId);
|
|
348
|
-
if (!record || !this.hasRecord(record)) {
|
|
349
|
-
return null;
|
|
350
|
-
}
|
|
351
|
-
return record;
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
/**
|
|
355
|
-
* Get a specific record in the query result, or throws if that record doesn't exist or is
|
|
356
|
-
* filtered out. Throws if data is not loaded yet. Watch using `'recordIds'`.
|
|
357
|
-
*
|
|
358
|
-
* @param recordId the ID of the {@link Record} you want
|
|
359
|
-
*/
|
|
360
|
-
}, {
|
|
361
|
-
key: "getRecordById",
|
|
362
|
-
value: function getRecordById(recordId) {
|
|
363
|
-
var record = this.getRecordByIdIfExists(recordId);
|
|
364
|
-
if (!record) {
|
|
365
|
-
throw (0, _error_utils.spawnError)('No record with ID %s in this query result', recordId);
|
|
366
|
-
}
|
|
367
|
-
return record;
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
/**
|
|
371
|
-
* @internal
|
|
372
|
-
*/
|
|
373
|
-
}, {
|
|
374
|
-
key: "_getRecord",
|
|
375
|
-
value: function _getRecord(recordOrRecordId) {
|
|
376
|
-
return this.getRecordById(typeof recordOrRecordId === 'string' ? recordOrRecordId : recordOrRecordId.id);
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
/**
|
|
380
|
-
* Check to see if a particular record or record id is present in this query result. Returns
|
|
381
|
-
* false if the record has been deleted or is filtered out.
|
|
382
|
-
*
|
|
383
|
-
* @param recordOrRecordId the record or record id to check the presence of
|
|
384
|
-
*/
|
|
385
|
-
}, {
|
|
386
|
-
key: "hasRecord",
|
|
387
|
-
value: function hasRecord(recordOrRecordId) {
|
|
388
|
-
var recordId = typeof recordOrRecordId === 'string' ? recordOrRecordId : recordOrRecordId.id;
|
|
389
|
-
return this._getOrGenerateRecordIdsSet()[recordId] === true;
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
/**
|
|
393
|
-
* Get the {@link Color} of a specific record in the query result. Returns null if the record
|
|
394
|
-
* has no color in this query result. Throws if the record isn't in the RecordQueryResult. Watch
|
|
395
|
-
* with the `'recordColors'` and `'recordIds` keys.
|
|
396
|
-
*
|
|
397
|
-
* @param recordOrRecordId the record or record ID you want the color of.
|
|
398
|
-
*/
|
|
399
|
-
}, {
|
|
400
|
-
key: "getRecordColor",
|
|
401
|
-
value: function getRecordColor(recordOrRecordId) {
|
|
402
|
-
var record = this._getRecord(recordOrRecordId);
|
|
403
|
-
var recordColorMode = this._normalizedOpts.recordColorMode;
|
|
404
|
-
switch (recordColorMode.type) {
|
|
405
|
-
case _record_coloring.ModeTypes.NONE:
|
|
406
|
-
return null;
|
|
407
|
-
case _record_coloring.ModeTypes.BY_SELECT_FIELD:
|
|
408
|
-
{
|
|
409
|
-
if (recordColorMode.selectField.type !== _field_core.FieldType.SINGLE_SELECT) {
|
|
410
|
-
return null;
|
|
411
|
-
}
|
|
412
|
-
var value = record.getCellValue(recordColorMode.selectField);
|
|
413
|
-
return value && typeof value === 'object' && typeof value.color === 'string' ? (0, _private_utils.assertEnumValue)(_colors.default, value.color) : null;
|
|
414
|
-
}
|
|
415
|
-
case _record_coloring.ModeTypes.BY_VIEW:
|
|
416
|
-
return this._recordStore.getViewDataStore(recordColorMode.view.id).getRecordColor(record);
|
|
417
|
-
// istanbul ignore next
|
|
418
|
-
default:
|
|
419
|
-
throw (0, _error_utils.spawnError)('Unknown record coloring mode type: %s', (0, _private_utils.cast)(recordColorMode).type);
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
/**
|
|
424
|
-
* @internal
|
|
425
|
-
*/
|
|
426
|
-
}, {
|
|
427
|
-
key: "_onChangeIsDataLoaded",
|
|
428
|
-
value: function _onChangeIsDataLoaded() {
|
|
429
|
-
this._onChange(WatchableRecordQueryResultKeys.isDataLoaded);
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
/**
|
|
433
|
-
* Get notified of changes to the query result.
|
|
434
|
-
*
|
|
435
|
-
* Watchable keys are:
|
|
436
|
-
* - `'records'`
|
|
437
|
-
* - `'recordIds'`
|
|
438
|
-
* - `'cellValues'`
|
|
439
|
-
* - `'recordColors'`
|
|
440
|
-
* - `'isDataLoaded'`
|
|
441
|
-
* - `'cellValuesInField:' + someFieldId`
|
|
442
|
-
*
|
|
443
|
-
* Every call to `.watch` should have a matching call to `.unwatch`.
|
|
444
|
-
*
|
|
445
|
-
* Watching a key that needs to load data asynchronously will automatically
|
|
446
|
-
* cause the data to be fetched. Once the data is available, the `callback`
|
|
447
|
-
* will be called.
|
|
448
|
-
*
|
|
449
|
-
* Returns the array of keys that were watched.
|
|
450
|
-
*
|
|
451
|
-
* @param keys the keys to watch
|
|
452
|
-
* @param callback a function to call when those keys change
|
|
453
|
-
* @param context an optional context for `this` in `callback`.
|
|
454
|
-
*/
|
|
455
|
-
}, {
|
|
456
|
-
key: "watch",
|
|
457
|
-
value: function watch(keys, callback, context) {
|
|
458
|
-
var validKeys = (0, _get2.default)((0, _getPrototypeOf2.default)(RecordQueryResult.prototype), "watch", this).call(this, keys, callback, context);
|
|
459
|
-
var _iterator = _createForOfIteratorHelper(validKeys),
|
|
460
|
-
_step;
|
|
461
|
-
try {
|
|
462
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
463
|
-
var key = _step.value;
|
|
464
|
-
if (key === WatchableRecordQueryResultKeys.recordColors) {
|
|
465
|
-
this._watchRecordColorsIfNeeded();
|
|
466
|
-
}
|
|
467
|
-
}
|
|
468
|
-
} catch (err) {
|
|
469
|
-
_iterator.e(err);
|
|
470
|
-
} finally {
|
|
471
|
-
_iterator.f();
|
|
472
|
-
}
|
|
473
|
-
return validKeys;
|
|
474
|
-
}
|
|
475
|
-
|
|
476
|
-
/**
|
|
477
|
-
* Unwatch keys watched with `.watch`.
|
|
478
|
-
*
|
|
479
|
-
* Should be called with the same arguments given to `.watch`.
|
|
480
|
-
*
|
|
481
|
-
* Unwatching a key that needs to load data asynchronously will automatically
|
|
482
|
-
* cause the data to be unloaded.
|
|
483
|
-
*
|
|
484
|
-
* Returns the array of keys that were unwatched
|
|
485
|
-
*
|
|
486
|
-
* @param keys the keys to unwatch
|
|
487
|
-
* @param callback the function passed to `.watch` for these keys
|
|
488
|
-
* @param context the context that was passed to `.watch` for this `callback`
|
|
489
|
-
*/
|
|
490
|
-
}, {
|
|
491
|
-
key: "unwatch",
|
|
492
|
-
value: function unwatch(keys, callback, context) {
|
|
493
|
-
var validKeys = (0, _get2.default)((0, _getPrototypeOf2.default)(RecordQueryResult.prototype), "unwatch", this).call(this, keys, callback, context);
|
|
494
|
-
var _iterator2 = _createForOfIteratorHelper(validKeys),
|
|
495
|
-
_step2;
|
|
496
|
-
try {
|
|
497
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
498
|
-
var key = _step2.value;
|
|
499
|
-
if (key === WatchableRecordQueryResultKeys.recordColors) {
|
|
500
|
-
this._unwatchRecordColorsIfPossible();
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
} catch (err) {
|
|
504
|
-
_iterator2.e(err);
|
|
505
|
-
} finally {
|
|
506
|
-
_iterator2.f();
|
|
507
|
-
}
|
|
508
|
-
return validKeys;
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
/**
|
|
512
|
-
* @internal
|
|
513
|
-
*/
|
|
514
|
-
}, {
|
|
515
|
-
key: "_watchRecordColorsIfNeeded",
|
|
516
|
-
value: function _watchRecordColorsIfNeeded() {
|
|
517
|
-
(0, _error_utils.invariant)(this._changeWatchersByKey[WatchableRecordQueryResultKeys.recordColors], 'method may only be called when `recordColors` key has been watched');
|
|
518
|
-
var watchCount = this._changeWatchersByKey[WatchableRecordQueryResultKeys.recordColors].length;
|
|
519
|
-
if (!this._recordColorChangeHandler && watchCount >= 1) {
|
|
520
|
-
this._watchRecordColors();
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
|
|
524
|
-
/**
|
|
525
|
-
* @internal
|
|
526
|
-
*/
|
|
527
|
-
}, {
|
|
528
|
-
key: "_watchRecordColors",
|
|
529
|
-
value: function _watchRecordColors() {
|
|
530
|
-
var recordColorMode = this._normalizedOpts.recordColorMode;
|
|
531
|
-
var handler = (model, key, recordIds) => {
|
|
532
|
-
if (model === this) {
|
|
533
|
-
this._onChange(WatchableRecordQueryResultKeys.recordColors, recordIds);
|
|
534
|
-
} else {
|
|
535
|
-
this._onChange(WatchableRecordQueryResultKeys.recordColors);
|
|
536
|
-
}
|
|
537
|
-
};
|
|
538
|
-
switch (recordColorMode.type) {
|
|
539
|
-
case _record_coloring.ModeTypes.NONE:
|
|
540
|
-
break;
|
|
541
|
-
case _record_coloring.ModeTypes.BY_SELECT_FIELD:
|
|
542
|
-
this.watch("".concat(WatchableCellValuesInFieldKeyPrefix).concat(recordColorMode.selectField.id), handler);
|
|
543
|
-
recordColorMode.selectField.watch('options', handler);
|
|
544
|
-
break;
|
|
545
|
-
case _record_coloring.ModeTypes.BY_VIEW:
|
|
546
|
-
{
|
|
547
|
-
this._recordStore.getViewDataStore(recordColorMode.view.id).watch('recordColors', handler);
|
|
548
|
-
break;
|
|
549
|
-
}
|
|
550
|
-
// istanbul ignore next
|
|
551
|
-
default:
|
|
552
|
-
throw (0, _error_utils.spawnError)('Unknown record coloring mode type: %s', (0, _private_utils.cast)(recordColorMode).type);
|
|
553
|
-
}
|
|
554
|
-
this._recordColorChangeHandler = handler;
|
|
555
|
-
}
|
|
556
|
-
|
|
557
|
-
/**
|
|
558
|
-
* @internal
|
|
559
|
-
*/
|
|
560
|
-
}, {
|
|
561
|
-
key: "_unwatchRecordColorsIfPossible",
|
|
562
|
-
value: function _unwatchRecordColorsIfPossible() {
|
|
563
|
-
var watchCount = (this._changeWatchersByKey[WatchableRecordQueryResultKeys.recordColors] || []).length;
|
|
564
|
-
if (this._recordColorChangeHandler && watchCount === 0) {
|
|
565
|
-
this._unwatchRecordColors();
|
|
566
|
-
}
|
|
567
|
-
}
|
|
568
|
-
|
|
569
|
-
/**
|
|
570
|
-
* @internal
|
|
571
|
-
*/
|
|
572
|
-
}, {
|
|
573
|
-
key: "_unwatchRecordColors",
|
|
574
|
-
value: function _unwatchRecordColors() {
|
|
575
|
-
var recordColorMode = this._normalizedOpts.recordColorMode;
|
|
576
|
-
var handler = this._recordColorChangeHandler;
|
|
577
|
-
(0, _error_utils.invariant)(handler, 'record color change handler must exist');
|
|
578
|
-
switch (recordColorMode.type) {
|
|
579
|
-
case _record_coloring.ModeTypes.NONE:
|
|
580
|
-
break;
|
|
581
|
-
case _record_coloring.ModeTypes.BY_SELECT_FIELD:
|
|
582
|
-
this.unwatch("".concat(WatchableCellValuesInFieldKeyPrefix).concat(recordColorMode.selectField.id), handler);
|
|
583
|
-
recordColorMode.selectField.unwatch('options', handler);
|
|
584
|
-
break;
|
|
585
|
-
case _record_coloring.ModeTypes.BY_VIEW:
|
|
586
|
-
{
|
|
587
|
-
if (!recordColorMode.view.isDeleted) {
|
|
588
|
-
this._recordStore.getViewDataStore(recordColorMode.view.id).unwatch('recordColors', handler);
|
|
589
|
-
}
|
|
590
|
-
break;
|
|
591
|
-
}
|
|
592
|
-
// istanbul ignore next
|
|
593
|
-
default:
|
|
594
|
-
throw (0, _error_utils.spawnError)('Unknown record coloring mode type: %s', (0, _private_utils.cast)(recordColorMode).type);
|
|
595
|
-
}
|
|
596
|
-
this._recordColorChangeHandler = null;
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
/**
|
|
600
|
-
* @internal
|
|
601
|
-
*/
|
|
602
|
-
}, {
|
|
603
|
-
key: "_loadRecordColorsAsync",
|
|
604
|
-
value: (function () {
|
|
605
|
-
var _loadRecordColorsAsync2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
606
|
-
var recordColorMode;
|
|
607
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
608
|
-
while (1) switch (_context.prev = _context.next) {
|
|
609
|
-
case 0:
|
|
610
|
-
recordColorMode = this._normalizedOpts.recordColorMode;
|
|
611
|
-
_context.t0 = recordColorMode.type;
|
|
612
|
-
_context.next = _context.t0 === _record_coloring.ModeTypes.NONE ? 4 : _context.t0 === _record_coloring.ModeTypes.BY_SELECT_FIELD ? 5 : _context.t0 === _record_coloring.ModeTypes.BY_VIEW ? 6 : 9;
|
|
613
|
-
break;
|
|
614
|
-
case 4:
|
|
615
|
-
return _context.abrupt("return");
|
|
616
|
-
case 5:
|
|
617
|
-
return _context.abrupt("return");
|
|
618
|
-
case 6:
|
|
619
|
-
_context.next = 8;
|
|
620
|
-
return this._recordStore.getViewDataStore(recordColorMode.view.id).loadDataAsync();
|
|
621
|
-
case 8:
|
|
622
|
-
return _context.abrupt("return");
|
|
623
|
-
case 9:
|
|
624
|
-
throw (0, _error_utils.spawnUnknownSwitchCaseError)('record color mode type', recordColorMode, 'type');
|
|
625
|
-
case 10:
|
|
626
|
-
case "end":
|
|
627
|
-
return _context.stop();
|
|
628
|
-
}
|
|
629
|
-
}, _callee, this);
|
|
630
|
-
}));
|
|
631
|
-
function _loadRecordColorsAsync() {
|
|
632
|
-
return _loadRecordColorsAsync2.apply(this, arguments);
|
|
633
|
-
}
|
|
634
|
-
return _loadRecordColorsAsync;
|
|
635
|
-
}()
|
|
636
|
-
/**
|
|
637
|
-
* @internal
|
|
638
|
-
*/
|
|
639
|
-
)
|
|
640
|
-
}, {
|
|
641
|
-
key: "_unloadRecordColors",
|
|
642
|
-
value: function _unloadRecordColors() {
|
|
643
|
-
var recordColorMode = this._normalizedOpts.recordColorMode;
|
|
644
|
-
switch (recordColorMode.type) {
|
|
645
|
-
case _record_coloring.ModeTypes.NONE:
|
|
646
|
-
return;
|
|
647
|
-
case _record_coloring.ModeTypes.BY_SELECT_FIELD:
|
|
648
|
-
// handled as part of fieldIdsOrNullIfAllFields
|
|
649
|
-
return;
|
|
650
|
-
case _record_coloring.ModeTypes.BY_VIEW:
|
|
651
|
-
if (!recordColorMode.view.isDeleted) {
|
|
652
|
-
this._recordStore.getViewDataStore(recordColorMode.view.id).unloadData();
|
|
653
|
-
}
|
|
654
|
-
break;
|
|
655
|
-
// istanbul ignore next
|
|
656
|
-
default:
|
|
657
|
-
throw (0, _error_utils.spawnUnknownSwitchCaseError)('record color mode type', recordColorMode, 'type');
|
|
658
|
-
}
|
|
659
|
-
}
|
|
660
|
-
}], [{
|
|
661
|
-
key: "_isWatchableKey",
|
|
662
|
-
value: /** @internal */
|
|
663
|
-
function _isWatchableKey(key) {
|
|
664
|
-
return (0, _private_utils.isEnumValue)(WatchableRecordQueryResultKeys, key) || key.startsWith(WatchableCellValuesInFieldKeyPrefix);
|
|
665
|
-
}
|
|
666
|
-
/** @internal */
|
|
667
|
-
}, {
|
|
668
|
-
key: "_shouldLoadDataForKey",
|
|
669
|
-
value: function _shouldLoadDataForKey(key) {
|
|
670
|
-
return key === RecordQueryResult.WatchableKeys.records || key === RecordQueryResult.WatchableKeys.recordIds || key === RecordQueryResult.WatchableKeys.cellValues || key === RecordQueryResult.WatchableKeys.recordColors || key === RecordQueryResult.WatchableKeys.groups || key === RecordQueryResult.WatchableKeys.groupLevels || key.startsWith(RecordQueryResult.WatchableCellValuesInFieldKeyPrefix);
|
|
671
|
-
}
|
|
672
|
-
|
|
673
|
-
/** @internal */
|
|
674
|
-
}, {
|
|
675
|
-
key: "_normalizeOpts",
|
|
676
|
-
value: function _normalizeOpts(table, recordStore, opts) {
|
|
677
|
-
var _normalizeSortsOrGrou;
|
|
678
|
-
var sorts = (_normalizeSortsOrGrou = normalizeSortsOrGroups(table, opts.sorts)) !== null && _normalizeSortsOrGrou !== void 0 ? _normalizeSortsOrGrou : null;
|
|
679
|
-
var fieldIdsOrNullIfAllFields = null;
|
|
680
|
-
if (opts.fields) {
|
|
681
|
-
(0, _error_utils.invariant)(Array.isArray(opts.fields), 'Must specify an array of fields');
|
|
682
|
-
fieldIdsOrNullIfAllFields = [];
|
|
683
|
-
var _iterator3 = _createForOfIteratorHelper(opts.fields),
|
|
684
|
-
_step3;
|
|
685
|
-
try {
|
|
686
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
687
|
-
var fieldOrFieldIdOrFieldName = _step3.value;
|
|
688
|
-
if (!fieldOrFieldIdOrFieldName) {
|
|
689
|
-
// Filter out false-y values so users of this API
|
|
690
|
-
// can conveniently list conditional fields, e.g. [field1, isFoo && field2]
|
|
691
|
-
continue;
|
|
692
|
-
}
|
|
693
|
-
if (typeof fieldOrFieldIdOrFieldName !== 'string' && !(fieldOrFieldIdOrFieldName instanceof _field.default)) {
|
|
694
|
-
throw (0, _error_utils.spawnError)('Invalid value for field, expected a field, id, or name but got: %s', fieldOrFieldIdOrFieldName);
|
|
695
|
-
}
|
|
696
|
-
var field = table.__getFieldMatching(fieldOrFieldIdOrFieldName);
|
|
697
|
-
fieldIdsOrNullIfAllFields.push(field.id);
|
|
698
|
-
}
|
|
699
|
-
} catch (err) {
|
|
700
|
-
_iterator3.e(err);
|
|
701
|
-
} finally {
|
|
702
|
-
_iterator3.f();
|
|
703
|
-
}
|
|
704
|
-
}
|
|
705
|
-
var recordColorMode = opts.recordColorMode || _record_coloring.modes.none();
|
|
706
|
-
switch (recordColorMode.type) {
|
|
707
|
-
case _record_coloring.ModeTypes.NONE:
|
|
708
|
-
break;
|
|
709
|
-
case _record_coloring.ModeTypes.BY_SELECT_FIELD:
|
|
710
|
-
(0, _error_utils.invariant)(recordColorMode.selectField.type === _field_core.FieldType.SINGLE_SELECT, 'Invalid field for coloring records by select field: expected a %s, but got a %s', _field_core.FieldType.SINGLE_SELECT, recordColorMode.selectField.type);
|
|
711
|
-
(0, _error_utils.invariant)(recordColorMode.selectField.parentTable === table, 'Invalid field for coloring records by select field: the single select field is not in the same table as the records');
|
|
712
|
-
if (fieldIdsOrNullIfAllFields) {
|
|
713
|
-
fieldIdsOrNullIfAllFields.push(recordColorMode.selectField.id);
|
|
714
|
-
}
|
|
715
|
-
break;
|
|
716
|
-
case _record_coloring.ModeTypes.BY_VIEW:
|
|
717
|
-
(0, _error_utils.invariant)(recordColorMode.view.parentTable === table, 'Invalid view for coloring records from view: the view is not in the same table as the records');
|
|
718
|
-
break;
|
|
719
|
-
default:
|
|
720
|
-
throw (0, _error_utils.spawnError)('Unknown record coloring mode type: %s', (0, _private_utils.cast)(recordColorMode).type);
|
|
721
|
-
}
|
|
722
|
-
(0, _error_utils.invariant)(table.id === recordStore.tableId, 'record store and table must match');
|
|
723
|
-
return {
|
|
724
|
-
sorts,
|
|
725
|
-
fieldIdsOrNullIfAllFields,
|
|
726
|
-
recordColorMode,
|
|
727
|
-
table,
|
|
728
|
-
recordStore
|
|
729
|
-
};
|
|
730
|
-
}
|
|
731
|
-
}]);
|
|
732
|
-
}(_abstract_model_with_async_data.default);
|
|
733
|
-
// Abstract properties - classes extending QueryResult must override these:
|
|
734
|
-
/** @internal */
|
|
735
|
-
(0, _defineProperty2.default)(RecordQueryResult, "_className", 'RecordQueryResult');
|
|
736
|
-
// provided properties + methods:
|
|
737
|
-
/** @internal */
|
|
738
|
-
(0, _defineProperty2.default)(RecordQueryResult, "WatchableKeys", WatchableRecordQueryResultKeys);
|
|
739
|
-
/** @internal */
|
|
740
|
-
(0, _defineProperty2.default)(RecordQueryResult, "WatchableCellValuesInFieldKeyPrefix", WatchableCellValuesInFieldKeyPrefix);
|
|
741
|
-
var _default = exports.default = RecordQueryResult;
|