@enigmatry/entry-components 17.0.0-preview.4 → 17.0.0-preview.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -32
- package/assets/nswag-templates/Client.RequestBody.liquid +95 -95
- package/assets/nswag-templates/Client.RequestUrl.liquid +67 -67
- package/assets/nswag-templates/ConvertToClass.liquid +64 -64
- package/assets/nswag-templates/original/Client.RequestBody.liquid +89 -89
- package/assets/nswag-templates/original/Client.RequestUrl.liquid +59 -59
- package/assets/nswag-templates/original/ConvertToClass.liquid +65 -65
- package/assets/nswag-templates/original/File.FormatDate.liquid +4 -4
- package/assets/nswag-templates/original/File.ParseDateOnly.liquid +4 -4
- package/button/README.md +45 -45
- package/date-time-picker/README.md +69 -69
- package/dialog/README.md +73 -73
- package/esm2022/button/entry-button.directive.mjs +1 -1
- package/esm2022/button/entry-button.module.mjs +1 -1
- package/esm2022/button/public-api.mjs +1 -1
- package/esm2022/common/common.module.mjs +1 -1
- package/esm2022/common/date-time/entry-date-time-adapter.mjs +1 -1
- package/esm2022/common/date-time/entry-date-time-formats.mjs +1 -1
- package/esm2022/common/date-time/entry-time-adapter.mjs +1 -1
- package/esm2022/common/date-time/native-time-adapter.mjs +1 -1
- package/esm2022/common/directives/auto-disable-button.directive.mjs +1 -1
- package/esm2022/common/directives/ng-control-accessor.directive.mjs +1 -1
- package/esm2022/common/directives/noop-control-value-accessor.mjs +1 -1
- package/esm2022/common/interceptors/accept-language.interceptor.mjs +1 -1
- package/esm2022/common/public-api.mjs +1 -1
- package/esm2022/date-time-picker/date-time-picker.component.mjs +3 -3
- package/esm2022/date-time-picker/date-time-picker.module.mjs +1 -1
- package/esm2022/date-time-picker/public-api.mjs +1 -1
- package/esm2022/date-time-picker/time-picker.component.mjs +3 -3
- package/esm2022/dialog/dialogs/alert/entry-alert-dialog-data.interface.mjs +1 -1
- package/esm2022/dialog/dialogs/alert/entry-alert-dialog.component.mjs +3 -3
- package/esm2022/dialog/dialogs/confirm/entry-confirm-dialog-data.interface.mjs +1 -1
- package/esm2022/dialog/dialogs/confirm/entry-confirm-dialog.component.mjs +3 -3
- package/esm2022/dialog/dialogs/entry-dialog.component.mjs +3 -3
- package/esm2022/dialog/dialogs/error/entry-error-dialog-data.interface.mjs +1 -1
- package/esm2022/dialog/dialogs/error/entry-error-dialog.component.mjs +3 -3
- package/esm2022/dialog/entry-dialog-buttons-alignment.type.mjs +1 -1
- package/esm2022/dialog/entry-dialog-config.model.mjs +1 -1
- package/esm2022/dialog/entry-dialog.module.mjs +1 -1
- package/esm2022/dialog/entry-dialog.service.mjs +1 -1
- package/esm2022/dialog/public-api.mjs +1 -1
- package/esm2022/file-input/entry-file-input.component.mjs +1 -1
- package/esm2022/file-input/entry-file-input.module.mjs +1 -1
- package/esm2022/file-input/public-api.mjs +1 -1
- package/esm2022/permissions/permission-type.mjs +1 -1
- package/esm2022/permissions/permission.directive.mjs +1 -1
- package/esm2022/permissions/permission.module.mjs +1 -1
- package/esm2022/permissions/permission.pipe.mjs +1 -1
- package/esm2022/permissions/public-api.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/esm2022/search-filter/autocomplete/autocomplete-search-filter.component.mjs +3 -3
- package/esm2022/search-filter/autocomplete/autocomplete-search-filter.model.mjs +1 -1
- package/esm2022/search-filter/control-type.mjs +1 -1
- package/esm2022/search-filter/date/date-search-filter.component.mjs +3 -3
- package/esm2022/search-filter/date/date-search-filter.model.mjs +1 -1
- package/esm2022/search-filter/date-time/date-time-search-filter.component.mjs +3 -3
- package/esm2022/search-filter/date-time/date-time-search-filter.model.mjs +1 -1
- package/esm2022/search-filter/public-api.mjs +1 -1
- package/esm2022/search-filter/search-filter-base.model.mjs +1 -1
- package/esm2022/search-filter/search-filter-config.model.mjs +1 -1
- package/esm2022/search-filter/search-filter-params.type.mjs +1 -1
- package/esm2022/search-filter/select/select-search-filter.component.mjs +3 -3
- package/esm2022/search-filter/select/select-search-filter.model.mjs +1 -1
- package/esm2022/search-filter/select-option.model.mjs +1 -1
- package/esm2022/search-filter/text/text-search-filter.component.mjs +3 -3
- package/esm2022/search-filter/text/text-search-filter.model.mjs +1 -1
- package/esm2022/spinner/entry-spinner/spinner.component.mjs +1 -1
- package/esm2022/spinner/public-api.mjs +1 -1
- package/esm2022/spinner/spinner.module.mjs +1 -1
- package/esm2022/table/components/entry-cell/entry-cell.component.mjs +1 -1
- package/esm2022/table/components/entry-cell-context-menu/entry-cell-context-menu.component.mjs +3 -3
- package/esm2022/table/components/entry-cell-formatted-value/entry-cell-formatted-value.component.mjs +3 -3
- package/esm2022/table/components/entry-table/entry-table.component.mjs +3 -3
- package/esm2022/table/entry-table.module.mjs +1 -1
- package/esm2022/table/interfaces/entry-table-config.mjs +1 -1
- package/esm2022/table/interfaces/paged-query.mjs +1 -1
- package/esm2022/table/interfaces/pagination.mjs +1 -1
- package/esm2022/table/public-api.mjs +1 -1
- package/esm2022/validation/entry-display-control-validation.directive.mjs +1 -1
- package/esm2022/validation/entry-form-errors.component.mjs +13 -13
- package/esm2022/validation/entry-validation-config.model.mjs +1 -1
- package/esm2022/validation/entry-validation.mjs +1 -1
- package/esm2022/validation/entry-validation.module.mjs +1 -1
- package/esm2022/validation/public-api.mjs +1 -1
- package/esm2022/validation/validation-problem-details.interface.mjs +1 -1
- package/fesm2022/enigmatry-entry-components-button.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-common.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-date-time-picker.mjs +4 -4
- package/fesm2022/enigmatry-entry-components-date-time-picker.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-dialog.mjs +8 -8
- package/fesm2022/enigmatry-entry-components-dialog.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-file-input.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-permissions.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-search-filter.mjs +10 -10
- package/fesm2022/enigmatry-entry-components-search-filter.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-spinner.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-table.mjs +6 -6
- package/fesm2022/enigmatry-entry-components-table.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components-validation.mjs +12 -12
- package/fesm2022/enigmatry-entry-components-validation.mjs.map +1 -1
- package/fesm2022/enigmatry-entry-components.mjs.map +1 -1
- package/file-input/README.md +70 -70
- package/package.json +2 -2
- package/permissions/README.md +67 -67
- package/search-filter/README.md +132 -132
- package/styles/_generator.scss +25 -25
- package/styles/modules/_default-theme.scss +91 -91
- package/styles/modules/components/buttons/_generator.scss +10 -10
- package/styles/modules/components/buttons/_radio.scss +18 -18
- package/styles/modules/components/checkboxes/_generator.scss +31 -31
- package/styles/modules/components/dialogs/_generator.scss +13 -13
- package/styles/modules/components/forms/_generator.scss +14 -14
- package/styles/modules/components/inputs/_generator.scss +14 -14
- package/styles/modules/components/search-filter/_generator.scss +14 -14
- package/styles/modules/components/tables/_cells.scss +25 -25
- package/styles/modules/components/tables/_generator.scss +6 -6
- package/styles/modules/components/tables/_header.scss +10 -10
- package/styles/modules/components/tables/_no-result.scss +9 -9
- package/styles/modules/components/tables/_rows.scss +39 -39
- package/styles/modules/components/tables/_sorting.scss +10 -10
- package/styles/modules/components/tables/_table-body.scss +12 -12
- package/styles/modules/components/toggle/_generator.scss +47 -47
- package/styles/modules/typography/_fonts.scss +64 -64
- package/styles/modules/vendors/angular-material/_generator.scss +46 -46
- package/styles/modules/vendors/angular-material/_palette-generator.scss +32 -32
- package/styles/modules/vendors/angular-material/_typography-generator.scss +107 -107
- package/styles/partials/core/components/_index.scss +4 -4
- package/styles/partials/core/components/date-time-picker/_general.scss +64 -64
- package/styles/partials/core/components/dialogs/_general.scss +23 -23
- package/styles/partials/core/components/forms/_general.scss +21 -21
- package/styles/partials/core/components/search-filter/_general.scss +8 -8
- package/styles/partials/core/components/tables/_general.scss +17 -17
- package/styles/partials/generator-test.scss +41 -41
- package/styles/partials/theming.scss +1 -1
- package/table/README.md +76 -76
- package/validation/README.md +108 -108
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
@use '@angular/material' as mat;
|
|
2
|
-
@use '
|
|
3
|
-
|
|
4
|
-
.entry-date-time-picker {
|
|
5
|
-
@include items.fully-align(baseline, space-between, row, nowrap);
|
|
6
|
-
|
|
7
|
-
.hidden, .mat-mdc-text-field-wrapper.mdc-text-field--outlined .hidden.mdc-text-field__input {
|
|
8
|
-
display: none;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.mat-datepicker-actions {
|
|
13
|
-
flex-direction: column;
|
|
14
|
-
border-top: 1px solid #D1D1D1;
|
|
15
|
-
|
|
16
|
-
.entry-submit-button {
|
|
17
|
-
align-self: flex-end;
|
|
18
|
-
min-width: 48px;
|
|
19
|
-
|
|
20
|
-
.icon {
|
|
21
|
-
margin: 0;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.entry-time-picker {
|
|
27
|
-
@include mat.form-field-density(-3);
|
|
28
|
-
display: flex;
|
|
29
|
-
flex-wrap: nowrap;
|
|
30
|
-
margin-top: 20px;
|
|
31
|
-
|
|
32
|
-
.mat-mdc-form-field {
|
|
33
|
-
flex: 1 1 calc(50% - 15px);
|
|
34
|
-
width: 50px;
|
|
35
|
-
margin-right: 15px;
|
|
36
|
-
|
|
37
|
-
&:last-of-type {
|
|
38
|
-
margin-right: 0;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.mdc-text-field {
|
|
42
|
-
padding: {
|
|
43
|
-
right: 0;
|
|
44
|
-
left: 12px;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
.mat-mdc-select-value-text {
|
|
49
|
-
font-size: 13px;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.mdc-text-field--filled:not(.mdc-text-field--disabled) {
|
|
53
|
-
background-color: transparent;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
&:hover .mat-mdc-form-field-focus-overlay {
|
|
57
|
-
opacity: 0;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.time-separator {
|
|
62
|
-
@include items.align-center();
|
|
63
|
-
transform: translate(-7px, -10px);
|
|
64
|
-
}
|
|
1
|
+
@use '@angular/material' as mat;
|
|
2
|
+
@use 'scss-foundation/src/modules/display/items';
|
|
3
|
+
|
|
4
|
+
.entry-date-time-picker {
|
|
5
|
+
@include items.fully-align(baseline, space-between, row, nowrap);
|
|
6
|
+
|
|
7
|
+
.hidden, .mat-mdc-text-field-wrapper.mdc-text-field--outlined .hidden.mdc-text-field__input {
|
|
8
|
+
display: none;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.mat-datepicker-actions {
|
|
13
|
+
flex-direction: column;
|
|
14
|
+
border-top: 1px solid #D1D1D1;
|
|
15
|
+
|
|
16
|
+
.entry-submit-button {
|
|
17
|
+
align-self: flex-end;
|
|
18
|
+
min-width: 48px;
|
|
19
|
+
|
|
20
|
+
.icon {
|
|
21
|
+
margin: 0;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.entry-time-picker {
|
|
27
|
+
@include mat.form-field-density(-3);
|
|
28
|
+
display: flex;
|
|
29
|
+
flex-wrap: nowrap;
|
|
30
|
+
margin-top: 20px;
|
|
31
|
+
|
|
32
|
+
.mat-mdc-form-field {
|
|
33
|
+
flex: 1 1 calc(50% - 15px);
|
|
34
|
+
width: 50px;
|
|
35
|
+
margin-right: 15px;
|
|
36
|
+
|
|
37
|
+
&:last-of-type {
|
|
38
|
+
margin-right: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.mdc-text-field {
|
|
42
|
+
padding: {
|
|
43
|
+
right: 0;
|
|
44
|
+
left: 12px;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.mat-mdc-select-value-text {
|
|
49
|
+
font-size: 13px;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.mdc-text-field--filled:not(.mdc-text-field--disabled) {
|
|
53
|
+
background-color: transparent;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&:hover .mat-mdc-form-field-focus-overlay {
|
|
57
|
+
opacity: 0;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.time-separator {
|
|
62
|
+
@include items.align-center();
|
|
63
|
+
transform: translate(-7px, -10px);
|
|
64
|
+
}
|
|
65
65
|
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
@use 'scss-foundation/src/modules/display/items';
|
|
2
|
-
@use 'scss-foundation/src/modules/text/modification' as text;
|
|
3
|
-
|
|
4
|
-
.entry-dialog {
|
|
5
|
-
.dialog-header {
|
|
6
|
-
@include items.fully-align(center, space-between, row, nowrap);
|
|
7
|
-
|
|
8
|
-
.title {
|
|
9
|
-
@include text.ellipsis();
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.dialog-content {
|
|
14
|
-
display: inline-block;
|
|
15
|
-
width: 100%;
|
|
16
|
-
/* stylelint-disable-next-line unit-allowed-list */
|
|
17
|
-
max-height: 50vh;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.dialog-actions {
|
|
21
|
-
padding: 0 24px 14px;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
1
|
+
@use 'scss-foundation/src/modules/display/items';
|
|
2
|
+
@use 'scss-foundation/src/modules/text/modification' as text;
|
|
3
|
+
|
|
4
|
+
.entry-dialog {
|
|
5
|
+
.dialog-header {
|
|
6
|
+
@include items.fully-align(center, space-between, row, nowrap);
|
|
7
|
+
|
|
8
|
+
.title {
|
|
9
|
+
@include text.ellipsis();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.dialog-content {
|
|
14
|
+
display: inline-block;
|
|
15
|
+
width: 100%;
|
|
16
|
+
/* stylelint-disable-next-line unit-allowed-list */
|
|
17
|
+
max-height: 50vh;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.dialog-actions {
|
|
21
|
+
padding: 0 24px 14px;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
@use '
|
|
2
|
-
|
|
3
|
-
.entry-form {
|
|
4
|
-
.action-buttons .mdc-button:not(:first-child) {
|
|
5
|
-
margin-left: 10px;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
.entry-checkbox {
|
|
9
|
-
display: block;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.mdc-form-field {
|
|
13
|
-
margin-bottom: 10px;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.datetimepicker .mat-form-field-appearance-outline .mat-mdc-form-field-infix {
|
|
18
|
-
padding: {
|
|
19
|
-
top: 8px;
|
|
20
|
-
bottom: 8px;
|
|
21
|
-
}
|
|
1
|
+
@use 'scss-foundation/src/modules/display/items';
|
|
2
|
+
|
|
3
|
+
.entry-form {
|
|
4
|
+
.action-buttons .mdc-button:not(:first-child) {
|
|
5
|
+
margin-left: 10px;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.entry-checkbox {
|
|
9
|
+
display: block;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.mdc-form-field {
|
|
13
|
+
margin-bottom: 10px;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.datetimepicker .mat-form-field-appearance-outline .mat-mdc-form-field-infix {
|
|
18
|
+
padding: {
|
|
19
|
+
top: 8px;
|
|
20
|
+
bottom: 8px;
|
|
21
|
+
}
|
|
22
22
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
@use '
|
|
2
|
-
|
|
3
|
-
.search-form-container {
|
|
4
|
-
@include items.align-center();
|
|
5
|
-
|
|
6
|
-
.form-field {
|
|
7
|
-
width: 200px;
|
|
8
|
-
}
|
|
1
|
+
@use 'scss-foundation/src/modules/display/items';
|
|
2
|
+
|
|
3
|
+
.search-form-container {
|
|
4
|
+
@include items.align-center();
|
|
5
|
+
|
|
6
|
+
.form-field {
|
|
7
|
+
width: 200px;
|
|
8
|
+
}
|
|
9
9
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
@use '
|
|
2
|
-
|
|
3
|
-
.entry-table {
|
|
4
|
-
display: flex;
|
|
5
|
-
flex-direction: column;
|
|
6
|
-
overflow: auto;
|
|
7
|
-
|
|
8
|
-
.pagination {
|
|
9
|
-
margin-bottom: 10px;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.no-results {
|
|
13
|
-
@include items.align-absolute-center();
|
|
14
|
-
flex: 1;
|
|
15
|
-
min-height: 50px;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
1
|
+
@use 'scss-foundation/src/modules/display/items';
|
|
2
|
+
|
|
3
|
+
.entry-table {
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
overflow: auto;
|
|
7
|
+
|
|
8
|
+
.pagination {
|
|
9
|
+
margin-bottom: 10px;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.no-results {
|
|
13
|
+
@include items.align-absolute-center();
|
|
14
|
+
flex: 1;
|
|
15
|
+
min-height: 50px;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
@use '../generator';
|
|
2
|
-
|
|
3
|
-
$custom-theme: (
|
|
4
|
-
general: (
|
|
5
|
-
colors: (
|
|
6
|
-
primary: #FAE3C1,
|
|
7
|
-
disabled: (
|
|
8
|
-
foreground: cyan,
|
|
9
|
-
background: magenta
|
|
10
|
-
)
|
|
11
|
-
),
|
|
12
|
-
fonts: (
|
|
13
|
-
body: (
|
|
14
|
-
family: 'My-Font',
|
|
15
|
-
size: 41px
|
|
16
|
-
),
|
|
17
|
-
buttons: (
|
|
18
|
-
size: 26px
|
|
19
|
-
)
|
|
20
|
-
),
|
|
21
|
-
inputs: (
|
|
22
|
-
background: yellow
|
|
23
|
-
),
|
|
24
|
-
checkboxes: (
|
|
25
|
-
background: red,
|
|
26
|
-
border-hover-color: green
|
|
27
|
-
)
|
|
28
|
-
),
|
|
29
|
-
tables: (
|
|
30
|
-
cells: (
|
|
31
|
-
edge-gap: 11px,
|
|
32
|
-
padding: 202px
|
|
33
|
-
)
|
|
34
|
-
),
|
|
35
|
-
dialogs: (
|
|
36
|
-
title: (
|
|
37
|
-
size: 42px
|
|
38
|
-
)
|
|
39
|
-
)
|
|
40
|
-
);
|
|
41
|
-
|
|
1
|
+
@use '../generator';
|
|
2
|
+
|
|
3
|
+
$custom-theme: (
|
|
4
|
+
general: (
|
|
5
|
+
colors: (
|
|
6
|
+
primary: #FAE3C1,
|
|
7
|
+
disabled: (
|
|
8
|
+
foreground: cyan,
|
|
9
|
+
background: magenta
|
|
10
|
+
)
|
|
11
|
+
),
|
|
12
|
+
fonts: (
|
|
13
|
+
body: (
|
|
14
|
+
family: 'My-Font',
|
|
15
|
+
size: 41px
|
|
16
|
+
),
|
|
17
|
+
buttons: (
|
|
18
|
+
size: 26px
|
|
19
|
+
)
|
|
20
|
+
),
|
|
21
|
+
inputs: (
|
|
22
|
+
background: yellow
|
|
23
|
+
),
|
|
24
|
+
checkboxes: (
|
|
25
|
+
background: red,
|
|
26
|
+
border-hover-color: green
|
|
27
|
+
)
|
|
28
|
+
),
|
|
29
|
+
tables: (
|
|
30
|
+
cells: (
|
|
31
|
+
edge-gap: 11px,
|
|
32
|
+
padding: 202px
|
|
33
|
+
)
|
|
34
|
+
),
|
|
35
|
+
dialogs: (
|
|
36
|
+
title: (
|
|
37
|
+
size: 42px
|
|
38
|
+
)
|
|
39
|
+
)
|
|
40
|
+
);
|
|
41
|
+
|
|
42
42
|
@include generator.generate-from($custom-theme);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@use 'core/components';
|
|
1
|
+
@use 'core/components';
|
package/table/README.md
CHANGED
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
# Entry table
|
|
2
|
-
|
|
3
|
-
Reusable table component with context menu, sorting and paging.
|
|
4
|
-
|
|
5
|
-
## Installation
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
npm install @enigmatry/entry-components
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Basic Usage
|
|
12
|
-
|
|
13
|
-
Import the `EntryTableModule` in your `feature.module` or `shared.module`
|
|
14
|
-
|
|
15
|
-
```typescript
|
|
16
|
-
import { EntryTableModule } from '@enigmatry/entry-components/table';
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
`component.ts`
|
|
20
|
-
|
|
21
|
-
```typescript
|
|
22
|
-
import { PagedData, ContextMenuItem, ColumnDef } from '@enigmatry/entry-components/table';
|
|
23
|
-
|
|
24
|
-
@Component({
|
|
25
|
-
...
|
|
26
|
-
})
|
|
27
|
-
export class UserListComponent implements OnInit {
|
|
28
|
-
|
|
29
|
-
@Input() data: PagedData<GetUsersResponseItem> | null;
|
|
30
|
-
|
|
31
|
-
@Input() columns: ColumnDef[] = [];
|
|
32
|
-
@Input() contextMenuItems: ContextMenuItem[] = [];
|
|
33
|
-
|
|
34
|
-
constructor() { }
|
|
35
|
-
|
|
36
|
-
ngOnInit(): void {
|
|
37
|
-
this.columns = [
|
|
38
|
-
{ field: 'id', hide: true, sortable: true },
|
|
39
|
-
{ field: 'userName', header: `E-mail`, hide: false, sortable: true },
|
|
40
|
-
{ field: 'name', header: `Name`, hide: false, sortable: true },
|
|
41
|
-
{ field: 'createdOn', header: `Created on`, hide: false, sortable: true, type: 'date' },
|
|
42
|
-
{ field: 'updatedOn', header: `Updated on`, hide: false, sortable: true, type: 'date' }
|
|
43
|
-
];
|
|
44
|
-
this.contextMenuItems = [
|
|
45
|
-
{ id: 'edit', name: `Edit`, icon: 'edit' }
|
|
46
|
-
];
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
`component.html`
|
|
52
|
-
|
|
53
|
-
```html
|
|
54
|
-
<entry-table
|
|
55
|
-
[columns]="columns"
|
|
56
|
-
[data]="data"
|
|
57
|
-
[showPaginator]="true"
|
|
58
|
-
[showContextMenu]="true"
|
|
59
|
-
[contextMenuItems]="contextMenuItems"
|
|
60
|
-
(pageChange)="pageChange.emit($event)"
|
|
61
|
-
(sortChange)="sortChange.emit($event)"
|
|
62
|
-
(rowSelectionChange)="selectionChange.emit($event)"
|
|
63
|
-
(contextMenuItemSelected)="contextMenuItemSelected.emit($event)">
|
|
64
|
-
</entry-table>
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## Compatibility with Angular Versions
|
|
68
|
-
|
|
69
|
-
| @enigmatry/entry-components | Angular version
|
|
70
|
-
|-|-|
|
|
71
|
-
|1.14.x| = 14
|
|
72
|
-
|1.15.x| = 15
|
|
73
|
-
|
|
74
|
-
## License
|
|
75
|
-
|
|
76
|
-
Apache-2 © Enigmatry
|
|
1
|
+
# Entry table
|
|
2
|
+
|
|
3
|
+
Reusable table component with context menu, sorting and paging.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
npm install @enigmatry/entry-components
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Basic Usage
|
|
12
|
+
|
|
13
|
+
Import the `EntryTableModule` in your `feature.module` or `shared.module`
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import { EntryTableModule } from '@enigmatry/entry-components/table';
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
`component.ts`
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
import { PagedData, ContextMenuItem, ColumnDef } from '@enigmatry/entry-components/table';
|
|
23
|
+
|
|
24
|
+
@Component({
|
|
25
|
+
...
|
|
26
|
+
})
|
|
27
|
+
export class UserListComponent implements OnInit {
|
|
28
|
+
|
|
29
|
+
@Input() data: PagedData<GetUsersResponseItem> | null;
|
|
30
|
+
|
|
31
|
+
@Input() columns: ColumnDef[] = [];
|
|
32
|
+
@Input() contextMenuItems: ContextMenuItem[] = [];
|
|
33
|
+
|
|
34
|
+
constructor() { }
|
|
35
|
+
|
|
36
|
+
ngOnInit(): void {
|
|
37
|
+
this.columns = [
|
|
38
|
+
{ field: 'id', hide: true, sortable: true },
|
|
39
|
+
{ field: 'userName', header: `E-mail`, hide: false, sortable: true },
|
|
40
|
+
{ field: 'name', header: `Name`, hide: false, sortable: true },
|
|
41
|
+
{ field: 'createdOn', header: `Created on`, hide: false, sortable: true, type: 'date' },
|
|
42
|
+
{ field: 'updatedOn', header: `Updated on`, hide: false, sortable: true, type: 'date' }
|
|
43
|
+
];
|
|
44
|
+
this.contextMenuItems = [
|
|
45
|
+
{ id: 'edit', name: `Edit`, icon: 'edit' }
|
|
46
|
+
];
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
`component.html`
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<entry-table
|
|
55
|
+
[columns]="columns"
|
|
56
|
+
[data]="data"
|
|
57
|
+
[showPaginator]="true"
|
|
58
|
+
[showContextMenu]="true"
|
|
59
|
+
[contextMenuItems]="contextMenuItems"
|
|
60
|
+
(pageChange)="pageChange.emit($event)"
|
|
61
|
+
(sortChange)="sortChange.emit($event)"
|
|
62
|
+
(rowSelectionChange)="selectionChange.emit($event)"
|
|
63
|
+
(contextMenuItemSelected)="contextMenuItemSelected.emit($event)">
|
|
64
|
+
</entry-table>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Compatibility with Angular Versions
|
|
68
|
+
|
|
69
|
+
| @enigmatry/entry-components | Angular version
|
|
70
|
+
|-|-|
|
|
71
|
+
|1.14.x| = 14
|
|
72
|
+
|1.15.x| = 15
|
|
73
|
+
|
|
74
|
+
## License
|
|
75
|
+
|
|
76
|
+
Apache-2 © Enigmatry
|