Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(module:datepicker): fix multiple CultureInfo properties #1492

Merged

Conversation

anranruye
Copy link
Member

@anranruye anranruye commented May 9, 2021

🤔 This is a ...

  • New feature
  • Bug fix
  • Site / documentation update
  • Demo update
  • Component style update
  • Bundle size optimization
  • Performance optimization
  • Refactoring
  • Code style optimization
  • Test Case
  • Branch merge
  • Other (about what?)

🔗 Related issue link

fixes #1491

💡 Background and solution

#1480 add CultureInfo property to base input class, but there is already a CultureInfo property for DatePicker.

📝 Changelog

Language Changelog
🇺🇸 English
🇨🇳 Chinese

☑️ Self Check before Merge

⚠️ Please check all items below before review. ⚠️

  • Doc is updated/provided or not needed
  • Demo is updated/provided or not needed
  • Changelog is provided or not needed

@github-actions
Copy link

github-actions bot commented May 9, 2021

Prepare preview

@codecov-commenter
Copy link

codecov-commenter commented May 9, 2021

Codecov Report

Merging #1492 (70cba0d) into master (47e3e94) will not change coverage.
The diff coverage is 0.00%.

Impacted file tree graph

@@          Coverage Diff           @@
##           master   #1492   +/-   ##
======================================
  Coverage    0.00%   0.00%           
======================================
  Files         453     453           
  Lines       28499   28501    +2     
======================================
- Misses      28499   28501    +2     
Impacted Files Coverage Δ
components/core/Base/AntInputComponentBase.cs 0.00% <0.00%> (ø)
components/date-picker/internal/DatePickerBase.cs 0.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 47e3e94...70cba0d. Read the comment docs.

@ElderJames ElderJames requested a review from anddrzejb May 9, 2021 06:30
@@ -94,7 +94,7 @@ public virtual TValue Value
public string Size { get; set; } = AntSizeLDSType.Default;

[Parameter]
public CultureInfo CultureInfo { get; set; } = CultureInfo.CurrentCulture;
public virtual CultureInfo CultureInfo { get; set; } = CultureInfo.CurrentCulture;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I made a mistake here and we should actually use LocaleProvider.CurrentLocale.CurrentCulture.

Copy link
Member Author

@anranruye anranruye May 10, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My view is just the opposite. LocaleProvider.CurrentLocale.CurrentCulture is wrong. LocaleProvider.CurrentLocale.CurrentCulture returns the cultureInfo wrote in the json file. If the user set a culture("xx-xx") which has no corresponding json file, then _locale.CurrentCulture will fall back to en, but CultureInfo property is xx-xx.

I mean, actually CultureInfo property may be different from Locale.CurrentCulture. If LocaleProvider.CurrentLocale.CurrentCulture is right, then we should also do somethink like:

        public override CultureInfo CultureInfo
        {
            get
            {
                return base.CultureInfo;
            }
            set
            {
                _locale = LocaleProvider.GetLocale(value.Name).DatePicker;
                base.CultureInfo = _locale.CurrentCulture;
            }
        }

which is unreasonable.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the problem we have here is that Locale is trying to do the same thing as CultureInfo plus some AntDesign specific stuff. I agree it is still needed, but possibly could be hidden behind CultureInfo and not really exposed to the user. Maybe as an option, through DI, for advanced scenarios. This way CultureInfo could be used as the only definition of culture/locale. Appropriate json would be retrieved based on CultureInfo to cover the AntDesign specific requirements. This way we could skip the double-data entry. Or allow json to "override" CultureInfo if necessary. I think there was an idea to "redo" the whole localization logic, but no one decided to tackle this problem, and this is indeed a problem as it will affect the whole library. @ElderJames what do you think?

