@pega/dx-component-builder-sdk 0.242.19 → 0.242.21

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 (70) hide show
  1. package/package.json +1 -1
  2. package/src/tasks/create/templates/SDK-Angular/field/Boolean/boolean.component.html.mustache +4 -0
  3. package/src/tasks/create/templates/SDK-Angular/field/Date/date.component.html.mustache +2 -1
  4. package/src/tasks/create/templates/SDK-Angular/field/Date/demo.stories.tsx.mustache +4 -4
  5. package/src/tasks/create/templates/SDK-Angular/field/DateTime/date-time.component.html.mustache +2 -1
  6. package/src/tasks/create/templates/SDK-Angular/field/DateTime/demo.stories.tsx.mustache +4 -4
  7. package/src/tasks/create/templates/SDK-Angular/field/Decimal/demo.stories.tsx.mustache +0 -1
  8. package/src/tasks/create/templates/SDK-Angular/field/Decimal-Currency/demo.stories.tsx.mustache +0 -1
  9. package/src/tasks/create/templates/SDK-Angular/field/Decimal-Percentage/demo.stories.tsx.mustache +0 -1
  10. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/demo.stories.tsx.mustache +1 -3
  11. package/src/tasks/create/templates/SDK-Angular/field/Integer/demo.stories.tsx.mustache +4 -5
  12. package/src/tasks/create/templates/SDK-Angular/field/Picklist/demo.stories.tsx.mustache +4 -4
  13. package/src/tasks/create/templates/SDK-Angular/field/Picklist/picklist.component.html.mustache +1 -0
  14. package/src/tasks/create/templates/SDK-Angular/field/Picklist/picklist.component.ts.mustache +1 -2
  15. package/src/tasks/create/templates/SDK-Angular/field/Picklist-Autocomplete/demo.stories.tsx.mustache +4 -5
  16. package/src/tasks/create/templates/SDK-Angular/field/Picklist-Autocomplete/picklist-autocomplete.component.html.mustache +0 -1
  17. package/src/tasks/create/templates/SDK-Angular/field/Picklist-Autocomplete/picklist-autocomplete.component.ts.mustache +15 -2
  18. package/src/tasks/create/templates/SDK-Angular/field/Picklist-RadioButtons/picklist-radio-buttons.component.html.mustache +1 -1
  19. package/src/tasks/create/templates/SDK-Angular/field/Text/demo.stories.tsx.mustache +5 -7
  20. package/src/tasks/create/templates/SDK-Angular/field/Text-Email/demo.stories.tsx.mustache +4 -5
  21. package/src/tasks/create/templates/SDK-Angular/field/Text-Input/demo.stories.tsx.mustache +4 -5
  22. package/src/tasks/create/templates/SDK-Angular/field/Text-Paragraph/demo.stories.tsx.mustache +4 -5
  23. package/src/tasks/create/templates/SDK-Angular/field/Text-Phone/demo.stories.tsx.mustache +5 -5
  24. package/src/tasks/create/templates/SDK-Angular/field/Text-Phone/text-phone.component.html.mustache +2 -0
  25. package/src/tasks/create/templates/SDK-Angular/field/Text-URL/demo.stories.tsx.mustache +6 -6
  26. package/src/tasks/create/templates/SDK-Angular/field/TimeOfDay/demo.stories.tsx.mustache +4 -5
  27. package/tests/assets/sdk-a/components/create/custom-sdk/field/pega-dxil-my-test-text/demo.stories.tsx +5 -7
  28. package/tests/assets/sdk-a/components/create/override-sdk/field/auto-complete/auto-complete.component.html +0 -1
  29. package/tests/assets/sdk-a/components/create/override-sdk/field/auto-complete/auto-complete.component.ts +15 -2
  30. package/tests/assets/sdk-a/components/create/override-sdk/field/date-time/date-time.component.ts +1 -1
  31. package/tests/assets/sdk-a/components/create/override-sdk/field/dropdown/dropdown.component.ts +1 -2
  32. package/tests/assets/sdk-a/components/create/override-sdk/field/phone/config-ext.json +1 -1
  33. package/tests/assets/sdk-a/components/create/override-sdk/field/user-reference/user-reference.component.ts +5 -1
  34. package/tests/assets/sdk-a/components/create/override-sdk/infra/root-container/root-container.component.ts +2 -2
  35. package/tests/assets/sdk-a/components/create/override-sdk/template/confirmation/confirmation.component.html +1 -1
  36. package/tests/assets/sdk-a/components/create/override-sdk/template/simple-table-manual/simple-table-manual.component.scss +4 -0
  37. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-boolean/pega-dxil-my-boolean.component.html +3 -0
  38. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-currency/demo.stories.tsx +0 -1
  39. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-date/demo.stories.tsx +4 -4
  40. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-date/pega-dxil-my-date.component.html +2 -1
  41. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-date-time/demo.stories.tsx +4 -4
  42. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-date-time/pega-dxil-my-date-time.component.html +2 -1
  43. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-decimal/demo.stories.tsx +0 -1
  44. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-email/demo.stories.tsx +4 -5
  45. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-icon-button-url/demo.stories.tsx +1 -3
  46. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-integer/demo.stories.tsx +4 -5
  47. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-paragraph/demo.stories.tsx +4 -5
  48. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-percentage/demo.stories.tsx +0 -1
  49. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-phone/demo.stories.tsx +5 -5
  50. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-phone/pega-dxil-my-phone.component.html +2 -0
  51. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-picklist/demo.stories.tsx +4 -4
  52. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-picklist/pega-dxil-my-picklist.component.html +1 -0
  53. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-picklist/pega-dxil-my-picklist.component.ts +1 -2
  54. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-radiobuttons/pega-dxil-my-radiobuttons.component.html +1 -1
  55. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-searchbox/demo.stories.tsx +4 -5
  56. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-searchbox/pega-dxil-my-searchbox.component.html +0 -1
  57. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-searchbox/pega-dxil-my-searchbox.component.ts +15 -2
  58. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-text/demo.stories.tsx +5 -7
  59. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-text-input/demo.stories.tsx +4 -5
  60. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-time-of-day/demo.stories.tsx +4 -5
  61. package/tests/assets/sdk-a/components/createAll/custom-sdk/field/pega-dxil-my-url/demo.stories.tsx +6 -6
  62. package/tests/assets/sdk-a/components/createAll/override-sdk/field/auto-complete/auto-complete.component.html +0 -1
  63. package/tests/assets/sdk-a/components/createAll/override-sdk/field/auto-complete/auto-complete.component.ts +15 -2
  64. package/tests/assets/sdk-a/components/createAll/override-sdk/field/date-time/date-time.component.ts +1 -1
  65. package/tests/assets/sdk-a/components/createAll/override-sdk/field/dropdown/dropdown.component.ts +1 -2
  66. package/tests/assets/sdk-a/components/createAll/override-sdk/field/phone/config-ext.json +1 -1
  67. package/tests/assets/sdk-a/components/createAll/override-sdk/field/user-reference/user-reference.component.ts +5 -1
  68. package/tests/assets/sdk-a/components/createAll/override-sdk/infra/root-container/root-container.component.ts +2 -2
  69. package/tests/assets/sdk-a/components/createAll/override-sdk/template/confirmation/confirmation.component.html +1 -1
  70. package/tests/assets/sdk-a/components/createAll/override-sdk/template/simple-table-manual/simple-table-manual.component.scss +4 -0
