@onemrvapublic/design-system 17.3.105 → 17.3.106
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.
|
@@ -19,7 +19,6 @@ export class OnemrvaDateAdapter extends NativeDateAdapter {
|
|
|
19
19
|
return moment(date).format('DD/MM/YYYY');
|
|
20
20
|
}
|
|
21
21
|
parse(value) {
|
|
22
|
-
console.log(value);
|
|
23
22
|
if (value && typeof value === 'string') {
|
|
24
23
|
//value = value.replace(/\D/g,'');
|
|
25
24
|
value = value.replace(/\D/g, '/');
|
|
@@ -47,4 +46,4 @@ export class OnemrvaDateAdapter extends NativeDateAdapter {
|
|
|
47
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OnemrvaDateAdapter, decorators: [{
|
|
48
47
|
type: Injectable
|
|
49
48
|
}] });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT25lbXJ2YURhdGVBZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL3NoYXJlZC9zcmMvbGliL09uZW1ydmFEYXRlQWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFDOztBQUV4QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsS0FBSyxFQUFFO1FBQ0wsU0FBUyxFQUFFLElBQUk7S0FDaEI7SUFDRCxPQUFPLEVBQUU7UUFDUCxTQUFTLEVBQUUsWUFBWTtRQUN2QixjQUFjLEVBQUUsVUFBVTtRQUMxQixhQUFhLEVBQUUsSUFBSTtRQUNuQixrQkFBa0IsRUFBRSxXQUFXO0tBQ2hDO0NBQ0YsQ0FBQztBQUdGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxpQkFBaUI7SUFDOUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO0lBRXhCLE1BQU0sQ0FBQyxJQUFVO1FBQ3hCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRVEsS0FBSyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDdkMsa0NBQWtDO1lBQ2xDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQzlDLE9BQU8sTUFBTSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEQsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNoRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3BELENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDOUMsT0FBTyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQy9DLE9BQU8sTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkQsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUMvQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ25ELENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO3VHQTlCVSxrQkFBa0I7MkdBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7TmF0aXZlRGF0ZUFkYXB0ZXJ9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9jb3JlXCI7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSBcIm1vbWVudC9tb21lbnRcIjtcblxuZXhwb3J0IGNvbnN0IE9ORU1SVkFfRk9STUFUID0ge1xuICBwYXJzZToge1xuICAgIGRhdGVJbnB1dDogJ0xMJyxcbiAgfSxcbiAgZGlzcGxheToge1xuICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknLFxuICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxuICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcbiAgfSxcbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPbmVtcnZhRGF0ZUFkYXB0ZXIgZXh0ZW5kcyBOYXRpdmVEYXRlQWRhcHRlciB7XG4gIG92ZXJyaWRlIHVzZVV0Y0ZvckRpc3BsYXkgPSB0cnVlO1xuXG4gIG92ZXJyaWRlIGZvcm1hdChkYXRlOiBEYXRlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbW9tZW50KGRhdGUpLmZvcm1hdCgnREQvTU0vWVlZWScpO1xuICB9XG5cbiAgb3ZlcnJpZGUgcGFyc2UodmFsdWU6IGFueSk6IERhdGUgfCBudWxsIHtcbiAgICBpZiAodmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgLy92YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcRC9nLCcnKTtcbiAgICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZSgvXFxEL2csICcvJyk7XG4gICAgfVxuXG4gICAgaWYgKG1vbWVudCh2YWx1ZSwgJ0RETU1ZWVlZJywgdHJ1ZSkuaXNWYWxpZCgpKSB7XG4gICAgICByZXR1cm4gbW9tZW50KHZhbHVlLCAnRERNTVlZWVknLCB0cnVlKS50b0RhdGUoKTtcbiAgICB9XG4gICAgaWYgKG1vbWVudCh2YWx1ZSwgJ0REL01NL1lZWVknLCB0cnVlKS5pc1ZhbGlkKCkpIHtcbiAgICAgIHJldHVybiBtb21lbnQodmFsdWUsICdERC9NTS9ZWVlZJywgdHJ1ZSkudG9EYXRlKCk7XG4gICAgfVxuICAgIGlmIChtb21lbnQodmFsdWUsICdEL00vWVlZWScsIHRydWUpLmlzVmFsaWQoKSkge1xuICAgICAgcmV0dXJuIG1vbWVudCh2YWx1ZSwgJ0QvTS9ZWVlZJywgdHJ1ZSkudG9EYXRlKCk7XG4gICAgfVxuICAgIGlmIChtb21lbnQodmFsdWUsICdERC9NL1lZWVknLCB0cnVlKS5pc1ZhbGlkKCkpIHtcbiAgICAgIHJldHVybiBtb21lbnQodmFsdWUsICdERC9NL1lZWVknLCB0cnVlKS50b0RhdGUoKTtcbiAgICB9XG4gICAgaWYgKG1vbWVudCh2YWx1ZSwgJ0QvTU0vWVlZWScsIHRydWUpLmlzVmFsaWQoKSkge1xuICAgICAgcmV0dXJuIG1vbWVudCh2YWx1ZSwgJ0QvTU0vWVlZWScsIHRydWUpLnRvRGF0ZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmludmFsaWQoKTtcbiAgfVxufVxuIl19
|
|
@@ -535,7 +535,6 @@ class OnemrvaDateAdapter extends NativeDateAdapter {
|
|
|
535
535
|
return moment(date).format('DD/MM/YYYY');
|
|
536
536
|
}
|
|
537
537
|
parse(value) {
|
|
538
|
-
console.log(value);
|
|
539
538
|
if (value && typeof value === 'string') {
|
|
540
539
|
//value = value.replace(/\D/g,'');
|
|
541
540
|
value = value.replace(/\D/g, '/');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onemrvapublic-design-system-shared.mjs","sources":["../../../../projects/onemrva/design-system/shared/src/lib/directives/digit-only.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/mat-row-clickable.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/if-width-is.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/color.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/mask.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/components/clipboard-icon/clipboard-icon.component.ts","../../../../projects/onemrva/design-system/shared/src/lib/components/clipboard-icon/clipboard-icon.component.html","../../../../projects/onemrva/design-system/shared/src/lib/directives/clipboard.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/index.ts","../../../../projects/onemrva/design-system/shared/src/lib/shared.module.ts","../../../../projects/onemrva/design-system/shared/src/lib/OnemrvaDateAdapter.ts","../../../../projects/onemrva/design-system/shared/src/lib/shared.datepicker.module.ts","../../../../projects/onemrva/design-system/shared/src/lib/pipes/onemrva-bce.pipe.ts","../../../../projects/onemrva/design-system/shared/src/lib/pipes/onemrva-niss.pipe.ts","../../../../projects/onemrva/design-system/shared/src/lib/validators/onemrva-validators.ts","../../../../projects/onemrva/design-system/shared/index.ts","../../../../projects/onemrva/design-system/shared/onemrvapublic-design-system-shared.ts"],"sourcesContent":["import { Directive, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[digitOnly]',\n})\nexport class DigitOnlyDirective {\n constructor() {}\n\n @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n let e = <KeyboardEvent>event;\n\n const allowedKey = [\n '0',\n '1',\n '2',\n '3',\n '4',\n '5',\n '6',\n '7',\n '8',\n '9',\n '.',\n ',',\n ' ',\n 'Backspace',\n 'Delete',\n 'Tab',\n '-',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n if (allowedKey.indexOf(e.key) >= 0) return;\n\n // HWKTODO manage ctrl Z and ctrl U\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n\n e.preventDefault();\n }\n}\n","import {Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {OnemrvaMatColor} from \"@onemrvapublic/design-system/utils\";\n\n@Directive({\n selector: '[mat-row-clickable]'\n})\nexport class MatRowClickableDirective {\n\n @Output('mat-row-clickable')\n matRowClickable: EventEmitter<any> = new EventEmitter<any>();\n\n @Input()\n color: OnemrvaMatColor = '';\n\n constructor(private el:ElementRef) {}\n\n @HostListener('click', ['$event'])\n click(event: any) {\n this.matRowClickable.emit();\n }\n\n @HostBinding('class.onemrva-clickable-row')\n public cssClass = true;\n\n ngOnInit() {\n }\n\n /** @hidden @internal */\n @HostBinding('class.mat-primary')\n public get _isPrimary(): boolean {\n return this.color === OnemrvaMatColor.PRIMARY;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-accent')\n public get _isAccent(): boolean {\n return this.color === OnemrvaMatColor.ACCENT;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return this.color === OnemrvaMatColor.INFO;\n }\n}\n","import { BreakpointObserver, Breakpoints, BreakpointState } from '@angular/cdk/layout';\nimport { Directive, Input, OnInit, TemplateRef, ViewContainerRef } from '@angular/core';\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: '[ifWidthIs]',\n})\nexport class IfWidthIsDirective implements OnInit {\n @Input() ifWidthIs!: typeof Breakpoints[keyof typeof Breakpoints][];\n\n constructor(\n public breakpointObserver: BreakpointObserver,\n private _templateRef: TemplateRef<any>,\n private _viewContainer: ViewContainerRef\n ) {}\n\n ngOnInit() {\n this.breakpointObserver.observe([...this.ifWidthIs]).subscribe((state: BreakpointState) => {\n this._viewContainer.clear();\n if (state.matches) {\n this._viewContainer.createEmbeddedView(this._templateRef);\n }\n });\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {OnemrvaMatColor} from \"@onemrvapublic/design-system/utils\";\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: 'mat-card[color],mat-chip[color]',\n})\nexport class OnemRvaColorDirective {\n\n constructor() {}\n\n @Input()\n color: OnemrvaMatColor = '';\n\n /** @hidden @internal */\n @HostBinding('class.mat-primary')\n public get _isPrimary(): boolean {\n return this.color === OnemrvaMatColor.PRIMARY;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-accent')\n public get _isAccent(): boolean {\n return this.color === OnemrvaMatColor.ACCENT;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return this.color === OnemrvaMatColor.INFO;\n }\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\n\nconst UNDO_STACK_MAX_LENGTH = 50;\n\n/**\n * 0: digits\n * A: letters (uppercase or lowercase) and digits\n * S: only letters (uppercase or lowercase)\n * U: only letters uppercase\n * L: only letters lowercase\n */\n\n@Directive({\n selector: '[onemrvamask]',\n})\nexport class OnemrvaMaskDirective {\n @Input() onemrvamask!: string;\n\n private inputStack: string[] = ['']; // Stack for undo/redo\n private stackIdx: number = 0; // Current index in undo/redo stack\n\n markForDelete = false;\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n // Allow functional keystrokes\n let e = <KeyboardEvent>event;\n\n let specialKeys = [\n 'Tab',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n if (specialKeys.indexOf(e.key) >= 0) return;\n\n specialKeys = ['Backspace', 'Delete'];\n if (specialKeys.indexOf(e.key) >= 0) {\n this.markForDelete = true;\n return;\n }\n\n // Undo\n if (e.ctrlKey && 'z' === e.key && this.stackIdx > 0) {\n this.stackIdx--;\n this.el.nativeElement.value = this.inputStack[this.stackIdx];\n event.preventDefault();\n }\n\n // Redo\n if (\n e.ctrlKey &&\n 'u' === e.key &&\n this.stackIdx < this.inputStack.length - 1\n ) {\n this.stackIdx++;\n this.el.nativeElement.value = this.inputStack[this.stackIdx];\n event.preventDefault();\n }\n\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n }\n\n @HostListener('input', ['$event']) onInput(event: any) {\n let selectionStart = event.target?.selectionStart;\n\n /*\n * Step 1\n * This block lets a delete execution if the new value is compliant.\n * There are 2 deletion cases, after which the new value is not compliant\n * - dd/MX/yyyy: X is deleted, then the date becomes dd/M/yyyy\n * This case is resolved by step 2 and the date will become: dd/My/yyy\n * - dd/MMXyyyy: the last '/' is deleted, then the date becomes dd/MMyyyy\n * In this particular case, step 2 will automatically add the missing slash, so the date will remain dd/MM/yyyy\n * The issue is that the caret position will remain stuck where it was, so if the user keeps hitting the delete key, nothing will change at all. This is resolved in step 4 by moving the caret to the left\n */\n if (this.markForDelete) {\n const isCompliantAfterDeletion =\n [...this.el.nativeElement.value].findIndex((char, idx) => {\n let rule = this.onemrvamask[idx];\n\n if (rule === null || rule === undefined) return true;\n\n if (isNaN(char) && char.toLowerCase() === char.toUpperCase())\n return char !== rule;\n\n return !isAllowed(rule, char);\n }) < 0;\n\n if (isCompliantAfterDeletion) {\n this.markForDelete = false;\n return;\n }\n }\n\n // Step 2\n const compliantValue = [...this.el.nativeElement.value]\n .filter((char) => isAllowed('A', char)) // Necessary when several special char in a row\n .reduce((newValue, char) => {\n let idx = newValue.length;\n let rule = this.onemrvamask[idx];\n\n if (rule === null || rule === undefined) return newValue;\n\n newValue = !isAllowed(rule, char) ? newValue : newValue + char;\n\n // Add all trailing special characters\n let nextRule = this.onemrvamask[++idx];\n let i = 0;\n\n while (\n nextRule !== null &&\n nextRule !== undefined &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n i++;\n newValue += nextRule;\n nextRule = this.onemrvamask[++idx];\n\n if (i > 50) break;\n }\n\n return newValue;\n }, '');\n\n this.el.nativeElement.value = compliantValue;\n\n // Step 3 - Find the new cursor position. If the last new character is just before special character, move the caret after\n let idx = selectionStart;\n let nextRule = this.onemrvamask[idx];\n while (\n nextRule !== null &&\n nextRule !== undefined &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n idx++;\n nextRule = this.onemrvamask[idx];\n if (\n nextRule !== null &&\n nextRule &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n } else break;\n }\n\n // Step 4 - Update inputStack only when all characters are processed\n if (compliantValue !== this.inputStack[this.stackIdx]) {\n this.stackIdx++;\n\n let stack =\n this.stackIdx > UNDO_STACK_MAX_LENGTH - 1\n ? this.inputStack.slice(1)\n : this.inputStack.splice(0, this.stackIdx);\n this.stackIdx =\n this.stackIdx > UNDO_STACK_MAX_LENGTH - 1\n ? UNDO_STACK_MAX_LENGTH - 1\n : this.stackIdx;\n\n this.inputStack = [...stack, compliantValue];\n\n this.el.nativeElement.setSelectionRange(idx, idx);\n } else {\n if (this.markForDelete) {\n let i = idx - 1;\n /* Finds the last rule character before the special character.\n * e.g: (nnn)/nnnn\n * If the user tries to delete '/', the caret will move just before ')'\n */\n while (i > 0) {\n const previousRule = this.onemrvamask[i - 1];\n if (['0', 'A', 'S', 'U', 'L'].indexOf(previousRule) < 0) {\n i--;\n } else break;\n }\n this.el.nativeElement.setSelectionRange(i, i);\n }\n }\n this.markForDelete = false;\n }\n constructor(private el: ElementRef) {}\n}\n\nfunction isAllowed(rule: string, character: string) {\n switch (rule) {\n // Any digit\n case '0':\n if (character === ' ') return false;\n return !isNaN(+character);\n\n // A: letters (uppercase or lowercase) and digits\n case 'A':\n if (character === ' ') return false;\n return (\n !isNaN(+character) || character.toLowerCase() != character.toUpperCase()\n );\n\n // only letters (uppercase or lowercase)\n case 'S':\n return character.toLowerCase() != character.toUpperCase();\n\n // only uppercase letters\n case 'U':\n return (\n character.toLowerCase() != character.toUpperCase() &&\n character === character.toUpperCase()\n );\n\n // only lowercase letters\n case 'L':\n return (\n character.toLowerCase() != character.toUpperCase() &&\n character === character.toLowerCase()\n );\n }\n\n return false;\n}\n","import {Component, ElementRef, ViewChild} from '@angular/core';\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {Clipboard} from \"@angular/cdk/clipboard\";\n\n@Component({\n selector: 'lib-clipboard-icon',\n templateUrl: './clipboard-icon.component.html',\n styleUrls: ['./clipboard-icon.component.css'],\n standalone: true,\n imports: [\n MatIconModule,\n MatTooltipModule\n ]\n})\nexport class ClipboardIconComponent {\n constructor(\n public _elementRef : ElementRef,\n private clipboardService : Clipboard) {\n }\n\n}\n","<mat-icon [matTooltip]=\"'TEST'\">content_copy</mat-icon>\n","import {\n ChangeDetectorRef,\n ComponentFactoryResolver, ComponentRef,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Renderer2,\n ViewContainerRef\n} from '@angular/core';\nimport {Clipboard} from \"@angular/cdk/clipboard\";\nimport {ClipboardIconComponent} from \"../components/clipboard-icon/clipboard-icon.component\";\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: 'span[clipboard]',\n host: {\n // '[style.padding]': '\"pointer\"',\n },\n\n})\nexport class OnemRvaClipboardDirective implements OnInit{\n\n private icon: ComponentRef<ClipboardIconComponent>;\n private iconEl: any;\n\n constructor(\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private factory: ComponentFactoryResolver,\n private vcRef: ViewContainerRef,\n private clipboardService : Clipboard) {\n\n const miFactory = this.factory.resolveComponentFactory(ClipboardIconComponent);\n this.icon = this.vcRef.createComponent(miFactory);\n this.iconEl = this.icon.injector.get(ClipboardIconComponent)._elementRef.nativeElement;\n\n }\n\n @HostBinding('class')\n class = \"\";\n\n @Input()\n clipboard: string = '';\n\n ngOnInit(): void {\n this.vcRef.clear();\n\n\n this.renderer.appendChild(this.elementRef.nativeElement, this.iconEl);\n }\n}\n","import { DigitOnlyDirective } from './digit-only.directive';\nimport { MatRowClickableDirective } from './mat-row-clickable.directive';\nimport { IfWidthIsDirective } from './if-width-is.directive';\nimport { OnemRvaColorDirective } from './color.directive';\nimport { OnemrvaMaskDirective } from './mask.directive';\nimport {OnemRvaClipboardDirective} from \"./clipboard.directive\";\n\nexport const directives: any[] = [\n DigitOnlyDirective,\n MatRowClickableDirective,\n OnemRvaClipboardDirective,\n IfWidthIsDirective,\n OnemRvaColorDirective,\n OnemrvaMaskDirective,\n];\n\nexport * from './digit-only.directive';\nexport * from './mat-row-clickable.directive';\nexport * from './if-width-is.directive';\nexport * from './color.directive';\nexport * from './mask.directive';\nexport * from './clipboard.directive';\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { directives } from './directives';\nimport {OnemrvaDatepickerSharedModule} from \"./shared.datepicker.module\";\n\n@NgModule({\n declarations: [...directives],\n imports: [CommonModule],\n exports: [...directives, CommonModule],\n})\nexport class OnemrvaSharedModule {}\n","import {Injectable} from \"@angular/core\";\nimport {NativeDateAdapter} from \"@angular/material/core\";\nimport * as moment from \"moment/moment\";\n\nexport const ONEMRVA_FORMAT = {\n parse: {\n dateInput: 'LL',\n },\n display: {\n dateInput: 'DD/MM/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n },\n};\n\n@Injectable()\nexport class OnemrvaDateAdapter extends NativeDateAdapter {\n override useUtcForDisplay = true;\n\n override format(date: Date): string {\n return moment(date).format('DD/MM/YYYY');\n }\n\n override parse(value: any): Date | null {\n console.log(value);\n if (value && typeof value === 'string') {\n //value = value.replace(/\\D/g,'');\n value = value.replace(/\\D/g, '/');\n }\n\n if (moment(value, 'DDMMYYYY', true).isValid()) {\n return moment(value, 'DDMMYYYY', true).toDate();\n }\n if (moment(value, 'DD/MM/YYYY', true).isValid()) {\n return moment(value, 'DD/MM/YYYY', true).toDate();\n }\n if (moment(value, 'D/M/YYYY', true).isValid()) {\n return moment(value, 'D/M/YYYY', true).toDate();\n }\n if (moment(value, 'DD/M/YYYY', true).isValid()) {\n return moment(value, 'DD/M/YYYY', true).toDate();\n }\n if (moment(value, 'D/MM/YYYY', true).isValid()) {\n return moment(value, 'D/MM/YYYY', true).toDate();\n }\n\n return this.invalid();\n }\n}\n","import {APP_INITIALIZER, NgModule} from '@angular/core';\nimport {\n DateAdapter,\n MAT_DATE_FORMATS,\n MAT_DATE_LOCALE,\n MatNativeDateModule\n} from \"@angular/material/core\";\nimport {TranslateModule, TranslateService} from \"@ngx-translate/core\";\nimport {MatMomentDateModule} from \"@angular/material-moment-adapter\";\nimport {Observable, of} from \"rxjs\";\nimport {ONEMRVA_FORMAT, OnemrvaDateAdapter} from \"./OnemrvaDateAdapter\";\nimport {MatDatepickerModule} from \"@angular/material/datepicker\";\n\nfunction translateDatepicker(\n translateService: TranslateService,\n adapter: DateAdapter<Date>\n): () => Observable<any> {\n return () => {\n // For some cosmic reason, return translateService.onLangChange().asObservable()) + pipe(tap()) does not work\n translateService.onLangChange.subscribe((event) => {\n adapter.setLocale(event.lang);\n });\n\n // But this works fine...\n return of('sin (a +- b) = sin a . cos b +- cos a . sin b');\n };\n}\n\n@NgModule({\n declarations: [],\n imports: [\n MatDatepickerModule,\n TranslateModule,\n MatNativeDateModule,\n MatMomentDateModule\n ],\n exports: [],\n providers: [\n {\n provide: MAT_DATE_LOCALE,\n useValue: 'fr',\n },\n {\n provide: DateAdapter,\n useClass: OnemrvaDateAdapter\n },\n {\n provide: MAT_DATE_FORMATS,\n useValue: ONEMRVA_FORMAT\n },\n {\n provide: APP_INITIALIZER,\n useFactory: translateDatepicker,\n deps: [TranslateService, DateAdapter<any>],\n multi: true,\n },\n ],\n})\nexport class OnemrvaDatepickerSharedModule {}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'onemrvaBce',\n standalone: true,\n})\nexport class OnemrvaBcePipe implements PipeTransform {\n transform(value: string): string {\n let strOut = value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (strOut.length !== 10) return '?01?.???.???';\n\n return `${strOut.substring(0, 4)}.${strOut.substring(\n 4,\n 7\n )}.${strOut.substring(7, 10)}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'onemrvaNiss',\n standalone: true,\n})\nexport class OnemrvaNissPipe implements PipeTransform {\n transform(value: string): string {\n let strOut = value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (strOut.length !== 11) return '??01??/???-??';\n\n return `${strOut.substring(0, 6)}/${strOut.substring(\n 6,\n 9\n )}-${strOut.substring(9, 11)}`;\n }\n}\n","import { ValidationErrors } from '@angular/forms';\nimport { AbstractControl, ValidatorFn } from '@angular/forms';\n\nexport class OnemrvaValidators {\n\n private static bceValidator(required = false, control: AbstractControl) {\n\n if (control.value === null || control.value.trim() === '') {\n return !required ? null : { bceNull: true };\n }\n\n let bceCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (bceCandidate.length !== 10)\n return { bceLengthError: { value: bceCandidate } };\n\n if (Number.isNaN(+bceCandidate))\n return { bceNan: { value: bceCandidate } };\n\n return null;\n }\n\n static bce(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n return this.bceValidator(required, control);\n };\n }\n\n private static nissValidator(required = false, control: AbstractControl) {\n if (control.value === null || control.value.trim() === '')\n return !required ? null : { nissNull: true };\n\n let nissCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (nissCandidate.length !== 11)\n return { nissLengthError: { value: nissCandidate } };\n\n if (Number.isNaN(+nissCandidate))\n return { nissNan: { value: nissCandidate } };\n\n const date = +nissCandidate.substring(4, 6);\n const month = +nissCandidate.substring(2, 4) - 1;\n const real_month = month%20;\n const currentYear = new Date().getFullYear() - 2000;\n let year = +nissCandidate.substring(0, 2);\n year = year > currentYear ? 1900 + year : 2000 + year;\n\n // Check month\n if (real_month > 11 || month > 51 ) return { nissInvalidMonth: { value: nissCandidate } };\n\n // Check date\n if (date > 31) return { nissInvalidDate: { value: nissCandidate } };\n\n // Check date consistency\n const d = new Date(year, real_month, date);\n if (d.getDate() !== date || d.getMonth() !== real_month)\n // This catches errors such as 32 Jan, which becomes 1 Feb inside the date object\n return { nissInconsistentDate: { value: nissCandidate } };\n\n // Check digit\n let nissStart =\n year < 2000\n ? +nissCandidate.substring(0, 9)\n : +('2' + nissCandidate.substring(0, 9));\n\n if (97 - (nissStart % 97) !== +nissCandidate.substring(9))\n return { nissCheckDigitError: { value: nissCandidate } };\n\n return null;\n }\n\n static niss(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n return this.nissValidator(required, control);\n };\n }\n\n static nissOrBce(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n\n if (control.value === null || control.value.trim() === '')\n return !required ? null : { nissNull: true };\n\n let nissCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (control.value.length === 11) {\n return this.nissValidator(required, control);\n } else if (control.value.length === 10) {\n return this.bceValidator(required, control);\n }\n return { lengthError: { value: nissCandidate } };\n };\n }\n}\n","/*\n * Public API Surface of shared\n */\n\nexport * from './src/lib/shared.module';\nexport * from './src/lib/shared.datepicker.module';\nexport * from './src/lib/OnemrvaDateAdapter';\nexport * from './src/lib/directives';\nexport * from './src/lib/pipes';\nexport * from './src/lib/validators/onemrva-validators';\n\nexport const NISS_MASK = '000000/000-00';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.DigitOnlyDirective","i2.MatRowClickableDirective","i3.OnemRvaClipboardDirective","i4.IfWidthIsDirective","i5.OnemRvaColorDirective","i6.OnemrvaMaskDirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"onemrvapublic-design-system-shared.mjs","sources":["../../../../projects/onemrva/design-system/shared/src/lib/directives/digit-only.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/mat-row-clickable.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/if-width-is.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/color.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/mask.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/components/clipboard-icon/clipboard-icon.component.ts","../../../../projects/onemrva/design-system/shared/src/lib/components/clipboard-icon/clipboard-icon.component.html","../../../../projects/onemrva/design-system/shared/src/lib/directives/clipboard.directive.ts","../../../../projects/onemrva/design-system/shared/src/lib/directives/index.ts","../../../../projects/onemrva/design-system/shared/src/lib/shared.module.ts","../../../../projects/onemrva/design-system/shared/src/lib/OnemrvaDateAdapter.ts","../../../../projects/onemrva/design-system/shared/src/lib/shared.datepicker.module.ts","../../../../projects/onemrva/design-system/shared/src/lib/pipes/onemrva-bce.pipe.ts","../../../../projects/onemrva/design-system/shared/src/lib/pipes/onemrva-niss.pipe.ts","../../../../projects/onemrva/design-system/shared/src/lib/validators/onemrva-validators.ts","../../../../projects/onemrva/design-system/shared/index.ts","../../../../projects/onemrva/design-system/shared/onemrvapublic-design-system-shared.ts"],"sourcesContent":["import { Directive, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[digitOnly]',\n})\nexport class DigitOnlyDirective {\n constructor() {}\n\n @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n let e = <KeyboardEvent>event;\n\n const allowedKey = [\n '0',\n '1',\n '2',\n '3',\n '4',\n '5',\n '6',\n '7',\n '8',\n '9',\n '.',\n ',',\n ' ',\n 'Backspace',\n 'Delete',\n 'Tab',\n '-',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n if (allowedKey.indexOf(e.key) >= 0) return;\n\n // HWKTODO manage ctrl Z and ctrl U\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n\n e.preventDefault();\n }\n}\n","import {Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output} from '@angular/core';\nimport {OnemrvaMatColor} from \"@onemrvapublic/design-system/utils\";\n\n@Directive({\n selector: '[mat-row-clickable]'\n})\nexport class MatRowClickableDirective {\n\n @Output('mat-row-clickable')\n matRowClickable: EventEmitter<any> = new EventEmitter<any>();\n\n @Input()\n color: OnemrvaMatColor = '';\n\n constructor(private el:ElementRef) {}\n\n @HostListener('click', ['$event'])\n click(event: any) {\n this.matRowClickable.emit();\n }\n\n @HostBinding('class.onemrva-clickable-row')\n public cssClass = true;\n\n ngOnInit() {\n }\n\n /** @hidden @internal */\n @HostBinding('class.mat-primary')\n public get _isPrimary(): boolean {\n return this.color === OnemrvaMatColor.PRIMARY;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-accent')\n public get _isAccent(): boolean {\n return this.color === OnemrvaMatColor.ACCENT;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return this.color === OnemrvaMatColor.INFO;\n }\n}\n","import { BreakpointObserver, Breakpoints, BreakpointState } from '@angular/cdk/layout';\nimport { Directive, Input, OnInit, TemplateRef, ViewContainerRef } from '@angular/core';\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: '[ifWidthIs]',\n})\nexport class IfWidthIsDirective implements OnInit {\n @Input() ifWidthIs!: typeof Breakpoints[keyof typeof Breakpoints][];\n\n constructor(\n public breakpointObserver: BreakpointObserver,\n private _templateRef: TemplateRef<any>,\n private _viewContainer: ViewContainerRef\n ) {}\n\n ngOnInit() {\n this.breakpointObserver.observe([...this.ifWidthIs]).subscribe((state: BreakpointState) => {\n this._viewContainer.clear();\n if (state.matches) {\n this._viewContainer.createEmbeddedView(this._templateRef);\n }\n });\n }\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {OnemrvaMatColor} from \"@onemrvapublic/design-system/utils\";\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: 'mat-card[color],mat-chip[color]',\n})\nexport class OnemRvaColorDirective {\n\n constructor() {}\n\n @Input()\n color: OnemrvaMatColor = '';\n\n /** @hidden @internal */\n @HostBinding('class.mat-primary')\n public get _isPrimary(): boolean {\n return this.color === OnemrvaMatColor.PRIMARY;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-accent')\n public get _isAccent(): boolean {\n return this.color === OnemrvaMatColor.ACCENT;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return this.color === OnemrvaMatColor.INFO;\n }\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\n\nconst UNDO_STACK_MAX_LENGTH = 50;\n\n/**\n * 0: digits\n * A: letters (uppercase or lowercase) and digits\n * S: only letters (uppercase or lowercase)\n * U: only letters uppercase\n * L: only letters lowercase\n */\n\n@Directive({\n selector: '[onemrvamask]',\n})\nexport class OnemrvaMaskDirective {\n @Input() onemrvamask!: string;\n\n private inputStack: string[] = ['']; // Stack for undo/redo\n private stackIdx: number = 0; // Current index in undo/redo stack\n\n markForDelete = false;\n\n @HostListener('keydown', ['$event']) onKeyDown(event: KeyboardEvent) {\n // Allow functional keystrokes\n let e = <KeyboardEvent>event;\n\n let specialKeys = [\n 'Tab',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n if (specialKeys.indexOf(e.key) >= 0) return;\n\n specialKeys = ['Backspace', 'Delete'];\n if (specialKeys.indexOf(e.key) >= 0) {\n this.markForDelete = true;\n return;\n }\n\n // Undo\n if (e.ctrlKey && 'z' === e.key && this.stackIdx > 0) {\n this.stackIdx--;\n this.el.nativeElement.value = this.inputStack[this.stackIdx];\n event.preventDefault();\n }\n\n // Redo\n if (\n e.ctrlKey &&\n 'u' === e.key &&\n this.stackIdx < this.inputStack.length - 1\n ) {\n this.stackIdx++;\n this.el.nativeElement.value = this.inputStack[this.stackIdx];\n event.preventDefault();\n }\n\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n }\n\n @HostListener('input', ['$event']) onInput(event: any) {\n let selectionStart = event.target?.selectionStart;\n\n /*\n * Step 1\n * This block lets a delete execution if the new value is compliant.\n * There are 2 deletion cases, after which the new value is not compliant\n * - dd/MX/yyyy: X is deleted, then the date becomes dd/M/yyyy\n * This case is resolved by step 2 and the date will become: dd/My/yyy\n * - dd/MMXyyyy: the last '/' is deleted, then the date becomes dd/MMyyyy\n * In this particular case, step 2 will automatically add the missing slash, so the date will remain dd/MM/yyyy\n * The issue is that the caret position will remain stuck where it was, so if the user keeps hitting the delete key, nothing will change at all. This is resolved in step 4 by moving the caret to the left\n */\n if (this.markForDelete) {\n const isCompliantAfterDeletion =\n [...this.el.nativeElement.value].findIndex((char, idx) => {\n let rule = this.onemrvamask[idx];\n\n if (rule === null || rule === undefined) return true;\n\n if (isNaN(char) && char.toLowerCase() === char.toUpperCase())\n return char !== rule;\n\n return !isAllowed(rule, char);\n }) < 0;\n\n if (isCompliantAfterDeletion) {\n this.markForDelete = false;\n return;\n }\n }\n\n // Step 2\n const compliantValue = [...this.el.nativeElement.value]\n .filter((char) => isAllowed('A', char)) // Necessary when several special char in a row\n .reduce((newValue, char) => {\n let idx = newValue.length;\n let rule = this.onemrvamask[idx];\n\n if (rule === null || rule === undefined) return newValue;\n\n newValue = !isAllowed(rule, char) ? newValue : newValue + char;\n\n // Add all trailing special characters\n let nextRule = this.onemrvamask[++idx];\n let i = 0;\n\n while (\n nextRule !== null &&\n nextRule !== undefined &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n i++;\n newValue += nextRule;\n nextRule = this.onemrvamask[++idx];\n\n if (i > 50) break;\n }\n\n return newValue;\n }, '');\n\n this.el.nativeElement.value = compliantValue;\n\n // Step 3 - Find the new cursor position. If the last new character is just before special character, move the caret after\n let idx = selectionStart;\n let nextRule = this.onemrvamask[idx];\n while (\n nextRule !== null &&\n nextRule !== undefined &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n idx++;\n nextRule = this.onemrvamask[idx];\n if (\n nextRule !== null &&\n nextRule &&\n ['0', 'A', 'S', 'U', 'L'].indexOf(nextRule) < 0\n ) {\n } else break;\n }\n\n // Step 4 - Update inputStack only when all characters are processed\n if (compliantValue !== this.inputStack[this.stackIdx]) {\n this.stackIdx++;\n\n let stack =\n this.stackIdx > UNDO_STACK_MAX_LENGTH - 1\n ? this.inputStack.slice(1)\n : this.inputStack.splice(0, this.stackIdx);\n this.stackIdx =\n this.stackIdx > UNDO_STACK_MAX_LENGTH - 1\n ? UNDO_STACK_MAX_LENGTH - 1\n : this.stackIdx;\n\n this.inputStack = [...stack, compliantValue];\n\n this.el.nativeElement.setSelectionRange(idx, idx);\n } else {\n if (this.markForDelete) {\n let i = idx - 1;\n /* Finds the last rule character before the special character.\n * e.g: (nnn)/nnnn\n * If the user tries to delete '/', the caret will move just before ')'\n */\n while (i > 0) {\n const previousRule = this.onemrvamask[i - 1];\n if (['0', 'A', 'S', 'U', 'L'].indexOf(previousRule) < 0) {\n i--;\n } else break;\n }\n this.el.nativeElement.setSelectionRange(i, i);\n }\n }\n this.markForDelete = false;\n }\n constructor(private el: ElementRef) {}\n}\n\nfunction isAllowed(rule: string, character: string) {\n switch (rule) {\n // Any digit\n case '0':\n if (character === ' ') return false;\n return !isNaN(+character);\n\n // A: letters (uppercase or lowercase) and digits\n case 'A':\n if (character === ' ') return false;\n return (\n !isNaN(+character) || character.toLowerCase() != character.toUpperCase()\n );\n\n // only letters (uppercase or lowercase)\n case 'S':\n return character.toLowerCase() != character.toUpperCase();\n\n // only uppercase letters\n case 'U':\n return (\n character.toLowerCase() != character.toUpperCase() &&\n character === character.toUpperCase()\n );\n\n // only lowercase letters\n case 'L':\n return (\n character.toLowerCase() != character.toUpperCase() &&\n character === character.toLowerCase()\n );\n }\n\n return false;\n}\n","import {Component, ElementRef, ViewChild} from '@angular/core';\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {Clipboard} from \"@angular/cdk/clipboard\";\n\n@Component({\n selector: 'lib-clipboard-icon',\n templateUrl: './clipboard-icon.component.html',\n styleUrls: ['./clipboard-icon.component.css'],\n standalone: true,\n imports: [\n MatIconModule,\n MatTooltipModule\n ]\n})\nexport class ClipboardIconComponent {\n constructor(\n public _elementRef : ElementRef,\n private clipboardService : Clipboard) {\n }\n\n}\n","<mat-icon [matTooltip]=\"'TEST'\">content_copy</mat-icon>\n","import {\n ChangeDetectorRef,\n ComponentFactoryResolver, ComponentRef,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Renderer2,\n ViewContainerRef\n} from '@angular/core';\nimport {Clipboard} from \"@angular/cdk/clipboard\";\nimport {ClipboardIconComponent} from \"../components/clipboard-icon/clipboard-icon.component\";\n\n/**\n * Conditionally adds component to the tree if screen width matches at least one size in input\n */\n@Directive({\n selector: 'span[clipboard]',\n host: {\n // '[style.padding]': '\"pointer\"',\n },\n\n})\nexport class OnemRvaClipboardDirective implements OnInit{\n\n private icon: ComponentRef<ClipboardIconComponent>;\n private iconEl: any;\n\n constructor(\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private factory: ComponentFactoryResolver,\n private vcRef: ViewContainerRef,\n private clipboardService : Clipboard) {\n\n const miFactory = this.factory.resolveComponentFactory(ClipboardIconComponent);\n this.icon = this.vcRef.createComponent(miFactory);\n this.iconEl = this.icon.injector.get(ClipboardIconComponent)._elementRef.nativeElement;\n\n }\n\n @HostBinding('class')\n class = \"\";\n\n @Input()\n clipboard: string = '';\n\n ngOnInit(): void {\n this.vcRef.clear();\n\n\n this.renderer.appendChild(this.elementRef.nativeElement, this.iconEl);\n }\n}\n","import { DigitOnlyDirective } from './digit-only.directive';\nimport { MatRowClickableDirective } from './mat-row-clickable.directive';\nimport { IfWidthIsDirective } from './if-width-is.directive';\nimport { OnemRvaColorDirective } from './color.directive';\nimport { OnemrvaMaskDirective } from './mask.directive';\nimport {OnemRvaClipboardDirective} from \"./clipboard.directive\";\n\nexport const directives: any[] = [\n DigitOnlyDirective,\n MatRowClickableDirective,\n OnemRvaClipboardDirective,\n IfWidthIsDirective,\n OnemRvaColorDirective,\n OnemrvaMaskDirective,\n];\n\nexport * from './digit-only.directive';\nexport * from './mat-row-clickable.directive';\nexport * from './if-width-is.directive';\nexport * from './color.directive';\nexport * from './mask.directive';\nexport * from './clipboard.directive';\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { directives } from './directives';\nimport {OnemrvaDatepickerSharedModule} from \"./shared.datepicker.module\";\n\n@NgModule({\n declarations: [...directives],\n imports: [CommonModule],\n exports: [...directives, CommonModule],\n})\nexport class OnemrvaSharedModule {}\n","import {Injectable} from \"@angular/core\";\nimport {NativeDateAdapter} from \"@angular/material/core\";\nimport * as moment from \"moment/moment\";\n\nexport const ONEMRVA_FORMAT = {\n parse: {\n dateInput: 'LL',\n },\n display: {\n dateInput: 'DD/MM/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n },\n};\n\n@Injectable()\nexport class OnemrvaDateAdapter extends NativeDateAdapter {\n override useUtcForDisplay = true;\n\n override format(date: Date): string {\n return moment(date).format('DD/MM/YYYY');\n }\n\n override parse(value: any): Date | null {\n if (value && typeof value === 'string') {\n //value = value.replace(/\\D/g,'');\n value = value.replace(/\\D/g, '/');\n }\n\n if (moment(value, 'DDMMYYYY', true).isValid()) {\n return moment(value, 'DDMMYYYY', true).toDate();\n }\n if (moment(value, 'DD/MM/YYYY', true).isValid()) {\n return moment(value, 'DD/MM/YYYY', true).toDate();\n }\n if (moment(value, 'D/M/YYYY', true).isValid()) {\n return moment(value, 'D/M/YYYY', true).toDate();\n }\n if (moment(value, 'DD/M/YYYY', true).isValid()) {\n return moment(value, 'DD/M/YYYY', true).toDate();\n }\n if (moment(value, 'D/MM/YYYY', true).isValid()) {\n return moment(value, 'D/MM/YYYY', true).toDate();\n }\n\n return this.invalid();\n }\n}\n","import {APP_INITIALIZER, NgModule} from '@angular/core';\nimport {\n DateAdapter,\n MAT_DATE_FORMATS,\n MAT_DATE_LOCALE,\n MatNativeDateModule\n} from \"@angular/material/core\";\nimport {TranslateModule, TranslateService} from \"@ngx-translate/core\";\nimport {MatMomentDateModule} from \"@angular/material-moment-adapter\";\nimport {Observable, of} from \"rxjs\";\nimport {ONEMRVA_FORMAT, OnemrvaDateAdapter} from \"./OnemrvaDateAdapter\";\nimport {MatDatepickerModule} from \"@angular/material/datepicker\";\n\nfunction translateDatepicker(\n translateService: TranslateService,\n adapter: DateAdapter<Date>\n): () => Observable<any> {\n return () => {\n // For some cosmic reason, return translateService.onLangChange().asObservable()) + pipe(tap()) does not work\n translateService.onLangChange.subscribe((event) => {\n adapter.setLocale(event.lang);\n });\n\n // But this works fine...\n return of('sin (a +- b) = sin a . cos b +- cos a . sin b');\n };\n}\n\n@NgModule({\n declarations: [],\n imports: [\n MatDatepickerModule,\n TranslateModule,\n MatNativeDateModule,\n MatMomentDateModule\n ],\n exports: [],\n providers: [\n {\n provide: MAT_DATE_LOCALE,\n useValue: 'fr',\n },\n {\n provide: DateAdapter,\n useClass: OnemrvaDateAdapter\n },\n {\n provide: MAT_DATE_FORMATS,\n useValue: ONEMRVA_FORMAT\n },\n {\n provide: APP_INITIALIZER,\n useFactory: translateDatepicker,\n deps: [TranslateService, DateAdapter<any>],\n multi: true,\n },\n ],\n})\nexport class OnemrvaDatepickerSharedModule {}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'onemrvaBce',\n standalone: true,\n})\nexport class OnemrvaBcePipe implements PipeTransform {\n transform(value: string): string {\n let strOut = value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (strOut.length !== 10) return '?01?.???.???';\n\n return `${strOut.substring(0, 4)}.${strOut.substring(\n 4,\n 7\n )}.${strOut.substring(7, 10)}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'onemrvaNiss',\n standalone: true,\n})\nexport class OnemrvaNissPipe implements PipeTransform {\n transform(value: string): string {\n let strOut = value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (strOut.length !== 11) return '??01??/???-??';\n\n return `${strOut.substring(0, 6)}/${strOut.substring(\n 6,\n 9\n )}-${strOut.substring(9, 11)}`;\n }\n}\n","import { ValidationErrors } from '@angular/forms';\nimport { AbstractControl, ValidatorFn } from '@angular/forms';\n\nexport class OnemrvaValidators {\n\n private static bceValidator(required = false, control: AbstractControl) {\n\n if (control.value === null || control.value.trim() === '') {\n return !required ? null : { bceNull: true };\n }\n\n let bceCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (bceCandidate.length !== 10)\n return { bceLengthError: { value: bceCandidate } };\n\n if (Number.isNaN(+bceCandidate))\n return { bceNan: { value: bceCandidate } };\n\n return null;\n }\n\n static bce(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n return this.bceValidator(required, control);\n };\n }\n\n private static nissValidator(required = false, control: AbstractControl) {\n if (control.value === null || control.value.trim() === '')\n return !required ? null : { nissNull: true };\n\n let nissCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (nissCandidate.length !== 11)\n return { nissLengthError: { value: nissCandidate } };\n\n if (Number.isNaN(+nissCandidate))\n return { nissNan: { value: nissCandidate } };\n\n const date = +nissCandidate.substring(4, 6);\n const month = +nissCandidate.substring(2, 4) - 1;\n const real_month = month%20;\n const currentYear = new Date().getFullYear() - 2000;\n let year = +nissCandidate.substring(0, 2);\n year = year > currentYear ? 1900 + year : 2000 + year;\n\n // Check month\n if (real_month > 11 || month > 51 ) return { nissInvalidMonth: { value: nissCandidate } };\n\n // Check date\n if (date > 31) return { nissInvalidDate: { value: nissCandidate } };\n\n // Check date consistency\n const d = new Date(year, real_month, date);\n if (d.getDate() !== date || d.getMonth() !== real_month)\n // This catches errors such as 32 Jan, which becomes 1 Feb inside the date object\n return { nissInconsistentDate: { value: nissCandidate } };\n\n // Check digit\n let nissStart =\n year < 2000\n ? +nissCandidate.substring(0, 9)\n : +('2' + nissCandidate.substring(0, 9));\n\n if (97 - (nissStart % 97) !== +nissCandidate.substring(9))\n return { nissCheckDigitError: { value: nissCandidate } };\n\n return null;\n }\n\n static niss(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n return this.nissValidator(required, control);\n };\n }\n\n static nissOrBce(required = false): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n\n if (control.value === null || control.value.trim() === '')\n return !required ? null : { nissNull: true };\n\n let nissCandidate = control.value.trim().replace(/\\/|\\.|\\-/g, '');\n\n if (control.value.length === 11) {\n return this.nissValidator(required, control);\n } else if (control.value.length === 10) {\n return this.bceValidator(required, control);\n }\n return { lengthError: { value: nissCandidate } };\n };\n }\n}\n","/*\n * Public API Surface of shared\n */\n\nexport * from './src/lib/shared.module';\nexport * from './src/lib/shared.datepicker.module';\nexport * from './src/lib/OnemrvaDateAdapter';\nexport * from './src/lib/directives';\nexport * from './src/lib/pipes';\nexport * from './src/lib/validators/onemrva-validators';\n\nexport const NISS_MASK = '000000/000-00';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.DigitOnlyDirective","i2.MatRowClickableDirective","i3.OnemRvaClipboardDirective","i4.IfWidthIsDirective","i5.OnemRvaColorDirective","i6.OnemrvaMaskDirective"],"mappings":"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"}
|