Commit graph

146 commits

Author SHA1 Message Date
Danny Moerkerke
137a1b6cf5
Feat/is dragging prop (#2025)
* fix: lion-selected-filelist, restored composed: true and bubbles: true for 'file-remove-requested' event, otherwise removing files for subclassers won't work

* feat: added isDragging property
2023-06-27 09:18:41 +02:00
Danny Moerkerke
0745ce8526
Fix/input file types (#2021)
* fix: lion-selected-filelist, restored composed: true and bubbles: true for 'file-remove-requested' event, otherwise removing files for subclassers won't work

* chore: exported correct types for lion-input-file

* fix: fixed type errors
2023-06-22 10:48:49 +02:00
Danny Moerkerke
259e0dd468
Fix/remove file (#2018)
* fix: lion-selected-filelist, restored composed: true and bubbles: true for 'file-remove-requested' event, otherwise removing files for subclassers won't work

* fix: lion-selected-filelist, restored composed: true and bubbles: true for 'file-remove-requested' event, otherwise removing files for subclassers won't work

* fix: removed composed: true and bubbles: true and set eventlistener directly on lion-selected-file-list

* Update packages/ui/components/input-file/src/LionInputFile.js

* Update packages/ui/components/input-file/src/LionInputFile.js

* Update packages/ui/components/input-file/src/LionInputFile.js

* fix: fixed test

* Update packages/ui/components/input-file/test/lion-input-file.test.js

* chore: format

* fix

---------

Co-authored-by: Thijs Louisse <thijs.louisse@ing.com>
2023-06-20 17:32:05 +02:00
gerjanvangeest
7ec90dcb06
chore: add checkboxIndeterminate test suite (#2013) 2023-06-14 16:24:34 +02:00
gerjanvangeest
02e61285dd
Revert "fix: create exports for test-suites and test-helpers (#2010)" (#2012)
This reverts commit 3cfc9f9744.
2023-06-13 15:14:47 +02:00
gerjanvangeest
1ea5730aa5
fix(localize): align currency symbol usage for all browsers (#2011) 2023-06-13 14:57:26 +02:00
gerjanvangeest
3cfc9f9744
fix: create exports for test-suites and test-helpers (#2010) 2023-06-13 08:47:56 +02:00
gerjanvangeest
dbc3fc2db6
fix(combobox): submit form on [Enter] (#2005)
fix(combobox): submit form on [Enter]
2023-06-08 18:14:14 +02:00
Danny Moerkerke
8b9c8050e5
Fix/upload response (#2000)
* feat(input-file): create input-file component

* chore: improvements after review

* chore: update after review

* chore: update translations

* chore: - fixed demo with form submit, submit was not prevented
       - fixed checking allowed file extensions
       - fixed clicking on select file button in drag and drop area

* chore: since the input-file does not upload files itself but enables user to select files, I replaced "upload" and "upload" with "select" and "selected" where applicable

* chore: - removed unused properties allowedFileTypes and allowedFileExtensions from lion-input-file
       - cleaned up docs

* chore: - changed type Array.<type> to Array<type>
       - removed redundant type definition

* fix: - FocusMixin: moved registering events for from connectedCallback to firstUpdated since _focusableNode is sometimes not available yet
     - SlotMixin: changed updated to update in since slots were rendered too late (related to previous fix in FocusMixin.js)

* fix: renamed lion-uploaded-file-list.js to lion-selected-file-list.js

* fix: fixed test for lion-selected-file-list

* fix: fixed typ

* wip

* fix: - fixed issue with multiple file selection where element would not select valid files after invalid ones
     - added getMessage method to FileValidation that returns empty string to prevent message being shown that error message must be configured
     - fixed tests

* chore: replaced `uploadOnFormSubmit` with `uploadOnSelect` and flipped the default value to false. When `uploadOnSelect` is set to true, the file will be uploaded as soon as it is selected.

* fix: - replaced `uploadOnFormSubmit` with `uploadOnSelect` and flipped the default value to false. When `uploadOnSelect` is set to true, the file will be uploaded as soon as it is selected.
     - fixed issue where a valid file was not selected and added to the file list if it was preceded by an invalid file

* chore: removed redundant README.md

* fix: fixed failing test

* chore: added missing type annotation

* chore: annotated event param as optional

* chore: corrected property names in demo and removed demo of prefilled state

* chore: renamed `_fileSelectResponse` back to `uploadResponse` and restored demo of prefilled state

---------

Co-authored-by: gvangeest <gerjan.van.geest@ing.com>
Co-authored-by: Thijs Louisse <Thijs.Louisse@ing.com>
2023-06-07 12:57:34 +02:00
Thijs Louisse
6893421779
chore: SlotRerenderObject aligned with reactive cycle (docs + changelog) (#1999) 2023-06-07 09:16:28 +02:00
gerjanvangeest
d2de984f0b
Feat/input file (#1881)
* feat(input-file): create input-file component

* chore: improvements after review

* chore: update after review

* chore: update translations

* chore: - fixed demo with form submit, submit was not prevented
       - fixed checking allowed file extensions
       - fixed clicking on select file button in drag and drop area

* chore: since the input-file does not upload files itself but enables user to select files, I replaced "upload" and "upload" with "select" and "selected" where applicable

* chore: - removed unused properties allowedFileTypes and allowedFileExtensions from lion-input-file
       - cleaned up docs

* chore: - changed type Array.<type> to Array<type>
       - removed redundant type definition

* fix: - FocusMixin: moved registering events for from connectedCallback to firstUpdated since _focusableNode is sometimes not available yet
     - SlotMixin: changed updated to update in since slots were rendered too late (related to previous fix in FocusMixin.js)

* fix: renamed lion-uploaded-file-list.js to lion-selected-file-list.js

* fix: fixed test for lion-selected-file-list

* fix: fixed typ

* wip

* fix: - fixed issue with multiple file selection where element would not select valid files after invalid ones
     - added getMessage method to FileValidation that returns empty string to prevent message being shown that error message must be configured
     - fixed tests

* chore: replaced `uploadOnFormSubmit` with `uploadOnSelect` and flipped the default value to false. When `uploadOnSelect` is set to true, the file will be uploaded as soon as it is selected.

* fix: - replaced `uploadOnFormSubmit` with `uploadOnSelect` and flipped the default value to false. When `uploadOnSelect` is set to true, the file will be uploaded as soon as it is selected.
     - fixed issue where a valid file was not selected and added to the file list if it was preceded by an invalid file

* chore: removed redundant README.md

* fix: fixed failing test

* chore: added missing type annotation

* chore: annotated event param as optional

---------

Co-authored-by: Danny Moerkerke <danny.moerkerke@ing.com>
Co-authored-by: Thijs Louisse <Thijs.Louisse@ing.com>
2023-06-06 11:30:43 +02:00
Gyulai Levente
bdc7455610
feat(@lion/ui): add _currencyDisplayNodeSlot to LionInputAmount (#1988)
* feat(@lion/ui): add _currencyDisplayNodeSlot to LionInputAmount

* Remove test for feature what is not supported anymore
* Add documentation
* Add test for customizable currency slot
2023-06-01 08:55:42 +02:00
SynnefonK
ac2f2155f2
Merge pull request #1990 from ing-bank/subclasser-example/button
Subclasser example/button
2023-05-31 12:16:18 +02:00
Thijs Louisse
32ab5bfd41 fix(button): only pre-style non-shorthands for easier extension 2023-05-30 18:44:41 +02:00
SynnefonK
7089ea54e3
Merge pull request #1963 from Sciurus7/autofocus-ui
fix(form-core) sync autofocus to focusable node (fixes #1775)
2023-05-25 10:34:39 +02:00
Monika Nawój
e310c08af1
fix(LionInputDatePicker): remove endless loop on InvalidDate modelValue (#1984)
* refactor: used IsDate validator instead of custom isValidDate function

* fix: used IsDate validator to validate modelValue before it's passed to lion-calendar's selctedDate

* test: Updated lion-input-datepicker tests to include example of handling invalid modelValue

* docs: Updated docs to include example with invalid modelValue

* refactor: updated returned type of __getSyncDownValue method

* changset: updated changeset for @lion/ui

* refactor: linting fix

* refactor:  import path updated

Co-authored-by: gerjanvangeest <gerjanvangeest@users.noreply.github.com>

* refactor: label added to Faulty prefilled datepicker input

Co-authored-by: gerjanvangeest <gerjanvangeest@users.noreply.github.com>

* test: updated test to include more obvious invalid date value

---------

Co-authored-by: gerjanvangeest <gerjanvangeest@users.noreply.github.com>
2023-05-24 11:51:26 +02:00
gerjanvangeest
88e6ca03ca
fix(localize): parseNumbers as heuristic if there is only 1 separator and 2 or less decimals e.g. 12.34 (#1976) 2023-05-17 12:07:00 +02:00
gerjanvangeest
56b3d334f6 chore(dialog): add focus tests 2023-05-16 12:01:18 +02:00
Danny Moerkerke
12f1800806 fix: lion-calendar: when determining if user interacted with a day button we no longer examine event.target but event.composedPath()[0] since it otherwise fails in Firefox 111+ 2023-04-19 15:34:03 +02:00
Sciurus7
251de2c84e fix(form-core) use updated over attributeChangedCallback 2023-04-17 16:42:48 +02:00
Sciurus7
2683a73080 fix(form-core) sync autofocus to focusable node 2023-04-14 13:39:05 +02:00
Danny Moerkerke
5b8d655f10
Fix/dialog scroll to top ios (#1957)
* fix: possible fix for iOS focus issue WIP

* chore: added test for elementToFocusAfterHide WIP

* chore: dialog tests for elementToFocusAFterHide

* chore: added test to assert element specified in `elementToFocusAfterHide` config key of lion-dialog is scrolled into the viewport

* chore: - added test to assert that element specified in dialog config key `elementToFocusAfterHide` is not focused when the dialog is closed if the user deliberately moved focus to another element while the dialog was open
       - added changeset

* chore: - removed unneeded button
       - renamed this.__activeElement to this.__activeElementRightBeforeHide in OverlayController.js
       - set this.__activeElementRightBeforeHide to this.contentNode.getRootNode().activeElement instead of document.activeElement

* chore: moved test to assert if element specified in dialog config key elementToFocusAfterHide is in viewport when dialog is closed to OverlayController.test.js

---------

Co-authored-by: Thijs Louisse <Thijs.Louisse@ing.com>
2023-04-13 15:04:23 +02:00
Barni
a5f35158c0
feat(@lion/ui): add _previousIconTemplate and _nextIconTemplate to LionCalendar (#1954) 2023-04-03 17:00:30 +02:00
gvangeest
ddea63b381 fix(combobox): update option list after clear 2023-03-22 13:07:34 +01:00
gvangeest
5516bec4ba chore(overlays): add documentation about role=none is used 2023-03-20 14:18:53 +01:00
gerjanvangeest
a2b81b2693
feat(combobox): add requireOptionMatch flag and MatchesOption validator
Co-authored-by: Thijs Louisse <thijs.louisse@ing.com>
2023-03-16 18:18:40 +01:00
barni52
1f018bafdf feat(@lion/ui): add _invokerIconTemplate to LionInputDatepicker 2023-03-16 15:30:02 +01:00
Thijs Louisse
adfa29a049 fix(switch): remove one of the two nested role="switch" 2023-03-15 11:31:43 +01:00
gvangeest
0d4c42ab64 fix(listbox): allow use of arrow keys when focus is not on listbox 2023-03-15 11:10:48 +01:00
Danny Moerkerke
3256892ce9
fix: checked-changed event is no longer fired on element initialization when checked is set through attribute 2023-03-15 10:59:04 +01:00
Pascal Schneider
183c86af26
fix: more sensible default for German iban validator translation 2023-03-15 09:42:48 +01:00
Danny Moerkerke
075d5077bd
Merge pull request #1934 from ing-bank/fix/accordion-selector-fix
fix: changed selectors for invokers and content to only select slotte…
2023-03-15 09:35:53 +01:00
Danny Moerkerke
7cba2ef859 chore: added test 2023-03-14 13:40:40 +01:00
jorenbroekema
42a463eee1 fix(ui/overlays): set <dialog> wrapping el padding to 0 2023-03-11 00:05:23 +01:00
Danny Moerkerke
3f1c83a180 fix: changed selectors for invokers and content to only select slotted elements that are direct descendants. This is to prevent that slotted elements in accordion content and invokers are also selected and the amount of invokers and content is incorrect 2023-03-09 15:33:24 +01:00
gvangeest
4226a0144c fix(combobox): add translations 2023-02-28 15:03:55 +01:00
gvangeest
943618fdcb fix(combobox): fix direct open and closing of the overlay on focus of empty input when showAllOnEmpty 2023-02-23 12:39:36 +01:00
gvangeest
1c18057cee fix(combobox): make the first occurrence of a string highlighted, instead of the last 2023-02-15 08:47:32 +01:00
Danny Moerkerke
84173cdba1
fix(@lion/ui): [select-rich] listbox element always focused in overlay
when the overlay is shown, the "autofocus" attribute is added to _listboxNode (_inputNode) to make sure that keyboard navigation continues to work when the element is inside a bottomsheet. When the overlay is closed the attribute is removed.
2023-02-09 18:41:18 +01:00
SynnefonK
faae93376a
chore: camelCase linting for properties 2023-02-08 20:22:26 +01:00
Danny Moerkerke
eff3259eea
Feat/localize manager override data (#1900)
feat: - added `allowOverridesForExistingNamespaces` parameter to `addData` method of LocalizeManager to allow for changing data in a namespace for a given locale
2023-02-02 17:04:49 +01:00
gvangeest
13185da02a fix(localize): don't set modelValue to unparseable if date has a negative timezone
Co-authored-by: Danny Moerkerke<Danny.Moerkerke@ing.com>
2023-02-01 17:42:19 +01:00
Danny Moerkerke
a47a6e615b chore: - added test to assert that modelValue of lion-select is updated when the value or text of one or more options are changed
- added changeset
2023-02-01 17:15:51 +01:00
Thijs Louisse
853c517ec0 fix(select): sync values with async option contents 2023-02-01 17:15:51 +01:00
Thijs Louisse
cee40e5588 chore(@lion/ui): all tests side effect free wrt localize 2023-02-01 16:06:30 +01:00
Thijs Louisse
467ba6bf0b feat(@lion/ui): localize side effect free internally 2023-02-01 16:06:30 +01:00
Thijs Louisse
6712934782 feat(@lion/ui): getLocalizeManager method, for side-effect-free localize 2023-02-01 16:06:30 +01:00
gvangeest
0efce8e18b fix(localize): parse negative numbers correctly 2023-01-25 11:06:17 +01:00
Thomas Allmer
851329eee1 fix: correct msgLit return type 2023-01-24 10:32:04 +01:00
Joren Broekema
a5330c922c
fix(icon): non-fatal console error for missing icons (#1884)
* fix(icon): non-fatal console error for missing icons
2023-01-23 12:37:18 +01:00
Ryan
980a67eba1 Update namespace type for localize mixin 2023-01-23 12:24:50 +01:00
gvangeest
9f6270b340 fix(select-rich): set focusableNode correctly so focused and focused-visible attributes are set when invoker gets focus 2023-01-16 10:06:18 +01:00
Danny Moerkerke
9fb14fa1c5 fix: - rearranging invokers and content for a correct tab order is now implemented by changing the slot attributes of both instead of moving them
- changed css for this implementation
     - fixed tests
     - added changeset
2023-01-16 09:57:24 +01:00
Thijs Louisse
af2e0293a1 fix(ui): [overlays]: enhance adoptStyles fallback and make testable 2023-01-12 11:35:01 +01:00
gvangeest
9a43dc4d89 fix(input-tel-dropddown): add translations for 'All countries' and 'Suggested countries' labels 2023-01-04 11:17:49 +01:00
gerjanvangeest
fd09f652d4
fix(select-rich): solve case of having singleOption and hassNoDefaultSelected at the same time (#1863) 2022-12-29 10:37:40 +01:00
Thijs Louisse
973b6ff9ac chore: small cleanup and RichSelect demo fix 2022-12-20 19:46:57 +01:00
Thijs Louisse
7ac0a42224 fix(ui): overlay fixes (responsive backdrop/select-rich/tooltip) 2022-12-16 08:47:48 +01:00
Thijs Louisse
5e70716862 fix(ui): prevent infinite tooltip loops 2022-12-15 16:52:02 +01:00
Danny Moerkerke
71906ed316 chore: - simplified selectors for content and invoker
- mentioned accordion in changeset
2022-12-14 13:56:27 +01:00
Danny Moerkerke
c1fa12fbd2 fix: narrowed the scope of the selectors that query [slot=invoker] and [slot=content] to prevent that any nested elements with [slot=invoker] and [slot=content] are moved to slot=_accordion as well 2022-12-14 13:56:27 +01:00
Thijs Louisse
fafd922251 fix(ui): add adopted stylesheets once; attach correctly to body 2022-12-12 14:31:14 +01:00
Thijs Louisse
a0fefee88b chore: update tests for new en-PH Intl standards USD + JPY 2022-12-09 15:54:28 +01:00
Thijs Louisse
a96c9692af chore: fix elementToFocusAfterHide when shadow dom is used 2022-12-09 15:54:28 +01:00
Thijs Louisse
0bc604d600 fix: demos and overlay styles
chore: overlay documentation fixes
2022-12-09 15:54:28 +01:00
Thijs Louisse
9d31c179b1 chore: improve SlotMixin feedback 2022-12-09 15:54:28 +01:00
Thijs Louisse
36910e5d70 fix(ui): simplify datepicker structure 2022-12-09 15:54:28 +01:00
Thijs Louisse
64c0e26c20 feat: use dialog element for top layer functionality of all overlays 2022-12-09 15:54:28 +01:00
Thijs Louisse
5e15942386 chore: fix all form integrations tech debt 2022-12-09 15:54:28 +01:00
Thijs Louisse
f147024ce8 feat(ui): validate-messages without side effects 2022-12-01 16:42:21 +01:00
Thijs Louisse
f0e6ee922c feat(ui): export side effect free singletons for deduping multiple instances before "main" singleton instance is registered 2022-11-28 18:02:48 +01:00
Thijs Louisse
de51dae20b fix(ui): use the correct names for singleton registrations 2022-11-28 18:02:48 +01:00
Thomas Allmer
11f6f19a09 fix(ui): use scoped-elements version that exposes types 2022-11-28 13:28:39 +01:00
Thijs Louisse
5dd5a848f0 fix(core): SlotMixin: conditional slots should not break init loop 2022-11-23 22:22:35 +01:00
Thijs Louisse
2572012d8e chore: enhance SlotMixin docs 2022-11-23 16:19:09 +01:00
Thijs Louisse
fe02eaf84b fix(lion-input-tel): polish/cleanup input-tel(-dropdown) 2022-11-23 16:19:09 +01:00
Thijs Louisse
fe7fedf629 chore: type fixes after pkg-lock regeneration 2022-11-23 14:48:53 +01:00
Thijs Louisse
9b4cbb1dfc fix(lion-input-tel): upgrade to awesome-phonenumber v4 2022-11-23 14:48:53 +01:00
Thomas Allmer
dec62b3b0d fix(ui): type requestUpdate 2022-11-22 19:29:37 +01:00
Thijs Louisse
36260d39d1 chore: add exception in test for "keepBodySize" on MacSafari, since body.body.global-overlays-scroll-lock-ios-fix renders scrollbar 2022-11-21 12:59:54 +01:00
Thijs Louisse
5d76318e45 chore: test "preventScroll edge cases" iOS and MacSafari 2022-11-21 12:59:54 +01:00
Rick de Hoop
53459451a7 fix(overlays): MacSafari fix for interactive content in dialog with preventsScroll 2022-11-21 12:59:54 +01:00
Jose C. Perea
e090d2d861 fix(overlay-manager): disable transition when reduced motion enabled 2022-11-18 16:38:13 +01:00
Thomas Allmer
eee83cca63 fix(ui): export types that are useful for subclassers 2022-11-17 12:08:26 +01:00
Thijs Louisse
d6d3810f7c chore: add a11y and SlotMixin docs 2022-11-17 12:08:12 +01:00
Thijs Louisse
d7938ef6b3 fix(input-tel-dropdown): fix interaction states 2022-11-17 12:08:12 +01:00
Thijs Louisse
ae06eb01f3 fix(input-tel(-dropdown)): align with SlotMixin rerender functionality 2022-11-17 12:08:12 +01:00
Thijs Louisse
11436fc01c fix: allow rerender in SlotMixin 2022-11-17 12:08:12 +01:00
Thijs Louisse
730e59c343 chore: SlotMixin scoped els test fix 2022-11-09 10:58:50 +01:00
gvangeest
da057efcf0 fix(localize): fix and simplify parseMode check 2022-11-09 09:58:46 +01:00
Danny Moerkerke
45f48c7ccd fix: changed import in type definition from @lion/core to lit 2022-11-08 07:58:17 +01:00
Danny Moerkerke
a1f1270671 fix: fixed import in @typedef 2022-11-07 16:04:34 +01:00
Danny Moerkerke
c7ea03577c chore: moved lion-drawer to correct directories for new lion/ui setup 2022-11-07 14:48:26 +01:00
Thomas Allmer
c1982965c3 feat: introduce wireit and ts use node16 resolution 2022-11-07 11:39:40 +01:00
Thomas Allmer
d938e464b4 chore: introduce a component src folder 2022-10-31 16:55:07 +01:00
Thomas Allmer
8114bae86f chore: rename ui/src to components 2022-10-31 16:55:07 +01:00