ng-dynamic-datatable 0.0.0 → 0.0.2

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 (29) hide show
  1. package/README.md +109 -34
  2. package/fesm2022/ng-dynamic-datatable.mjs +483 -0
  3. package/fesm2022/ng-dynamic-datatable.mjs.map +1 -0
  4. package/index.d.ts +5 -0
  5. package/lib/dynamic-datatable.component.d.ts +83 -0
  6. package/lib/dynamic-datatable.types.d.ts +4 -0
  7. package/lib/models.d.ts +45 -0
  8. package/package.json +35 -38
  9. package/{projects/dynamic-datatable/src/public-api.ts → public-api.d.ts} +2 -6
  10. package/.editorconfig +0 -17
  11. package/.vscode/extensions.json +0 -4
  12. package/.vscode/launch.json +0 -20
  13. package/.vscode/tasks.json +0 -42
  14. package/angular.json +0 -44
  15. package/projects/dynamic-datatable/README.md +0 -134
  16. package/projects/dynamic-datatable/ng-package.json +0 -7
  17. package/projects/dynamic-datatable/package.json +0 -24
  18. package/projects/dynamic-datatable/src/lib/dynamic-datatable.component.html +0 -137
  19. package/projects/dynamic-datatable/src/lib/dynamic-datatable.component.scss +0 -237
  20. package/projects/dynamic-datatable/src/lib/dynamic-datatable.component.spec.ts +0 -23
  21. package/projects/dynamic-datatable/src/lib/dynamic-datatable.component.ts +0 -556
  22. package/projects/dynamic-datatable/src/lib/dynamic-datatable.service.spec.ts +0 -16
  23. package/projects/dynamic-datatable/src/lib/dynamic-datatable.service.ts +0 -9
  24. package/projects/dynamic-datatable/src/lib/dynamic-datatable.types.ts +0 -4
  25. package/projects/dynamic-datatable/src/lib/models.ts +0 -52
  26. package/projects/dynamic-datatable/tsconfig.lib.json +0 -15
  27. package/projects/dynamic-datatable/tsconfig.lib.prod.json +0 -11
  28. package/projects/dynamic-datatable/tsconfig.spec.json +0 -15
  29. package/tsconfig.json +0 -32
