@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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pega/dx-component-builder-sdk",
3
- "version": "0.242.19",
3
+ "version": "0.242.21",
4
4
  "description": "Utility for building custom UI components",
5
5
  "bin": "./bin/index.js",
6
6
  "scripts": {
@@ -20,6 +20,8 @@
20
20
  <mat-checkbox
21
21
  [labelPosition]="'after'"
22
22
  [checked]="item.selected"
23
+ [disabled]="bDisabled$ || bReadonly$"
24
+ [required]="bRequired$"
23
25
  [attr.data-test-id]="testId + ':' + item.value"
24
26
  (change)="handleChangeMultiMode($event, item)"
25
27
  (blur)="fieldOnBlur($event)"
@@ -31,6 +33,8 @@
31
33
  <mat-checkbox
32
34
  [labelPosition]="'after'"
33
35
  [checked]="isChecked$"
36
+ [disabled]="bDisabled$ || bReadonly$"
37
+ [required]="bRequired$"
34
38
  [attr.data-test-id]="testId"
35
39
  [formControl]="fieldControl"
36
40
  (change)="fieldOnChange($event)"
@@ -17,10 +17,11 @@
17
17
  type="text"
18
18
  [value]="value$"
19
19
  [required]="bRequired$"
20
+ [disabled]="bDisabled$"
20
21
  [formControl]="fieldControl"
21
22
  (dateChange)="fieldOnDateChange($event)"
22
23
  />
23
- <mat-datepicker-toggle matSuffix [for]="pegadate"></mat-datepicker-toggle>
24
+ <mat-datepicker-toggle matSuffix [for]="pegadate" [disabled]="bDisabled$"></mat-datepicker-toggle>
24
25
  <mat-datepicker #pegadate [startAt]="value$"></mat-datepicker>
25
26
  <mat-error *ngIf="fieldControl.invalid">{{ getErrorMessage() }}</mat-error>
26
27
  </mat-form-field>
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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
  },
@@ -16,9 +16,10 @@
16
16
  [formControl]="fieldControl"
17
17
  (dateTimeChange)="fieldOnDateChange($event)"
18
18
  [required]="bRequired$"
19
+ [readonly]="bDisabled$"
19
20
  />
20
21
  <mat-datepicker-toggle matSuffix [owlDateTimeTrigger]="dtPicker"></mat-datepicker-toggle>
21
- <owl-date-time #dtPicker></owl-date-time>
22
+ <owl-date-time #dtPicker [disabled]="bDisabled$"></owl-date-time>
22
23
  <mat-error *ngIf="fieldControl?.invalid">{{ getErrorMessage() }}</mat-error>
23
24
  </mat-form-field>
24
25
  </div>
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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
  },
@@ -49,7 +49,6 @@ export const {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -46,7 +46,6 @@ export const {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -46,7 +46,6 @@ export const {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -47,7 +47,5 @@ export default meta;
47
47
  type Story = StoryObj<{{COMPONENT_CLASS_NAME}}Component>;
48
48
 
49
49
  export const {{COMPONENT_CLASS_NAME}}: Story = {
50
- args: {
51
- countryCode: 'USA'
52
- }
50
+ args: {}
53
51
  };
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -51,11 +51,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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
  },
@@ -14,6 +14,7 @@
14
14
  <mat-select
15
15
  [value]="value$"
16
16
  [required]="bRequired$"
17
+ [disabled]="bDisabled$"
17
18
  [attr.data-test-id]="testId"
18
19
  (selectionChange)="fieldOnChange($event)"
19
20
  [formControl]="fieldControl"
@@ -121,7 +121,6 @@ export class {{COMPONENT_CLASS_NAME}}Component 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 {{COMPONENT_CLASS_NAME}}Component 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(() => {
@@ -38,11 +38,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -13,7 +13,6 @@
13
13
  [placeholder]="placeholder"
14
14
  [formControl]="fieldControl"
15
15
  [attr.data-test-id]="testId"
16
- [value]="value$"
17
16
  [required]="bRequired$"
18
17
  [matAutocomplete]="auto"
19
18
  (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 {{COMPONENT_CLASS_NAME}}Props 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 {{COMPONENT_CLASS_NAME}}Component 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 {{COMPONENT_CLASS_NAME}}Component 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 {{COMPONENT_CLASS_NAME}}Component 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 {{COMPONENT_CLASS_NAME}}Component 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 = {}) {
@@ -26,7 +26,7 @@
26
26
  <mat-radio-button
27
27
  *ngFor="let opt of options$"
28
28
  [checked]="isSelected(opt.key)"
29
- [disabled]="bReadonly$"
29
+ [disabled]="bDisabled$ || bReadonly$"
30
30
  [value]="opt.key"
31
31
  class="psdk-radio-button"
32
32
  >
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -28,11 +28,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  }
@@ -13,6 +13,8 @@
13
13
  [preferredCountries]="['us']"
14
14
  [enablePlaceholder]="true"
15
15
  [enableSearch]="true"
16
+ [required]="bRequired$"
17
+ [disabled]="bDisabled$"
16
18
  (change)="fieldOnChange()"
17
19
  (blur)="fieldOnBlur()"
18
20
  >
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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
  };
@@ -22,11 +22,11 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
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 {{COMPONENT_CLASS_NAME}}: 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<PegaDxilMyTestTextComponent> = {
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 PegaDxilMyTestText: 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
  };
@@ -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 }"