ghocomps 1.1.25 → 1.3.25
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.
- package/README.md +18 -14
- package/fesm2022/ghocomps.mjs +811 -0
- package/fesm2022/ghocomps.mjs.map +1 -0
- package/index.d.ts +125 -0
- package/package.json +15 -42
- package/.editorconfig +0 -17
- package/.vscode/extensions.json +0 -4
- package/.vscode/launch.json +0 -20
- package/.vscode/tasks.json +0 -42
- package/angular.json +0 -36
- package/projects/ghocomps/README.md +0 -63
- package/projects/ghocomps/ng-package.json +0 -7
- package/projects/ghocomps/package.json +0 -12
- package/projects/ghocomps/src/lib/date.ts +0 -298
- package/projects/ghocomps/src/lib/dropdown.ts +0 -189
- package/projects/ghocomps/src/lib/input.css +0 -160
- package/projects/ghocomps/src/lib/input.ts +0 -119
- package/projects/ghocomps/src/public-api.ts +0 -7
- package/projects/ghocomps/tsconfig.lib.json +0 -18
- package/projects/ghocomps/tsconfig.lib.prod.json +0 -11
- package/projects/ghocomps/tsconfig.spec.json +0 -15
- package/tsconfig.json +0 -45
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ghocomps.mjs","sources":["../../../projects/ghocomps/src/lib/dropdown.ts","../../../projects/ghocomps/src/lib/input.ts","../../../projects/ghocomps/src/lib/date.ts","../../../projects/ghocomps/src/public-api.ts","../../../projects/ghocomps/src/ghocomps.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input,\r\n NgZone, Output, SimpleChanges,\r\n OnChanges\r\n} from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'gho-dropdown',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [CommonModule, FormsModule],\r\n template: `\r\n<div style=\"height: 55px !important;\">\r\n <div style=\"height: 18px !important;\">\r\n @if(datavalid())\r\n {\r\n <div [ngStyle]=\"{ margin: '-3px 5px' }\" class=\"input-label\">{{label}}\r\n </div>\r\n }\r\n </div>\r\n <table>\r\n <tr>\r\n <td>\r\n <div (click)=\"toggleDropdown()\" [ngClass]=\"getclass()\">\r\n <span>{{selectedtxt}}</span>\r\n <i class=\"bi bi-caret-down-fill arrow-icon\" [class.rotate]=\"isOpen\"></i>\r\n </div>\r\n </td>\r\n @if(filter && datavalid() )\r\n {\r\n <td>\r\n <div (click)=\"clear()\" [ngClass]=\"getclearclass()\">\r\n <i class=\"bi bi-x-lg \"></i>\r\n </div>\r\n </td> } \r\n </tr>\r\n </table>\r\n</div>\r\n@if(isOpen){\r\n<div class=\"dropdown-menu show \">\r\n <div class=\"list-panel\">\r\n @for (dlitem of listdata; track dlitem) {\r\n <div class=\"list-item \" (click)=\"onSelectionChange(dlitem)\" [class.list-item-selected]=\"dlitem.value == sharedValue\">\r\n <table class=\"w100\">\r\n <tr>\r\n <td>\r\n {{ dlitem.label }}\r\n </td>\r\n @if(dlitem.value == sharedValue){\r\n <td class=\"right\" style=\"width:30px;\"> <i class=\"bi bi-check2\"></i> </td>}\r\n </tr>\r\n </table>\r\n </div>\r\n }\r\n </div>\r\n <table class=w100>\r\n <tr class=\"bt \">\r\n <td class=\"p10\" (click)=\"clear()\"><span matButton class=\"ghoddl-btn \"> Clear </span> </td>\r\n <td class=\"p10\" (click)=\"closeDropdown()\"><span matButton class=\"ghoddl-btn \"> Cancel </span> </td>\r\n </tr>\r\n </table>\r\n</div>\r\n}\r\n`,\r\n styleUrl: './input.css',\r\n})\r\nexport class GHOdropdown implements OnChanges {\r\n constructor(private el: ElementRef, private cdr: ChangeDetectorRef, private ngZone: NgZone) { }\r\n @Input() options: any[] = [];\r\n @Input() placeholder: string = 'Select an option';\r\n @Input() showclear: boolean = true;\r\n @Input() appearance: string = \"outline\"\r\n @Input() label: string = \"\";\r\n @Input() filter: boolean = true;\r\n listdata: { label: string; value: string }[] = [];\r\n isOpen = false;\r\n selectedtxt: string = \"\";\r\n\r\n @Input() sharedValue: string = '';\r\n @Output() sharedValueChange = new EventEmitter<string>();\r\n @Output() selectionchange = new EventEmitter<([])>();\r\n\r\n\r\n\r\n onModelChange(v: string): void {\r\n this.sharedValue = v;\r\n this.sharedValueChange.emit(v);\r\n this.setlabel();\r\n }\r\n setlabel() {\r\n if (this.listdata.length > 0) {\r\n for (let i: number = 0; i < this.listdata.length; i++) {\r\n\r\n if (this.sharedValue &&this.listdata[i].value.toString() == this.sharedValue.toString()) {\r\n this.selectedtxt = this.listdata[i].label\r\n break;\r\n }\r\n else {\r\n this.selectedtxt = this.label\r\n }\r\n }\r\n }\r\n else { this.selectedtxt = this.label }\r\n }\r\n\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['options']) {\r\n this.listdata = []; debugger;\r\n const allKeys = Array.from(\r\n new Set(this.options.flatMap(item => Object.keys(item)))\r\n );\r\n for (let i: number = 0; i < this.options.length; i++) {\r\n if (allKeys.length == 1) {\r\n this.listdata.push({ label: this.options[i][allKeys[0]], value: this.options[i][allKeys[0]] })\r\n }\r\n else {\r\n this.listdata.push({ label: this.options[i][allKeys[1]], value: this.options[i][allKeys[0]] })\r\n }\r\n }\r\n this.setlabel();\r\n }\r\n if (changes['sharedValue']) {\r\n this.setlabel();\r\n }\r\n }\r\n\r\n\r\n toggleDropdown(): void {\r\n this.isOpen = !this.isOpen;\r\n }\r\n\r\n clear() {\r\n this.onModelChange(\"\")\r\n this.isOpen = false;\r\n }\r\n\r\n closeDropdown(): void {\r\n this.isOpen = false;\r\n }\r\n\r\n onSelectionChange(v: any) {\r\n this.isOpen = false;\r\n this.onModelChange(v.value);\r\n this.selectionchange.emit(v);\r\n }\r\n\r\n datavalid() {\r\n if (this.label != this.selectedtxt) { return true }\r\n if (this.label == this.selectedtxt) { return false }\r\n return false;\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onOutsideClick(event: Event): void {\r\n if (!this.el.nativeElement.contains(event.target)) {\r\n this.isOpen = false;\r\n }\r\n }\r\n\r\n\r\n getclearclass() {\r\n if (this.appearance == \"outline\") {\r\n if (this.datavalid() && this.showclear) { return \"input-outline-filter-img\"; }\r\n }\r\n else { return \"input-mat-img \"; }\r\n return \"input-mat\";\r\n }\r\n getclass() {\r\n if (this.appearance == \"outline\") {\r\n let css = \" d-flex gap-3\"\r\n if (!this.filter) { css = \"input-outline\" }\r\n\r\n if (this.filter) { if (!this.datavalid()) { css = \"input-outline\" } }\r\n\r\n if (this.filter) { if (this.datavalid()) { css = \"input-outline-filter \" } }\r\n\r\n if (!this.showclear) { css = \"input-outline\" }\r\n\r\n return css + \" input d-flex gap-3 \"\r\n }\r\n else {\r\n return \"input-mat d-flex gap-3 \"\r\n }\r\n }\r\n\r\n}","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, model, ElementRef, EventEmitter, Input, OnInit, Output, SimpleChanges }\r\n from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'gho-input',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, ],\r\n template: `<div style=\"height: 55px !important;\">\r\n <div style=\"height: 18px !important;\">\r\n @if(datavalid())\r\n {\r\n <div [ngStyle]=\"{ margin: '-2px 5px' }\" class=\"input-label\">{{label}}\r\n </div>\r\n }\r\n\r\n </div>\r\n <div >\r\n <table>\r\n <tr>\r\n <td> <input type=\"text\" [placeholder]=\"placeholder\" [ngModel]=\"sharedValue\" (input)=\"onInput($event)\"\r\n [ngClass]=\"getclass()\"></td>\r\n @if(filter && datavalid() )\r\n {\r\n <td>\r\n <div (click)=\"clear()\" [ngClass]=\"getclearclass()\">\r\n <i class=\"bi bi-x-lg \"></i>\r\n </div>\r\n </td> }\r\n </tr>\r\n </table>\r\n </div>\r\n</div>`,\r\n styleUrl: './input.css',\r\n providers: [DatePipe],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class GHOInput implements OnInit {\r\n constructor(private el: ElementRef, private cdr: ChangeDetectorRef, private datePipe: DatePipe) { }\r\n @Input() list: [] = [];\r\n @Input() label: string = \"\";\r\n @Input() appearance: string = \"outline\"\r\n @Input() filter: boolean = false;\r\n @Input() showclear: boolean = false;\r\n placeholder: string = \"\";\r\n @Input() sharedValue: string = '';\r\n @Output() sharedValueChange = new EventEmitter<string>();\r\n\r\n\r\n onInput(event: Event): void {\r\n this.sharedValue = (event.target as HTMLInputElement).value\r\n this.sharedValueChange.emit(this.sharedValue);\r\n this.setlabel();\r\n }\r\n\r\n clear()\r\n {\r\n this.sharedValue = \"\"\r\n this.sharedValueChange.emit(this.sharedValue);\r\n this.setlabel();\r\n }\r\n\r\n setlabel() {\r\n if (this.sharedValue.length > 0) {\r\n this.placeholder = \"\"\r\n }\r\n else { this.placeholder = this.label }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['sharedValue']) {\r\n this.setlabel();\r\n }\r\n }\r\n\r\n getclass() {\r\n if (this.appearance == \"outline\") {\r\n let css = \" d-flex gap-3\"\r\n if (!this.filter) { css = \"input-outline\" }\r\n\r\n if (this.filter) { if (!this.datavalid()) { css = \"input-outline\" } }\r\n\r\n if (this.filter) { if (this.datavalid() && this.showclear) { css = \"input-outline-filter input-filter\" } }\r\n\r\n if (this.filter) { if (this.datavalid() && !this.showclear) { css = \"input-outline input-filter \" } }\r\n\r\n\r\n if (!this.showclear) { css = \"input-outline\" }\r\n\r\n return css + \" input\"\r\n }\r\n else {\r\n return \"input-mat d-flex gap-3 \"\r\n }\r\n }\r\n \r\n getclearclass() {\r\n if (this.appearance == \"outline\") {\r\n if (this.datavalid() && this.showclear) { return \"input-outline-filter-img\"; }\r\n }\r\n else { return \"input-mat-img \"; }\r\n return \"input-mat\";\r\n }\r\n\r\n datavalid() {\r\n if (this.placeholder==this.label) {\r\n return false;\r\n }\r\n else { return true; }\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, HostListener,\r\n Input, OnInit, SimpleChanges\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { GHOdropdown } from \"./dropdown\";\r\nimport { MatCardModule } from \"@angular/material/card\";\r\nimport { MatCalendar } from \"@angular/material/datepicker\";\r\nimport { provideNativeDateAdapter } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'gho-date',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, GHOdropdown, MatCalendar, MatDatepickerModule,\r\n MatCardModule, DatePipe],\r\n template:`\r\n <div style=\"height: 55px !important;\">\r\n <div style=\"height: 18px !important;\">\r\n @if(datavalid())\r\n {\r\n <div [ngStyle]=\"{ margin: '-3px 5px' }\" class=\"input-label\">{{label}}\r\n </div>\r\n }\r\n </div>\r\n <table>\r\n <tr>\r\n <td>\r\n <div (click)=\"toggleDropdown()\" [ngClass]=\"getclass()\">\r\n <span>{{ gettxt()}}</span>\r\n <i class=\"bi bi-caret-down-fill arrow-icon\" [class.rotate]=\"isOpen\"></i>\r\n </div>\r\n </td>\r\n @if(filter && datavalid() )\r\n {\r\n <td>\r\n <div (click)=\"clear()\" [ngClass]=\"getclearclass()\">\r\n <i class=\"bi bi-x-lg \"></i>\r\n </div>\r\n </td> }\r\n\r\n\r\n </tr>\r\n </table>\r\n </div>\r\n @if(isOpen){\r\n <div class=\"dropdown-menu show\">\r\n <table>\r\n <tr class=\"bb\">\r\n <td class=\"pl10\">\r\n <gho-dropdown [options]=\"months\" [(sharedValue)]=\"m\" (selectionchange)=\"onmodelchange($event,'m')\" [filter]=false\r\n label=\"Month\"></gho-dropdown>\r\n </td>\r\n <td class=\"\">\r\n <gho-dropdown [options]=\"days\" [(sharedValue)]=\"d\" (selectionchange)=\"onmodelchange($event,'d')\" [filter]=false\r\n label=\"Day\"></gho-dropdown>\r\n </td>\r\n <td class=\"pr10\">\r\n <gho-dropdown [options]=\"years\" [(sharedValue)]=\"y\" (selectionchange)=\"onmodelchange($event,'y')\" [filter]=false\r\n label=\"Year\"></gho-dropdown>\r\n\r\n </td>\r\n \r\n <td class=\"pr10 pointer\" style=\"width: 30px; padding-top: 10px;\">\r\n <div (click)=\"isOpen=false\" >\r\n <i class=\"bi bi-check2 bold\"></i>\r\n </div>\r\n </td>\r\n </tr>\r\n\r\n <tr>\r\n <td colspan=\"5\">\r\n <mat-calendar (selectedChange)=\"onDateChangeFromCalender($event)\">\r\n </mat-calendar>\r\n </td>\r\n </tr>\r\n\r\n </table>\r\n\r\n </div>\r\n }\r\n `,\r\n styleUrl: './input.css',\r\n providers: [provideNativeDateAdapter(), DatePipe,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => GHODate),\r\n multi: true\r\n }],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class GHODate implements ControlValueAccessor, OnInit {\r\n constructor(private el: ElementRef, private cdr: ChangeDetectorRef,\r\n private datePipe: DatePipe) { }\r\n @Input() options: any[] = [];\r\n @Input() placeholder: string = 'Select an option';\r\n @Input() showclear: boolean = true;\r\n @Input() appearance: string = \"outline\"\r\n @Input() label: string = \"\";\r\n @Input() filter: boolean = true;\r\n public value: string = \"\";\r\n public disabled: boolean = false;\r\n listdata: { label: string; value: string }[] = [];\r\n isOpen = false;\r\n selectedtxt: string = \"\";\r\n days: { value: string }[] = []\r\n years: { value: string }[] = [];\r\n months: { value: string, name: string }[] = [];\r\n currentYear: number = new Date().getFullYear();\r\n d: any;\r\n m: any;\r\n y: any;\r\n\r\n\r\n // Writes a new value to the element\r\n writeValue(value: any): void {\r\n this.value = value;\r\n if (this.value !== undefined && this.value !== null) {\r\n const date = new Date(value);\r\n if (!date) {\r\n this.d = null;\r\n this.m = null;\r\n this.y = null;\r\n }\r\n else {\r\n const formatted = this.datePipe.transform(date, 'MM/dd/yyyy');\r\n if (formatted !== undefined && formatted !== null) {\r\n const [month, day, year] = formatted.split('/').map(Number);\r\n this.m = month,\r\n this.y = year;\r\n this.d = day\r\n }\r\n }\r\n }\r\n }\r\n\r\n onmodelchange(e: any, t: any) {\r\n if (t == \"d\") { this.d = e.value }\r\n if (t == \"m\") { this.m = e.value }\r\n if (t == \"y\") { this.y = e.value }\r\n this.setdt();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.populateYears();\r\n this.populateMonths();\r\n this.populateDays(31);\r\n }\r\n\r\n\r\n setdt() {\r\n if (this.d == 0 || this.m == 0 || this.y == 0) { this.value = \"\" }\r\n else {\r\n this.value = this.m + \" - \" + this.d + \" - \" + this.y\r\n }\r\n this.onChange(this.value);\r\n this.onTouched();\r\n }\r\n\r\n onDateChangeFromCalender(date: Date | null) {\r\n if (!date) return;\r\n const formatted = this.datePipe.transform(date, 'MM/dd/yyyy');\r\n if (formatted !== undefined && formatted !== null) {\r\n const [month, day, year] = formatted.split('/').map(Number);\r\n this.m = month,\r\n this.y = year;\r\n this.d = day\r\n }\r\n this.setdt()\r\n this.isOpen = false;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n populateMonths() {\r\n this.months = [\r\n { value: \"1\", name: 'January' },\r\n { value: \"2\", name: 'February' },\r\n { value: \"3\", name: 'March' },\r\n { value: \"4\", name: 'April' },\r\n { value: \"5\", name: 'May' },\r\n { value: \"6\", name: 'June' },\r\n { value: \"7\", name: 'July' },\r\n { value: \"8\", name: 'August' },\r\n { value: \"9\", name: 'September' },\r\n { value: \"10\", name: 'October' },\r\n { value: \"11\", name: 'November' },\r\n { value: \"12\", name: 'December' }\r\n ];\r\n }\r\n populateYears(start = (this.currentYear - 95), end = 1 + new Date().getFullYear()) {\r\n for (let year = end; year >= start; year--) {\r\n this.years.push({ value: year.toString() });\r\n }\r\n }\r\n\r\n populateDays(start = 1, end = 31) {\r\n for (let i: number = 1; i < 32; i++) {\r\n this.days.push({ value: i.toString() });\r\n }\r\n }\r\n\r\n gettxt() {\r\n if (this.datavalid()) { return this.value }\r\n else { return this.label }\r\n }\r\n\r\n toggleDropdown(): void {\r\n this.isOpen = !this.isOpen;\r\n }\r\n\r\n clear() {\r\n this.value = \"\";\r\n this.onChange(this.value);\r\n this.onTouched();\r\n }\r\n\r\n closeDropdown(): void {\r\n this.isOpen = false;\r\n }\r\n\r\n datavalid() {\r\n if (this.value === undefined || this.value == null || this.value == \"\" || this.value == \"0\") {\r\n return false;\r\n }\r\n else { return true; }\r\n }\r\n\r\n\r\n // Functions to call when the value changes or the control is touched\r\n onChange: any = () => { };\r\n onTouched: any = () => { };\r\n\r\n // Registers a callback function that is called when the control's value changes in the UI\r\n registerOnChange(fn: any): void {\r\n this.isOpen = false;\r\n this.onChange = fn;\r\n }\r\n\r\n // Registers a callback function that is called whenever the control receives a touch event\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n\r\n\r\n // Sets the disabled state of the control\r\n setDisabledState?(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n\r\n onSelectionChange(v: any) {\r\n this.isOpen = false;\r\n this.selectedtxt = v.label;\r\n const newValue = v.value;\r\n this.value = newValue;\r\n this.onChange(newValue); // Notify Angular forms about the change\r\n this.onTouched(); // Mark the control as touched\r\n }\r\n\r\n\r\n\r\n @HostListener('document:click', ['$event'])\r\n onOutsideClick(event: Event): void {\r\n if (!this.el.nativeElement.contains(event.target)) {\r\n this.isOpen = false;\r\n }\r\n }\r\n\r\n\r\n getclearclass() {\r\n if (this.appearance == \"outline\") {\r\n if (this.datavalid() && this.showclear) { return \"input-outline-filter-img\"; }\r\n }\r\n else { return \"input-mat-img \"; }\r\n return \"input-mat\";\r\n }\r\n getclass() {\r\n if (this.appearance == \"outline\") {\r\n let css = \" d-flex gap-3\"\r\n if (!this.filter) { css = \"input-outline\" }\r\n\r\n if (this.filter) { if (!this.datavalid()) { css = \"input-outline\" } }\r\n\r\n if (this.filter) { if (this.datavalid()) { css = \"input-outline-filter \" } }\r\n\r\n if (!this.showclear) { css = \"input-outline\" }\r\n\r\n return css + \" input d-flex gap-3 \"\r\n }\r\n else {\r\n return \"input-mat d-flex gap-3 \"\r\n }\r\n }\r\n\r\n}","/*\r\n * Public API Surface of ghocomps\r\n */\r\n\r\nexport * from './lib/dropdown';\r\nexport * from './lib/input';\r\nexport * from './lib/date';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { OnChanges, ElementRef, ChangeDetectorRef, NgZone, EventEmitter, SimpleChanges, OnInit } from '@angular/core';
|
|
3
|
+
import { DatePipe } from '@angular/common';
|
|
4
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
5
|
+
|
|
6
|
+
declare class GHOdropdown implements OnChanges {
|
|
7
|
+
private el;
|
|
8
|
+
private cdr;
|
|
9
|
+
private ngZone;
|
|
10
|
+
constructor(el: ElementRef, cdr: ChangeDetectorRef, ngZone: NgZone);
|
|
11
|
+
options: any[];
|
|
12
|
+
placeholder: string;
|
|
13
|
+
showclear: boolean;
|
|
14
|
+
appearance: string;
|
|
15
|
+
label: string;
|
|
16
|
+
filter: boolean;
|
|
17
|
+
listdata: {
|
|
18
|
+
label: string;
|
|
19
|
+
value: string;
|
|
20
|
+
}[];
|
|
21
|
+
isOpen: boolean;
|
|
22
|
+
selectedtxt: string;
|
|
23
|
+
sharedValue: string;
|
|
24
|
+
sharedValueChange: EventEmitter<string>;
|
|
25
|
+
selectionchange: EventEmitter<[]>;
|
|
26
|
+
onModelChange(v: string): void;
|
|
27
|
+
setlabel(): void;
|
|
28
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
29
|
+
toggleDropdown(): void;
|
|
30
|
+
clear(): void;
|
|
31
|
+
closeDropdown(): void;
|
|
32
|
+
onSelectionChange(v: any): void;
|
|
33
|
+
datavalid(): boolean;
|
|
34
|
+
onOutsideClick(event: Event): void;
|
|
35
|
+
getclearclass(): "input-outline-filter-img" | "input-mat-img " | "input-mat";
|
|
36
|
+
getclass(): string;
|
|
37
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GHOdropdown, never>;
|
|
38
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GHOdropdown, "gho-dropdown", never, { "options": { "alias": "options"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "showclear": { "alias": "showclear"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "label": { "alias": "label"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "sharedValue": { "alias": "sharedValue"; "required": false; }; }, { "sharedValueChange": "sharedValueChange"; "selectionchange": "selectionchange"; }, never, never, true, never>;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
declare class GHOInput implements OnInit {
|
|
42
|
+
private el;
|
|
43
|
+
private cdr;
|
|
44
|
+
private datePipe;
|
|
45
|
+
constructor(el: ElementRef, cdr: ChangeDetectorRef, datePipe: DatePipe);
|
|
46
|
+
list: [];
|
|
47
|
+
label: string;
|
|
48
|
+
appearance: string;
|
|
49
|
+
filter: boolean;
|
|
50
|
+
showclear: boolean;
|
|
51
|
+
placeholder: string;
|
|
52
|
+
sharedValue: string;
|
|
53
|
+
sharedValueChange: EventEmitter<string>;
|
|
54
|
+
onInput(event: Event): void;
|
|
55
|
+
clear(): void;
|
|
56
|
+
setlabel(): void;
|
|
57
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
58
|
+
getclass(): string;
|
|
59
|
+
getclearclass(): "input-outline-filter-img" | "input-mat-img " | "input-mat";
|
|
60
|
+
datavalid(): boolean;
|
|
61
|
+
ngOnInit(): void;
|
|
62
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GHOInput, never>;
|
|
63
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GHOInput, "gho-input", never, { "list": { "alias": "list"; "required": false; }; "label": { "alias": "label"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "showclear": { "alias": "showclear"; "required": false; }; "sharedValue": { "alias": "sharedValue"; "required": false; }; }, { "sharedValueChange": "sharedValueChange"; }, never, never, true, never>;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
declare class GHODate implements ControlValueAccessor, OnInit {
|
|
67
|
+
private el;
|
|
68
|
+
private cdr;
|
|
69
|
+
private datePipe;
|
|
70
|
+
constructor(el: ElementRef, cdr: ChangeDetectorRef, datePipe: DatePipe);
|
|
71
|
+
options: any[];
|
|
72
|
+
placeholder: string;
|
|
73
|
+
showclear: boolean;
|
|
74
|
+
appearance: string;
|
|
75
|
+
label: string;
|
|
76
|
+
filter: boolean;
|
|
77
|
+
value: string;
|
|
78
|
+
disabled: boolean;
|
|
79
|
+
listdata: {
|
|
80
|
+
label: string;
|
|
81
|
+
value: string;
|
|
82
|
+
}[];
|
|
83
|
+
isOpen: boolean;
|
|
84
|
+
selectedtxt: string;
|
|
85
|
+
days: {
|
|
86
|
+
value: string;
|
|
87
|
+
}[];
|
|
88
|
+
years: {
|
|
89
|
+
value: string;
|
|
90
|
+
}[];
|
|
91
|
+
months: {
|
|
92
|
+
value: string;
|
|
93
|
+
name: string;
|
|
94
|
+
}[];
|
|
95
|
+
currentYear: number;
|
|
96
|
+
d: any;
|
|
97
|
+
m: any;
|
|
98
|
+
y: any;
|
|
99
|
+
writeValue(value: any): void;
|
|
100
|
+
onmodelchange(e: any, t: any): void;
|
|
101
|
+
ngOnInit(): void;
|
|
102
|
+
setdt(): void;
|
|
103
|
+
onDateChangeFromCalender(date: Date | null): void;
|
|
104
|
+
populateMonths(): void;
|
|
105
|
+
populateYears(start?: number, end?: number): void;
|
|
106
|
+
populateDays(start?: number, end?: number): void;
|
|
107
|
+
gettxt(): string;
|
|
108
|
+
toggleDropdown(): void;
|
|
109
|
+
clear(): void;
|
|
110
|
+
closeDropdown(): void;
|
|
111
|
+
datavalid(): boolean;
|
|
112
|
+
onChange: any;
|
|
113
|
+
onTouched: any;
|
|
114
|
+
registerOnChange(fn: any): void;
|
|
115
|
+
registerOnTouched(fn: any): void;
|
|
116
|
+
setDisabledState?(isDisabled: boolean): void;
|
|
117
|
+
onSelectionChange(v: any): void;
|
|
118
|
+
onOutsideClick(event: Event): void;
|
|
119
|
+
getclearclass(): "input-outline-filter-img" | "input-mat-img " | "input-mat";
|
|
120
|
+
getclass(): string;
|
|
121
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GHODate, never>;
|
|
122
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GHODate, "gho-date", never, { "options": { "alias": "options"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "showclear": { "alias": "showclear"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "label": { "alias": "label"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; }, {}, never, never, true, never>;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export { GHODate, GHOInput, GHOdropdown };
|
package/package.json
CHANGED
|
@@ -1,50 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ghocomps",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"build": "ng build",
|
|
8
|
-
"watch": "ng build --watch --configuration development",
|
|
9
|
-
"test": "ng test"
|
|
10
|
-
},
|
|
11
|
-
"prettier": {
|
|
12
|
-
"printWidth": 100,
|
|
13
|
-
"singleQuote": true,
|
|
14
|
-
"overrides": [
|
|
15
|
-
{
|
|
16
|
-
"files": "*.html",
|
|
17
|
-
"options": {
|
|
18
|
-
"parser": "angular"
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
]
|
|
3
|
+
"version": "1.3.25",
|
|
4
|
+
"peerDependencies": {
|
|
5
|
+
"@angular/common": "^20.3.0",
|
|
6
|
+
"@angular/core": "^20.3.0"
|
|
22
7
|
},
|
|
23
|
-
"private": false,
|
|
24
8
|
"dependencies": {
|
|
25
|
-
"@angular/cdk": "^20.2.14",
|
|
26
|
-
"@angular/common": "^20.3.0",
|
|
27
|
-
"@angular/compiler": "^20.3.0",
|
|
28
|
-
"@angular/core": "^20.3.0",
|
|
29
|
-
"@angular/forms": "^20.3.0",
|
|
30
|
-
"@angular/material": "^20.2.14",
|
|
31
|
-
"@angular/platform-browser": "^20.3.0",
|
|
32
|
-
"@angular/router": "^20.3.0",
|
|
33
|
-
"rxjs": "~7.8.0",
|
|
34
9
|
"tslib": "^2.3.0"
|
|
35
10
|
},
|
|
36
|
-
"
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
"ng-packagr": "^20.3.0",
|
|
48
|
-
"typescript": "~5.9.2"
|
|
11
|
+
"sideEffects": false,
|
|
12
|
+
"module": "fesm2022/ghocomps.mjs",
|
|
13
|
+
"typings": "index.d.ts",
|
|
14
|
+
"exports": {
|
|
15
|
+
"./package.json": {
|
|
16
|
+
"default": "./package.json"
|
|
17
|
+
},
|
|
18
|
+
".": {
|
|
19
|
+
"types": "./index.d.ts",
|
|
20
|
+
"default": "./fesm2022/ghocomps.mjs"
|
|
21
|
+
}
|
|
49
22
|
}
|
|
50
23
|
}
|
package/.editorconfig
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Editor configuration, see https://editorconfig.org
|
|
2
|
-
root = true
|
|
3
|
-
|
|
4
|
-
[*]
|
|
5
|
-
charset = utf-8
|
|
6
|
-
indent_style = space
|
|
7
|
-
indent_size = 2
|
|
8
|
-
insert_final_newline = true
|
|
9
|
-
trim_trailing_whitespace = true
|
|
10
|
-
|
|
11
|
-
[*.ts]
|
|
12
|
-
quote_type = single
|
|
13
|
-
ij_typescript_use_double_quotes = false
|
|
14
|
-
|
|
15
|
-
[*.md]
|
|
16
|
-
max_line_length = off
|
|
17
|
-
trim_trailing_whitespace = false
|
package/.vscode/extensions.json
DELETED
package/.vscode/launch.json
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
|
3
|
-
"version": "0.2.0",
|
|
4
|
-
"configurations": [
|
|
5
|
-
{
|
|
6
|
-
"name": "ng serve",
|
|
7
|
-
"type": "chrome",
|
|
8
|
-
"request": "launch",
|
|
9
|
-
"preLaunchTask": "npm: start",
|
|
10
|
-
"url": "http://localhost:4200/"
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
"name": "ng test",
|
|
14
|
-
"type": "chrome",
|
|
15
|
-
"request": "launch",
|
|
16
|
-
"preLaunchTask": "npm: test",
|
|
17
|
-
"url": "http://localhost:9876/debug.html"
|
|
18
|
-
}
|
|
19
|
-
]
|
|
20
|
-
}
|
package/.vscode/tasks.json
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
|
|
3
|
-
"version": "2.0.0",
|
|
4
|
-
"tasks": [
|
|
5
|
-
{
|
|
6
|
-
"type": "npm",
|
|
7
|
-
"script": "start",
|
|
8
|
-
"isBackground": true,
|
|
9
|
-
"problemMatcher": {
|
|
10
|
-
"owner": "typescript",
|
|
11
|
-
"pattern": "$tsc",
|
|
12
|
-
"background": {
|
|
13
|
-
"activeOnStart": true,
|
|
14
|
-
"beginsPattern": {
|
|
15
|
-
"regexp": "(.*?)"
|
|
16
|
-
},
|
|
17
|
-
"endsPattern": {
|
|
18
|
-
"regexp": "bundle generation complete"
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "npm",
|
|
25
|
-
"script": "test",
|
|
26
|
-
"isBackground": true,
|
|
27
|
-
"problemMatcher": {
|
|
28
|
-
"owner": "typescript",
|
|
29
|
-
"pattern": "$tsc",
|
|
30
|
-
"background": {
|
|
31
|
-
"activeOnStart": true,
|
|
32
|
-
"beginsPattern": {
|
|
33
|
-
"regexp": "(.*?)"
|
|
34
|
-
},
|
|
35
|
-
"endsPattern": {
|
|
36
|
-
"regexp": "bundle generation complete"
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
]
|
|
42
|
-
}
|
package/angular.json
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
|
3
|
-
"version": 1,
|
|
4
|
-
"newProjectRoot": "projects",
|
|
5
|
-
"projects": {
|
|
6
|
-
"GHOComps": {
|
|
7
|
-
"projectType": "library",
|
|
8
|
-
"root": "projects/ghocomps",
|
|
9
|
-
"sourceRoot": "projects/ghocomps/src",
|
|
10
|
-
"prefix": "lib",
|
|
11
|
-
"architect": {
|
|
12
|
-
"build": {
|
|
13
|
-
"builder": "@angular/build:ng-packagr",
|
|
14
|
-
"configurations": {
|
|
15
|
-
"production": {
|
|
16
|
-
"tsConfig": "projects/ghocomps/tsconfig.lib.prod.json"
|
|
17
|
-
},
|
|
18
|
-
"development": {
|
|
19
|
-
"tsConfig": "projects/ghocomps/tsconfig.lib.json"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
"defaultConfiguration": "production"
|
|
23
|
-
},
|
|
24
|
-
"test": {
|
|
25
|
-
"builder": "@angular/build:karma",
|
|
26
|
-
"options": {
|
|
27
|
-
"tsConfig": "projects/ghocomps/tsconfig.spec.json"
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
"cli": {
|
|
34
|
-
"analytics": false
|
|
35
|
-
}
|
|
36
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# GHOComps
|
|
2
|
-
|
|
3
|
-
This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
ng generate component component-name
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
ng generate --help
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Building
|
|
20
|
-
|
|
21
|
-
To build the library, run:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
ng build GHOComps
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
This command will compile your project, and the build artifacts will be placed in the `dist/` directory.
|
|
28
|
-
|
|
29
|
-
### Publishing the Library
|
|
30
|
-
|
|
31
|
-
Once the project is built, you can publish your library by following these steps:
|
|
32
|
-
|
|
33
|
-
1. Navigate to the `dist` directory:
|
|
34
|
-
```bash
|
|
35
|
-
cd dist/ghocomps
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
2. Run the `npm publish` command to publish your library to the npm registry:
|
|
39
|
-
```bash
|
|
40
|
-
npm publish
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Running unit tests
|
|
44
|
-
|
|
45
|
-
To execute unit tests with the [Karma](https://karma-runner.github.io) test runner, use the following command:
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
ng test
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Running end-to-end tests
|
|
52
|
-
|
|
53
|
-
For end-to-end (e2e) testing, run:
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
ng e2e
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.
|
|
60
|
-
|
|
61
|
-
## Additional Resources
|
|
62
|
-
|
|
63
|
-
For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
|