4.0.0-beta.3 (2017-08-29)
4.0.0-beta.2 (2017-08-15)
- error with OutsideEventPlugin that would lead to calling undefined function (#379) (c313962), closes #239
4.0.0-beta.1 (2017-08-13)
- Calling
modal.open()
returned a Promise ofDialogRef
. The async operation is not required and exists due to legacy angular implementation of dynamic components.modal.open()
now returns theDialogRef
instance and NOT thePromise
.
You need to refactor your codebase to accomodate this change, this is a big change
and it is required to remove the complexity working with DialogRef
.
Plugin authoers: Maybe
type does not exists anymore.
If you retuned the dialog instance from your Modal
implementations there is not much to refactor other then types here and there.
If you return Promise
of DialogRef
you will have to refactor your code.
4.0.0-beta.0 (2017-08-13)
- Angular version 5 comes with a breaking change which results in an internal breaking change which remove API options
Bindings are no longer supported when opening a modal. Providing bindings was, from day one, a shortcut to a manual operation. If you used bindings before, instead provide an injector with the bindings inside.
Most of the users should not feel this change as usage of bindings should be minimal.
If you wrote a plugin you should feel this, follow the change set for one of the native plugins as an conversion example.
3.0.2 (2017-08-11)
3.0.1 (2017-06-21)
3.0.0 (2017-06-20)
- handle document for angular universal (2f98e75)
- refactor: use ng-template instead of template
- refactor: remove defaultOverlayTarget directive
- build: revamp the build process, use FESM and flat compiler metadata for faster, smaller bundles.
- refactor: replace custom with ngComponentOutlet
- Moving to use will break applications running on < 4
- Applications using defaultOverlayTarget (all of them) will have to omit it
2.0.2 (2016-11-08)
2.0.1 (2016-10-06)
- do not include
node
reference in package output (5dfc9aa), closes #213 - bootstrap: set proper types for
size
anddialogClass
inBSModalContextBuilder
(955b02b), closes #205
2.0.0-beta.14 (2016-10-03)
- support setting an injector when creating a modal (overlay). injector is optional. (c0a9b71)
- build: NPM Package now comes with ES6 Module version (ESM) and an ES5 UMD bundle (1 file), this should'nt have any effect. (CJS version removed)
ES6 version contains
d.ts
files as well asmetadata.json
files for AoT Compilation.
This breaking change mainly effect the development process of angular2-modal.
To support AoT a complete restructiing of the NPM package and build process was needed. Some devDependencies removed and some changed.
Development process is now managed by Webpack 2.
It is recommended to delete the node_modules directory and npm install
again.
2.0.0-beta.13 (2016-09-17)
2.0.0-beta.12 (2016-09-01)
- bootstrap: removed the dependency of the FormModule in the prompt modal (07fcce8)
- remove
Renderer
use in theModal
service, create projetables in the overlay component (71a5c2c), closes #174 #175
2.0.0-beta.11 (2016-08-30)
- DefaultOverlayTarget: directive to the the default view container, can be used instead of the manual way which has some boilerplate (8d0c932)
- SwapComponent: a directive that creates a dynamic component inside a template (bd8182e)
- add
overlayConfigFactory
, a factory/helper to make it easy to open custom modals using theopen()
method (852fd17) - allow registering dynamic components (250f234)
- builders inheriting from OverlayContextBuilder return an OverlayConfig, simple and quick way to open modals (d115100)
- support for TemplateRef and literal string as modal content (2e6f6a0)
- support stacks of a specific group (i.e: overlay stack per plugin) (18acd51)
- TemplateRef can access the dialog so it can control the modal and access the context (5e6c59e)
- VEX: support
ContainerContent
(cb1f779)
- css dialog container should not bind to class and style (e8196e8)
- overlay component should hide overflow when inside element (cf432b3)
- wrong banner in build (2c9bca5)
- bootstrap: backdrop position should be absolute when inside element (33201ae)
- bootstrap: undeclared component in module (76a7c08), closes #168
- VEX: normalize context (97adecd)
CSSDialogContainer
support forContainerContent
(support string, TepmlateRef and Components as content) (975afea)
- until now a modal can only open a component, this change allows a modal to open A
ContainerContent
which is a type the can bestring
,TemplateRef
or a component (Type
). To support this feature some partially breaking changes were made in theModal
class For developers using the library themodal.open(componentType: any, config?: OverlayConfig)
, the 1st parameter is now calledcontent
and it's type isContainerContent
:modal.open(content: ContainerContent, config?: OverlayConfig)
. For developers building plugins the same rule apply on the 2nd parameter of thecreate
method. Also, thecreateModal
method is deprecated, plugins should now use thecreateBackdrop
andcreateContainer
methods. Each container component supplied tocreateContainer
must express<ng-content
in it's template so the content (string, templateRef, component) can be injected into it. - method
CSSDialogContainer.addComponent()
was removed since modal containers are based onng-content
. Also removed the bindings fortabindex
androle
, they are now static
2.0.0-beta.10 (2016-08-23)
- implement overlay stack per plugin for vex & bootstrap (2c9bca5)
- move dynamic CSS/Style component to use direct element update (via renderer) instead of binding. Binding is bad for animation and since the whole purpose of this base class is to support animation direct access is needed. (7fb6c12)
- wrong banner in build (2c9bca5)
- change overlay destroy order, first run hooks, then observable then destroy overlay component ref (18acd51)
- fix backdrop "on show" flicker in bootstrap plugin (7fb6c12)
- allow registering dynamic components (250f234)
- support stacks of a specific group (i.e: overlay stack per plugin) (18acd51)
2.0.0-beta.9 (2016-08-22)
- overlay: add
inElement
as a base context property (overlay-context) (8ec342c) - overlay: add remove
inside
property fromOverlayConfig
(8ec342c)
- overlay:
OverlayConfig
no longer sets the bounds area of the overlay, instead the context is used which means it is now user configurable
2.0.0-beta.8 (2016-08-22)
- fixed incorrect
inside element
resolution logic (69895b6)
- previously if
inside
config property was not set (undefined) and viewContainerRef was suppliedinElement
resolved to true, now only ifinside
is explicitly true the modal is considered to be inside an element (i.e: inside the view container)
2.0.0-beta.7 (2016-08-21)
- typo in overlay selector (f091153)
- bootstrap: modal wont animate when closing via clicking outside of modal bounds (7b73461)
- vex: modal wont animate on close/dismiss (7b73461)
2.0.0-beta.6 (2016-08-21)
- import paths for systemjs (c6fff42)
- import paths for systemjs (987e21b)
- reference directory with index.ts to the index file directly (18a3ba8)
- rename relative exports (ee66675)
- use overlay DOM structure
- use CSS animation for plugins based on CSS libraries (e.g: bootstrap, vex)
- The modal
open()
command now accepts different variables. - plugin structure change (affects plugin development only)
1.1.4 (2016-08-21)
- be greedy when replacing d.ts imports (2347cf2)
1.1.3 (2016-08-21)
- github publishing (7e1f343)
- demo-vex: remove button from noButtons example (0418ecf)
- vex: missing setter in the api (2699bf5)
- set context on function call (bab38c0)
- set focus trap for VEX and set focus on container (c1f33a8)
- vex: set focus on internal element to workaround bug with css animation and focus outline (22bfcab), closes #121
- systemJS not working due to barrel imports and relative paths (2f72ebe)
- trap focus inside bootstrap container - fixes #113 (c7113b4)
- us workaround to allow uglify/minify, see angular/angular#10618 (bcd4525), closes #157
- animation: in / out animation in bootstrap plugin (63ad352)
- core: support Angular RC5 (e4bbcc4)
- vex: support Angular RC5 (2783d51)