angular-dumb-lib 0.0.2 → 0.0.5

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 (89) hide show
  1. package/ng-package.json +7 -0
  2. package/package.json +3 -16
  3. package/src/lib/angular-dumb-lib.component.spec.ts +21 -0
  4. package/src/lib/angular-dumb-lib.component.ts +15 -0
  5. package/src/lib/angular-dumb-lib.module.ts +19 -0
  6. package/src/lib/angular-dumb-lib.service.spec.ts +16 -0
  7. package/src/lib/angular-dumb-lib.service.ts +9 -0
  8. package/src/lib/components/atoms/button/button.component.html +15 -0
  9. package/src/lib/components/atoms/button/button.component.scss +76 -0
  10. package/src/lib/components/atoms/button/button.component.ts +33 -0
  11. package/src/lib/components/atoms/datetime-picker/datetime-picker.component.html +7 -0
  12. package/src/lib/components/atoms/datetime-picker/datetime-picker.component.scss +24 -0
  13. package/src/lib/components/atoms/datetime-picker/datetime-picker.component.ts +59 -0
  14. package/src/lib/components/atoms/file-selection/file-selection.component.html +24 -0
  15. package/src/lib/components/atoms/file-selection/file-selection.component.scss +35 -0
  16. package/src/lib/components/atoms/file-selection/file-selection.component.ts +86 -0
  17. package/src/lib/components/atoms/input/input.component.html +28 -0
  18. package/src/lib/components/atoms/input/input.component.scss +64 -0
  19. package/src/lib/components/atoms/input/input.component.ts +57 -0
  20. package/src/lib/components/atoms/loading/loading.component.html +3 -0
  21. package/src/lib/components/atoms/loading/loading.component.scss +36 -0
  22. package/src/lib/components/atoms/loading/loading.component.ts +21 -0
  23. package/src/lib/components/atoms/selection/selection.component.html +38 -0
  24. package/src/lib/components/atoms/selection/selection.component.scss +65 -0
  25. package/src/lib/components/atoms/selection/selection.component.ts +84 -0
  26. package/src/lib/components/atoms/slider/slider.component.html +14 -0
  27. package/src/lib/components/atoms/slider/slider.component.scss +50 -0
  28. package/src/lib/components/atoms/slider/slider.component.ts +37 -0
  29. package/src/lib/components/atoms/tags/tags.component.html +25 -0
  30. package/src/lib/components/atoms/tags/tags.component.scss +58 -0
  31. package/src/lib/components/atoms/tags/tags.component.ts +62 -0
  32. package/src/lib/components/molecules/cards/cards.component.html +12 -0
  33. package/src/lib/components/molecules/cards/cards.component.scss +14 -0
  34. package/src/lib/components/molecules/cards/cards.component.ts +19 -0
  35. package/src/lib/components/molecules/content-design/content-design.component.html +14 -0
  36. package/src/lib/components/molecules/content-design/content-design.component.scss +68 -0
  37. package/src/lib/components/molecules/content-design/content-design.component.ts +32 -0
  38. package/src/lib/components/molecules/form/form.component.html +22 -0
  39. package/src/lib/components/molecules/form/form.component.scss +17 -0
  40. package/src/lib/components/molecules/form/form.component.ts +64 -0
  41. package/src/lib/components/molecules/modal/modal.component.html +16 -0
  42. package/src/lib/components/molecules/modal/modal.component.scss +83 -0
  43. package/src/lib/components/molecules/modal/modal.component.ts +48 -0
  44. package/src/lib/components/molecules/paginator/paginator.component.html +25 -0
  45. package/src/lib/components/molecules/paginator/paginator.component.scss +27 -0
  46. package/src/lib/components/molecules/paginator/paginator.component.ts +126 -0
  47. package/src/lib/components/molecules/table/table.component.html +45 -0
  48. package/src/lib/components/molecules/table/table.component.scss +169 -0
  49. package/src/lib/components/molecules/table/table.component.ts +40 -0
  50. package/src/lib/components/pages/footer/footer.component.html +32 -0
  51. package/src/lib/components/pages/footer/footer.component.scss +69 -0
  52. package/src/lib/components/pages/footer/footer.component.ts +16 -0
  53. package/src/lib/components/pages/login/login.component.html +10 -0
  54. package/src/lib/components/pages/login/login.component.scss +32 -0
  55. package/src/lib/components/pages/login/login.component.ts +32 -0
  56. package/src/lib/components/pages/menu/menu.component.html +18 -0
  57. package/src/lib/components/pages/menu/menu.component.scss +87 -0
  58. package/src/lib/components/pages/menu/menu.component.ts +26 -0
  59. package/src/lib/components/pages/version/version.component.html +3 -0
  60. package/src/lib/components/pages/version/version.component.scss +0 -0
  61. package/src/lib/components/pages/version/version.component.ts +28 -0
  62. package/src/lib/shared/constants/constant.ts +7 -0
  63. package/src/lib/shared/enums/enum.ts +68 -0
  64. package/src/lib/shared/interfaces/interface.ts +64 -0
  65. package/{public-api.d.ts → src/public-api.ts} +5 -1
  66. package/tsconfig.lib.json +14 -0
  67. package/tsconfig.lib.prod.json +10 -0
  68. package/tsconfig.spec.json +14 -0
  69. package/esm2022/angular-dumb-lib.mjs +0 -5
  70. package/esm2022/lib/angular-dumb-lib.component.mjs +0 -20
  71. package/esm2022/lib/angular-dumb-lib.module.mjs +0 -32
  72. package/esm2022/lib/angular-dumb-lib.service.mjs +0 -15
  73. package/esm2022/lib/components/atoms/button/button.component.mjs +0 -34
  74. package/esm2022/lib/components/atoms/input/input.component.mjs +0 -57
  75. package/esm2022/lib/components/molecules/content-design/content-design.component.mjs +0 -32
  76. package/esm2022/lib/shared/enums/enum.mjs +0 -69
  77. package/esm2022/lib/shared/interfaces/interface.mjs +0 -2
  78. package/esm2022/public-api.mjs +0 -10
  79. package/fesm2022/angular-dumb-lib.mjs +0 -243
  80. package/fesm2022/angular-dumb-lib.mjs.map +0 -1
  81. package/index.d.ts +0 -5
  82. package/lib/angular-dumb-lib.component.d.ts +0 -5
  83. package/lib/angular-dumb-lib.module.d.ts +0 -9
  84. package/lib/angular-dumb-lib.service.d.ts +0 -6
  85. package/lib/components/atoms/button/button.component.d.ts +0 -12
  86. package/lib/components/atoms/input/input.component.d.ts +0 -19
  87. package/lib/components/molecules/content-design/content-design.component.d.ts +0 -12
  88. package/lib/shared/enums/enum.d.ts +0 -59
  89. package/lib/shared/interfaces/interface.d.ts +0 -58
