@pega/angular-sdk-overrides 23.1.10 → 24.1.10

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 (85) hide show
  1. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.html +7 -4
  2. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.ts +3 -1
  3. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.html +1 -1
  4. package/lib/designSystemExtension/operator/operator.component.ts +10 -5
  5. package/lib/field/auto-complete/auto-complete.component.ts +1 -1
  6. package/lib/field/cancel-alert/cancel-alert.component.ts +0 -2
  7. package/lib/field/check-box/check-box.component.html +16 -15
  8. package/lib/field/check-box/check-box.component.scss +14 -1
  9. package/lib/field/check-box/check-box.component.ts +126 -44
  10. package/lib/field/currency/currency.component.html +15 -6
  11. package/lib/field/currency/currency.component.ts +36 -18
  12. package/lib/field/date-time/date-time.component.html +5 -5
  13. package/lib/field/date-time/date-time.component.ts +15 -37
  14. package/lib/field/decimal/decimal.component.html +14 -4
  15. package/lib/field/decimal/decimal.component.ts +42 -5
  16. package/lib/field/dropdown/dropdown.component.ts +0 -3
  17. package/lib/field/group/group.component.html +1 -1
  18. package/lib/field/group/group.component.ts +4 -0
  19. package/lib/field/multiselect/multiselect.component.html +33 -0
  20. package/lib/field/multiselect/multiselect.component.scss +7 -0
  21. package/lib/field/multiselect/multiselect.component.spec.ts +21 -0
  22. package/lib/field/multiselect/multiselect.component.ts +359 -0
  23. package/lib/field/multiselect/utils.ts +209 -0
  24. package/lib/field/percentage/percentage.component.html +15 -4
  25. package/lib/field/percentage/percentage.component.ts +29 -5
  26. package/lib/field/radio-buttons/radio-buttons.component.ts +0 -3
  27. package/lib/field/rich-text/config-ext.json +10 -0
  28. package/lib/field/rich-text/rich-text.component.html +1 -1
  29. package/lib/field/scalar-list/scalar-list.component.ts +2 -1
  30. package/lib/field/text-area/text-area.component.ts +0 -2
  31. package/lib/field/time/time.component.html +1 -0
  32. package/lib/field/time/time.component.ts +2 -0
  33. package/lib/field/url/url.component.html +1 -0
  34. package/lib/field/url/url.component.ts +2 -0
  35. package/lib/field/user-reference/user-reference.component.html +50 -45
  36. package/lib/field/user-reference/user-reference.component.ts +33 -15
  37. package/lib/infra/Containers/base-components/flow-container-base.component.ts +22 -0
  38. package/lib/infra/Containers/base-components/helper.ts +89 -0
  39. package/lib/infra/Containers/flow-container/flow-container.component.html +8 -3
  40. package/lib/infra/Containers/flow-container/flow-container.component.ts +30 -29
  41. package/lib/infra/Containers/modal-view-container/modal-view-container.component.ts +40 -8
  42. package/lib/infra/Containers/view-container/view-container.component.ts +0 -1
  43. package/lib/infra/assignment/assignment.component.ts +38 -39
  44. package/lib/infra/dashboard-filter/dashboard-filter.component.ts +0 -1
  45. package/lib/infra/defer-load/defer-load.component.ts +5 -8
  46. package/lib/infra/multi-step/multi-step.component.html +1 -1
  47. package/lib/infra/multi-step/multi-step.component.scss +1 -0
  48. package/lib/infra/navbar/navbar.component.html +4 -4
  49. package/lib/infra/navbar/navbar.component.ts +6 -3
  50. package/lib/infra/view/view.component.ts +1 -1
  51. package/lib/template/banner-page/config-ext.json +9 -0
  52. package/lib/template/case-summary/case-summary.component.ts +37 -3
  53. package/lib/template/case-view/case-view.component.html +3 -3
  54. package/lib/template/case-view/case-view.component.scss +2 -0
  55. package/lib/template/case-view/case-view.component.ts +0 -6
  56. package/lib/template/data-reference/data-reference.component.ts +1 -3
  57. package/lib/template/dynamic-tabs/dynamic-tabs.component.ts +0 -1
  58. package/lib/template/field-group-template/field-group-template.component.ts +4 -12
  59. package/lib/template/field-value-list/field-value-list.component.html +7 -2
  60. package/lib/template/field-value-list/field-value-list.component.ts +1 -0
  61. package/lib/template/inline-dashboard-page/config-ext.json +9 -0
  62. package/lib/template/list-view/list-view.component.html +6 -6
  63. package/lib/template/list-view/list-view.component.ts +36 -28
  64. package/lib/template/list-view/listViewHelpers.ts +0 -1
  65. package/lib/template/repeating-structures/repeating-structures.component.ts +1 -2
  66. package/lib/template/simple-table/simple-table.component.ts +0 -2
  67. package/lib/template/simple-table-manual/helpers.ts +1 -1
  68. package/lib/template/simple-table-manual/simple-table-manual.component.html +1 -1
  69. package/lib/template/simple-table-manual/simple-table-manual.component.ts +49 -19
  70. package/lib/template/simple-table-select/simple-table-select.component.ts +2 -4
  71. package/lib/template/wss-nav-bar/wss-nav-bar.component.html +1 -1
  72. package/lib/template/wss-nav-bar/wss-nav-bar.component.ts +2 -1
  73. package/lib/widget/attachment/attachment.component.html +50 -26
  74. package/lib/widget/attachment/attachment.component.scss +118 -0
  75. package/lib/widget/attachment/attachment.component.ts +256 -501
  76. package/lib/widget/case-history/case-history.component.ts +1 -2
  77. package/lib/widget/feed-container/feed-container.component.ts +0 -4
  78. package/lib/widget/file-utility/file-utility.component.html +2 -2
  79. package/lib/widget/file-utility/file-utility.component.ts +13 -17
  80. package/lib/widget/list-utility/list-utility.component.html +1 -1
  81. package/lib/widget/quick-create/config-ext.json +9 -0
  82. package/lib/widget/quick-create/quick-create.component.ts +1 -1
  83. package/lib/widget/todo/todo.component.html +6 -5
  84. package/lib/widget/todo/todo.component.ts +7 -6
  85. package/package.json +1 -1
