UNPKG

framer

Version:

The Framer library is the code that drives Framer projects and components. It helps you build from simple interactive components to whole apps.

822 lines (460 loc) 17.9 kB
# Framer Library ## [1.2.24] 2021-02-17 ### Added - `ControlType.Array` now supports items of `ControlType.Object` - `Rect.transform(rect, matrix)` ### Removed - The `contentState` property of the `Text` component has been removed. - DraftJS dependency was removed. ## [1.2.23] 2021-02-15 ### Fixed - API doc formatting ## [1.2.22] 2021-02-12 ### Fixed - API doc generation ## [1.2.21] - 2021-02-11 ### Added - `ControlType.Object` ### Improved - Update documentation for `ControlType.FusedNumber` Property Controls. - Renamed array item type from `propertyControl` to `control` ## [1.2.20] - 2021-02-02 ### Fixed - Side padding props work when used on Stack in code without also using the `paddingPerSide` property. ## [1.2.19] - 2021-02-02 ### Improved - Updates framer-motion to 3.3.0-beta.22 ## [1.2.18] - 2021-02-01 ### Improved - Updates framer-motion to 3.3.0-beta.19 ## [1.2.17] - 2021-02-01 ### Improved - Internal changes - Updates framer-motion to 3.3.0-beta.18 ## [1.2.16] - 2021-01-26 ### Improved - Updates framer-motion to 3.2.2-rc.1 - Updates to Framer's Page component to improve compatibility when used with framer-motion's layout animations. - Internal changes ## [1.2.15] - 2021-01-21 ### Improved - Internal changes ## [1.2.14] - 2021-01-20 ### Improved - Internal changes ## [1.2.13] - 2021-01-18 ### Improved - Internal changes ## [1.2.12] - 2020-12-23 ### Improved - Updates the bundled Framer Motion library to 3.0.1 ### Added - `Frame` now supports `minWidth` and `minHeight` as props. - Internal Enum control now accept two optional rendering options `segmentedControlDirection` and `showIconWithTitle`. ### Changed - Internal changes related to how Stacks are rendered on the canvas. ## [1.2.11] - 2020-12-02 ### Added - `while-` props accept lists of variants - `whileDrag` - Internal Vector component now accepts a `d` prop, which is a string that will be used for an SVG path's `d` attribute. `d` will be preferred over a `calculatedPath` List. - Internal components Vector and SVG now accept `style` and `className`, as well as `variants`, and `transition` prop, which will be applied to the main element of a Vector, which is now either a `motion.path` or a `motion.g`. ## [1.2.10] - 2020-11-19 ### Improved - Minor changes. ## [1.2.9] - 2020-10-26 ### Added - Internal `ControlIcon` type, can be used to enrich enum controls - Use new control icons for Page component alignment - Updated `animate` to support the new Framer Motion syntax. ### Changed - Internal changes related to communicating code component sizes to the editor. ## [1.2.8] - 2020-10-01 ### Improved - Updates the bundled Framer Motion library from 2.6.14-rc.3 to 2.7.4 ### Fixed - Animating between frames where one has no borderRadius and the other does ### Improved - Updated code components to, by default, disable children from automatically having a layoutId generated and applied. ### Added - Added support for manually toggling whether descendants of code components generate layoutIds by wrapping descendants with `<AutomaticLayoutIds enabled={boolean}>` ### Added - `loadFont` function for loading web fonts ## [1.2.7] - 2020-09-18 ### Improved - Updates the bundled Framer Motion library from 2.6.7-rc.1 to 2.6.14-rc.3 - Make sure Scroll and Page component control titles still fit in new property panel ### Fixed - Animating to 0 values with overrides should no longer appear instant - Navigating to the previous navigation target after a push transition should no longer animate unexpectedly ## [1.2.6] - 2020-09-08 ### Added - Add support for text transform. - Add support for text decoration. - Add support for different text line height units. ### Improved - Updates the bundled Framer Motion library from 2.0.0-beta.76 to 2.6.7-rc.1, which includes the most recent release of framer-motion - Improved latency between user interaction and the navigation being performed when using Navigation in large Framer files ### Fixed - Using Design Components in Code with AnimateSharedLayout should work as expected. ## [1.2.4] - 2020-06-25 ### Improved - Updates the bundled Framer Motion library from 2.0.0-beta.72 to 2.0.0-beta.76 which includes performance improvements - Improves performance of Magic Motion transitions in very large projects - No longer allow Text content to be selected ### Fixed - Fixed an issue where a Magic Motion transition could prevent the visible scroll container from being scrollable. - Fixed an issue where Magic Motion transitions might throw an exception when performed after an instant transition. - SVG layer dependency on canvas zoom ## [1.2.3] - 2020-06-08 ### Added - useIsInCurrentNavigationTarget hook to allow you to update code components when the target they are in is navigated to. ## [1.2.2] - 2020-05-19 ### Fixed - Fixed an issue where initial magic motion transitions could cause a subtle flash ## [1.2.1] - 2020-05-18 ### Fixed - Fixed an issue where Stacks were not surfaced as part of the library ## [1.2.0] - 2020-05-18 In addition to the changes listed below, this version also updates the bundled Framer Motion library from 1.6.7 to 2.0.0-beta.72, which includes a bunch of fixes, and a few new features. See [Framer Motion's changelog](https://github.com/framer/motion/blob/master/CHANGELOG.md) for more. - Upgraded React to 16.12. - Improvements to design components for Framer Web - Minor internal changes to code component rendering that enable layout metrics to be communicated to the editor ### Improved - Components with Overrides applied can now be more easily identified in the React Developer tools Chrome extension. - Added `displayTextArea` to `ControlType.String`, to request a multi-line input control - Scroll now uses native scroll offset instead of a transform - Scroll now uses native scroll constraints for layout - Adds support for the new Magic Motion transition type to Navigation - Improves Navigation to preserve component and scroll state when navigating to a target that has already been navigated to ### Fixed - Fixed Page component not snapping to the initial page - Fixed Page component current page event not triggering for the first page - Fixed Page component current page when nonzero initially - Fixed Page component responsive behavior - Fixed an issue where auto sizing Text would shrink inside a Stack - Remove vertical translation during modal transition to mimic the latest iOS behaviour - Fixed a bug where the DataObserver would not reset on unmount. - Fixed an issue where Text would not wrap correctly - Fixed an issue where horizontally centered Text wouldn't be positioned correctly - Fixed uploaded SVG id collisions - Fixed an issue with color alpha comparison - Auto sized text height - Improved empty states for built-in components ### Removed - Stack from the package.json component map - Deprecated Stack, this component was only rendered on the Framer Canvas and is now part of the Framer app - Removed Scroll and Page event handler controls, they are not yet useful from UI ## [1.1.7] - 2020-01-21 ### Fixed - Fixed a bug that made elements blurry upon zoom ## [1.1.6] - 2019-12-13 ### Improved - Backward compatibility - Added a `cancel` method to debounced functions, which allows you to cancel pending debounced calls - Improved empty states for built-in components ### Fixed - createData would not re-render its subscribers when one of them updates the value immediately in its ## [1.1.5] - 2019-10-21 ### Improved - Navigation Action API ## [1.1.4] - 2019-10-08 ### Fixed - Add fallback for SF Pro font to support iOS 13 ## [1.1.3] - 2019-09-18 ### Added - Allow for `ControlType.ComponentInstance` in actions - Expose internal DataObserverContext - Add internal `disableDevice` flag to `getConfigFromPreviewURL()` ### Improved - `ControlType.Enum` now supports string, number, boolean, null, and undefined values - `ControlType.SegmentedEnum` has been deprecated, use `ControlType.Enum` instead and enable `displaySegmentedControl` - Page documentation - Stack CSS export ### Fixed - Page direction lock - Make `size` with fraction values work for `Frame`s inside a `Stack` - Collect shadows CSS for text nodes as `text-shadow` - Removed default actions from library ## [1.1.2] - 2019-09-04 Minor performance related changes ## [1.1.1] - 2019-08-30 - Minor performance related changes ## [1.1.0] - 2019-08-28 ## Improved - Speed of Stack component - Page component rendering - Support for scrolling with mouse wheel ## [1.0.18] - 2019-08-13 - Upgraded Framer Motion from 1.4.2 to 1.6.0. ### Added - Add `ControlType.EventHandler` - Google web fonts support ### Fixed - Fix DataObserver not updating when being notified - Page rendering by no longer relying on a (re-)size observer for the initial rendering pass - Blurry Page content ## [1.0.17] - 2019-08-06 ### Added - Added `useLog`, `useOpenURL`, and `useNavigateTo` actions. - `useNavigation` hook for performing navigation actions from code. - `NavigationConsumer` to perform navigation actions from class components. ## [1.0.16] - 2019-07-30 ### Added - Added `obscured` attribute to the `ControlType.String`. It makes the input value visually concealed - DataContext - Action ## [1.0.15] - 2019-07-23 - Upgraded Framer Motion to 1.2.6 ### Fixed - Click handler in instant navigation transitions ## [1.0.14] - 2019-07-10 ### Removed - Removed internal `updateComponentLoader` function ## [1.0.13] - 2019-07-02 ### Fixed - Scroll bug fixes ## [1.0.12] - 2019-06-25 ### Added - Added `hslToString` method in `ConvertColor` ## [1.0.11] - 2019-06-17 ### Fixed - `url()` from `framer/resource` returning not returning correct values when multiple projects are open ## [1.0.10] - 2019-06-14 - Upgraded Framer Motion to 0.19.1 ### Fixed - Sizing issues with Scroll content ## [1.0.10] - Unreleased ### Added - Added deprecatation warnings for `Animatable` and `animate`. - Updating `animate` to support `MotionValue`s for backwards-compatibility. ## [1.0.9] - 2019-06-06 ### Added - Add `framer/resource` to code editor ### Improved - Scroll, ControlTypes documentation - Error messages when components are not exported. - Performance with large images ### Fixed - Jittery link transition animations. Animate `deprecatedFrame` `x`/`y` instead of `top`/`left` - Scroll size ## [1.0.8] - 2019-05-29 ### Added - Added `RenderTarget` to the public types ### Fixed - Missing `contentOffsetX` and `contentOffsetY` properties of `Page` - Using `delay` for transitions - Animating with color tokens - Double border when using border overrides in Framer X - Removed accidental dependencies - Scroll component not resizing correctly ### Improved - Performance in Framer X ## [1.0.7] - 2019-05-21 ### Improvements - Radial gradient improvements. - Upgraded Framer Motion dependency to 0.18.0. ### Removed - Revert fix for border bleeding bug. ## [1.0.6] - 2019-05-17 ## [1.0.5] - 2019-05-16 ## [1.0.4] - 2019-05-09 - Upgraded Framer Motion to 0.16.11 ### Fixed - Positioning of Stack ## [1.0.2] - 2019-05-07 ### Fixed - Issue with positioning of Design Component instances ## [1.0.1] - 2019-05-07 This release brings an all new API, read the documentation here: https://www.framer.com/api ## [0.10.10] - 2019-03-26 ## [0.10.9] - 2019-02-27 ## [0.10.8] - 2019-02-19 ## [0.10.7] - 2019-02-18 ## [0.10.6] - 2019-02-13 ### Fixed - Availability of Property Control Types ## [0.10.5] - 2019-01-31 ### Fixed - Images in a code component could be hidden on the canvas. ## [0.10.4] - 2019-01-29 ### Improved - Moved error and placeholder states into Vekter for X15 ## [0.10.3] - 2019-01-24 ### Fixed - Device images not showing in when viewing a hosted project ## [0.10.2] - 2019-01-21 ### Fixed - Navigation component showing the wrong screen - `onTapStart` for touch environments - Stacks in design components having the wrong background - Properties getter has been replaced by `this.props` with better typing - Text wrapping could break when switching between Fixed and Auto - Miscellaneous cleanup ## [0.10.1] - 2018-12-19 ### Added - `onMouseEnter` and `onMouseLeave` events to Frame ### Fixed - Event handlers being called twice in Code overrides - Device masks are no longer shown on actual devices ## [0.10.0] - 2018-12-11 ### Breaking changes - `PageContentDimension` is no longer an enum but a union type of "auto" and "stretch" which means that if you were using `PageContentDimension.Stretch` you should now replace it with `"stretch"` - `PageEffectDefault` has been renamed to `PageEffect` ### Improved - Navigation overlays - Added inline documentation in VSCode ### Fixed - Types for Stack and Page components - Restored Animatable.set in type public file ## [0.9.7] - 2018-11-22 ### Fixed - Perspective in Page component ## [0.9.6] - 2018-11-21 ### Added - New Devices: iPhone XS, iPhone XR, iPhone XS Max, Pixel 3, Pixel 3XL, Galaxy S9 ## [0.9.5] - 2018-11-16 ### Fixed - Navigation container background ## [0.9.4] - 2018-11-16 ### Fixed - Navigation goBack transitions ## [0.9.3] - 2018-11-14 ### Fixed - Handling of errors in Code Components ## [0.9.2] - 2018-10-31 ### Fixed - Correctly calculate `currentPage` of PageComponent on initialization. ### Improved - Performance of `isEqual` ## [0.9.1] - 2018-10-30 ### Improved - Component Loader error handling ## [0.9.0] - 2018-10-24 ### Added - Page component - Property Control types for Arrays and Objects - backfaceVisible, perspective and preserve3d props to Frame ### Fixed - Listening Animatable's when updating Frames ## [0.8.1] - 2018-10-16 ### Improved - Performance of `Data` objects - Overlay transitions can have a custom backdrop color - Scroll components support mouse-wheel scrolling by default ## [0.8.0] - 2018-09-18 ### Improved - SVG component is now compatible with Stack layout ## [0.7.13] - 2018-09-17 ### Fixed - Removed `debugger` statement ## [0.7.12] - 2018-09-14 ### Added - `resource.url()` for referencing resources inside your project - Property control types for files (`ControlType.File`) and images (`ControlType.Image`) ### Improved - Display of errors in Components ### Fixed - Setting width in percentages for Design Components in Code - Scrolling animation with velocity ## [0.7.11] - 2018-09-07 ### Improved - Internal changes for device rendering ## [0.7.10] - 2018-09-04 ### Improved - Interpolation of objects and colors ### Fixed - Scrolling on touch devices - Copy CSS for Stacks - Transition of Navigation components ## [0.7.9] - 2018-08-31 ### Improved - Scaling font size for components with erros ### Fixed - Rendering of shadows in Shapes ## [0.7.8] - 2018-08-29 ### Added - Fade transition for Navigation component ## [0.7.7] - 2018-08-28 ### Fixed - Bug in animation / interpolation API ## [0.7.6] - 2018-08-28 ### Added - Animation of colors ### Improved - Importing Design Components in Code - Animation API has more consistent option handling ### Fixed - Empty state of Stack component - Off-pixel rendering of Frame in some cases ## [0.7.5] - 2018-08-21 ### Improved - Generic types of `Override` ### Fixed - Sorting UI of Stacks ## [0.7.4] - 2018-08-21 ### Added - Bezier curve animations ## [0.7.3] - 2018-08-20 ### Added - Support for OverrideFunctions for Design Components used in code ### Improved - Skip invisible stack items during layout - Renamed FusedNumber option splitKey to toggleKey ### Fixed - Handling of Animatable properties in Stack - Rerun OverrideFunction on rerender ## [0.7.2] - 2018-08-20 ### Improved - Fix FrameProperties type of Default Override type ## [0.7.1] - 2018-08-20 ### Improved - Made Animatable.set() also accepts Animitable values - Default Override type to FrameProperties ## [0.7.0] - 2018-08-20 ### Improved - Rename FramerFunction to Override ## [0.6.1] - 2018-08-16 ### Added - onClick, onMouseDown and onMouseUp as event handlers ### Fixed - Setting default stack properties in package.json ## [0.6.0] - 2018-08-16 Bump version to 0.6 to avoid nmp registry conflicts in the future ### Fixed - Make Stack background transparent by default ## [0.2.0] - 2018-08-15 ### Improved - Better typing of Data function ## [0.1.34] - 2018-08-15 ### Added - Added private API for CSS exporting from a component ### Improved - Cleaned up CSS generation ## [0.1.33] - 2018-08-15 ### Improved - Made a deprecated PropertyStore available again ## [0.1.32] - 2018-08-15 ### Fixed - Bug where Animatable transactions would not work well together with ObservableObjects ## [0.1.31] - 2018-08-14 ### Added - Support for importing Design Components in code ## [0.1.30] - 2018-08-13 ### Improved - Change boolean control titles `enabled` and `disabled` to `enabledTitle` and `disabledTitle` ## [0.1.29] - 2018-08-13 ### Property Controls - `unit` type for number inputs (e.g. %) - `step` allows numbers to be floats - `placeholder` for string inputs - `hidden` function allows controls to be hidden ## [0.1.28] - 2018-08-09 ### Added - `Data` function to create observable object that rerenders ### Fixed - `animate()` function updates objects with multiple Animatable values only once per animation tick ## [0.1.27] - 2018-08-1 Initial Beta 1 release