@pega/sdk 0.0.3 → 0.0.4
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/LICENSE +183 -183
- package/README.md +6 -6
- package/SECURITY.md +2 -1
- package/dist/index.js +12 -55
- package/package.json +7 -6
- package/templates/angular-sdk-reference/package.json +15 -15
- package/templates/angular-sdk-reference/tsconfig.json +2 -2
- package/templates/react-native-sdk-reference/App.tsx +2 -4
- package/templates/react-native-sdk-reference/package.json +6 -6
- package/templates/react-native-sdk-reference/tsconfig.json +2 -1
- package/templates/react-sdk-reference/.claude/instructions/component-map.md +1 -1
- package/templates/react-sdk-reference/.claude/instructions/field-component.md +4 -0
- package/templates/react-sdk-reference/.claude/instructions/template-component.md +2 -1
- package/templates/react-sdk-reference/.claude/instructions/widget-component.md +1 -0
- package/templates/react-sdk-reference/.claude/prompts/add-component.md +18 -10
- package/templates/react-sdk-reference/.claude/prompts/component-manifest.json +165 -83
- package/templates/react-sdk-reference/.claude/prompts/generate-all-components.md +26 -17
- package/templates/react-sdk-reference/.claude/prompts/generate-dse-components.md +27 -13
- package/templates/react-sdk-reference/.claude/prompts/generate-field-components.md +42 -28
- package/templates/react-sdk-reference/.claude/prompts/generate-template-components.md +48 -34
- package/templates/react-sdk-reference/.claude/prompts/generate-widget-components.md +25 -11
- package/templates/react-sdk-reference/.claude/prompts/identify-components.md +65 -65
- package/templates/react-sdk-reference/.claude/skills/component-contracts.md +99 -99
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/AlertBanner.md +40 -38
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Banner.md +54 -51
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/CaseSummaryFields.md +51 -46
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/DetailsFields.md +32 -28
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroup.md +38 -35
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroupList.md +25 -23
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldValueList.md +29 -26
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Operator.md +32 -26
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Pulse.md +17 -15
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/RichTextEditor.md +85 -59
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/WssQuickCreate.md +49 -47
- package/templates/react-sdk-reference/.claude/skills/design-system-extension.md +13 -11
- package/templates/react-sdk-reference/.claude/skills/field-components.md +9 -8
- package/templates/react-sdk-reference/.claude/skills/field-skills/AutoComplete.md +27 -26
- package/templates/react-sdk-reference/.claude/skills/field-skills/CancelAlert.md +30 -22
- package/templates/react-sdk-reference/.claude/skills/field-skills/Checkbox.md +60 -43
- package/templates/react-sdk-reference/.claude/skills/field-skills/Currency.md +23 -20
- package/templates/react-sdk-reference/.claude/skills/field-skills/Date.md +19 -17
- package/templates/react-sdk-reference/.claude/skills/field-skills/DateTime.md +18 -15
- package/templates/react-sdk-reference/.claude/skills/field-skills/Decimal.md +22 -21
- package/templates/react-sdk-reference/.claude/skills/field-skills/Dropdown.md +50 -30
- package/templates/react-sdk-reference/.claude/skills/field-skills/Email.md +20 -18
- package/templates/react-sdk-reference/.claude/skills/field-skills/Group.md +21 -15
- package/templates/react-sdk-reference/.claude/skills/field-skills/Integer.md +17 -16
- package/templates/react-sdk-reference/.claude/skills/field-skills/Location.md +30 -21
- package/templates/react-sdk-reference/.claude/skills/field-skills/Multiselect.md +66 -42
- package/templates/react-sdk-reference/.claude/skills/field-skills/ObjectReference.md +27 -18
- package/templates/react-sdk-reference/.claude/skills/field-skills/Percentage.md +22 -21
- package/templates/react-sdk-reference/.claude/skills/field-skills/Phone.md +36 -17
- package/templates/react-sdk-reference/.claude/skills/field-skills/RadioButtons.md +56 -35
- package/templates/react-sdk-reference/.claude/skills/field-skills/RichText.md +23 -12
- package/templates/react-sdk-reference/.claude/skills/field-skills/ScalarList.md +41 -31
- package/templates/react-sdk-reference/.claude/skills/field-skills/SelectableCard.md +70 -55
- package/templates/react-sdk-reference/.claude/skills/field-skills/SemanticLink.md +34 -27
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextArea.md +24 -22
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextContent.md +38 -22
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextInput.md +24 -21
- package/templates/react-sdk-reference/.claude/skills/field-skills/Time.md +16 -15
- package/templates/react-sdk-reference/.claude/skills/field-skills/URL.md +16 -15
- package/templates/react-sdk-reference/.claude/skills/field-skills/UserReference.md +57 -34
- package/templates/react-sdk-reference/.claude/skills/run-and-verify.md +10 -8
- package/templates/react-sdk-reference/.claude/skills/template-components.md +7 -8
- package/templates/react-sdk-reference/.claude/skills/template-skills/AdvancedSearch.md +27 -21
- package/templates/react-sdk-reference/.claude/skills/template-skills/AppShell.md +17 -15
- package/templates/react-sdk-reference/.claude/skills/template-skills/BannerPage.md +19 -16
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseSummary.md +19 -13
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseView.md +23 -17
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseViewActionsMenu.md +34 -29
- package/templates/react-sdk-reference/.claude/skills/template-skills/Confirmation.md +18 -16
- package/templates/react-sdk-reference/.claude/skills/template-skills/DataReference.md +36 -32
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultForm.md +23 -21
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultPage.md +31 -29
- package/templates/react-sdk-reference/.claude/skills/template-skills/Details.md +19 -17
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsSubTabs.md +22 -20
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsThreeColumn.md +19 -17
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsTwoColumn.md +19 -17
- package/templates/react-sdk-reference/.claude/skills/template-skills/DynamicTabs.md +15 -10
- package/templates/react-sdk-reference/.claude/skills/template-skills/FieldGroupTemplate.md +19 -16
- package/templates/react-sdk-reference/.claude/skills/template-skills/HierarchicalForm.md +18 -15
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboard.md +17 -13
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboardPage.md +10 -13
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListPage.md +9 -7
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListView.md +33 -30
- package/templates/react-sdk-reference/.claude/skills/template-skills/MultiReferenceReadOnly.md +13 -11
- package/templates/react-sdk-reference/.claude/skills/template-skills/NarrowWide.md +42 -40
- package/templates/react-sdk-reference/.claude/skills/template-skills/OneColumn.md +25 -20
- package/templates/react-sdk-reference/.claude/skills/template-skills/PromotedFilters.md +25 -19
- package/templates/react-sdk-reference/.claude/skills/template-skills/SelfServiceCaseView.md +36 -29
- package/templates/react-sdk-reference/.claude/skills/template-skills/SimpleTable.md +31 -27
- package/templates/react-sdk-reference/.claude/skills/template-skills/SingleReferenceReadOnly.md +29 -24
- package/templates/react-sdk-reference/.claude/skills/template-skills/SubTabs.md +14 -11
- package/templates/react-sdk-reference/.claude/skills/template-skills/TwoColumn.md +34 -32
- package/templates/react-sdk-reference/.claude/skills/template-skills/WideNarrow.md +48 -46
- package/templates/react-sdk-reference/.claude/skills/template-skills/WssNavBar.md +23 -19
- package/templates/react-sdk-reference/.claude/skills/widget-components.md +11 -22
- package/templates/react-sdk-reference/.claude/skills/widget-skills/AppAnnouncement.md +22 -20
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Attachment.md +33 -28
- package/templates/react-sdk-reference/.claude/skills/widget-skills/CaseHistory.md +18 -15
- package/templates/react-sdk-reference/.claude/skills/widget-skills/FileUtility.md +43 -37
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Followers.md +23 -19
- package/templates/react-sdk-reference/.claude/skills/widget-skills/QuickCreate.md +20 -16
- package/templates/react-sdk-reference/.claude/skills/widget-skills/SummaryItem.md +26 -24
- package/templates/react-sdk-reference/.claude/skills/widget-skills/ToDo.md +43 -35
- package/templates/react-sdk-reference/.cursor/rules/prompts/component-manifest.json +165 -83
- package/templates/react-sdk-reference/.github/agents/implementation-expert.agent.md +135 -0
- package/templates/react-sdk-reference/.github/instructions/component-map.instructions.md +2 -2
- package/templates/react-sdk-reference/.github/instructions/dse-component.instructions.md +1 -1
- package/templates/react-sdk-reference/.github/instructions/field-component.instructions.md +5 -1
- package/templates/react-sdk-reference/.github/instructions/template-component.instructions.md +3 -2
- package/templates/react-sdk-reference/.github/instructions/widget-component.instructions.md +2 -1
- package/templates/react-sdk-reference/.github/prompts/add-component.prompt.md +58 -15
- package/templates/react-sdk-reference/.github/prompts/component-manifest.json +165 -83
- package/templates/react-sdk-reference/.github/prompts/generate-all-components.prompt.md +322 -65
- package/templates/react-sdk-reference/.github/prompts/generate-dse-components.prompt.md +124 -50
- package/templates/react-sdk-reference/.github/prompts/generate-field-components.prompt.md +145 -66
- package/templates/react-sdk-reference/.github/prompts/generate-template-components.prompt.md +146 -73
- package/templates/react-sdk-reference/.github/prompts/generate-widget-components.prompt.md +128 -49
- package/templates/react-sdk-reference/.github/prompts/identify-components.prompt.md +65 -65
- package/templates/react-sdk-reference/.github/skills/component-contracts.md +99 -99
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/AlertBanner.md +40 -38
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Banner.md +54 -51
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/CaseSummaryFields.md +51 -46
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/DetailsFields.md +32 -28
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroup.md +38 -35
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroupList.md +25 -23
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldValueList.md +29 -26
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Operator.md +32 -26
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Pulse.md +17 -15
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/RichTextEditor.md +85 -59
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/WssQuickCreate.md +49 -47
- package/templates/react-sdk-reference/.github/skills/design-system-extension.md +13 -11
- package/templates/react-sdk-reference/.github/skills/field-components.md +9 -8
- package/templates/react-sdk-reference/.github/skills/field-skills/AutoComplete.md +27 -26
- package/templates/react-sdk-reference/.github/skills/field-skills/CancelAlert.md +30 -22
- package/templates/react-sdk-reference/.github/skills/field-skills/Checkbox.md +60 -43
- package/templates/react-sdk-reference/.github/skills/field-skills/Currency.md +23 -20
- package/templates/react-sdk-reference/.github/skills/field-skills/Date.md +19 -17
- package/templates/react-sdk-reference/.github/skills/field-skills/DateTime.md +18 -15
- package/templates/react-sdk-reference/.github/skills/field-skills/Decimal.md +22 -21
- package/templates/react-sdk-reference/.github/skills/field-skills/Dropdown.md +50 -30
- package/templates/react-sdk-reference/.github/skills/field-skills/Email.md +20 -18
- package/templates/react-sdk-reference/.github/skills/field-skills/Group.md +21 -15
- package/templates/react-sdk-reference/.github/skills/field-skills/Integer.md +17 -16
- package/templates/react-sdk-reference/.github/skills/field-skills/Location.md +30 -21
- package/templates/react-sdk-reference/.github/skills/field-skills/Multiselect.md +66 -42
- package/templates/react-sdk-reference/.github/skills/field-skills/ObjectReference.md +27 -18
- package/templates/react-sdk-reference/.github/skills/field-skills/Percentage.md +22 -21
- package/templates/react-sdk-reference/.github/skills/field-skills/Phone.md +36 -17
- package/templates/react-sdk-reference/.github/skills/field-skills/RadioButtons.md +56 -35
- package/templates/react-sdk-reference/.github/skills/field-skills/RichText.md +23 -12
- package/templates/react-sdk-reference/.github/skills/field-skills/ScalarList.md +41 -31
- package/templates/react-sdk-reference/.github/skills/field-skills/SelectableCard.md +70 -55
- package/templates/react-sdk-reference/.github/skills/field-skills/SemanticLink.md +34 -27
- package/templates/react-sdk-reference/.github/skills/field-skills/TextArea.md +24 -22
- package/templates/react-sdk-reference/.github/skills/field-skills/TextContent.md +38 -22
- package/templates/react-sdk-reference/.github/skills/field-skills/TextInput.md +24 -21
- package/templates/react-sdk-reference/.github/skills/field-skills/Time.md +16 -15
- package/templates/react-sdk-reference/.github/skills/field-skills/URL.md +16 -15
- package/templates/react-sdk-reference/.github/skills/field-skills/UserReference.md +57 -34
- package/templates/react-sdk-reference/.github/skills/run-and-verify.md +10 -8
- package/templates/react-sdk-reference/.github/skills/template-components.md +7 -8
- package/templates/react-sdk-reference/.github/skills/template-skills/AdvancedSearch.md +27 -21
- package/templates/react-sdk-reference/.github/skills/template-skills/AppShell.md +17 -15
- package/templates/react-sdk-reference/.github/skills/template-skills/BannerPage.md +19 -16
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseSummary.md +19 -13
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseView.md +23 -17
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseViewActionsMenu.md +34 -29
- package/templates/react-sdk-reference/.github/skills/template-skills/Confirmation.md +18 -16
- package/templates/react-sdk-reference/.github/skills/template-skills/DataReference.md +36 -32
- package/templates/react-sdk-reference/.github/skills/template-skills/DefaultForm.md +23 -21
- package/templates/react-sdk-reference/.github/skills/template-skills/DefaultPage.md +31 -29
- package/templates/react-sdk-reference/.github/skills/template-skills/Details.md +19 -17
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsSubTabs.md +22 -20
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsThreeColumn.md +19 -17
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsTwoColumn.md +19 -17
- package/templates/react-sdk-reference/.github/skills/template-skills/DynamicTabs.md +15 -10
- package/templates/react-sdk-reference/.github/skills/template-skills/FieldGroupTemplate.md +19 -16
- package/templates/react-sdk-reference/.github/skills/template-skills/HierarchicalForm.md +18 -15
- package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboard.md +17 -13
- package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboardPage.md +10 -13
- package/templates/react-sdk-reference/.github/skills/template-skills/ListPage.md +9 -7
- package/templates/react-sdk-reference/.github/skills/template-skills/ListView.md +33 -30
- package/templates/react-sdk-reference/.github/skills/template-skills/MultiReferenceReadOnly.md +13 -11
- package/templates/react-sdk-reference/.github/skills/template-skills/NarrowWide.md +42 -40
- package/templates/react-sdk-reference/.github/skills/template-skills/OneColumn.md +25 -20
- package/templates/react-sdk-reference/.github/skills/template-skills/PromotedFilters.md +25 -19
- package/templates/react-sdk-reference/.github/skills/template-skills/SelfServiceCaseView.md +36 -29
- package/templates/react-sdk-reference/.github/skills/template-skills/SimpleTable.md +31 -27
- package/templates/react-sdk-reference/.github/skills/template-skills/SingleReferenceReadOnly.md +29 -24
- package/templates/react-sdk-reference/.github/skills/template-skills/SubTabs.md +14 -11
- package/templates/react-sdk-reference/.github/skills/template-skills/TwoColumn.md +34 -32
- package/templates/react-sdk-reference/.github/skills/template-skills/WideNarrow.md +48 -46
- package/templates/react-sdk-reference/.github/skills/template-skills/WssNavBar.md +23 -19
- package/templates/react-sdk-reference/.github/skills/widget-components.md +11 -22
- package/templates/react-sdk-reference/.github/skills/widget-skills/AppAnnouncement.md +22 -20
- package/templates/react-sdk-reference/.github/skills/widget-skills/Attachment.md +33 -28
- package/templates/react-sdk-reference/.github/skills/widget-skills/CaseHistory.md +18 -15
- package/templates/react-sdk-reference/.github/skills/widget-skills/FileUtility.md +43 -37
- package/templates/react-sdk-reference/.github/skills/widget-skills/Followers.md +23 -19
- package/templates/react-sdk-reference/.github/skills/widget-skills/QuickCreate.md +20 -16
- package/templates/react-sdk-reference/.github/skills/widget-skills/SummaryItem.md +26 -24
- package/templates/react-sdk-reference/.github/skills/widget-skills/ToDo.md +43 -35
- package/templates/react-sdk-reference/AGENTS.md +0 -1
- package/templates/react-sdk-reference/index.html +1 -4
- package/templates/react-sdk-reference/package.json +15 -15
- package/templates/react-sdk-reference/pega-sdk-react-0.1.0.tgz +0 -0
- package/templates/react-sdk-reference/src/AppSelector.tsx +6 -6
- package/templates/react-sdk-reference/src/FallbackComponent.tsx +2 -6
- package/templates/react-sdk-reference/src/MashupApp.styles.ts +269 -41
- package/templates/react-sdk-reference/src/MashupApp.tsx +186 -85
- package/templates/react-sdk-reference/src/PortalApp.tsx +10 -34
- package/templates/react-sdk-reference/src/components/component-map.ts +2 -7
- package/templates/react-sdk-reference/src/components/designSystemExtension/AlertBanner/AlertBanner.tsx +7 -28
- package/templates/react-sdk-reference/src/components/designSystemExtension/Banner/Banner.tsx +12 -7
- package/templates/react-sdk-reference/src/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +35 -33
- package/templates/react-sdk-reference/src/components/designSystemExtension/DetailsFields/DetailsFields.tsx +6 -27
- package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroup/FieldGroup.tsx +15 -11
- package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroupList/FieldGroupList.tsx +7 -7
- package/templates/react-sdk-reference/src/components/designSystemExtension/FieldValueList/FieldValueList.tsx +18 -12
- package/templates/react-sdk-reference/src/components/designSystemExtension/Operator/Operator.tsx +27 -25
- package/templates/react-sdk-reference/src/components/designSystemExtension/Pulse/Pulse.tsx +4 -4
- package/templates/react-sdk-reference/src/components/designSystemExtension/RichTextEditor/RichTextEditor.tsx +8 -40
- package/templates/react-sdk-reference/src/components/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx +9 -9
- package/templates/react-sdk-reference/src/components/field/AutoComplete/AutoComplete.tsx +26 -20
- package/templates/react-sdk-reference/src/components/field/CancelAlert/CancelAlert.tsx +35 -17
- package/templates/react-sdk-reference/src/components/field/Checkbox/Checkbox.tsx +27 -25
- package/templates/react-sdk-reference/src/components/field/Currency/Currency.tsx +10 -6
- package/templates/react-sdk-reference/src/components/field/Currency/currency-utils.ts +1 -1
- package/templates/react-sdk-reference/src/components/field/Date/Date.tsx +20 -7
- package/templates/react-sdk-reference/src/components/field/DateTime/DateTime.tsx +23 -8
- package/templates/react-sdk-reference/src/components/field/Decimal/Decimal.tsx +5 -5
- package/templates/react-sdk-reference/src/components/field/Dropdown/Dropdown.tsx +45 -25
- package/templates/react-sdk-reference/src/components/field/Email/Email.tsx +8 -8
- package/templates/react-sdk-reference/src/components/field/Group/Group.tsx +1 -1
- package/templates/react-sdk-reference/src/components/field/Integer/Integer.tsx +5 -5
- package/templates/react-sdk-reference/src/components/field/Location/Location.tsx +21 -16
- package/templates/react-sdk-reference/src/components/field/Multiselect/Multiselect.tsx +42 -27
- package/templates/react-sdk-reference/src/components/field/Multiselect/utils.ts +43 -29
- package/templates/react-sdk-reference/src/components/field/ObjectReference/ObjectReference.tsx +53 -30
- package/templates/react-sdk-reference/src/components/field/ObjectReference/utils.ts +12 -11
- package/templates/react-sdk-reference/src/components/field/Percentage/Percentage.tsx +6 -6
- package/templates/react-sdk-reference/src/components/field/Phone/Phone.tsx +12 -12
- package/templates/react-sdk-reference/src/components/field/RadioButtons/RadioButtons.tsx +38 -16
- package/templates/react-sdk-reference/src/components/field/RichText/RichText.tsx +17 -4
- package/templates/react-sdk-reference/src/components/field/ScalarList/ScalarList.tsx +5 -5
- package/templates/react-sdk-reference/src/components/field/SelectableCard/SelectableCard.tsx +31 -18
- package/templates/react-sdk-reference/src/components/field/SelectableCard/utils.tsx +28 -20
- package/templates/react-sdk-reference/src/components/field/SemanticLink/SemanticLink.tsx +28 -19
- package/templates/react-sdk-reference/src/components/field/SemanticLink/utils.ts +3 -1
- package/templates/react-sdk-reference/src/components/field/TextArea/TextArea.tsx +4 -4
- package/templates/react-sdk-reference/src/components/field/TextInput/TextInput.tsx +4 -4
- package/templates/react-sdk-reference/src/components/field/Time/Time.tsx +20 -7
- package/templates/react-sdk-reference/src/components/field/URL/URL.tsx +7 -7
- package/templates/react-sdk-reference/src/components/field/UserReference/UserReference.tsx +14 -14
- package/templates/react-sdk-reference/src/components/field/UserReference/UserReferenceUtils.ts +2 -2
- package/templates/react-sdk-reference/src/components/helpers/case-utils.tsx +5 -5
- package/templates/react-sdk-reference/src/components/helpers/data_page.ts +3 -3
- package/templates/react-sdk-reference/src/components/helpers/date-format-utils.ts +5 -5
- package/templates/react-sdk-reference/src/components/helpers/field-group-utils.ts +2 -7
- package/templates/react-sdk-reference/src/components/helpers/formatters/Boolean.ts +9 -3
- package/templates/react-sdk-reference/src/components/helpers/formatters/Currency.ts +18 -6
- package/templates/react-sdk-reference/src/components/helpers/formatters/CurrencyMap.ts +168 -168
- package/templates/react-sdk-reference/src/components/helpers/formatters/Date.ts +5 -5
- package/templates/react-sdk-reference/src/components/helpers/formatters/index.ts +8 -5
- package/templates/react-sdk-reference/src/components/helpers/instructions-utils.ts +2 -2
- package/templates/react-sdk-reference/src/components/helpers/simpleTableHelpers.ts +54 -30
- package/templates/react-sdk-reference/src/components/helpers/state-utils.tsx +5 -2
- package/templates/react-sdk-reference/src/components/helpers/template-utils.ts +5 -4
- package/templates/react-sdk-reference/src/components/helpers/utils.ts +3 -3
- package/templates/react-sdk-reference/src/components/helpers/versionHelpers.ts +3 -1
- package/templates/react-sdk-reference/src/components/index.ts +1 -4
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/AdvancedSearch.tsx +18 -10
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroup/persistUtils.ts +3 -3
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/SearchGroups.tsx +26 -90
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/hooks.ts +8 -5
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/utils.ts +8 -4
- package/templates/react-sdk-reference/src/components/template/AdvancedSearch/TemplateContext.ts +1 -1
- package/templates/react-sdk-reference/src/components/template/AppShell/AppShell.tsx +28 -19
- package/templates/react-sdk-reference/src/components/template/BannerPage/BannerPage.tsx +2 -2
- package/templates/react-sdk-reference/src/components/template/CaseSummary/CaseSummary.tsx +5 -5
- package/templates/react-sdk-reference/src/components/template/CaseView/CaseView.tsx +35 -16
- package/templates/react-sdk-reference/src/components/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +10 -10
- package/templates/react-sdk-reference/src/components/template/Confirmation/Confirmation.tsx +12 -26
- package/templates/react-sdk-reference/src/components/template/DataReference/DataReference.tsx +41 -124
- package/templates/react-sdk-reference/src/components/template/DataReference/DataReferenceAdvancedSearchContext.ts +2 -2
- package/templates/react-sdk-reference/src/components/template/DataReference/SearchForm.tsx +18 -78
- package/templates/react-sdk-reference/src/components/template/DataReference/utils.ts +18 -12
- package/templates/react-sdk-reference/src/components/template/DefaultForm/DefaultForm.tsx +4 -12
- package/templates/react-sdk-reference/src/components/template/DefaultForm/utils/index.ts +3 -3
- package/templates/react-sdk-reference/src/components/template/DefaultPage/DefaultPage.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/Details/Details/Details.tsx +6 -8
- package/templates/react-sdk-reference/src/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.tsx +7 -14
- package/templates/react-sdk-reference/src/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.tsx +7 -14
- package/templates/react-sdk-reference/src/components/template/Details/DynamicTabs/DynamicTabs.tsx +16 -8
- package/templates/react-sdk-reference/src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx +7 -4
- package/templates/react-sdk-reference/src/components/template/HierarchicalForm/HierarchicalForm.tsx +20 -5
- package/templates/react-sdk-reference/src/components/template/HierarchicalForm/hooks.ts +35 -77
- package/templates/react-sdk-reference/src/components/template/InlineDashboard/InlineDashboard.tsx +10 -10
- package/templates/react-sdk-reference/src/components/template/ListView/DefaultViewMeta.ts +31 -31
- package/templates/react-sdk-reference/src/components/template/ListView/ListView.tsx +173 -133
- package/templates/react-sdk-reference/src/components/template/ListView/hooks.ts +17 -10
- package/templates/react-sdk-reference/src/components/template/ListView/utils.ts +64 -51
- package/templates/react-sdk-reference/src/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +6 -6
- package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWide/NarrowWide.tsx +6 -6
- package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx +8 -18
- package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideForm/NarrowWideForm.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWidePage/NarrowWidePage.tsx +7 -1
- package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumn/OneColumn.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumnTab/OneColumnTab.tsx +1 -1
- package/templates/react-sdk-reference/src/components/template/PromotedFilters/PromotedFilters.tsx +13 -40
- package/templates/react-sdk-reference/src/components/template/SelfServiceCaseView/SelfServiceCaseView.tsx +19 -16
- package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTable/SimpleTable.tsx +8 -7
- package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx +84 -203
- package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.tsx +15 -5
- package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelectReadonly/SimpleTableSelectReadonly.tsx +15 -29
- package/templates/react-sdk-reference/src/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +7 -7
- package/templates/react-sdk-reference/src/components/template/SubTabs/SubTabs.tsx +1 -1
- package/templates/react-sdk-reference/src/components/template/SubTabs/tabUtils.ts +13 -11
- package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumn/TwoColumn.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumnTab/TwoColumnTab.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrow/WideNarrow.tsx +6 -6
- package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx +13 -24
- package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowForm/WideNarrowForm.tsx +3 -3
- package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowPage/WideNarrowPage.tsx +7 -1
- package/templates/react-sdk-reference/src/components/template/WssNavBar/WssNavBar.tsx +25 -25
- package/templates/react-sdk-reference/src/components/template/utils.tsx +6 -6
- package/templates/react-sdk-reference/src/components/widget/AppAnnouncement/AppAnnouncement.tsx +9 -9
- package/templates/react-sdk-reference/src/components/widget/Attachment/Attachment.tsx +125 -79
- package/templates/react-sdk-reference/src/components/widget/Attachment/AttachmentUtils.ts +58 -33
- package/templates/react-sdk-reference/src/components/widget/CaseHistory/CaseHistory.tsx +14 -12
- package/templates/react-sdk-reference/src/components/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.tsx +19 -7
- package/templates/react-sdk-reference/src/components/widget/FileUtility/FileUtility/FileUtility.tsx +137 -107
- package/templates/react-sdk-reference/src/components/widget/Followers/Followers.tsx +4 -4
- package/templates/react-sdk-reference/src/components/widget/QuickCreate/QuickCreate.tsx +15 -11
- package/templates/react-sdk-reference/src/components/widget/SummaryItem/SummaryItem.tsx +25 -18
- package/templates/react-sdk-reference/src/components/widget/SummaryList/SummaryList.tsx +7 -2
- package/templates/react-sdk-reference/src/components/widget/ToDo/ToDo.tsx +30 -116
- package/templates/react-sdk-reference/src/main.tsx +1 -1
- package/templates/react-sdk-reference/tsconfig.json +2 -1
- package/templates/react-sdk-reference/vite.config.ts +51 -26
- package/templates/wc-sdk-reference/package.json +3 -3
- package/templates/wc-sdk-reference/src/index.ts +10 -10
- package/templates/wc-sdk-reference/tsconfig.json +1 -0
|
@@ -19,6 +19,7 @@ Renders a combined date and time picker. Stores values as ISO 8601 UTC strings.
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
21
|
No props beyond `PConnFieldProps`. Import type as:
|
|
22
|
+
|
|
22
23
|
```typescript
|
|
23
24
|
import type { PConnFieldProps } from '@pega/sdk-react';
|
|
24
25
|
```
|
|
@@ -46,27 +47,29 @@ import type { PConnFieldProps } from '@pega/sdk-react';
|
|
|
46
47
|
## Display Mode Rendering
|
|
47
48
|
|
|
48
49
|
Format using `format(value, 'datetime', { format: \`${dateFormatString} hh:mm a\` })`:
|
|
50
|
+
|
|
49
51
|
- **`DISPLAY_ONLY`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} />`.
|
|
50
52
|
- **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} variant='stacked' />`.
|
|
51
53
|
|
|
52
54
|
## Read-Only Rendering
|
|
53
55
|
|
|
54
56
|
Format value as `format(props.value, 'datetime')` then pass to `TextInput`:
|
|
57
|
+
|
|
55
58
|
```
|
|
56
59
|
return <TextInput {...props} value={formattedDateTime} />
|
|
57
60
|
```
|
|
58
61
|
|
|
59
62
|
## Visual Specifications
|
|
60
63
|
|
|
61
|
-
| Property
|
|
62
|
-
|
|
63
|
-
| Width
|
|
64
|
-
| Size
|
|
65
|
-
| Variant
|
|
66
|
-
| Format
|
|
67
|
-
| Placeholder
|
|
68
|
-
| Minutes step | 5 minutes
|
|
69
|
-
| Error state
|
|
64
|
+
| Property | Value |
|
|
65
|
+
| ------------ | --------------------------------------------------- |
|
|
66
|
+
| Width | Auto |
|
|
67
|
+
| Size | Small |
|
|
68
|
+
| Variant | Outlined |
|
|
69
|
+
| Format | `MM/DD/YYYY hh:mm a` (locale-aware date + 12h time) |
|
|
70
|
+
| Placeholder | Lowercase format, e.g., `mm/dd/yyyy hh:mm a` |
|
|
71
|
+
| Minutes step | 5 minutes |
|
|
72
|
+
| Error state | Red border + red helper text |
|
|
70
73
|
|
|
71
74
|
**Note on known issue:** Keyboard input in the minute field may jump to the am/pm field after one digit — this is a known quirk of some date-time picker library versions.
|
|
72
75
|
|
|
@@ -95,9 +98,9 @@ return <TextInput {...props} value={formattedDateTime} />
|
|
|
95
98
|
|
|
96
99
|
Listed design systems are examples only.
|
|
97
100
|
|
|
98
|
-
| Design System
|
|
99
|
-
|
|
100
|
-
| Default (CSS only) | `<input type="datetime-local">` (no timezone control)
|
|
101
|
-
| MUI
|
|
102
|
-
| Ant Design
|
|
103
|
-
| Chakra UI
|
|
101
|
+
| Design System | Recommended Component |
|
|
102
|
+
| ------------------ | ------------------------------------------------------------ |
|
|
103
|
+
| Default (CSS only) | `<input type="datetime-local">` (no timezone control) |
|
|
104
|
+
| MUI | `<DateTimePicker />` from `@mui/x-date-pickers` + `dayjs.tz` |
|
|
105
|
+
| Ant Design | `<DatePicker showTime />` |
|
|
106
|
+
| Chakra UI | Third-party datetime picker |
|
|
@@ -18,12 +18,12 @@ Renders a numeric input that accepts decimal values. Supports configurable decim
|
|
|
18
18
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
|
-
| Prop
|
|
22
|
-
|
|
23
|
-
| `currencyISOCode`
|
|
24
|
-
| `decimalPrecision`
|
|
25
|
-
| `showGroupSeparators` | `boolean` (optional) | —
|
|
26
|
-
| `formatter`
|
|
21
|
+
| Prop | Type | Default | Description |
|
|
22
|
+
| --------------------- | -------------------- | ------- | -------------------------------------------------------------------------------------------- |
|
|
23
|
+
| `currencyISOCode` | `string` (optional) | `'USD'` | ISO code for symbol/separator lookup (used when `formatter === 'Currency'`) |
|
|
24
|
+
| `decimalPrecision` | `number` (optional) | — | Number of decimal places to show |
|
|
25
|
+
| `showGroupSeparators` | `boolean` (optional) | — | Whether to show thousands separators |
|
|
26
|
+
| `formatter` | `string` (optional) | — | `'Currency'` or `'Percentage'` — changes display mode formatting and read-only prefix/suffix |
|
|
27
27
|
|
|
28
28
|
## Behavioral Contract
|
|
29
29
|
|
|
@@ -48,6 +48,7 @@ Renders a numeric input that accepts decimal values. Supports configurable decim
|
|
|
48
48
|
- **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedValue} variant='stacked' />`.
|
|
49
49
|
|
|
50
50
|
`formattedValue` is computed before display-mode check:
|
|
51
|
+
|
|
51
52
|
- `formatter === 'Currency'` → currency-formatted string.
|
|
52
53
|
- Otherwise → decimal-formatted string using `pConn.getComponentName()?.toLowerCase()` as format key.
|
|
53
54
|
|
|
@@ -57,16 +58,16 @@ Keep numeric format input with `readOnly: true`. Apply prefix (`$`) or suffix (`
|
|
|
57
58
|
|
|
58
59
|
## Visual Specifications
|
|
59
60
|
|
|
60
|
-
| Property
|
|
61
|
-
|
|
62
|
-
| Width
|
|
63
|
-
| Size
|
|
64
|
-
| Variant
|
|
65
|
-
| Prefix
|
|
66
|
-
| Suffix
|
|
67
|
-
| Thousands separator | Only when `showGroupSeparators=true` | Same
|
|
68
|
-
| Decimal scale
|
|
69
|
-
| Placeholder
|
|
61
|
+
| Property | Standard (editable) | Read-only |
|
|
62
|
+
| ------------------- | ------------------------------------ | ---------------------------------------------------- |
|
|
63
|
+
| Width | 100% | 100% |
|
|
64
|
+
| Size | Small | Small |
|
|
65
|
+
| Variant | Outlined | Standard (flat) |
|
|
66
|
+
| Prefix | None (unless read-only Currency) | Currency symbol if `formatter='Currency'` |
|
|
67
|
+
| Suffix | None (unless read-only Percentage) | `%` if `formatter='Percentage'` |
|
|
68
|
+
| Thousands separator | Only when `showGroupSeparators=true` | Same |
|
|
69
|
+
| Decimal scale | From `decimalPrecision` | Undefined for Currency, `decimalPrecision` otherwise |
|
|
70
|
+
| Placeholder | From `placeholder` prop | — |
|
|
70
71
|
|
|
71
72
|
## Edge Cases & Special Logic
|
|
72
73
|
|
|
@@ -90,9 +91,9 @@ Keep numeric format input with `readOnly: true`. Apply prefix (`$`) or suffix (`
|
|
|
90
91
|
|
|
91
92
|
Listed design systems are examples only.
|
|
92
93
|
|
|
93
|
-
| Design System
|
|
94
|
-
|
|
94
|
+
| Design System | Recommended Component |
|
|
95
|
+
| ------------------ | ------------------------------------------------- |
|
|
95
96
|
| Default (CSS only) | `<input type="text">` with custom numeric masking |
|
|
96
|
-
| MUI
|
|
97
|
-
| Ant Design
|
|
98
|
-
| Chakra UI
|
|
97
|
+
| MUI | `NumericFormat` with `customInput={TextField}` |
|
|
98
|
+
| Ant Design | `<InputNumber precision={decimalPrecision} />` |
|
|
99
|
+
| Chakra UI | `<NumberInput>` |
|
|
@@ -18,16 +18,16 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
|
|
|
18
18
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
|
-
| Prop
|
|
22
|
-
|
|
23
|
-
| `listType`
|
|
24
|
-
| `datasource`
|
|
25
|
-
| `columns`
|
|
26
|
-
| `parameters`
|
|
27
|
-
| `deferDatasource`
|
|
28
|
-
| `datasourceMetadata` | `any` (optional)
|
|
29
|
-
| `fieldMetadata`
|
|
30
|
-
| `onRecordChange`
|
|
21
|
+
| Prop | Type | Description |
|
|
22
|
+
| -------------------- | -------------------- | ------------------------------------------------------------------- |
|
|
23
|
+
| `listType` | `string` | `'associated'` or `'datapage'` — determines how options are loaded |
|
|
24
|
+
| `datasource` | `any[]` (optional) | The raw datasource (array for associated, string name for datapage) |
|
|
25
|
+
| `columns` | `any[]` | Column config for extracting key/value from datasource records |
|
|
26
|
+
| `parameters` | `any` (optional) | Query parameters for data page calls |
|
|
27
|
+
| `deferDatasource` | `boolean` (optional) | If true, transform `datasourceMetadata` into datapage config |
|
|
28
|
+
| `datasourceMetadata` | `any` (optional) | Metadata from deferred datasource resolution |
|
|
29
|
+
| `fieldMetadata` | `any` (optional) | Field metadata for localization context |
|
|
30
|
+
| `onRecordChange` | `any` (optional) | Callback fired after a selection change |
|
|
31
31
|
|
|
32
32
|
## Behavioral Contract
|
|
33
33
|
|
|
@@ -42,7 +42,7 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
|
|
|
42
42
|
5. **Loading options for `associated` listType:** In `useEffect` watching `theDatasource`, call `Utils.getOptionList(props, pConn.getDataObject(''))`. Prepend a placeholder option `{key: placeholder, value: localizedPlaceholder}`.
|
|
43
43
|
6. **Loading options for `datapage` listType:** In mount-time `useEffect`, call `getDataPage(datasource, parameters, context)`. Map results using `getDisplayFieldsMetaData(columns)` to extract `key` and `value` per row.
|
|
44
44
|
7. **Placeholder:** Default `'Select...'` if not provided. Prepended as the first option for associated lists.
|
|
45
|
-
8. **On change:**
|
|
45
|
+
8. **On change:**
|
|
46
46
|
- If selected value equals `placeholder`, treat as empty string: `selectedValue = evt.target.value === placeholder ? '' : evt.target.value`.
|
|
47
47
|
- Commit via `handleEvent(actionsApi, 'changeNblur', propName, selectedValue)`.
|
|
48
48
|
- Fire `onRecordChange(evt)` if provided.
|
|
@@ -52,10 +52,13 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
|
|
|
52
52
|
## Display Mode Rendering
|
|
53
53
|
|
|
54
54
|
Display modes use the **resolved display value** (the `value` string matching the selected `key`), NOT the raw stored key:
|
|
55
|
+
|
|
55
56
|
```
|
|
56
57
|
options.find(option => option.key === value)?.value || value
|
|
57
58
|
```
|
|
59
|
+
|
|
58
60
|
Both modes pass this resolved value through `pConn.getLocalizedValue()` for localization:
|
|
61
|
+
|
|
59
62
|
- **`DISPLAY_ONLY`:** `<FieldValueList name={hideLabel ? '' : label} value={localizedDisplayValue} />`
|
|
60
63
|
- **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={localizedDisplayValue} variant='stacked' />`
|
|
61
64
|
|
|
@@ -65,22 +68,39 @@ Set `readOnly: true` on the select element. Flat/borderless variant. Change hand
|
|
|
65
68
|
|
|
66
69
|
## Visual Specifications
|
|
67
70
|
|
|
68
|
-
| Property
|
|
69
|
-
|
|
70
|
-
| Width
|
|
71
|
-
| Size
|
|
72
|
-
| Variant
|
|
73
|
-
| Placeholder option | First option in list (`'Select...'`) | Not shown
|
|
74
|
-
| Options
|
|
75
|
-
| Error state
|
|
76
|
-
| Label
|
|
71
|
+
| Property | Standard (editable) | Read-only |
|
|
72
|
+
| ------------------ | ------------------------------------ | --------------- |
|
|
73
|
+
| Width | 100% | 100% |
|
|
74
|
+
| Size | Small | Small |
|
|
75
|
+
| Variant | Outlined | Standard (flat) |
|
|
76
|
+
| Placeholder option | First option in list (`'Select...'`) | Not shown |
|
|
77
|
+
| Options | Rendered as select menu items | — |
|
|
78
|
+
| Error state | Red border + red helper text | — |
|
|
79
|
+
| Label | Floating label | — |
|
|
77
80
|
|
|
78
81
|
**CSS-only notes:**
|
|
82
|
+
|
|
79
83
|
```css
|
|
80
|
-
select {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
select {
|
|
85
|
+
width: 100%;
|
|
86
|
+
height: 40px;
|
|
87
|
+
border: 1px solid rgba(0, 0, 0, 0.23);
|
|
88
|
+
border-radius: 4px;
|
|
89
|
+
padding: 8px 12px;
|
|
90
|
+
font-size: 0.875rem;
|
|
91
|
+
}
|
|
92
|
+
select:focus {
|
|
93
|
+
border-color: #1976d2;
|
|
94
|
+
outline: none;
|
|
95
|
+
}
|
|
96
|
+
select.error {
|
|
97
|
+
border-color: #d32f2f;
|
|
98
|
+
}
|
|
99
|
+
select[readonly] {
|
|
100
|
+
border: none;
|
|
101
|
+
background: transparent;
|
|
102
|
+
pointer-events: none;
|
|
103
|
+
}
|
|
84
104
|
```
|
|
85
105
|
|
|
86
106
|
## Edge Cases & Special Logic
|
|
@@ -106,9 +126,9 @@ select[readonly] { border: none; background: transparent; pointer-events: none;
|
|
|
106
126
|
|
|
107
127
|
Listed design systems are examples only.
|
|
108
128
|
|
|
109
|
-
| Design System
|
|
110
|
-
|
|
111
|
-
| Default (CSS only) | `<select>` with `<option>` elements
|
|
112
|
-
| MUI
|
|
113
|
-
| Ant Design
|
|
114
|
-
| Chakra UI
|
|
129
|
+
| Design System | Recommended Component |
|
|
130
|
+
| ------------------ | ----------------------------------------------- |
|
|
131
|
+
| Default (CSS only) | `<select>` with `<option>` elements |
|
|
132
|
+
| MUI | `<TextField select>` with `<MenuItem>` children |
|
|
133
|
+
| Ant Design | `<Select>` with `<Select.Option>` |
|
|
134
|
+
| Chakra UI | `<Select>` |
|
|
@@ -19,6 +19,7 @@ Renders a single-line text input of type `email` with a leading mail icon adornm
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
21
|
No props beyond `PConnFieldProps`. Import type as:
|
|
22
|
+
|
|
22
23
|
```typescript
|
|
23
24
|
import type { PConnFieldProps } from '@pega/sdk-react';
|
|
24
25
|
```
|
|
@@ -45,20 +46,21 @@ Delegate to `TextInput`: `return <TextInput {...props} />`. This means the mail
|
|
|
45
46
|
|
|
46
47
|
Derived from the reference component's MUI props and styles:
|
|
47
48
|
|
|
48
|
-
| Property
|
|
49
|
-
|
|
50
|
-
| Width
|
|
51
|
-
| Size
|
|
52
|
-
| Variant
|
|
53
|
-
| Leading icon
|
|
54
|
-
| Icon color
|
|
55
|
-
| Border
|
|
56
|
-
| Border radius | 4px
|
|
57
|
-
| Error state
|
|
58
|
-
| Helper text
|
|
59
|
-
| Placeholder
|
|
49
|
+
| Property | Value |
|
|
50
|
+
| ------------- | ------------------------------------------------- |
|
|
51
|
+
| Width | 100% |
|
|
52
|
+
| Size | Small (~40px height) |
|
|
53
|
+
| Variant | Outlined |
|
|
54
|
+
| Leading icon | Mail/envelope icon (`position='start'` adornment) |
|
|
55
|
+
| Icon color | Inherits text color |
|
|
56
|
+
| Border | 1px solid outlined |
|
|
57
|
+
| Border radius | 4px |
|
|
58
|
+
| Error state | Red border + red helper text |
|
|
59
|
+
| Helper text | Below input |
|
|
60
|
+
| Placeholder | From `placeholder` prop (`''` default) |
|
|
60
61
|
|
|
61
62
|
**CSS-only implementation notes:**
|
|
63
|
+
|
|
62
64
|
```css
|
|
63
65
|
.email-input-wrapper {
|
|
64
66
|
position: relative;
|
|
@@ -99,9 +101,9 @@ Derived from the reference component's MUI props and styles:
|
|
|
99
101
|
|
|
100
102
|
Listed design systems are examples only.
|
|
101
103
|
|
|
102
|
-
| Design System
|
|
103
|
-
|
|
104
|
-
| Default (CSS only) | `<input type="email">` with absolutely-positioned icon
|
|
105
|
-
| MUI
|
|
106
|
-
| Ant Design
|
|
107
|
-
| Chakra UI
|
|
104
|
+
| Design System | Recommended Component |
|
|
105
|
+
| ------------------ | --------------------------------------------------------------------------------------------------- |
|
|
106
|
+
| Default (CSS only) | `<input type="email">` with absolutely-positioned icon |
|
|
107
|
+
| MUI | `<TextField type='email' InputProps={{ startAdornment: <MailIcon /> }} />` |
|
|
108
|
+
| Ant Design | `<Input type="email" prefix={<MailOutlined />} />` |
|
|
109
|
+
| Chakra UI | `<InputGroup><InputLeftElement><EmailIcon /></InputLeftElement><Input type="email" /></InputGroup>` |
|
|
@@ -18,14 +18,14 @@ A layout/structural component (not a form input). Wraps a set of child field com
|
|
|
18
18
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
|
-
| Prop
|
|
22
|
-
|
|
23
|
-
| `children`
|
|
24
|
-
| `heading`
|
|
25
|
-
| `showHeading`
|
|
26
|
-
| `instructions` | `string` (optional) | Instructional text shown below the heading
|
|
27
|
-
| `collapsible`
|
|
28
|
-
| `type`
|
|
21
|
+
| Prop | Type | Description |
|
|
22
|
+
| -------------- | ------------------- | ------------------------------------------------- |
|
|
23
|
+
| `children` | `ReactElement[]` | Child field components to render inside the group |
|
|
24
|
+
| `heading` | `string` | The group heading/title |
|
|
25
|
+
| `showHeading` | `boolean` | Whether to display the heading |
|
|
26
|
+
| `instructions` | `string` (optional) | Instructional text shown below the heading |
|
|
27
|
+
| `collapsible` | `boolean` | Whether the group can be collapsed |
|
|
28
|
+
| `type` | `string` | Group type (used for layout context) |
|
|
29
29
|
|
|
30
30
|
`displayMode` is also consumed from `PConnFieldProps`.
|
|
31
31
|
|
|
@@ -54,11 +54,17 @@ Grid container (spacing=2):
|
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
**CSS-only grid layout:**
|
|
57
|
+
|
|
57
58
|
```css
|
|
58
|
-
.field-group-children {
|
|
59
|
+
.field-group-children {
|
|
60
|
+
display: grid;
|
|
61
|
+
grid-template-columns: 1fr;
|
|
62
|
+
gap: 16px;
|
|
63
|
+
}
|
|
59
64
|
```
|
|
60
65
|
|
|
61
66
|
The `FieldGroup` component itself provides:
|
|
67
|
+
|
|
62
68
|
- Optional heading/title above the children
|
|
63
69
|
- Optional collapse/expand control
|
|
64
70
|
- Optional instructions text
|
|
@@ -82,9 +88,9 @@ The `FieldGroup` component itself provides:
|
|
|
82
88
|
|
|
83
89
|
Listed design systems are examples only.
|
|
84
90
|
|
|
85
|
-
| Design System
|
|
86
|
-
|
|
87
|
-
| Default (CSS only) | `<fieldset>` or `<details>/<summary>` for collapsible
|
|
88
|
-
| MUI
|
|
89
|
-
| Ant Design
|
|
90
|
-
| Chakra UI
|
|
91
|
+
| Design System | Recommended Component |
|
|
92
|
+
| ------------------ | ------------------------------------------------------------------------ |
|
|
93
|
+
| Default (CSS only) | `<fieldset>` or `<details>/<summary>` for collapsible |
|
|
94
|
+
| MUI | `<Grid container spacing={2}>` with `<Grid size={{ xs: 12 }}>` per child |
|
|
95
|
+
| Ant Design | `<Collapse>` panel or `<Card>` |
|
|
96
|
+
| Chakra UI | `<Box>` or `<Accordion>` |
|
|
@@ -19,6 +19,7 @@ Renders a single-line text input restricted to integer values. Actively filters
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
21
|
No props beyond `PConnFieldProps`. Import type as:
|
|
22
|
+
|
|
22
23
|
```typescript
|
|
23
24
|
import type { PConnFieldProps } from '@pega/sdk-react';
|
|
24
25
|
```
|
|
@@ -49,16 +50,16 @@ Delegate to `TextInput`: `return <TextInput {...props} />`.
|
|
|
49
50
|
|
|
50
51
|
Identical to `TextInput` visually:
|
|
51
52
|
|
|
52
|
-
| Property
|
|
53
|
-
|
|
54
|
-
| Width
|
|
55
|
-
| Size
|
|
56
|
-
| Variant
|
|
57
|
-
| Border
|
|
58
|
-
| Border radius | 4px
|
|
59
|
-
| Error state
|
|
60
|
-
| Input mode
|
|
61
|
-
| Pattern
|
|
53
|
+
| Property | Value |
|
|
54
|
+
| ------------- | -------------------------------------------- |
|
|
55
|
+
| Width | 100% |
|
|
56
|
+
| Size | Small (~40px height) |
|
|
57
|
+
| Variant | Outlined |
|
|
58
|
+
| Border | 1px solid |
|
|
59
|
+
| Border radius | 4px |
|
|
60
|
+
| Error state | Red border + red helper text |
|
|
61
|
+
| Input mode | `numeric` (shows numeric keyboard on mobile) |
|
|
62
|
+
| Pattern | `[0-9]*` |
|
|
62
63
|
|
|
63
64
|
## Edge Cases & Special Logic
|
|
64
65
|
|
|
@@ -79,9 +80,9 @@ Identical to `TextInput` visually:
|
|
|
79
80
|
|
|
80
81
|
Listed design systems are examples only.
|
|
81
82
|
|
|
82
|
-
| Design System
|
|
83
|
-
|
|
84
|
-
| Default (CSS only) | `<input type="text" inputMode="numeric" pattern="[0-9]*">`
|
|
85
|
-
| MUI
|
|
86
|
-
| Ant Design
|
|
87
|
-
| Chakra UI
|
|
83
|
+
| Design System | Recommended Component |
|
|
84
|
+
| ------------------ | -------------------------------------------------------------------------------------------------- |
|
|
85
|
+
| Default (CSS only) | `<input type="text" inputMode="numeric" pattern="[0-9]*">` |
|
|
86
|
+
| MUI | `<TextField type='text' slotProps={{ htmlInput: { inputMode: 'numeric', pattern: '[0-9]*' } }} />` |
|
|
87
|
+
| Ant Design | `<InputNumber precision={0} />` or `<Input />` with custom `onChange` filter |
|
|
88
|
+
| Chakra UI | `<NumberInput allowMouseWheel={false} />` or plain `<Input>` with filter |
|
|
@@ -18,12 +18,12 @@ Renders a text input that integrates with Google Maps Places API for address/loc
|
|
|
18
18
|
|
|
19
19
|
## Props (component-specific)
|
|
20
20
|
|
|
21
|
-
| Prop
|
|
22
|
-
|
|
23
|
-
| `coordinates`
|
|
21
|
+
| Prop | Type | Default | Description |
|
|
22
|
+
| ----------------- | -------------------- | ------- | ------------------------------------------------------------------------ |
|
|
23
|
+
| `coordinates` | `string` (optional) | `''` | Comma-separated lat/lng string (e.g., `'18.5204, 73.8567'`) |
|
|
24
24
|
| `onlyCoordinates` | `boolean` (optional) | `false` | If `true`, store and display lat/lng coordinates instead of address text |
|
|
25
|
-
| `showMap`
|
|
26
|
-
| `showMapReadOnly` | `boolean` (optional) | —
|
|
25
|
+
| `showMap` | `boolean` (optional) | — | Show the interactive map in editable mode |
|
|
26
|
+
| `showMapReadOnly` | `boolean` (optional) | — | Show the map in read-only mode |
|
|
27
27
|
|
|
28
28
|
## Behavioral Contract
|
|
29
29
|
|
|
@@ -58,13 +58,17 @@ Renders a text input that integrates with Google Maps Places API for address/loc
|
|
|
58
58
|
### Map configuration (disabled state)
|
|
59
59
|
|
|
60
60
|
When `disabled`, map options disable all interactions:
|
|
61
|
+
|
|
61
62
|
- `gestureHandling: 'none'`, `keyboardShortcuts: false`, `disableDefaultUI: true`, `clickableIcons: false`
|
|
62
63
|
- Map opacity: `0.7` when disabled
|
|
63
64
|
|
|
64
65
|
### CSS for Google Maps autocomplete dropdown z-index:
|
|
66
|
+
|
|
65
67
|
```css
|
|
66
68
|
/* Location.css */
|
|
67
|
-
.pac-container {
|
|
69
|
+
.pac-container {
|
|
70
|
+
z-index: 2147483647;
|
|
71
|
+
}
|
|
68
72
|
```
|
|
69
73
|
|
|
70
74
|
## Display Mode Rendering
|
|
@@ -83,23 +87,28 @@ When `disabled`, map options disable all interactions:
|
|
|
83
87
|
|
|
84
88
|
## Visual Specifications
|
|
85
89
|
|
|
86
|
-
| Property
|
|
87
|
-
|
|
88
|
-
| Width
|
|
89
|
-
| Input variant
|
|
90
|
-
| Trailing icon
|
|
91
|
-
| Error alert
|
|
92
|
-
| Map container
|
|
93
|
-
| Map render
|
|
94
|
-
| Disabled map opacity | `0.7`
|
|
90
|
+
| Property | Value |
|
|
91
|
+
| -------------------- | -------------------------------------------------- |
|
|
92
|
+
| Width | 100% |
|
|
93
|
+
| Input variant | Default (outlined, from `TextField`) |
|
|
94
|
+
| Trailing icon | Location pin icon button (for current location) |
|
|
95
|
+
| Error alert | Alert banner ABOVE the input field when `hasError` |
|
|
96
|
+
| Map container | `width: 100%`, `height: 300px`, `marginTop: 0px` |
|
|
97
|
+
| Map render | Only shown when `isLoaded && (showMap | | showMapReadOnly)` |
|
|
98
|
+
| Disabled map opacity | `0.7` |
|
|
95
99
|
|
|
96
100
|
**CSS companion file required:** `Location.css` with:
|
|
101
|
+
|
|
97
102
|
```css
|
|
98
|
-
.pac-container {
|
|
103
|
+
.pac-container {
|
|
104
|
+
z-index: 2147483647;
|
|
105
|
+
}
|
|
99
106
|
```
|
|
107
|
+
|
|
100
108
|
This ensures the Google Maps autocomplete dropdown appears above modal/dialog overlays.
|
|
101
109
|
|
|
102
110
|
**CSS-only implementation notes:**
|
|
111
|
+
|
|
103
112
|
- Location pin button: `<button>` with `position: absolute; right: 8px; top: 50%; transform: translateY(-50%);`
|
|
104
113
|
|
|
105
114
|
## Edge Cases & Special Logic
|
|
@@ -128,9 +137,9 @@ This ensures the Google Maps autocomplete dropdown appears above modal/dialog ov
|
|
|
128
137
|
|
|
129
138
|
Listed design systems are examples only.
|
|
130
139
|
|
|
131
|
-
| Design System
|
|
132
|
-
|
|
140
|
+
| Design System | Recommended Component |
|
|
141
|
+
| ------------------ | ----------------------------------------------------------------------- |
|
|
133
142
|
| Default (CSS only) | `<input type="text">` + Google Maps Autocomplete API + Google Map embed |
|
|
134
|
-
| MUI
|
|
135
|
-
| Ant Design
|
|
136
|
-
| Chakra UI
|
|
143
|
+
| MUI | `<TextField>` + `InputAdornment` for icon + `@react-google-maps/api` |
|
|
144
|
+
| Ant Design | `<Input suffix={<LocationIcon />}>` + Google Maps |
|
|
145
|
+
| Chakra UI | `<InputGroup>` + `<InputRightElement>` + Google Maps |
|