Sep 14, 2020 05:59 AM
Hi,
Thank you for your participation in the Custom Blocks Beta! We have some big updates about Custom Blocks that we’re excited to share with you today. (Airtable has also launched several other new features today—you can check them out in our community announcement and in this blog post.
Firstly—Blocks are now called Apps! You can read our announcement here to find out more.
This rename doesn’t change anything about how you manage your custom apps - no action is required on your end. The Blocks SDK and CLI are not being renamed and will continue to be published as @airtable/blocks
and @airtable/blocks-cli
.
Secondly—we’ve heard many questions about if it’ll be possible to publish your custom app to the Airtable Marketplace (formerly known as the Blocks Gallery). Today, we’re excited to announce an official pathway for any developer to submit their custom app to the marketplace!
With the new block submit command, you can submit your custom app to be reviewed for addition to the Airtable Marketplace. If accepted, every Airtable user will be able to see and install your app from the marketplace. Several of the winners from the Airtable Blocks Contest have already been published to the marketplace, including the Image Markup, Scheduler, and Eazyfields apps.
You can find out more about submitting your app to the marketplace here.
Thirdly—the Blocks SDK has graduated from beta and is now generally available. Thank you all for your feedback during the beta—seeing your blocks and hearing your opinions has been instrumental to us as we worked on improving the developer experience.
We’ve also published v1.0.0 of the Blocks SDK. It includes some breaking changes, but as of this release, all existing public APIs in the SDK are stable. We’ll be following semantic versioning for new versions of the SDK going forwards: from now on, breaking changes will always involve a major version increment.
Lastly—we’ve been listening to your feedback during the beta and hear the community’s concerns about the difficulties with distributing a custom app between multiple bases and keeping it updated. This is something we’re actively working on. Currently, the recommended workaround is to use the remotes feature. Remotes are still in beta—we anticipate major changes and improvements here in the future.
Thank you once more for your participation in the Custom Blocks Beta. We’re excited to be moving to a new phase with Custom Apps, and we can’t wait to see what you build next. As always, we’d love to hear from you—let us know your thoughts at the community forum. We’ll also be hosting an AMA in the Custom Apps community forum at 10:00am PST, Thursday 9/17, where you can ask us any questions you have about this launch. You can find the thread here—feel free to post your questions ahead of time.
The Platform team at Airtable
Sep 21, 2020 11:45 PM
Did the change to Lookup fields affect their ability to be used in <CellRenderer />
components? Right now I’m getting the error “Invariant Violation: linkedRecordIds” when I have any CellRenderers trying to use a Lookup field.
Sep 22, 2020 04:20 AM
@Kamille_Parks Yup the format of lookup fields was one of the breaking changes. It was listed in the changelog.
- BREAKING: The cell value format for lookup fields (
FieldType.MULTIPLE_LOOKUP_VALUES
) is nowArray<{linkedRecordId: RecordId, value: CellValue}>
It is a simpler format than what was previously appearing. It no longer includes the key/value pairs such as linkedRecordIds, and only has the array. I believe that the exact read format was previously unpublished.
Lookup fields seem to be the root of more issues than any other field type!
Sep 22, 2020 04:29 AM
Oops, thanks for reporting this Kamille! This is a bug in version 1.0.0 of the SDK (my mistake :grinning_face_with_sweat: ) and we’ll try and get a fix out ASAP. I’ll report back here when that’s ready!
Sep 23, 2020 03:53 PM
Could this change be affecting people who are seeing problems with scripts with lookup fields breaking?
Sep 24, 2020 07:38 AM
Hey @Kamille_Parks, we just released version 1.0.1 of the SDK which should fix this issue. Apologies for the inconvenience! Would you mind checking that this resolves your issue?
This was a separate (but related) issue to the problem with the SDK, which has now also been resolved. Thanks for flagging!
Sep 24, 2020 10:16 AM
Quick question, can custom blocks make external api calls? can these api calls be subscription based?
Sep 24, 2020 10:21 AM
Yes, custom apps/blocks can make external api calls. You should refer to the documentation for your external api for how to authenticate your subscription.
BTW, Scripting App can also make external api calls, although you might run into cors errors.
Sep 24, 2020 10:47 AM
@somehats thanks for the quick turnaround! I don’t see the latest version available through npm yet, though. When I update it still says 1.0 is the latest version. Perhaps I just need to wait later today?
Sep 24, 2020 12:33 PM
That’s strange! I see 1.0.1 when I visit https://www.npmjs.com/package/@airtable/blocks. If you manually edit your package.json
file to set @airtable/blocks
to 1.0.1, do you get the latest version then?