@sebgroup/green-angular 5.4.2 → 5.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/esm2022/lib/shared/core-control/core-control.directive.mjs +3 -3
  2. package/esm2022/lib/shared/core-router-link/core-router-link.directive.mjs +53 -0
  3. package/esm2022/lib/shared/core-router-link/core-router-link.module.mjs +16 -0
  4. package/esm2022/lib/shared/core-router-link/index.mjs +3 -0
  5. package/esm2022/lib/shared/index.mjs +2 -1
  6. package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +3 -3
  7. package/esm2022/src/lib/shared/core-router-link/core-router-link.directive.mjs +53 -0
  8. package/esm2022/src/lib/shared/core-router-link/core-router-link.module.mjs +16 -0
  9. package/esm2022/src/lib/shared/core-router-link/index.mjs +3 -0
  10. package/esm2022/src/lib/shared/index.mjs +2 -1
  11. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
  12. package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +6 -6
  13. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +67 -4
  14. package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
  15. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +5 -5
  16. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
  17. package/fesm2022/sebgroup-green-angular-v-angular.mjs +5 -5
  18. package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
  19. package/fesm2022/sebgroup-green-angular.mjs +66 -4
  20. package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
  21. package/lib/shared/core-control/core-control.directive.d.ts +1 -1
  22. package/lib/shared/core-router-link/core-router-link.directive.d.ts +16 -0
  23. package/lib/shared/core-router-link/core-router-link.module.d.ts +7 -0
  24. package/lib/shared/core-router-link/index.d.ts +2 -0
  25. package/lib/shared/index.d.ts +1 -0
  26. package/package.json +2 -2
  27. package/src/lib/shared/core-control/core-control.directive.d.ts +1 -1
  28. package/src/lib/shared/core-router-link/core-router-link.directive.d.ts +16 -0
  29. package/src/lib/shared/core-router-link/core-router-link.module.d.ts +7 -0
  30. package/src/lib/shared/core-router-link/index.d.ts +2 -0
  31. package/src/lib/shared/index.d.ts +1 -0
@@ -1,6 +1,6 @@
1
1
  import { CommonModule, DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, Directive, NgModule, Injectable, RendererFactory2, NgZone, inject, Renderer2, ViewContainerRef, ChangeDetectorRef, TemplateRef, forwardRef } from '@angular/core';
3
+ import { InjectionToken, Directive, NgModule, Injectable, RendererFactory2, NgZone, inject, Renderer2, ViewContainerRef, ChangeDetectorRef, TemplateRef, forwardRef, Self, Optional } from '@angular/core';
4
4
  import { Subject, fromEvent, interval } from 'rxjs';
5
5
  import { takeUntil, throttle } from 'rxjs/operators';
6
6
  import { getScopedTagName } from '@sebgroup/green-core/scoping';
@@ -8,6 +8,7 @@ import { ɵAnimationRendererFactory, ɵAnimationEngine } from '@angular/animatio
8
8
  import * as i1 from '@angular/platform-browser';
9
9
  import { ɵDomRendererFactory2 } from '@angular/platform-browser';