@@ -1,31 +1,55 @@
1
- <div class="psdk-label-infix-readonly" *ngIf="bVisible$">
2
- <span class="psdk-label-wrapper-readonly">
3
- <label [ngClass]="{ 'psdk-label-readonly': true, 'label-required': bRequired$ === true }" [htmlFor]="att_valueRef">{{ label$ }}</label>
4
- </span>
5
- <div
6
- [ngClass]="{ 'psdk-modal-file-selector': status !== 'error', 'psdk-modal-file-selector-error': status === 'error' }"
7
- id="attachment-container"
8
- *ngIf="bShowSelector$"
9
- >
10
- <mat-spinner *ngIf="bLoading$" class="progress-spinner" diameter="40"></mat-spinner>
11
- <input hidden type="file" [required]="bRequired$" #uploader [id]="att_valueRef" [multiple]="allowMultiple$" (change)="uploadMyFiles($event)" />
12
-
13
- <button mat-stroked-button color="primary" [disabled]="bDisabled$" (click)="uploader.click()">
14
- {{ allowMultiple$ ? 'Upload files' : 'Upload file' }}
15
- </button>
1
+ <div class="file-upload-container" *ngIf="bVisible$">
2
+ <span class="attachment-label" [ngClass]="{ 'file-label': bRequired$ }">{{ label$ }}</span>
3
+ <div *ngIf="(files.length === 0 && !allowMultiple$) || allowMultiple$">
4
+ <div
5
+ style="margin-bottom: 10px"
6
+ id="attachment-container"
7
+ [ngClass]="validateMessage ? 'psdk-modal-file-selector-error' : 'psdk-modal-file-selector'"
8
+ >
9
+ <div [hidden]="true" id="attachment-ID">
10
+ {{ valueRef }}
11
+ </div>
12
+ <input hidden type="file" [required]="bRequired$" #uploader [id]="valueRef" [multiple]="allowMultiple$" (change)="onFileAdded($event)" />
13
+ <button mat-stroked-button color="primary" [disabled]="bDisabled$" (click)="uploader.click()">
14
+ {{
15
+ allowMultiple$
16
+ ? uploadMultipleFilesLabel === 'file_upload_text_multiple'
17
+ ? 'Choose files'
18
+ : uploadMultipleFilesLabel
19
+ : uploadSingleFileLabel === 'file_upload_text_one'
20
+ ? 'Choose a file'
21
+ : uploadSingleFileLabel
22
+ }}
23
+ </button>
24
+ </div>
16
25
  </div>
17
26
  <span *ngIf="validateMessage" class="file-error">{{ validateMessage }}</span>