@@ -5,6 +5,10 @@
5
5
  margin-top: 0.5rem;
6
6
  margin-bottom: 0.5rem;
7
7
  overflow-y: auto;
8
+ box-shadow:
9
+ 0px 2px 1px -1px rgba(0, 0, 0, 0.2),
10
+ 0px 1px 1px 0px rgba(0, 0, 0, 0.14),
11
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
8
12
  }
9
13
 
10
14
  table {
@@ -18,6 +18,8 @@
18
18
  <mat-checkbox
19
19
  [labelPosition]="'after'"
20
20
  [checked]="item.selected"
21
+ [disabled]="bDisabled$ || bReadonly$"
22
+ [required]="bRequired$"
21
23
  [attr.data-test-id]="testId + ':' + item.value"
22
24
  (change)="handleChangeMultiMode($event, item)"
23
25
  (blur)="fieldOnBlur($event)"
@@ -29,6 +31,7 @@
29
31
  <mat-checkbox
30
32
  [labelPosition]="'after'"
31
33
  [checked]="isChecked$"
34
+ [disabled]="bDisabled$ || bReadonly$"
32
35
  [attr.data-test-id]="testId"
33
36
  [formControl]="fieldControl"
34
37
  (change)="fieldOnChange($event)"
@@ -46,7 +46,6 @@ export const PegaDxilMyCurrency: Story = {
46
46
  helperText: configProps.helperText,
47
47
  testId: configProps.testId,
48
48
  bReadonly$: configProps.readOnly,
49
- bDisabled$: configProps.disabled,
50
49
  bRequired$: configProps.required,
51
50
  displayMode$: configProps.displayMode
52
51
  }
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyDateComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -15,10 +15,11 @@
15
15
  type="text"
16
16
  [value]="value$"
17
17
  [required]="bRequired$"
18
+ [disabled]="bDisabled$"
18
19
  [formControl]="fieldControl"
19
20
  (dateChange)="fieldOnDateChange($event)"
20
21
  />
21
- <mat-datepicker-toggle matSuffix [for]="pegadate"></mat-datepicker-toggle>
22
+ <mat-datepicker-toggle matSuffix [for]="pegadate" [disabled]="bDisabled$"></mat-datepicker-toggle>
22
23
  <mat-datepicker #pegadate [startAt]="value$"></mat-datepicker>
23
24
  <mat-error *ngIf="fieldControl.invalid">{{ getErrorMessage() }}</mat-error>
24
25
  </mat-form-field>
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyDateTimeComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -14,9 +14,10 @@
14
14
  [formControl]="fieldControl"
15
15
  (dateTimeChange)="fieldOnDateChange($event)"
16
16
  [required]="bRequired$"
17
+ [readonly]="bDisabled$"
17
18
  />
18
19
  <mat-datepicker-toggle matSuffix [owlDateTimeTrigger]="dtPicker"></mat-datepicker-toggle>
19
- <owl-date-time #dtPicker></owl-date-time>
20
+ <owl-date-time #dtPicker [disabled]="bDisabled$"></owl-date-time>
20
21
  <mat-error *ngIf="fieldControl?.invalid">{{ getErrorMessage() }}</mat-error>
21
22
  </mat-form-field>
22
23
  </div>
@@ -49,7 +49,6 @@ export const PegaDxilMyDecimal: Story = {
49
49
  helperText: configProps.helperText,
50
50
  testId: configProps.testId,
51
51
  bReadonly$: configProps.readOnly,
52
- bDisabled$: configProps.disabled,
53
52
  bRequired$: configProps.required,
54
53
  displayMode$: configProps.displayMode
55
54
  }
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyEmailComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -47,7 +47,6 @@ export const PegaDxilMyEmail: Story = {
47
47
  testId: configProps.testId,
48
48
  placeholder: configProps.placeholder,
49
49
  bReadonly$: configProps.readOnly,
50
- bDisabled$: configProps.disabled,
51
50
  bRequired$: configProps.required,
52
51
  displayMode$: configProps.displayMode
53
52
  }
@@ -47,7 +47,5 @@ export default meta;
47
47
  type Story = StoryObj<PegaDxilMyIconButtonUrlComponent>;
48
48
 
49
49
  export const PegaDxilMyIconButtonUrl: Story = {
50
- args: {
51
- countryCode: 'USA'
52
- }
50
+ args: {}
53
51
  };
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyIntegerComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -46,7 +46,6 @@ export const PegaDxilMyInteger: Story = {
46
46
  helperText: configProps.helperText,
47
47
  testId: configProps.testId,
48
48
  bReadonly$: configProps.readOnly,
49
- bDisabled$: configProps.disabled,
50
49
  bRequired$: configProps.required,
51
50
  displayMode$: configProps.displayMode
52
51
  }
@@ -28,11 +28,11 @@ const meta: Meta<PegaDxilMyParagraphComponent> = {
28
28
  },
29
29
  getActionsApi: () => {
30
30
  return {
31
- updateFieldValue: () => {
32
- /* nothing */
31
+ updateFieldValue: (propName, value) => {
32
+ configProps.value = value;
33
33
  },
34
- triggerFieldChange: () => {
35
- /* nothing */
34
+ triggerFieldChange: (propName, value) => {
35
+ configProps.value = value;
36
36
  }
37
37
  };
38
38
  },
@@ -52,7 +52,6 @@ export const PegaDxilMyParagraph: Story = {
52
52
  helperText: configProps.helperText,
53
53
  testId: configProps.testId,
54
54
  bReadonly$: configProps.readOnly,
55
- bDisabled$: configProps.disabled,
56
55
  bRequired$: configProps.required,
57
56
  displayMode$: configProps.displayMode
58
57
  }
@@ -46,7 +46,6 @@ export const PegaDxilMyPercentage: Story = {
46
46
  helperText: configProps.helperText,
47
47
  testId: configProps.testId,
48
48
  bReadonly$: configProps.readOnly,
49
- bDisabled$: configProps.disabled,
50
49
  bRequired$: configProps.required,
51
50
  displayMode$: configProps.displayMode
52
51
  }
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyPhoneComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -45,8 +45,8 @@ export const PegaDxilMyPhone: Story = {
45
45
  label$: configProps.label,
46
46
  helperText: configProps.helperText,
47
47
  testId: configProps.testId,
48
- bReadonly$: configProps.readOnly,
49
48
  bDisabled$: configProps.disabled,
49
+ bReadonly$: configProps.readOnly,
50
50
  bRequired$: configProps.required,
51
51
  displayMode$: configProps.displayMode
52
52
  }
@@ -11,6 +11,8 @@
11
11
  [preferredCountries]="['us']"
12
12
  [enablePlaceholder]="true"
13
13
  [enableSearch]="true"
14
+ [required]="bRequired$"
15
+ [disabled]="bDisabled$"
14
16
  (change)="fieldOnChange()"
15
17
  (blur)="fieldOnBlur()"
16
18
  >
@@ -51,11 +51,11 @@ const meta: Meta<PegaDxilMyPicklistComponent> = {
51
51
  },
52
52
  getActionsApi: () => {
53
53
  return {
54
- updateFieldValue: () => {
55
- /* nothing */
54
+ updateFieldValue: (propName, value) => {
55
+ configProps.value = value;
56
56
  },
57
- triggerFieldChange: () => {
58
- /* nothing */
57
+ triggerFieldChange: (propName, value) => {
58
+ configProps.value = value;
59
59
  }
60
60
  };
61
61
  },
@@ -12,6 +12,7 @@
12
12
  <mat-select
13
13
  [value]="value$"
14
14
  [required]="bRequired$"
15
+ [disabled]="bDisabled$"
15
16
  [attr.data-test-id]="testId"
16
17
  (selectionChange)="fieldOnChange($event)"
17
18
  [formControl]="fieldControl"
@@ -121,7 +121,6 @@ export class PegaDxilMyPicklistComponent implements OnInit, OnDestroy {
121
121
  // call updateSelf when initializing
122
122
  this.checkAndUpdate();
123
123
  // this should get called afer checkAndUpdate
124
- this.getDatapageData();
125
124
 
126
125
  if (this.formGroup$) {
127
126
  // add control to formGroup
@@ -253,7 +252,7 @@ export class PegaDxilMyPicklistComponent implements OnInit, OnDestroy {
253
252
  );
254
253
 
255
254
  this.localizedValue = this.options$?.find(opt => opt.key === this.value$)?.value || this.localizedValue;
256
-
255
+ this.getDatapageData();
257
256
  // trigger display of error message with field control
258
257
  if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
259
258
  const timer = interval(100).subscribe(() => {
@@ -24,7 +24,7 @@
24
24
  <mat-radio-button
25
25
  *ngFor="let opt of options$"
26
26
  [checked]="isSelected(opt.key)"
27
- [disabled]="bReadonly$"
27
+ [disabled]="bDisabled$ || bReadonly$"
28
28
  [value]="opt.key"
29
29
  class="psdk-radio-button"
30
30
  >
@@ -38,11 +38,11 @@ const meta: Meta<PegaDxilMySearchboxComponent> = {
38
38
  },
39
39
  getActionsApi: () => {
40
40
  return {
41
- updateFieldValue: () => {
42
- /* nothing */
41
+ updateFieldValue: (propName, value) => {
42
+ configProps.value = value;
43
43
  },
44
- triggerFieldChange: () => {
45
- /* nothing */
44
+ triggerFieldChange: (propName, value) => {
45
+ configProps.value = value;
46
46
  }
47
47
  };
48
48
  },
@@ -62,7 +62,6 @@ export const PegaDxilMySearchbox: Story = {
62
62
  helperText: configProps.helperText,
63
63
  testId: configProps.testId,
64
64
  bReadonly$: configProps.readOnly,
65
- bDisabled$: configProps.disabled,
66
65
  bRequired$: configProps.required,
67
66
  displayMode$: configProps.displayMode
68
67
  }
@@ -11,7 +11,6 @@
11
11
  [placeholder]="placeholder"
12
12
  [formControl]="fieldControl"
13
13
  [attr.data-test-id]="testId"
14
- [value]="value$"
15
14
  [required]="bRequired$"
16
15
  [matAutocomplete]="auto"
17
16
  (input)="fieldOnChange($event)"
@@ -14,6 +14,10 @@ import { DatapageService } from '@pega/angular-sdk-components';
14
14
  import { handleEvent } from '@pega/angular-sdk-components';
15
15
  import { PConnFieldProps } from '@pega/angular-sdk-components';
16
16
 
17
+ interface IOption {
18
+ key: string;
19
+ value: string;
20
+ }
17
21
  interface PegaDxilMySearchboxProps extends PConnFieldProps {
18
22
  // If any, enter additional props that only exist on AutoComplete here
19
23
  deferDatasource?: boolean;
@@ -108,6 +112,13 @@ export class PegaDxilMySearchboxComponent implements OnInit, OnDestroy {
108
112
  );
109
113
  }
110
114
 
115
+ setOptions(options: IOption[]) {
116
+ this.options$ = options;
117
+ const index = this.options$?.findIndex(element => element.key === this.configProps$.value);
118
+ this.value$ = index > -1 ? this.options$[index].value : this.configProps$.value;
119
+ this.fieldControl.setValue(this.value$);
120
+ }
121
+
111
122
  ngOnDestroy(): void {
112
123
  if (this.formGroup$) {
113
124
  this.formGroup$.removeControl(this.controlName$);
@@ -149,6 +160,7 @@ export class PegaDxilMySearchboxComponent implements OnInit, OnDestroy {
149
160
  if (this.configProps$.value != undefined) {
150
161
  const index = this.options$?.findIndex(element => element.key === this.configProps$.value);
151
162
  this.value$ = index > -1 ? this.options$[index].value : this.configProps$.value;
163
+ this.fieldControl.setValue(this.value$);
152
164
  }
153
165
 
154
166
  this.setPropertyValuesFromProps();
@@ -191,7 +203,8 @@ export class PegaDxilMySearchboxComponent implements OnInit, OnDestroy {
191
203
 
192
204
  this.componentReference = this.pConn$.getStateProps().value;
193
205
  if (this.listType === 'associated') {
194
- this.options$ = this.utils.getOptionList(this.configProps$, this.pConn$.getDataObject('')); // 1st arg empty string until typedef marked correctly
206
+ const optionsList = this.utils.getOptionList(this.configProps$, this.pConn$.getDataObject('')); // 1st arg empty string until typedef marked correctly
207
+ this.setOptions(optionsList);
195
208
  }
196
209
 
197
210
  if (!this.displayMode$ && this.listType !== 'associated') {
@@ -263,7 +276,7 @@ export class PegaDxilMySearchboxComponent implements OnInit, OnDestroy {
263
276
  };
264
277
  optionsData.push(obj);
265
278
  });
266
- this.options$ = optionsData;
279
+ this.setOptions(optionsData);
267
280
  }
268
281
 
269
282
  flattenParameters(params = {}) {
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyTextComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -47,8 +47,6 @@ export const PegaDxilMyText: Story = {
47
47
  testId: configProps.testId,
48
48
  placeholder: configProps.placeholder,
49
49
  bReadonly$: configProps.readOnly,
50
- bDisabled$: configProps.disabled,
51
- bRequired$: configProps.required,
52
- bHideLabel$: configProps.hideLabel
50
+ bRequired$: configProps.required
53
51
  }
54
52
  };
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyTextInputComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -47,7 +47,6 @@ export const PegaDxilMyTextInput: Story = {
47
47
  placeholder: configProps.placeholder,
48
48
  testId: configProps.testId,
49
49
  bReadonly$: configProps.readOnly,
50
- bDisabled$: configProps.disabled,
51
50
  bRequired$: configProps.required,
52
51
  displayMode$: configProps.displayMode
53
52
  }
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyTimeOfDayComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -46,7 +46,6 @@ export const PegaDxilMyTimeOfDay: Story = {
46
46
  helperText: configProps.helperText,
47
47
  placeholder: configProps.placeholder,
48
48
  bReadonly$: configProps.readOnly,
49
- bDisabled$: configProps.disabled,
50
49
  bRequired$: configProps.required,
51
50
  displayMode$: configProps.displayMode
52
51
  }
@@ -22,11 +22,11 @@ const meta: Meta<PegaDxilMyUrlComponent> = {
22
22
  },
23
23
  getActionsApi: () => {
24
24
  return {
25
- updateFieldValue: () => {
26
- /* nothing */
25
+ updateFieldValue: (propName, value) => {
26
+ configProps.value = value;
27
27
  },
28
- triggerFieldChange: () => {
29
- /* nothing */
28
+ triggerFieldChange: (propName, value) => {
29
+ configProps.value = value;
30
30
  }
31
31
  };
32
32
  },
@@ -46,8 +46,8 @@ export const PegaDxilMyUrl: Story = {
46
46
  helperText: configProps.helperText,
47
47
  placeholder: configProps.placeholder,
48
48
  bReadonly$: configProps.readOnly,
49
- bDisabled$: configProps.disabled,
50
49
  bRequired$: configProps.required,
51
- displayMode$: configProps.displayMode
50
+ displayMode$: configProps.displayMode,
51
+ value$: configProps.value
52
52
  }
53
53
  };
@@ -11,7 +11,6 @@
11
11
  [placeholder]="placeholder"
12
12
  [formControl]="fieldControl"
13
13
  [attr.data-test-id]="testId"
14
- [value]="value$"
15
14
  [required]="bRequired$"
16
15
  [matAutocomplete]="auto"
17
16
  (input)="fieldOnChange($event)"
@@ -14,6 +14,10 @@ import { DatapageService } from '@pega/angular-sdk-components';
14
14
  import { handleEvent } from '@pega/angular-sdk-components';
15
15
  import { PConnFieldProps } from '@pega/angular-sdk-components';
16
16
 
17
+ interface IOption {
18
+ key: string;
19
+ value: string;
20
+ }
17
21
  interface AutoCompleteProps extends PConnFieldProps {
18
22
  // If any, enter additional props that only exist on AutoComplete here
19
23
  deferDatasource?: boolean;
@@ -108,6 +112,13 @@ export class AutoCompleteComponent implements OnInit, OnDestroy {
108
112
  );
109
113
  }
110
114
 
115
+ setOptions(options: IOption[]) {
116
+ this.options$ = options;
117
+ const index = this.options$?.findIndex(element => element.key === this.configProps$.value);
118
+ this.value$ = index > -1 ? this.options$[index].value : this.configProps$.value;
119
+ this.fieldControl.setValue(this.value$);
120
+ }
121
+
111
122
  ngOnDestroy(): void {
112
123
  if (this.formGroup$) {
113
124
  this.formGroup$.removeControl(this.controlName$);
@@ -149,6 +160,7 @@ export class AutoCompleteComponent implements OnInit, OnDestroy {
149
160
  if (this.configProps$.value != undefined) {
150
161
  const index = this.options$?.findIndex(element => element.key === this.configProps$.value);
151
162
  this.value$ = index > -1 ? this.options$[index].value : this.configProps$.value;
163
+ this.fieldControl.setValue(this.value$);
152
164
  }
153
165
 
154
166
  this.setPropertyValuesFromProps();
@@ -191,7 +203,8 @@ export class AutoCompleteComponent implements OnInit, OnDestroy {
191
203
 
192
204
  this.componentReference = this.pConn$.getStateProps().value;
193
205
  if (this.listType === 'associated') {
194
- this.options$ = this.utils.getOptionList(this.configProps$, this.pConn$.getDataObject('')); // 1st arg empty string until typedef marked correctly
206
+ const optionsList = this.utils.getOptionList(this.configProps$, this.pConn$.getDataObject('')); // 1st arg empty string until typedef marked correctly
207
+ this.setOptions(optionsList);
195
208
  }
196
209
 
197
210
  if (!this.displayMode$ && this.listType !== 'associated') {
@@ -263,7 +276,7 @@ export class AutoCompleteComponent implements OnInit, OnDestroy {
263
276
  };
264
277
  optionsData.push(obj);
265
278
  });
266
- this.options$ = optionsData;
279
+ this.setOptions(optionsData);
267
280
  }
268
281
 
269
282
  flattenParameters(params = {}) {
@@ -199,7 +199,7 @@ export class DateTimeComponent implements OnInit, OnDestroy {
199
199
  if (typeof event.value === 'object') {
200
200
  // convert date to pega "date" format
201
201
  const dateTime = dayjs(event.value?.toISOString());
202
- const timeZoneDateTime = dayjs.tz(dateTime.format('YYYY-MM-DDTHH:mm:ss'), this.timezone);
202
+ const timeZoneDateTime = (dayjs as any).tz(dateTime.format('YYYY-MM-DDTHH:mm:ss'), this.timezone);
203
203
  event.value = timeZoneDateTime && timeZoneDateTime.isValid() ? timeZoneDateTime.toISOString() : '';
204
204
  }
205
205
  handleEvent(this.actionsApi, 'changeNblur', this.propName, event.value);
@@ -121,7 +121,6 @@ export class DropdownComponent implements OnInit, OnDestroy {
121
121
  // call updateSelf when initializing
122
122
  this.checkAndUpdate();
123
123
  // this should get called afer checkAndUpdate
124
- this.getDatapageData();
125
124
 
126
125
  if (this.formGroup$) {
127
126
  // add control to formGroup
@@ -253,7 +252,7 @@ export class DropdownComponent implements OnInit, OnDestroy {
253
252
  );
254
253
 
255
254
  this.localizedValue = this.options$?.find(opt => opt.key === this.value$)?.value || this.localizedValue;
256
-
255
+ this.getDatapageData();
257
256
  // trigger display of error message with field control
258
257
  if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
259
258
  const timer = interval(100).subscribe(() => {
@@ -4,6 +4,6 @@
4
4
  "label": "Phone",
5
5
  "description": "Phone",
6
6
  "type": "Field",
7
- "subtype": "DATA_CAPTURE",
7
+ "subtype": "Text-Phone",
8
8
  "properties": []
9
9
  }
@@ -168,7 +168,11 @@ export class UserReferenceComponent implements OnInit, OnDestroy {
168
168
  this.placeholder = placeholder || '';
169
169
  this.displayMode$ = displayMode;
170
170
 
171
- this.value$ = value && typeof value === 'object' && value.userName ? value.userName : (value ?? '');
171
+ if (value && typeof value === 'object') {
172
+ this.value$ = value.userName ? value.userName : '';
173
+ } else {
174
+ this.value$ = value || '';
175
+ }
172
176
 
173
177
  const { readOnly, required } = props;
174
178
  [this.bReadonly$, this.bRequired$] = [readOnly, required].map(prop => prop === true || (typeof prop === 'string' && prop === 'true'));
@@ -171,9 +171,9 @@ export class RootContainerComponent implements OnInit, OnDestroy {
171
171
 
172
172
  async configureModalContainer() {
173
173
  const sdkConfig = await this.scService.getSdkConfig();
174
- const showModalsInEmbedMode = sdkConfig.serverConfig.showModalsInEmbedMode;
174
+ const showModalsInEmbeddedMode = sdkConfig.serverConfig.showModalsInEmbeddedMode;
175
175
 
176
- if (!this.displayOnlyFA$ || showModalsInEmbedMode) {
176
+ if (!this.displayOnlyFA$ || showModalsInEmbeddedMode) {
177
177
  const configObjModal = PCore.createPConnect({
178
178
  meta: {
179
179
  type: 'ModalViewContainer',
@@ -14,7 +14,7 @@
14
14
  <button mat-raised-button color="primary" (click)="onConfirmViewClose()">Done</button>
15
15
  </div>
16
16
  </div>
17
- <div *ngIf="toDoList?.length > 0">
17
+ <div *ngIf="!showConfirmView && toDoList?.length > 0">
18
18
  <component-mapper
19
19
  name="Todo"
20
20
  [props]="{ pConn$, datasource$: { source: toDoList }, headerText$: 'Tasks', type$: CONSTS.TODO, isConfirm: true }"
@@ -5,6 +5,10 @@
5
5
  margin-top: 0.5rem;
6
6
  margin-bottom: 0.5rem;
7
7
  overflow-y: auto;
8
+ box-shadow:
9
+ 0px 2px 1px -1px rgba(0, 0, 0, 0.2),
10
+ 0px 1px 1px 0px rgba(0, 0, 0, 0.14),
11
+ 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
8
12
  }
9
13
 
10
14
  table {