@airtable/blocks 0.0.0-experimental-e5ab33b68-20250905 → 0.0.0-experimental-e625869e5-20251002
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 +9 -0
- package/dist/esm/base/index.js +42 -0
- package/dist/{cjs → esm}/base/models/abstract_model_with_async_data.js +8 -15
- package/dist/{cjs → esm}/base/models/base.js +42 -22
- package/dist/{cjs → esm}/base/models/create_aggregators.js +11 -24
- package/dist/{cjs → esm}/base/models/cursor.js +21 -28
- package/dist/{cjs → esm}/base/models/field.js +16 -24
- package/dist/{cjs → esm}/base/models/grouped_record_query_result.js +9 -15
- package/dist/{cjs → esm}/base/models/linked_records_query_result.js +42 -50
- package/dist/esm/base/models/models.js +19 -0
- package/dist/{cjs → esm}/base/models/mutations.js +68 -74
- package/dist/{cjs → esm}/base/models/object_pool.js +4 -11
- package/dist/{cjs → esm}/base/models/record.js +18 -25
- package/dist/{cjs → esm}/base/models/record_coloring.js +3 -10
- package/dist/{cjs → esm}/base/models/record_query_result.js +52 -61
- package/dist/{cjs → esm}/base/models/record_store.js +33 -42
- package/dist/{cjs → esm}/base/models/session.js +7 -12
- package/dist/{cjs → esm}/base/models/table.js +31 -39
- package/dist/{cjs → esm}/base/models/table_or_view_query_result.js +74 -82
- package/dist/{cjs → esm}/base/models/view.js +17 -25
- package/dist/{cjs → esm}/base/models/view_data_store.js +19 -26
- package/dist/{cjs → esm}/base/models/view_metadata_query_result.js +9 -16
- package/dist/{cjs → esm}/base/perform_record_action.js +9 -19
- package/dist/{cjs → esm}/base/sdk.js +20 -27
- package/dist/{cjs → esm}/base/settings_button.js +5 -13
- package/dist/esm/base/types/aggregators.js +1 -0
- package/dist/{cjs → esm}/base/types/airtable_interface.js +18 -10
- package/dist/esm/base/types/backend_fetch_types.js +1 -0
- package/dist/esm/base/types/base.js +1 -0
- package/dist/esm/base/types/cursor.js +1 -0
- package/dist/esm/base/types/field.js +1 -0
- package/dist/{cjs → esm}/base/types/mutations.js +3 -9
- package/dist/esm/base/types/record.js +1 -0
- package/dist/esm/base/types/record_action_data.js +1 -0
- package/dist/esm/base/types/table.js +1 -0
- package/dist/esm/base/types/undo_redo.js +6 -0
- package/dist/{cjs → esm}/base/types/view.js +7 -8
- package/dist/esm/base/types/viewport.js +1 -0
- package/dist/esm/base/ui/base_provider.js +41 -0
- package/dist/esm/base/ui/block_wrapper.js +143 -0
- package/dist/esm/base/ui/cell_renderer.js +19 -0
- package/dist/{cjs → esm}/base/ui/expand_record.js +1 -7
- package/dist/{cjs → esm}/base/ui/expand_record_list.js +4 -10
- package/dist/{cjs → esm}/base/ui/expand_record_picker_async.js +4 -10
- package/dist/esm/base/ui/global_alert.js +65 -0
- package/dist/esm/base/ui/global_css_helpers.js +28 -0
- package/dist/esm/base/ui/initialize_block.js +110 -0
- package/dist/esm/base/ui/ui.js +32 -0
- package/dist/esm/base/ui/unstable_standalone_ui.js +29 -0
- package/dist/{cjs → esm}/base/ui/use_base.js +4 -10
- package/dist/{cjs → esm}/base/ui/use_cursor.js +5 -12
- package/dist/{cjs → esm}/base/ui/use_loadable.js +13 -21
- package/dist/{cjs → esm}/base/ui/use_record_action_data.js +9 -15
- package/dist/{cjs → esm}/base/ui/use_records.js +21 -33
- package/dist/{cjs → esm}/base/ui/use_session.js +4 -10
- package/dist/{cjs → esm}/base/ui/use_settings_button.js +7 -15
- package/dist/{cjs → esm}/base/ui/use_view_metadata.js +8 -14
- package/dist/{cjs → esm}/base/ui/use_viewport.js +5 -12
- package/dist/esm/base/undo_redo.js +31 -0
- package/dist/esm/base/unstable_testing_utils.js +6 -0
- package/dist/{cjs → esm}/base/viewport.js +9 -17
- package/dist/{cjs → esm}/injected/airtable_interface.js +3 -9
- package/dist/esm/interface/assert_run_context.js +9 -0
- package/dist/esm/interface/index.js +16 -0
- package/dist/{cjs → esm}/interface/models/base.js +7 -13
- package/dist/{cjs → esm}/interface/models/field.js +3 -9
- package/dist/esm/interface/models/models.js +9 -0
- package/dist/{cjs → esm}/interface/models/mutations.js +6 -13
- package/dist/{cjs → esm}/interface/models/record.js +9 -16
- package/dist/esm/interface/models/record_store.js +42 -0
- package/dist/{cjs → esm}/interface/models/session.js +2 -8
- package/dist/{cjs → esm}/interface/models/table.js +7 -13
- package/dist/{cjs → esm}/interface/sdk.js +9 -16
- package/dist/{cjs → esm}/interface/types/airtable_interface.js +13 -12
- package/dist/esm/interface/types/base.js +1 -0
- package/dist/esm/interface/types/field.js +1 -0
- package/dist/esm/interface/types/mutations.js +12 -0
- package/dist/esm/interface/types/record.js +1 -0
- package/dist/esm/interface/types/table.js +1 -0
- package/dist/esm/interface/ui/block_wrapper.js +49 -0
- package/dist/esm/interface/ui/cell_renderer.js +19 -0
- package/dist/{cjs → esm}/interface/ui/expand_record.js +1 -7
- package/dist/esm/interface/ui/global_css_helpers.js +17 -0
- package/dist/esm/interface/ui/initialize_block.js +83 -0
- package/dist/esm/interface/ui/ui.js +20 -0
- package/dist/{cjs → esm}/interface/ui/use_base.js +3 -10
- package/dist/{cjs → esm}/interface/ui/use_custom_properties.js +61 -39
- package/dist/{cjs → esm}/interface/ui/use_records.js +5 -12
- package/dist/{cjs → esm}/interface/ui/use_run_info.js +4 -9
- package/dist/{cjs → esm}/interface/ui/use_session.js +3 -10
- package/dist/esm/sdk_mode.js +1 -0
- package/dist/esm/shared/color_utils.js +50 -0
- package/dist/{cjs → esm}/shared/colors.js +4 -8
- package/dist/{cjs → esm}/shared/error_utils.js +5 -15
- package/dist/esm/shared/event_tracker.js +20 -0
- package/dist/{cjs → esm}/shared/global_config.js +13 -19
- package/dist/{cjs → esm}/shared/models/abstract_model.js +6 -14
- package/dist/{cjs → esm}/shared/models/base_core.js +22 -29
- package/dist/{cjs → esm}/shared/models/field_core.js +9 -16
- package/dist/{cjs → esm}/shared/models/mutations_core.js +36 -43
- package/dist/{cjs → esm}/shared/models/record_core.js +17 -25
- package/dist/{cjs → esm}/shared/models/record_store_core.js +15 -22
- package/dist/{cjs → esm}/shared/models/session_core.js +9 -17
- package/dist/{cjs → esm}/shared/models/table_core.js +29 -36
- package/dist/{cjs → esm}/shared/private_utils.js +85 -71
- package/dist/{cjs → esm}/shared/sdk_core.js +6 -13
- package/dist/esm/shared/types/airtable_interface_core.js +1 -0
- package/dist/esm/shared/types/attachment.js +1 -0
- package/dist/esm/shared/types/base_core.js +1 -0
- package/dist/esm/shared/types/collaborator.js +1 -0
- package/dist/{cjs → esm}/shared/types/field_core.js +51 -8
- package/dist/esm/shared/types/global_config.js +1 -0
- package/dist/esm/shared/types/hyper_ids.js +1 -0
- package/dist/esm/shared/types/mutation_constants.js +5 -0
- package/dist/{cjs → esm}/shared/types/mutations_core.js +1 -7
- package/dist/esm/shared/types/permission_levels.js +11 -0
- 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/esm/shared/ui/cell_renderer.js +137 -0
- package/dist/esm/shared/ui/global_config_synced_component_helpers.js +21 -0
- package/dist/{cjs → esm}/shared/ui/loader.js +2 -10
- package/dist/{cjs → esm}/shared/ui/remote_utils.js +7 -15
- package/dist/esm/shared/ui/sdk_context.js +8 -0
- package/dist/{cjs → esm}/shared/ui/use_array_identity.js +3 -8
- package/dist/esm/shared/ui/use_base.js +16 -0
- package/dist/{cjs → esm}/shared/ui/use_color_scheme.js +4 -10
- package/dist/{cjs → esm}/shared/ui/use_global_config.js +7 -13
- package/dist/esm/shared/ui/use_session.js +15 -0
- package/dist/{cjs → esm}/shared/ui/use_synced.js +5 -11
- package/dist/{cjs → esm}/shared/ui/use_watchable.js +11 -19
- package/dist/{cjs → esm}/shared/ui/with_hooks.js +7 -13
- package/dist/esm/shared/unstable_private_utils.js +4 -0
- package/dist/{cjs → esm}/shared/warning.js +3 -11
- package/dist/{cjs → esm}/shared/watchable.js +5 -11
- package/dist/{cjs → esm}/stats/block_stats.js +8 -14
- package/dist/{cjs → esm}/testing/base/abstract_mock_airtable_interface.js +8 -17
- package/dist/{cjs → esm}/testing/interface/abstract_mock_airtable_interface.js +8 -17
- package/dist/types/src/base/index.d.ts +0 -2
- package/dist/types/src/base/index.d.ts.map +1 -1
- package/dist/types/src/base/models/abstract_model_with_async_data.d.ts +3 -3
- package/dist/types/src/base/models/abstract_model_with_async_data.d.ts.map +1 -1
- package/dist/types/src/base/models/base.d.ts +21 -3
- package/dist/types/src/base/models/base.d.ts.map +1 -1
- package/dist/types/src/base/models/create_aggregators.d.ts +7 -8
- package/dist/types/src/base/models/create_aggregators.d.ts.map +1 -1
- package/dist/types/src/base/models/cursor.d.ts +2 -2
- package/dist/types/src/base/models/cursor.d.ts.map +1 -1
- package/dist/types/src/base/models/field.d.ts +9 -8
- package/dist/types/src/base/models/field.d.ts.map +1 -1
- package/dist/types/src/base/models/grouped_record_query_result.d.ts +6 -6
- package/dist/types/src/base/models/grouped_record_query_result.d.ts.map +1 -1
- package/dist/types/src/base/models/linked_records_query_result.d.ts +4 -4
- package/dist/types/src/base/models/linked_records_query_result.d.ts.map +1 -1
- package/dist/types/src/base/models/models.d.ts +2 -3
- package/dist/types/src/base/models/models.d.ts.map +1 -1
- package/dist/types/src/base/models/mutations.d.ts +1 -1
- package/dist/types/src/base/models/mutations.d.ts.map +1 -1
- package/dist/types/src/base/models/record.d.ts +8 -8
- package/dist/types/src/base/models/record.d.ts.map +1 -1
- package/dist/types/src/base/models/record_coloring.d.ts +3 -3
- package/dist/types/src/base/models/record_coloring.d.ts.map +1 -1
- package/dist/types/src/base/models/record_query_result.d.ts +5 -5
- package/dist/types/src/base/models/record_query_result.d.ts.map +1 -1
- package/dist/types/src/base/models/session.d.ts +2 -2
- package/dist/types/src/base/models/session.d.ts.map +1 -1
- package/dist/types/src/base/models/table.d.ts +7 -7
- package/dist/types/src/base/models/table.d.ts.map +1 -1
- package/dist/types/src/base/models/table_or_view_query_result.d.ts +5 -5
- package/dist/types/src/base/models/table_or_view_query_result.d.ts.map +1 -1
- package/dist/types/src/base/models/view.d.ts +6 -6
- package/dist/types/src/base/models/view.d.ts.map +1 -1
- package/dist/types/src/base/models/view_metadata_query_result.d.ts +5 -5
- package/dist/types/src/base/models/view_metadata_query_result.d.ts.map +1 -1
- package/dist/types/src/base/perform_record_action.d.ts +2 -2
- package/dist/types/src/base/perform_record_action.d.ts.map +1 -1
- package/dist/types/src/base/sdk.d.ts +3 -3
- package/dist/types/src/base/sdk.d.ts.map +1 -1
- package/dist/types/src/base/settings_button.d.ts +1 -1
- package/dist/types/src/base/settings_button.d.ts.map +1 -1
- package/dist/types/src/base/types/airtable_interface.d.ts +16 -18
- package/dist/types/src/base/types/airtable_interface.d.ts.map +1 -1
- package/dist/types/src/base/types/base.d.ts +4 -4
- package/dist/types/src/base/types/base.d.ts.map +1 -1
- package/dist/types/src/base/types/cursor.d.ts +2 -2
- package/dist/types/src/base/types/cursor.d.ts.map +1 -1
- package/dist/types/src/base/types/field.d.ts +1 -1
- package/dist/types/src/base/types/field.d.ts.map +1 -1
- package/dist/types/src/base/types/mutations.d.ts +5 -5
- package/dist/types/src/base/types/mutations.d.ts.map +1 -1
- package/dist/types/src/base/types/record.d.ts +1 -1
- package/dist/types/src/base/types/record.d.ts.map +1 -1
- package/dist/types/src/base/types/record_action_data.d.ts +1 -1
- package/dist/types/src/base/types/record_action_data.d.ts.map +1 -1
- package/dist/types/src/base/types/table.d.ts +6 -6
- package/dist/types/src/base/types/table.d.ts.map +1 -1
- package/dist/types/src/base/types/undo_redo.d.ts +1 -1
- package/dist/types/src/base/types/undo_redo.d.ts.map +1 -1
- package/dist/types/src/base/types/view.d.ts +3 -3
- package/dist/types/src/base/types/view.d.ts.map +1 -1
- package/dist/types/src/base/ui/base_provider.d.ts +1 -1
- package/dist/types/src/base/ui/base_provider.d.ts.map +1 -1
- package/dist/types/src/base/ui/block_wrapper.d.ts +3 -17
- package/dist/types/src/base/ui/block_wrapper.d.ts.map +1 -1
- package/dist/types/src/base/ui/cell_renderer.d.ts +6 -58
- package/dist/types/src/base/ui/cell_renderer.d.ts.map +1 -1
- package/dist/types/src/base/ui/expand_record.d.ts +1 -1
- package/dist/types/src/base/ui/expand_record.d.ts.map +1 -1
- package/dist/types/src/base/ui/expand_record_list.d.ts +2 -2
- package/dist/types/src/base/ui/expand_record_list.d.ts.map +1 -1
- package/dist/types/src/base/ui/expand_record_picker_async.d.ts +2 -2
- package/dist/types/src/base/ui/expand_record_picker_async.d.ts.map +1 -1
- package/dist/types/src/base/ui/global_alert.d.ts +1 -1
- package/dist/types/src/base/ui/global_alert.d.ts.map +1 -1
- package/dist/types/src/base/ui/global_css_helpers.d.ts +4 -0
- package/dist/types/src/base/ui/global_css_helpers.d.ts.map +1 -0
- package/dist/types/src/base/ui/initialize_block.d.ts +3 -3
- package/dist/types/src/base/ui/initialize_block.d.ts.map +1 -1
- package/dist/types/src/base/ui/ui.d.ts +1 -21
- package/dist/types/src/base/ui/ui.d.ts.map +1 -1
- package/dist/types/src/base/ui/unstable_standalone_ui.d.ts +2 -22
- package/dist/types/src/base/ui/unstable_standalone_ui.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_cursor.d.ts +1 -1
- package/dist/types/src/base/ui/use_cursor.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_loadable.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_record_action_data.d.ts +1 -1
- package/dist/types/src/base/ui/use_record_action_data.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_records.d.ts +5 -5
- package/dist/types/src/base/ui/use_records.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_settings_button.d.ts +1 -1
- package/dist/types/src/base/ui/use_settings_button.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_view_metadata.d.ts +1 -1
- package/dist/types/src/base/ui/use_view_metadata.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_viewport.d.ts +1 -1
- package/dist/types/src/base/ui/use_viewport.d.ts.map +1 -1
- package/dist/types/src/base/undo_redo.d.ts +2 -2
- package/dist/types/src/base/undo_redo.d.ts.map +1 -1
- package/dist/types/src/base/unstable_testing_utils.d.ts +13 -11
- package/dist/types/src/base/unstable_testing_utils.d.ts.map +1 -1
- package/dist/types/src/base/viewport.d.ts +2 -2
- package/dist/types/src/base/viewport.d.ts.map +1 -1
- package/dist/types/src/injected/airtable_interface.d.ts +1 -1
- package/dist/types/src/injected/airtable_interface.d.ts.map +1 -1
- package/dist/types/src/interface/models/base.d.ts +1 -1
- package/dist/types/src/interface/models/base.d.ts.map +1 -1
- package/dist/types/src/interface/models/field.d.ts +1 -1
- package/dist/types/src/interface/models/field.d.ts.map +1 -1
- package/dist/types/src/interface/models/models.d.ts +2 -1
- package/dist/types/src/interface/models/models.d.ts.map +1 -1
- package/dist/types/src/interface/models/mutations.d.ts +1 -1
- package/dist/types/src/interface/models/mutations.d.ts.map +1 -1
- package/dist/types/src/interface/models/record.d.ts +4 -4
- package/dist/types/src/interface/models/record.d.ts.map +1 -1
- package/dist/types/src/interface/models/session.d.ts +1 -1
- package/dist/types/src/interface/models/session.d.ts.map +1 -1
- package/dist/types/src/interface/models/table.d.ts +2 -2
- package/dist/types/src/interface/models/table.d.ts.map +1 -1
- package/dist/types/src/interface/sdk.d.ts +2 -2
- package/dist/types/src/interface/sdk.d.ts.map +1 -1
- package/dist/types/src/interface/types/airtable_interface.d.ts +11 -9
- package/dist/types/src/interface/types/airtable_interface.d.ts.map +1 -1
- package/dist/types/src/interface/types/base.d.ts +2 -2
- package/dist/types/src/interface/types/base.d.ts.map +1 -1
- package/dist/types/src/interface/types/field.d.ts +1 -1
- package/dist/types/src/interface/types/field.d.ts.map +1 -1
- package/dist/types/src/interface/types/mutations.d.ts +2 -2
- package/dist/types/src/interface/types/mutations.d.ts.map +1 -1
- package/dist/types/src/interface/types/record.d.ts +1 -1
- package/dist/types/src/interface/types/record.d.ts.map +1 -1
- package/dist/types/src/interface/types/table.d.ts +5 -5
- package/dist/types/src/interface/types/table.d.ts.map +1 -1
- package/dist/types/src/interface/ui/block_wrapper.d.ts +2 -5
- package/dist/types/src/interface/ui/block_wrapper.d.ts.map +1 -1
- package/dist/types/src/interface/ui/cell_renderer.d.ts +19 -0
- package/dist/types/src/interface/ui/cell_renderer.d.ts.map +1 -0
- package/dist/types/src/interface/ui/expand_record.d.ts +1 -1
- package/dist/types/src/interface/ui/expand_record.d.ts.map +1 -1
- package/dist/types/src/interface/ui/global_css_helpers.d.ts +3 -0
- package/dist/types/src/interface/ui/global_css_helpers.d.ts.map +1 -0
- package/dist/types/src/interface/ui/initialize_block.d.ts +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 -1
- package/dist/types/src/interface/ui/ui.d.ts.map +1 -1
- package/dist/types/src/interface/ui/use_base.d.ts +1 -1
- package/dist/types/src/interface/ui/use_base.d.ts.map +1 -1
- package/dist/types/src/interface/ui/use_custom_properties.d.ts +10 -3
- package/dist/types/src/interface/ui/use_custom_properties.d.ts.map +1 -1
- package/dist/types/src/interface/ui/use_records.d.ts +2 -2
- package/dist/types/src/interface/ui/use_records.d.ts.map +1 -1
- package/dist/types/src/interface/ui/use_session.d.ts +1 -1
- package/dist/types/src/interface/ui/use_session.d.ts.map +1 -1
- package/dist/types/src/sdk_mode.d.ts +26 -26
- package/dist/types/src/sdk_mode.d.ts.map +1 -1
- package/dist/types/src/shared/color_utils.d.ts +1 -1
- package/dist/types/src/shared/color_utils.d.ts.map +1 -1
- package/dist/types/src/shared/colors.d.ts +1 -1
- package/dist/types/src/shared/colors.d.ts.map +1 -1
- package/dist/types/src/shared/global_config.d.ts +2 -2
- package/dist/types/src/shared/global_config.d.ts.map +1 -1
- package/dist/types/src/shared/models/abstract_model.d.ts +1 -1
- package/dist/types/src/shared/models/abstract_model.d.ts.map +1 -1
- package/dist/types/src/shared/models/base_core.d.ts +4 -4
- package/dist/types/src/shared/models/base_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/field_core.d.ts +4 -4
- package/dist/types/src/shared/models/field_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/mutations_core.d.ts +4 -4
- package/dist/types/src/shared/models/mutations_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/record_core.d.ts +3 -3
- package/dist/types/src/shared/models/record_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/session_core.d.ts +5 -5
- package/dist/types/src/shared/models/session_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/table_core.d.ts +4 -4
- package/dist/types/src/shared/models/table_core.d.ts.map +1 -1
- package/dist/types/src/shared/private_utils.d.ts +9 -1
- package/dist/types/src/shared/private_utils.d.ts.map +1 -1
- package/dist/types/src/shared/sdk_core.d.ts +2 -2
- package/dist/types/src/shared/sdk_core.d.ts.map +1 -1
- package/dist/types/src/shared/types/airtable_interface_core.d.ts +9 -9
- package/dist/types/src/shared/types/airtable_interface_core.d.ts.map +1 -1
- package/dist/types/src/shared/types/attachment.d.ts +1 -1
- package/dist/types/src/shared/types/attachment.d.ts.map +1 -1
- package/dist/types/src/shared/types/base_core.d.ts +6 -6
- package/dist/types/src/shared/types/base_core.d.ts.map +1 -1
- package/dist/types/src/shared/types/collaborator.d.ts +1 -1
- package/dist/types/src/shared/types/collaborator.d.ts.map +1 -1
- package/dist/types/src/shared/types/field_core.d.ts +2 -2
- package/dist/types/src/shared/types/field_core.d.ts.map +1 -1
- package/dist/types/src/shared/types/mutations_core.d.ts +3 -3
- package/dist/types/src/shared/types/mutations_core.d.ts.map +1 -1
- package/dist/types/src/shared/types/permission_levels.d.ts +1 -1
- package/dist/types/src/shared/types/permission_levels.d.ts.map +1 -1
- package/dist/types/src/shared/types/record.d.ts +2 -2
- package/dist/types/src/shared/types/record.d.ts.map +1 -1
- package/dist/types/src/shared/types/table_core.d.ts +1 -1
- package/dist/types/src/shared/types/table_core.d.ts.map +1 -1
- package/dist/types/src/shared/ui/cell_renderer.d.ts +32 -0
- package/dist/types/src/shared/ui/cell_renderer.d.ts.map +1 -0
- package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts +1 -1
- package/dist/types/src/shared/ui/global_config_synced_component_helpers.d.ts.map +1 -1
- package/dist/types/src/shared/ui/sdk_context.d.ts +1 -1
- package/dist/types/src/shared/ui/sdk_context.d.ts.map +1 -1
- package/dist/types/src/shared/ui/use_base.d.ts +1 -1
- package/dist/types/src/shared/ui/use_base.d.ts.map +1 -1
- package/dist/types/src/shared/ui/use_global_config.d.ts +1 -1
- package/dist/types/src/shared/ui/use_global_config.d.ts.map +1 -1
- package/dist/types/src/shared/ui/use_synced.d.ts +1 -1
- package/dist/types/src/shared/ui/use_synced.d.ts.map +1 -1
- package/dist/types/src/shared/ui/use_watchable.d.ts +1 -1
- package/dist/types/src/shared/ui/use_watchable.d.ts.map +1 -1
- package/dist/types/src/shared/warning.d.ts +2 -2
- package/dist/types/src/shared/warning.d.ts.map +1 -1
- package/dist/types/src/shared/watchable.d.ts +1 -1
- package/dist/types/src/shared/watchable.d.ts.map +1 -1
- package/dist/types/src/testing/base/abstract_mock_airtable_interface.d.ts +15 -16
- package/dist/types/src/testing/base/abstract_mock_airtable_interface.d.ts.map +1 -1
- package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts +8 -9
- package/dist/types/src/testing/interface/abstract_mock_airtable_interface.d.ts.map +1 -1
- package/models.js +1 -1
- package/package.json +23 -55
- package/types.js +1 -1
- package/dist/cjs/base/assert_run_context.js +0 -12
- package/dist/cjs/base/index.js +0 -96
- package/dist/cjs/base/models/models.js +0 -134
- package/dist/cjs/base/types/aggregators.js +0 -1
- package/dist/cjs/base/types/backend_fetch_types.js +0 -1
- package/dist/cjs/base/types/base.js +0 -1
- package/dist/cjs/base/types/cursor.js +0 -1
- package/dist/cjs/base/types/field.js +0 -1
- package/dist/cjs/base/types/record.js +0 -1
- package/dist/cjs/base/types/record_action_data.js +0 -1
- package/dist/cjs/base/types/table.js +0 -1
- package/dist/cjs/base/types/undo_redo.js +0 -12
- package/dist/cjs/base/types/viewport.js +0 -1
- package/dist/cjs/base/ui/base_provider.js +0 -48
- package/dist/cjs/base/ui/baymax_utils.js +0 -461
- package/dist/cjs/base/ui/block_wrapper.js +0 -118
- package/dist/cjs/base/ui/box.js +0 -84
- package/dist/cjs/base/ui/button.js +0 -152
- package/dist/cjs/base/ui/cell_renderer.js +0 -198
- package/dist/cjs/base/ui/choice_token.js +0 -93
- package/dist/cjs/base/ui/collaborator_token.js +0 -123
- package/dist/cjs/base/ui/color_palette.js +0 -196
- package/dist/cjs/base/ui/color_palette_synced.js +0 -69
- package/dist/cjs/base/ui/confirmation_dialog.js +0 -103
- package/dist/cjs/base/ui/control_sizes.js +0 -104
- package/dist/cjs/base/ui/create_detect_element_resize.js +0 -203
- package/dist/cjs/base/ui/css_helpers.js +0 -23
- package/dist/cjs/base/ui/dialog.js +0 -101
- package/dist/cjs/base/ui/dialog_close_button.js +0 -106
- package/dist/cjs/base/ui/field_icon.js +0 -44
- package/dist/cjs/base/ui/field_picker.js +0 -98
- package/dist/cjs/base/ui/field_picker_synced.js +0 -66
- package/dist/cjs/base/ui/form_field.js +0 -109
- package/dist/cjs/base/ui/geometry/geometry.js +0 -27
- package/dist/cjs/base/ui/geometry/point.js +0 -19
- package/dist/cjs/base/ui/geometry/rect.js +0 -51
- package/dist/cjs/base/ui/geometry/size.js +0 -19
- package/dist/cjs/base/ui/global_alert.js +0 -71
- package/dist/cjs/base/ui/heading.js +0 -132
- package/dist/cjs/base/ui/icon.js +0 -109
- package/dist/cjs/base/ui/icon_config.js +0 -428
- package/dist/cjs/base/ui/initialize_block.js +0 -122
- package/dist/cjs/base/ui/input.js +0 -161
- package/dist/cjs/base/ui/input_synced.js +0 -66
- package/dist/cjs/base/ui/key_codes.js +0 -73
- package/dist/cjs/base/ui/label.js +0 -80
- package/dist/cjs/base/ui/link.js +0 -196
- package/dist/cjs/base/ui/loader.js +0 -61
- package/dist/cjs/base/ui/modal.js +0 -145
- package/dist/cjs/base/ui/model_picker_select.js +0 -57
- package/dist/cjs/base/ui/popover.js +0 -315
- package/dist/cjs/base/ui/progress_bar.js +0 -115
- package/dist/cjs/base/ui/record_card.js +0 -564
- package/dist/cjs/base/ui/record_card_list.js +0 -303
- package/dist/cjs/base/ui/select.js +0 -191
- package/dist/cjs/base/ui/select_and_select_buttons_helpers.js +0 -63
- package/dist/cjs/base/ui/select_buttons.js +0 -159
- package/dist/cjs/base/ui/select_buttons_synced.js +0 -62
- package/dist/cjs/base/ui/select_synced.js +0 -65
- package/dist/cjs/base/ui/switch.js +0 -167
- package/dist/cjs/base/ui/switch_synced.js +0 -53
- package/dist/cjs/base/ui/synced.js +0 -49
- package/dist/cjs/base/ui/system/all_styles_set.js +0 -92
- package/dist/cjs/base/ui/system/appearance/appearance_set.js +0 -27
- package/dist/cjs/base/ui/system/appearance/background_color.js +0 -18
- package/dist/cjs/base/ui/system/appearance/border.js +0 -54
- package/dist/cjs/base/ui/system/appearance/border_radius.js +0 -18
- package/dist/cjs/base/ui/system/appearance/box_shadow.js +0 -18
- package/dist/cjs/base/ui/system/appearance/opacity.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/dimensions_set.js +0 -29
- package/dist/cjs/base/ui/system/dimensions/height.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/max_height.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/max_width.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/min_height.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/min_width.js +0 -18
- package/dist/cjs/base/ui/system/dimensions/width.js +0 -18
- package/dist/cjs/base/ui/system/display.js +0 -19
- package/dist/cjs/base/ui/system/flex_container/align_content.js +0 -15
- package/dist/cjs/base/ui/system/flex_container/align_items.js +0 -15
- package/dist/cjs/base/ui/system/flex_container/flex_container_set.js +0 -29
- package/dist/cjs/base/ui/system/flex_container/flex_direction.js +0 -15
- package/dist/cjs/base/ui/system/flex_container/flex_wrap.js +0 -15
- package/dist/cjs/base/ui/system/flex_container/justify_content.js +0 -15
- package/dist/cjs/base/ui/system/flex_container/justify_items.js +0 -16
- package/dist/cjs/base/ui/system/flex_item/align_self.js +0 -15
- package/dist/cjs/base/ui/system/flex_item/flex.js +0 -15
- package/dist/cjs/base/ui/system/flex_item/flex_basis.js +0 -15
- package/dist/cjs/base/ui/system/flex_item/flex_grow.js +0 -15
- package/dist/cjs/base/ui/system/flex_item/flex_item_set.js +0 -31
- package/dist/cjs/base/ui/system/flex_item/flex_shrink.js +0 -15
- package/dist/cjs/base/ui/system/flex_item/justify_self.js +0 -16
- package/dist/cjs/base/ui/system/flex_item/order.js +0 -15
- package/dist/cjs/base/ui/system/index.js +0 -681
- package/dist/cjs/base/ui/system/overflow.js +0 -21
- package/dist/cjs/base/ui/system/position/bottom.js +0 -24
- package/dist/cjs/base/ui/system/position/left.js +0 -24
- package/dist/cjs/base/ui/system/position/position.js +0 -15
- package/dist/cjs/base/ui/system/position/position_set.js +0 -29
- package/dist/cjs/base/ui/system/position/right.js +0 -24
- package/dist/cjs/base/ui/system/position/top.js +0 -24
- package/dist/cjs/base/ui/system/position/z_index.js +0 -18
- package/dist/cjs/base/ui/system/spacing/margin.js +0 -72
- package/dist/cjs/base/ui/system/spacing/padding.js +0 -65
- package/dist/cjs/base/ui/system/spacing/spacing_set.js +0 -21
- package/dist/cjs/base/ui/system/typography/font_family.js +0 -18
- package/dist/cjs/base/ui/system/typography/font_size.js +0 -18
- package/dist/cjs/base/ui/system/typography/font_style.js +0 -15
- package/dist/cjs/base/ui/system/typography/font_weight.js +0 -18
- package/dist/cjs/base/ui/system/typography/letter_spacing.js +0 -18
- package/dist/cjs/base/ui/system/typography/line_height.js +0 -15
- package/dist/cjs/base/ui/system/typography/text_align.js +0 -15
- package/dist/cjs/base/ui/system/typography/text_color.js +0 -18
- package/dist/cjs/base/ui/system/typography/text_decoration.js +0 -15
- package/dist/cjs/base/ui/system/typography/text_transform.js +0 -15
- package/dist/cjs/base/ui/system/typography/typography_set.js +0 -37
- package/dist/cjs/base/ui/system/utils/csstype.js +0 -1
- package/dist/cjs/base/ui/system/utils/ensure_numbers_are_within_scale.js +0 -41
- package/dist/cjs/base/ui/system/utils/get_style_props_for_responsive_prop.js +0 -73
- package/dist/cjs/base/ui/system/utils/types.js +0 -1
- package/dist/cjs/base/ui/table_picker.js +0 -71
- package/dist/cjs/base/ui/table_picker_synced.js +0 -62
- package/dist/cjs/base/ui/text.js +0 -117
- package/dist/cjs/base/ui/text_button.js +0 -196
- package/dist/cjs/base/ui/theme/default_theme/button_variants.js +0 -59
- package/dist/cjs/base/ui/theme/default_theme/control_sizes.js +0 -102
- package/dist/cjs/base/ui/theme/default_theme/heading_styles.js +0 -99
- package/dist/cjs/base/ui/theme/default_theme/index.js +0 -42
- package/dist/cjs/base/ui/theme/default_theme/input_variants.js +0 -38
- package/dist/cjs/base/ui/theme/default_theme/link_variants.js +0 -35
- package/dist/cjs/base/ui/theme/default_theme/select_buttons_variants.js +0 -72
- package/dist/cjs/base/ui/theme/default_theme/select_variants.js +0 -50
- package/dist/cjs/base/ui/theme/default_theme/switch_variants.js +0 -85
- package/dist/cjs/base/ui/theme/default_theme/text_button_variants.js +0 -44
- package/dist/cjs/base/ui/theme/default_theme/text_styles.js +0 -81
- package/dist/cjs/base/ui/theme/default_theme/tokens.js +0 -211
- package/dist/cjs/base/ui/theme/theme_context.js +0 -13
- package/dist/cjs/base/ui/theme/use_theme.js +0 -11
- package/dist/cjs/base/ui/tooltip.js +0 -175
- package/dist/cjs/base/ui/types/aria_props.js +0 -1
- package/dist/cjs/base/ui/types/data_attributes_prop.js +0 -1
- package/dist/cjs/base/ui/types/tooltip_anchor_props.js +0 -1
- package/dist/cjs/base/ui/ui.js +0 -382
- package/dist/cjs/base/ui/unstable_standalone_ui.js +0 -179
- package/dist/cjs/base/ui/use_form_field.js +0 -20
- package/dist/cjs/base/ui/use_styled_system.js +0 -25
- package/dist/cjs/base/ui/use_text_color_for_background_color.js +0 -15
- package/dist/cjs/base/ui/view_picker.js +0 -89
- package/dist/cjs/base/ui/view_picker_synced.js +0 -66
- package/dist/cjs/base/ui/viewport_constraint.js +0 -129
- package/dist/cjs/base/ui/with_styled_system.js +0 -129
- package/dist/cjs/base/undo_redo.js +0 -37
- package/dist/cjs/base/unstable_testing_utils.js +0 -171
- package/dist/cjs/interface/assert_run_context.js +0 -12
- package/dist/cjs/interface/index.js +0 -22
- package/dist/cjs/interface/models/models.js +0 -54
- package/dist/cjs/interface/models/record_store.js +0 -51
- package/dist/cjs/interface/types/base.js +0 -1
- package/dist/cjs/interface/types/field.js +0 -1
- package/dist/cjs/interface/types/mutations.js +0 -17
- package/dist/cjs/interface/types/record.js +0 -1
- package/dist/cjs/interface/types/table.js +0 -1
- package/dist/cjs/interface/ui/block_wrapper.js +0 -69
- package/dist/cjs/interface/ui/initialize_block.js +0 -95
- package/dist/cjs/interface/ui/ui.js +0 -125
- package/dist/cjs/sdk_mode.js +0 -1
- package/dist/cjs/shared/color_utils.js +0 -58
- package/dist/cjs/shared/event_tracker.js +0 -28
- package/dist/cjs/shared/types/airtable_interface_core.js +0 -1
- package/dist/cjs/shared/types/attachment.js +0 -1
- package/dist/cjs/shared/types/base_core.js +0 -1
- package/dist/cjs/shared/types/collaborator.js +0 -1
- package/dist/cjs/shared/types/global_config.js +0 -1
- package/dist/cjs/shared/types/hyper_ids.js +0 -1
- package/dist/cjs/shared/types/mutation_constants.js +0 -11
- package/dist/cjs/shared/types/permission_levels.js +0 -17
- package/dist/cjs/shared/types/record.js +0 -1
- package/dist/cjs/shared/types/stat.js +0 -1
- package/dist/cjs/shared/types/table_core.js +0 -1
- package/dist/cjs/shared/ui/global_config_synced_component_helpers.js +0 -27
- package/dist/cjs/shared/ui/sdk_context.js +0 -17
- package/dist/cjs/shared/ui/use_base.js +0 -22
- package/dist/cjs/shared/ui/use_session.js +0 -21
- package/dist/cjs/shared/unstable_private_utils.js +0 -49
- package/dist/types/src/base/ui/baymax_utils.d.ts +0 -2
- package/dist/types/src/base/ui/baymax_utils.d.ts.map +0 -1
- package/dist/types/src/base/ui/box.d.ts +0 -35
- package/dist/types/src/base/ui/box.d.ts.map +0 -1
- package/dist/types/src/base/ui/button.d.ts +0 -86
- package/dist/types/src/base/ui/button.d.ts.map +0 -1
- package/dist/types/src/base/ui/choice_token.d.ts +0 -49
- package/dist/types/src/base/ui/choice_token.d.ts.map +0 -1
- package/dist/types/src/base/ui/collaborator_token.d.ts +0 -45
- package/dist/types/src/base/ui/collaborator_token.d.ts.map +0 -1
- package/dist/types/src/base/ui/color_palette.d.ts +0 -77
- package/dist/types/src/base/ui/color_palette.d.ts.map +0 -1
- package/dist/types/src/base/ui/color_palette_synced.d.ts +0 -30
- package/dist/types/src/base/ui/color_palette_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/confirmation_dialog.d.ts +0 -66
- package/dist/types/src/base/ui/confirmation_dialog.d.ts.map +0 -1
- package/dist/types/src/base/ui/control_sizes.d.ts +0 -16
- package/dist/types/src/base/ui/control_sizes.d.ts.map +0 -1
- package/dist/types/src/base/ui/css_helpers.d.ts +0 -6
- package/dist/types/src/base/ui/css_helpers.d.ts.map +0 -1
- package/dist/types/src/base/ui/dialog.d.ts +0 -58
- package/dist/types/src/base/ui/dialog.d.ts.map +0 -1
- package/dist/types/src/base/ui/dialog_close_button.d.ts +0 -40
- package/dist/types/src/base/ui/dialog_close_button.d.ts.map +0 -1
- package/dist/types/src/base/ui/field_icon.d.ts +0 -25
- package/dist/types/src/base/ui/field_icon.d.ts.map +0 -1
- package/dist/types/src/base/ui/field_picker.d.ts +0 -34
- package/dist/types/src/base/ui/field_picker.d.ts.map +0 -1
- package/dist/types/src/base/ui/field_picker_synced.d.ts +0 -18
- package/dist/types/src/base/ui/field_picker_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/form_field.d.ts +0 -42
- package/dist/types/src/base/ui/form_field.d.ts.map +0 -1
- package/dist/types/src/base/ui/geometry/geometry.d.ts +0 -3
- package/dist/types/src/base/ui/geometry/geometry.d.ts.map +0 -1
- package/dist/types/src/base/ui/geometry/point.d.ts +0 -2
- package/dist/types/src/base/ui/geometry/point.d.ts.map +0 -1
- package/dist/types/src/base/ui/geometry/rect.d.ts +0 -2
- package/dist/types/src/base/ui/geometry/rect.d.ts.map +0 -1
- package/dist/types/src/base/ui/geometry/size.d.ts +0 -2
- package/dist/types/src/base/ui/geometry/size.d.ts.map +0 -1
- package/dist/types/src/base/ui/heading.d.ts +0 -64
- package/dist/types/src/base/ui/heading.d.ts.map +0 -1
- package/dist/types/src/base/ui/icon.d.ts +0 -45
- package/dist/types/src/base/ui/icon.d.ts.map +0 -1
- package/dist/types/src/base/ui/icon_config.d.ts +0 -424
- package/dist/types/src/base/ui/icon_config.d.ts.map +0 -1
- package/dist/types/src/base/ui/input.d.ts +0 -120
- package/dist/types/src/base/ui/input.d.ts.map +0 -1
- package/dist/types/src/base/ui/input_synced.d.ts +0 -18
- package/dist/types/src/base/ui/input_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/key_codes.d.ts +0 -2
- package/dist/types/src/base/ui/key_codes.d.ts.map +0 -1
- package/dist/types/src/base/ui/label.d.ts +0 -35
- package/dist/types/src/base/ui/label.d.ts.map +0 -1
- package/dist/types/src/base/ui/link.d.ts +0 -84
- package/dist/types/src/base/ui/link.d.ts.map +0 -1
- package/dist/types/src/base/ui/loader.d.ts +0 -38
- package/dist/types/src/base/ui/loader.d.ts.map +0 -1
- package/dist/types/src/base/ui/modal.d.ts +0 -54
- package/dist/types/src/base/ui/modal.d.ts.map +0 -1
- package/dist/types/src/base/ui/model_picker_select.d.ts +0 -19
- package/dist/types/src/base/ui/model_picker_select.d.ts.map +0 -1
- package/dist/types/src/base/ui/popover.d.ts +0 -106
- package/dist/types/src/base/ui/popover.d.ts.map +0 -1
- package/dist/types/src/base/ui/progress_bar.d.ts +0 -60
- package/dist/types/src/base/ui/progress_bar.d.ts.map +0 -1
- package/dist/types/src/base/ui/record_card.d.ts +0 -80
- package/dist/types/src/base/ui/record_card.d.ts.map +0 -1
- package/dist/types/src/base/ui/record_card_list.d.ts +0 -88
- package/dist/types/src/base/ui/record_card_list.d.ts.map +0 -1
- package/dist/types/src/base/ui/select.d.ts +0 -82
- package/dist/types/src/base/ui/select.d.ts.map +0 -1
- package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts +0 -25
- package/dist/types/src/base/ui/select_and_select_buttons_helpers.d.ts.map +0 -1
- package/dist/types/src/base/ui/select_buttons.d.ts +0 -56
- package/dist/types/src/base/ui/select_buttons.d.ts.map +0 -1
- package/dist/types/src/base/ui/select_buttons_synced.d.ts +0 -18
- package/dist/types/src/base/ui/select_buttons_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/select_synced.d.ts +0 -18
- package/dist/types/src/base/ui/select_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/switch.d.ts +0 -82
- package/dist/types/src/base/ui/switch.d.ts.map +0 -1
- package/dist/types/src/base/ui/switch_synced.d.ts +0 -18
- package/dist/types/src/base/ui/switch_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/synced.d.ts +0 -23
- package/dist/types/src/base/ui/synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/all_styles_set.d.ts +0 -85
- package/dist/types/src/base/ui/system/all_styles_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts +0 -14
- package/dist/types/src/base/ui/system/appearance/appearance_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/background_color.d.ts +0 -12
- package/dist/types/src/base/ui/system/appearance/background_color.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/border.d.ts +0 -30
- package/dist/types/src/base/ui/system/appearance/border.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/border_radius.d.ts +0 -12
- package/dist/types/src/base/ui/system/appearance/border_radius.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts +0 -12
- package/dist/types/src/base/ui/system/appearance/box_shadow.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/appearance/opacity.d.ts +0 -12
- package/dist/types/src/base/ui/system/appearance/opacity.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts +0 -15
- package/dist/types/src/base/ui/system/dimensions/dimensions_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/height.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/height.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/max_height.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/max_height.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/max_width.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/max_width.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/min_height.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/min_height.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/min_width.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/min_width.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/dimensions/width.d.ts +0 -12
- package/dist/types/src/base/ui/system/dimensions/width.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/display.d.ts +0 -13
- package/dist/types/src/base/ui/system/display.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/align_content.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/align_content.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/align_items.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/align_items.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts +0 -15
- package/dist/types/src/base/ui/system/flex_container/flex_container_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/flex_direction.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/flex_wrap.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/justify_content.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_container/justify_items.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/align_self.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/align_self.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/flex.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/flex_basis.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/flex_grow.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts +0 -16
- package/dist/types/src/base/ui/system/flex_item/flex_item_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/flex_shrink.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/justify_self.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/flex_item/order.d.ts +0 -12
- package/dist/types/src/base/ui/system/flex_item/order.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/index.d.ts +0 -54
- package/dist/types/src/base/ui/system/index.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/overflow.d.ts +0 -17
- package/dist/types/src/base/ui/system/overflow.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/bottom.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/bottom.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/left.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/left.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/position.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/position.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/position_set.d.ts +0 -15
- package/dist/types/src/base/ui/system/position/position_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/right.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/right.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/top.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/top.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/position/z_index.d.ts +0 -12
- package/dist/types/src/base/ui/system/position/z_index.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/spacing/margin.d.ts +0 -24
- package/dist/types/src/base/ui/system/spacing/margin.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/spacing/padding.d.ts +0 -24
- package/dist/types/src/base/ui/system/spacing/padding.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts +0 -11
- package/dist/types/src/base/ui/system/spacing/spacing_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/font_family.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/font_family.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/font_size.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/font_size.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/font_style.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/font_style.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/font_weight.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/font_weight.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/letter_spacing.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/line_height.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/line_height.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/text_align.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/text_align.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/text_color.d.ts +0 -16
- package/dist/types/src/base/ui/system/typography/text_color.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/text_decoration.d.ts +0 -14
- package/dist/types/src/base/ui/system/typography/text_decoration.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/text_transform.d.ts +0 -12
- package/dist/types/src/base/ui/system/typography/text_transform.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/typography/typography_set.d.ts +0 -19
- package/dist/types/src/base/ui/system/typography/typography_set.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/csstype.d.ts +0 -3977
- package/dist/types/src/base/ui/system/utils/csstype.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/ensure_numbers_are_within_scale.d.ts +0 -2
- package/dist/types/src/base/ui/system/utils/ensure_numbers_are_within_scale.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/get_style_props_for_responsive_prop.d.ts +0 -2
- package/dist/types/src/base/ui/system/utils/get_style_props_for_responsive_prop.d.ts.map +0 -1
- package/dist/types/src/base/ui/system/utils/types.d.ts +0 -31
- package/dist/types/src/base/ui/system/utils/types.d.ts.map +0 -1
- package/dist/types/src/base/ui/table_picker.d.ts +0 -28
- package/dist/types/src/base/ui/table_picker.d.ts.map +0 -1
- package/dist/types/src/base/ui/table_picker_synced.d.ts +0 -18
- package/dist/types/src/base/ui/table_picker_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/text.d.ts +0 -66
- package/dist/types/src/base/ui/text.d.ts.map +0 -1
- package/dist/types/src/base/ui/text_button.d.ts +0 -83
- package/dist/types/src/base/ui/text_button.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/button_variants.d.ts +0 -8
- package/dist/types/src/base/ui/theme/default_theme/button_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/control_sizes.d.ts +0 -107
- package/dist/types/src/base/ui/theme/default_theme/control_sizes.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts +0 -11
- package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/index.d.ts +0 -342
- package/dist/types/src/base/ui/theme/default_theme/index.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/input_variants.d.ts +0 -5
- package/dist/types/src/base/ui/theme/default_theme/input_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/link_variants.d.ts +0 -7
- package/dist/types/src/base/ui/theme/default_theme/link_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/select_buttons_variants.d.ts +0 -8
- package/dist/types/src/base/ui/theme/default_theme/select_buttons_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/select_variants.d.ts +0 -5
- package/dist/types/src/base/ui/theme/default_theme/select_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/switch_variants.d.ts +0 -16
- package/dist/types/src/base/ui/theme/default_theme/switch_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/text_button_variants.d.ts +0 -7
- package/dist/types/src/base/ui/theme/default_theme/text_button_variants.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/text_styles.d.ts +0 -76
- package/dist/types/src/base/ui/theme/default_theme/text_styles.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts +0 -111
- package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/theme_context.d.ts +0 -342
- package/dist/types/src/base/ui/theme/theme_context.d.ts.map +0 -1
- package/dist/types/src/base/ui/theme/use_theme.d.ts +0 -342
- package/dist/types/src/base/ui/theme/use_theme.d.ts.map +0 -1
- package/dist/types/src/base/ui/tooltip.d.ts +0 -64
- package/dist/types/src/base/ui/tooltip.d.ts.map +0 -1
- package/dist/types/src/base/ui/types/aria_props.d.ts +0 -22
- package/dist/types/src/base/ui/types/aria_props.d.ts.map +0 -1
- package/dist/types/src/base/ui/types/data_attributes_prop.d.ts +0 -10
- package/dist/types/src/base/ui/types/data_attributes_prop.d.ts.map +0 -1
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +0 -13
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts.map +0 -1
- package/dist/types/src/base/ui/use_form_field.d.ts +0 -2
- package/dist/types/src/base/ui/use_form_field.d.ts.map +0 -1
- package/dist/types/src/base/ui/use_styled_system.d.ts +0 -2
- package/dist/types/src/base/ui/use_styled_system.d.ts.map +0 -1
- package/dist/types/src/base/ui/use_text_color_for_background_color.d.ts +0 -2
- package/dist/types/src/base/ui/use_text_color_for_background_color.d.ts.map +0 -1
- package/dist/types/src/base/ui/view_picker.d.ts +0 -34
- package/dist/types/src/base/ui/view_picker.d.ts.map +0 -1
- package/dist/types/src/base/ui/view_picker_synced.d.ts +0 -18
- package/dist/types/src/base/ui/view_picker_synced.d.ts.map +0 -1
- package/dist/types/src/base/ui/viewport_constraint.d.ts +0 -57
- package/dist/types/src/base/ui/viewport_constraint.d.ts.map +0 -1
- package/dist/types/src/base/ui/with_styled_system.d.ts +0 -2
- package/dist/types/src/base/ui/with_styled_system.d.ts.map +0 -1
- package/types/styled-system__core.d.ts +0 -41
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { isEnumValue, entries, isDeepEqual, has } from '../private_utils';
|
|
2
|
+
import { spawnError, invariant } from '../error_utils';
|
|
3
|
+
import AbstractModel from './abstract_model';
|
|
2
4
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.WatchableBaseKeys = exports.BaseCore = void 0;
|
|
7
|
-
var _private_utils = require("../private_utils");
|
|
8
|
-
var _error_utils = require("../error_utils");
|
|
9
|
-
var _abstract_model = _interopRequireDefault(require("./abstract_model"));
|
|
10
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
5
|
// How these model classes work:
|
|
12
6
|
//
|
|
13
7
|
// The single instance of the Base class maintains a reference to a plain JS
|
|
@@ -22,7 +16,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
22
16
|
// since the block developer could mutate it and we'll end up out of sync with
|
|
23
17
|
// liveapp.
|
|
24
18
|
|
|
25
|
-
const WatchableBaseKeys =
|
|
19
|
+
export const WatchableBaseKeys = Object.freeze({
|
|
26
20
|
name: 'name',
|
|
27
21
|
tables: 'tables',
|
|
28
22
|
collaborators: 'collaborators',
|
|
@@ -43,12 +37,12 @@ const WatchableBaseKeys = exports.WatchableBaseKeys = Object.freeze({
|
|
|
43
37
|
/** @internal */
|
|
44
38
|
|
|
45
39
|
/** @hidden */
|
|
46
|
-
class BaseCore extends
|
|
40
|
+
export class BaseCore extends AbstractModel {
|
|
47
41
|
/** @internal */
|
|
48
42
|
static _className = 'BaseCore';
|
|
49
43
|
/** @internal */
|
|
50
44
|
static _isWatchableKey(key) {
|
|
51
|
-
return
|
|
45
|
+
return isEnumValue(WatchableBaseKeys, key);
|
|
52
46
|
}
|
|
53
47
|
/** @internal */
|
|
54
48
|
|
|
@@ -196,7 +190,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
196
190
|
*/
|
|
197
191
|
getCollaboratorByIdIfExists(collaboratorId) {
|
|
198
192
|
const collaboratorsById = this._data.collaboratorsById;
|
|
199
|
-
return
|
|
193
|
+
return has(collaboratorsById, collaboratorId) ? collaboratorsById[collaboratorId] : null;
|
|
200
194
|
}
|
|
201
195
|
/**
|
|
202
196
|
* The user matching the given ID. Throws if that user does not exist
|
|
@@ -209,7 +203,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
209
203
|
getCollaboratorById(collaboratorId) {
|
|
210
204
|
const collaborator = this.getCollaboratorByIdIfExists(collaboratorId);
|
|
211
205
|
if (!collaborator) {
|
|
212
|
-
throw
|
|
206
|
+
throw spawnError("No collaborator with ID %s has access to base '%s'", collaboratorId, this.name);
|
|
213
207
|
}
|
|
214
208
|
return collaborator;
|
|
215
209
|
}
|
|
@@ -232,7 +226,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
232
226
|
for (const [id, {
|
|
233
227
|
email,
|
|
234
228
|
name
|
|
235
|
-
}] of
|
|
229
|
+
}] of entries(this._data.collaboratorsById)) {
|
|
236
230
|
this._collaboratorIdsByNameAndEmail.set(email, id);
|
|
237
231
|
// we prevent `@` in names so theoretically we shouldn't encounter any collisions
|
|
238
232
|
// between names and emails, but names themselves may not be unique. as we build the
|
|
@@ -262,7 +256,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
262
256
|
getCollaborator(idOrNameOrEmail) {
|
|
263
257
|
const collaborator = this.getCollaboratorIfExists(idOrNameOrEmail);
|
|
264
258
|
if (!collaborator) {
|
|
265
|
-
throw
|
|
259
|
+
throw spawnError("No collaborator with ID, name, or email of '%s' is in base '%s'", idOrNameOrEmail, this.name);
|
|
266
260
|
}
|
|
267
261
|
return collaborator;
|
|
268
262
|
}
|
|
@@ -297,7 +291,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
297
291
|
getTableById(tableId) {
|
|
298
292
|
const table = this.getTableByIdIfExists(tableId);
|
|
299
293
|
if (!table) {
|
|
300
|
-
throw
|
|
294
|
+
throw spawnError("No table with ID %s in base '%s'", tableId, this.name);
|
|
301
295
|
}
|
|
302
296
|
return table;
|
|
303
297
|
}
|
|
@@ -307,7 +301,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
307
301
|
* @param tableName The name of the table you're looking for.
|
|
308
302
|
*/
|
|
309
303
|
getTableByNameIfExists(tableName) {
|
|
310
|
-
for (const [tableId, tableData] of
|
|
304
|
+
for (const [tableId, tableData] of entries(this._data.tablesById)) {
|
|
311
305
|
if (tableData.name === tableName) {
|
|
312
306
|
return this.getTableByIdIfExists(tableId);
|
|
313
307
|
}
|
|
@@ -324,7 +318,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
324
318
|
getTableByName(tableName) {
|
|
325
319
|
const table = this.getTableByNameIfExists(tableName);
|
|
326
320
|
if (!table) {
|
|
327
|
-
throw
|
|
321
|
+
throw spawnError("No table named '%s' in base '%s'", tableName, this.name);
|
|
328
322
|
}
|
|
329
323
|
return table;
|
|
330
324
|
}
|
|
@@ -355,7 +349,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
355
349
|
getTable(tableIdOrName) {
|
|
356
350
|
const table = this.getTableIfExists(tableIdOrName);
|
|
357
351
|
if (!table) {
|
|
358
|
-
throw
|
|
352
|
+
throw spawnError("No table with ID or name '%s' in base '%s'", tableIdOrName, this.name);
|
|
359
353
|
}
|
|
360
354
|
return table;
|
|
361
355
|
}
|
|
@@ -371,10 +365,10 @@ class BaseCore extends _abstract_model.default {
|
|
|
371
365
|
* @internal
|
|
372
366
|
*/
|
|
373
367
|
__getRecordStore(tableId) {
|
|
374
|
-
if (
|
|
368
|
+
if (has(this._tableRecordStoresByTableId, tableId)) {
|
|
375
369
|
return this._tableRecordStoresByTableId[tableId];
|
|
376
370
|
}
|
|
377
|
-
|
|
371
|
+
invariant(this._data.tablesById[tableId], 'table must exist');
|
|
378
372
|
const newRecordStore = this._constructRecordStore(this._sdk, tableId);
|
|
379
373
|
this._tableRecordStoresByTableId[tableId] = newRecordStore;
|
|
380
374
|
return newRecordStore;
|
|
@@ -397,7 +391,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
397
391
|
tablesById
|
|
398
392
|
} = changedPaths;
|
|
399
393
|
if (tablesById) {
|
|
400
|
-
if (
|
|
394
|
+
if (isDeepEqual(tablesById, {
|
|
401
395
|
_isDirty: true
|
|
402
396
|
})) {
|
|
403
397
|
// If the changedPath is that tablesById is dirty in general, we need to
|
|
@@ -406,7 +400,7 @@ class BaseCore extends _abstract_model.default {
|
|
|
406
400
|
// changing. See https://github.com/Hyperbase/hyperbase/blob/b50a8992d333bcef3c906d61886fc69727a8e94b/client/components/blocks/block_frame.tsx#L645
|
|
407
401
|
didSchemaChange = true;
|
|
408
402
|
} else {
|
|
409
|
-
for (const [tableId, dirtyTablePaths] of
|
|
403
|
+
for (const [tableId, dirtyTablePaths] of entries(tablesById)) {
|
|
410
404
|
const table = this.getTableByIdIfExists(tableId);
|
|
411
405
|
if (table && dirtyTablePaths) {
|
|
412
406
|
const didTableSchemaChange = table.__triggerOnChangeForDirtyPaths(dirtyTablePaths);
|
|
@@ -460,11 +454,11 @@ class BaseCore extends _abstract_model.default {
|
|
|
460
454
|
if (!dirtySubtree[part]) {
|
|
461
455
|
dirtySubtree[part] = {};
|
|
462
456
|
}
|
|
463
|
-
|
|
457
|
+
invariant(dirtySubtree[part], 'dirtySubtree');
|
|
464
458
|
dirtySubtree = dirtySubtree[part];
|
|
465
459
|
}
|
|
466
460
|
const lastPathPart = path[path.length - 1];
|
|
467
|
-
const didChange = !
|
|
461
|
+
const didChange = !isDeepEqual(dataSubtree[lastPathPart], value);
|
|
468
462
|
if (value === undefined) {
|
|
469
463
|
delete dataSubtree[lastPathPart];
|
|
470
464
|
} else {
|
|
@@ -474,9 +468,8 @@ class BaseCore extends _abstract_model.default {
|
|
|
474
468
|
if (!dirtySubtree[lastPathPart]) {
|
|
475
469
|
dirtySubtree[lastPathPart] = {};
|
|
476
470
|
}
|
|
477
|
-
|
|
471
|
+
invariant(dirtySubtree[lastPathPart], 'dirtySubtree');
|
|
478
472
|
dirtySubtree[lastPathPart]._isDirty = true;
|
|
479
473
|
}
|
|
480
474
|
}
|
|
481
|
-
}
|
|
482
|
-
exports.BaseCore = BaseCore;
|
|
475
|
+
}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { FieldType } from '../types/field_core';
|
|
2
|
+
import { isEnumValue, cloneDeep } from '../private_utils';
|
|
3
|
+
import AbstractModel from './abstract_model';
|
|
2
4
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.FieldCore = void 0;
|
|
7
|
-
var _field_core = require("../types/field_core");
|
|
8
|
-
var _private_utils = require("../private_utils");
|
|
9
|
-
var _abstract_model = _interopRequireDefault(require("./abstract_model"));
|
|
10
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
5
|
// This doesn't follow our enum naming conventions because we want the keys
|
|
12
6
|
// to mirror the method/getter names on the model class.
|
|
13
7
|
const WatchableFieldKeys = Object.freeze({
|
|
@@ -29,12 +23,12 @@ const WatchableFieldKeys = Object.freeze({
|
|
|
29
23
|
*/
|
|
30
24
|
|
|
31
25
|
/** @hidden */
|
|
32
|
-
class FieldCore extends
|
|
26
|
+
export class FieldCore extends AbstractModel {
|
|
33
27
|
/** @internal */
|
|
34
28
|
static _className = 'FieldCore';
|
|
35
29
|
/** @internal */
|
|
36
30
|
static _isWatchableKey(key) {
|
|
37
|
-
return
|
|
31
|
+
return isEnumValue(WatchableFieldKeys, key);
|
|
38
32
|
}
|
|
39
33
|
/** @internal */
|
|
40
34
|
|
|
@@ -99,7 +93,7 @@ class FieldCore extends _abstract_model.default {
|
|
|
99
93
|
// until the transition is complete. See <https://airtable.quip.com/VxaMAmAfUscs> for more.
|
|
100
94
|
// @ts-ignore
|
|
101
95
|
if (type === 'lookup') {
|
|
102
|
-
return
|
|
96
|
+
return FieldType.MULTIPLE_LOOKUP_VALUES;
|
|
103
97
|
} else {
|
|
104
98
|
return type;
|
|
105
99
|
}
|
|
@@ -129,7 +123,7 @@ class FieldCore extends _abstract_model.default {
|
|
|
129
123
|
// TODO: In the next breaking release freeze (inside of the cache) and replace
|
|
130
124
|
// FieldOptions with readonly<FieldOptions>.
|
|
131
125
|
// Today this is required because we re-use the fieldTypeProvider.getConfig response.
|
|
132
|
-
return options ?
|
|
126
|
+
return options ? cloneDeep(options) : null;
|
|
133
127
|
}
|
|
134
128
|
|
|
135
129
|
// We use a cached response from FieldTypeProvider because getting the config can
|
|
@@ -239,7 +233,7 @@ class FieldCore extends _abstract_model.default {
|
|
|
239
233
|
// The opt parseDateCellValueInColumnTimeZone is used here to ensure date string
|
|
240
234
|
// inputs are interpreted correctly according to the `timeZone` of the dateTime field.
|
|
241
235
|
{
|
|
242
|
-
parseDateCellValueInColumnTimeZone: this.type ===
|
|
236
|
+
parseDateCellValueInColumnTimeZone: this.type === FieldType.DATE_TIME
|
|
243
237
|
});
|
|
244
238
|
|
|
245
239
|
// Temporarily bail out of validating computed values (since validation will crash)
|
|
@@ -284,5 +278,4 @@ class FieldCore extends _abstract_model.default {
|
|
|
284
278
|
this._onChange(WatchableFieldKeys.isFieldSynced);
|
|
285
279
|
}
|
|
286
280
|
}
|
|
287
|
-
}
|
|
288
|
-
exports.FieldCore = FieldCore;
|
|
281
|
+
}
|
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.MutationsCore = exports.MUTATIONS_MAX_BATCH_SIZE = void 0;
|
|
7
|
-
var _mutations_core = require("../types/mutations_core");
|
|
8
|
-
var _error_utils = require("../error_utils");
|
|
9
|
-
var _private_utils = require("../private_utils");
|
|
1
|
+
import { MutationTypesCore } from '../types/mutations_core';
|
|
2
|
+
import { spawnError } from '../error_utils';
|
|
3
|
+
import { entries } from '../private_utils';
|
|
10
4
|
// Limit for how many items can be updated from a single batch mutation.
|
|
11
5
|
// This is number of records for MULTIPLE_RECORDS type mutations, and number of global config paths
|
|
12
6
|
// for SET_MULTIPLE_GLOBAL_CONFIG_PATHS.
|
|
13
7
|
// Same limit is enforced liveapp-side
|
|
14
|
-
const MUTATIONS_MAX_BATCH_SIZE =
|
|
8
|
+
export const MUTATIONS_MAX_BATCH_SIZE = 50;
|
|
15
9
|
|
|
16
10
|
// Liveapp requests must be under 2mb in size: we enforce a 1.9mb limit here to allow space for
|
|
17
11
|
// the other parts of the request
|
|
@@ -19,7 +13,7 @@ const MUTATIONS_MAX_BODY_SIZE = 1.9 * 1024 * 1024;
|
|
|
19
13
|
const MUTATION_HOLD_FOR_MS = 100;
|
|
20
14
|
|
|
21
15
|
/** @hidden */
|
|
22
|
-
class MutationsCore {
|
|
16
|
+
export class MutationsCore {
|
|
23
17
|
/** @internal */
|
|
24
18
|
|
|
25
19
|
/** @internal */
|
|
@@ -51,7 +45,7 @@ class MutationsCore {
|
|
|
51
45
|
this._assertMutationUnderLimits(mutation);
|
|
52
46
|
const permissionCheck = this.checkPermissionsForMutation(mutation);
|
|
53
47
|
if (!permissionCheck.hasPermission) {
|
|
54
|
-
throw
|
|
48
|
+
throw spawnError('Cannot apply %s mutation: %s', mutation.type, permissionCheck.reasonDisplayString);
|
|
55
49
|
}
|
|
56
50
|
const didApplyOptimisticUpdates = this._applyOptimisticUpdatesForMutation(mutation);
|
|
57
51
|
try {
|
|
@@ -95,10 +89,10 @@ class MutationsCore {
|
|
|
95
89
|
// - mutation payload size won't exceed liveapp request payload size limit
|
|
96
90
|
// Requests are sent as form-encoded utf-8 (1 byte characters)
|
|
97
91
|
if (encodeURIComponent(JSON.stringify(mutation)).length > MUTATIONS_MAX_BODY_SIZE) {
|
|
98
|
-
throw
|
|
92
|
+
throw spawnError('Request exceeds maximum size limit of %s bytes', MUTATIONS_MAX_BODY_SIZE);
|
|
99
93
|
}
|
|
100
94
|
if (this._doesMutationExceedBatchSizeLimit(mutation)) {
|
|
101
|
-
throw
|
|
95
|
+
throw spawnError('Request exceeds maximum batch size limit of %s items', MUTATIONS_MAX_BATCH_SIZE);
|
|
102
96
|
}
|
|
103
97
|
}
|
|
104
98
|
|
|
@@ -107,7 +101,7 @@ class MutationsCore {
|
|
|
107
101
|
// GlobalConfig updates are different to other mutations (on models): for models, we
|
|
108
102
|
// only apply optimistic updates if the relevant models are loaded, whereas for
|
|
109
103
|
// SET_MULTIPLE_GLOBAL_CONFIG_PATHS we always apply optimistic updates.
|
|
110
|
-
if (mutation.type ===
|
|
104
|
+
if (mutation.type === MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS) {
|
|
111
105
|
// Not sure why this cast is necessary, but TS complains without it.
|
|
112
106
|
const _mutation = mutation;
|
|
113
107
|
this._applyGlobalConfigUpdates(_mutation.updates);
|
|
@@ -124,12 +118,12 @@ class MutationsCore {
|
|
|
124
118
|
/** @internal */
|
|
125
119
|
_doesMutationExceedBatchSizeLimit(mutation) {
|
|
126
120
|
switch (mutation.type) {
|
|
127
|
-
case
|
|
128
|
-
case
|
|
121
|
+
case MutationTypesCore.SET_MULTIPLE_RECORDS_CELL_VALUES:
|
|
122
|
+
case MutationTypesCore.CREATE_MULTIPLE_RECORDS:
|
|
129
123
|
return mutation.records.length > MUTATIONS_MAX_BATCH_SIZE;
|
|
130
|
-
case
|
|
124
|
+
case MutationTypesCore.DELETE_MULTIPLE_RECORDS:
|
|
131
125
|
return mutation.recordIds.length > MUTATIONS_MAX_BATCH_SIZE;
|
|
132
|
-
case
|
|
126
|
+
case MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS:
|
|
133
127
|
return mutation.updates.length > MUTATIONS_MAX_BATCH_SIZE;
|
|
134
128
|
// The "default" case cannot be reached because this method is only
|
|
135
129
|
// invoked after the mutation type has been validated.
|
|
@@ -142,7 +136,7 @@ class MutationsCore {
|
|
|
142
136
|
/** @internal */
|
|
143
137
|
_assertFieldIsValidForMutation(field) {
|
|
144
138
|
if (field.isComputed) {
|
|
145
|
-
throw
|
|
139
|
+
throw spawnError("Can't set cell values: Field '%s' is computed and cannot be set", field.name);
|
|
146
140
|
}
|
|
147
141
|
}
|
|
148
142
|
|
|
@@ -159,7 +153,7 @@ class MutationsCore {
|
|
|
159
153
|
|
|
160
154
|
const appInterface = this._sdk.__appInterface;
|
|
161
155
|
switch (mutation.type) {
|
|
162
|
-
case
|
|
156
|
+
case MutationTypesCore.SET_MULTIPLE_RECORDS_CELL_VALUES:
|
|
163
157
|
{
|
|
164
158
|
const {
|
|
165
159
|
tableId,
|
|
@@ -167,7 +161,7 @@ class MutationsCore {
|
|
|
167
161
|
} = mutation;
|
|
168
162
|
const table = this._base.getTableByIdIfExists(tableId);
|
|
169
163
|
if (!table) {
|
|
170
|
-
throw
|
|
164
|
+
throw spawnError("Can't set cell values: No table with id %s exists", tableId);
|
|
171
165
|
}
|
|
172
166
|
|
|
173
167
|
// For every mutation, we check that we're not trying to set fields that we don't support
|
|
@@ -180,13 +174,13 @@ class MutationsCore {
|
|
|
180
174
|
if (this._isRecordStoreReadyForMutations(recordStore)) {
|
|
181
175
|
existingRecord = recordStore.getRecordByIdIfExists(record.id);
|
|
182
176
|
if (!existingRecord) {
|
|
183
|
-
throw
|
|
177
|
+
throw spawnError("Can't set cell values: No record with id %s exists", record.id);
|
|
184
178
|
}
|
|
185
179
|
}
|
|
186
180
|
for (const fieldId of Object.keys(record.cellValuesByFieldId)) {
|
|
187
181
|
const field = table.getFieldByIdIfExists(fieldId);
|
|
188
182
|
if (!field) {
|
|
189
|
-
throw
|
|
183
|
+
throw spawnError("Can't set cell values: No field with id %s exists in table '%s'", fieldId, table.name);
|
|
190
184
|
}
|
|
191
185
|
if (!checkedFieldIds.has(fieldId)) {
|
|
192
186
|
this._assertFieldIsValidForMutation(field);
|
|
@@ -195,14 +189,14 @@ class MutationsCore {
|
|
|
195
189
|
if (existingRecord && this._isFieldAvailableForMutation(recordStore, field.id)) {
|
|
196
190
|
const validationResult = this._airtableInterface.fieldTypeProvider.validateCellValueForUpdate(appInterface, record.cellValuesByFieldId[fieldId], existingRecord._getRawCellValue(field), field._data);
|
|
197
191
|
if (!validationResult.isValid) {
|
|
198
|
-
throw
|
|
192
|
+
throw spawnError("Can't set cell values: invalid cell value for field '%s'.\n%s", field.name, validationResult.reason);
|
|
199
193
|
}
|
|
200
194
|
}
|
|
201
195
|
}
|
|
202
196
|
}
|
|
203
197
|
return;
|
|
204
198
|
}
|
|
205
|
-
case
|
|
199
|
+
case MutationTypesCore.DELETE_MULTIPLE_RECORDS:
|
|
206
200
|
{
|
|
207
201
|
const {
|
|
208
202
|
tableId,
|
|
@@ -210,20 +204,20 @@ class MutationsCore {
|
|
|
210
204
|
} = mutation;
|
|
211
205
|
const table = this._base.getTableByIdIfExists(tableId);
|
|
212
206
|
if (!table) {
|
|
213
|
-
throw
|
|
207
|
+
throw spawnError("Can't delete records: No table with id %s exists", tableId);
|
|
214
208
|
}
|
|
215
209
|
const recordStore = this._base.__getRecordStore(tableId);
|
|
216
210
|
if (this._isRecordStoreReadyForMutations(recordStore)) {
|
|
217
211
|
for (const recordId of recordIds) {
|
|
218
212
|
const record = recordStore.getRecordByIdIfExists(recordId);
|
|
219
213
|
if (!record) {
|
|
220
|
-
throw
|
|
214
|
+
throw spawnError("Can't delete records: No record with id %s exists in table '%s'", recordId, table.name);
|
|
221
215
|
}
|
|
222
216
|
}
|
|
223
217
|
}
|
|
224
218
|
return;
|
|
225
219
|
}
|
|
226
|
-
case
|
|
220
|
+
case MutationTypesCore.CREATE_MULTIPLE_RECORDS:
|
|
227
221
|
{
|
|
228
222
|
const {
|
|
229
223
|
tableId,
|
|
@@ -232,13 +226,13 @@ class MutationsCore {
|
|
|
232
226
|
const checkedFieldIds = new Set();
|
|
233
227
|
const table = this._base.getTableByIdIfExists(tableId);
|
|
234
228
|
if (!table) {
|
|
235
|
-
throw
|
|
229
|
+
throw spawnError("Can't create records: No table with id %s exists", tableId);
|
|
236
230
|
}
|
|
237
231
|
for (const record of records) {
|
|
238
232
|
for (const fieldId of Object.keys(record.cellValuesByFieldId)) {
|
|
239
233
|
const field = table.getFieldByIdIfExists(fieldId);
|
|
240
234
|
if (!field) {
|
|
241
|
-
throw
|
|
235
|
+
throw spawnError("Can't create records: No field with id %s exists in table '%s'", fieldId, table.name);
|
|
242
236
|
}
|
|
243
237
|
if (!checkedFieldIds.has(fieldId)) {
|
|
244
238
|
this._assertFieldIsValidForMutation(field);
|
|
@@ -248,13 +242,13 @@ class MutationsCore {
|
|
|
248
242
|
// Current cell value is null since the record doesn't exist.
|
|
249
243
|
const validationResult = this._airtableInterface.fieldTypeProvider.validateCellValueForUpdate(appInterface, record.cellValuesByFieldId[fieldId], null, field._data);
|
|
250
244
|
if (!validationResult.isValid) {
|
|
251
|
-
throw
|
|
245
|
+
throw spawnError("Can't create records: invalid cell value for field '%s'.\n%s", field.name, validationResult.reason);
|
|
252
246
|
}
|
|
253
247
|
}
|
|
254
248
|
}
|
|
255
249
|
return;
|
|
256
250
|
}
|
|
257
|
-
case
|
|
251
|
+
case MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS:
|
|
258
252
|
{
|
|
259
253
|
// globalConfig update is a special case: globalConfig handles validation before
|
|
260
254
|
// invoking this mutation, since it relies on internal state to validate the
|
|
@@ -262,14 +256,14 @@ class MutationsCore {
|
|
|
262
256
|
return;
|
|
263
257
|
}
|
|
264
258
|
default:
|
|
265
|
-
throw
|
|
259
|
+
throw spawnError('unhandled mutation type: %s', mutation.type);
|
|
266
260
|
}
|
|
267
261
|
}
|
|
268
262
|
|
|
269
263
|
/** @internal */
|
|
270
264
|
_getOptimisticModelChangesForMutation(mutation) {
|
|
271
265
|
switch (mutation.type) {
|
|
272
|
-
case
|
|
266
|
+
case MutationTypesCore.SET_MULTIPLE_RECORDS_CELL_VALUES:
|
|
273
267
|
{
|
|
274
268
|
const {
|
|
275
269
|
tableId,
|
|
@@ -281,7 +275,7 @@ class MutationsCore {
|
|
|
281
275
|
value: record.cellValuesByFieldId[fieldId]
|
|
282
276
|
})));
|
|
283
277
|
}
|
|
284
|
-
case
|
|
278
|
+
case MutationTypesCore.DELETE_MULTIPLE_RECORDS:
|
|
285
279
|
{
|
|
286
280
|
const {
|
|
287
281
|
tableId,
|
|
@@ -292,7 +286,7 @@ class MutationsCore {
|
|
|
292
286
|
value: undefined
|
|
293
287
|
}));
|
|
294
288
|
}
|
|
295
|
-
case
|
|
289
|
+
case MutationTypesCore.CREATE_MULTIPLE_RECORDS:
|
|
296
290
|
{
|
|
297
291
|
const {
|
|
298
292
|
tableId,
|
|
@@ -302,7 +296,7 @@ class MutationsCore {
|
|
|
302
296
|
return records.map(record => {
|
|
303
297
|
// Only apply optimistic changes for fields that are "available" for mutation
|
|
304
298
|
const filteredCellValuesByFieldId = {};
|
|
305
|
-
for (const [fieldId, cellValue] of
|
|
299
|
+
for (const [fieldId, cellValue] of entries(record.cellValuesByFieldId)) {
|
|
306
300
|
if (this._isFieldAvailableForMutation(recordStore, fieldId)) {
|
|
307
301
|
filteredCellValuesByFieldId[fieldId] = cellValue;
|
|
308
302
|
}
|
|
@@ -321,16 +315,16 @@ class MutationsCore {
|
|
|
321
315
|
// The following branch is unreachable because this method's only
|
|
322
316
|
// call site is preceded by an explicit guard for this condition.
|
|
323
317
|
// istanbul ignore next
|
|
324
|
-
case
|
|
318
|
+
case MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS:
|
|
325
319
|
{
|
|
326
|
-
throw
|
|
320
|
+
throw spawnError('attempting to generate model updates for SET_MULTIPLE_GLOBAL_CONFIG_PATH');
|
|
327
321
|
}
|
|
328
322
|
|
|
329
323
|
// The following branch is unreachable because this method's only
|
|
330
324
|
// call site is preceded by an explicit guard for this condition.
|
|
331
325
|
// istanbul ignore next
|
|
332
326
|
default:
|
|
333
|
-
throw
|
|
327
|
+
throw spawnError('unhandled mutation type: %s', mutation.type);
|
|
334
328
|
}
|
|
335
329
|
}
|
|
336
330
|
|
|
@@ -339,5 +333,4 @@ class MutationsCore {
|
|
|
339
333
|
/** @internal */
|
|
340
334
|
|
|
341
335
|
/** @internal */
|
|
342
|
-
}
|
|
343
|
-
exports.MutationsCore = MutationsCore;
|
|
336
|
+
}
|
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
var _private_utils = require("../private_utils");
|
|
8
|
-
var _error_utils = require("../error_utils");
|
|
9
|
-
var _field_core = require("../types/field_core");
|
|
10
|
-
var _abstract_model = _interopRequireDefault(require("./abstract_model"));
|
|
11
|
-
var _field_core2 = require("./field_core");
|
|
12
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
-
const WatchableRecordKeysCore = exports.WatchableRecordKeysCore = Object.freeze({
|
|
1
|
+
import { cloneDeep, isEnumValue, isObjectEmpty } from '../private_utils';
|
|
2
|
+
import { invariant } from '../error_utils';
|
|
3
|
+
import { FieldType } from '../types/field_core';
|
|
4
|
+
import AbstractModel from './abstract_model';
|
|
5
|
+
import { FieldCore } from './field_core';
|
|
6
|
+
export const WatchableRecordKeysCore = Object.freeze({
|
|
14
7
|
name: 'name',
|
|
15
8
|
// TODO(kasra): these keys don't have matching getters (not that they should
|
|
16
9
|
// it's just inconsistent...)
|
|
@@ -20,12 +13,12 @@ const WatchableRecordKeysCore = exports.WatchableRecordKeysCore = Object.freeze(
|
|
|
20
13
|
/** @hidden */
|
|
21
14
|
|
|
22
15
|
/** @hidden */
|
|
23
|
-
class RecordCore extends
|
|
16
|
+
export class RecordCore extends AbstractModel {
|
|
24
17
|
/** @internal */
|
|
25
18
|
static _className = 'RecordCore';
|
|
26
19
|
/** @internal */
|
|
27
20
|
static _isWatchableKey(key) {
|
|
28
|
-
return
|
|
21
|
+
return isEnumValue(WatchableRecordKeysCore, key);
|
|
29
22
|
}
|
|
30
23
|
/** @internal */
|
|
31
24
|
|
|
@@ -49,7 +42,7 @@ class RecordCore extends _abstract_model.default {
|
|
|
49
42
|
return null;
|
|
50
43
|
}
|
|
51
44
|
const recordsById = tableData.recordsById;
|
|
52
|
-
|
|
45
|
+
invariant(recordsById, 'Record data is not loaded');
|
|
53
46
|
return recordsById[this._id] ?? null;
|
|
54
47
|
}
|
|
55
48
|
|
|
@@ -72,7 +65,7 @@ class RecordCore extends _abstract_model.default {
|
|
|
72
65
|
* @internal
|
|
73
66
|
*/
|
|
74
67
|
_getFieldMatching(fieldOrFieldIdOrFieldName) {
|
|
75
|
-
if (fieldOrFieldIdOrFieldName instanceof
|
|
68
|
+
if (fieldOrFieldIdOrFieldName instanceof FieldCore) {
|
|
76
69
|
return this._parentTable.__getFieldMatching(fieldOrFieldIdOrFieldName.id);
|
|
77
70
|
}
|
|
78
71
|
return this.parentTable.__getFieldMatching(fieldOrFieldIdOrFieldName);
|
|
@@ -97,7 +90,7 @@ class RecordCore extends _abstract_model.default {
|
|
|
97
90
|
if (typeof cellValue === 'object' && cellValue !== null) {
|
|
98
91
|
// Copy non-primitives.
|
|
99
92
|
// TODO(kasra): maybe freezeDeep instead?
|
|
100
|
-
return
|
|
93
|
+
return cloneDeep(cellValue);
|
|
101
94
|
} else {
|
|
102
95
|
return cellValue;
|
|
103
96
|
}
|
|
@@ -118,15 +111,15 @@ class RecordCore extends _abstract_model.default {
|
|
|
118
111
|
const cellValue = this._getRawCellValue(field);
|
|
119
112
|
|
|
120
113
|
// HACK: migrate to new public lookup cell value format if needed
|
|
121
|
-
if (typeof cellValue === 'object' && cellValue !== null && field.type ===
|
|
114
|
+
if (typeof cellValue === 'object' && cellValue !== null && field.type === FieldType.MULTIPLE_LOOKUP_VALUES && !this._sdk.__airtableInterface.sdkInitData.isUsingNewLookupCellValueFormat) {
|
|
122
115
|
const cellValueForMigration = [];
|
|
123
|
-
|
|
116
|
+
invariant(Array.isArray(cellValue.linkedRecordIds), 'linkedRecordIds');
|
|
124
117
|
for (const linkedRecordId of cellValue.linkedRecordIds) {
|
|
125
|
-
|
|
118
|
+
invariant(typeof linkedRecordId === 'string', 'linkedRecordId');
|
|
126
119
|
const {
|
|
127
120
|
valuesByLinkedRecordId
|
|
128
121
|
} = cellValue;
|
|
129
|
-
|
|
122
|
+
invariant(valuesByLinkedRecordId && typeof valuesByLinkedRecordId === 'object', 'valuesByLinkedRecordId');
|
|
130
123
|
const value = valuesByLinkedRecordId[linkedRecordId];
|
|
131
124
|
if (Array.isArray(value)) {
|
|
132
125
|
for (const v of value) {
|
|
@@ -200,7 +193,7 @@ class RecordCore extends _abstract_model.default {
|
|
|
200
193
|
const {
|
|
201
194
|
cellValuesByFieldId
|
|
202
195
|
} = dirtyPaths;
|
|
203
|
-
if (cellValuesByFieldId && !
|
|
196
|
+
if (cellValuesByFieldId && !isObjectEmpty(cellValuesByFieldId)) {
|
|
204
197
|
// TODO: don't trigger changes for fields that aren't supposed to be loaded
|
|
205
198
|
// (in some cases, e.g. record created, liveapp will send cell values
|
|
206
199
|
// that we're not subscribed to).
|
|
@@ -211,5 +204,4 @@ class RecordCore extends _abstract_model.default {
|
|
|
211
204
|
}
|
|
212
205
|
}
|
|
213
206
|
}
|
|
214
|
-
}
|
|
215
|
-
exports.RecordCore = RecordCore;
|
|
207
|
+
}
|