18
-
19
- <div class="psdk-attachment-list" *ngIf="arFileList$ != null && arFileList$.length > 0">
20
- <div *ngFor="let attachment of arFileList$">
21
- <component-mapper
22
- *ngIf="attachment.noDeleteIcon !== true; else showfull"
23
- name="SummaryItem"
24
- [props]="{ item$: attachment, menuIconOverride$: 'trash', menuIconOverrideAction$: removeFileFromList$ }"
25
- ></component-mapper>
26
- <ng-template #showfull>
27
- <component-mapper name="SummaryItem" [props]="{ item$: attachment, menuIconOverrideAction$: removeFileFromList$ }"></component-mapper>
28
- </ng-template>
27
+ <div *ngIf="files && files.length > 0">
28
+ <div *ngFor="let file of files">
29
+ <div class="psdk-attachment-card">
30
+ <div className="psdk-utility-card-icon">
31
+ <img *ngIf="!file.inProgress" class="psdk-attachment-card-svg-icon" src="{{ srcImg }}" />
32
+ <mat-spinner *ngIf="file.inProgress" class="progress-spinner" diameter="40"></mat-spinner>
33
+ </div>
34
+ <div class="psdk-attachment-card-main">
35
+ <div class="psdk-attachment-card-main-primary-label">{{ file.props.name }}</div>
36
+ <div *ngIf="file.props.meta" [ngStyle]="{ color: file.props.error ? 'red' : null }">{{ file.props.meta }}</div>
37
+ </div>
38
+ <div class="psdk-attachment-action">
39
+ <button id="delete-attachment" *ngIf="file.ID" class="psdk-utility-button" (click)="deleteFile(file)">
40
+ <img class="psdk-utility-card-action-svg-icon" src="{{ deleteIcon }}" />
41
+ </button>
42
+ <div *ngIf="!file.ID">
43
+ <button id="setting-button" mat-icon-button [matMenuTriggerFor]="actionMenu">
44
+ <mat-icon>more_vert</mat-icon>
45
+ </button>
46
+ <mat-menu #actionMenu="matMenu">
47
+ <button mat-menu-item (click)="downloadFile(file.responseProps ? file.responseProps : {})">Download</button>
48
+ <button mat-menu-item (click)="deleteFile(file)">Delete</button>
49
+ </mat-menu>
50
+ </div>
51
+ </div>
52
+ </div>
29
53
  </div>
30
54
  </div>
31
55
  </div>
@@ -53,3 +53,121 @@
53
53
  ::ng-deep .mat-mdc-form-field-infix {
54
54
  width: auto;
55
55
  }
56
+ .psdk-modal-file-selector {
57
+ border: 1px dashed var(--app-neutral-dark-color);
58
+ padding: 0.5rem;
59
+ text-align: center;
60
+ position: relative;
61
+ }
62
+
63
+ .label-required::after {
64
+ display: inline;
65
+ content: ' *';
66
+ vertical-align: top;
67
+ color: var(--app-neutral-dark-color);
68
+ }
69
+
70
+ .file-error {
71
+ color: var(--app-error-light-color);
72
+ }
73
+
74
+ .psdk-modal-file-selector-error {
75
+ border: 1px dashed var(--app-error-light-color);
76
+ padding: 0.5rem;
77
+ text-align: center;
78
+ position: relative;
79
+ }
80
+
81
+ .psdk-full-width {
82
+ width: 100%;
83
+ }
84
+
85
+ .psdk-label-readonly {
86
+ opacity: 54%;
87
+ font-size: 0.8rem;
88
+ font-weight: 400;
89
+ }
90
+
91
+ .psdk-data-readonly {
92
+ padding-top: 0.625rem;
93
+ width: 100%;
94
+ }
95
+
96
+ .psdk-attachment-list {
97
+ border: 1px solid var(--app-neutral-color);
98
+ }
99
+
100
+ ::ng-deep .mat-mdc-form-field-infix {
101
+ width: auto;
102
+ }
103
+
104
+ .psdk-attachment-card {
105
+ display: flex;
106
+ align-items: center;
107
+ border: 0.0625rem solid rgb(207, 207, 207);
108
+ border-radius: calc(0.25rem);
109
+ padding: 0.25rem 0rem 0.25rem 0.25rem;
110
+ min-height: 3rem;
111
+ margin-bottom: 0.5rem;
112
+ }
113
+
114
+ .psdk-attachment-card-main-primary-label {
115
+ font-weight: 500;
116
+ text-overflow: ellipsis;
117
+ overflow: hidden;
118
+ white-space: normal;
119
+ }
120
+
121
+ .psdk-attachment-card-main {
122
+ flex-grow: 2;
123
+ margin-left: 5px;
124
+ }
125
+
126
+ .psdk-attachment-action {
127
+ flex-grow: 1;
128
+ text-align: right;
129
+ }
130
+
131
+ .psdk-attachment-card-svg-icon {
132
+ width: 2.5rem;
133
+ }
134
+
135
+ .psdk-utility-button {
136
+ background: none;
137
+ border: none;
138
+ margin-right: 0.5rem;
139
+ cursor: pointer;
140
+ }
141
+
142
+ .psdk-utility-card-action-svg-icon {
143
+ width: 1.4rem;
144
+ display: inline-block;
145
+ }
146
+
147
+ .file-div {
148
+ border: 1px dashed var(--app-neutral-dark-color);
149
+ width: 100%;
150
+ padding: 0.5rem;
151
+ text-align: center;
152
+ position: relative;
153
+ }
154
+
155
+ .file-div-error {
156
+ border: 1px dashed var(--app-error-light-color);
157
+ width: 100%;
158
+ padding: 0.5rem;
159
+ text-align: center;
160
+ position: relative;
161
+ }
162
+
163
+ .attachment-label {
164
+ display: block;
165
+ margin-bottom: 10px;
166
+ }
167
+
168
+ .file-label::after {
169
+ display: inline;
170
+ content: ' *';
171
+ vertical-align: top;
172
+ color: var(--app-neutral-dark-color);
173
+ }