10
10
  import { NgControl, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
11
+ import * as i1$1 from '@angular/router';
11
12
 
12
13
  const ON_SCROLL_TOKEN = new InjectionToken('ON_SCROLL_TOKEN');
13
14
  class NggOnScrollDirective {
@@ -288,7 +289,7 @@ class NggCoreControlDirective {
288
289
  this.renderer.setProperty(this.el.nativeElement, 'disabled', isDisabled);
289
290
  }
290
291
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
291
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]", providers: [
292
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreControlDirective, selector: "gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]", providers: [
292
293
  {
293
294
  provide: NG_VALUE_ACCESSOR,
294
295
  useExisting: forwardRef(() => NggCoreControlDirective),
@@ -299,7 +300,7 @@ class NggCoreControlDirective {
299
300
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreControlDirective, decorators: [{
300
301
  type: Directive,
301
302
  args: [{
302
- selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]',
303
+ selector: 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]',
303
304
  providers: [
304
305
  {
305
306
  provide: NG_VALUE_ACCESSOR,
@@ -324,9 +325,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
324
325
  }]
325
326
  }] });
326
327
 
328
+ class NggCoreRouterLinkDirective {
329
+ constructor(renderer, elementRef, routerLink, routerLinkActive) {
330
+ this.renderer = renderer;
331
+ this.elementRef = elementRef;
332
+ this.routerLink = routerLink;
333
+ this.routerLinkActive = routerLinkActive;
334
+ this.routerLinkActive?.isActiveChange.subscribe(() => this.setActive());
335
+ }
336
+ ngOnChanges(changes) {
337
+ if (changes['routerLink']) {
338
+ this.updateHref();
339
+ }
340
+ }
341
+ ngAfterViewInit() {
342
+ this.updateHref();
343
+ this.setActive();
344
+ }
345
+ setActive() {
346
+ if (this.routerLinkActive &&
347
+ this.elementRef.nativeElement?.tagName.includes('GDS-MENU-BUTTON')) {
348
+ this.elementRef.nativeElement.selected = this.routerLinkActive.isActive;
349
+ }
350
+ }
351
+ updateHref() {
352
+ // First we need to be a bit sneaky and trick `RouterLink` into thinking we are an anchor element
353
+ ;
354
+ this.routerLink.isAnchorElement = true;
355
+ this.routerLink.updateHref();
356
+ // Then we can set the href attribute
357
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'href', this.routerLink?.href || '');
358
+ }
359
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1$1.RouterLink, optional: true, self: true }, { token: i1$1.RouterLinkActive, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
360
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NggCoreRouterLinkDirective, selector: "[nggCoreRouterLink]", usesOnChanges: true, ngImport: i0 }); }
361
+ }
362
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkDirective, decorators: [{
363
+ type: Directive,
364
+ args: [{
365
+ selector: '[nggCoreRouterLink]',
366
+ }]
367
+ }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1$1.RouterLink, decorators: [{
368
+ type: Self
369
+ }, {
370
+ type: Optional
371
+ }] }, { type: i1$1.RouterLinkActive, decorators: [{
372
+ type: Self
373
+ }, {
374
+ type: Optional
375
+ }] }] });
376
+
377
+ class NggCoreRouterLinkModule {
378
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
379
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, declarations: [NggCoreRouterLinkDirective], exports: [NggCoreRouterLinkDirective] }); }
380
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule }); }
381
+ }
382
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggCoreRouterLinkModule, decorators: [{
383
+ type: NgModule,
384
+ args: [{
385
+ declarations: [NggCoreRouterLinkDirective],
386
+ exports: [NggCoreRouterLinkDirective],
387
+ }]
388
+ }] });
389
+
327
390
  /**
328
391
  * Generated bundle index. Do not edit.
329
392
  */
330
393
 
