@airtable/blocks 0.0.0-experimental-20e3506bd-20250428 → 0.0.0-experimental-d5ee5e823-20250501
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/base/models/base.js +1 -1
- package/dist/cjs/base/models/create_aggregators.js +1 -1
- package/dist/cjs/base/models/cursor.js +2 -2
- package/dist/cjs/base/models/field.js +2 -2
- package/dist/cjs/base/models/record_coloring.js +2 -2
- package/dist/cjs/base/models/record_query_result.js +1 -1
- package/dist/cjs/base/models/session.js +4 -4
- package/dist/cjs/base/models/table.js +2 -2
- package/dist/cjs/base/models/view.js +1 -1
- package/dist/cjs/base/perform_record_action.js +1 -1
- package/dist/cjs/base/sdk.js +4 -1
- package/dist/cjs/base/settings_button.js +2 -2
- package/dist/cjs/base/types/view.js +1 -1
- package/dist/cjs/base/ui/base_provider.js +1 -1
- package/dist/cjs/base/ui/expand_record.js +1 -1
- package/dist/cjs/base/ui/expand_record_list.js +1 -1
- package/dist/cjs/base/ui/expand_record_picker_async.js +1 -1
- package/dist/cjs/base/ui/global_alert.js +1 -1
- package/dist/cjs/base/ui/initialize_block.js +18 -5
- package/dist/cjs/base/ui/progress_bar.js +1 -1
- package/dist/cjs/base/ui/ui.js +1 -1
- package/dist/cjs/base/ui/use_base.js +1 -1
- package/dist/cjs/base/ui/use_cursor.js +1 -1
- package/dist/cjs/{shared → base}/ui/use_loadable.js +6 -6
- package/dist/cjs/base/ui/use_record_action_data.js +2 -2
- package/dist/cjs/base/ui/use_records.js +5 -5
- package/dist/cjs/base/ui/use_session.js +1 -1
- package/dist/cjs/base/ui/use_settings_button.js +1 -1
- package/dist/cjs/base/ui/use_view_metadata.js +2 -2
- package/dist/cjs/base/ui/use_viewport.js +1 -1
- package/dist/cjs/base/ui/viewport_constraint.js +2 -2
- package/dist/cjs/base/viewport.js +1 -1
- package/dist/cjs/interface/models/models.js +53 -0
- package/dist/cjs/interface/sdk.js +0 -15
- package/dist/cjs/interface/ui/expand_record.js +2 -1
- package/dist/cjs/interface/ui/initialize_block.js +14 -4
- package/dist/cjs/interface/ui/ui.js +20 -8
- package/dist/cjs/interface/ui/use_custom_properties.js +52 -5
- package/dist/cjs/shared/colors.js +2 -2
- package/dist/cjs/shared/global_config.js +45 -40
- package/dist/cjs/shared/models/base_core.js +34 -11
- package/dist/cjs/shared/models/field_core.js +1 -1
- package/dist/cjs/shared/models/record_core.js +1 -1
- package/dist/cjs/shared/models/session_core.js +1 -1
- package/dist/cjs/shared/models/table_core.js +1 -1
- package/dist/cjs/shared/sdk_core.js +5 -5
- package/dist/cjs/shared/types/field.js +1 -1
- package/dist/cjs/shared/ui/remote_utils.js +3 -3
- package/dist/cjs/shared/ui/use_global_config.js +13 -8
- package/dist/cjs/shared/ui/use_synced.js +1 -1
- package/dist/cjs/shared/ui/use_watchable.js +3 -22
- package/dist/cjs/shared/ui/with_hooks.js +3 -3
- package/dist/types/src/base/models/base.d.ts +1 -1
- package/dist/types/src/base/models/create_aggregators.d.ts +1 -1
- package/dist/types/src/base/models/cursor.d.ts +2 -2
- package/dist/types/src/base/models/field.d.ts +2 -2
- package/dist/types/src/base/models/record_coloring.d.ts +2 -2
- package/dist/types/src/base/models/record_query_result.d.ts +1 -1
- package/dist/types/src/base/models/session.d.ts +4 -4
- package/dist/types/src/base/models/table.d.ts +2 -2
- package/dist/types/src/base/models/view.d.ts +1 -1
- package/dist/types/src/base/perform_record_action.d.ts +1 -1
- package/dist/types/src/base/sdk.d.ts.map +1 -1
- package/dist/types/src/base/settings_button.d.ts +2 -2
- package/dist/types/src/base/types/view.d.ts +1 -1
- package/dist/types/src/base/ui/base_provider.d.ts +1 -1
- package/dist/types/src/base/ui/expand_record.d.ts +1 -1
- package/dist/types/src/base/ui/expand_record_list.d.ts +1 -1
- package/dist/types/src/base/ui/expand_record_picker_async.d.ts +1 -1
- package/dist/types/src/base/ui/global_alert.d.ts +1 -1
- package/dist/types/src/base/ui/initialize_block.d.ts +1 -1
- package/dist/types/src/base/ui/initialize_block.d.ts.map +1 -1
- package/dist/types/src/base/ui/progress_bar.d.ts +1 -1
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts +1 -0
- package/dist/types/src/base/ui/types/tooltip_anchor_props.d.ts.map +1 -1
- package/dist/types/src/base/ui/ui.d.ts +1 -1
- package/dist/types/src/base/ui/ui.d.ts.map +1 -1
- package/dist/types/src/base/ui/use_base.d.ts +1 -1
- package/dist/types/src/base/ui/use_cursor.d.ts +1 -1
- package/dist/types/src/{shared → base}/ui/use_loadable.d.ts +3 -3
- package/dist/types/src/base/ui/use_loadable.d.ts.map +1 -0
- package/dist/types/src/base/ui/use_record_action_data.d.ts +1 -1
- package/dist/types/src/base/ui/use_session.d.ts +1 -1
- package/dist/types/src/base/ui/use_settings_button.d.ts +1 -1
- package/dist/types/src/base/ui/use_viewport.d.ts +1 -1
- package/dist/types/src/base/ui/viewport_constraint.d.ts +2 -2
- package/dist/types/src/base/viewport.d.ts +1 -1
- package/dist/types/src/interface/models/models.d.ts +8 -0
- package/dist/types/src/interface/models/models.d.ts.map +1 -0
- package/dist/types/src/interface/sdk.d.ts.map +1 -1
- package/dist/types/src/interface/ui/expand_record.d.ts +2 -1
- package/dist/types/src/interface/ui/expand_record.d.ts.map +1 -1
- package/dist/types/src/interface/ui/initialize_block.d.ts +30 -0
- 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_custom_properties.d.ts +52 -5
- package/dist/types/src/interface/ui/use_custom_properties.d.ts.map +1 -1
- package/dist/types/src/shared/color_utils.d.ts +3 -3
- package/dist/types/src/shared/colors.d.ts +2 -2
- package/dist/types/src/shared/global_config.d.ts +45 -40
- package/dist/types/src/shared/global_config.d.ts.map +1 -1
- package/dist/types/src/shared/models/base_core.d.ts +34 -11
- package/dist/types/src/shared/models/base_core.d.ts.map +1 -1
- package/dist/types/src/shared/models/field_core.d.ts +1 -1
- package/dist/types/src/shared/models/session_core.d.ts +1 -1
- package/dist/types/src/shared/private_utils.d.ts +1 -1
- package/dist/types/src/shared/private_utils.d.ts.map +1 -1
- package/dist/types/src/shared/sdk_core.d.ts +4 -4
- package/dist/types/src/shared/types/field.d.ts +1 -1
- package/dist/types/src/shared/ui/remote_utils.d.ts +3 -3
- package/dist/types/src/shared/ui/use_global_config.d.ts +13 -8
- 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_watchable.d.ts +3 -22
- package/dist/types/src/shared/ui/use_watchable.d.ts.map +1 -1
- package/dist/types/src/shared/ui/with_hooks.d.ts +3 -3
- package/dist/types/stories/collaborator_token.stories.d.ts.map +1 -1
- package/package.json +16 -12
- package/dist/types/src/shared/ui/use_loadable.d.ts.map +0 -1
- package/ui.d.ts +0 -1
- package/ui.js +0 -1
- package/unstable_private_utils.d.ts +0 -1
- package/unstable_private_utils.js +0 -1
- package/unstable_standalone_ui.d.ts +0 -1
- package/unstable_standalone_ui.js +0 -1
- package/unstable_testing_utils.d.ts +0 -1
- package/unstable_testing_utils.js +0 -1
|
@@ -49,7 +49,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
49
49
|
*
|
|
50
50
|
* @example
|
|
51
51
|
* ```js
|
|
52
|
-
* import {base} from '@airtable/blocks';
|
|
52
|
+
* import {base} from '@airtable/blocks/base';
|
|
53
53
|
*
|
|
54
54
|
* console.log('The name of your base is', base.name);
|
|
55
55
|
* ```
|
|
@@ -25,7 +25,7 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
|
|
|
25
25
|
*
|
|
26
26
|
* @example
|
|
27
27
|
* ```js
|
|
28
|
-
* import {aggregators} from '@airtable/blocks/models';
|
|
28
|
+
* import {aggregators} from '@airtable/blocks/base/models';
|
|
29
29
|
*
|
|
30
30
|
* // To get a list of aggregators supported for a specific field:
|
|
31
31
|
* const fieldAggregators = myField.availableAggregators;
|
|
@@ -62,7 +62,7 @@ var WatchableCursorKeys = Object.freeze({
|
|
|
62
62
|
* {@link useLoadable} to access them.
|
|
63
63
|
*
|
|
64
64
|
* ```js
|
|
65
|
-
* import {useCursor, useWatchable} from '@airtable/blocks/ui';
|
|
65
|
+
* import {useCursor, useWatchable} from '@airtable/blocks/base/ui';
|
|
66
66
|
*
|
|
67
67
|
* function ActiveTableAndView() {
|
|
68
68
|
* const cursor = useCursor();
|
|
@@ -78,7 +78,7 @@ var WatchableCursorKeys = Object.freeze({
|
|
|
78
78
|
* ```
|
|
79
79
|
*
|
|
80
80
|
* ```js
|
|
81
|
-
* import {useCursor, useLoadable, useWatchable} from '@airtable/blocks/ui';
|
|
81
|
+
* import {useCursor, useLoadable, useWatchable} from '@airtable/blocks/base/ui';
|
|
82
82
|
*
|
|
83
83
|
* function SelectedRecordAndFieldIds() {
|
|
84
84
|
* const cursor = useCursor();
|
|
@@ -28,7 +28,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
28
28
|
*
|
|
29
29
|
* @example
|
|
30
30
|
* ```js
|
|
31
|
-
* import {base} from '@airtable/blocks';
|
|
31
|
+
* import {base} from '@airtable/blocks/base';
|
|
32
32
|
*
|
|
33
33
|
* const table = base.getTableByName('Table 1');
|
|
34
34
|
* const field = table.getFieldByName('Name');
|
|
@@ -74,7 +74,7 @@ var Field = /*#__PURE__*/function (_FieldCore) {
|
|
|
74
74
|
* @param aggregator The aggregator object or aggregator key.
|
|
75
75
|
* @example
|
|
76
76
|
* ```js
|
|
77
|
-
* import {aggregators} from '@airtable/blocks/models';
|
|
77
|
+
* import {aggregators} from '@airtable/blocks/base/models';
|
|
78
78
|
* const aggregator = aggregators.totalAttachmentSize;
|
|
79
79
|
*
|
|
80
80
|
* // Using an aggregator object
|
|
@@ -56,8 +56,8 @@ var serialize = mode => {
|
|
|
56
56
|
* @alias recordColoring.modes
|
|
57
57
|
* @example
|
|
58
58
|
* ```js
|
|
59
|
-
* import {recordColoring} from '@airtable/blocks/models';
|
|
60
|
-
* import {useRecords} from '@airtable/blocks/ui';
|
|
59
|
+
* import {recordColoring} from '@airtable/blocks/base/models';
|
|
60
|
+
* import {useRecords} from '@airtable/blocks/base/ui';
|
|
61
61
|
*
|
|
62
62
|
* // no record coloring:
|
|
63
63
|
* const recordColorMode = recordColoring.modes.none();
|
|
@@ -128,7 +128,7 @@ var WatchableCellValuesInFieldKeyPrefix = 'cellValuesInField:';
|
|
|
128
128
|
* supported record color modes: none, by a view, and by a select field.
|
|
129
129
|
*
|
|
130
130
|
* ```js
|
|
131
|
-
* import {recordColoring} from '@airtable/blocks/models';
|
|
131
|
+
* import {recordColoring} from '@airtable/blocks/base/models';
|
|
132
132
|
* // No record coloring:
|
|
133
133
|
* const opts = {
|
|
134
134
|
* recordColorMode: recordColoring.modes.none(),
|
|
@@ -20,7 +20,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
20
20
|
*
|
|
21
21
|
* @example
|
|
22
22
|
* ```js
|
|
23
|
-
* import {useSession} from '@airtable/blocks/ui';
|
|
23
|
+
* import {useSession} from '@airtable/blocks/base/ui';
|
|
24
24
|
*
|
|
25
25
|
* function Username() {
|
|
26
26
|
* const session = useSession();
|
|
@@ -53,7 +53,7 @@ var Session = /*#__PURE__*/function (_SessionCore) {
|
|
|
53
53
|
*
|
|
54
54
|
* @example
|
|
55
55
|
* ```js
|
|
56
|
-
* import {useSession} from '@airtable/blocks/ui';
|
|
56
|
+
* import {useSession} from '@airtable/blocks/base/ui';
|
|
57
57
|
*
|
|
58
58
|
* function UpdateButton({onClick}) {
|
|
59
59
|
* const session = useSession();
|
|
@@ -96,7 +96,7 @@ var Session = /*#__PURE__*/function (_SessionCore) {
|
|
|
96
96
|
*
|
|
97
97
|
* @example
|
|
98
98
|
* ```js
|
|
99
|
-
* import {useSession} from '@airtable/blocks/ui';
|
|
99
|
+
* import {useSession} from '@airtable/blocks/base/ui';
|
|
100
100
|
*
|
|
101
101
|
* function CreateButton({onClick}) {
|
|
102
102
|
* const session = useSession();
|
|
@@ -141,7 +141,7 @@ var Session = /*#__PURE__*/function (_SessionCore) {
|
|
|
141
141
|
*
|
|
142
142
|
* @example
|
|
143
143
|
* ```js
|
|
144
|
-
* import {useSession} from '@airtable/blocks/ui';
|
|
144
|
+
* import {useSession} from '@airtable/blocks/base/ui';
|
|
145
145
|
*
|
|
146
146
|
* function DeleteButton({onClick}) {
|
|
147
147
|
* const session = useSession();
|
|
@@ -309,7 +309,7 @@ var Table = /*#__PURE__*/function (_TableCore) {
|
|
|
309
309
|
* @param opts Options for the query, such as sorts and fields.
|
|
310
310
|
* @example
|
|
311
311
|
* ```js
|
|
312
|
-
* import {useBase, useRecords} from '@airtable/blocks/ui';
|
|
312
|
+
* import {useBase, useRecords} from '@airtable/blocks/base/ui';
|
|
313
313
|
* import React from 'react';
|
|
314
314
|
*
|
|
315
315
|
* function TodoList() {
|
|
@@ -391,7 +391,7 @@ var Table = /*#__PURE__*/function (_TableCore) {
|
|
|
391
391
|
* correct type, that view will be returned before checking the other views in the table.
|
|
392
392
|
* @example
|
|
393
393
|
* ```js
|
|
394
|
-
* import {ViewType} from '@airtable/blocks/models';
|
|
394
|
+
* import {ViewType} from '@airtable/blocks/base/models';
|
|
395
395
|
* const firstCalendarView = myTable.getFirstViewOfType(ViewType.CALENDAR);
|
|
396
396
|
* if (firstCalendarView !== null) {
|
|
397
397
|
* console.log(firstCalendarView.name);
|
|
@@ -165,7 +165,7 @@ var View = /*#__PURE__*/function (_AbstractModel) {
|
|
|
165
165
|
* default, records will be coloured according to the view.
|
|
166
166
|
* @example
|
|
167
167
|
* ```js
|
|
168
|
-
* import {useBase, useRecords} from '@airtable/blocks/
|
|
168
|
+
* import {useBase, useRecords} from '@airtable/blocks/base/ui';
|
|
169
169
|
* import React from 'react';
|
|
170
170
|
*
|
|
171
171
|
* function TodoList() {
|
|
@@ -209,7 +209,7 @@ var PerformRecordAction = exports.PerformRecordAction = /*#__PURE__*/function (_
|
|
|
209
209
|
* @example
|
|
210
210
|
* ```js
|
|
211
211
|
* import React, {useEffect, useState} from 'react';
|
|
212
|
-
* import {registerRecordActionDataCallback} from '@airtable/blocks/ui';
|
|
212
|
+
* import {registerRecordActionDataCallback} from '@airtable/blocks/base/ui';
|
|
213
213
|
*
|
|
214
214
|
* function LatestRecordAction() {
|
|
215
215
|
* const [recordActionData, setRecordActionData] = useState(null);
|
package/dist/cjs/base/sdk.js
CHANGED
|
@@ -86,13 +86,16 @@ var BaseBlockSdk = exports.default = /*#__PURE__*/function (_BlockSdkCore) {
|
|
|
86
86
|
// We set _runWithUpdateBatching to ReactDOM.unstable_batchedUpdates to facilitate this. We
|
|
87
87
|
// don't know for sure though that React is in use on the page, so we leave actually setting
|
|
88
88
|
// this when the developer sets up their block with React, in UI.initializeBlock.
|
|
89
|
+
//
|
|
90
|
+
// This can be eliminated if we stop supporting versions of React below 18. In React 18,
|
|
91
|
+
// updates are always batched by default.
|
|
89
92
|
/** @internal */
|
|
90
93
|
(0, _defineProperty2.default)(_this, "_runWithUpdateBatching", defaultUpdateBatcher);
|
|
91
94
|
var sdkInitData = airtableInterface.sdkInitData;
|
|
92
95
|
|
|
93
96
|
// Bind the public methods on this class so users can import
|
|
94
97
|
// just the method, e.g.
|
|
95
|
-
// import {reload} from '@airtable/blocks';
|
|
98
|
+
// import {reload} from '@airtable/blocks/base';
|
|
96
99
|
_this.unstable_fetchAsync = _this.unstable_fetchAsync.bind(_this);
|
|
97
100
|
_this.viewport = new _viewport.default(sdkInitData.isFullscreen, airtableInterface);
|
|
98
101
|
_this.cursor = new _cursor.default(_this);
|
|
@@ -35,8 +35,8 @@ var WatchableSettingsButtonKeys = Object.freeze({
|
|
|
35
35
|
* @alias settingsButton
|
|
36
36
|
* @example
|
|
37
37
|
* ```js
|
|
38
|
-
* import {settingsButton} from '@airtable/blocks';
|
|
39
|
-
* import {useWatchable} from '@airtable/blocks/ui';
|
|
38
|
+
* import {settingsButton} from '@airtable/blocks/base';
|
|
39
|
+
* import {useWatchable} from '@airtable/blocks/base/ui';
|
|
40
40
|
*
|
|
41
41
|
* function AppWithSettings({shouldShowSettingsButton}) {
|
|
42
42
|
* useEffect(() => {
|
|
@@ -11,7 +11,7 @@ exports.ViewType = void 0;
|
|
|
11
11
|
*
|
|
12
12
|
* @example
|
|
13
13
|
* ```js
|
|
14
|
-
* import {ViewType} from '@airtable/blocks/models';
|
|
14
|
+
* import {ViewType} from '@airtable/blocks/base/models';
|
|
15
15
|
* const gridViews = myTable.views.filter(view => (
|
|
16
16
|
* view.type === ViewType.GRID
|
|
17
17
|
* ));
|
|
@@ -26,7 +26,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
26
26
|
* ```js
|
|
27
27
|
* import React from 'react';
|
|
28
28
|
* import ReactDOM from 'react-dom';
|
|
29
|
-
* import {BaseProvider} from '@airtable/blocks/ui';
|
|
29
|
+
* import {BaseProvider} from '@airtable/blocks/base/ui';
|
|
30
30
|
*
|
|
31
31
|
* function getHtmlStringForRecordCard(base, record) {
|
|
32
32
|
* return ReactDOM.renderToStaticMarkup(
|
|
@@ -19,7 +19,7 @@ require("core-js/modules/es.array.map.js");
|
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* ```js
|
|
22
|
-
* import {expandRecord} from '@airtable/blocks/ui';
|
|
22
|
+
* import {expandRecord} from '@airtable/blocks/base/ui';
|
|
23
23
|
* expandRecord(record1, {
|
|
24
24
|
* records: [record1, record2, record3],
|
|
25
25
|
* });
|
|
@@ -20,7 +20,7 @@ var _error_utils = require("../../shared/error_utils");
|
|
|
20
20
|
*
|
|
21
21
|
* @example
|
|
22
22
|
* ```js
|
|
23
|
-
* import {expandRecordList} from '@airtable/blocks/ui';
|
|
23
|
+
* import {expandRecordList} from '@airtable/blocks/base/ui';
|
|
24
24
|
* expandRecordList([record1, record2, record3]);
|
|
25
25
|
*
|
|
26
26
|
* expandRecordList([record1, record2], {
|
|
@@ -28,7 +28,7 @@ var _error_utils = require("../../shared/error_utils");
|
|
|
28
28
|
* @param opts An optional options object.
|
|
29
29
|
* @example
|
|
30
30
|
* ```js
|
|
31
|
-
* import {expandRecordPickerAsync} from '@airtable/blocks/ui';
|
|
31
|
+
* import {expandRecordPickerAsync} from '@airtable/blocks/base/ui';
|
|
32
32
|
*
|
|
33
33
|
* async function pickRecordsAsync() {
|
|
34
34
|
* const recordA = await expandRecordPickerAsync([record1, record2, record3]);
|
|
@@ -38,7 +38,7 @@ var hasBeenInitialized = false;
|
|
|
38
38
|
*
|
|
39
39
|
* @example
|
|
40
40
|
* ```js
|
|
41
|
-
* import {initializeBlock} from '@airtable/blocks/ui';
|
|
41
|
+
* import {initializeBlock} from '@airtable/blocks/base/ui';
|
|
42
42
|
* import React from 'react';
|
|
43
43
|
*
|
|
44
44
|
* function App() {
|
|
@@ -105,12 +105,25 @@ function initializeBlock(getEntryElement) {
|
|
|
105
105
|
if (! /*#__PURE__*/React.isValidElement(entryElement)) {
|
|
106
106
|
throw (0, _error_utils.spawnError)("The first argument to initializeBlock didn't return a valid React element");
|
|
107
107
|
}
|
|
108
|
-
|
|
108
|
+
if (_reactDom.default.unstable_batchedUpdates) {
|
|
109
|
+
sdk.__setBatchedUpdatesFn(_reactDom.default.unstable_batchedUpdates);
|
|
110
|
+
}
|
|
109
111
|
var container = document.createElement('div');
|
|
110
112
|
body.appendChild(container);
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
113
|
+
|
|
114
|
+
// Try to use createRoot API (React 18+)
|
|
115
|
+
try {
|
|
116
|
+
var _require = require('react-dom/client'),
|
|
117
|
+
createRoot = _require.createRoot;
|
|
118
|
+
createRoot(container).render( /*#__PURE__*/React.createElement(_block_wrapper.default, {
|
|
119
|
+
sdk: sdk
|
|
120
|
+
}, entryElement));
|
|
121
|
+
} catch (e) {
|
|
122
|
+
// Fallback to legacy render for React 16/17
|
|
123
|
+
_reactDom.default.render( /*#__PURE__*/React.createElement(_block_wrapper.default, {
|
|
124
|
+
sdk: sdk
|
|
125
|
+
}, entryElement), container);
|
|
126
|
+
}
|
|
114
127
|
}
|
|
115
128
|
var sdk;
|
|
116
129
|
|
package/dist/cjs/base/ui/ui.js
CHANGED
|
@@ -339,7 +339,7 @@ var _switch_synced = _interopRequireDefault(require("./switch_synced"));
|
|
|
339
339
|
var _viewport_constraint = _interopRequireDefault(require("./viewport_constraint"));
|
|
340
340
|
var _initialize_block = require("./initialize_block");
|
|
341
341
|
var _with_hooks = _interopRequireDefault(require("../../shared/ui/with_hooks"));
|
|
342
|
-
var _use_loadable = _interopRequireDefault(require("
|
|
342
|
+
var _use_loadable = _interopRequireDefault(require("./use_loadable"));
|
|
343
343
|
var _use_records = require("./use_records");
|
|
344
344
|
var _use_base = _interopRequireDefault(require("./use_base"));
|
|
345
345
|
var _use_cursor = _interopRequireDefault(require("./use_cursor"));
|
|
@@ -22,7 +22,7 @@ var _use_base = _interopRequireDefault(require("../../shared/ui/use_base"));
|
|
|
22
22
|
*
|
|
23
23
|
* @example
|
|
24
24
|
* ```js
|
|
25
|
-
* import {useBase} from '@airtable/blocks/ui';
|
|
25
|
+
* import {useBase} from '@airtable/blocks/base/ui';
|
|
26
26
|
*
|
|
27
27
|
* // renders a list of tables and automatically updates
|
|
28
28
|
* function TableList() {
|
|
@@ -22,7 +22,7 @@ var _sdk_context = require("../../shared/ui/sdk_context");
|
|
|
22
22
|
*
|
|
23
23
|
* @example
|
|
24
24
|
* ```js
|
|
25
|
-
* import {useBase, useCursor} from '@airtable/blocks/ui';
|
|
25
|
+
* import {useBase, useCursor} from '@airtable/blocks/base/ui';
|
|
26
26
|
*
|
|
27
27
|
* // renders a list of tables and automatically updates
|
|
28
28
|
* function TableList() {
|
|
@@ -18,9 +18,9 @@ require("core-js/modules/es.regexp.to-string.js");
|
|
|
18
18
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
19
19
|
var _react = require("react");
|
|
20
20
|
var _useSubscription = require("use-subscription");
|
|
21
|
-
var _private_utils = require("
|
|
22
|
-
var _error_utils = require("
|
|
23
|
-
var _use_array_identity = _interopRequireDefault(require("
|
|
21
|
+
var _private_utils = require("../../shared/private_utils");
|
|
22
|
+
var _error_utils = require("../../shared/error_utils");
|
|
23
|
+
var _use_array_identity = _interopRequireDefault(require("../../shared/ui/use_array_identity"));
|
|
24
24
|
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
25
25
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
26
26
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } /** @module @airtable/blocks/ui: useLoadable */ /** */
|
|
@@ -64,7 +64,7 @@ var SUSPENSE_CLEAN_UP_MS = 60000;
|
|
|
64
64
|
*
|
|
65
65
|
* @example
|
|
66
66
|
* ```js
|
|
67
|
-
* import {useCursor, useLoadable, useWatchable} from '@airtable/blocks/ui';
|
|
67
|
+
* import {useCursor, useLoadable, useWatchable} from '@airtable/blocks/base/ui';
|
|
68
68
|
*
|
|
69
69
|
* function SelectedRecordIds() {
|
|
70
70
|
* const cursor = useCursor();
|
|
@@ -81,7 +81,7 @@ var SUSPENSE_CLEAN_UP_MS = 60000;
|
|
|
81
81
|
*
|
|
82
82
|
* @example
|
|
83
83
|
* ```js
|
|
84
|
-
* import {useLoadable} from '@airtable/blocks/ui';
|
|
84
|
+
* import {useLoadable} from '@airtable/blocks/base/ui';
|
|
85
85
|
*
|
|
86
86
|
* function LoadTwoQueryResults({queryResultA, queryResultB}) {
|
|
87
87
|
* // load the queryResults:
|
|
@@ -94,7 +94,7 @@ var SUSPENSE_CLEAN_UP_MS = 60000;
|
|
|
94
94
|
*
|
|
95
95
|
* @example
|
|
96
96
|
* ```js
|
|
97
|
-
* import {useLoadable, useBase} from '@airtable/blocks/ui';
|
|
97
|
+
* import {useLoadable, useBase} from '@airtable/blocks/base/ui';
|
|
98
98
|
*
|
|
99
99
|
* function LoadAllRecords() {
|
|
100
100
|
* const base = useBase();
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = useRecordActionData;
|
|
8
8
|
var _perform_record_action = require("../perform_record_action");
|
|
9
|
-
var _use_loadable = _interopRequireDefault(require("../../shared/ui/use_loadable"));
|
|
10
9
|
var _use_watchable = _interopRequireDefault(require("../../shared/ui/use_watchable"));
|
|
11
10
|
var _sdk_context = require("../../shared/ui/sdk_context");
|
|
11
|
+
var _use_loadable = _interopRequireDefault(require("./use_loadable"));
|
|
12
12
|
/** @module @airtable/blocks/ui: useRecordActionData */ /** */
|
|
13
13
|
|
|
14
14
|
/**
|
|
@@ -39,7 +39,7 @@ var _sdk_context = require("../../shared/ui/sdk_context");
|
|
|
39
39
|
* @example
|
|
40
40
|
* ```js
|
|
41
41
|
* import React from 'react';
|
|
42
|
-
* import {useRecordActionData} from '@airtable/blocks/ui';
|
|
42
|
+
* import {useRecordActionData} from '@airtable/blocks/base/ui';
|
|
43
43
|
*
|
|
44
44
|
* function LatestRecordAction() {
|
|
45
45
|
* const recordActionData = useRecordActionData();
|
|
@@ -17,8 +17,8 @@ var _table = _interopRequireDefault(require("../models/table"));
|
|
|
17
17
|
var _record_query_result = _interopRequireDefault(require("../models/record_query_result"));
|
|
18
18
|
var RecordColoring = _interopRequireWildcard(require("../models/record_coloring"));
|
|
19
19
|
var _view = _interopRequireDefault(require("../models/view"));
|
|
20
|
-
var _use_loadable = _interopRequireDefault(require("../../shared/ui/use_loadable"));
|
|
21
20
|
var _use_watchable = _interopRequireDefault(require("../../shared/ui/use_watchable"));
|
|
21
|
+
var _use_loadable = _interopRequireDefault(require("./use_loadable"));
|
|
22
22
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
23
23
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
24
24
|
/** @module @airtable/blocks/ui: useRecords */ /** */
|
|
@@ -74,7 +74,7 @@ function useUnwatchedRecordQueryResult_(tableOrViewOrQueryResult, functionNameFo
|
|
|
74
74
|
* @param opts? If passing a Table or View, optional {@link RecordIdsQueryResultOpts} to control the results.
|
|
75
75
|
* @example
|
|
76
76
|
* ```js
|
|
77
|
-
* import {useRecordIds, useBase} from '@airtable/blocks/ui';
|
|
77
|
+
* import {useRecordIds, useBase} from '@airtable/blocks/base/ui';
|
|
78
78
|
*
|
|
79
79
|
* function RecordCount() {
|
|
80
80
|
* const base = useBase();
|
|
@@ -128,7 +128,7 @@ function useRecordIds(tableOrViewOrQueryResult, opts) {
|
|
|
128
128
|
* @param opts? If passing a Table or View, optional {@link RecordQueryResultOpts} to control the results.
|
|
129
129
|
* @example
|
|
130
130
|
* ```js
|
|
131
|
-
* import {useRecords, useBase} from '@airtable/blocks/ui';
|
|
131
|
+
* import {useRecords, useBase} from '@airtable/blocks/base/ui';
|
|
132
132
|
*
|
|
133
133
|
* function GetRecords() {
|
|
134
134
|
* const base = useBase();
|
|
@@ -161,7 +161,7 @@ function useRecordIds(tableOrViewOrQueryResult, opts) {
|
|
|
161
161
|
*
|
|
162
162
|
* @example
|
|
163
163
|
* ```js
|
|
164
|
-
* import {useRecords, useBase} from '@airtable/blocks/ui';
|
|
164
|
+
* import {useRecords, useBase} from '@airtable/blocks/base/ui';
|
|
165
165
|
*
|
|
166
166
|
* function RecordList() {
|
|
167
167
|
* const base = useBase();
|
|
@@ -213,7 +213,7 @@ function useRecords(tableOrViewOrQueryResult, opts) {
|
|
|
213
213
|
* @param opts? If passing a Table or View, optional {@link SingleRecordQueryResultOpts} to control the results.
|
|
214
214
|
* @example
|
|
215
215
|
* ```js
|
|
216
|
-
* import {useRecordById, useRecordIds, useBase} from '@airtable/blocks/ui';
|
|
216
|
+
* import {useRecordById, useRecordIds, useBase} from '@airtable/blocks/base/ui';
|
|
217
217
|
*
|
|
218
218
|
* // this component concerns a single record - it only updates when that specific record updates
|
|
219
219
|
* function RecordListItem({table, recordId}) {
|
|
@@ -19,7 +19,7 @@ var _use_session = _interopRequireDefault(require("../../shared/ui/use_session")
|
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* ```js
|
|
22
|
-
* import {CollaboratorToken, useSession} from '@airtable/blocks/ui';
|
|
22
|
+
* import {CollaboratorToken, useSession} from '@airtable/blocks/base/ui';
|
|
23
23
|
*
|
|
24
24
|
* // Says hello to the current user and updates in realtime if the current user's
|
|
25
25
|
* // name or profile pic changes.
|
|
@@ -19,7 +19,7 @@ var _sdk_context = require("../../shared/ui/sdk_context");
|
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* ```js
|
|
22
|
-
* import {useSettingsButton} from '@airtable/blocks/ui';
|
|
22
|
+
* import {useSettingsButton} from '@airtable/blocks/base/ui';
|
|
23
23
|
* import {useState} from 'react';
|
|
24
24
|
*
|
|
25
25
|
* function ComponentWithSettings() {
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _view = _interopRequireDefault(require("../models/view"));
|
|
9
|
-
var _use_loadable = _interopRequireDefault(require("../../shared/ui/use_loadable"));
|
|
10
9
|
var _use_watchable = _interopRequireDefault(require("../../shared/ui/use_watchable"));
|
|
10
|
+
var _use_loadable = _interopRequireDefault(require("./use_loadable"));
|
|
11
11
|
/** @module @airtable/blocks/ui: useViewMetadata */ /** */
|
|
12
12
|
|
|
13
13
|
/** */
|
|
@@ -23,7 +23,7 @@ var _use_watchable = _interopRequireDefault(require("../../shared/ui/use_watchab
|
|
|
23
23
|
* @param viewOrViewMetadataQueryResult The {@link View} or {@link ViewMetadataQueryResult} to watch and use metadata from.
|
|
24
24
|
* @example
|
|
25
25
|
* ```js
|
|
26
|
-
* import {useBase, useViewMetadata} from '@airtable/blocks/ui';
|
|
26
|
+
* import {useBase, useViewMetadata} from '@airtable/blocks/base/ui';
|
|
27
27
|
*
|
|
28
28
|
* function ViewFields({view}) {
|
|
29
29
|
* const viewMetadata = useViewMetadata(view);
|
|
@@ -15,7 +15,7 @@ var _sdk_context = require("../../shared/ui/sdk_context");
|
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```js
|
|
18
|
-
* import {useViewport} from '@airtable/blocks/ui';
|
|
18
|
+
* import {useViewport} from '@airtable/blocks/base/ui';
|
|
19
19
|
*
|
|
20
20
|
* function ViewportSize() {
|
|
21
21
|
* const viewport = useViewport();
|
|
@@ -43,13 +43,13 @@ var didSizeChange = (prev, next) => (prev && prev.width) !== (next && next.width
|
|
|
43
43
|
*
|
|
44
44
|
* @example
|
|
45
45
|
* ```js
|
|
46
|
-
* import {ViewportConstraint} from '@airtable/blocks/ui';
|
|
46
|
+
* import {ViewportConstraint} from '@airtable/blocks/base/ui';
|
|
47
47
|
* <ViewportConstraint minSize={{width: 400}} />
|
|
48
48
|
* ```
|
|
49
49
|
*
|
|
50
50
|
* @example
|
|
51
51
|
* ```js
|
|
52
|
-
* import {ViewportConstraint} from '@airtable/blocks/ui';
|
|
52
|
+
* import {ViewportConstraint} from '@airtable/blocks/base/ui';
|
|
53
53
|
* <ViewportConstraint maxFullScreenSize={{width: 600, height: 400}}>
|
|
54
54
|
* <div>I need a max fullscreen size!</div>
|
|
55
55
|
* </ViewportConstraint>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Base", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _base.Base;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "Field", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _field2.Field;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "FieldConfig", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _field.FieldConfig;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "FieldType", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _field.FieldType;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "Record", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function get() {
|
|
33
|
+
return _record.Record;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "Session", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function get() {
|
|
39
|
+
return _session.Session;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "Table", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function get() {
|
|
45
|
+
return _table.Table;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
var _field = require("../../shared/types/field");
|
|
49
|
+
var _base = require("./base");
|
|
50
|
+
var _table = require("./table");
|
|
51
|
+
var _field2 = require("./field");
|
|
52
|
+
var _record = require("./record");
|
|
53
|
+
var _session = require("./session");
|
|
@@ -16,12 +16,6 @@ var _mutations = require("./models/mutations");
|
|
|
16
16
|
var _base = require("./models/base");
|
|
17
17
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
18
18
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
19
|
-
// /** Add hidden annotation if uncommenting */
|
|
20
|
-
// type UpdateBatcher = (applyUpdates: () => void) => void;
|
|
21
|
-
// /** Add internal annotation if uncommenting */
|
|
22
|
-
// function defaultUpdateBatcher(applyUpdates: () => void) {
|
|
23
|
-
// applyUpdates();
|
|
24
|
-
// }
|
|
25
19
|
/** @hidden */
|
|
26
20
|
var InterfaceBlockSdk = exports.InterfaceBlockSdk = /*#__PURE__*/function (_BlockSdkCore) {
|
|
27
21
|
function InterfaceBlockSdk(airtableInterface) {
|
|
@@ -70,27 +64,18 @@ var InterfaceBlockSdk = exports.InterfaceBlockSdk = /*#__PURE__*/function (_Bloc
|
|
|
70
64
|
}, {
|
|
71
65
|
key: "__applyModelChanges",
|
|
72
66
|
value: function __applyModelChanges(changes) {
|
|
73
|
-
// this._runWithUpdateBatching(() => {
|
|
74
67
|
var changedBasePaths = this.base.__applyChangesWithoutTriggeringEvents(changes);
|
|
75
68
|
var changedSessionKeys = this.session.__applyChangesWithoutTriggeringEvents(changes);
|
|
76
69
|
this.base.__triggerOnChangeForChangedPaths(changedBasePaths);
|
|
77
70
|
this.session.__triggerOnChangeForChangedKeys(changedSessionKeys);
|
|
78
|
-
// });
|
|
79
71
|
}
|
|
80
72
|
/** @internal */
|
|
81
73
|
}, {
|
|
82
74
|
key: "__applyGlobalConfigUpdates",
|
|
83
75
|
value: function __applyGlobalConfigUpdates(updates) {
|
|
84
|
-
// this._runWithUpdateBatching(() => {
|
|
85
76
|
this.globalConfig.__setMultipleKvPaths(updates);
|
|
86
|
-
// });
|
|
87
77
|
}
|
|
88
78
|
|
|
89
|
-
// /** @internal */
|
|
90
|
-
// __setBatchedUpdatesFn(newUpdateBatcher: UpdateBatcher) {
|
|
91
|
-
// this._runWithUpdateBatching = newUpdateBatcher;
|
|
92
|
-
// }
|
|
93
|
-
|
|
94
79
|
/**
|
|
95
80
|
* @internal
|
|
96
81
|
*/
|
|
@@ -14,7 +14,8 @@ exports.expandRecord = expandRecord;
|
|
|
14
14
|
* @example
|
|
15
15
|
* ```js
|
|
16
16
|
* import {expandRecord} from '@airtable/blocks/interface/ui';
|
|
17
|
-
*
|
|
17
|
+
*
|
|
18
|
+
* <button onClick={() => expandRecord(record)}>{record.name}</button>
|
|
18
19
|
* ```
|
|
19
20
|
* @docsPath UI/utils/expandRecord
|
|
20
21
|
*/
|