set
{
if (!_isLocaleSetOutside && base.CultureInfo != value && base.CultureInfo.Name != value.Name)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am worried about this a bit. What if a consumer decides to use the same CultureInfo as the default but only changes some minor part, like CurrencySymbol? If I understand this correctly, new CultureInfo will not be picked up...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't quite understand. To change some minor parts, the user can assign a new Locale instance to the Locale property, which will override the CultrueInfo settings. And, I think this is for DatePicker only, so why do you use CurrencySymbol as the example? And, if the user don't want to override the language of only a single component instance, he want to apply a global configuration, I think this should be done at the application startup stage, not at runtime.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clearly my example was not a perfect one, as obviously you are right - currency has nothing to do with date. And because DatePicker anyway will currently use Locale then whatever user chooses will not have any effect.

As I wrote in my previous comment, I think this separation into Locale & CultureInfo may not be the best choice. But I am not the one to decide here. I do think though a consumer of the lib should have ability to set a different locale for each component. But this could be also achieved by scoping services to a component if we are going to do this through DI.

@ElderJames ElderJames merged commit 164d161 into ant-design-blazor:master May 11, 2021
ElderJames added a commit that referenced this pull request May 16, 2021
* fix(module: select): enum default value protection (#1368)

* fix(module: affix): can't affix while OffsetTop is zero (#1373)

* fix(module: affix): can't affix while OffsetTop is zero

* use affixed setter for rerendering

* limit rerendering

* fix(module: input): binding data when the Enter key is pressed (#1375)

* fix(module: table): ellipsis can't work (#1376)

* feat: add element component (#1378)

* refactor: rename `HtmlElement` property case

* rename the directory name for overlay

* add element component

* fix(module: table): Unify FieldName, add DisplayAttribute for DiplayName, fix Filter for DataIndex (#1372)

* fix(module: table): Unify FieldName value

* fix(module: table): Get column name from DisplayAttribute

* fix(module: table): Filter for DataIndex

* docs(module: table): Intuitive sorterCompare for Filter demo

* fix(module: table): fix header title doesn't display when Sortable is false

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(dialog): add Dispose lifecycle function to Dialog (#1379)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: input): preserve focus and caret position for input password when visibility is toggled (#1377)

* set focus when the password button is clicked

* add methods for selection

* set selectionStart after Focus

* fix typescript

* set selectionEnd as well

* fix a stupid if-condition-bug

* remove checks for element

* add selectionStart to getDomInfo

* get selectionStart from Element

* delete unneeded js method

Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): can not use DataIndex nullable mode with not nullable property (#1382)

* fix(module: table): column header sorter not refresh after ClearSorter is called (#1385)

* fix(module:table): column header sorter not refresh after ClearSorter is called

* add judgment condition for calling StateHasChanged in IFieldColumn.ClearSorter()

* fix(module: form): validation message unique (#1391)

* fix(module: tag): closable typo and delete mode (#1393)

* fix(module: tag): closable typo and delete mode

* return early

* test(module: divider): divider tests (#1397)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat(module: modal): support define modal's style in ModalOptions (#1400)

* fix(module: checkbox & switch): Checked parameter binding (#1394)

* fix(module:checkbox): allow binding to Checked parameter

* fix(module:switch): allow binding to Checked parameter

* fix(modules): checkbox & switch get AntInputBoolComponentBase class

* test(module:switch): add tests

* test(module:checkbox): add tests

* test(module:divider): simplify by using id:ignore

* docs(module:checkbox): bind example

* docs(module:switch): bind example

* fix(module:switch): add Control + docs + tests

* feat(module:checkboxgroup): add layout and mixed mode

* fix: review comments + tests

* fix(module:checkboxgroup): parameter name should be MixedMode

added more tests

* fix demo

* fix(module:checkboxgroup): allow toggling between modes

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): OnDataSourceChange called when expected (#1419)

* fix(module:select): OnDataSourceChange called when expected

* test(module:select): add missing scenario

* fix(module: table): DataIndex filter pop up (#1421)

* fix(module:overlayTrigger): TrigerRefernece points to OverlayTrigger.Ref.

* fix(module:overlay): Show waits for competing code to finish

* Update OverlayTrigger.razor.cs

* clean code

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat: use ResizeObserver Api instead of window.resize (#1392)

* feat: use ResizeObserver Api instead of window.resize

* fix(module:select): fall back to window.resize in IE11.

* fix(module:domEventService): switch from IsIE11 to IsResizeObserverSupported

* fix: Console.WriteLine removed

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): check null in set sorter method (#1423)

* fix(module: datepicker): validate manually entered date against format (#1389)

* fix(module:datepicker): validate manually entered date against format

* fix(module:datepicker): keep frozen the panel until valid date entered

* fix(module:datepicker): switch to current culture format

* fix(module:datepicker): build fix

* fix(module:datepicker): use InvariantCulture when calling ToString on date

* fix(module:datepicker): FormatAnalyzer handles also year, week, month & quarter picker

* fix(module:datepicker): FormatAnalyzer broken tests

* fix: FormatAnalyzer handles prefixes in format.

Suffix is handled for picker type = "year"
Tests include validation of not changing state

* fix: all modes go through format analyzing (inluding week&quarter)

* fix(module:datepickerbase): InternalFormat initalized properly for all modes

* fix(module:rangepicker): reset opposing date when in conflict with current

* fix(module:rangePicker): handle null in second part of range

* fix(module:datepicker): switch from BindConverter to partials

* tests(module:datepicker): FormatAnalyzer new tests to cover switch from BindConverter

* tests(module:datepicker): missed change in tests

* fix: focus, key events, reset value to original if not confirmed

* fix: bug fix on range & clean-up

* Update DatePicker.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: overlay): issues in boundaryAdjustMode (#1420)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): incorrect size (#1432)

* fix(module: cascader): incorrect size

* add test for cascader size

* fix(module: table): fix wrong spell for TableFilterCompareOperator.EndsWith (#1434)

* fix(module: table): remove an redundant whitespace

* fix(module: table): fix wrong spell

* fix(module: table): fix wrong spell

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): add SelectedNodesChanged and invoke it after clear selected (#1437)

* fix(module: table): fix spell mistake for TableFilterType.FieldType (#1442)

* style(module:table): fix spell mistake for TableFilterType.FieldType

* style(module:table): fix spell mistake for TableFilterType.FieldType

* fix(module: select): fix error for nullable TItem (#1451)

* fix(module: checkbox): remove Value initialization blocking (#1459)

* fix(module:checkbox): remove Value initialization blocking

* Update CheckboxTests.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): support IEnumerable in form (#1460)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): fix dropdown width for IE (#1469)

* fix(module:select): fix dropdown width for IE

* fix(module:select): add a comment to explain the change

* revert 'merge local branch'

* revert 'merge local branch'

* revert 'merge local branch'

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: dialog): modify delay time to DOM_ MIN_ TIMEOUT_ VALUE (#1445)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: datepicker): Date picker panel click closing + some issues from #1431 (#1452)

* fix(module:datetime) keep open when click on panel

fix: tab key behavior
blur/show optimization

* fix(module:rangepicker): tab key behavior improvements

blur/focus optimizations

* fix(module:overlay): overlay visible before positioning

fix: flickering

* fix(module:datepicker): handle escape key

* fix(module:datepicker): mark properly current date on panel

* fix(module:datepicker): week mode calculates weeks properly

* fix(module: table): exception is thrown when the DataIndex ends with the get_Item method. (#1485)

* fix(module: table): set DisplayName to null if MemberExpression is not found in the DataIndex expression tree (#1488)

* feat(module: cascader): support showSearch (#1484)

* feat(module: cascader): support showSearch

* add empty dropdown

* fix clear icon

* fix(module: InputNumber): input number self changing (#1490)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: inputNumber): allow culture info to format input (#1480)

* fix(module:inputnumber): allow culture info to format input

* docs(module:inputnumber): demo & docs

* fix translation

Co-authored-by: ElderJames <shunjiey@hotmail.com>

* docs: update docs for modal dragging (#1497)

* fix(module: table): fix built-in filter select option width (#1500)

* fix(module: datepicker): fix multiple CultureInfo properties (#1492)

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module: input): fix Input component for Guid type (#1510)

* fix(module:input): fix Input component for Guid type

* docs(module:input): add Guid generic sample code

* fix(module:input): add a comment to explain the change

* fix(module: input): guid optimization (#1515)

* fix:(module: overlay): positioning should take scroll into account (#1511)

Co-authored-by: Ocoka <somewhere@network>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: js function getDom return null bug (#1417)

* fix: js function getDom return null bug (#1374)

* fix: add IF precompiled instruction for observer attribute

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: missing using is causing build failure (#1518)

* change log 0.8.1 (#1522)

* change log 0.8.1

* fix order

Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy>
Co-authored-by: Zonciu Liang <zonciu@zonciu.com>
Co-authored-by: zxyao <zxyao145@gmail.com>
Co-authored-by: MihailsKuzmins <47413092+MihailsKuzmins@users.noreply.github.com>
Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com>
Co-authored-by: 笨木头 <musicvs@163.com>
Co-authored-by: Maksim <maksalmak@gmail.com>
Co-authored-by: Ivan Ocoka <ocokanet@gmail.com>
Co-authored-by: Ocoka <somewhere@network>
@anranruye anranruye deleted the FixDatePickerMultipleCultureInfo branch May 16, 2021 13:57
ElderJames pushed a commit that referenced this pull request Apr 23, 2022
* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module:datepicker): fix multiple CultureInfo properties
ElderJames added a commit that referenced this pull request Apr 23, 2022
* fix(module: select): enum default value protection (#1368)

* fix(module: affix): can't affix while OffsetTop is zero (#1373)

* fix(module: affix): can't affix while OffsetTop is zero

* use affixed setter for rerendering

* limit rerendering

* fix(module: input): binding data when the Enter key is pressed (#1375)

* fix(module: table): ellipsis can't work (#1376)

* feat: add element component (#1378)

* refactor: rename `HtmlElement` property case

* rename the directory name for overlay

* add element component

* fix(module: table): Unify FieldName, add DisplayAttribute for DiplayName, fix Filter for DataIndex (#1372)

* fix(module: table): Unify FieldName value

* fix(module: table): Get column name from DisplayAttribute

* fix(module: table): Filter for DataIndex

* docs(module: table): Intuitive sorterCompare for Filter demo

* fix(module: table): fix header title doesn't display when Sortable is false

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(dialog): add Dispose lifecycle function to Dialog (#1379)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: input): preserve focus and caret position for input password when visibility is toggled (#1377)

* set focus when the password button is clicked

* add methods for selection

* set selectionStart after Focus

* fix typescript

* set selectionEnd as well

* fix a stupid if-condition-bug

* remove checks for element

* add selectionStart to getDomInfo

* get selectionStart from Element

* delete unneeded js method

Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): can not use DataIndex nullable mode with not nullable property (#1382)

* fix(module: table): column header sorter not refresh after ClearSorter is called (#1385)

* fix(module:table): column header sorter not refresh after ClearSorter is called

* add judgment condition for calling StateHasChanged in IFieldColumn.ClearSorter()

* fix(module: form): validation message unique (#1391)

* fix(module: tag): closable typo and delete mode (#1393)

* fix(module: tag): closable typo and delete mode

* return early

* test(module: divider): divider tests (#1397)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat(module: modal): support define modal's style in ModalOptions (#1400)

* fix(module: checkbox & switch): Checked parameter binding (#1394)

* fix(module:checkbox): allow binding to Checked parameter

* fix(module:switch): allow binding to Checked parameter

* fix(modules): checkbox & switch get AntInputBoolComponentBase class

* test(module:switch): add tests

* test(module:checkbox): add tests

* test(module:divider): simplify by using id:ignore

* docs(module:checkbox): bind example

* docs(module:switch): bind example

* fix(module:switch): add Control + docs + tests

* feat(module:checkboxgroup): add layout and mixed mode

* fix: review comments + tests

* fix(module:checkboxgroup): parameter name should be MixedMode

added more tests

* fix demo

* fix(module:checkboxgroup): allow toggling between modes

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): OnDataSourceChange called when expected (#1419)

* fix(module:select): OnDataSourceChange called when expected

* test(module:select): add missing scenario

* fix(module: table): DataIndex filter pop up (#1421)

* fix(module:overlayTrigger): TrigerRefernece points to OverlayTrigger.Ref.

* fix(module:overlay): Show waits for competing code to finish

* Update OverlayTrigger.razor.cs

* clean code

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat: use ResizeObserver Api instead of window.resize (#1392)

* feat: use ResizeObserver Api instead of window.resize

* fix(module:select): fall back to window.resize in IE11.

* fix(module:domEventService): switch from IsIE11 to IsResizeObserverSupported

* fix: Console.WriteLine removed

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): check null in set sorter method (#1423)

* fix(module: datepicker): validate manually entered date against format (#1389)

* fix(module:datepicker): validate manually entered date against format

* fix(module:datepicker): keep frozen the panel until valid date entered

* fix(module:datepicker): switch to current culture format

* fix(module:datepicker): build fix

* fix(module:datepicker): use InvariantCulture when calling ToString on date

* fix(module:datepicker): FormatAnalyzer handles also year, week, month & quarter picker

* fix(module:datepicker): FormatAnalyzer broken tests

* fix: FormatAnalyzer handles prefixes in format.

Suffix is handled for picker type = "year"
Tests include validation of not changing state

* fix: all modes go through format analyzing (inluding week&quarter)

* fix(module:datepickerbase): InternalFormat initalized properly for all modes

* fix(module:rangepicker): reset opposing date when in conflict with current

* fix(module:rangePicker): handle null in second part of range

* fix(module:datepicker): switch from BindConverter to partials

* tests(module:datepicker): FormatAnalyzer new tests to cover switch from BindConverter

* tests(module:datepicker): missed change in tests

* fix: focus, key events, reset value to original if not confirmed

* fix: bug fix on range & clean-up

* Update DatePicker.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: overlay): issues in boundaryAdjustMode (#1420)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): incorrect size (#1432)

* fix(module: cascader): incorrect size

* add test for cascader size

* fix(module: table): fix wrong spell for TableFilterCompareOperator.EndsWith (#1434)

* fix(module: table): remove an redundant whitespace

* fix(module: table): fix wrong spell

* fix(module: table): fix wrong spell

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): add SelectedNodesChanged and invoke it after clear selected (#1437)

* fix(module: table): fix spell mistake for TableFilterType.FieldType (#1442)

* style(module:table): fix spell mistake for TableFilterType.FieldType

* style(module:table): fix spell mistake for TableFilterType.FieldType

* fix(module: select): fix error for nullable TItem (#1451)

* fix(module: checkbox): remove Value initialization blocking (#1459)

* fix(module:checkbox): remove Value initialization blocking

* Update CheckboxTests.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): support IEnumerable in form (#1460)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): fix dropdown width for IE (#1469)

* fix(module:select): fix dropdown width for IE

* fix(module:select): add a comment to explain the change

* revert 'merge local branch'

* revert 'merge local branch'

* revert 'merge local branch'

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: dialog): modify delay time to DOM_ MIN_ TIMEOUT_ VALUE (#1445)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: datepicker): Date picker panel click closing + some issues from #1431 (#1452)

* fix(module:datetime) keep open when click on panel

fix: tab key behavior
blur/show optimization

* fix(module:rangepicker): tab key behavior improvements

blur/focus optimizations

* fix(module:overlay): overlay visible before positioning

fix: flickering

* fix(module:datepicker): handle escape key

* fix(module:datepicker): mark properly current date on panel

* fix(module:datepicker): week mode calculates weeks properly

* fix(module: table): exception is thrown when the DataIndex ends with the get_Item method. (#1485)

* fix(module: table): set DisplayName to null if MemberExpression is not found in the DataIndex expression tree (#1488)

* feat(module: cascader): support showSearch (#1484)

* feat(module: cascader): support showSearch

* add empty dropdown

* fix clear icon

* fix(module: InputNumber): input number self changing (#1490)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: inputNumber): allow culture info to format input (#1480)

* fix(module:inputnumber): allow culture info to format input

* docs(module:inputnumber): demo & docs

* fix translation

Co-authored-by: ElderJames <shunjiey@hotmail.com>

* docs: update docs for modal dragging (#1497)

* fix(module: table): fix built-in filter select option width (#1500)

* fix(module: datepicker): fix multiple CultureInfo properties (#1492)

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module: input): fix Input component for Guid type (#1510)

* fix(module:input): fix Input component for Guid type

* docs(module:input): add Guid generic sample code

* fix(module:input): add a comment to explain the change

* fix(module: input): guid optimization (#1515)

* fix:(module: overlay): positioning should take scroll into account (#1511)

Co-authored-by: Ocoka <somewhere@network>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: js function getDom return null bug (#1417)

* fix: js function getDom return null bug (#1374)

* fix: add IF precompiled instruction for observer attribute

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: missing using is causing build failure (#1518)

* change log 0.8.1 (#1522)

* change log 0.8.1

* fix order

Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy>
Co-authored-by: Zonciu Liang <zonciu@zonciu.com>
Co-authored-by: zxyao <zxyao145@gmail.com>
Co-authored-by: MihailsKuzmins <47413092+MihailsKuzmins@users.noreply.github.com>
Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com>
Co-authored-by: 笨木头 <musicvs@163.com>
Co-authored-by: Maksim <maksalmak@gmail.com>
Co-authored-by: Ivan Ocoka <ocokanet@gmail.com>
Co-authored-by: Ocoka <somewhere@network>
ElderJames pushed a commit that referenced this pull request Apr 30, 2022
* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module:datepicker): fix multiple CultureInfo properties
ElderJames added a commit that referenced this pull request Apr 30, 2022
* fix(module: select): enum default value protection (#1368)

* fix(module: affix): can't affix while OffsetTop is zero (#1373)

* fix(module: affix): can't affix while OffsetTop is zero

* use affixed setter for rerendering

* limit rerendering

* fix(module: input): binding data when the Enter key is pressed (#1375)

* fix(module: table): ellipsis can't work (#1376)

* feat: add element component (#1378)

* refactor: rename `HtmlElement` property case

* rename the directory name for overlay

* add element component

* fix(module: table): Unify FieldName, add DisplayAttribute for DiplayName, fix Filter for DataIndex (#1372)

* fix(module: table): Unify FieldName value

* fix(module: table): Get column name from DisplayAttribute

* fix(module: table): Filter for DataIndex

* docs(module: table): Intuitive sorterCompare for Filter demo

* fix(module: table): fix header title doesn't display when Sortable is false

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(dialog): add Dispose lifecycle function to Dialog (#1379)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: input): preserve focus and caret position for input password when visibility is toggled (#1377)

* set focus when the password button is clicked

* add methods for selection

* set selectionStart after Focus

* fix typescript

* set selectionEnd as well

* fix a stupid if-condition-bug

* remove checks for element

* add selectionStart to getDomInfo

* get selectionStart from Element

* delete unneeded js method

Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): can not use DataIndex nullable mode with not nullable property (#1382)

* fix(module: table): column header sorter not refresh after ClearSorter is called (#1385)

* fix(module:table): column header sorter not refresh after ClearSorter is called

* add judgment condition for calling StateHasChanged in IFieldColumn.ClearSorter()

* fix(module: form): validation message unique (#1391)

* fix(module: tag): closable typo and delete mode (#1393)

* fix(module: tag): closable typo and delete mode

* return early

* test(module: divider): divider tests (#1397)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat(module: modal): support define modal's style in ModalOptions (#1400)

* fix(module: checkbox & switch): Checked parameter binding (#1394)

* fix(module:checkbox): allow binding to Checked parameter

* fix(module:switch): allow binding to Checked parameter

* fix(modules): checkbox & switch get AntInputBoolComponentBase class

* test(module:switch): add tests

* test(module:checkbox): add tests

* test(module:divider): simplify by using id:ignore

* docs(module:checkbox): bind example

* docs(module:switch): bind example

* fix(module:switch): add Control + docs + tests

* feat(module:checkboxgroup): add layout and mixed mode

* fix: review comments + tests

* fix(module:checkboxgroup): parameter name should be MixedMode

added more tests

* fix demo

* fix(module:checkboxgroup): allow toggling between modes

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): OnDataSourceChange called when expected (#1419)

* fix(module:select): OnDataSourceChange called when expected

* test(module:select): add missing scenario

* fix(module: table): DataIndex filter pop up (#1421)

* fix(module:overlayTrigger): TrigerRefernece points to OverlayTrigger.Ref.

* fix(module:overlay): Show waits for competing code to finish

* Update OverlayTrigger.razor.cs

* clean code

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* feat: use ResizeObserver Api instead of window.resize (#1392)

* feat: use ResizeObserver Api instead of window.resize

* fix(module:select): fall back to window.resize in IE11.

* fix(module:domEventService): switch from IsIE11 to IsResizeObserverSupported

* fix: Console.WriteLine removed

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: table): check null in set sorter method (#1423)

* fix(module: datepicker): validate manually entered date against format (#1389)

* fix(module:datepicker): validate manually entered date against format

* fix(module:datepicker): keep frozen the panel until valid date entered

* fix(module:datepicker): switch to current culture format

* fix(module:datepicker): build fix

* fix(module:datepicker): use InvariantCulture when calling ToString on date

* fix(module:datepicker): FormatAnalyzer handles also year, week, month & quarter picker

* fix(module:datepicker): FormatAnalyzer broken tests

* fix: FormatAnalyzer handles prefixes in format.

Suffix is handled for picker type = "year"
Tests include validation of not changing state

* fix: all modes go through format analyzing (inluding week&quarter)

* fix(module:datepickerbase): InternalFormat initalized properly for all modes

* fix(module:rangepicker): reset opposing date when in conflict with current

* fix(module:rangePicker): handle null in second part of range

* fix(module:datepicker): switch from BindConverter to partials

* tests(module:datepicker): FormatAnalyzer new tests to cover switch from BindConverter

* tests(module:datepicker): missed change in tests

* fix: focus, key events, reset value to original if not confirmed

* fix: bug fix on range & clean-up

* Update DatePicker.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: overlay): issues in boundaryAdjustMode (#1420)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): incorrect size (#1432)

* fix(module: cascader): incorrect size

* add test for cascader size

* fix(module: table): fix wrong spell for TableFilterCompareOperator.EndsWith (#1434)

* fix(module: table): remove an redundant whitespace

* fix(module: table): fix wrong spell

* fix(module: table): fix wrong spell

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: cascader): add SelectedNodesChanged and invoke it after clear selected (#1437)

* fix(module: table): fix spell mistake for TableFilterType.FieldType (#1442)

* style(module:table): fix spell mistake for TableFilterType.FieldType

* style(module:table): fix spell mistake for TableFilterType.FieldType

* fix(module: select): fix error for nullable TItem (#1451)

* fix(module: checkbox): remove Value initialization blocking (#1459)

* fix(module:checkbox): remove Value initialization blocking

* Update CheckboxTests.razor

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): support IEnumerable in form (#1460)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: select): fix dropdown width for IE (#1469)

* fix(module:select): fix dropdown width for IE

* fix(module:select): add a comment to explain the change

* revert 'merge local branch'

* revert 'merge local branch'

* revert 'merge local branch'

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: dialog): modify delay time to DOM_ MIN_ TIMEOUT_ VALUE (#1445)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: datepicker): Date picker panel click closing + some issues from #1431 (#1452)

* fix(module:datetime) keep open when click on panel

fix: tab key behavior
blur/show optimization

* fix(module:rangepicker): tab key behavior improvements

blur/focus optimizations

* fix(module:overlay): overlay visible before positioning

fix: flickering

* fix(module:datepicker): handle escape key

* fix(module:datepicker): mark properly current date on panel

* fix(module:datepicker): week mode calculates weeks properly

* fix(module: table): exception is thrown when the DataIndex ends with the get_Item method. (#1485)

* fix(module: table): set DisplayName to null if MemberExpression is not found in the DataIndex expression tree (#1488)

* feat(module: cascader): support showSearch (#1484)

* feat(module: cascader): support showSearch

* add empty dropdown

* fix clear icon

* fix(module: InputNumber): input number self changing (#1490)

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix(module: inputNumber): allow culture info to format input (#1480)

* fix(module:inputnumber): allow culture info to format input

* docs(module:inputnumber): demo & docs

* fix translation

Co-authored-by: ElderJames <shunjiey@hotmail.com>

* docs: update docs for modal dragging (#1497)

* fix(module: table): fix built-in filter select option width (#1500)

* fix(module: datepicker): fix multiple CultureInfo properties (#1492)

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module:datepicker): fix multiple CultureInfo properties

* fix(module: input): fix Input component for Guid type (#1510)

* fix(module:input): fix Input component for Guid type

* docs(module:input): add Guid generic sample code

* fix(module:input): add a comment to explain the change

* fix(module: input): guid optimization (#1515)

* fix:(module: overlay): positioning should take scroll into account (#1511)

Co-authored-by: Ocoka <somewhere@network>
Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: js function getDom return null bug (#1417)

* fix: js function getDom return null bug (#1374)

* fix: add IF precompiled instruction for observer attribute

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* fix: missing using is causing build failure (#1518)

* change log 0.8.1 (#1522)

* change log 0.8.1

* fix order

Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy>
Co-authored-by: Zonciu Liang <zonciu@zonciu.com>
Co-authored-by: zxyao <zxyao145@gmail.com>
Co-authored-by: MihailsKuzmins <47413092+MihailsKuzmins@users.noreply.github.com>
Co-authored-by: mihails.kuzmins <mihails.kuzmins@daytongroup.lv>
Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com>
Co-authored-by: 笨木头 <musicvs@163.com>
Co-authored-by: Maksim <maksalmak@gmail.com>
Co-authored-by: Ivan Ocoka <ocokanet@gmail.com>
Co-authored-by: Ocoka <somewhere@network>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

DatePicker: Multiple CultureInfo paramter defined
4 participants