331
- export { NggCoreControlDirective, NggCoreElementDirective, NggCoreFormsModule, NggCoreRenderer, NggCoreRendererFactory, NggCoreWrapperModule, NggOnScrollDirective, NggSharedModule, ON_SCROLL_TOKEN, animationsCoreRendererFactory, provideCoreRenderer, provideCoreRendererWithAnimations };
394
+ export { NggCoreControlDirective, NggCoreElementDirective, NggCoreFormsModule, NggCoreRenderer, NggCoreRendererFactory, NggCoreRouterLinkDirective, NggCoreRouterLinkModule, NggCoreWrapperModule, NggOnScrollDirective, NggSharedModule, ON_SCROLL_TOKEN, animationsCoreRendererFactory, provideCoreRenderer, provideCoreRendererWithAnimations };
332
395
  //# sourceMappingURL=sebgroup-green-angular-src-lib-shared.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"sebgroup-green-angular-src-lib-shared.mjs","sources":["../../../../libs/angular/src/lib/shared/on-scroll.directive.ts","../../../../libs/angular/src/lib/shared/shared.module.ts","../../../../libs/angular/src/lib/shared/core-renderer/core-renderer.ts","../../../../libs/angular/src/lib/shared/core-element/core-element.directive.ts","../../../../libs/angular/src/lib/shared/core-element/core-element.module.ts","../../../../libs/angular/src/lib/shared/core-control/core-control.directive.ts","../../../../libs/angular/src/lib/shared/core-control/core-control.module.ts","../../../../libs/angular/src/lib/shared/sebgroup-green-angular-src-lib-shared.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n InjectionToken,\n OnDestroy,\n} from '@angular/core'\nimport { fromEvent, interval, Subject } from 'rxjs'\nimport { takeUntil, throttle } from 'rxjs/operators'\n\nexport const ON_SCROLL_TOKEN = new InjectionToken<string>('ON_SCROLL_TOKEN')\n\n@Directive({\n selector: '[nggOnScroll]',\n providers: [\n {\n provide: ON_SCROLL_TOKEN,\n useFactory: (component: NggOnScrollDirective): Subject<unknown> =>\n component?.onScroll$,\n deps: [NggOnScrollDirective],\n },\n ],\n})\nexport class NggOnScrollDirective implements AfterViewInit, OnDestroy {\n onScroll$ = new Subject()\n destroy$ = new Subject()\n\n constructor(private elementRef: ElementRef) {}\n\n public ngAfterViewInit(): void {\n if (this.elementRef) {\n fromEvent(this.elementRef?.nativeElement, 'scroll')\n .pipe(\n takeUntil(this.destroy$),\n throttle(() => interval(30)),\n )\n .subscribe(() => {\n this.onScroll$.next(null) // Changes: added null due to TS error\n })\n }\n }\n\n public ngOnDestroy(): void {\n this.destroy$.next(null)\n this.destroy$.complete()\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NggOnScrollDirective } from './on-scroll.directive'\n\n@NgModule({\n declarations: [NggOnScrollDirective],\n imports: [CommonModule],\n exports: [NggOnScrollDirective],\n})\nexport class NggSharedModule {}\n","import {\n ɵAnimationEngine as AnimationEngine,\n ɵAnimationRendererFactory as AnimationRendererFactory,\n} from '@angular/animations/browser'\nimport {\n Injectable,\n NgZone,\n Renderer2,\n RendererFactory2,\n RendererStyleFlags2,\n RendererType2,\n} from '@angular/core'\nimport { ɵDomRendererFactory2 as DomRendererFactory2 } from '@angular/platform-browser'\n\nimport { getScopedTagName } from '@sebgroup/green-core/scoping'\n\nexport class NggCoreRenderer implements Renderer2 {\n constructor(private delegate: Renderer2) {}\n\n createElement(name: string, namespace?: string | null): any {\n const scopedName = name.startsWith('gds-') ? getScopedTagName(name) : name\n return this.delegate.createElement(scopedName, namespace)\n }\n\n // Delegate all other methods to the original renderer\n addClass(el: any, name: string): void {\n return this.delegate.addClass(el, name)\n }\n get data(): { [key: string]: any } {\n return this.delegate.data\n }\n destroy(): void {\n return this.delegate.destroy()\n }\n createComment(value: string) {\n return this.delegate.createComment(value)\n }\n createText(value: string) {\n return this.delegate.createText(value)\n }\n destroyNode: ((node: any) => void) | null = (node) =>\n this.delegate.destroyNode && this.delegate.destroyNode(node)\n appendChild(parent: any, newChild: any): void {\n return this.delegate.appendChild(parent, newChild)\n }\n insertBefore(\n parent: any,\n newChild: any,\n refChild: any,\n isMove?: boolean | undefined,\n ): void {\n return this.delegate.insertBefore(parent, newChild, refChild, isMove)\n }\n removeChild(\n parent: any,\n oldChild: any,\n isHostElement?: boolean | undefined,\n ): void {\n return this.delegate.removeChild(parent, oldChild, isHostElement)\n }\n selectRootElement(\n selectorOrNode: any,\n preserveContent?: boolean | undefined,\n ) {\n return this.delegate.selectRootElement(selectorOrNode, preserveContent)\n }\n parentNode(node: any) {\n return this.delegate.parentNode(node)\n }\n nextSibling(node: any) {\n return this.delegate.nextSibling(node)\n }\n setAttribute(\n el: any,\n name: string,\n value: string,\n namespace?: string | null | undefined,\n ): void {\n return this.delegate.setAttribute(el, name, value, namespace)\n }\n removeAttribute(\n el: any,\n name: string,\n namespace?: string | null | undefined,\n ): void {\n return this.delegate.removeAttribute(el, name, namespace)\n }\n removeClass(el: any, name: string): void {\n return this.delegate.removeClass(el, name)\n }\n setStyle(\n el: any,\n style: string,\n value: any,\n flags?: RendererStyleFlags2 | undefined,\n ): void {\n return this.delegate.setStyle(el, style, value, flags)\n }\n removeStyle(\n el: any,\n style: string,\n flags?: RendererStyleFlags2 | undefined,\n ): void {\n return this.delegate.removeStyle(el, style, flags)\n }\n setProperty(el: any, name: string, value: any): void {\n return this.delegate.setProperty(el, name, value)\n }\n setValue(node: any, value: string): void {\n return this.delegate.setValue(node, value)\n }\n listen(\n target: any,\n eventName: string,\n callback: (event: any) => boolean | void,\n ): () => void {\n return this.delegate.listen(target, eventName, callback)\n }\n}\n\n@Injectable()\nexport class NggCoreRendererFactory implements RendererFactory2 {\n constructor(private delegate: DomRendererFactory2) {}\n\n createRenderer(element: any, type: RendererType2 | null): Renderer2 {\n const renderer = this.delegate.createRenderer(element, type)\n return new NggCoreRenderer(renderer)\n }\n}\n\n/**\n * Returns a AnimationRendererFactory configured to use the NggCoreRendererFactory as a delegate.\n */\nexport function animationsCoreRendererFactory(\n delegate: DomRendererFactory2,\n engine: AnimationEngine,\n zone: NgZone,\n) {\n const crf = new NggCoreRendererFactory(delegate)\n return new AnimationRendererFactory(crf, engine, zone)\n}\n\n/**\n * Provide the NggCoreRendererFactory to use <gds-*> elements without any extra directives.\n * The NggCoreRenderer will handle element name scoping automatically.\n *\n * Example:\n * ```ts\n * @NgModule({\n * providers: [provideCoreRenderer()],\n * schemas: [CUSTOM_ELEMENTS_SCHEMA],\n * })\n * export class AppModule {}\n * ```\n */\nexport const provideCoreRenderer = () => ({\n provide: RendererFactory2,\n useClass: NggCoreRendererFactory,\n})\n\n/**\n * Provide the NggCoreRendererFactory to use <gds-*> elements without any extra directives.\n * The NggCoreRenderer will handle element name scoping automatically.\n *\n * This factory also provides the Angular animations renderer.\n *\n *\n * Example:\n * ```ts\n * @NgModule({\n * imports: [BrowserAnimationsModule],\n * providers: [provideCoreRendererWithAnimations()],\n * schemas: [CUSTOM_ELEMENTS_SCHEMA],\n * })\n * export class AppModule {}\n * ```\n */\nexport const provideCoreRendererWithAnimations = () => ({\n provide: RendererFactory2,\n useFactory: animationsCoreRendererFactory,\n deps: [DomRendererFactory2, AnimationEngine, NgZone],\n})\n","import { DOCUMENT } from '@angular/common'\nimport {\n ChangeDetectorRef,\n Directive,\n EmbeddedViewRef,\n inject,\n OnInit,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core'\n\nimport { getScopedTagName } from '@sebgroup/green-core/scoping'\nimport { NggCoreRenderer } from '../core-renderer'\n\n@Directive({\n selector: '[nggCoreElement]',\n})\nexport class NggCoreElementDirective implements OnInit {\n private viewRef: EmbeddedViewRef<any> | null = null\n private readonly document = inject(DOCUMENT)\n private readonly renderer = inject(Renderer2)\n private readonly vcr = inject(ViewContainerRef)\n private readonly cdr = inject(ChangeDetectorRef)\n private readonly template = inject(TemplateRef<any>)\n\n ngOnInit() {\n if (!(this.renderer instanceof NggCoreRenderer)) {\n this.vcr.clear()\n\n const originalCreateElement = this.renderer.createElement\n this.renderer.createElement = (name: string, _namespace: string) => {\n return this.document.createElement(getScopedTagName(name))\n }\n\n this.cdr.markForCheck()\n this.viewRef = this.vcr.createEmbeddedView(this.template)\n this.renderer.createElement = originalCreateElement\n }\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NggCoreElementDirective } from './core-element.directive'\n\n@NgModule({\n declarations: [NggCoreElementDirective],\n imports: [CommonModule],\n exports: [NggCoreElementDirective],\n})\nexport class NggCoreWrapperModule {}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n forwardRef,\n Injector,\n Renderer2,\n} from '@angular/core'\nimport {\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n NgControl,\n Validators,\n} from '@angular/forms'\n\n@Directive({\n selector:\n 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, [nggCoreControl]',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NggCoreControlDirective),\n multi: true,\n },\n ],\n})\nexport class NggCoreControlDirective\n implements ControlValueAccessor, AfterViewInit\n{\n private control?: NgControl\n\n constructor(\n private el: ElementRef,\n private renderer: Renderer2,\n private injector: Injector,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngAfterViewInit() {\n this.control = this.injector.get(NgControl)\n\n this.control.statusChanges?.subscribe(() => {\n this.updateControlState()\n })\n\n this.control.valueChanges?.subscribe(() => {\n this.updateControlState()\n })\n\n // Update on submit\n const form = this.el.nativeElement.form\n if (form) {\n form.addEventListener('submit', () => {\n this.control?.control?.markAsTouched()\n this.updateControlState()\n })\n }\n\n this.updateControlState()\n }\n\n private updateControlState() {\n const control = this.control?.control\n if (control) {\n this.renderer.setProperty(\n this.el.nativeElement,\n 'invalid',\n (control.dirty || control.touched) && control.invalid,\n )\n }\n }\n\n // ControlValueAccessor implementation\n writeValue(value: any): void {\n this.renderer.setProperty(this.el.nativeElement, 'value', value)\n }\n\n registerOnChange(fn: (_: any) => void): void {\n this.el.nativeElement.addEventListener('input', (event: any) => {\n fn(event.target.value)\n this.cdr.markForCheck()\n })\n }\n\n registerOnTouched(fn: any): void {\n this.el.nativeElement.addEventListener('blur', fn)\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.renderer.setProperty(this.el.nativeElement, 'disabled', isDisabled)\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { ReactiveFormsModule } from '@angular/forms'\n\nimport { NggCoreControlDirective } from './core-control.directive'\n\n@NgModule({\n declarations: [NggCoreControlDirective],\n imports: [CommonModule, ReactiveFormsModule],\n exports: [NggCoreControlDirective],\n})\nexport class NggCoreFormsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AnimationRendererFactory","DomRendererFactory2","AnimationEngine"],"mappings":"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"}
