@airtable/blocks 0.0.0-experimental-e5ab33b68-20250905 → 0.0.0-experimental-3e47d4d04-20250909
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 +17 -7
- 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/{cjs → esm}/base/ui/baymax_utils.js +105 -111
- package/dist/{cjs → esm}/base/ui/block_wrapper.js +24 -34
- package/dist/{cjs → esm}/base/ui/box.js +8 -15
- package/dist/{cjs → esm}/base/ui/button.js +22 -31
- package/dist/{cjs → esm}/base/ui/cell_renderer.js +27 -35
- package/dist/esm/base/ui/choice_token.js +84 -0
- package/dist/{cjs → esm}/base/ui/collaborator_token.js +21 -29
- package/dist/{cjs → esm}/base/ui/color_palette.js +26 -37
- package/dist/esm/base/ui/color_palette_synced.js +62 -0
- package/dist/{cjs → esm}/base/ui/confirmation_dialog.js +15 -22
- package/dist/esm/base/ui/control_sizes.js +92 -0
- package/dist/{cjs → esm}/base/ui/create_detect_element_resize.js +1 -7
- package/dist/{cjs → esm}/base/ui/css_helpers.js +4 -10
- package/dist/{cjs → esm}/base/ui/dialog.js +12 -20
- package/dist/esm/base/ui/dialog_close_button.js +96 -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/field_icon.js +37 -0
- package/dist/{cjs → esm}/base/ui/field_picker.js +13 -20
- package/dist/esm/base/ui/field_picker_synced.js +59 -0
- package/dist/esm/base/ui/form_field.js +102 -0
- package/dist/esm/base/ui/geometry/geometry.js +9 -0
- package/dist/esm/base/ui/geometry/point.js +12 -0
- package/dist/{cjs → esm}/base/ui/geometry/rect.js +4 -11
- package/dist/{cjs → esm}/base/ui/geometry/size.js +2 -9
- package/dist/esm/base/ui/global_alert.js +61 -0
- package/dist/{cjs → esm}/base/ui/heading.js +20 -27
- package/dist/{cjs → esm}/base/ui/icon.js +19 -26
- package/dist/{cjs → esm}/base/ui/icon_config.js +6 -11
- package/dist/esm/base/ui/initialize_block.js +110 -0
- package/dist/{cjs → esm}/base/ui/input.js +20 -29
- package/dist/esm/base/ui/input_synced.js +59 -0
- package/dist/{cjs → esm}/base/ui/key_codes.js +2 -9
- package/dist/{cjs → esm}/base/ui/label.js +13 -20
- package/dist/{cjs → esm}/base/ui/link.js +21 -28
- package/dist/esm/base/ui/loader.js +52 -0
- package/dist/{cjs → esm}/base/ui/modal.js +16 -26
- package/dist/esm/base/ui/model_picker_select.js +50 -0
- package/dist/{cjs → esm}/base/ui/popover.js +24 -27
- package/dist/esm/base/ui/progress_bar.js +106 -0
- package/dist/{cjs → esm}/base/ui/record_card.js +86 -94
- package/dist/{cjs → esm}/base/ui/record_card_list.js +24 -35
- package/dist/{cjs → esm}/base/ui/select.js +25 -34
- package/dist/{cjs → esm}/base/ui/select_and_select_buttons_helpers.js +4 -14
- package/dist/{cjs → esm}/base/ui/select_buttons.js +33 -42
- package/dist/esm/base/ui/select_buttons_synced.js +55 -0
- package/dist/esm/base/ui/select_synced.js +58 -0
- package/dist/{cjs → esm}/base/ui/switch.js +21 -28
- package/dist/esm/base/ui/switch_synced.js +46 -0
- package/dist/esm/base/ui/synced.js +39 -0
- package/dist/{cjs → esm}/base/ui/system/all_styles_set.js +3 -9
- package/dist/esm/base/ui/system/appearance/appearance_set.js +21 -0
- package/dist/esm/base/ui/system/appearance/background_color.js +12 -0
- package/dist/{cjs → esm}/base/ui/system/appearance/border.js +3 -9
- package/dist/esm/base/ui/system/appearance/border_radius.js +12 -0
- package/dist/esm/base/ui/system/appearance/box_shadow.js +12 -0
- package/dist/esm/base/ui/system/appearance/opacity.js +12 -0
- package/dist/esm/base/ui/system/dimensions/dimensions_set.js +23 -0
- package/dist/esm/base/ui/system/dimensions/height.js +12 -0
- package/dist/esm/base/ui/system/dimensions/max_height.js +12 -0
- package/dist/esm/base/ui/system/dimensions/max_width.js +12 -0
- package/dist/esm/base/ui/system/dimensions/min_height.js +12 -0
- package/dist/esm/base/ui/system/dimensions/min_width.js +12 -0
- package/dist/esm/base/ui/system/dimensions/width.js +12 -0
- package/dist/esm/base/ui/system/display.js +13 -0
- package/dist/esm/base/ui/system/flex_container/align_content.js +9 -0
- package/dist/esm/base/ui/system/flex_container/align_items.js +9 -0
- package/dist/esm/base/ui/system/flex_container/flex_container_set.js +23 -0
- package/dist/esm/base/ui/system/flex_container/flex_direction.js +9 -0
- package/dist/esm/base/ui/system/flex_container/flex_wrap.js +9 -0
- package/dist/esm/base/ui/system/flex_container/justify_content.js +9 -0
- package/dist/esm/base/ui/system/flex_container/justify_items.js +10 -0
- package/dist/esm/base/ui/system/flex_item/align_self.js +9 -0
- package/dist/esm/base/ui/system/flex_item/flex.js +9 -0
- package/dist/esm/base/ui/system/flex_item/flex_basis.js +9 -0
- package/dist/esm/base/ui/system/flex_item/flex_grow.js +9 -0
- package/dist/esm/base/ui/system/flex_item/flex_item_set.js +25 -0
- package/dist/esm/base/ui/system/flex_item/flex_shrink.js +9 -0
- package/dist/esm/base/ui/system/flex_item/justify_self.js +10 -0
- package/dist/esm/base/ui/system/flex_item/order.js +9 -0
- package/dist/esm/base/ui/system/index.js +96 -0
- package/dist/{cjs → esm}/base/ui/system/overflow.js +2 -8
- package/dist/esm/base/ui/system/position/bottom.js +17 -0
- package/dist/esm/base/ui/system/position/left.js +17 -0
- package/dist/esm/base/ui/system/position/position.js +9 -0
- package/dist/esm/base/ui/system/position/position_set.js +23 -0
- package/dist/esm/base/ui/system/position/right.js +17 -0
- package/dist/esm/base/ui/system/position/top.js +17 -0
- package/dist/esm/base/ui/system/position/z_index.js +12 -0
- package/dist/{cjs → esm}/base/ui/system/spacing/margin.js +11 -18
- package/dist/esm/base/ui/system/spacing/padding.js +58 -0
- package/dist/esm/base/ui/system/spacing/spacing_set.js +15 -0
- package/dist/esm/base/ui/system/typography/font_family.js +12 -0
- package/dist/esm/base/ui/system/typography/font_size.js +12 -0
- package/dist/esm/base/ui/system/typography/font_style.js +9 -0
- package/dist/esm/base/ui/system/typography/font_weight.js +12 -0
- package/dist/esm/base/ui/system/typography/letter_spacing.js +12 -0
- package/dist/esm/base/ui/system/typography/line_height.js +9 -0
- package/dist/esm/base/ui/system/typography/text_align.js +9 -0
- package/dist/esm/base/ui/system/typography/text_color.js +12 -0
- package/dist/esm/base/ui/system/typography/text_decoration.js +9 -0
- package/dist/esm/base/ui/system/typography/text_transform.js +9 -0
- package/dist/esm/base/ui/system/typography/typography_set.js +31 -0
- package/dist/esm/base/ui/system/utils/csstype.js +1 -0
- package/dist/esm/base/ui/system/utils/ensure_numbers_are_within_scale.js +36 -0
- package/dist/{cjs → esm}/base/ui/system/utils/get_style_props_for_responsive_prop.js +9 -15
- package/dist/esm/base/ui/system/utils/types.js +1 -0
- package/dist/{cjs → esm}/base/ui/table_picker.js +10 -17
- package/dist/esm/base/ui/table_picker_synced.js +55 -0
- package/dist/{cjs → esm}/base/ui/text.js +17 -25
- package/dist/{cjs → esm}/base/ui/text_button.js +24 -31
- package/dist/esm/base/ui/theme/default_theme/button_variants.js +53 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/control_sizes.js +5 -11
- package/dist/{cjs → esm}/base/ui/theme/default_theme/heading_styles.js +1 -7
- package/dist/esm/base/ui/theme/default_theme/index.js +31 -0
- package/dist/esm/base/ui/theme/default_theme/input_variants.js +32 -0
- package/dist/esm/base/ui/theme/default_theme/link_variants.js +29 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/select_buttons_variants.js +16 -22
- package/dist/{cjs → esm}/base/ui/theme/default_theme/select_variants.js +12 -18
- package/dist/esm/base/ui/theme/default_theme/switch_variants.js +78 -0
- package/dist/esm/base/ui/theme/default_theme/text_button_variants.js +38 -0
- package/dist/{cjs → esm}/base/ui/theme/default_theme/text_styles.js +1 -7
- package/dist/{cjs → esm}/base/ui/theme/default_theme/tokens.js +12 -18
- package/dist/esm/base/ui/theme/theme_context.js +7 -0
- package/dist/esm/base/ui/theme/use_theme.js +4 -0
- package/dist/{cjs → esm}/base/ui/tooltip.js +14 -24
- package/dist/esm/base/ui/types/aria_props.js +1 -0
- package/dist/esm/base/ui/types/data_attributes_prop.js +1 -0
- package/dist/esm/base/ui/types/tooltip_anchor_props.js +1 -0
- package/dist/esm/base/ui/ui.js +52 -0
- package/dist/esm/base/ui/unstable_standalone_ui.js +27 -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/esm/base/ui/use_form_field.js +14 -0
- package/dist/{cjs → esm}/base/ui/use_loadable.js +14 -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/esm/base/ui/use_styled_system.js +19 -0
- package/dist/esm/base/ui/use_text_color_for_background_color.js +9 -0
- 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/{cjs → esm}/base/ui/view_picker.js +13 -20
- package/dist/esm/base/ui/view_picker_synced.js +59 -0
- package/dist/{cjs → esm}/base/ui/viewport_constraint.js +5 -14
- package/dist/{cjs → esm}/base/ui/with_styled_system.js +12 -21
- 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 +11 -9
- 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 +58 -0
- package/dist/{cjs → esm}/interface/ui/expand_record.js +1 -7
- 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 +18 -25
- 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 +34 -70
- 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/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 +12 -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 +15 -15
- 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 +1 -1
- package/dist/types/src/base/ui/block_wrapper.d.ts.map +1 -1
- package/dist/types/src/base/ui/box.d.ts +4 -4
- package/dist/types/src/base/ui/box.d.ts.map +1 -1
- package/dist/types/src/base/ui/button.d.ts +7 -7
- package/dist/types/src/base/ui/button.d.ts.map +1 -1
- package/dist/types/src/base/ui/cell_renderer.d.ts +5 -5
- package/dist/types/src/base/ui/cell_renderer.d.ts.map +1 -1
- package/dist/types/src/base/ui/choice_token.d.ts +3 -3
- package/dist/types/src/base/ui/choice_token.d.ts.map +1 -1
- package/dist/types/src/base/ui/collaborator_token.d.ts +3 -3
- package/dist/types/src/base/ui/collaborator_token.d.ts.map +1 -1
- package/dist/types/src/base/ui/color_palette.d.ts +2 -2
- package/dist/types/src/base/ui/color_palette.d.ts.map +1 -1
- package/dist/types/src/base/ui/color_palette_synced.d.ts +2 -2
- package/dist/types/src/base/ui/color_palette_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/confirmation_dialog.d.ts +1 -1
- package/dist/types/src/base/ui/confirmation_dialog.d.ts.map +1 -1
- package/dist/types/src/base/ui/control_sizes.d.ts +2 -2
- package/dist/types/src/base/ui/control_sizes.d.ts.map +1 -1
- package/dist/types/src/base/ui/dialog.d.ts +2 -2
- package/dist/types/src/base/ui/dialog.d.ts.map +1 -1
- package/dist/types/src/base/ui/dialog_close_button.d.ts +2 -2
- package/dist/types/src/base/ui/dialog_close_button.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/field_icon.d.ts +2 -2
- package/dist/types/src/base/ui/field_icon.d.ts.map +1 -1
- package/dist/types/src/base/ui/field_picker.d.ts +4 -4
- package/dist/types/src/base/ui/field_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/field_picker_synced.d.ts +2 -2
- package/dist/types/src/base/ui/field_picker_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/form_field.d.ts +1 -1
- package/dist/types/src/base/ui/form_field.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/heading.d.ts +5 -5
- package/dist/types/src/base/ui/heading.d.ts.map +1 -1
- package/dist/types/src/base/ui/icon.d.ts +3 -3
- package/dist/types/src/base/ui/icon.d.ts.map +1 -1
- package/dist/types/src/base/ui/icon_config.d.ts +1 -1
- package/dist/types/src/base/ui/icon_config.d.ts.map +1 -1
- 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/input.d.ts +4 -4
- package/dist/types/src/base/ui/input.d.ts.map +1 -1
- package/dist/types/src/base/ui/input_synced.d.ts +2 -2
- package/dist/types/src/base/ui/input_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/label.d.ts +4 -4
- package/dist/types/src/base/ui/label.d.ts.map +1 -1
- package/dist/types/src/base/ui/link.d.ts +8 -8
- package/dist/types/src/base/ui/link.d.ts.map +1 -1
- package/dist/types/src/base/ui/loader.d.ts +1 -1
- package/dist/types/src/base/ui/loader.d.ts.map +1 -1
- package/dist/types/src/base/ui/modal.d.ts +2 -2
- package/dist/types/src/base/ui/modal.d.ts.map +1 -1
- package/dist/types/src/base/ui/model_picker_select.d.ts +4 -4
- package/dist/types/src/base/ui/model_picker_select.d.ts.map +1 -1
- package/dist/types/src/base/ui/popover.d.ts +1 -1
- package/dist/types/src/base/ui/popover.d.ts.map +1 -1
- package/dist/types/src/base/ui/progress_bar.d.ts +3 -3
- package/dist/types/src/base/ui/progress_bar.d.ts.map +1 -1
- package/dist/types/src/base/ui/record_card.d.ts +5 -5
- package/dist/types/src/base/ui/record_card.d.ts.map +1 -1
- package/dist/types/src/base/ui/record_card_list.d.ts +4 -4
- package/dist/types/src/base/ui/record_card_list.d.ts.map +1 -1
- package/dist/types/src/base/ui/select.d.ts +5 -5
- 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 +1 -1
- 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 +4 -4
- package/dist/types/src/base/ui/select_buttons.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_buttons_synced.d.ts +2 -2
- package/dist/types/src/base/ui/select_buttons_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/select_synced.d.ts +2 -2
- package/dist/types/src/base/ui/select_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/switch.d.ts +5 -5
- package/dist/types/src/base/ui/switch.d.ts.map +1 -1
- package/dist/types/src/base/ui/switch_synced.d.ts +2 -2
- package/dist/types/src/base/ui/switch_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/synced.d.ts +2 -2
- package/dist/types/src/base/ui/synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/all_styles_set.d.ts +1 -1
- 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 +5 -5
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +6 -6
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- package/dist/types/src/base/ui/system/dimensions/width.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/display.d.ts +2 -2
- 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 +3 -3
- 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 +3 -3
- 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 +6 -6
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +7 -7
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +104 -52
- package/dist/types/src/base/ui/system/index.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/overflow.d.ts +2 -2
- package/dist/types/src/base/ui/system/overflow.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/position/bottom.d.ts +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +6 -6
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +2 -2
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +10 -10
- package/dist/types/src/base/ui/system/typography/typography_set.d.ts.map +1 -1
- package/dist/types/src/base/ui/system/utils/csstype.d.ts.map +1 -1
- package/dist/types/src/base/ui/table_picker.d.ts +2 -2
- package/dist/types/src/base/ui/table_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/table_picker_synced.d.ts +2 -2
- package/dist/types/src/base/ui/table_picker_synced.d.ts.map +1 -1
- package/dist/types/src/base/ui/text.d.ts +5 -5
- package/dist/types/src/base/ui/text.d.ts.map +1 -1
- package/dist/types/src/base/ui/text_button.d.ts +8 -8
- package/dist/types/src/base/ui/text_button.d.ts.map +1 -1
- package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts +2 -2
- package/dist/types/src/base/ui/theme/default_theme/heading_styles.d.ts.map +1 -1
- package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts +2 -2
- package/dist/types/src/base/ui/theme/default_theme/tokens.d.ts.map +1 -1
- package/dist/types/src/base/ui/tooltip.d.ts +2 -2
- package/dist/types/src/base/ui/tooltip.d.ts.map +1 -1
- package/dist/types/src/base/ui/types/aria_props.d.ts +1 -1
- package/dist/types/src/base/ui/types/aria_props.d.ts.map +1 -1
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +1 -1
- package/dist/types/src/base/ui/types/tooltip_anchor_props.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_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/ui/view_picker.d.ts +3 -3
- package/dist/types/src/base/ui/view_picker.d.ts.map +1 -1
- package/dist/types/src/base/ui/view_picker_synced.d.ts +2 -2
- 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 -1
- package/dist/types/src/base/ui/viewport_constraint.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 +5 -5
- 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 +1 -1
- package/dist/types/src/interface/ui/block_wrapper.d.ts.map +1 -1
- 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/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/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 +3 -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/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/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 +19 -17
- 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/choice_token.js +0 -93
- package/dist/cjs/base/ui/color_palette_synced.js +0 -69
- package/dist/cjs/base/ui/control_sizes.js +0 -104
- 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_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/global_alert.js +0 -71
- package/dist/cjs/base/ui/initialize_block.js +0 -122
- package/dist/cjs/base/ui/input_synced.js +0 -66
- package/dist/cjs/base/ui/loader.js +0 -61
- package/dist/cjs/base/ui/model_picker_select.js +0 -57
- package/dist/cjs/base/ui/progress_bar.js +0 -115
- 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_synced.js +0 -53
- package/dist/cjs/base/ui/synced.js +0 -49
- 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_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/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/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/types.js +0 -1
- package/dist/cjs/base/ui/table_picker_synced.js +0 -62
- package/dist/cjs/base/ui/theme/default_theme/button_variants.js +0 -59
- 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/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/theme_context.js +0 -13
- package/dist/cjs/base/ui/theme/use_theme.js +0 -11
- 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_synced.js +0 -66
- 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
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useCustomProperties = useCustomProperties;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _sdk_context = require("../../shared/ui/sdk_context");
|
|
9
|
-
var _airtable_interface = require("../types/airtable_interface");
|
|
10
|
-
var _use_global_config = _interopRequireDefault(require("../../shared/ui/use_global_config"));
|
|
11
|
-
var _error_utils = require("../../shared/error_utils");
|
|
12
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
1
|
/** @module @airtable/blocks/interface/ui: useCustomProperties */ /** */
|
|
2
|
+
import { useState, useEffect } from 'react';
|
|
3
|
+
import { useSdk } from '../../shared/ui/sdk_context';
|
|
4
|
+
import { BlockInstallationPageElementCustomPropertyTypeForAirtableInterface } from '../types/airtable_interface';
|
|
5
|
+
import useGlobalConfig from '../../shared/ui/use_global_config';
|
|
6
|
+
import { spawnUnknownSwitchCaseError } from '../../shared/error_utils';
|
|
14
7
|
|
|
15
8
|
// This is the public-facing API for custom properties that blocks will pass.
|
|
16
9
|
// It differs slightly from BlockInstallationPageElementCustomPropertyForAirtableInterface
|
|
@@ -75,16 +68,16 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
75
68
|
* @docsPath UI/hooks/useCustomProperties
|
|
76
69
|
* @hook
|
|
77
70
|
*/
|
|
78
|
-
function useCustomProperties(getCustomProperties) {
|
|
79
|
-
const sdk =
|
|
80
|
-
const [customProperties, setCustomProperties] =
|
|
71
|
+
export function useCustomProperties(getCustomProperties) {
|
|
72
|
+
const sdk = useSdk();
|
|
73
|
+
const [customProperties, setCustomProperties] = useState(() => {
|
|
81
74
|
return getCustomProperties(sdk.base);
|
|
82
75
|
});
|
|
83
|
-
const globalConfig = (
|
|
84
|
-
const [errorState, setErrorState] =
|
|
76
|
+
const globalConfig = useGlobalConfig();
|
|
77
|
+
const [errorState, setErrorState] = useState(null);
|
|
85
78
|
|
|
86
79
|
// Create subscription to update custom properties when schema changes
|
|
87
|
-
|
|
80
|
+
useEffect(() => {
|
|
88
81
|
const base = sdk.base;
|
|
89
82
|
const onSchemaChange = base => {
|
|
90
83
|
const customProperties = getCustomProperties(base);
|
|
@@ -98,7 +91,7 @@ function useCustomProperties(getCustomProperties) {
|
|
|
98
91
|
|
|
99
92
|
// When custom properties change, send a message to hyperbase to update the properties panel
|
|
100
93
|
const hasError = errorState !== null;
|
|
101
|
-
|
|
94
|
+
useEffect(() => {
|
|
102
95
|
if (hasError) {
|
|
103
96
|
return;
|
|
104
97
|
}
|
|
@@ -123,21 +116,21 @@ function convertBlockPageElementCustomPropertyToBlockInstallationPageElementCust
|
|
|
123
116
|
return {
|
|
124
117
|
key: property.key,
|
|
125
118
|
label: property.label,
|
|
126
|
-
type:
|
|
119
|
+
type: BlockInstallationPageElementCustomPropertyTypeForAirtableInterface.BOOLEAN,
|
|
127
120
|
defaultValue: property.defaultValue
|
|
128
121
|
};
|
|
129
122
|
case 'string':
|
|
130
123
|
return {
|
|
131
124
|
key: property.key,
|
|
132
125
|
label: property.label,
|
|
133
|
-
type:
|
|
126
|
+
type: BlockInstallationPageElementCustomPropertyTypeForAirtableInterface.STRING,
|
|
134
127
|
defaultValue: property.defaultValue
|
|
135
128
|
};
|
|
136
129
|
case 'enum':
|
|
137
130
|
return {
|
|
138
131
|
key: property.key,
|
|
139
132
|
label: property.label,
|
|
140
|
-
type:
|
|
133
|
+
type: BlockInstallationPageElementCustomPropertyTypeForAirtableInterface.ENUM,
|
|
141
134
|
possibleValues: property.possibleValues,
|
|
142
135
|
defaultValue: property.defaultValue
|
|
143
136
|
};
|
|
@@ -145,13 +138,13 @@ function convertBlockPageElementCustomPropertyToBlockInstallationPageElementCust
|
|
|
145
138
|
return {
|
|
146
139
|
key: property.key,
|
|
147
140
|
label: property.label,
|
|
148
|
-
type:
|
|
141
|
+
type: BlockInstallationPageElementCustomPropertyTypeForAirtableInterface.FIELD_ID,
|
|
149
142
|
tableId: property.table.id,
|
|
150
143
|
possibleValues: property.possibleValues?.map(field => field.id),
|
|
151
144
|
defaultValue: property.defaultValue?.id
|
|
152
145
|
};
|
|
153
146
|
default:
|
|
154
|
-
throw
|
|
147
|
+
throw spawnUnknownSwitchCaseError('property type', property, 'type');
|
|
155
148
|
}
|
|
156
149
|
}
|
|
157
150
|
|
|
@@ -184,6 +177,6 @@ function getCustomPropertyValue(base, globalConfig, property) {
|
|
|
184
177
|
}
|
|
185
178
|
return defaultValue;
|
|
186
179
|
default:
|
|
187
|
-
throw
|
|
180
|
+
throw spawnUnknownSwitchCaseError('property type', property, 'type');
|
|
188
181
|
}
|
|
189
182
|
}
|
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useRecords = useRecords;
|
|
7
|
-
var _sdk_context = require("../../shared/ui/sdk_context");
|
|
8
|
-
var _use_watchable = _interopRequireDefault(require("../../shared/ui/use_watchable"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
1
|
/** @module @airtable/blocks/interface/ui: useRecords */ /** */
|
|
11
2
|
|
|
3
|
+
import { useSdk } from '../../shared/ui/sdk_context';
|
|
4
|
+
import useWatchable from '../../shared/ui/use_watchable';
|
|
12
5
|
/**
|
|
13
6
|
* A hook for working with all of the records (including cell values) in a
|
|
14
7
|
* particular table. Automatically handles loading data and updating
|
|
@@ -45,12 +38,12 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
45
38
|
* @docsPath UI/hooks/useRecords
|
|
46
39
|
* @hook
|
|
47
40
|
*/
|
|
48
|
-
function useRecords(table) {
|
|
41
|
+
export function useRecords(table) {
|
|
49
42
|
const {
|
|
50
43
|
base
|
|
51
|
-
} =
|
|
44
|
+
} = useSdk();
|
|
52
45
|
const recordStore = base.__getRecordStore(table.id);
|
|
53
|
-
(
|
|
46
|
+
useWatchable(recordStore, ['records', 'recordIds', 'cellValues', 'recordOrder']);
|
|
54
47
|
const records = recordStore.records;
|
|
55
48
|
return records;
|
|
56
49
|
}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useRunInfo = useRunInfo;
|
|
7
|
-
var _sdk_context = require("../../shared/ui/sdk_context");
|
|
8
1
|
/** @module @airtable/blocks/interface/ui: useRunInfo */ /** */
|
|
9
2
|
|
|
3
|
+
import { useSdk } from '../../shared/ui/sdk_context';
|
|
4
|
+
|
|
10
5
|
/**
|
|
11
6
|
* A hook for getting information about the current run context. This can be
|
|
12
7
|
* useful if you'd like to display some configuration options when the page
|
|
@@ -32,8 +27,8 @@ var _sdk_context = require("../../shared/ui/sdk_context");
|
|
|
32
27
|
* @docsPath UI/hooks/useRunInfo
|
|
33
28
|
* @hook
|
|
34
29
|
*/
|
|
35
|
-
function useRunInfo() {
|
|
36
|
-
const sdk =
|
|
30
|
+
export function useRunInfo() {
|
|
31
|
+
const sdk = useSdk();
|
|
37
32
|
const runContext = sdk.getBlockRunContext();
|
|
38
33
|
return {
|
|
39
34
|
isDevelopmentMode: sdk.runInfo.isDevelopmentMode,
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useSession = useSession;
|
|
7
|
-
var _use_session = _interopRequireDefault(require("../../shared/ui/use_session"));
|
|
8
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
1
|
/** @module @airtable/blocks/ui: useSession */ /** */
|
|
10
2
|
|
|
3
|
+
import useSessionInternal from '../../shared/ui/use_session';
|
|
11
4
|
/**
|
|
12
5
|
* A hook for connecting a React component to the current session. This returns a {@link Session}
|
|
13
6
|
* instance and will re-render your component whenever the session changes (e.g. when the current user's
|
|
@@ -35,6 +28,6 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
35
28
|
* @docsPath UI/hooks/useSession
|
|
36
29
|
* @hook
|
|
37
30
|
*/
|
|
38
|
-
function useSession() {
|
|
39
|
-
return (
|
|
31
|
+
export function useSession() {
|
|
32
|
+
return useSessionInternal();
|
|
40
33
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/** @module @airtable/blocks/ui: colorUtils */ /** */
|
|
2
|
+
import { getEnumValueIfExists, has } from './private_utils';
|
|
3
|
+
import Colors, { rgbTuplesByColor } from './colors';
|
|
4
|
+
|
|
5
|
+
/** A red/green/blue color object. Each property is a number from 0 to 255. */
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Utilities for working with {@link Color} names from the {@link colors} enum.
|
|
9
|
+
*
|
|
10
|
+
* @docsPath UI/utils/colorUtils
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
const colorUtils = {
|
|
14
|
+
getHexForColor: colorString => {
|
|
15
|
+
const color = getEnumValueIfExists(Colors, colorString);
|
|
16
|
+
if (!color) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const rgbTuple = rgbTuplesByColor[color];
|
|
20
|
+
const hexNumber = rgbTuple[0] << 16 | rgbTuple[1] << 8 | rgbTuple[2];
|
|
21
|
+
return `#${hexNumber.toString(16).padStart(6, '0')}`;
|
|
22
|
+
},
|
|
23
|
+
getRgbForColor: colorString => {
|
|
24
|
+
const color = getEnumValueIfExists(Colors, colorString);
|
|
25
|
+
if (!color) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
const rgbTuple = rgbTuplesByColor[color];
|
|
29
|
+
return {
|
|
30
|
+
r: rgbTuple[0],
|
|
31
|
+
g: rgbTuple[1],
|
|
32
|
+
b: rgbTuple[2]
|
|
33
|
+
};
|
|
34
|
+
},
|
|
35
|
+
shouldUseLightTextOnColor: colorString => {
|
|
36
|
+
if (!has(rgbTuplesByColor, colorString)) {
|
|
37
|
+
// Don't have a color for this. Let's just return false as a default
|
|
38
|
+
// instead of throwing.
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Light1 and Light2 colors use dark text.
|
|
43
|
+
// Bright, Dark1 and no suffix colors use light text.
|
|
44
|
+
// NOTE: use shouldUseDarkText instead of shouldUseLightText just to make
|
|
45
|
+
// checking the suffix easier, since no suffix uses light text.
|
|
46
|
+
const shouldUseDarkText = colorString.endsWith('Light1') || colorString.endsWith('Light2');
|
|
47
|
+
return !shouldUseDarkText;
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
export default colorUtils;
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.rgbTuplesByColor = exports.default = void 0;
|
|
7
1
|
/** @module @airtable/blocks/ui: colors */ /** */
|
|
8
2
|
|
|
9
3
|
/**
|
|
@@ -125,12 +119,14 @@ const Colors = {
|
|
|
125
119
|
/** @docsPath UI/utils/Colors */
|
|
126
120
|
YELLOW: 'yellow'
|
|
127
121
|
};
|
|
128
|
-
|
|
122
|
+
export default Colors;
|
|
123
|
+
|
|
129
124
|
/**
|
|
130
125
|
* A color name from the list of {@link Colors}.
|
|
131
126
|
*/
|
|
127
|
+
|
|
132
128
|
/** @hidden */
|
|
133
|
-
const rgbTuplesByColor =
|
|
129
|
+
export const rgbTuplesByColor = {
|
|
134
130
|
[Colors.BLUE_BRIGHT]: [45, 127, 249],
|
|
135
131
|
[Colors.BLUE_DARK_1]: [39, 80, 174],
|
|
136
132
|
[Colors.BLUE_LIGHT_1]: [156, 199, 255],
|
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.invariant = invariant;
|
|
7
|
-
exports.logErrorToSentry = logErrorToSentry;
|
|
8
|
-
exports.spawnAbstractMethodError = spawnAbstractMethodError;
|
|
9
|
-
exports.spawnError = spawnError;
|
|
10
|
-
exports.spawnUnknownSwitchCaseError = spawnUnknownSwitchCaseError;
|
|
11
1
|
// If errorOriginFn is specified, all frames above and including the call to errorOriginFn
|
|
12
2
|
// will be omitted from the stack trace.
|
|
13
3
|
/**
|
|
@@ -42,7 +32,7 @@ function spawnErrorWithOriginOmittedFromStackTrace(errorMessageFormat, errorMess
|
|
|
42
32
|
/**
|
|
43
33
|
* @hidden
|
|
44
34
|
*/
|
|
45
|
-
function spawnError(errorMessageFormat) {
|
|
35
|
+
export function spawnError(errorMessageFormat) {
|
|
46
36
|
for (var _len = arguments.length, errorMessageArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
47
37
|
errorMessageArgs[_key - 1] = arguments[_key];
|
|
48
38
|
}
|
|
@@ -55,7 +45,7 @@ function spawnError(errorMessageFormat) {
|
|
|
55
45
|
*
|
|
56
46
|
* @hidden
|
|
57
47
|
*/
|
|
58
|
-
function logErrorToSentry(errorMessage, metadata) {
|
|
48
|
+
export function logErrorToSentry(errorMessage, metadata) {
|
|
59
49
|
// See this comment for how to log via Sentry: https://github.com/Hyperbase/hyperbase/blob/2c5438ecaddcb9fa196e027e40df5e0c68c90989/client/run_block_frame.tsx#L333
|
|
60
50
|
const blocksErrorReporter = window.blocksErrorReporter;
|
|
61
51
|
if (blocksErrorReporter?.reportWarning) {
|
|
@@ -68,7 +58,7 @@ function logErrorToSentry(errorMessage, metadata) {
|
|
|
68
58
|
*
|
|
69
59
|
* @hidden
|
|
70
60
|
*/
|
|
71
|
-
function invariant(condition, errorMessageFormat) {
|
|
61
|
+
export function invariant(condition, errorMessageFormat) {
|
|
72
62
|
if (!condition) {
|
|
73
63
|
for (var _len2 = arguments.length, errorMessageArgs = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
|
|
74
64
|
errorMessageArgs[_key2 - 2] = arguments[_key2];
|
|
@@ -80,7 +70,7 @@ function invariant(condition, errorMessageFormat) {
|
|
|
80
70
|
/**
|
|
81
71
|
* @internal
|
|
82
72
|
*/
|
|
83
|
-
function spawnUnknownSwitchCaseError(valueDescription, providedValue, key) {
|
|
73
|
+
export function spawnUnknownSwitchCaseError(valueDescription, providedValue, key) {
|
|
84
74
|
const providedValueKey = providedValue[key];
|
|
85
75
|
const providedValueKeyString = providedValueKey !== null && providedValueKey !== undefined ? providedValueKey : 'null';
|
|
86
76
|
return spawnErrorWithOriginOmittedFromStackTrace('Unknown value %s for %s', [providedValueKeyString, valueDescription], spawnUnknownSwitchCaseError);
|
|
@@ -89,6 +79,6 @@ function spawnUnknownSwitchCaseError(valueDescription, providedValue, key) {
|
|
|
89
79
|
/**
|
|
90
80
|
* @internal
|
|
91
81
|
*/
|
|
92
|
-
function spawnAbstractMethodError() {
|
|
82
|
+
export function spawnAbstractMethodError() {
|
|
93
83
|
return spawnErrorWithOriginOmittedFromStackTrace('Abstract method', undefined, spawnAbstractMethodError);
|
|
94
84
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import getAirtableInterface from '../injected/airtable_interface';
|
|
2
|
+
/** @hidden */
|
|
3
|
+
export function trackEvent(eventSchemaName) {
|
|
4
|
+
let eventData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
5
|
+
getAirtableInterface().trackEvent(eventSchemaName, eventData);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Used for logging blockInstallation.performRecordAction event
|
|
10
|
+
* Mirrored from hyperbase block_installation_record_action_status.tsx
|
|
11
|
+
*
|
|
12
|
+
* @hidden
|
|
13
|
+
* */
|
|
14
|
+
export let RecordActionStatus = /*#__PURE__*/function (RecordActionStatus) {
|
|
15
|
+
RecordActionStatus["SUCCESS"] = "SUCCESS";
|
|
16
|
+
RecordActionStatus["IGNORED"] = "IGNORED";
|
|
17
|
+
RecordActionStatus["SETTINGS_INVALID"] = "SETTINGS_INVALID";
|
|
18
|
+
RecordActionStatus["TABLE_MISMATCH"] = "TABLE_MISMATCH";
|
|
19
|
+
return RecordActionStatus;
|
|
20
|
+
}({});
|
|
@@ -1,16 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _watchable = _interopRequireDefault(require("./watchable"));
|
|
8
|
-
var _error_utils = require("./error_utils");
|
|
9
|
-
var _mutations_core = require("./types/mutations_core");
|
|
10
|
-
var _private_utils = require("./private_utils");
|
|
11
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
1
|
/** @module @airtable/blocks: globalConfig */ /** */
|
|
13
2
|
|
|
3
|
+
import Watchable from './watchable';
|
|
4
|
+
import { spawnError } from './error_utils';
|
|
5
|
+
import { MutationTypesCore } from './types/mutations_core';
|
|
6
|
+
import { getValueAtOwnPath } from './private_utils';
|
|
7
|
+
|
|
14
8
|
/**
|
|
15
9
|
* You can watch any top-level key in global config. Use '*' to watch every change.
|
|
16
10
|
*/
|
|
@@ -40,7 +34,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
40
34
|
*
|
|
41
35
|
* @docsPath models/GlobalConfig
|
|
42
36
|
*/
|
|
43
|
-
class GlobalConfig extends
|
|
37
|
+
class GlobalConfig extends Watchable {
|
|
44
38
|
/** @internal */
|
|
45
39
|
static _className = 'GlobalConfig';
|
|
46
40
|
/** @internal */
|
|
@@ -123,9 +117,9 @@ class GlobalConfig extends _watchable.default {
|
|
|
123
117
|
const path = this._formatKeyAsPath(key);
|
|
124
118
|
const pathValidationResult = this._validatePath(path, this._kvStore);
|
|
125
119
|
if (!pathValidationResult.isValid) {
|
|
126
|
-
throw
|
|
120
|
+
throw spawnError('Invalid globalConfig path: %s', pathValidationResult.reason);
|
|
127
121
|
}
|
|
128
|
-
const value =
|
|
122
|
+
const value = getValueAtOwnPath(this._kvStore, path);
|
|
129
123
|
// value is returned as `unknown` from getValueAtOwnPath, but we know it must be a `GlobalConfigValue | void`
|
|
130
124
|
return value;
|
|
131
125
|
}
|
|
@@ -269,7 +263,7 @@ class GlobalConfig extends _watchable.default {
|
|
|
269
263
|
*/
|
|
270
264
|
checkPermissionsForSetPaths(updates) {
|
|
271
265
|
return this._sdk.__mutations.checkPermissionsForMutation({
|
|
272
|
-
type:
|
|
266
|
+
type: MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS,
|
|
273
267
|
updates: updates ? updates.map(_ref => {
|
|
274
268
|
let {
|
|
275
269
|
path,
|
|
@@ -357,16 +351,16 @@ class GlobalConfig extends _watchable.default {
|
|
|
357
351
|
// We check here, instead of deeper (e.g. on the liveapp side) so the user
|
|
358
352
|
// gets a more useful error stack trace.
|
|
359
353
|
if (!this.hasPermissionToSetPaths(updates)) {
|
|
360
|
-
throw
|
|
354
|
+
throw spawnError('Your permission level does not allow setting globalConfig values');
|
|
361
355
|
}
|
|
362
356
|
for (const update of updates) {
|
|
363
357
|
const pathValidation = this._validatePath(update.path, this._kvStore);
|
|
364
358
|
if (!pathValidation.isValid) {
|
|
365
|
-
throw
|
|
359
|
+
throw spawnError('Invalid globalConfig path: %s', pathValidation.reason);
|
|
366
360
|
}
|
|
367
361
|
}
|
|
368
362
|
await this._sdk.__mutations.applyMutationAsync({
|
|
369
|
-
type:
|
|
363
|
+
type: MutationTypesCore.SET_MULTIPLE_GLOBAL_CONFIG_PATHS,
|
|
370
364
|
updates
|
|
371
365
|
});
|
|
372
366
|
}
|
|
@@ -396,4 +390,4 @@ class GlobalConfig extends _watchable.default {
|
|
|
396
390
|
}
|
|
397
391
|
}
|
|
398
392
|
}
|
|
399
|
-
|
|
393
|
+
export default GlobalConfig;
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _error_utils = require("../error_utils");
|
|
8
|
-
var _watchable = _interopRequireDefault(require("../watchable"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
1
|
/** @module @airtable/blocks/models: Abstract models */ /** */
|
|
11
|
-
|
|
2
|
+
import { invariant, spawnError } from '../error_utils';
|
|
3
|
+
import Watchable from '../watchable';
|
|
12
4
|
/**
|
|
13
5
|
* Abstract superclass for all models. You won't use this class directly.
|
|
14
6
|
*
|
|
15
7
|
* @docsPath models/advanced/AbstractModel
|
|
16
8
|
*/
|
|
17
|
-
class AbstractModel extends
|
|
9
|
+
class AbstractModel extends Watchable {
|
|
18
10
|
/** @internal */
|
|
19
11
|
static _className = 'AbstractModel';
|
|
20
12
|
/**
|
|
@@ -41,7 +33,7 @@ class AbstractModel extends _watchable.default {
|
|
|
41
33
|
*/
|
|
42
34
|
constructor(sdk, modelId) {
|
|
43
35
|
super();
|
|
44
|
-
|
|
36
|
+
invariant(typeof modelId === 'string', '%s id should be a string', this.constructor._className);
|
|
45
37
|
this._sdk = sdk;
|
|
46
38
|
this._baseData = sdk.__airtableInterface.sdkInitData.baseData;
|
|
47
39
|
this._id = modelId;
|
|
@@ -82,7 +74,7 @@ class AbstractModel extends _watchable.default {
|
|
|
82
74
|
* @internal
|
|
83
75
|
*/
|
|
84
76
|
_spawnErrorForDeletion() {
|
|
85
|
-
return
|
|
77
|
+
return spawnError('%s has been deleted', this.constructor._className);
|
|
86
78
|
}
|
|
87
79
|
/**
|
|
88
80
|
* A string representation of the model for use in debugging.
|
|
@@ -91,4 +83,4 @@ class AbstractModel extends _watchable.default {
|
|
|
91
83
|
return `[${this.constructor._className} ${this.id}]`;
|
|
92
84
|
}
|
|
93
85
|
}
|
|
94
|
-
|
|
86
|
+
export default AbstractModel;
|
|
@@ -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
|
+
}
|