The Flatfile CLI v3.10.0 introduces a new
--ci option for the deploy command that disables all interactive prompts, making it ideal for automated deployments in CI/CD pipelines. When using this flag:- No confirmation prompts will be displayed
- The command will fail with a clear error message if multiple agents exist and no slug is provided
- TypeScript configuration checks will be skipped
As of version 3.9.0, the Flatfile CLI now includes TypeScript types (if available) and package.json in the source map when deploying an agent. This enhancement improves debugging capabilities and provides better type information in the deployed code, making it easier to troubleshoot issues in production environments.
@flatfile/[email protected]Fixes a bug when relaunching a re-used space. Resolves an issue causing the
“Maximum update depth exceeded” React error when multiple Portals are used
within the same FlatfileProvider (this is not supported). Introduces changes to
the FlatfileContext and FlatfileProvider components to handle the onClose
callback, using a mutable ref instead of state. Refactors the resetSpace
function and introduces changes to handle the resetOnClose config option when
re-using a space.@flatfile/[email protected]The release notes include a fix for a bug with the Workbook onSubmit
functionality. Specifically, it addresses an issue where the onSubmit action was
not being correctly added or updated in the workbook actions list. The fix
ensures that the onSubmit action is properly added or updated when the onSubmit
prop is provided, and that duplicates are not created if the action already
exists. This change is relevant for developers using the Workbook component and
expecting the onSubmit callback to be triggered when the workbook is submitted.@flatfile/[email protected]The JavaScript Portal style sheet is now attached only once, instead of every
time the Portal is opened. This should improve performance and avoid redundant
style sheet insertions.A new option has been added to allow specifying submit complete options, giving
more control over the behavior when submitting a job. Developers can now set the
‘acknowledge’ and ‘message’ properties when completing a job submission.This would result in the job being completed with ‘acknowledge’ set to false and
‘message’ set to ‘Custom complete message’.@flatfile/[email protected]Added option submitSettings.startingJobMessage to configure the initial
message displayed in the job progress modal.@flatfile/[email protected]The release includes a new removeSheet method to allow removing a specific
sheet from the workbook by its sheet slug.@flatfile/[email protected]This release updates the @flatfile/react package to version 7.12.1. The update
fixes a bug where the space was not completely reset upon closing the Flatfile
Portal. Specifically, the changes ensure that when the Flatfile Portal is
closed, the internal session space is reset, preventing any state from
persisting between sessions.@flatfile/[email protected]The startFlatfile function has been exported from the package, allowing
developers to invoke it directly. Additionally, the FlatfileClient type has been
exported from the @flatfile/api package, providing developers with access to
this type when using the @flatfile/javascript package.@flatfile/[email protected]This release includes the following changes:A new onClose event handler has been added to the useFlatfile hook, allowing
developers to specify a callback function that is called when the Flatfile modal
is closed.The missing stylesheet for the legacy useSpace and usePortal flows has been
restored, ensuring proper styling for these deprecated hooks.By default, the Flatfile modal now fills the entire screen. Developers may need
to adjust any style overrides to accommodate this change.Additionally, a bug that prevented server-side configuration of Spaces has been
fixed.@flatfile/[email protected]The CSS variable --ff-color-text has been renamed to --ff-text-color to be
consistent with other variable names. This change affects the text color used
throughout the Flatfile React components.@flatfile/[email protected]This exciting release adds internationalization support to the Flatfile
JavaScript SDK. The SDK now detects the user’s browser language or allows
specifying an override language. Translation strings are provided for the
confirmation modal, error modal, and other UI elements. The SDK also includes
functionality to handle missing translation keys and log them to the console.Additionally, this release updates the modal logic to use functional components
and make the text strings dynamic based on the provided translations or
defaults.A new util function initializeIFrameConfirmationModal is introduced to handle
mounting the confirmation modal and its associated behaviors onto the iFrame
wrapper element. This function takes callbacks for the modal’s button click
actions (exit or stay) and text string providers for the modal’s title, message,
and button labels.@flatfile/[email protected]The FlatfileProvider component now accepts a new styleSheetOptions prop
which allows setting the nonce value and position of the injected stylesheet.
This gives more control over how the styles are applied.The package now contains utility functions attachStyleSheet and styleInject
to dynamically inject the stylesheet into the DOM at runtime. This replaces the
previous import of the stylesheet directly.@flatfile/[email protected]The createlistener function now takes an additional onClose parameter. This
function is used to handle the closing of the Flatfile space, and it removes the
event listener and cleans up the DOM elements associated with the Flatfile
space. The initializeIFrameConfirmationModal function has also been updated to
use the new closeSpaceNow function, which simplifies the process of closing
the Flatfile space.@flatfile/[email protected]A bug fix for issues with the closeSpace.onClose() function. This function is
called when the Flatfile space is closed, and the bug fix ensures that it works
correctly.An improvement to the closing behavior of the Flatfile space. Instead of
removing the iframe element immediately, a new closeSpaceNow function is
introduced, which handles removing the necessary elements and event listeners in
a more organized manner.There is also an update to the way the confirmation modal is displayed when
closing the Flatfile space. Instead of using a separate event listener, the
closing logic is now handled within the existing closeFlatfileSpace function,
which listens for the job:outcome-acknowledged event and triggers the closing
process accordingly.[email protected]The latest release of the flatfile package includes improvements for handling
file uploads and inferring event topics from arrays. Listeners using an array
syntax listener.on(['commit:created', 'layer:created'], (event) => {} will now
correctly infer the event topics.This release also includes a fix for handling file uploads with updated event
flatfile.upload@flatfile/[email protected]This release includes a fix to address instances where the iframe wasn’t ready
when the portal:initialize call was posted. The fix ensures that the
portal:initialize message is sent to the iframe only after it has finished
loading. This resolves an issue where the initialization process could sometimes
fail due to the iframe not being ready. Developers using the @flatfile/react
package will benefit from a more reliable initialization process for the
embedded Flatfile experience.The new useIsIFrameLoaded hook listens for the load event on the iframe and
updates a state variable accordingly. The portal:initialize message is then
sent only when the iframe has finished loading, ensuring a reliable
initialization process.@flatfile/[email protected]This release adds the ability to set the default page when preloading the
Flatfile Portal embed. Use updateDefaultPageInSpace and findDefaultPage to
specify which workbook, sheet, or document page should display initially.@flatfile/[email protected]The unmount() method has been added, allowing developers to cleanly disconnect
the event listener from the event driver. The EventDriver class now includes
unmountEventHandler() to remove attached event handlers, providing more
control over event listeners.@flatfile/[email protected], @flatfile/[email protected],
@flatfile/[email protected], @flatfile/[email protected]The closeSpace.operation and closeSpace.onClose properties are now optional,
offering more flexibility. The @flatfile/embedded-utils dependency is updated
to version 1.2.1, simplifying event listener setup with handlePostMessage.@flatfile/listener now has optimized build tooling and updated dependencies,
improving compatibility and performance.@flatfile/[email protected], @flatfile/[email protected]This release enables clipboard read and write functionality within the embedded
Flatfile iframe component. Also, @flatfile/embedded-utils is updated to
version 1.2.0.@flatfile/[email protected]This release improves the submission process. After data upload, the onSubmit
action handlers now acknowledge the job automatically, enhancing user feedback.@flatfile/[email protected], @flatfile/[email protected]@flatfile/listener now supports removing event listeners with off() and
detach() methods. The FlatfileProvider component sets up a FlatfileContext
with configurations for Space, Workbook, Document, and event handlers.@flatfile/[email protected], @flatfile/[email protected]Updates to dependencies and improvements in performance for both packages.
@flatfile/embedded-utils dependency updated to 1.1.14.@flatfile/[email protected], @flatfile/[email protected]Updated @flatfile/embedded-utils to version 1.1.13. Simplified logic for
setting sidebarConfig when initializing a new Flatfile import space.@flatfile/[email protected]Fixed a bug in the usePortal hook related to the onSubmit function, ensuring
reliable unmounting of the iframe.@flatfile/[email protected], @flatfile/[email protected]Added initNewSpace utility to create a new space, workbook, and document in a
single API request. The environmentId parameter is now optional.@flatfile/[email protected]Fixed an issue where the embedded Flatfile iframe would not be removed properly
if there was an error during initialization.@flatfile/[email protected] @flatfile/[email protected]Updated the space creation request to only include defined parameters. Improved
reliability and efficiency of data import experience.@flatfile/[email protected] @flatfile/[email protected]startFlatfile function now accepts new optional parameters, including
namespace, metadata, labels, translation path, and language override, providing
more customization.@flatfile/[email protected] @flatfile/[email protected]
@flatfile/[email protected] @flatfile/[email protected]Updated default spaces URL to avoid unnecessary preflight requests. Improved
support for nested entrypoints in package.json.@flatfile/[email protected]Fixed bug related to updating the authentication token for the
@flatfile/listener package, ensuring secure and authorized communication.@flatfile/[email protected] @flatfile/[email protected] @flatfile/[email protected]Added exports and browser fields in package.json for better module resolution
and compatibility. Updated dependencies for improved stability.@flatfile/[email protected] @flatfile/[email protected]
@flatfile/[email protected] @flatfile/[email protected] @flatfile/[email protected]Removed global style overrides from SDKs, improving compatibility. Updated
dependencies and improved type support for better integration experience.@flatfile/[email protected]Added functionality to remove the event listener after submit and close actions,
improving memory management.@flatfile/[email protected] @flatfile/[email protected]The @flatfile/javascript package update includes a better-organized
package.json and fixes for type conflicts with peer dependencies. These changes
ensure a smoother development experience and easier integration. The
@flatfile/listener package resolves type conflicts with peer dependencies and
improves type compatibility.@flatfile/[email protected]The confirmation modal’s close action is now independent of user parameters,
ensuring the modal is consistently removed from the DOM when closed.@flatfile/[email protected] @flatfile/[email protected]The @flatfile/javascript package consolidates source code, generates type
declarations, and re-exports modules for convenience. The @flatfile/listener
package update enhances exports and adds dotenv dependency for better
environment variable management.@flatfile/[email protected]This release fixes an issue when reusing an existing Flatfile space and adds
support for passing an existing space object to startFlatfile.@flatfile/[email protected]The new release introduces preloading the Flatfile embed iFrame, initializing
without a space ID, and adding additional metadata when creating a space. The
pubnub dependency has been removed.Updated to version 1.1.1 with a bug fix and dependency updates for improved
reliability.@flatfile/[email protected] @flatfile/[email protected]The @flatfile/react update bundles @flatfile/api and removes the pubnub
dependency. The package now listens for window message events directly.@flatfile/[email protected] @flatfile/[email protected] @flatfile/[email protected]Updates include better browser compatibility, gzipping request bodies, and using
Rollup for bundling. Dependencies for @flatfile/react are also updated for
better performance and reliability.@flatfile/[email protected]The @flatfile/react package removes the styled-components dependency,
migrating styles to SCSS for improved performance and maintainability.@flatfile/[email protected]The @flatfile/listener package now compresses the request body using pako
compression by default when calling the update() method. This reduces network
bandwidth usage and transfer times.@flatfile/[email protected]The EventCallback type now expects a Promise to be returned, allowing
developers to use async/await for greater flexibility and control over
asynchronous operations.@flatfile/[email protected] @flatfile/[email protected]The UMD build file for the @flatfile/javascript package is renamed to
dist/index.js. The @flatfile/react package update simplifies the import
process by using dist/index.js for browser environments.@flatfile/[email protected] @flatfile/[email protected]The @flatfile/javascript package includes bundle optimizations and a new
option to keep the space after submitting data. The @flatfile/react package
improves accessibility with the close button’s type="button" attribute and
adds the option to keep the space active after submission.@flatfile/[email protected] @flatfile/[email protected]The @flatfile/javascript package introduces a new Simplified React Flow and
updates dependencies. The @flatfile/react package adds a usePortal hook for
a smoother integration experience.@flatfile/[email protected]The useSpaceTrigger hook has been renamed to initializeFlatfile, and
createOrUseSpace has been renamed to OpenEmbed for better clarity.@flatfile/[email protected]Re-introduces the initializeFlatfile method, fixing issues with the submit
action and simplifying the user experience.@flatfile/[email protected]Simplifies the integration flow by allowing developers to provide sheet
configurations directly and introducing new utilities for record-level hooks and
job submissions.@flatfile/[email protected]The new useSpaceTrigger hook allows developers to control when the Flatfile
import experience is triggered.@flatfile/[email protected] @flatfile/[email protected]All parameters are now seamlessly passed to the API when creating a Workbook
client-side.@flatfile/[email protected] @flatfile/[email protected]Removed styled-components from peer dependencies and resolving an issue with
the change.@flatfile/[email protected]Resolved an issue where axios and its associated HTTP methods were
unavailable.@flatfile/[email protected]- Implemented UMD build type for seamless compatibility with Content Delivery Networks (CDNs).
- Updated dependencies:
@flatfile/[email protected]
@flatfile/[email protected]Adds UMD build type for working with CDNs.@flatfile/[email protected] @flatfile/[email protected]- Enhanced performance by updating package versions and removing unused dependencies
- Updated dependencies:
@flatfile/[email protected]
@flatfile/[email protected] @flatfile/[email protected]Implemented the use of rollup.js for bundling purposes, enhancing the
project’s build process.@flatfile/[email protected] @flatfile/[email protected]- Updated dependency:
@flatfile/[email protected]
@flatfile/[email protected]Streamlined the project by removing the unnecessary dotenv dependency,
resulting in a cleaner and more efficient codebase.@flatfile/[email protected] @flatfile/[email protected]When creating a Space, you may like to receive the spaceId that was created to
tie it back to something in your platform. You can now receive this in the
Javascript SDK. This functionality is coming soon for the React SDK.@flatfile/[email protected]When creating a Space, you may like to receive the spaceId that was created to
tie it back to something in your platform. You can now receive this in the
Javascript SDK. This functionality is coming soon for the React SDK.@flatfile/[email protected] @flatfile/[email protected]In this version, we’ve made two important updates:Auto-Added Labels for Embedded Spaces: Embedded spaces now come with
auto-generated labels (that will be displayed in your Spaces Dashboard) for
easier navigation and organization.Listener loading Reordered: The listener is now created before the Workbook,
allowing you to listen for workbook creation events within your listener for
more streamlined and effective integration in client-side listeners.@flatfile/[email protected]You can now use @flatfile/api inside a client-side listener without needing a
secret key. The listener will instead use the accessToken created from your
publishableKey.@flatfile/[email protected] @flatfile/[email protected]In this version, we’ve made two important updates:- We’ve changed the default setting for
sidebarConfigto hide the sidebar, providing a cleaner and more focused workspace. - Now, when no
workbookis set,autoConfigureis automatically turned on for Space creation. This enables you to listen for thespace:configurejob in a server side listener.
@flatfile/[email protected]In this update, we’ve resolved a pesky bug that caused the message generated by
recordHook to be overwritten when bulkRecordHook was also in use.Our solution? We’ve introduced caching, ensuring that both messages can coexist
harmoniously.@flatfile/[email protected] @flatfile/[email protected]@flatfile/[email protected] & @flatfile/[email protected]This version update introduces proper class names on the Error container so you
can more easily control the look and feel of this component.See all classes that can be overridden in CSS in the
Reference.@flatfile/[email protected]This version introduces the following notable updates:- Enhanced Close Dialog: Class names have been incorporated for all elements within the close dialog, which becomes visible when closing the embedded Flatfile component. This improvement gives you more control on styling.
-
Utilization of Shared Utilities: The integration now utilizes the shared
@flatfile/embedded-utilsmodule. This change lays the groundwork for consistent properties to be shared across all Flatfile wrapper SDKs, promoting standardization and ease of maintenance. -
Dependency Refinement: The dependencies on
viteand@flatfile/configurehave been removed. This streamlines the codebase and reduces unnecessary dependencies, contributing to a more efficient and lightweight integration.
@flatfile/[email protected]An improvement was made to add the userInfo param on metadata in a more
comprehensible way.@flatfile/[email protected]The response type for the getRecordsAsCSV endpoint was incorrectly typed as a
string instead of a file. This fixes downloading a sheet as a CSV via SDk.@flatfile/[email protected]This version has four great updates:- Previously, you had to fake-out TypeScript because the event time was not
exposed (it was a private class variable) for FlatfileEvents. We have now
added
createdAtto the FlatfileEvent. - Axios responses 200-399 now no longer throw Errors.
- Created a secrets cache based on
spaceId. - Previously, if your listener fetched secrets for multiple environments, those maps would entirely override each other.
- If your listener fetched
spaceIdoverrides first, and then environment — you would get the space id overrides. - We now make sure that the fetch URL in the listener is formatted properly whether or not the user puts a trailing slash in the environment variable.
@flatfile/[email protected]event.secrets now defaults to spaceId. It will throw if no environmentId
is available for secrets retrieval.@flatfile/[email protected]You can now pass in a spacebody. This will allowyou to send more than any
already-defined parameters allowed on space creation.@flatfile/[email protected]The close button and iframe now have a proper class name to allow for CSS
overrides.
