Loading .idea/modules.xml +0 −1 Original line number Diff line number Diff line Loading @@ -3,7 +3,6 @@ <component name="ProjectModuleManager"> <modules> <module fileurl="file://$PROJECT_DIR$/../nest/.idea/nest.iml" filepath="$PROJECT_DIR$/../nest/.idea/nest.iml" /> <module fileurl="file://$PROJECT_DIR$/../plugins/.idea/plugins.iml" filepath="$PROJECT_DIR$/../plugins/.idea/plugins.iml" /> <module fileurl="file://$PROJECT_DIR$/.idea/rxap.iml" filepath="$PROJECT_DIR$/.idea/rxap.iml" /> <module fileurl="file://$PROJECT_DIR$/../schematics/.idea/schematics.iml" filepath="$PROJECT_DIR$/../schematics/.idea/schematics.iml" /> </modules> Loading .idea/rxap.iml +0 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,6 @@ </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="module" module-name="plugins" /> <orderEntry type="module" module-name="schematics" /> <orderEntry type="module" module-name="nest" /> </component> Loading libs/forms/src/lib/directives/form-submit-successful.directive.ts 0 → 100644 +39 −0 Original line number Diff line number Diff line import { Directive, Inject, TemplateRef, ViewContainerRef, OnDestroy, AfterViewInit } from '@angular/core'; import { FormDirective } from './form.directive'; import { Subscription } from 'rxjs'; import { tap } from 'rxjs/operators'; @Directive({ selector: '[rxapFormSubmitSuccessful]' }) export class FormSubmitSuccessfulDirective implements AfterViewInit, OnDestroy { private subscription?: Subscription; constructor( @Inject(FormDirective) private readonly formDirective: FormDirective, @Inject(TemplateRef) private readonly template: TemplateRef<{ $implicit: Error }>, @Inject(ViewContainerRef) private readonly viewContainerRef: ViewContainerRef ) {} public ngAfterViewInit() { this.subscription = this.formDirective.submitSuccessful$.pipe( tap(result => { this.viewContainerRef.clear(); this.viewContainerRef.createEmbeddedView(this.template, { $implicit: result }); }) ).subscribe(); } public ngOnDestroy() { this.subscription?.unsubscribe(); } } libs/forms/src/lib/directives/form.directive.ts +4 −0 Original line number Diff line number Diff line Loading @@ -129,6 +129,9 @@ export class FormDirective<T extends Record<string, any> = any> @Output() public invalidSubmit = new EventEmitter(); @Output('submitSuccessful') public submitSuccessful$ = new EventEmitter(); @HostBinding('class.rxap-submitting') public get submitting(): boolean { return this.submitting$.value; Loading Loading @@ -481,6 +484,7 @@ export class FormDirective<T extends Record<string, any> = any> } protected submitSuccessful(value: any) { this.submitSuccessful$.next(value); if (this.submitSuccessfulMethod) { this.submitSuccessfulMethod.call(value); } else if (isDevMode()) { Loading libs/forms/src/lib/directives/forms.module.ts +5 −2 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ import { FormSubmitDirective } from './form-submit.directive'; import { FormGroupNameDirective } from './form-group-name.directive'; import { FormControlNameDirective } from './form-control-name.directive'; import { ParentControlContainerDirective } from './parent-control-container.directive'; import { FormSubmitSuccessfulDirective } from './form-submit-successful.directive'; @NgModule({ Loading @@ -32,7 +33,8 @@ import { ParentControlContainerDirective } from './parent-control-container.dire FormSubmitDirective, FormGroupNameDirective, FormControlNameDirective, ParentControlContainerDirective ParentControlContainerDirective, FormSubmitSuccessfulDirective, ], exports: [ FormDirective, Loading @@ -49,7 +51,8 @@ import { ParentControlContainerDirective } from './parent-control-container.dire FormSubmitDirective, FormGroupNameDirective, FormControlNameDirective, ParentControlContainerDirective ParentControlContainerDirective, FormSubmitSuccessfulDirective, ] }) export class RxapFormsModule {} Loading
.idea/modules.xml +0 −1 Original line number Diff line number Diff line Loading @@ -3,7 +3,6 @@ <component name="ProjectModuleManager"> <modules> <module fileurl="file://$PROJECT_DIR$/../nest/.idea/nest.iml" filepath="$PROJECT_DIR$/../nest/.idea/nest.iml" /> <module fileurl="file://$PROJECT_DIR$/../plugins/.idea/plugins.iml" filepath="$PROJECT_DIR$/../plugins/.idea/plugins.iml" /> <module fileurl="file://$PROJECT_DIR$/.idea/rxap.iml" filepath="$PROJECT_DIR$/.idea/rxap.iml" /> <module fileurl="file://$PROJECT_DIR$/../schematics/.idea/schematics.iml" filepath="$PROJECT_DIR$/../schematics/.idea/schematics.iml" /> </modules> Loading
.idea/rxap.iml +0 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,6 @@ </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="module" module-name="plugins" /> <orderEntry type="module" module-name="schematics" /> <orderEntry type="module" module-name="nest" /> </component> Loading
libs/forms/src/lib/directives/form-submit-successful.directive.ts 0 → 100644 +39 −0 Original line number Diff line number Diff line import { Directive, Inject, TemplateRef, ViewContainerRef, OnDestroy, AfterViewInit } from '@angular/core'; import { FormDirective } from './form.directive'; import { Subscription } from 'rxjs'; import { tap } from 'rxjs/operators'; @Directive({ selector: '[rxapFormSubmitSuccessful]' }) export class FormSubmitSuccessfulDirective implements AfterViewInit, OnDestroy { private subscription?: Subscription; constructor( @Inject(FormDirective) private readonly formDirective: FormDirective, @Inject(TemplateRef) private readonly template: TemplateRef<{ $implicit: Error }>, @Inject(ViewContainerRef) private readonly viewContainerRef: ViewContainerRef ) {} public ngAfterViewInit() { this.subscription = this.formDirective.submitSuccessful$.pipe( tap(result => { this.viewContainerRef.clear(); this.viewContainerRef.createEmbeddedView(this.template, { $implicit: result }); }) ).subscribe(); } public ngOnDestroy() { this.subscription?.unsubscribe(); } }
libs/forms/src/lib/directives/form.directive.ts +4 −0 Original line number Diff line number Diff line Loading @@ -129,6 +129,9 @@ export class FormDirective<T extends Record<string, any> = any> @Output() public invalidSubmit = new EventEmitter(); @Output('submitSuccessful') public submitSuccessful$ = new EventEmitter(); @HostBinding('class.rxap-submitting') public get submitting(): boolean { return this.submitting$.value; Loading Loading @@ -481,6 +484,7 @@ export class FormDirective<T extends Record<string, any> = any> } protected submitSuccessful(value: any) { this.submitSuccessful$.next(value); if (this.submitSuccessfulMethod) { this.submitSuccessfulMethod.call(value); } else if (isDevMode()) { Loading
libs/forms/src/lib/directives/forms.module.ts +5 −2 Original line number Diff line number Diff line Loading @@ -14,6 +14,7 @@ import { FormSubmitDirective } from './form-submit.directive'; import { FormGroupNameDirective } from './form-group-name.directive'; import { FormControlNameDirective } from './form-control-name.directive'; import { ParentControlContainerDirective } from './parent-control-container.directive'; import { FormSubmitSuccessfulDirective } from './form-submit-successful.directive'; @NgModule({ Loading @@ -32,7 +33,8 @@ import { ParentControlContainerDirective } from './parent-control-container.dire FormSubmitDirective, FormGroupNameDirective, FormControlNameDirective, ParentControlContainerDirective ParentControlContainerDirective, FormSubmitSuccessfulDirective, ], exports: [ FormDirective, Loading @@ -49,7 +51,8 @@ import { ParentControlContainerDirective } from './parent-control-container.dire FormSubmitDirective, FormGroupNameDirective, FormControlNameDirective, ParentControlContainerDirective ParentControlContainerDirective, FormSubmitSuccessfulDirective, ] }) export class RxapFormsModule {}