-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Form edit context dynamic change #1504
Form edit context dynamic change #1504
Conversation
Codecov Report
@@ Coverage Diff @@
## feature #1504 +/- ##
=======================================
Coverage 0.00% 0.00%
=======================================
Files 454 454
Lines 27747 27804 +57
=======================================
- Misses 27747 27804 +57
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You inspire me.
* refactor: replace PropertyAccessHelper to PathHelper (#1386) * feat(module: core): add member path helper * refactor(module: table): replace PropertyAccessHelper to PathHelper * docs: replace path-based-property-access to member-path-helper * refactor(module: select): replace SelectItemPropertyHelper to PathHelper * feat(module: table): add pagination template (#1409) * feat(module: table): add Hidden for columns (#1410) * feat(module: form): expose EditContext (#1464) * feat(module:form): allow access to validation messages * feat(module:form): expose EditContext as readonly property * feat(module: table): add built-in filter for enum types, support null value for List filter type (#1439) * feat(module:table): add built-in filter for not composable enum types, support null value for List filter type * feat(module:table): throw an exception for composable enum types when use built-in filter * Revert "feat(module:table): throw an exception for composable enum types when use built-in filter" This reverts commit 0e04ed9. * feat(module:table): add support for null value localization * docs(module: table): update for enum build-in filter * feat(module:table): add built-in filter for composable enum types * docs(module: table): update for enum built-in filter * feat(module: table): add enum built-in filter * feat: add static constructor to EnumHelper Co-authored-by: 令远 孔 <lingyuan.kong@outlook.com> * fix(module: form): expose LabelStyle property (#1503) * feat:(module: form): edit context dynamic change (#1504) * tests: project up to standards * fix(module:form): allow EditContext change * feat(module: notification): add NotificationRef support (#1498) * feat: add NotificationRef support * docs: update docs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: tag): Add custom colors and Enum of Preset Colors (#1514) * merge * feat(tag): add custom colors and enum presets * Update package.json fix: remove vscode rubbish * feat: add global PresetColor, and new PresetColor param * feat: add preset color to Badge * feat: tag style calcuated on setter * fix: user style is appended to stringbuilder * empty commit Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> * chore: sync ant-design v4.16.0 (#1569) * feat(i18n): Add French short week days (#1521) * feat(module: form): support set validation rules on FormItem (#1516) * feat(module: form): support set validation rules on FormItem(not complete yet) * refactor(module: form): optimized code * feat(module: form): support Whitespace rule * feat(module: form): support [message、pattern、transform、validator、whitespace] rules * feat(module: form): support type rule * feat(module: form): support [defaultField、oneOf、fields、type] rules * feat(module: form): support custome validate messages(without test) * test(module: form): complete RuleValidate_ValidateMessages test * feat(module: form): complete DynamicRule demo, refactor code, fix bugs * feat(module: form): support ValidateMessages param * doc(module: form): add "Rules" and "ValidateMessages" docs * fix: Rule.Max's errorMessage is wrong * refactor: rename Rule to FormValidationRule * test: rename Rule to FormValidationRule * chore: refactor code and rename classes * Update ValidateMode.razor * Update FormValidateErrorMessages.cs * Update FormValidateHelper.cs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): filter enhancement (#1563) * feat(module: table): allow access to filter operator and condition * feat(module: table): allow access to filter operator and condition * feat(module:table): allow remove the first filter * Update Column.razor * feat(module:table): modify closing button position * feat(module:table): match new style * feat(module:table): add header column divider * fix(module:table): apply filter when close the filter panel by clicking the filter icon * Update Column.razor * style(module:table): trim Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * fix(module:overlaytrigger): fix overlay not close after overlay size changes * unify muiltiple filter popup containers to one * refactor(module: table): optimize render fragments (#1597) * refactor(module: table): restore Table.Filters to IEnumerable<TableFilter<TData>> type (#1608) * feat(module: select): support simple data source (#1541) * feat(module: select): support simple data source * remove judgement for type of item and value * Update Select.razor.cs * fix(module: table): add RemoteDataSource (#1558) * feat(module:table): add PaginationMode parameter * fix(module:table): fix pagination * docs(module:table): add doc for PaginationMode attribute * add a demo file * docs(module:table): add demo for pagination mode * feat(module:table): add RemoteDataSource property * delete the demo for PaginationMode * Update Table.razor.cs * add `ajax` demo * Update ajax.md * Update Ajax.razor * fix demo * clear demo * fotmat demo * delete StateHasChanged Co-authored-by: ElderJames <shunjiey@hotmail.com> * add Visible back to Tag.razor.cs * Update SearchLoading.razor and idnex.en-US.md * Update index.zh-CN.md * feat(module: DatePicker): support disable one of range-picker inputs (#1648) * feat(module: rangepicker): support disable one of inputs * doc: update doc * feat(module: dropdown): each button customization (#1659) * feat(module:dropdownbutton): each button customization * fix: Tag tests * feat(module: tabs): add OnClose event and TabTemplate (#1698) * feat(module: tab): add onclose event and tabtemplate * add tests * feat(module: tabs): add reuse tabs routeview (#1704) * fix(module: tabs): Exception caused by cascade assignment to TabTemplate (#1708) * feat(module: tree): support check all from code (#1722) Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> * refactor(module: tree): add draggable, fix default value binding (#1517) * delete demo docs * fix tree default value and dnd * fix tree line and keys * fix switcher icon and line * fix line demo * fix switcher * add DirectoryTree demo * fix draggable demo * clean code * clean code * clean up the classmapper call * update docs * fix the docs * fix comment Co-authored-by: James Yeung <shunjiey@hotmail.com> * fix(module: dialog): click dialog cause the mask click event triggered (#1727) * docs: update recommend (#1755) * docs: update recommend * fix test * refactor(module: table): remove the breaking change for pagination mode (#1754) * docs: fix encoding error (#1760) * fixed. Fix network error when requesting contributor list in local development environment * fixed. Fix Chinese garbled code * Update Dynamic.razor Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: upload): support drag (#1765) * feat(module: upload): support drag * fix button text * add tests * delete useless field * feat(module: select): add EnumSelect for select componet with enum (#1759) * feat(module: select): add EnumSelect for select componet with enum * refactor: extract EnumLabelValue to the core directory * feat: add enum select demo * refactor: extracts the GetLabelValueList method to EnumHelper * refactor: refactor EnumSelect with simple data source * feat: add enum DisplayName support * fix: modify the reflection of the enum get attribute with field * add test Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: button): add colors (#1774) * add color property for button * separate the color * fix tests * fix typo Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): add guid built-in filter (#1756) Co-authored-by: James Yeung <shunjiey@hotmail.com> Co-authored-by: Zonciu Liang <zonciu@zonciu.com> Co-authored-by: ldsenow <ldsenow@gmail.com> Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy> Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com> Co-authored-by: 令远 孔 <lingyuan.kong@outlook.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: 笨木头 <musicvs@163.com> Co-authored-by: Maksim <maksalmak@gmail.com> Co-authored-by: Ivan Ocoka <ocokanet@gmail.com> Co-authored-by: Ocoka <somewhere@network> Co-authored-by: Patrick <42546986+MutatePat@users.noreply.github.com> Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> Co-authored-by: Romain J <dust63@hotmail.fr> Co-authored-by: anranruye <hehewewe@hotmail.com> Co-authored-by: Magehernan <magehernan@gmail.com> Co-authored-by: black-snake <black-snake@users.noreply.github.com> Co-authored-by: Gregory Loones <40325447+gregloones@users.noreply.github.com> Co-authored-by: Razvan Predescu <rzvdaniel@gmail.com> Co-authored-by: lukblazewicz <39852149+lukblazewicz@users.noreply.github.com> Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> Co-authored-by: 琢磨先生 <308360781@qq.com> Co-authored-by: gmij <gmij@qq.com> Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: 王俊 <wang_j90@hotmail.com> Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: boukenka <mbogais@free.fr>
* tests: project up to standards * fix(module:form): allow EditContext change
* refactor: replace PropertyAccessHelper to PathHelper (#1386) * feat(module: core): add member path helper * refactor(module: table): replace PropertyAccessHelper to PathHelper * docs: replace path-based-property-access to member-path-helper * refactor(module: select): replace SelectItemPropertyHelper to PathHelper * feat(module: table): add pagination template (#1409) * feat(module: table): add Hidden for columns (#1410) * feat(module: form): expose EditContext (#1464) * feat(module:form): allow access to validation messages * feat(module:form): expose EditContext as readonly property * feat(module: table): add built-in filter for enum types, support null value for List filter type (#1439) * feat(module:table): add built-in filter for not composable enum types, support null value for List filter type * feat(module:table): throw an exception for composable enum types when use built-in filter * Revert "feat(module:table): throw an exception for composable enum types when use built-in filter" This reverts commit 0e04ed9. * feat(module:table): add support for null value localization * docs(module: table): update for enum build-in filter * feat(module:table): add built-in filter for composable enum types * docs(module: table): update for enum built-in filter * feat(module: table): add enum built-in filter * feat: add static constructor to EnumHelper Co-authored-by: 令远 孔 <lingyuan.kong@outlook.com> * fix(module: form): expose LabelStyle property (#1503) * feat:(module: form): edit context dynamic change (#1504) * tests: project up to standards * fix(module:form): allow EditContext change * feat(module: notification): add NotificationRef support (#1498) * feat: add NotificationRef support * docs: update docs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: tag): Add custom colors and Enum of Preset Colors (#1514) * merge * feat(tag): add custom colors and enum presets * Update package.json fix: remove vscode rubbish * feat: add global PresetColor, and new PresetColor param * feat: add preset color to Badge * feat: tag style calcuated on setter * fix: user style is appended to stringbuilder * empty commit Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> * chore: sync ant-design v4.16.0 (#1569) * feat(i18n): Add French short week days (#1521) * feat(module: form): support set validation rules on FormItem (#1516) * feat(module: form): support set validation rules on FormItem(not complete yet) * refactor(module: form): optimized code * feat(module: form): support Whitespace rule * feat(module: form): support [message、pattern、transform、validator、whitespace] rules * feat(module: form): support type rule * feat(module: form): support [defaultField、oneOf、fields、type] rules * feat(module: form): support custome validate messages(without test) * test(module: form): complete RuleValidate_ValidateMessages test * feat(module: form): complete DynamicRule demo, refactor code, fix bugs * feat(module: form): support ValidateMessages param * doc(module: form): add "Rules" and "ValidateMessages" docs * fix: Rule.Max's errorMessage is wrong * refactor: rename Rule to FormValidationRule * test: rename Rule to FormValidationRule * chore: refactor code and rename classes * Update ValidateMode.razor * Update FormValidateErrorMessages.cs * Update FormValidateHelper.cs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): filter enhancement (#1563) * feat(module: table): allow access to filter operator and condition * feat(module: table): allow access to filter operator and condition * feat(module:table): allow remove the first filter * Update Column.razor * feat(module:table): modify closing button position * feat(module:table): match new style * feat(module:table): add header column divider * fix(module:table): apply filter when close the filter panel by clicking the filter icon * Update Column.razor * style(module:table): trim Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * fix(module:overlaytrigger): fix overlay not close after overlay size changes * unify muiltiple filter popup containers to one * refactor(module: table): optimize render fragments (#1597) * refactor(module: table): restore Table.Filters to IEnumerable<TableFilter<TData>> type (#1608) * feat(module: select): support simple data source (#1541) * feat(module: select): support simple data source * remove judgement for type of item and value * Update Select.razor.cs * fix(module: table): add RemoteDataSource (#1558) * feat(module:table): add PaginationMode parameter * fix(module:table): fix pagination * docs(module:table): add doc for PaginationMode attribute * add a demo file * docs(module:table): add demo for pagination mode * feat(module:table): add RemoteDataSource property * delete the demo for PaginationMode * Update Table.razor.cs * add `ajax` demo * Update ajax.md * Update Ajax.razor * fix demo * clear demo * fotmat demo * delete StateHasChanged Co-authored-by: ElderJames <shunjiey@hotmail.com> * add Visible back to Tag.razor.cs * Update SearchLoading.razor and idnex.en-US.md * Update index.zh-CN.md * feat(module: DatePicker): support disable one of range-picker inputs (#1648) * feat(module: rangepicker): support disable one of inputs * doc: update doc * feat(module: dropdown): each button customization (#1659) * feat(module:dropdownbutton): each button customization * fix: Tag tests * feat(module: tabs): add OnClose event and TabTemplate (#1698) * feat(module: tab): add onclose event and tabtemplate * add tests * feat(module: tabs): add reuse tabs routeview (#1704) * fix(module: tabs): Exception caused by cascade assignment to TabTemplate (#1708) * feat(module: tree): support check all from code (#1722) Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> * refactor(module: tree): add draggable, fix default value binding (#1517) * delete demo docs * fix tree default value and dnd * fix tree line and keys * fix switcher icon and line * fix line demo * fix switcher * add DirectoryTree demo * fix draggable demo * clean code * clean code * clean up the classmapper call * update docs * fix the docs * fix comment Co-authored-by: James Yeung <shunjiey@hotmail.com> * fix(module: dialog): click dialog cause the mask click event triggered (#1727) * docs: update recommend (#1755) * docs: update recommend * fix test * refactor(module: table): remove the breaking change for pagination mode (#1754) * docs: fix encoding error (#1760) * fixed. Fix network error when requesting contributor list in local development environment * fixed. Fix Chinese garbled code * Update Dynamic.razor Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: upload): support drag (#1765) * feat(module: upload): support drag * fix button text * add tests * delete useless field * feat(module: select): add EnumSelect for select componet with enum (#1759) * feat(module: select): add EnumSelect for select componet with enum * refactor: extract EnumLabelValue to the core directory * feat: add enum select demo * refactor: extracts the GetLabelValueList method to EnumHelper * refactor: refactor EnumSelect with simple data source * feat: add enum DisplayName support * fix: modify the reflection of the enum get attribute with field * add test Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: button): add colors (#1774) * add color property for button * separate the color * fix tests * fix typo Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): add guid built-in filter (#1756) Co-authored-by: James Yeung <shunjiey@hotmail.com> Co-authored-by: Zonciu Liang <zonciu@zonciu.com> Co-authored-by: ldsenow <ldsenow@gmail.com> Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy> Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com> Co-authored-by: 令远 孔 <lingyuan.kong@outlook.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: 笨木头 <musicvs@163.com> Co-authored-by: Maksim <maksalmak@gmail.com> Co-authored-by: Ivan Ocoka <ocokanet@gmail.com> Co-authored-by: Ocoka <somewhere@network> Co-authored-by: Patrick <42546986+MutatePat@users.noreply.github.com> Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> Co-authored-by: Romain J <dust63@hotmail.fr> Co-authored-by: anranruye <hehewewe@hotmail.com> Co-authored-by: Magehernan <magehernan@gmail.com> Co-authored-by: black-snake <black-snake@users.noreply.github.com> Co-authored-by: Gregory Loones <40325447+gregloones@users.noreply.github.com> Co-authored-by: Razvan Predescu <rzvdaniel@gmail.com> Co-authored-by: lukblazewicz <39852149+lukblazewicz@users.noreply.github.com> Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> Co-authored-by: 琢磨先生 <308360781@qq.com> Co-authored-by: gmij <gmij@qq.com> Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: 王俊 <wang_j90@hotmail.com> Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: boukenka <mbogais@free.fr>
* tests: project up to standards * fix(module:form): allow EditContext change
* refactor: replace PropertyAccessHelper to PathHelper (#1386) * feat(module: core): add member path helper * refactor(module: table): replace PropertyAccessHelper to PathHelper * docs: replace path-based-property-access to member-path-helper * refactor(module: select): replace SelectItemPropertyHelper to PathHelper * feat(module: table): add pagination template (#1409) * feat(module: table): add Hidden for columns (#1410) * feat(module: form): expose EditContext (#1464) * feat(module:form): allow access to validation messages * feat(module:form): expose EditContext as readonly property * feat(module: table): add built-in filter for enum types, support null value for List filter type (#1439) * feat(module:table): add built-in filter for not composable enum types, support null value for List filter type * feat(module:table): throw an exception for composable enum types when use built-in filter * Revert "feat(module:table): throw an exception for composable enum types when use built-in filter" This reverts commit 0e04ed9. * feat(module:table): add support for null value localization * docs(module: table): update for enum build-in filter * feat(module:table): add built-in filter for composable enum types * docs(module: table): update for enum built-in filter * feat(module: table): add enum built-in filter * feat: add static constructor to EnumHelper Co-authored-by: 令远 孔 <lingyuan.kong@outlook.com> * fix(module: form): expose LabelStyle property (#1503) * feat:(module: form): edit context dynamic change (#1504) * tests: project up to standards * fix(module:form): allow EditContext change * feat(module: notification): add NotificationRef support (#1498) * feat: add NotificationRef support * docs: update docs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: tag): Add custom colors and Enum of Preset Colors (#1514) * merge * feat(tag): add custom colors and enum presets * Update package.json fix: remove vscode rubbish * feat: add global PresetColor, and new PresetColor param * feat: add preset color to Badge * feat: tag style calcuated on setter * fix: user style is appended to stringbuilder * empty commit Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> * chore: sync ant-design v4.16.0 (#1569) * feat(i18n): Add French short week days (#1521) * feat(module: form): support set validation rules on FormItem (#1516) * feat(module: form): support set validation rules on FormItem(not complete yet) * refactor(module: form): optimized code * feat(module: form): support Whitespace rule * feat(module: form): support [message、pattern、transform、validator、whitespace] rules * feat(module: form): support type rule * feat(module: form): support [defaultField、oneOf、fields、type] rules * feat(module: form): support custome validate messages(without test) * test(module: form): complete RuleValidate_ValidateMessages test * feat(module: form): complete DynamicRule demo, refactor code, fix bugs * feat(module: form): support ValidateMessages param * doc(module: form): add "Rules" and "ValidateMessages" docs * fix: Rule.Max's errorMessage is wrong * refactor: rename Rule to FormValidationRule * test: rename Rule to FormValidationRule * chore: refactor code and rename classes * Update ValidateMode.razor * Update FormValidateErrorMessages.cs * Update FormValidateHelper.cs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): filter enhancement (#1563) * feat(module: table): allow access to filter operator and condition * feat(module: table): allow access to filter operator and condition * feat(module:table): allow remove the first filter * Update Column.razor * feat(module:table): modify closing button position * feat(module:table): match new style * feat(module:table): add header column divider * fix(module:table): apply filter when close the filter panel by clicking the filter icon * Update Column.razor * style(module:table): trim Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * fix(module:overlaytrigger): fix overlay not close after overlay size changes * unify muiltiple filter popup containers to one * refactor(module: table): optimize render fragments (#1597) * refactor(module: table): restore Table.Filters to IEnumerable<TableFilter<TData>> type (#1608) * feat(module: select): support simple data source (#1541) * feat(module: select): support simple data source * remove judgement for type of item and value * Update Select.razor.cs * fix(module: table): add RemoteDataSource (#1558) * feat(module:table): add PaginationMode parameter * fix(module:table): fix pagination * docs(module:table): add doc for PaginationMode attribute * add a demo file * docs(module:table): add demo for pagination mode * feat(module:table): add RemoteDataSource property * delete the demo for PaginationMode * Update Table.razor.cs * add `ajax` demo * Update ajax.md * Update Ajax.razor * fix demo * clear demo * fotmat demo * delete StateHasChanged Co-authored-by: ElderJames <shunjiey@hotmail.com> * add Visible back to Tag.razor.cs * Update SearchLoading.razor and idnex.en-US.md * Update index.zh-CN.md * feat(module: DatePicker): support disable one of range-picker inputs (#1648) * feat(module: rangepicker): support disable one of inputs * doc: update doc * feat(module: dropdown): each button customization (#1659) * feat(module:dropdownbutton): each button customization * fix: Tag tests * feat(module: tabs): add OnClose event and TabTemplate (#1698) * feat(module: tab): add onclose event and tabtemplate * add tests * feat(module: tabs): add reuse tabs routeview (#1704) * fix(module: tabs): Exception caused by cascade assignment to TabTemplate (#1708) * feat(module: tree): support check all from code (#1722) Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> * refactor(module: tree): add draggable, fix default value binding (#1517) * delete demo docs * fix tree default value and dnd * fix tree line and keys * fix switcher icon and line * fix line demo * fix switcher * add DirectoryTree demo * fix draggable demo * clean code * clean code * clean up the classmapper call * update docs * fix the docs * fix comment Co-authored-by: James Yeung <shunjiey@hotmail.com> * fix(module: dialog): click dialog cause the mask click event triggered (#1727) * docs: update recommend (#1755) * docs: update recommend * fix test * refactor(module: table): remove the breaking change for pagination mode (#1754) * docs: fix encoding error (#1760) * fixed. Fix network error when requesting contributor list in local development environment * fixed. Fix Chinese garbled code * Update Dynamic.razor Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: upload): support drag (#1765) * feat(module: upload): support drag * fix button text * add tests * delete useless field * feat(module: select): add EnumSelect for select componet with enum (#1759) * feat(module: select): add EnumSelect for select componet with enum * refactor: extract EnumLabelValue to the core directory * feat: add enum select demo * refactor: extracts the GetLabelValueList method to EnumHelper * refactor: refactor EnumSelect with simple data source * feat: add enum DisplayName support * fix: modify the reflection of the enum get attribute with field * add test Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: button): add colors (#1774) * add color property for button * separate the color * fix tests * fix typo Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): add guid built-in filter (#1756) Co-authored-by: James Yeung <shunjiey@hotmail.com> Co-authored-by: Zonciu Liang <zonciu@zonciu.com> Co-authored-by: ldsenow <ldsenow@gmail.com> Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy> Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com> Co-authored-by: 令远 孔 <lingyuan.kong@outlook.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: 笨木头 <musicvs@163.com> Co-authored-by: Maksim <maksalmak@gmail.com> Co-authored-by: Ivan Ocoka <ocokanet@gmail.com> Co-authored-by: Ocoka <somewhere@network> Co-authored-by: Patrick <42546986+MutatePat@users.noreply.github.com> Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> Co-authored-by: Romain J <dust63@hotmail.fr> Co-authored-by: anranruye <hehewewe@hotmail.com> Co-authored-by: Magehernan <magehernan@gmail.com> Co-authored-by: black-snake <black-snake@users.noreply.github.com> Co-authored-by: Gregory Loones <40325447+gregloones@users.noreply.github.com> Co-authored-by: Razvan Predescu <rzvdaniel@gmail.com> Co-authored-by: lukblazewicz <39852149+lukblazewicz@users.noreply.github.com> Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> Co-authored-by: 琢磨先生 <308360781@qq.com> Co-authored-by: gmij <gmij@qq.com> Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: 王俊 <wang_j90@hotmail.com> Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: boukenka <mbogais@free.fr>
* refactor: replace PropertyAccessHelper to PathHelper (#1386) * feat(module: core): add member path helper * refactor(module: table): replace PropertyAccessHelper to PathHelper * docs: replace path-based-property-access to member-path-helper * refactor(module: select): replace SelectItemPropertyHelper to PathHelper * feat(module: table): add pagination template (#1409) * feat(module: table): add Hidden for columns (#1410) * feat(module: form): expose EditContext (#1464) * feat(module:form): allow access to validation messages * feat(module:form): expose EditContext as readonly property * feat(module: table): add built-in filter for enum types, support null value for List filter type (#1439) * feat(module:table): add built-in filter for not composable enum types, support null value for List filter type * feat(module:table): throw an exception for composable enum types when use built-in filter * Revert "feat(module:table): throw an exception for composable enum types when use built-in filter" This reverts commit 0e04ed9. * feat(module:table): add support for null value localization * docs(module: table): update for enum build-in filter * feat(module:table): add built-in filter for composable enum types * docs(module: table): update for enum built-in filter * feat(module: table): add enum built-in filter * feat: add static constructor to EnumHelper Co-authored-by: 令远 孔 <lingyuan.kong@outlook.com> * fix(module: form): expose LabelStyle property (#1503) * feat:(module: form): edit context dynamic change (#1504) * tests: project up to standards * fix(module:form): allow EditContext change * feat(module: notification): add NotificationRef support (#1498) * feat: add NotificationRef support * docs: update docs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: tag): Add custom colors and Enum of Preset Colors (#1514) * merge * feat(tag): add custom colors and enum presets * Update package.json fix: remove vscode rubbish * feat: add global PresetColor, and new PresetColor param * feat: add preset color to Badge * feat: tag style calcuated on setter * fix: user style is appended to stringbuilder * empty commit Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> * chore: sync ant-design v4.16.0 (#1569) * feat(i18n): Add French short week days (#1521) * feat(module: form): support set validation rules on FormItem (#1516) * feat(module: form): support set validation rules on FormItem(not complete yet) * refactor(module: form): optimized code * feat(module: form): support Whitespace rule * feat(module: form): support [message、pattern、transform、validator、whitespace] rules * feat(module: form): support type rule * feat(module: form): support [defaultField、oneOf、fields、type] rules * feat(module: form): support custome validate messages(without test) * test(module: form): complete RuleValidate_ValidateMessages test * feat(module: form): complete DynamicRule demo, refactor code, fix bugs * feat(module: form): support ValidateMessages param * doc(module: form): add "Rules" and "ValidateMessages" docs * fix: Rule.Max's errorMessage is wrong * refactor: rename Rule to FormValidationRule * test: rename Rule to FormValidationRule * chore: refactor code and rename classes * Update ValidateMode.razor * Update FormValidateErrorMessages.cs * Update FormValidateHelper.cs Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): filter enhancement (#1563) * feat(module: table): allow access to filter operator and condition * feat(module: table): allow access to filter operator and condition * feat(module:table): allow remove the first filter * Update Column.razor * feat(module:table): modify closing button position * feat(module:table): match new style * feat(module:table): add header column divider * fix(module:table): apply filter when close the filter panel by clicking the filter icon * Update Column.razor * style(module:table): trim Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * Update Column.razor * fix(module:overlaytrigger): fix overlay not close after overlay size changes * unify muiltiple filter popup containers to one * refactor(module: table): optimize render fragments (#1597) * refactor(module: table): restore Table.Filters to IEnumerable<TableFilter<TData>> type (#1608) * feat(module: select): support simple data source (#1541) * feat(module: select): support simple data source * remove judgement for type of item and value * Update Select.razor.cs * fix(module: table): add RemoteDataSource (#1558) * feat(module:table): add PaginationMode parameter * fix(module:table): fix pagination * docs(module:table): add doc for PaginationMode attribute * add a demo file * docs(module:table): add demo for pagination mode * feat(module:table): add RemoteDataSource property * delete the demo for PaginationMode * Update Table.razor.cs * add `ajax` demo * Update ajax.md * Update Ajax.razor * fix demo * clear demo * fotmat demo * delete StateHasChanged Co-authored-by: ElderJames <shunjiey@hotmail.com> * add Visible back to Tag.razor.cs * Update SearchLoading.razor and idnex.en-US.md * Update index.zh-CN.md * feat(module: DatePicker): support disable one of range-picker inputs (#1648) * feat(module: rangepicker): support disable one of inputs * doc: update doc * feat(module: dropdown): each button customization (#1659) * feat(module:dropdownbutton): each button customization * fix: Tag tests * feat(module: tabs): add OnClose event and TabTemplate (#1698) * feat(module: tab): add onclose event and tabtemplate * add tests * feat(module: tabs): add reuse tabs routeview (#1704) * fix(module: tabs): Exception caused by cascade assignment to TabTemplate (#1708) * feat(module: tree): support check all from code (#1722) Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> * refactor(module: tree): add draggable, fix default value binding (#1517) * delete demo docs * fix tree default value and dnd * fix tree line and keys * fix switcher icon and line * fix line demo * fix switcher * add DirectoryTree demo * fix draggable demo * clean code * clean code * clean up the classmapper call * update docs * fix the docs * fix comment Co-authored-by: James Yeung <shunjiey@hotmail.com> * fix(module: dialog): click dialog cause the mask click event triggered (#1727) * docs: update recommend (#1755) * docs: update recommend * fix test * refactor(module: table): remove the breaking change for pagination mode (#1754) * docs: fix encoding error (#1760) * fixed. Fix network error when requesting contributor list in local development environment * fixed. Fix Chinese garbled code * Update Dynamic.razor Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: upload): support drag (#1765) * feat(module: upload): support drag * fix button text * add tests * delete useless field * feat(module: select): add EnumSelect for select componet with enum (#1759) * feat(module: select): add EnumSelect for select componet with enum * refactor: extract EnumLabelValue to the core directory * feat: add enum select demo * refactor: extracts the GetLabelValueList method to EnumHelper * refactor: refactor EnumSelect with simple data source * feat: add enum DisplayName support * fix: modify the reflection of the enum get attribute with field * add test Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: button): add colors (#1774) * add color property for button * separate the color * fix tests * fix typo Co-authored-by: James Yeung <shunjiey@hotmail.com> * feat(module: table): add guid built-in filter (#1756) Co-authored-by: James Yeung <shunjiey@hotmail.com> Co-authored-by: Zonciu Liang <zonciu@zonciu.com> Co-authored-by: ldsenow <ldsenow@gmail.com> Co-authored-by: Andrzej Bakun <andrzej@neelyc.com.cy> Co-authored-by: anranruye <54608128+anranruye@users.noreply.github.com> Co-authored-by: 令远 孔 <lingyuan.kong@outlook.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: 笨木头 <musicvs@163.com> Co-authored-by: Maksim <maksalmak@gmail.com> Co-authored-by: Ivan Ocoka <ocokanet@gmail.com> Co-authored-by: Ocoka <somewhere@network> Co-authored-by: Patrick <42546986+MutatePat@users.noreply.github.com> Co-authored-by: Patryk Grzelak <pgrzelak@mutate.app> Co-authored-by: Romain J <dust63@hotmail.fr> Co-authored-by: anranruye <hehewewe@hotmail.com> Co-authored-by: Magehernan <magehernan@gmail.com> Co-authored-by: black-snake <black-snake@users.noreply.github.com> Co-authored-by: Gregory Loones <40325447+gregloones@users.noreply.github.com> Co-authored-by: Razvan Predescu <rzvdaniel@gmail.com> Co-authored-by: lukblazewicz <39852149+lukblazewicz@users.noreply.github.com> Co-authored-by: Łukasz Błażewicz <lukasz.blazewicz@homebook.pl> Co-authored-by: 琢磨先生 <308360781@qq.com> Co-authored-by: gmij <gmij@qq.com> Co-authored-by: Gmij <chenb@teleware.cn> Co-authored-by: 王俊 <wang_j90@hotmail.com> Co-authored-by: wangjun <wangjun@chemical.ai> Co-authored-by: boukenka <mbogais@free.fr>
🤔 This is a ...
🔗 Related issue link
Fixes #1254
Addresses also closed #851 and #1128
💡 Background and solution
Key part of the change is in
Form.razor.cs
. All_editContext = new EditContext()
have been replaced withBuildEditContext()
method. The issue withEditContext
is that it cannot be just newed, because it may (and actually does) contain delegates attached to events (refer to this issue). So the method is using reflection to delete delegates from events of the "old"_editContext
and transfers them to new_editContext
. This is especially important, sinceEditContext
is now also exposed as a property so any consumer can attach any number of handlers that are outside ofForm
's controlTo keep with convention, all the events of the
EditContext
have been exposed as parameters of typeEventCallback
.I added this to feature branch, because I am again working with assumption of exposed
EditContext
. That was done in my PR that also landed in the feature branch.Tests for
Form
&EditContext
require net6.Changes done to the test projects are based on recommendations made by
bUnit
s creator (he was looking at one of the test issues on his twitch stream).📝 Changelog
OnFieldChanged
,OnValidationRequested
&OnValidationStateChanged
event callbacks that map directly toEditContext
respective events.☑️ Self Check before Merge