1
+ {"version":3,"file":"sebgroup-green-angular-src-lib-shared.mjs","sources":["../../../../libs/angular/src/lib/shared/on-scroll.directive.ts","../../../../libs/angular/src/lib/shared/shared.module.ts","../../../../libs/angular/src/lib/shared/core-renderer/core-renderer.ts","../../../../libs/angular/src/lib/shared/core-element/core-element.directive.ts","../../../../libs/angular/src/lib/shared/core-element/core-element.module.ts","../../../../libs/angular/src/lib/shared/core-control/core-control.directive.ts","../../../../libs/angular/src/lib/shared/core-control/core-control.module.ts","../../../../libs/angular/src/lib/shared/core-router-link/core-router-link.directive.ts","../../../../libs/angular/src/lib/shared/core-router-link/core-router-link.module.ts","../../../../libs/angular/src/lib/shared/sebgroup-green-angular-src-lib-shared.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n InjectionToken,\n OnDestroy,\n} from '@angular/core'\nimport { fromEvent, interval, Subject } from 'rxjs'\nimport { takeUntil, throttle } from 'rxjs/operators'\n\nexport const ON_SCROLL_TOKEN = new InjectionToken<string>('ON_SCROLL_TOKEN')\n\n@Directive({\n selector: '[nggOnScroll]',\n providers: [\n {\n provide: ON_SCROLL_TOKEN,\n useFactory: (component: NggOnScrollDirective): Subject<unknown> =>\n component?.onScroll$,\n deps: [NggOnScrollDirective],\n },\n ],\n})\nexport class NggOnScrollDirective implements AfterViewInit, OnDestroy {\n onScroll$ = new Subject()\n destroy$ = new Subject()\n\n constructor(private elementRef: ElementRef) {}\n\n public ngAfterViewInit(): void {\n if (this.elementRef) {\n fromEvent(this.elementRef?.nativeElement, 'scroll')\n .pipe(\n takeUntil(this.destroy$),\n throttle(() => interval(30)),\n )\n .subscribe(() => {\n this.onScroll$.next(null) // Changes: added null due to TS error\n })\n }\n }\n\n public ngOnDestroy(): void {\n this.destroy$.next(null)\n this.destroy$.complete()\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NggOnScrollDirective } from './on-scroll.directive'\n\n@NgModule({\n declarations: [NggOnScrollDirective],\n imports: [CommonModule],\n exports: [NggOnScrollDirective],\n})\nexport class NggSharedModule {}\n","import {\n ɵAnimationEngine as AnimationEngine,\n ɵAnimationRendererFactory as AnimationRendererFactory,\n} from '@angular/animations/browser'\nimport {\n Injectable,\n NgZone,\n Renderer2,\n RendererFactory2,\n RendererStyleFlags2,\n RendererType2,\n} from '@angular/core'\nimport { ɵDomRendererFactory2 as DomRendererFactory2 } from '@angular/platform-browser'\n\nimport { getScopedTagName } from '@sebgroup/green-core/scoping'\n\nexport class NggCoreRenderer implements Renderer2 {\n constructor(private delegate: Renderer2) {}\n\n createElement(name: string, namespace?: string | null): any {\n const scopedName = name.startsWith('gds-') ? getScopedTagName(name) : name\n return this.delegate.createElement(scopedName, namespace)\n }\n\n // Delegate all other methods to the original renderer\n addClass(el: any, name: string): void {\n return this.delegate.addClass(el, name)\n }\n get data(): { [key: string]: any } {\n return this.delegate.data\n }\n destroy(): void {\n return this.delegate.destroy()\n }\n createComment(value: string) {\n return this.delegate.createComment(value)\n }\n createText(value: string) {\n return this.delegate.createText(value)\n }\n destroyNode: ((node: any) => void) | null = (node) =>\n this.delegate.destroyNode && this.delegate.destroyNode(node)\n appendChild(parent: any, newChild: any): void {\n return this.delegate.appendChild(parent, newChild)\n }\n insertBefore(\n parent: any,\n newChild: any,\n refChild: any,\n isMove?: boolean | undefined,\n ): void {\n return this.delegate.insertBefore(parent, newChild, refChild, isMove)\n }\n removeChild(\n parent: any,\n oldChild: any,\n isHostElement?: boolean | undefined,\n ): void {\n return this.delegate.removeChild(parent, oldChild, isHostElement)\n }\n selectRootElement(\n selectorOrNode: any,\n preserveContent?: boolean | undefined,\n ) {\n return this.delegate.selectRootElement(selectorOrNode, preserveContent)\n }\n parentNode(node: any) {\n return this.delegate.parentNode(node)\n }\n nextSibling(node: any) {\n return this.delegate.nextSibling(node)\n }\n setAttribute(\n el: any,\n name: string,\n value: string,\n namespace?: string | null | undefined,\n ): void {\n return this.delegate.setAttribute(el, name, value, namespace)\n }\n removeAttribute(\n el: any,\n name: string,\n namespace?: string | null | undefined,\n ): void {\n return this.delegate.removeAttribute(el, name, namespace)\n }\n removeClass(el: any, name: string): void {\n return this.delegate.removeClass(el, name)\n }\n setStyle(\n el: any,\n style: string,\n value: any,\n flags?: RendererStyleFlags2 | undefined,\n ): void {\n return this.delegate.setStyle(el, style, value, flags)\n }\n removeStyle(\n el: any,\n style: string,\n flags?: RendererStyleFlags2 | undefined,\n ): void {\n return this.delegate.removeStyle(el, style, flags)\n }\n setProperty(el: any, name: string, value: any): void {\n return this.delegate.setProperty(el, name, value)\n }\n setValue(node: any, value: string): void {\n return this.delegate.setValue(node, value)\n }\n listen(\n target: any,\n eventName: string,\n callback: (event: any) => boolean | void,\n ): () => void {\n return this.delegate.listen(target, eventName, callback)\n }\n}\n\n@Injectable()\nexport class NggCoreRendererFactory implements RendererFactory2 {\n constructor(private delegate: DomRendererFactory2) {}\n\n createRenderer(element: any, type: RendererType2 | null): Renderer2 {\n const renderer = this.delegate.createRenderer(element, type)\n return new NggCoreRenderer(renderer)\n }\n}\n\n/**\n * Returns a AnimationRendererFactory configured to use the NggCoreRendererFactory as a delegate.\n */\nexport function animationsCoreRendererFactory(\n delegate: DomRendererFactory2,\n engine: AnimationEngine,\n zone: NgZone,\n) {\n const crf = new NggCoreRendererFactory(delegate)\n return new AnimationRendererFactory(crf, engine, zone)\n}\n\n/**\n * Provide the NggCoreRendererFactory to use <gds-*> elements without any extra directives.\n * The NggCoreRenderer will handle element name scoping automatically.\n *\n * Example:\n * ```ts\n * @NgModule({\n * providers: [provideCoreRenderer()],\n * schemas: [CUSTOM_ELEMENTS_SCHEMA],\n * })\n * export class AppModule {}\n * ```\n */\nexport const provideCoreRenderer = () => ({\n provide: RendererFactory2,\n useClass: NggCoreRendererFactory,\n})\n\n/**\n * Provide the NggCoreRendererFactory to use <gds-*> elements without any extra directives.\n * The NggCoreRenderer will handle element name scoping automatically.\n *\n * This factory also provides the Angular animations renderer.\n *\n *\n * Example:\n * ```ts\n * @NgModule({\n * imports: [BrowserAnimationsModule],\n * providers: [provideCoreRendererWithAnimations()],\n * schemas: [CUSTOM_ELEMENTS_SCHEMA],\n * })\n * export class AppModule {}\n * ```\n */\nexport const provideCoreRendererWithAnimations = () => ({\n provide: RendererFactory2,\n useFactory: animationsCoreRendererFactory,\n deps: [DomRendererFactory2, AnimationEngine, NgZone],\n})\n","import { DOCUMENT } from '@angular/common'\nimport {\n ChangeDetectorRef,\n Directive,\n EmbeddedViewRef,\n inject,\n OnInit,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core'\n\nimport { getScopedTagName } from '@sebgroup/green-core/scoping'\nimport { NggCoreRenderer } from '../core-renderer'\n\n@Directive({\n selector: '[nggCoreElement]',\n})\nexport class NggCoreElementDirective implements OnInit {\n private viewRef: EmbeddedViewRef<any> | null = null\n private readonly document = inject(DOCUMENT)\n private readonly renderer = inject(Renderer2)\n private readonly vcr = inject(ViewContainerRef)\n private readonly cdr = inject(ChangeDetectorRef)\n private readonly template = inject(TemplateRef<any>)\n\n ngOnInit() {\n if (!(this.renderer instanceof NggCoreRenderer)) {\n this.vcr.clear()\n\n const originalCreateElement = this.renderer.createElement\n this.renderer.createElement = (name: string, _namespace: string) => {\n return this.document.createElement(getScopedTagName(name))\n }\n\n this.cdr.markForCheck()\n this.viewRef = this.vcr.createEmbeddedView(this.template)\n this.renderer.createElement = originalCreateElement\n }\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { NggCoreElementDirective } from './core-element.directive'\n\n@NgModule({\n declarations: [NggCoreElementDirective],\n imports: [CommonModule],\n exports: [NggCoreElementDirective],\n})\nexport class NggCoreWrapperModule {}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n forwardRef,\n Injector,\n Renderer2,\n} from '@angular/core'\nimport {\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n NgControl,\n Validators,\n} from '@angular/forms'\n\n@Directive({\n selector:\n 'gds-input, gds-textarea, gds-dropdown, gds-datepicker, gds-select, gds-radio-group, [nggCoreControl]',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NggCoreControlDirective),\n multi: true,\n },\n ],\n})\nexport class NggCoreControlDirective\n implements ControlValueAccessor, AfterViewInit\n{\n private control?: NgControl\n\n constructor(\n private el: ElementRef,\n private renderer: Renderer2,\n private injector: Injector,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngAfterViewInit() {\n this.control = this.injector.get(NgControl)\n\n this.control.statusChanges?.subscribe(() => {\n this.updateControlState()\n })\n\n this.control.valueChanges?.subscribe(() => {\n this.updateControlState()\n })\n\n // Update on submit\n const form = this.el.nativeElement.form\n if (form) {\n form.addEventListener('submit', () => {\n this.control?.control?.markAsTouched()\n this.updateControlState()\n })\n }\n\n this.updateControlState()\n }\n\n private updateControlState() {\n const control = this.control?.control\n if (control) {\n this.renderer.setProperty(\n this.el.nativeElement,\n 'invalid',\n (control.dirty || control.touched) && control.invalid,\n )\n }\n }\n\n // ControlValueAccessor implementation\n writeValue(value: any): void {\n this.renderer.setProperty(this.el.nativeElement, 'value', value)\n }\n\n registerOnChange(fn: (_: any) => void): void {\n this.el.nativeElement.addEventListener('input', (event: any) => {\n fn(event.target.value)\n this.cdr.markForCheck()\n })\n }\n\n registerOnTouched(fn: any): void {\n this.el.nativeElement.addEventListener('blur', fn)\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.renderer.setProperty(this.el.nativeElement, 'disabled', isDisabled)\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { ReactiveFormsModule } from '@angular/forms'\n\nimport { NggCoreControlDirective } from './core-control.directive'\n\n@NgModule({\n declarations: [NggCoreControlDirective],\n imports: [CommonModule, ReactiveFormsModule],\n exports: [NggCoreControlDirective],\n})\nexport class NggCoreFormsModule {}\n","import {\n Directive,\n ElementRef,\n OnChanges,\n Optional,\n Renderer2,\n Self,\n SimpleChanges,\n} from '@angular/core'\nimport { RouterLink, RouterLinkActive } from '@angular/router'\n\n@Directive({\n selector: '[nggCoreRouterLink]',\n})\nexport class NggCoreRouterLinkDirective implements OnChanges {\n constructor(\n private renderer: Renderer2,\n private elementRef: ElementRef,\n @Self() @Optional() private routerLink?: RouterLink,\n @Self() @Optional() private routerLinkActive?: RouterLinkActive,\n ) {\n this.routerLinkActive?.isActiveChange.subscribe(() => this.setActive())\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['routerLink']) {\n this.updateHref()\n }\n }\n\n ngAfterViewInit(): void {\n this.updateHref()\n this.setActive()\n }\n\n private setActive(): void {\n if (\n this.routerLinkActive &&\n this.elementRef.nativeElement?.tagName.includes('GDS-MENU-BUTTON')\n ) {\n this.elementRef.nativeElement.selected = this.routerLinkActive.isActive\n }\n }\n\n private updateHref(): void {\n // First we need to be a bit sneaky and trick `RouterLink` into thinking we are an anchor element\n ;(this.routerLink as any).isAnchorElement = true\n ;(this.routerLink as any).updateHref()\n\n // Then we can set the href attribute\n this.renderer.setAttribute(\n this.elementRef.nativeElement,\n 'href',\n this.routerLink?.href || '',\n )\n }\n}\n","import { NgModule } from '@angular/core'\n\nimport { NggCoreRouterLinkDirective } from './core-router-link.directive'\n\n@NgModule({\n declarations: [NggCoreRouterLinkDirective],\n exports: [NggCoreRouterLinkDirective],\n})\nexport class NggCoreRouterLinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AnimationRendererFactory","DomRendererFactory2","AnimationEngine","i1"],"mappings":"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"}
@@ -744,9 +744,6 @@ class NggvTypeaheadInputComponent extends NggvInputComponent {
744
744
  // Only move if parent dropdown is found
745
745
  if (this.dropdownButton) {
746
746
  this.renderer2.appendChild(this.dropdownButton.querySelector('button'), this.element.nativeElement);
747
- // Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
748
- this.buttonHeight =
749
- this.dropdownButton.getBoundingClientRect().height || 32; // Default to 2em;
750
747
  this.inputMoved = true;
751
748
  }
752
749
  }, 0);