@@ -1,237 +0,0 @@
1
- :host {
2
- display: block;
3
- --ndt-primary: #4f46e5;
4
- --ndt-primary-soft: #eef2ff;
5
- --ndt-border: #dbe4ff;
6
- --ndt-text: #1f2a44;
7
- --ndt-muted: #6d7895;
8
- }
9
-
10
- .ndt-card {
11
- border: 1px solid var(--ndt-border);
12
- border-radius: 14px;
13
- background: #fff;
14
- box-shadow: 0 10px 30px rgba(45, 72, 145, 0.08);
15
- overflow: hidden;
16
- color: var(--ndt-text);
17
- font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
18
- }
19
-
20
- .ndt-header,
21
- .ndt-toolbar,
22
- .ndt-footer {
23
- padding: 0.9rem 1rem;
24
- }
25
-
26
- .ndt-header {
27
- border-bottom: 1px solid #edf1ff;
28
- }
29
-
30
- .ndt-title {
31
- margin: 0;
32
- font-size: 1.1rem;
33
- }
34
-
35
- .ndt-toolbar {
36
- display: flex;
37
- justify-content: space-between;
38
- gap: 0.75rem;
39
- flex-wrap: wrap;
40
- }
41
-
42
- .ndt-left-tools,
43
- .ndt-right-tools {
44
- display: flex;
45
- align-items: center;
46
- gap: 0.5rem;
47
- flex-wrap: wrap;
48
- }
49
-
50
- .ndt-btn,
51
- .ndt-pagination button,
52
- .ndt-actions-cell select,
53
- .ndt-toolbar select,
54
- .ndt-toolbar input {
55
- border: 1px solid #cfd9fb;
56
- background: #fff;
57
- color: #33446e;
58
- border-radius: 8px;
59
- padding: 0.35rem 0.6rem;
60
- font-size: 0.85rem;
61
- }
62
-
63
- .ndt-btn:hover,
64
- .ndt-pagination button:hover,
65
- .ndt-pagination button.active {
66
- border-color: var(--ndt-primary);
67
- background: var(--ndt-primary-soft);
68
- color: var(--ndt-primary);
69
- }
70
-
71
- .ndt-inline-label {
72
- display: inline-flex;
73
- align-items: center;
74
- gap: 0.4rem;
75
- color: var(--ndt-muted);
76
- font-size: 0.85rem;
77
- }
78
-
79
- .ndt-table-wrap {
80
- overflow-x: auto;
81
- border-top: 1px solid #edf1ff;
82
- border-bottom: 1px solid #edf1ff;
83
- }
84
-
85
- .ndt-table {
86
- width: 100%;
87
- min-width: 860px;
88
- border-collapse: collapse;
89
- table-layout: fixed;
90
- }
91
-
92
- .ndt-table th,
93
- .ndt-table td {
94
- padding: 0.72rem;
95
- text-align: left;
96
- border-bottom: 1px solid #edf1ff;
97
- }
98
-
99
- .ndt-table th {
100
- color: #4a577f;
101
- font-size: 0.8rem;
102
- text-transform: uppercase;
103
- letter-spacing: 0.03em;
104
- background: #f8faff;
105
- }
106
-
107
- .ndt-th-content {
108
- display: flex;
109
- align-items: center;
110
- justify-content: space-between;
111
- gap: 0.4rem;
112
- }
113
-
114
- .ndt-th-label {
115
- overflow: hidden;
116
- text-overflow: ellipsis;
117
- white-space: nowrap;
118
- }
119
-
120
- .ndt-sortable {
121
- cursor: pointer;
122
- }
123
-
124
- .ndt-sort-indicator {
125
- font-size: 0.75rem;
126
- color: #8a98c2;
127
- }
128
-
129
- .ndt-table tbody tr:hover {
130
- background: #f5f8ff;
131
- }
132
-
133
- .ndt-selected {
134
- background: #ebf1ff;
135
- }
136
-
137
- .ndt-actions-cell {
138
- text-align: center;
139
- position: relative;
140
- }
141
-
142
- .ndt-dropdown {
143
- position: relative;
144
- display: inline-block;
145
- }
146
-
147
- .ndt-actions-btn {
148
- border: 1px solid #cfd9fb;
149
- background: #fff;
150
- color: #33446e;
151
- border-radius: 8px;
152
- width: 34px;
153
- height: 30px;
154
- padding: 0;
155
- cursor: pointer;
156
- }
157
-
158
- .ndt-actions-btn:hover {
159
- border-color: var(--ndt-primary);
160
- color: var(--ndt-primary);
161
- background: var(--ndt-primary-soft);
162
- }
163
-
164
- .ndt-dots {
165
- font-size: 1rem;
166
- line-height: 1;
167
- }
168
-
169
- .ndt-dropdown-menu {
170
- position: absolute;
171
- right: 0;
172
- top: calc(100% + 0.35rem);
173
- list-style: none;
174
- margin: 0;
175
- padding: 0.35rem 0;
176
- min-width: 150px;
177
- border: 1px solid #dbe4ff;
178
- border-radius: 10px;
179
- background: #fff;
180
- box-shadow: 0 12px 24px rgba(45, 72, 145, 0.14);
181
- z-index: 20;
182
- }
183
-
184
- .ndt-dropdown-item {
185
- width: 100%;
186
- border: 0;
187
- background: #fff;
188
- color: #33446e;
189
- display: flex;
190
- align-items: center;
191
- gap: 0.45rem;
192
- text-align: left;
193
- padding: 0.42rem 0.72rem;
194
- font-size: 0.84rem;
195
- cursor: pointer;
196
- }
197
-
198
- .ndt-dropdown-item:hover {
199
- background: #f5f8ff;
200
- color: var(--ndt-primary);
201
- }
202
-
203
- .ndt-dropdown-item.ndt-danger {
204
- color: #dc3545;
205
- }
206
-
207
- .ndt-dropdown-item.ndt-danger:hover {
208
- background: #fff1f3;
209
- }
210
-
211
- .ndt-empty {
212
- text-align: center;
213
- color: var(--ndt-muted);
214
- }
215
-
216
- .ndt-footer {
217
- display: flex;
218
- justify-content: space-between;
219
- gap: 0.75rem;
220
- flex-wrap: wrap;
221
- color: #55658f;
222
- font-size: 0.86rem;
223
- }
224
-
225
- .ndt-pagination {
226
- display: flex;
227
- align-items: center;
228
- gap: 0.35rem;
229
- }
230
-
231
- @media (max-width: 900px) {
232
- .ndt-toolbar,
233
- .ndt-footer {
234
- flex-direction: column;
235
- align-items: flex-start;
236
- }
237
- }
@@ -1,23 +0,0 @@
1
- import { ComponentFixture, TestBed } from '@angular/core/testing';
2
-
3
- import { DynamicDatatableComponent } from './dynamic-datatable.component';
4
-
5
- describe('DynamicDatatableComponent', () => {
6
- let component: DynamicDatatableComponent;
7
- let fixture: ComponentFixture<DynamicDatatableComponent>;
8
-
9
- beforeEach(async () => {
10
- await TestBed.configureTestingModule({
11
- imports: [DynamicDatatableComponent]
12
- })
13
- .compileComponents();
14
-
15
- fixture = TestBed.createComponent(DynamicDatatableComponent);
16
- component = fixture.componentInstance;
17
- fixture.detectChanges();
18
- });
19
-
20
- it('should create', () => {
21
- expect(component).toBeTruthy();
22
- });
23
- });