@@ -0,0 +1,69 @@
1
+ .footer {
2
+ background-color: #333;
3
+ color: #fff;
4
+ padding: 20px 0;
5
+ text-align: center;
6
+ font-family: 'Roboto', sans-serif;
7
+ }
8
+
9
+ .footer-container {
10
+ display: flex;
11
+ justify-content: space-around;
12
+ flex-wrap: wrap;
13
+ max-width: 1200px;
14
+ margin: 0 auto;
15
+ }
16
+
17
+ .footer-section {
18
+ flex: 1;
19
+ margin: 15px;
20
+ min-width: 200px;
21
+ }
22
+
23
+ .footer-section h3 {
24
+ margin-bottom: 15px;
25
+ font-size: 18px;
26
+ }
27
+
28
+ .footer-section p,
29
+ .footer-section ul,
30
+ .footer-section a {
31
+ font-size: 14px;
32
+ color: #ccc;
33
+ text-decoration: none;
34
+ }
35
+
36
+ .footer-section ul {
37
+ list-style: none;
38
+ padding: 0;
39
+ }
40
+
41
+ .footer-section ul li {
42
+ margin: 5px 0;
43
+ }
44
+
45
+ .footer-section ul li a:hover {
46
+ color: #fff;
47
+ }
48
+
49
+ .social-icons {
50
+ margin-top: 10px;
51
+ }
52
+
53
+ .social-icons a {
54
+ display: inline-block;
55
+ color: #ccc;
56
+ margin: 0 10px;
57
+ font-size: 20px;
58
+ }
59
+
60
+ .social-icons a:hover {
61
+ color: #fff;
62
+ }
63
+
64
+ .footer-bottom {
65
+ margin-top: 20px;
66
+ border-top: 1px solid #444;
67
+ padding-top: 10px;
68
+ font-size: 12px;
69
+ }
@@ -0,0 +1,16 @@
1
+ import { Component, OnInit } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'app-footer',
5
+ standalone: true,
6
+ templateUrl: './footer.component.html',
7
+ styleUrls: ['./footer.component.scss']
8
+ })
9
+ export class FooterComponent implements OnInit {
10
+
11
+ constructor() { }
12
+
13
+ ngOnInit() {
14
+ }
15
+
16
+ }
@@ -0,0 +1,10 @@
1
+ <div class="login-page">
2
+ <div class="icon-area">
3
+ <div class="icon">
4
+ <span>innocons</span>
5
+ </div>
6
+ </div>
7
+ <div class="login-button" id="buttonDiv">
8
+ <ng-template #buttonContainer></ng-template>
9
+ </div>
10
+ </div>
@@ -0,0 +1,32 @@
1
+ .login-button {
2
+ width: 100%;
3
+ align-items: center;
4
+ justify-content: center;
5
+ display: flex;
6
+ }
7
+
8
+ .login-page {
9
+ height: 100%;
10
+ width: 100%;
11
+ flex-direction: row;
12
+ display: flex;
13
+ }
14
+
15
+ .icon-area {
16
+ width: 38%;
17
+ background-color: #2a76d7;
18
+ height: 100%;
19
+ display: flex;;
20
+ }
21
+
22
+ .icon {
23
+ width: 100%;
24
+ align-items: center;
25
+ justify-content: center;
26
+ display: flex;
27
+ span {
28
+ color: white;
29
+ font-size: xxx-large;
30
+ font-family: fantasy;
31
+ }
32
+ }
@@ -0,0 +1,32 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input, OnInit, TemplateRef, ViewChild, ViewContainerRef } from '@angular/core';
3
+
4
+ @Component({
5
+ selector: 'app-login',
6
+ standalone: true,
7
+ templateUrl: './login.component.html',
8
+ styleUrls: ['./login.component.scss'],
9
+ imports: [CommonModule]
10
+ })
11
+ export class LoginComponent implements OnInit {
12
+ // Input property to accept a TemplateRef from the parent component
13
+ @Input() buttonTemplate!: TemplateRef<any>;
14
+ @ViewChild('buttonContainer', { read: ViewContainerRef }) buttonContainer!: ViewContainerRef;
15
+
16
+ constructor() {
17
+ }
18
+
19
+ ngOnInit(): void {
20
+ }
21
+
22
+ // After the view initializes, we render the button
23
+ ngAfterViewInit(): void {
24
+ // Clear any existing content in the container
25
+ this.buttonContainer.clear();
26
+
27
+ // Render the provided button template inside the container
28
+ if (this.buttonTemplate) {
29
+ this.buttonContainer.createEmbeddedView(this.buttonTemplate);
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,18 @@
1
+ <nav class="menu" [ngClass]="{'vertical': isVertical, 'horizontal': !isVertical}">
2
+ <div class="logo">
3
+ <img src="{{logoUrl}}" alt="Logo" />
4
+ </div>
5
+ <ul>
6
+ <li *ngFor="let item of menuItems">
7
+ <a [href]="item.route">{{ item.label }}</a>
8
+ </li>
9
+ </ul>
10
+ <div class="actions">
11
+ <div class="language">
12
+ <span class="material-icons" aria-hidden="true">language</span>
13
+ </div>
14
+ <div class="login">
15
+ <span class="material-icons" aria-hidden="true">person</span>
16
+ </div>
17
+ </div>
18
+ </nav>
@@ -0,0 +1,87 @@
1
+ :host {
2
+ display: flex;
3
+ }
4
+
5
+ .menu {
6
+ background-color: #f8f9fa;
7
+ padding: 10px;
8
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
9
+
10
+ &.vertical {
11
+ display: flex;
12
+ justify-content: space-between;
13
+ flex-direction: column;
14
+ width: 200px;
15
+
16
+ ul {
17
+ list-style-type: none;
18
+ padding: 0;
19
+ height: 100%;
20
+
21
+ li {
22
+ padding: 8px 0;
23
+
24
+ &:hover {
25
+ background-color: #e9ecef;
26
+ cursor: pointer;
27
+ }
28
+ }
29
+ }
30
+
31
+ .actions {
32
+ display: flex;
33
+ flex-direction: column;
34
+ align-items: baseline;
35
+ }
36
+ }
37
+
38
+ &.horizontal {
39
+ display: flex;
40
+ flex-direction: row;
41
+ width: 100%;
42
+ height: 80px;
43
+
44
+ ul {
45
+ display: flex;
46
+ list-style-type: none;
47
+ padding: 0;
48
+ margin: 0;
49
+ flex-grow: 1;
50
+ align-items: center;
51
+
52
+ li {
53
+ padding: 8px 16px; /* Adjust for horizontal spacing */
54
+
55
+ &:hover {
56
+ background-color: #e9ecef;
57
+ cursor: pointer;
58
+ }
59
+ }
60
+ }
61
+ }
62
+
63
+ .logo {
64
+ img {
65
+ width: 100%;
66
+ height: 100%; /* Maintain aspect ratio */
67
+ }
68
+ }
69
+
70
+ .actions {
71
+ display: flex;
72
+ align-items: center;
73
+
74
+ .language,
75
+ .login {
76
+ margin-left: 10px;
77
+ }
78
+ }
79
+ }
80
+
81
+ a {
82
+ text-decoration: none; // Remove the underline from links
83
+ color: inherit; // Inherit color from parent element
84
+ display: block; // Make the link block-level so it fills the entire list item
85
+ padding: 10px; // Add some padding for clickable area
86
+ transition: background-color 0.3s ease; // Optional: smooth background color transition
87
+ }
@@ -0,0 +1,26 @@
1
+ import { Component, Input, OnInit } from '@angular/core';
2
+ import { IMenuItem } from '../../../shared/interfaces/interface';
3
+ import { MenuDirection } from '../../../shared/enums/enum';
4
+ import { CommonModule } from '@angular/common';
5
+
6
+ @Component({
7
+ selector: 'app-menu',
8
+ standalone: true,
9
+ templateUrl: './menu.component.html',
10
+ styleUrls: ['./menu.component.scss'],
11
+ imports: [CommonModule]
12
+ })
13
+ export class MenuComponent implements OnInit {
14
+ @Input() menuItems: IMenuItem[] = [];
15
+ @Input() logoUrl: string = "";
16
+ @Input() direction: MenuDirection = MenuDirection.horizontal;
17
+
18
+ constructor() { }
19
+
20
+ ngOnInit() {
21
+ }
22
+
23
+ get isVertical(): boolean {
24
+ return this.direction === MenuDirection.vertical;
25
+ }
26
+ }
@@ -0,0 +1,3 @@
1
+ <app-content-design
2
+ [content] = "content">
3
+ </app-content-design>
@@ -0,0 +1,28 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, OnInit } from '@angular/core';
3
+ import { ContentDesignComponent } from 'angular-dumb-lib';
4
+ import { IContentDesign } from '../../../shared/interfaces/interface';
5
+ import { ContentDirection } from '../../../shared/enums/enum';
6
+
7
+ @Component({
8
+ selector: 'app-version',
9
+ standalone: true,
10
+ templateUrl: './version.component.html',
11
+ styleUrls: ['./version.component.scss'],
12
+ imports: [CommonModule, ContentDesignComponent]
13
+ })
14
+ export class VersionComponent implements OnInit {
15
+ content: IContentDesign;
16
+ constructor() {
17
+ this.content = {
18
+ title: 'Card 2 Title',
19
+ content: 'This is an example of left-aligned content.',
20
+ coverImage: 'https://via.placeholder.com/150',
21
+ contentDirection: ContentDirection.right,
22
+ template: null
23
+ }
24
+ }
25
+
26
+ ngOnInit() {
27
+ }
28
+ }
@@ -0,0 +1,7 @@
1
+ import { InputType } from "../enums/enum";
2
+
3
+ export const textualInputTypes: InputType[] =
4
+ [InputType.text, InputType.password, InputType.email, InputType.url,
5
+ InputType.tel, InputType.search, InputType.number, InputType.range,
6
+ InputType.hidden, InputType.textarea, InputType.richText, InputType.image];
7
+ export const selectionInputTypes: InputType[] = [InputType.checkbox, InputType.radio, InputType.select]
@@ -0,0 +1,68 @@
1
+
2
+ export enum DesignType {
3
+ normal = 'normal',
4
+ contrast = 'contrast'
5
+ }
6
+
7
+ export enum ButtonType {
8
+ submit = 'submit',
9
+ button = 'button'
10
+ }
11
+
12
+ export enum InputGroupType {
13
+ textual = 'textual',
14
+ datetime = 'datetime',
15
+ selection = 'selection',
16
+ file = 'file'
17
+ }
18
+
19
+ export enum InputDirection {
20
+ horizontal = 'horizontal',
21
+ vertical = 'vertical'
22
+ }
23
+
24
+ export enum InputType {
25
+ image = 'image',
26
+ text = 'text',
27
+ richText = 'richText',
28
+ password = 'password',
29
+ email = 'email',
30
+ url = 'url',
31
+ tel = 'tel',
32
+ search = 'search',
33
+ number = 'number',
34
+ range = 'range',
35
+ hidden = 'hidden',
36
+ textarea = 'textarea',
37
+ datetime = 'datetime',
38
+ checkbox = 'checkbox',
39
+ radio = 'radio',
40
+ select = 'select',
41
+ file = 'file'
42
+ }
43
+
44
+ export enum ContentDirection {
45
+ left = 'left',
46
+ right = 'right',
47
+ up = 'up',
48
+ down = 'down'
49
+ }
50
+
51
+ export enum SelectionType {
52
+ dropdown = 'dropdown',
53
+ radio = 'radio',
54
+ checkbox = 'checkbox'
55
+ }
56
+
57
+ export enum LoadingSize {
58
+ Xbig = 'xbig',
59
+ Big = 'big',
60
+ Medium = 'medium',
61
+ Small = 'small',
62
+ Xsmall = 'xsmall'
63
+ }
64
+
65
+ export enum MenuDirection {
66
+ vertical = 'vertical',
67
+ horizontal = 'horizontal'
68
+ }
@@ -0,0 +1,64 @@
1
+ import { TemplateRef } from "@angular/core";
2
+ import { ButtonType, ContentDirection, DesignType, InputDirection, InputType } from "../enums/enum";
3
+
4
+ export interface IButtonConfig {
5
+ isDisabled?: boolean;
6
+ isActive?: boolean;
7
+ designType?: DesignType;
8
+ label?: string;
9
+ iconValue?: string;
10
+ type?: ButtonType;
11
+ action?: string;
12
+ }
13
+
14
+ export interface IInputConfig {
15
+ required: boolean;
16
+ label?: string;
17
+ name: string;
18
+ placeholder?: string;
19
+ type?: InputType; // Optional, defaults to InputType.text
20
+ direction?: InputDirection; // Optional, defaults to InputDirection.vertical
21
+ isValid?: boolean;
22
+ options?: IDropdownOption[];
23
+ }
24
+
25
+ export interface IContentDesign {
26
+ name?: string;
27
+ coverImage?: string;
28
+ issuedDate?: string;
29
+ title?: string;
30
+ contentDirection?: ContentDirection;
31
+ content?: string;
32
+ template: TemplateRef<unknown> | null;
33
+ button?: IButtonConfig;
34
+ }
35
+
36
+ export interface IDropdownOption {
37
+ label: string; // The display label of the option
38
+ value: any; // The underlying value of the option
39
+ }
40
+
41
+ export interface IMenuItem {
42
+ label: string,
43
+ route: string
44
+ }
45
+
46
+ export interface IModalEvent {
47
+ isDialog: boolean;
48
+ isModalVisible: boolean;
49
+ template: TemplateRef<unknown> | null;
50
+ title: string;
51
+ params?: { [key: string]: any };
52
+ onOk?: ()=> void;
53
+ onCancel?: ()=> void;
54
+ }
55
+
56
+ export interface IPaginator {
57
+ itemsPerPage: number;
58
+ selectedPage: number;
59
+ }
60
+
61
+ export interface IDataColumnConfig {
62
+ field: string;
63
+ name: string
64
+ }
@@ -1,6 +1,10 @@
1
+ /*
2
+ * Public API Surface of angular-dumb-lib
3
+ */
4
+
1
5
  export * from './lib/angular-dumb-lib.service';
2
6
  export * from './lib/angular-dumb-lib.component';
3
7
  export * from './lib/angular-dumb-lib.module';
4
8
  export * from './lib/components/atoms/button/button.component';
5
9
  export * from './lib/components/atoms/input/input.component';
6
- export * from './lib/components/molecules/content-design/content-design.component';
10
+ export * from './lib/components/molecules/content-design/content-design.component'
@@ -0,0 +1,14 @@
1
+ /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
+ {
3
+ "extends": "../../tsconfig.json",
4
+ "compilerOptions": {
5
+ "outDir": "../../out-tsc/lib",
6
+ "declaration": true,
7
+ "declarationMap": true,
8
+ "inlineSources": true,
9
+ "types": []
10
+ },
11
+ "exclude": [
12
+ "**/*.spec.ts"
13
+ ]
14
+ }
@@ -0,0 +1,10 @@
1
+ /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
+ {
3
+ "extends": "./tsconfig.lib.json",
4
+ "compilerOptions": {
5
+ "declarationMap": false
6
+ },
7
+ "angularCompilerOptions": {
8
+ "compilationMode": "partial"
9
+ }
10
+ }
@@ -0,0 +1,14 @@
1
+ /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
+ {
3
+ "extends": "../../tsconfig.json",
4
+ "compilerOptions": {
5
+ "outDir": "../../out-tsc/spec",
6
+ "types": [
7
+ "jasmine"
8
+ ]
9
+ },
10
+ "include": [
11
+ "**/*.spec.ts",
12
+ "**/*.d.ts"
13
+ ]
14
+ }
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1kdW1iLWxpYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZHVtYi1saWIvc3JjL2FuZ3VsYXItZHVtYi1saWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- class AngularDumbLibComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AngularDumbLibComponent, selector: "lib-angular-dumb-lib", ngImport: i0, template: `
6
- <p>
7
- angular-dumb-lib works!
8
- </p>
9
- `, isInline: true }); }
10
- }
11
- export { AngularDumbLibComponent };
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibComponent, decorators: [{
13
- type: Component,
14
- args: [{ selector: 'lib-angular-dumb-lib', template: `
15
- <p>
16
- angular-dumb-lib works!
17
- </p>
18
- ` }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1kdW1iLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWR1bWItbGliL3NyYy9saWIvYW5ndWxhci1kdW1iLWxpYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUMsTUFVYSx1QkFBdUI7K0dBQXZCLHVCQUF1QjttR0FBdkIsdUJBQXVCLDREQVJ4Qjs7OztHQUlUOztTQUlVLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQVZuQyxTQUFTOytCQUNFLHNCQUFzQixZQUN0Qjs7OztHQUlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hbmd1bGFyLWR1bWItbGliJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cD5cbiAgICAgIGFuZ3VsYXItZHVtYi1saWIgd29ya3MhXG4gICAgPC9wPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyRHVtYkxpYkNvbXBvbmVudCB7XG5cbn1cbiJdfQ==
@@ -1,32 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { AngularDumbLibComponent } from './angular-dumb-lib.component';
3
- import { CommonModule } from '@angular/common';
4
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5
- import * as i0 from "@angular/core";
6
- class AngularDumbLibModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibModule, declarations: [AngularDumbLibComponent], imports: [CommonModule,
9
- FormsModule,
10
- ReactiveFormsModule], exports: [AngularDumbLibComponent] }); }
11
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibModule, imports: [CommonModule,
12
- FormsModule,
13
- ReactiveFormsModule] }); }
14
- }
15
- export { AngularDumbLibModule };
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibModule, decorators: [{
17
- type: NgModule,
18
- args: [{
19
- declarations: [
20
- AngularDumbLibComponent,
21
- ],
22
- imports: [
23
- CommonModule,
24
- FormsModule,
25
- ReactiveFormsModule,
26
- ],
27
- exports: [
28
- AngularDumbLibComponent,
29
- ]
30
- }]
31
- }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1kdW1iLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWR1bWItbGliL3NyYy9saWIvYW5ndWxhci1kdW1iLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUVsRSxNQWFhLG9CQUFvQjsrR0FBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0IsaUJBWDdCLHVCQUF1QixhQUd2QixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQixhQUduQix1QkFBdUI7Z0hBR2Qsb0JBQW9CLFlBUjdCLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1COztTQU1WLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQWJoQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsdUJBQXVCO3FCQUN4QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFuZ3VsYXJEdW1iTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hbmd1bGFyLWR1bWItbGliLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEFuZ3VsYXJEdW1iTGliQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQW5ndWxhckR1bWJMaWJDb21wb25lbnQsXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhckR1bWJMaWJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -1,15 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- class AngularDumbLibService {
4
- constructor() { }
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibService, providedIn: 'root' }); }
7
- }
8
- export { AngularDumbLibService };
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AngularDumbLibService, decorators: [{
10
- type: Injectable,
11
- args: [{
12
- providedIn: 'root'
13
- }]
14
- }], ctorParameters: function () { return []; } });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1kdW1iLWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1kdW1iLWxpYi9zcmMvbGliL2FuZ3VsYXItZHVtYi1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQyxNQUdhLHFCQUFxQjtJQUVoQyxnQkFBZ0IsQ0FBQzsrR0FGTixxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOztTQUVQLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQW5ndWxhckR1bWJMaWJTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIl19
@@ -1,34 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { ButtonType, DesignType } from '../../../shared/enums/enum';
3
- import { CommonModule } from '@angular/common';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- class ButtonComponent {
7
- constructor() {
8
- this.clickEvent = new EventEmitter();
9
- }
10
- ngOnInit() {
11
- this.config = {
12
- isDisabled: false,
13
- isActive: false,
14
- designType: DesignType.normal,
15
- type: ButtonType.submit,
16
- ...this.config,
17
- };
18
- }
19
- onButtonClick() {
20
- this.clickEvent.emit();
21
- }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonComponent, isStandalone: true, selector: "app-button", inputs: { config: "config" }, outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<button\r\n type=\"{{config.type}}\"\r\n class=\"btn btn-primary\"\r\n [disabled]=\"config.isDisabled\"\r\n [ngClass]=\"{'active': config.isActive,\r\n 'normal': config.designType === 'normal',\r\n 'contrast': config.designType === 'contrast'}\"\r\n (click)=\"onButtonClick()\">\r\n <div class=\"button-content\">\r\n <ng-container *ngIf=\"config.iconValue\">\r\n <i class=\"material-icons\" data-toggle=\"tooltip\" title=\"Delete\">{{config.iconValue}}</i>\r\n </ng-container>\r\n <span>{{ config.label }}</span>\r\n </div>\r\n</button>\r\n", styles: ["button.btn.btn-primary{padding:.5rem 1rem;border:none;border-radius:.25rem;cursor:pointer;height:3rem}button.btn.btn-primary .button-content{display:flex;flex-direction:row;justify-content:center;align-items:center;height:100%}button.btn.btn-primary:disabled{background-color:#ccc!important;color:#666!important;cursor:not-allowed!important;border-color:#666!important}button.btn.btn-primary.normal{background-color:#007bff;color:#fff}button.btn.btn-primary.normal:hover:not(:disabled){background-color:#0056d2}button.btn.btn-primary.contrast{color:#007bff;border:1px solid #4A90E2}button.btn.btn-primary.contrast:hover:not(:disabled){background-color:#e6f0fa;color:#1a1a1a}button.btn.btn-primary.active{background-color:#003d99;color:#fff}button.btn.btn-primary.active:hover:not(:disabled){background-color:#0056d2;color:#fff}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
24
- }
25
- export { ButtonComponent };
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonComponent, decorators: [{
27
- type: Component,
28
- args: [{ selector: 'app-button', standalone: true, imports: [CommonModule], template: "<button\r\n type=\"{{config.type}}\"\r\n class=\"btn btn-primary\"\r\n [disabled]=\"config.isDisabled\"\r\n [ngClass]=\"{'active': config.isActive,\r\n 'normal': config.designType === 'normal',\r\n 'contrast': config.designType === 'contrast'}\"\r\n (click)=\"onButtonClick()\">\r\n <div class=\"button-content\">\r\n <ng-container *ngIf=\"config.iconValue\">\r\n <i class=\"material-icons\" data-toggle=\"tooltip\" title=\"Delete\">{{config.iconValue}}</i>\r\n </ng-container>\r\n <span>{{ config.label }}</span>\r\n </div>\r\n</button>\r\n", styles: ["button.btn.btn-primary{padding:.5rem 1rem;border:none;border-radius:.25rem;cursor:pointer;height:3rem}button.btn.btn-primary .button-content{display:flex;flex-direction:row;justify-content:center;align-items:center;height:100%}button.btn.btn-primary:disabled{background-color:#ccc!important;color:#666!important;cursor:not-allowed!important;border-color:#666!important}button.btn.btn-primary.normal{background-color:#007bff;color:#fff}button.btn.btn-primary.normal:hover:not(:disabled){background-color:#0056d2}button.btn.btn-primary.contrast{color:#007bff;border:1px solid #4A90E2}button.btn.btn-primary.contrast:hover:not(:disabled){background-color:#e6f0fa;color:#1a1a1a}button.btn.btn-primary.active{background-color:#003d99;color:#fff}button.btn.btn-primary.active:hover:not(:disabled){background-color:#0056d2;color:#fff}\n"] }]
29
- }], ctorParameters: function () { return []; }, propDecorators: { config: [{
30
- type: Input
31
- }], clickEvent: [{
32
- type: Output
33
- }] } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZHVtYi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1kdW1iLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFL0MsTUFPYSxlQUFlO0lBSzFCO1FBRlUsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFFaEMsQ0FBQztJQUVqQixRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRztZQUNaLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsVUFBVSxFQUFFLFVBQVUsQ0FBQyxNQUFNO1lBQzdCLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN2QixHQUFHLElBQUksQ0FBQyxNQUFNO1NBQ2YsQ0FBQTtJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDOytHQW5CVSxlQUFlO21HQUFmLGVBQWUsMklDWjVCLGdsQkFlQSxzM0JETFksWUFBWTs7U0FFWCxlQUFlOzRGQUFmLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsWUFBWSxjQUNWLElBQUksV0FHUCxDQUFDLFlBQVksQ0FBQzswRUFHZCxNQUFNO3NCQUFkLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQnV0dG9uVHlwZSwgRGVzaWduVHlwZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9lbnVtcy9lbnVtJztcclxuaW1wb3J0IHsgSUJ1dHRvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2VzL2ludGVyZmFjZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1idXR0b24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgY29uZmlnITogSUJ1dHRvbkNvbmZpZztcclxuXHJcbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jb25maWcgPSB7XHJcbiAgICAgIGlzRGlzYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBpc0FjdGl2ZTogZmFsc2UsXHJcbiAgICAgIGRlc2lnblR5cGU6IERlc2lnblR5cGUubm9ybWFsLFxyXG4gICAgICB0eXBlOiBCdXR0b25UeXBlLnN1Ym1pdCxcclxuICAgICAgLi4udGhpcy5jb25maWcsXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJ1dHRvbkNsaWNrKCkge1xyXG4gICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGJ1dHRvblxyXG4gIHR5cGU9XCJ7e2NvbmZpZy50eXBlfX1cIlxyXG4gIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcclxuICBbZGlzYWJsZWRdPVwiY29uZmlnLmlzRGlzYWJsZWRcIlxyXG4gIFtuZ0NsYXNzXT1cInsnYWN0aXZlJzogY29uZmlnLmlzQWN0aXZlLFxyXG4gICAgICAgICAgICAnbm9ybWFsJzogY29uZmlnLmRlc2lnblR5cGUgPT09ICdub3JtYWwnLFxyXG4gICAgICAgICAgICAnY29udHJhc3QnOiBjb25maWcuZGVzaWduVHlwZSA9PT0gJ2NvbnRyYXN0J31cIlxyXG4gIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJidXR0b24tY29udGVudFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29uZmlnLmljb25WYWx1ZVwiPlxyXG4gICAgICA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCIgZGF0YS10b2dnbGU9XCJ0b29sdGlwXCIgdGl0bGU9XCJEZWxldGVcIj57e2NvbmZpZy5pY29uVmFsdWV9fTwvaT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPHNwYW4+e3sgY29uZmlnLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbjwvYnV0dG9uPlxyXG4iXX0=