@@ -765,6 +762,9 @@ class NggvTypeaheadInputComponent extends NggvInputComponent {
765
762
  // different CSS used to hide (but not remove) from DOM
766
763
  if (!this.inputMoved)
767
764
  this.moveInput();
765
+ // Get the height of the parent button so the input can be explicitly set to the same height since it's absolutely positioned
766
+ this.buttonHeight =
767
+ this.dropdownButton?.getBoundingClientRect().height || 32; // Default to 2em;
768
768
  if (this.expanded) {
769
769
  // Weird workaround for setting focus. Didn't set focus, but wrapping in setTimeout solved it.
770
770
  // See suggestion here: https://github.com/ionic-team/stencil/issues/3772#issuecomment-1292599609
@@ -804,11 +804,11 @@ class NggvTypeaheadInputComponent extends NggvInputComponent {
804
804
  }
805
805
  }
806
806
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
807
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
807
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTypeaheadInputComponent, selector: "nggv-typeahead-input", inputs: { hostComponent: "hostComponent", resultFormatter: "resultFormatter", selectedFormatter: "selectedFormatter" }, host: { listeners: { "keyup": "onKeyUp($event)" } }, usesInheritance: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
808
808
  }
809
809
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTypeaheadInputComponent, decorators: [{
810
810
  type: Component,
811
- args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
811
+ args: [{ selector: 'nggv-typeahead-input', template: "<ng-container>\n <div\n class=\"input-wrapper\"\n [ngClass]=\"{ expanded: expanded, collapsed: !expanded }\"\n [ngStyle]=\"{ 'height.px': buttonHeight }\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- INPUT FIELD -->\n <div class=\"input-group\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"gds-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n </div>\n</ng-container>\n", styles: [":host{position:absolute;top:1px;left:0;width:calc(100% - 2.625em)}:host .input-wrapper{border:none;box-shadow:none}:host .input-wrapper.expanded{display:flex}:host .input-wrapper.expanded .input-group input.gds-field{height:calc(100% - 2px);width:100%;min-height:unset;margin-left:1px;padding-left:1rem;padding-right:1rem;border:none;box-shadow:none}:host .input-wrapper.collapsed{display:none}:host .input-wrapper .input-group{width:100%}\n"] }]
812
812
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1$1.NgControl, decorators: [{
813
813
  type: Self
814
814
  }, {