38 KiB
Change Log
0.33.2
Patch Changes
- Updated dependencies [
cc294f20]- @lion/core@0.24.0
0.33.1
Patch Changes
270c7b30: fix chromium opacity bug by using filter- Updated dependencies [
5ad98a26]- @lion/core@0.23.1
0.33.0
Minor Changes
e7a4ca1d: Add "type":"module" to ESM packages so loaders like Vite will interpret the package as ESM properly.
Patch Changes
915de370: fix: isVisible check on elements with display:contents- Updated dependencies [
e7a4ca1d] - Updated dependencies [
96a24c4a]- @lion/core@0.23.0
- singleton-manager@1.5.0
0.32.0
Minor Changes
-
672c8e99: New documentation structure -
aa8b8916: BREAKING CHANGE: Work without polyfill if possibleWhen using component composition in a Lion Component we always made it very explicit which sub-components are used. On top of that we scoped these sub components to the current shadow root allowing multiple version to be used simultaneously.
To enable this features we relied on the fact that the
ScopedElementsMixindid loaded the needed polyfill for us.We however over time got feedback from multiple consumers that lion components "break the app as soon as you load them". The reasons is/was that not everyone is always using
ScopedElementsMixinor in full control of the app (or its load order).To quote the release notes of
ScopedElementsMixinv2.1.0:ScopedElementsMixin 2.x tried to be as convenient as possible by automatically loading the scoped custom elements registry polyfill. This however led to a fatal error whenever you registered any component before ScopedElementsMixin was used.
And this was the case.
With the upgrade to
@open-wc/scoped-elementsv2.1.1 Lion now no longer automatically loads the polyfill throughScopedElementsMixin.This essentially means the polyfill became optional which results in the following behavior
- If polyfill is not loaded it will use the global registry as a fallback
- Log error if actually scoping is needed and polyfill is not loaded
- If you manually create elements you will need to handle polyfilled and not polyfilled cases now
- const myButton = this.shadowRoot.createElement('my-button'); + const myButton = this.createScopedElement('my-button');This also removes
@webcomponents/scoped-custom-element-registryas a production dependency.If you need scoping be sure to load the polyfill before any other web component gets registered.
It may look something like this in your HTML
<script src="/node_modules/@webcomponents/scoped-custom-element-registry/scoped-custom-element-registry.min.js"></script>or if you have an SPA you can load it at the top of your app shell code
import '@webcomponents/scoped-custom-element-registry';You need scoping if you want to
use 2 major versions of a web component (e.g. in an SPA pageA uses 1.x and pageB uses 2.x of color-picker) or you want to use the same tag name with different implementations (use tag color-picker from foo here and from bar here)
See more details at
Patch Changes
d46b9894: Fix check for css typed object support- Updated dependencies [
66531e3c] - Updated dependencies [
672c8e99] - Updated dependencies [
aa8b8916]- @lion/core@0.22.0
0.31.0
Minor Changes
-
683d5c1c: Upgrade to latest Typescript. Keep in mind, some @ts-ignores were necessary, also per TS maintainer's advice. Use skipLibCheck in your TSConfig to ignore issues coming from Lion, the types are valid.We also unfixed lion's dependencies (now using caret ^) on its own packages, because it caused a lot of problems with duplicate installations for end users as well as subclassers and its end users. Both of these changes may affect subclassers in a breaking manner, hence the minor bump.
Be sure to read our Rationale on this change and what this means for you as a user.
-
b96dc40e: BREAKING: elevation property setter on OverlayController accepts numbers only, previously this was a number as a string. This syncs it with the getter which returns a number.
Patch Changes
- Updated dependencies [
683d5c1c]- @lion/core@0.21.0
0.30.0
Minor Changes
2b583ee7: Remove differentKeyEventNamesShimIE, since IE11 isn't supported any more
Patch Changes
30805edf: Replace deprecated node folder exports with wildcard exports for docs6e67b4a3: Fix type information for the overlayMixin and remove obsolete toggle- Updated dependencies [
30805edf] - Updated dependencies [
495cb0c5] - Updated dependencies [
2b583ee7] - Updated dependencies [
83011918]- @lion/core@0.20.0
- singleton-manager@1.4.3
0.29.1
Patch Changes
c4562f7e: use html & unsafeStatic from @open-wc/testing instead of directly from litfdc5e73f: Fix: black bars on dialogs with preventsScroll enabled on ios 15. See https://stackoverflow.com/questions/69589924/ios-15-minimized-address-bar-issue-with-fixed-position-full-screen-contentb6be7ba4: fix condition in is-equal-config util and add null guard- Updated dependencies [
9b81b69e] - Updated dependencies [
a2c66cd9] - Updated dependencies [
c4562f7e] - Updated dependencies [
c55d4566]- @lion/core@0.19.0
0.29.0
Minor Changes
6e86fb4e: Hide local overlays on ESC
Patch Changes
0.28.4
Patch Changes
- Updated dependencies [
ec03d209]- @lion/core@0.18.3
0.28.3
Patch Changes
- Updated dependencies [
8c06302e]- @lion/core@0.18.2
0.28.2
Patch Changes
84131205: use mdjs-preview in docs for lit compatibility- Updated dependencies [
84131205]- @lion/core@0.18.1
0.28.1
Patch Changes
c57f42a3: Export overlay utils so they can be used on their own
0.28.0
Minor Changes
-
72067c0d: BREAKING Upgrade to lit version 2This does not change any of the public APIs of lion. It however effects you when you have your own extension layer or your own components especially when using directives. See the official lit upgrade guide.
BREAKING Upgrade to ScopedElements version 2
This version of
@open-wc/scoped-elementsis now following the Scoped Custom Element Registries and automatically loads a polyfill @webcomponents/scoped-custom-element-registry.This means tag names are no longer being rewritten with a hash.
import { css, LitElement } from 'lit'; import { ScopedElementsMixin } from '@open-wc/scoped-elements'; import { MyButton } from './MyButton.js'; export class MyElement extends ScopedElementsMixin(LitElement) { static get scopedElements() { return { 'my-button': MyButton, }; } render() { return html` <my-button>click me</my-button> `; } }<!-- before (ScopedElements 1.x) --> <my-element> #shadow-root <my-button-23243424>click me</my-button-23243424> </my-element> <!-- after (ScopedElements 2.x) --> <my-element> #shadow-root <my-button>click me</my-button> </my-element>
Patch Changes
- Updated dependencies [
72067c0d]- @lion/core@0.18.0
0.27.0
Minor Changes
Patch Changes
- Updated dependencies [
02e4f2cb]- @lion/core@0.17.0
- singleton-manager@1.4.2
0.26.1
Patch Changes
f2d9b8e2: only focus elements after hide when OverlayController has ownership
0.26.0
Minor Changes
-
43e4bb81: Type fixes and enhancements:- all protected/private entries added to form-core type definitions, and their dependents were fixed
- a lot @ts-expect-error and @ts-ignore (all
get slots()andget modelValue()issues are fixed) - categorized @ts-expect-error / @ts-ignore into:
- [external]: when a 3rd party didn't ship types (could also be browser specs)
- [allow-protected]: when we are allowed to know about protected methods. For instance when code resides in the same package
- [allow-private]: when we need to check a private value inside a test
- [allow]: miscellaneous allows
- [editor]: when the editor complains, but the cli/ci doesn't
Patch Changes
77a04245: add protected and private type info- Updated dependencies [
77a04245] - Updated dependencies [
43e4bb81]- @lion/core@0.16.0
- singleton-manager@1.4.1
0.25.2
Patch Changes
6ea02988: Always use ...styles and [css``] everywhere consistently, meaning an array of CSSResult. Makes it easier on TSC.
0.25.1
Patch Changes
412270fa: fix: only close an overlay if both mousedown and mousep events are outside (for hidesOnOutsideClick)
0.25.0
Minor Changes
f3e54c56: Publish documentation with a format for Rocket5db622e9: BREAKING: Align exports fields. This means no more wildcards, meaning you always import with bare import specifiers, extensionless. Import components where customElements.define side effect is executed by importing from '@lion/package/define'. For multi-component packages this defines all components (e.g. radio-group + radio). If you want to only import a single one, do '@lion/radio-group/define-radio' for example for just lion-radio.
Patch Changes
- Updated dependencies [
f3e54c56] - Updated dependencies [
5db622e9]- @lion/core@0.15.0
- singleton-manager@1.4.0
0.24.2
Patch Changes
2e8e547c: Prevent error throw for body margin auto on overlay hide/show.
0.24.1
Patch Changes
6b91c92d: Remove .prototype accessor when accessing super.constructor from a constructor. This causes maximum call stack exceeded in latest chrome.701aadce: Fix types of mixins to include LitElement static props and methods, and use Pick generic type instead of fake constructors.- Updated dependencies [
701aadce]- @lion/core@0.14.1
0.24.0
Minor Changes
-
b2f981db: Add exports field in package.jsonNote that some tools can break with this change as long as they respect the exports field. If that is the case, check that you always access the elements included in the exports field, with the same name which they are exported. Any item not exported is considered private to the package and should not be accessed from the outside.
Patch Changes
- Updated dependencies [
b2f981db]- @lion/core@0.14.0
- singleton-manager@1.3.0
0.23.4
Patch Changes
a77452b0: Use MutationObserver to watch child changes of the contentNode, and re-insert tab detection element when necessary.
0.23.3
Patch Changes
8fb7e7a1: Fix type issues where base constructors would not have the same return type. This allows us to remove a LOT of @ts-expect-errors/@ts-ignores across lion.9112d243: Fix missing types and update to latest scoped elements to fix constructor type.9352b577: Guard backdrop node parentNode when removing the backdrop node on teardown.- Updated dependencies [
8fb7e7a1] - Updated dependencies [
9112d243]- @lion/core@0.13.8
0.23.2
Patch Changes
a7760b64: Fix type declaration for __syncFromPopperState method.
0.23.1
Patch Changes
a04ea59c: Put tooltip arrow width and height css props on host of ArrowMixin.
0.23.0
Minor Changes
1f62ed8b: BREAKING: Upgrade to popper v2. Has breaking changes for overlays config.popperConfig which is now aligned with v2 of Popper. See their migration guidelines.
Patch Changes
98f1bb7e: Ensure all lit imports are imported from @lion/core. Remove devDependencies in all subpackages and move to root package.json. Add demo dependencies as real dependencies for users that extend our docs/demos.53d22a85: Preventopened-changedevent to be sent twice- Updated dependencies [
98f1bb7e]- @lion/core@0.13.7
- singleton-manager@1.2.1
0.22.8
Patch Changes
0.22.7
Patch Changes
- Updated dependencies [
41edf033]- @lion/core@0.13.5
0.22.6
Patch Changes
de536282: Sync config change to the controller and make sure that an overlay is re-opened/re-hidden after the updateConfig handling, instead of always closed.11e8dbcb: Return promises for the OverlayMixin toggle, open and close methods, since the OverlayController hiding/showing is asynchronous.
0.22.5
Patch Changes
83359ac2: Only set inert when placementMode is global, otherwise events are broken inside local overlay content7709d7c2: Fix deep contains util to properly check multiple nested shadow roots, and do not set containsTarget to false when children deepContains returns false. This would undo a found target in another child somewhere that was found in an earlier recursion.2eeace23: Keep transitionShow and transitionHide as user hooks
0.22.4
Patch Changes
5553e43e: fix: point to parent constructor in styles getter
0.22.3
Patch Changes
9142a53d: overlays: make arrow config more composable3944c5e8: Overlays: open, close and toggle methods on host (OverlayMixin)- Updated dependencies [
39d5e767]- singleton-manager@1.2.0
0.22.2
Patch Changes
b222fd78: Always use CSSResultArray for styles getters and be consistent. This makes typing for subclassers significantly easier. Also added some fixes for missing types in mixins where the superclass was not typed properly. This highlighted some issues with incomplete mixin contracts
0.22.1
Patch Changes
- Updated dependencies [
cfbcccb5]- @lion/core@0.13.4
0.22.0
Minor Changes
9c3224b4: - ArrowMixin needs to extend styles and not overwrite them- ArrowMixin add an
_arrowNodeTemplatewhich can be used to only override the arrow content - InputDatepicker switch between bottomsheet style (on mobile) popover (on desktop/table with screensize bigger then 600px)
- ArrowMixin add an
Patch Changes
fff79915: Added a fix for focus not being restored to the root element when only a focusout event happens, without a subsequent focusin event. Added a fix to use getDeepActiveElement util instead of document.activeElement which fixes focus trap in elements with shadowRoots that contain focusable elements.
0.21.3
Patch Changes
- Updated dependencies [
e2e4deec]- @lion/core@0.13.3
0.21.2
Patch Changes
- Updated dependencies [
20ba0ca8]- @lion/core@0.13.2
0.21.1
Patch Changes
bdf1cfb2: When closing an overlays we check if the active element is/was within the overalys content. If so we blur it to make sure the focus returns to the body.- Updated dependencies [
e92b98a4]- @lion/core@0.13.1
0.21.0
Minor Changes
-
d83f7fc5: ⚠️ BREAKING CHANGE:Fixed a few problems with the backdropNode and contentNode where they were not torn down properly. Simplified the handleBackdrop code to work for both local and global. Local overlay backdrop can now be animated. Added more demos and docs for backdrop.
The breaking changes lie in the fact that the backdrop style classes are now prefixed 'local'/'global' respectively, instead of always 'global' and the class name suffixes for the
backdropNodehave changed fromfade-in/fade-outtoanimation-in/animation-out, as not all animations are fades.
Patch Changes
a4c4f1ee: If a content slot cannot be found, OverlayMixin should check if there is a contentNode imperatively passed through the config.
0.20.0
Minor Changes
-
01a798e5: Combobox packageFeatures
- combobox: new combobox package
- core: expanded browsers detection utils
- core: closest() polyfill for IE
- overlays: allow OverlayMixin to specify reference node (when invokerNode should not be positioned against)
- form-core: add
_onLabelClickto FormControlMixin. Subclassers should override this
Patches
- form-core: make ChoiceGroupMixin a suite
- listbox: move generic tests from combobox to listbox
- select-rich: enhance tests
-
a9d6971c: Abstracted the tooltip arrow related logic to a mixin, so it can be used in other overlays. Also created some demos to show this.
Patch Changes
27879863: Addsasync transitionShowandasync transitionHideto OverlayController to enable basic support for transitions/animations- Updated dependencies [
01a798e5]- @lion/core@0.13.0
0.19.0
Minor Changes
e42071d8: Types for overlays, tooltip and button
Patch Changes
- Updated dependencies [
75107a4b]- @lion/core@0.12.0
0.18.0
Minor Changes
26f683d0: - Make the OverlayController constructor phase synchronous.- Trigger a setup of the OverlayController on every connectedCallback
- Execute a new OverlayController after (shadowDom) rendering of the element is done
- Teardown the OverlayController on every disconnectedCallback
- This means moving a dialog triggers teardown in the old location and setup in the new location
- Restore the original light dom (if needed) in the teardown phase of the OverlayController
Patch Changes
- Updated dependencies [
874ff483]- @lion/core@0.11.0
0.17.0
Minor Changes
65ecd432: Update to lit-element 2.4.0, changed all uses of _requestUpdate into requestUpdateInterval
Patch Changes
0.16.13
Patch Changes
- Updated dependencies [
4b3ac525]- @lion/core@0.9.1
0.16.12
Patch Changes
5a48e69b: Add a guard for content wrapper containing the content node before appending to the renderTarget. This prevents unhandled rejection.- Updated dependencies [
3c61fd29] - Updated dependencies [
09d96759] - Updated dependencies [
9ecab4d5]- @lion/core@0.9.0
- singleton-manager@1.1.2
All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
0.16.11 (2020-07-13)
Bug Fixes
- overlays: no hide on label click (e46f51c)
- overlays: role preservation + guarded attr storage (c3f7aa8)
0.16.10 (2020-07-13)
Note: Version bump only for package @lion/overlays
0.16.9 (2020-07-09)
Bug Fixes
- overlays: add protected show and hide complete hooks,fix flaky test (53a5426)
0.16.8 (2020-07-07)
Bug Fixes
- overlays: only teardown when overlayCtrl defined (121e156)
0.16.7 (2020-07-06)
Note: Version bump only for package @lion/overlays
0.16.6 (2020-06-24)
Bug Fixes
- overlays: make focusable slotted buttons (5e151bb)
0.16.5 (2020-06-23)
Bug Fixes
- overlays: accessibility attrs setup/teardown (dfe1905)
0.16.4 (2020-06-18)
Note: Version bump only for package @lion/overlays
0.16.3 (2020-06-10)
Note: Version bump only for package @lion/overlays
0.16.2 (2020-06-08)
Note: Version bump only for package @lion/overlays
0.16.1 (2020-06-03)
Bug Fixes
- overlays: change dropdownConfig inheritsReferenceWidth to min (16f7afb)
- overlays: prevent resize due to scrollbars on global overlay open (#746) (c8da23c)
- define side effects for demo files (1d40567)
- remove all stories folders from npm (1e04d06)
- throw when passing unconnected contentNode (78dbfbe)
0.16.0 (2020-05-29)
Features
- use markdown javascript (mdjs) for documentation (bcd074d)
0.15.3 (2020-05-25)
Bug Fixes
- add side effects to package.json to fix storybook build (a7f7b4c)
0.15.2 (2020-05-20)
Bug Fixes
- overlays: contain focus when tabbing into window (d1189c9)
0.15.1 (2020-05-19)
Bug Fixes
- overlays: support singleton override via setOverlays (171b87f)
0.15.0 (2020-05-18)
Features
- use singleton manager to support nested npm installations (e2eb0e0)
0.14.0 (2020-05-18)
Bug Fixes
- overlays: catch rejected promise (5114076)
- overlays: local backdrop outlet (e19a0f4)
- overlays: setup/teardown fixes + perf improvements OverlayMixin (8a6bef8)
Features
- overlays: enhance content projection for styling purposes (f33ea6b)
0.13.3 (2020-05-06)
Bug Fixes
- dialog: teardown open close listeners after initial update complete (da87445)
0.13.2 (2020-04-29)
Note: Version bump only for package @lion/overlays
0.13.1 (2020-04-15)
Bug Fixes
- overlays: synchronize intercepted opened state OverlayMixin (88d3850)
0.13.0 (2020-04-07)
Features
0.12.9 (2020-04-02)
Bug Fixes
- overlays: support reconnecting overlay nodes inside other overlays (afd5ac9)
0.12.8 (2020-03-26)
Bug Fixes
- select-rich: consider no default select for inheritsReferenceWidth (e636ce1)
0.12.7 (2020-03-25)
Note: Version bump only for package @lion/overlays
0.12.6 (2020-03-20)
Bug Fixes
- overlays: support backdrop with local overlay (e472b64)
0.12.5 (2020-03-19)
Bug Fixes
- normalization model-value-changed events (1b6c3a4)
0.12.4 (2020-03-05)
Note: Version bump only for package @lion/overlays
0.12.3 (2020-02-26)
Note: Version bump only for package @lion/overlays
0.12.2 (2020-02-19)
Bug Fixes
- reduce storybook chunck sizes for more performance (9fc5606)
0.12.1 (2020-02-13)
Note: Version bump only for package @lion/overlays
0.12.0 (2020-02-06)
Features
- overlay: add hide on outside esc handler (c0ed437)
0.11.3 (2020-01-23)
Note: Version bump only for package @lion/overlays
0.11.2 (2020-01-20)
Note: Version bump only for package @lion/overlays
0.11.1 (2020-01-17)
Bug Fixes
- update storybook and use main.js (e61e0b9)
0.11.0 (2020-01-13)
Features
- improved storybook demos (89b835a)
0.10.1 (2019-12-17)
Note: Version bump only for package @lion/overlays
0.10.0 (2019-12-13)
Features
- tooltip: arrow (d4f99f1)
0.9.0 (2019-12-11)
Features
- overlays: close/hide events on dom (OverlayMixin) level (b2c5f92)
0.8.0 (2019-12-04)
Features
- integrate and pass automated a11y testing (e1a417b)
0.7.1 (2019-12-02)
Bug Fixes
- use strict versions to get correct deps on older versions (8645c13)
0.7.0 (2019-12-01)
Bug Fixes
- overlays: close overlay upon disconnectedCallback (ab5cb62)
- overlays: fix overlay content node selector to be more accurate (411889c)
- overlays: hideOnEsc should also work while being on the invoker (c899cf2)
- overlays: remove _contentNodeWrapper on teardown (0b31494)
- no longer use overlay templates (49974bd)
Features
- refactor the overlay system implementations, docs and demos (a5a9f97)
- overlays: add before-show event to OverlayMixin (57a3c04)
- overlays: improve API for overriding controller config in mixin (45f5571)
0.6.4 (2019-11-15)
Bug Fixes
- refactor slot selection (5999ea9)
0.6.3 (2019-11-13)
Note: Version bump only for package @lion/overlays
0.6.2 (2019-10-25)
Bug Fixes
- overlays: remove setting inheritsReferenceWidth by default (8237b64)
0.6.1 (2019-10-23)
Note: Version bump only for package @lion/overlays
0.6.0 (2019-10-10)
Features
- overlays: release new overlay system (364f185)
0.5.1 (2019-09-27)
Bug Fixes
- overlays: fix contentNodes for local and global overlays (733991d)
0.5.0 (2019-09-26)
Features
- overlays: delegate events in DynamicOverlayController (20037ba)
0.4.0 (2019-09-25)
Features
- overlays: add viewport placement to global overlays (1cc92fb)
- overlays: align Overlays API + add DynamicOverlay (224f794)
- overlays: create BottomsheetController (4b858cb)
0.3.12 (2019-08-01)
Bug Fixes
- overlays: global overlays have fixed positioning context (6bee300)
0.3.11 (2019-07-25)
Note: Version bump only for package @lion/overlays
0.3.10 (2019-07-24)
Note: Version bump only for package @lion/overlays
0.3.9 (2019-07-23)
Note: Version bump only for package @lion/overlays
0.3.8 (2019-07-23)
Note: Version bump only for package @lion/overlays
0.3.7 (2019-07-23)
Note: Version bump only for package @lion/overlays
0.3.6 (2019-07-23)
Bug Fixes
- overlays: fix popper for IE11 by using esm dist target (16078c5)
0.3.5 (2019-07-18)
Note: Version bump only for package @lion/overlays
0.3.4 (2019-07-17)
Bug Fixes
- support Chinese language (a0ebd2d)
0.3.3 (2019-07-12)
Bug Fixes
- overlays: add inheritsReferenceObjectWidth parameter (229d282)
- overlays: fire show/hide event on shown changed (e02bc42)
0.3.2 (2019-07-02)
Note: Version bump only for package @lion/overlays
0.3.1 (2019-07-01)
Bug Fixes
- overlays: fix update popper config method (910a1b5)
0.3.0 (2019-06-28)
Features
- overlays: base LocalOverlay positioning system on Popper.js (22357ea)
0.2.7 (2019-06-24)
Note: Version bump only for package @lion/overlays
0.2.6 (2019-06-20)
Bug Fixes
- overlays: trapsKeyboardFocus should work with contentNode (4695cfd)
0.2.5 (2019-05-29)
Note: Version bump only for package @lion/overlays
0.2.4 (2019-05-24)
Note: Version bump only for package @lion/overlays
0.2.3 (2019-05-22)
Note: Version bump only for package @lion/overlays
0.2.2 (2019-05-17)
Note: Version bump only for package @lion/overlays
0.2.1 (2019-05-16)
Bug Fixes
- overlays: publish translations to npm (d19f576)
0.2.0 (2019-05-16)
Features
- overlays: translations for navigation (5255b1b)
0.1.5 (2019-05-13)
Bug Fixes
- add prepublish step to make links absolute for npm docs (9f2c4f6)
0.1.4 (2019-05-07)
Bug Fixes
- import from entry points so stories can be extended (49f18a4)
0.1.3 (2019-04-28)
Bug Fixes
- update storybook/linting; adjust story labels, eslint ignores (8d96f84)
0.1.2 (2019-04-27)
Note: Version bump only for package @lion/overlays
0.1.1 (2019-04-26)
Bug Fixes
- add missing files to npm packages (0e3ca17)
0.1.0 (2019-04-26)
Features
- release inital public lion version (ec8da8f)