@pega/sdk 0.0.3 → 0.0.5
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 +299 -56
- 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/expo-env.d.ts +3 -0
- 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/.ai-common/agents/implementation-expert.md +132 -0
- package/templates/react-sdk-reference/{.github/copilot-instructions.md → .ai-common/global/ai-agent-instructions.md} +7 -7
- package/templates/react-sdk-reference/{.github/instructions/component-map.instructions.md → .ai-common/instructions/component-map.md} +9 -2
- package/templates/react-sdk-reference/{.github/instructions/dse-component.instructions.md → .ai-common/instructions/dse-component.md} +1 -1
- package/templates/react-sdk-reference/{.cursor/rules/field-component.mdrules → .ai-common/instructions/field-component.md} +6 -2
- package/templates/react-sdk-reference/{.github/instructions/template-component.instructions.md → .ai-common/instructions/template-component.md} +3 -2
- package/templates/react-sdk-reference/{.github/instructions/widget-component.instructions.md → .ai-common/instructions/widget-component.md} +2 -1
- package/templates/react-sdk-reference/.ai-common/prompts/add-component.md +219 -0
- package/templates/react-sdk-reference/.ai-common/prompts/component-manifest.json +199 -0
- package/templates/react-sdk-reference/.ai-common/prompts/generate-all-components.md +528 -0
- package/templates/react-sdk-reference/.ai-common/prompts/generate-dse-components.md +216 -0
- package/templates/react-sdk-reference/.ai-common/prompts/generate-field-components.md +239 -0
- package/templates/react-sdk-reference/.ai-common/prompts/generate-template-components.md +283 -0
- package/templates/react-sdk-reference/.ai-common/prompts/generate-widget-components.md +222 -0
- package/templates/react-sdk-reference/.ai-common/prompts/identify-components.md +109 -0
- package/templates/react-sdk-reference/{.cursor/rules/prompts/replace-design-system.mdrules → .ai-common/prompts/replace-design-system.md} +2 -3
- package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/AlertBanner.md +187 -0
- package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/Banner.md +196 -0
- package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/CaseSummaryFields.md +213 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/DetailsFields.mdrules → .ai-common/skills/design-system-extension-skills/DetailsFields.md} +81 -33
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldGroup.mdrules → .ai-common/skills/design-system-extension-skills/FieldGroup.md} +82 -40
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldGroupList.mdrules → .ai-common/skills/design-system-extension-skills/FieldGroupList.md} +68 -28
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldValueList.mdrules → .ai-common/skills/design-system-extension-skills/FieldValueList.md} +75 -31
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/Operator.mdrules → .ai-common/skills/design-system-extension-skills/Operator.md} +99 -31
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/Pulse.mdrules → .ai-common/skills/design-system-extension-skills/Pulse.md} +37 -20
- package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/RichTextEditor.md +290 -0
- package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/WssQuickCreate.md +168 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension.mdrules → .ai-common/skills/design-system-extension.md} +14 -17
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-components.mdrules → .ai-common/skills/field-components.md} +27 -14
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/AutoComplete.md +298 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/CancelAlert.md +340 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Checkbox.md +358 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Currency.md +230 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Date.md +221 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/DateTime.md +213 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Decimal.md +198 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Dropdown.md +260 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Email.md +177 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/Group.mdrules → .ai-common/skills/field-skills/Group.md} +72 -20
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Integer.md +169 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Location.md +250 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Multiselect.md +258 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/ObjectReference.mdrules → .ai-common/skills/field-skills/ObjectReference.md} +101 -23
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Percentage.md +177 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Phone.md +210 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/RadioButtons.md +260 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/RichText.mdrules → .ai-common/skills/field-skills/RichText.md} +108 -17
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/ScalarList.md +188 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/SelectableCard.md +286 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/SemanticLink.mdrules → .ai-common/skills/field-skills/SemanticLink.md} +98 -32
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/TextArea.md +164 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/TextContent.mdrules → .ai-common/skills/field-skills/TextContent.md} +66 -27
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/TextInput.md +174 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/Time.md +156 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/URL.md +145 -0
- package/templates/react-sdk-reference/.ai-common/skills/field-skills/UserReference.md +293 -0
- package/templates/react-sdk-reference/.ai-common/skills/run-and-verify.md +70 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-components.mdrules → .ai-common/skills/template-components.md} +89 -64
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/AdvancedSearch.md +227 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/AppShell.md +273 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/BannerPage.mdrules → .ai-common/skills/template-skills/BannerPage.md} +58 -21
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseSummary.md +185 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseView.md +399 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseViewActionsMenu.md +282 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/Confirmation.md +198 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/DataReference.md +174 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/DefaultForm.md +221 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/DefaultPage.md +161 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/Details.mdrules → .ai-common/skills/template-skills/Details.md} +78 -22
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsSubTabs.mdrules → .ai-common/skills/template-skills/DetailsSubTabs.md} +82 -25
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsThreeColumn.mdrules → .ai-common/skills/template-skills/DetailsThreeColumn.md} +31 -22
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsTwoColumn.mdrules → .ai-common/skills/template-skills/DetailsTwoColumn.md} +31 -22
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DynamicTabs.mdrules → .ai-common/skills/template-skills/DynamicTabs.md} +82 -15
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/FieldGroupTemplate.md +231 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/HierarchicalForm.mdrules → .ai-common/skills/template-skills/HierarchicalForm.md} +63 -20
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/InlineDashboard.mdrules → .ai-common/skills/template-skills/InlineDashboard.md} +58 -18
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/InlineDashboardPage.mdrules → .ai-common/skills/template-skills/InlineDashboardPage.md} +66 -18
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/ListPage.mdrules → .ai-common/skills/template-skills/ListPage.md} +27 -12
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/ListView.md +419 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/MultiReferenceReadOnly.mdrules → .ai-common/skills/template-skills/MultiReferenceReadOnly.md} +53 -16
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/NarrowWide.md +209 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/OneColumn.mdrules → .ai-common/skills/template-skills/OneColumn.md} +59 -25
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/PromotedFilters.md +222 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/SelfServiceCaseView.md +198 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/SimpleTable.md +190 -0
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/SingleReferenceReadOnly.md +160 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/SubTabs.mdrules → .ai-common/skills/template-skills/SubTabs.md} +61 -16
- package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/TwoColumn.mdrules → .ai-common/skills/template-skills/TwoColumn.md} +83 -37
- package/templates/react-sdk-reference/{.claude → .ai-common}/skills/template-skills/WideNarrow.md +48 -46
- package/templates/react-sdk-reference/.ai-common/skills/template-skills/WssNavBar.md +210 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/widget-components.mdrules → .ai-common/skills/widget-components.md} +12 -28
- package/templates/react-sdk-reference/.ai-common/skills/widget-skills/AppAnnouncement.md +121 -0
- package/templates/react-sdk-reference/.ai-common/skills/widget-skills/Attachment.md +209 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/CaseHistory.mdrules → .ai-common/skills/widget-skills/CaseHistory.md} +81 -20
- package/templates/react-sdk-reference/.ai-common/skills/widget-skills/FileUtility.md +273 -0
- package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/Followers.mdrules → .ai-common/skills/widget-skills/Followers.md} +43 -24
- package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/QuickCreate.mdrules → .ai-common/skills/widget-skills/QuickCreate.md} +68 -21
- package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/SummaryItem.mdrules → .ai-common/skills/widget-skills/SummaryItem.md} +92 -29
- package/templates/react-sdk-reference/.ai-common/skills/widget-skills/ToDo.md +492 -0
- package/templates/react-sdk-reference/index.html +1 -4
- package/templates/react-sdk-reference/package.json +15 -15
- package/templates/react-sdk-reference/package.minimal.json +29 -0
- package/templates/react-sdk-reference/pega-sdk-react-0.1.0.tgz +0 -0
- package/templates/react-sdk-reference/src/AppProviders.tsx +17 -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 +194 -104
- package/templates/react-sdk-reference/src/PortalApp.tsx +15 -50
- 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
- package/templates/react-sdk-reference/.claude/instructions/component-map.md +0 -38
- package/templates/react-sdk-reference/.claude/instructions/dse-component.md +0 -75
- package/templates/react-sdk-reference/.claude/instructions/field-component.md +0 -71
- package/templates/react-sdk-reference/.claude/instructions/template-component.md +0 -92
- package/templates/react-sdk-reference/.claude/instructions/widget-component.md +0 -87
- package/templates/react-sdk-reference/.claude/prompts/add-component.md +0 -144
- package/templates/react-sdk-reference/.claude/prompts/component-manifest.json +0 -111
- package/templates/react-sdk-reference/.claude/prompts/generate-all-components.md +0 -149
- package/templates/react-sdk-reference/.claude/prompts/generate-dse-components.md +0 -126
- package/templates/react-sdk-reference/.claude/prompts/generate-field-components.md +0 -139
- package/templates/react-sdk-reference/.claude/prompts/generate-template-components.md +0 -151
- package/templates/react-sdk-reference/.claude/prompts/generate-widget-components.md +0 -124
- package/templates/react-sdk-reference/.claude/prompts/identify-components.md +0 -105
- package/templates/react-sdk-reference/.claude/prompts/replace-design-system.md +0 -519
- package/templates/react-sdk-reference/.claude/skills/component-contracts.md +0 -140
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/AlertBanner.md +0 -135
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Banner.md +0 -149
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/CaseSummaryFields.md +0 -154
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/DetailsFields.md +0 -144
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroup.md +0 -131
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroupList.md +0 -111
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldValueList.md +0 -115
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Operator.md +0 -149
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Pulse.md +0 -83
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/RichTextEditor.md +0 -206
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/WssQuickCreate.md +0 -135
- package/templates/react-sdk-reference/.claude/skills/design-system-extension.md +0 -289
- package/templates/react-sdk-reference/.claude/skills/field-components.md +0 -294
- package/templates/react-sdk-reference/.claude/skills/field-skills/AutoComplete.md +0 -112
- package/templates/react-sdk-reference/.claude/skills/field-skills/CancelAlert.md +0 -203
- package/templates/react-sdk-reference/.claude/skills/field-skills/Checkbox.md +0 -158
- package/templates/react-sdk-reference/.claude/skills/field-skills/Currency.md +0 -106
- package/templates/react-sdk-reference/.claude/skills/field-skills/Date.md +0 -99
- package/templates/react-sdk-reference/.claude/skills/field-skills/DateTime.md +0 -103
- package/templates/react-sdk-reference/.claude/skills/field-skills/Decimal.md +0 -98
- package/templates/react-sdk-reference/.claude/skills/field-skills/Dropdown.md +0 -114
- package/templates/react-sdk-reference/.claude/skills/field-skills/Email.md +0 -107
- package/templates/react-sdk-reference/.claude/skills/field-skills/Group.md +0 -90
- package/templates/react-sdk-reference/.claude/skills/field-skills/Integer.md +0 -87
- package/templates/react-sdk-reference/.claude/skills/field-skills/Location.md +0 -136
- package/templates/react-sdk-reference/.claude/skills/field-skills/Multiselect.md +0 -164
- package/templates/react-sdk-reference/.claude/skills/field-skills/ObjectReference.md +0 -164
- package/templates/react-sdk-reference/.claude/skills/field-skills/Percentage.md +0 -92
- package/templates/react-sdk-reference/.claude/skills/field-skills/Phone.md +0 -110
- package/templates/react-sdk-reference/.claude/skills/field-skills/RadioButtons.md +0 -146
- package/templates/react-sdk-reference/.claude/skills/field-skills/RichText.md +0 -138
- package/templates/react-sdk-reference/.claude/skills/field-skills/ScalarList.md +0 -124
- package/templates/react-sdk-reference/.claude/skills/field-skills/SelectableCard.md +0 -216
- package/templates/react-sdk-reference/.claude/skills/field-skills/SemanticLink.md +0 -148
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextArea.md +0 -96
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextContent.md +0 -101
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextInput.md +0 -104
- package/templates/react-sdk-reference/.claude/skills/field-skills/Time.md +0 -88
- package/templates/react-sdk-reference/.claude/skills/field-skills/URL.md +0 -85
- package/templates/react-sdk-reference/.claude/skills/field-skills/UserReference.md +0 -180
- package/templates/react-sdk-reference/.claude/skills/run-and-verify.md +0 -68
- package/templates/react-sdk-reference/.claude/skills/template-components.md +0 -322
- package/templates/react-sdk-reference/.claude/skills/template-skills/AdvancedSearch.md +0 -144
- package/templates/react-sdk-reference/.claude/skills/template-skills/AppShell.md +0 -122
- package/templates/react-sdk-reference/.claude/skills/template-skills/BannerPage.md +0 -83
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseSummary.md +0 -100
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseView.md +0 -131
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseViewActionsMenu.md +0 -126
- package/templates/react-sdk-reference/.claude/skills/template-skills/Confirmation.md +0 -107
- package/templates/react-sdk-reference/.claude/skills/template-skills/DataReference.md +0 -120
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultForm.md +0 -102
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultPage.md +0 -110
- package/templates/react-sdk-reference/.claude/skills/template-skills/Details.md +0 -88
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsSubTabs.md +0 -95
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsThreeColumn.md +0 -78
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsTwoColumn.md +0 -78
- package/templates/react-sdk-reference/.claude/skills/template-skills/DynamicTabs.md +0 -101
- package/templates/react-sdk-reference/.claude/skills/template-skills/FieldGroupTemplate.md +0 -109
- package/templates/react-sdk-reference/.claude/skills/template-skills/HierarchicalForm.md +0 -113
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboard.md +0 -104
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboardPage.md +0 -85
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListPage.md +0 -68
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListView.md +0 -139
- package/templates/react-sdk-reference/.claude/skills/template-skills/MultiReferenceReadOnly.md +0 -80
- package/templates/react-sdk-reference/.claude/skills/template-skills/NarrowWide.md +0 -141
- package/templates/react-sdk-reference/.claude/skills/template-skills/OneColumn.md +0 -109
- package/templates/react-sdk-reference/.claude/skills/template-skills/PromotedFilters.md +0 -124
- package/templates/react-sdk-reference/.claude/skills/template-skills/SelfServiceCaseView.md +0 -135
- package/templates/react-sdk-reference/.claude/skills/template-skills/SimpleTable.md +0 -127
- package/templates/react-sdk-reference/.claude/skills/template-skills/SingleReferenceReadOnly.md +0 -103
- package/templates/react-sdk-reference/.claude/skills/template-skills/SubTabs.md +0 -79
- package/templates/react-sdk-reference/.claude/skills/template-skills/TwoColumn.md +0 -131
- package/templates/react-sdk-reference/.claude/skills/template-skills/WssNavBar.md +0 -135
- package/templates/react-sdk-reference/.claude/skills/widget-components.md +0 -271
- package/templates/react-sdk-reference/.claude/skills/widget-skills/AppAnnouncement.md +0 -82
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Attachment.md +0 -146
- package/templates/react-sdk-reference/.claude/skills/widget-skills/CaseHistory.md +0 -107
- package/templates/react-sdk-reference/.claude/skills/widget-skills/FileUtility.md +0 -200
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Followers.md +0 -99
- package/templates/react-sdk-reference/.claude/skills/widget-skills/QuickCreate.md +0 -114
- package/templates/react-sdk-reference/.claude/skills/widget-skills/SummaryItem.md +0 -167
- package/templates/react-sdk-reference/.claude/skills/widget-skills/ToDo.md +0 -190
- package/templates/react-sdk-reference/.cursor/rules/component-map.mdrules +0 -41
- package/templates/react-sdk-reference/.cursor/rules/dse-component.mdrules +0 -78
- package/templates/react-sdk-reference/.cursor/rules/pega-sdk.mdrules +0 -247
- package/templates/react-sdk-reference/.cursor/rules/prompts/add-component.mdrules +0 -149
- package/templates/react-sdk-reference/.cursor/rules/prompts/component-manifest.json +0 -111
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-all-components.mdrules +0 -154
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-dse-components.mdrules +0 -131
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-field-components.mdrules +0 -144
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-template-components.mdrules +0 -156
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-widget-components.mdrules +0 -129
- package/templates/react-sdk-reference/.cursor/rules/prompts/identify-components.mdrules +0 -110
- package/templates/react-sdk-reference/.cursor/rules/skills/component-contracts.mdrules +0 -145
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/AlertBanner.mdrules +0 -140
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/Banner.mdrules +0 -154
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/CaseSummaryFields.mdrules +0 -159
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/RichTextEditor.mdrules +0 -211
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/WssQuickCreate.mdrules +0 -140
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/AutoComplete.mdrules +0 -117
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/CancelAlert.mdrules +0 -208
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Checkbox.mdrules +0 -163
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Currency.mdrules +0 -111
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Date.mdrules +0 -104
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/DateTime.mdrules +0 -108
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Decimal.mdrules +0 -103
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Dropdown.mdrules +0 -119
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Email.mdrules +0 -112
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Integer.mdrules +0 -92
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Location.mdrules +0 -141
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Multiselect.mdrules +0 -169
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Percentage.mdrules +0 -97
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Phone.mdrules +0 -115
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/RadioButtons.mdrules +0 -151
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/ScalarList.mdrules +0 -129
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/SelectableCard.mdrules +0 -221
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextArea.mdrules +0 -101
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextInput.mdrules +0 -109
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Time.mdrules +0 -93
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/URL.mdrules +0 -90
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/UserReference.mdrules +0 -185
- package/templates/react-sdk-reference/.cursor/rules/skills/run-and-verify.mdrules +0 -73
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AdvancedSearch.mdrules +0 -149
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AppShell.mdrules +0 -127
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseSummary.mdrules +0 -105
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseView.mdrules +0 -136
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseViewActionsMenu.mdrules +0 -131
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/Confirmation.mdrules +0 -112
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DataReference.mdrules +0 -125
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultForm.mdrules +0 -107
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultPage.mdrules +0 -115
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/FieldGroupTemplate.mdrules +0 -114
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/ListView.mdrules +0 -144
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/NarrowWide.mdrules +0 -146
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/PromotedFilters.mdrules +0 -129
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SelfServiceCaseView.mdrules +0 -140
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SimpleTable.mdrules +0 -132
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SingleReferenceReadOnly.mdrules +0 -108
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WideNarrow.mdrules +0 -155
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WssNavBar.mdrules +0 -140
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/AppAnnouncement.mdrules +0 -87
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/Attachment.mdrules +0 -151
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/FileUtility.mdrules +0 -205
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/ToDo.mdrules +0 -195
- package/templates/react-sdk-reference/.cursor/rules/template-component.mdrules +0 -95
- package/templates/react-sdk-reference/.cursor/rules/widget-component.mdrules +0 -90
- package/templates/react-sdk-reference/.github/instructions/field-component.instructions.md +0 -73
- package/templates/react-sdk-reference/.github/prompts/add-component.prompt.md +0 -149
- package/templates/react-sdk-reference/.github/prompts/component-manifest.json +0 -111
- package/templates/react-sdk-reference/.github/prompts/generate-all-components.prompt.md +0 -154
- package/templates/react-sdk-reference/.github/prompts/generate-dse-components.prompt.md +0 -131
- package/templates/react-sdk-reference/.github/prompts/generate-field-components.prompt.md +0 -144
- package/templates/react-sdk-reference/.github/prompts/generate-template-components.prompt.md +0 -156
- package/templates/react-sdk-reference/.github/prompts/generate-widget-components.prompt.md +0 -129
- package/templates/react-sdk-reference/.github/prompts/identify-components.prompt.md +0 -110
- package/templates/react-sdk-reference/.github/prompts/replace-design-system.prompt.md +0 -524
- package/templates/react-sdk-reference/.github/skills/component-contracts.md +0 -140
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/AlertBanner.md +0 -135
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Banner.md +0 -149
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/CaseSummaryFields.md +0 -154
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/DetailsFields.md +0 -144
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroup.md +0 -131
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroupList.md +0 -111
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldValueList.md +0 -115
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Operator.md +0 -149
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Pulse.md +0 -83
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/RichTextEditor.md +0 -206
- package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/WssQuickCreate.md +0 -135
- package/templates/react-sdk-reference/.github/skills/design-system-extension.md +0 -289
- package/templates/react-sdk-reference/.github/skills/field-components.md +0 -294
- package/templates/react-sdk-reference/.github/skills/field-skills/AutoComplete.md +0 -112
- package/templates/react-sdk-reference/.github/skills/field-skills/CancelAlert.md +0 -203
- package/templates/react-sdk-reference/.github/skills/field-skills/Checkbox.md +0 -158
- package/templates/react-sdk-reference/.github/skills/field-skills/Currency.md +0 -106
- package/templates/react-sdk-reference/.github/skills/field-skills/Date.md +0 -99
- package/templates/react-sdk-reference/.github/skills/field-skills/DateTime.md +0 -103
- package/templates/react-sdk-reference/.github/skills/field-skills/Decimal.md +0 -98
- package/templates/react-sdk-reference/.github/skills/field-skills/Dropdown.md +0 -114
- package/templates/react-sdk-reference/.github/skills/field-skills/Email.md +0 -107
- package/templates/react-sdk-reference/.github/skills/field-skills/Group.md +0 -90
- package/templates/react-sdk-reference/.github/skills/field-skills/Integer.md +0 -87
- package/templates/react-sdk-reference/.github/skills/field-skills/Location.md +0 -136
- package/templates/react-sdk-reference/.github/skills/field-skills/Multiselect.md +0 -164
- package/templates/react-sdk-reference/.github/skills/field-skills/ObjectReference.md +0 -164
- package/templates/react-sdk-reference/.github/skills/field-skills/Percentage.md +0 -92
- package/templates/react-sdk-reference/.github/skills/field-skills/Phone.md +0 -110
- package/templates/react-sdk-reference/.github/skills/field-skills/RadioButtons.md +0 -146
- package/templates/react-sdk-reference/.github/skills/field-skills/RichText.md +0 -138
- package/templates/react-sdk-reference/.github/skills/field-skills/ScalarList.md +0 -124
- package/templates/react-sdk-reference/.github/skills/field-skills/SelectableCard.md +0 -216
- package/templates/react-sdk-reference/.github/skills/field-skills/SemanticLink.md +0 -148
- package/templates/react-sdk-reference/.github/skills/field-skills/TextArea.md +0 -96
- package/templates/react-sdk-reference/.github/skills/field-skills/TextContent.md +0 -101
- package/templates/react-sdk-reference/.github/skills/field-skills/TextInput.md +0 -104
- package/templates/react-sdk-reference/.github/skills/field-skills/Time.md +0 -88
- package/templates/react-sdk-reference/.github/skills/field-skills/URL.md +0 -85
- package/templates/react-sdk-reference/.github/skills/field-skills/UserReference.md +0 -180
- package/templates/react-sdk-reference/.github/skills/run-and-verify.md +0 -68
- package/templates/react-sdk-reference/.github/skills/template-components.md +0 -322
- package/templates/react-sdk-reference/.github/skills/template-skills/AdvancedSearch.md +0 -144
- package/templates/react-sdk-reference/.github/skills/template-skills/AppShell.md +0 -122
- package/templates/react-sdk-reference/.github/skills/template-skills/BannerPage.md +0 -83
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseSummary.md +0 -100
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseView.md +0 -131
- package/templates/react-sdk-reference/.github/skills/template-skills/CaseViewActionsMenu.md +0 -126
- package/templates/react-sdk-reference/.github/skills/template-skills/Confirmation.md +0 -107
- package/templates/react-sdk-reference/.github/skills/template-skills/DataReference.md +0 -120
- package/templates/react-sdk-reference/.github/skills/template-skills/DefaultForm.md +0 -102
- package/templates/react-sdk-reference/.github/skills/template-skills/DefaultPage.md +0 -110
- package/templates/react-sdk-reference/.github/skills/template-skills/Details.md +0 -88
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsSubTabs.md +0 -95
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsThreeColumn.md +0 -78
- package/templates/react-sdk-reference/.github/skills/template-skills/DetailsTwoColumn.md +0 -78
- package/templates/react-sdk-reference/.github/skills/template-skills/DynamicTabs.md +0 -101
- package/templates/react-sdk-reference/.github/skills/template-skills/FieldGroupTemplate.md +0 -109
- package/templates/react-sdk-reference/.github/skills/template-skills/HierarchicalForm.md +0 -113
- package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboard.md +0 -104
- package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboardPage.md +0 -85
- package/templates/react-sdk-reference/.github/skills/template-skills/ListPage.md +0 -68
- package/templates/react-sdk-reference/.github/skills/template-skills/ListView.md +0 -139
- package/templates/react-sdk-reference/.github/skills/template-skills/MultiReferenceReadOnly.md +0 -80
- package/templates/react-sdk-reference/.github/skills/template-skills/NarrowWide.md +0 -141
- package/templates/react-sdk-reference/.github/skills/template-skills/OneColumn.md +0 -109
- package/templates/react-sdk-reference/.github/skills/template-skills/PromotedFilters.md +0 -124
- package/templates/react-sdk-reference/.github/skills/template-skills/SelfServiceCaseView.md +0 -135
- package/templates/react-sdk-reference/.github/skills/template-skills/SimpleTable.md +0 -127
- package/templates/react-sdk-reference/.github/skills/template-skills/SingleReferenceReadOnly.md +0 -103
- package/templates/react-sdk-reference/.github/skills/template-skills/SubTabs.md +0 -79
- package/templates/react-sdk-reference/.github/skills/template-skills/TwoColumn.md +0 -131
- package/templates/react-sdk-reference/.github/skills/template-skills/WideNarrow.md +0 -150
- package/templates/react-sdk-reference/.github/skills/template-skills/WssNavBar.md +0 -135
- package/templates/react-sdk-reference/.github/skills/widget-components.md +0 -271
- package/templates/react-sdk-reference/.github/skills/widget-skills/AppAnnouncement.md +0 -82
- package/templates/react-sdk-reference/.github/skills/widget-skills/Attachment.md +0 -146
- package/templates/react-sdk-reference/.github/skills/widget-skills/CaseHistory.md +0 -107
- package/templates/react-sdk-reference/.github/skills/widget-skills/FileUtility.md +0 -200
- package/templates/react-sdk-reference/.github/skills/widget-skills/Followers.md +0 -99
- package/templates/react-sdk-reference/.github/skills/widget-skills/QuickCreate.md +0 -114
- package/templates/react-sdk-reference/.github/skills/widget-skills/SummaryItem.md +0 -167
- package/templates/react-sdk-reference/.github/skills/widget-skills/ToDo.md +0 -190
- package/templates/react-sdk-reference/AGENTS.md +0 -247
package/dist/index.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import * as p from "@clack/prompts";
|
|
5
5
|
import pc from "picocolors";
|
|
6
6
|
import path2 from "path";
|
|
7
|
+
import { createRequire } from "module";
|
|
7
8
|
|
|
8
9
|
// src/scaffold.ts
|
|
9
10
|
import fs from "fs";
|
|
@@ -303,13 +304,7 @@ export function registerSampleComponents(registry: ComponentRegistry<React.Compo
|
|
|
303
304
|
|
|
304
305
|
// src/scaffold.ts
|
|
305
306
|
var __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
306
|
-
var MONOREPO_SAMPLES_DIR = path.resolve(
|
|
307
|
-
__dirname,
|
|
308
|
-
"..",
|
|
309
|
-
"..",
|
|
310
|
-
"..",
|
|
311
|
-
"samples"
|
|
312
|
-
);
|
|
307
|
+
var MONOREPO_SAMPLES_DIR = path.resolve(__dirname, "..", "..", "..", "samples");
|
|
313
308
|
var PACKAGED_TEMPLATES_DIR = path.resolve(__dirname, "..", "templates");
|
|
314
309
|
function resolveTemplateSourceRoot() {
|
|
315
310
|
if (fs.existsSync(MONOREPO_SAMPLES_DIR)) {
|
|
@@ -335,23 +330,10 @@ var CATEGORY_DIR_MAP = {
|
|
|
335
330
|
infra: "infra",
|
|
336
331
|
designSystemExtension: "designSystemExtension"
|
|
337
332
|
};
|
|
338
|
-
var SKIP_ENTRIES = /* @__PURE__ */ new Set([
|
|
339
|
-
"node_modules",
|
|
340
|
-
"dist",
|
|
341
|
-
".DS_Store",
|
|
342
|
-
".next",
|
|
343
|
-
".expo",
|
|
344
|
-
".angular"
|
|
345
|
-
]);
|
|
333
|
+
var SKIP_ENTRIES = /* @__PURE__ */ new Set(["node_modules", "dist", ".DS_Store", ".next", ".expo", ".angular"]);
|
|
346
334
|
async function scaffold(choices, targetDir, onProgress) {
|
|
347
335
|
const report = (message) => onProgress?.(message);
|
|
348
|
-
const {
|
|
349
|
-
framework,
|
|
350
|
-
aiTool,
|
|
351
|
-
includeTemplates,
|
|
352
|
-
componentCategories,
|
|
353
|
-
projectName
|
|
354
|
-
} = choices;
|
|
336
|
+
const { framework, aiTool, includeTemplates, componentCategories, projectName } = choices;
|
|
355
337
|
report("Preparing project directory\u2026");
|
|
356
338
|
if (fs.existsSync(targetDir)) {
|
|
357
339
|
const files = fs.readdirSync(targetDir);
|
|
@@ -379,18 +361,16 @@ async function scaffold(choices, targetDir, onProgress) {
|
|
|
379
361
|
fs.rmSync(catDir, { recursive: true });
|
|
380
362
|
}
|
|
381
363
|
}
|
|
382
|
-
fs.writeFileSync(
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
364
|
+
fs.writeFileSync(path.join(componentsDir, "component-map.ts"), generateMinimalComponentMap());
|
|
365
|
+
if (framework === "react") {
|
|
366
|
+
fs.writeFileSync(path.join(targetDir, "src", "AppProviders.tsx"), generateMinimalReactProviders());
|
|
367
|
+
const muiThemeAugmentation = path.join(targetDir, "src", "mui-theme-augmentation.d.ts");
|
|
368
|
+
if (fs.existsSync(muiThemeAugmentation)) {
|
|
369
|
+
fs.rmSync(muiThemeAugmentation);
|
|
370
|
+
}
|
|
371
|
+
}
|
|
386
372
|
} else {
|
|
387
|
-
const allCategories = [
|
|
388
|
-
"fields",
|
|
389
|
-
"templates",
|
|
390
|
-
"widgets",
|
|
391
|
-
"infra",
|
|
392
|
-
"designSystemExtension"
|
|
393
|
-
];
|
|
373
|
+
const allCategories = ["fields", "templates", "widgets", "infra", "designSystemExtension"];
|
|
394
374
|
for (const cat of allCategories) {
|
|
395
375
|
if (!componentCategories.includes(cat)) {
|
|
396
376
|
const catDir = path.join(componentsDir, CATEGORY_DIR_MAP[cat]);
|
|
@@ -399,18 +379,12 @@ async function scaffold(choices, targetDir, onProgress) {
|
|
|
399
379
|
}
|
|
400
380
|
}
|
|
401
381
|
}
|
|
402
|
-
const componentMapContent = generateComponentMap(
|
|
403
|
-
|
|
404
|
-
framework
|
|
405
|
-
);
|
|
406
|
-
fs.writeFileSync(
|
|
407
|
-
path.join(componentsDir, "component-map.ts"),
|
|
408
|
-
componentMapContent
|
|
409
|
-
);
|
|
382
|
+
const componentMapContent = generateComponentMap(componentCategories, framework);
|
|
383
|
+
fs.writeFileSync(path.join(componentsDir, "component-map.ts"), componentMapContent);
|
|
410
384
|
}
|
|
411
385
|
}
|
|
412
386
|
if (!aiTool) {
|
|
413
|
-
for (const dir of [".github", ".cursor", "AGENTS.md", ".claude"]) {
|
|
387
|
+
for (const dir of [".github", ".cursor", "AGENTS.md", ".claude", ".ai-common"]) {
|
|
414
388
|
const target = path.join(targetDir, dir);
|
|
415
389
|
if (fs.existsSync(target)) {
|
|
416
390
|
fs.rmSync(target, { recursive: true });
|
|
@@ -432,10 +406,13 @@ async function scaffold(choices, targetDir, onProgress) {
|
|
|
432
406
|
}
|
|
433
407
|
}
|
|
434
408
|
}
|
|
409
|
+
generateAiConfigs(targetDir, aiTool);
|
|
435
410
|
}
|
|
436
411
|
report("Finalizing project configuration\u2026");
|
|
412
|
+
selectReactPackageManifest(targetDir, framework, includeTemplates, componentCategories);
|
|
437
413
|
transformPackageJson(path.join(targetDir, "package.json"), projectName);
|
|
438
414
|
transformTsConfig(path.join(targetDir, "tsconfig.json"));
|
|
415
|
+
transformSdkConfig(path.join(targetDir, "sdk-config.json"));
|
|
439
416
|
report("Installing dependencies (this may take a minute)\u2026");
|
|
440
417
|
try {
|
|
441
418
|
await runInstall(targetDir);
|
|
@@ -463,18 +440,26 @@ function transformPackageJson(pkgJsonPath, projectName) {
|
|
|
463
440
|
delete pkgJson.private;
|
|
464
441
|
fs.writeFileSync(pkgJsonPath, JSON.stringify(pkgJson, null, 2) + "\n");
|
|
465
442
|
}
|
|
443
|
+
function selectReactPackageManifest(targetDir, framework, includeTemplates, componentCategories) {
|
|
444
|
+
if (framework !== "react") return;
|
|
445
|
+
const pkgJsonPath = path.join(targetDir, "package.json");
|
|
446
|
+
const minimalPkgJsonPath = path.join(targetDir, "package.minimal.json");
|
|
447
|
+
const hasSampleComponents = includeTemplates && componentCategories.length > 0;
|
|
448
|
+
if (!hasSampleComponents && fs.existsSync(minimalPkgJsonPath)) {
|
|
449
|
+
fs.copyFileSync(minimalPkgJsonPath, pkgJsonPath);
|
|
450
|
+
}
|
|
451
|
+
if (fs.existsSync(minimalPkgJsonPath)) {
|
|
452
|
+
fs.rmSync(minimalPkgJsonPath);
|
|
453
|
+
}
|
|
454
|
+
}
|
|
466
455
|
function transformTsConfig(tsconfigPath) {
|
|
467
456
|
if (!fs.existsSync(tsconfigPath)) return;
|
|
468
457
|
const tsconfig = JSON.parse(fs.readFileSync(tsconfigPath, "utf-8"));
|
|
469
458
|
if (tsconfig.compilerOptions) {
|
|
470
459
|
if (tsconfig.compilerOptions.paths) {
|
|
471
460
|
const cleanedPaths = {};
|
|
472
|
-
for (const [key, value] of Object.entries(
|
|
473
|
-
|
|
474
|
-
)) {
|
|
475
|
-
const isMonorepoPath = value.some(
|
|
476
|
-
(p2) => p2.includes("../../packages/")
|
|
477
|
-
);
|
|
461
|
+
for (const [key, value] of Object.entries(tsconfig.compilerOptions.paths)) {
|
|
462
|
+
const isMonorepoPath = value.some((p2) => p2.includes("../../packages/"));
|
|
478
463
|
if (!isMonorepoPath) {
|
|
479
464
|
cleanedPaths[key] = value;
|
|
480
465
|
}
|
|
@@ -486,14 +471,26 @@ function transformTsConfig(tsconfigPath) {
|
|
|
486
471
|
}
|
|
487
472
|
}
|
|
488
473
|
if (tsconfig.compilerOptions.typeRoots) {
|
|
489
|
-
tsconfig.compilerOptions.typeRoots = [
|
|
490
|
-
"./node_modules/@types",
|
|
491
|
-
"./node_modules/@pega"
|
|
492
|
-
];
|
|
474
|
+
tsconfig.compilerOptions.typeRoots = ["./node_modules/@types", "./node_modules/@pega"];
|
|
493
475
|
}
|
|
494
476
|
}
|
|
495
477
|
fs.writeFileSync(tsconfigPath, JSON.stringify(tsconfig, null, 2) + "\n");
|
|
496
478
|
}
|
|
479
|
+
function transformSdkConfig(sdkConfigPath) {
|
|
480
|
+
if (!fs.existsSync(sdkConfigPath)) return;
|
|
481
|
+
const sdkConfig = JSON.parse(fs.readFileSync(sdkConfigPath, "utf-8"));
|
|
482
|
+
if (sdkConfig.serverConfig) {
|
|
483
|
+
if ("infinityRestServerUrl" in sdkConfig.serverConfig) sdkConfig.serverConfig.infinityRestServerUrl = "";
|
|
484
|
+
if ("appAlias" in sdkConfig.serverConfig) sdkConfig.serverConfig.appAlias = "";
|
|
485
|
+
if ("appMashupCaseType" in sdkConfig.serverConfig) sdkConfig.serverConfig.appMashupCaseType = "";
|
|
486
|
+
}
|
|
487
|
+
if (sdkConfig.authConfig) {
|
|
488
|
+
if ("mashupClientId" in sdkConfig.authConfig) sdkConfig.authConfig.mashupClientId = "";
|
|
489
|
+
if ("mashupUserIdentifier" in sdkConfig.authConfig) sdkConfig.authConfig.mashupUserIdentifier = "";
|
|
490
|
+
if ("portalClientId" in sdkConfig.authConfig) sdkConfig.authConfig.portalClientId = "";
|
|
491
|
+
}
|
|
492
|
+
fs.writeFileSync(sdkConfigPath, JSON.stringify(sdkConfig, null, 2) + "\n");
|
|
493
|
+
}
|
|
497
494
|
function generateMinimalComponentMap() {
|
|
498
495
|
return `import { sdkComponents } from '@pega/sdk-react';
|
|
499
496
|
import type { ComponentRegistry } from '@pega/sdk-types';
|
|
@@ -521,6 +518,251 @@ export function registerSampleComponents(
|
|
|
521
518
|
}
|
|
522
519
|
`;
|
|
523
520
|
}
|
|
521
|
+
function generateMinimalReactProviders() {
|
|
522
|
+
return `import type { PropsWithChildren } from 'react';
|
|
523
|
+
|
|
524
|
+
export function AppProviders({ children }: PropsWithChildren) {
|
|
525
|
+
return <>{children}</>;
|
|
526
|
+
}
|
|
527
|
+
`;
|
|
528
|
+
}
|
|
529
|
+
var AI_GEN_CONFIGS = {
|
|
530
|
+
copilot: {
|
|
531
|
+
skillDir: ".github/skills",
|
|
532
|
+
promptDir: ".github/prompts",
|
|
533
|
+
instructionsDir: ".github/instructions",
|
|
534
|
+
agentsDir: ".github/agents",
|
|
535
|
+
skillExt: "md",
|
|
536
|
+
promptExt: "prompt.md",
|
|
537
|
+
instructionsExt: "instructions.md",
|
|
538
|
+
agentExt: "agent.md",
|
|
539
|
+
tokens: {
|
|
540
|
+
"{{PROMPT_DIR}}": ".github/prompts",
|
|
541
|
+
"{{SKILL_DIR}}": ".github/skills",
|
|
542
|
+
"{{PROMPT_EXT}}": ".prompt.md",
|
|
543
|
+
"{{SKILL_EXT}}": ".md",
|
|
544
|
+
"{{AI_FILE_EXT}}": ".instructions.md"
|
|
545
|
+
}
|
|
546
|
+
},
|
|
547
|
+
"claude-code": {
|
|
548
|
+
skillDir: ".claude/skills",
|
|
549
|
+
promptDir: ".claude/prompts",
|
|
550
|
+
instructionsDir: ".claude/instructions",
|
|
551
|
+
agentsDir: ".claude/agents",
|
|
552
|
+
skillExt: "md",
|
|
553
|
+
promptExt: "md",
|
|
554
|
+
instructionsExt: "md",
|
|
555
|
+
agentExt: "md",
|
|
556
|
+
tokens: {
|
|
557
|
+
"{{PROMPT_DIR}}": ".claude/prompts",
|
|
558
|
+
"{{SKILL_DIR}}": ".claude/skills",
|
|
559
|
+
"{{PROMPT_EXT}}": ".md",
|
|
560
|
+
"{{SKILL_EXT}}": ".md",
|
|
561
|
+
"{{AI_FILE_EXT}}": ".md"
|
|
562
|
+
}
|
|
563
|
+
},
|
|
564
|
+
cursor: {
|
|
565
|
+
skillDir: ".cursor/rules/skills",
|
|
566
|
+
promptDir: ".cursor/rules/prompts",
|
|
567
|
+
instructionsDir: ".cursor/rules",
|
|
568
|
+
agentsDir: ".cursor/rules/agents",
|
|
569
|
+
skillExt: "mdrules",
|
|
570
|
+
promptExt: "mdrules",
|
|
571
|
+
instructionsExt: "mdrules",
|
|
572
|
+
agentExt: "mdrules",
|
|
573
|
+
tokens: {
|
|
574
|
+
"{{PROMPT_DIR}}": ".cursor/rules/prompts",
|
|
575
|
+
"{{SKILL_DIR}}": ".cursor/rules/skills",
|
|
576
|
+
"{{PROMPT_EXT}}": ".mdrules",
|
|
577
|
+
"{{SKILL_EXT}}": ".mdrules",
|
|
578
|
+
"{{AI_FILE_EXT}}": ".mdrules"
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
};
|
|
582
|
+
function parseAiMeta(content) {
|
|
583
|
+
const match = content.match(/^---\n([\s\S]*?)\n---\n\n?/);
|
|
584
|
+
if (!match) return { meta: {}, body: content };
|
|
585
|
+
const meta = {};
|
|
586
|
+
for (const line of match[1].split("\n")) {
|
|
587
|
+
const colonIdx = line.indexOf(":");
|
|
588
|
+
if (colonIdx === -1) continue;
|
|
589
|
+
const key = line.slice(0, colonIdx).trim();
|
|
590
|
+
const val = line.slice(colonIdx + 1).trim().replace(/^"|"$/g, "");
|
|
591
|
+
if (key.startsWith("ai-")) meta[key.slice(3)] = val;
|
|
592
|
+
}
|
|
593
|
+
return { meta, body: content.slice(match[0].length) };
|
|
594
|
+
}
|
|
595
|
+
function applyTokens(content, tokens) {
|
|
596
|
+
let result = content;
|
|
597
|
+
for (const [token, value] of Object.entries(tokens)) {
|
|
598
|
+
result = result.split(token).join(value);
|
|
599
|
+
}
|
|
600
|
+
return result;
|
|
601
|
+
}
|
|
602
|
+
function cursorSkillDescription(relPath) {
|
|
603
|
+
const parts = relPath.split("/");
|
|
604
|
+
if (parts.length >= 2) {
|
|
605
|
+
const subdir = parts[parts.length - 2];
|
|
606
|
+
const name = parts[parts.length - 1].replace(/\.md$/, "");
|
|
607
|
+
if (subdir === "field-skills") return `Field component skill: ${name}`;
|
|
608
|
+
if (subdir === "template-skills") return `Template component skill: ${name}`;
|
|
609
|
+
if (subdir === "widget-skills") return `Widget component skill: ${name}`;
|
|
610
|
+
if (subdir === "design-system-extension-skills") return `DSE component skill: ${name}`;
|
|
611
|
+
}
|
|
612
|
+
return relPath.replace(/\.md$/, "").split("/").pop();
|
|
613
|
+
}
|
|
614
|
+
function generateAiConfigs(targetDir, aiTool) {
|
|
615
|
+
const aiCommonDir = path.join(targetDir, ".ai-common");
|
|
616
|
+
if (!fs.existsSync(aiCommonDir)) return;
|
|
617
|
+
const cfg = AI_GEN_CONFIGS[aiTool];
|
|
618
|
+
const { tokens } = cfg;
|
|
619
|
+
const skillsSrc = path.join(aiCommonDir, "skills");
|
|
620
|
+
if (fs.existsSync(skillsSrc)) {
|
|
621
|
+
let processSkillsDir2 = function(srcDir, relDir = "") {
|
|
622
|
+
for (const entry of fs.readdirSync(srcDir, { withFileTypes: true })) {
|
|
623
|
+
const relPath = relDir ? `${relDir}/${entry.name}` : entry.name;
|
|
624
|
+
const srcPath = path.join(srcDir, entry.name);
|
|
625
|
+
if (entry.isDirectory()) {
|
|
626
|
+
processSkillsDir2(srcPath, relPath);
|
|
627
|
+
} else if (entry.name.endsWith(".md")) {
|
|
628
|
+
const { body } = parseAiMeta(fs.readFileSync(srcPath, "utf-8"));
|
|
629
|
+
const outContent = applyTokens(body, tokens);
|
|
630
|
+
let frontmatter = "";
|
|
631
|
+
if (aiTool === "cursor") {
|
|
632
|
+
const desc = cursorSkillDescription(relPath);
|
|
633
|
+
frontmatter = `---
|
|
634
|
+
description: ${desc}
|
|
635
|
+
alwaysApply: false
|
|
636
|
+
---
|
|
637
|
+
|
|
638
|
+
`;
|
|
639
|
+
}
|
|
640
|
+
const outName = `${entry.name.replace(/\.md$/, "")}.${cfg.skillExt}`;
|
|
641
|
+
const outDir = path.join(targetDir, cfg.skillDir, relDir);
|
|
642
|
+
fs.mkdirSync(outDir, { recursive: true });
|
|
643
|
+
fs.writeFileSync(path.join(outDir, outName), frontmatter + outContent);
|
|
644
|
+
}
|
|
645
|
+
}
|
|
646
|
+
};
|
|
647
|
+
var processSkillsDir = processSkillsDir2;
|
|
648
|
+
processSkillsDir2(skillsSrc);
|
|
649
|
+
}
|
|
650
|
+
const promptsSrc = path.join(aiCommonDir, "prompts");
|
|
651
|
+
if (fs.existsSync(promptsSrc)) {
|
|
652
|
+
const promptsDest = path.join(targetDir, cfg.promptDir);
|
|
653
|
+
fs.mkdirSync(promptsDest, { recursive: true });
|
|
654
|
+
for (const entry of fs.readdirSync(promptsSrc, { withFileTypes: true })) {
|
|
655
|
+
const srcPath = path.join(promptsSrc, entry.name);
|
|
656
|
+
if (entry.name === "component-manifest.json") {
|
|
657
|
+
fs.copyFileSync(srcPath, path.join(promptsDest, entry.name));
|
|
658
|
+
} else if (entry.name.endsWith(".md")) {
|
|
659
|
+
const { meta, body } = parseAiMeta(fs.readFileSync(srcPath, "utf-8"));
|
|
660
|
+
const outContent = applyTokens(body, tokens);
|
|
661
|
+
const basename = entry.name.replace(/\.md$/, "");
|
|
662
|
+
let frontmatter = "";
|
|
663
|
+
if (aiTool === "copilot") {
|
|
664
|
+
frontmatter = `---
|
|
665
|
+
agent: agent
|
|
666
|
+
description: ${meta.description || basename}
|
|
667
|
+
---
|
|
668
|
+
|
|
669
|
+
`;
|
|
670
|
+
} else if (aiTool === "cursor") {
|
|
671
|
+
frontmatter = `---
|
|
672
|
+
description: Workflow prompt: ${basename}
|
|
673
|
+
alwaysApply: false
|
|
674
|
+
---
|
|
675
|
+
|
|
676
|
+
`;
|
|
677
|
+
}
|
|
678
|
+
fs.writeFileSync(path.join(promptsDest, `${basename}.${cfg.promptExt}`), frontmatter + outContent);
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
const instructionsSrc = path.join(aiCommonDir, "instructions");
|
|
683
|
+
if (fs.existsSync(instructionsSrc)) {
|
|
684
|
+
const instructionsDest = path.join(targetDir, cfg.instructionsDir);
|
|
685
|
+
fs.mkdirSync(instructionsDest, { recursive: true });
|
|
686
|
+
for (const entry of fs.readdirSync(instructionsSrc, { withFileTypes: true })) {
|
|
687
|
+
if (!entry.name.endsWith(".md")) continue;
|
|
688
|
+
const { meta, body } = parseAiMeta(fs.readFileSync(path.join(instructionsSrc, entry.name), "utf-8"));
|
|
689
|
+
const outContent = applyTokens(body, tokens);
|
|
690
|
+
const basename = entry.name.replace(/\.md$/, "");
|
|
691
|
+
let frontmatter = "";
|
|
692
|
+
if (aiTool === "cursor") {
|
|
693
|
+
frontmatter = meta.globs ? `---
|
|
694
|
+
globs: ["${meta.globs}"]
|
|
695
|
+
---
|
|
696
|
+
|
|
697
|
+
` : `---
|
|
698
|
+
alwaysApply: false
|
|
699
|
+
---
|
|
700
|
+
|
|
701
|
+
`;
|
|
702
|
+
} else if (aiTool === "copilot") {
|
|
703
|
+
if (meta.globs) frontmatter = `---
|
|
704
|
+
applyTo: '${meta.globs}'
|
|
705
|
+
---
|
|
706
|
+
|
|
707
|
+
`;
|
|
708
|
+
}
|
|
709
|
+
fs.writeFileSync(path.join(instructionsDest, `${basename}.${cfg.instructionsExt}`), frontmatter + outContent);
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
const agentsSrc = path.join(aiCommonDir, "agents");
|
|
713
|
+
if (fs.existsSync(agentsSrc)) {
|
|
714
|
+
const agentsDest = path.join(targetDir, cfg.agentsDir);
|
|
715
|
+
fs.mkdirSync(agentsDest, { recursive: true });
|
|
716
|
+
for (const entry of fs.readdirSync(agentsSrc, { withFileTypes: true })) {
|
|
717
|
+
if (!entry.name.endsWith(".md")) continue;
|
|
718
|
+
const basename = entry.name.replace(/\.md$/, "");
|
|
719
|
+
const srcPath = path.join(agentsSrc, entry.name);
|
|
720
|
+
const { meta, body } = parseAiMeta(fs.readFileSync(srcPath, "utf-8"));
|
|
721
|
+
const outContent = applyTokens(body, tokens);
|
|
722
|
+
let frontmatter = "";
|
|
723
|
+
if (aiTool === "copilot") {
|
|
724
|
+
const description = applyTokens(meta.description || "", tokens);
|
|
725
|
+
const name = meta.name || basename.replace(/-/g, " ").replace(/\b\w/g, (c) => c.toUpperCase());
|
|
726
|
+
frontmatter = `---
|
|
727
|
+
description: "${description}"
|
|
728
|
+
name: '${name}'
|
|
729
|
+
tools: [read, edit, search, execute, agent, vscode_askQuestions]
|
|
730
|
+
user-invocable: true
|
|
731
|
+
disable-model-invocation: false
|
|
732
|
+
---
|
|
733
|
+
|
|
734
|
+
`;
|
|
735
|
+
} else if (aiTool === "cursor") {
|
|
736
|
+
const description = applyTokens(meta.description || `Agent config: ${basename}`, tokens);
|
|
737
|
+
frontmatter = `---
|
|
738
|
+
description: ${description}
|
|
739
|
+
alwaysApply: false
|
|
740
|
+
---
|
|
741
|
+
|
|
742
|
+
`;
|
|
743
|
+
}
|
|
744
|
+
fs.writeFileSync(path.join(agentsDest, `${basename}.${cfg.agentExt}`), frontmatter + outContent);
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
const globalSrc = path.join(aiCommonDir, "global");
|
|
748
|
+
if (fs.existsSync(globalSrc)) {
|
|
749
|
+
const instructionsSrc2 = path.join(globalSrc, "ai-agent-instructions.md");
|
|
750
|
+
if (fs.existsSync(instructionsSrc2)) {
|
|
751
|
+
const content = applyTokens(fs.readFileSync(instructionsSrc2, "utf-8"), tokens);
|
|
752
|
+
if (aiTool === "copilot") {
|
|
753
|
+
fs.mkdirSync(path.join(targetDir, ".github"), { recursive: true });
|
|
754
|
+
fs.writeFileSync(path.join(targetDir, ".github", "copilot-instructions.md"), content);
|
|
755
|
+
} else if (aiTool === "cursor") {
|
|
756
|
+
fs.mkdirSync(path.join(targetDir, ".cursor", "rules"), { recursive: true });
|
|
757
|
+
const fm = "---\ndescription: Core rules for working with Pega SDK components\nalwaysApply: true\n---\n\n";
|
|
758
|
+
fs.writeFileSync(path.join(targetDir, ".cursor", "rules", "pega-sdk.mdrules"), fm + content);
|
|
759
|
+
} else if (aiTool === "claude-code") {
|
|
760
|
+
fs.writeFileSync(path.join(targetDir, "AGENTS.md"), content);
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
fs.rmSync(aiCommonDir, { recursive: true });
|
|
765
|
+
}
|
|
524
766
|
function copyDir(src, dest) {
|
|
525
767
|
fs.mkdirSync(dest, { recursive: true });
|
|
526
768
|
for (const entry of fs.readdirSync(src, { withFileTypes: true })) {
|
|
@@ -536,17 +778,18 @@ function copyDir(src, dest) {
|
|
|
536
778
|
}
|
|
537
779
|
|
|
538
780
|
// src/index.ts
|
|
781
|
+
var require2 = createRequire(import.meta.url);
|
|
782
|
+
var { version: sdkVersion } = require2("../package.json");
|
|
539
783
|
async function main() {
|
|
540
784
|
console.clear();
|
|
541
785
|
p.intro(pc.bgCyan(pc.black(" @pega/sdk ")));
|
|
786
|
+
p.log.info(`Using @pega/sdk v${sdkVersion}`);
|
|
542
787
|
const args = process.argv.slice(2);
|
|
543
788
|
const command = args[0];
|
|
544
789
|
if (command !== "init") {
|
|
545
|
-
p.log.error(
|
|
546
|
-
`Unknown command "${command ?? ""}".
|
|
790
|
+
p.log.error(`Unknown command "${command ?? ""}".
|
|
547
791
|
|
|
548
|
-
Usage: ${pc.cyan("npx @pega/sdk init")}`
|
|
549
|
-
);
|
|
792
|
+
Usage: ${pc.cyan("npx @pega/sdk init")}`);
|
|
550
793
|
process.exit(1);
|
|
551
794
|
}
|
|
552
795
|
const nameResult = await p.text({
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pega/sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "Scaffold a Pega SDK application project",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"sdk": "./dist/index.js"
|
|
8
8
|
},
|
|
9
9
|
"publishConfig": {
|
|
10
|
-
"registry": "https://registry.npmjs.org/"
|
|
10
|
+
"registry": "https://registry.npmjs.org/",
|
|
11
|
+
"access": "public"
|
|
11
12
|
},
|
|
12
13
|
"files": [
|
|
13
14
|
"dist",
|
|
@@ -22,13 +23,13 @@
|
|
|
22
23
|
"prepack": "npm run build"
|
|
23
24
|
},
|
|
24
25
|
"dependencies": {
|
|
25
|
-
"@clack/prompts": "^
|
|
26
|
+
"@clack/prompts": "^1.7.0",
|
|
26
27
|
"picocolors": "^1.1.1"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|
|
29
|
-
"@types/node": "^
|
|
30
|
-
"tsup": "^8.
|
|
31
|
-
"typescript": "~
|
|
30
|
+
"@types/node": "^26.1.1",
|
|
31
|
+
"tsup": "^8.5.1",
|
|
32
|
+
"typescript": "~6.0.3"
|
|
32
33
|
},
|
|
33
34
|
"engines": {
|
|
34
35
|
"node": ">=20.0.0"
|
|
@@ -9,23 +9,23 @@
|
|
|
9
9
|
"dev": "ng serve --open"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@angular/animations": "^
|
|
13
|
-
"@angular/common": "^
|
|
14
|
-
"@angular/compiler": "^
|
|
15
|
-
"@angular/core": "^
|
|
16
|
-
"@angular/forms": "^
|
|
17
|
-
"@angular/platform-browser": "^
|
|
18
|
-
"@angular/platform-browser-dynamic": "^
|
|
19
|
-
"@angular/router": "^
|
|
12
|
+
"@angular/animations": "^21.2.0",
|
|
13
|
+
"@angular/common": "^21.2.0",
|
|
14
|
+
"@angular/compiler": "^21.2.0",
|
|
15
|
+
"@angular/core": "^21.2.0",
|
|
16
|
+
"@angular/forms": "^21.2.0",
|
|
17
|
+
"@angular/platform-browser": "^21.2.0",
|
|
18
|
+
"@angular/platform-browser-dynamic": "^21.2.0",
|
|
19
|
+
"@angular/router": "^21.2.0",
|
|
20
20
|
"@pega/sdk-angular": "^0.1.0",
|
|
21
|
-
"rxjs": "~7.8.
|
|
22
|
-
"tslib": "^2.
|
|
23
|
-
"zone.js": "~0.
|
|
21
|
+
"rxjs": "~7.8.2",
|
|
22
|
+
"tslib": "^2.8.1",
|
|
23
|
+
"zone.js": "~0.16.2"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@angular-devkit/build-angular": "^
|
|
27
|
-
"@angular/cli": "^
|
|
28
|
-
"@angular/compiler-cli": "^
|
|
29
|
-
"typescript": "~5.
|
|
26
|
+
"@angular-devkit/build-angular": "^21.2.0",
|
|
27
|
+
"@angular/cli": "^21.2.0",
|
|
28
|
+
"@angular/compiler-cli": "^21.2.0",
|
|
29
|
+
"typescript": "~5.9.3"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
"noFallthroughCasesInSwitch": true,
|
|
11
11
|
"sourceMap": true,
|
|
12
12
|
"declaration": false,
|
|
13
|
-
"downlevelIteration": true,
|
|
14
13
|
"experimentalDecorators": true,
|
|
15
14
|
"moduleResolution": "bundler",
|
|
16
15
|
"importHelpers": true,
|
|
@@ -21,7 +20,8 @@
|
|
|
21
20
|
"paths": {
|
|
22
21
|
"@pega/sdk-angular": ["../../packages/sdk-angular/src/index.ts"],
|
|
23
22
|
"@pega/sdk-types": ["../../packages/sdk-types/src/index.ts"]
|
|
24
|
-
}
|
|
23
|
+
},
|
|
24
|
+
"ignoreDeprecations": "5.0"
|
|
25
25
|
},
|
|
26
26
|
"angularCompilerOptions": {
|
|
27
27
|
"enableI18nLegacyMessageIdFormat": false,
|
|
@@ -16,11 +16,9 @@ export default function App() {
|
|
|
16
16
|
return (
|
|
17
17
|
<View style={styles.container}>
|
|
18
18
|
<Text style={styles.title}>Pega SDK — React Native</Text>
|
|
19
|
-
<Text style={styles.subtitle}>
|
|
20
|
-
Configure sdk-config.json and implement your Pega integration.
|
|
21
|
-
</Text>
|
|
19
|
+
<Text style={styles.subtitle}>Configure sdk-config.json and implement your Pega integration.</Text>
|
|
22
20
|
<View style={styles.buttonContainer}>
|
|
23
|
-
<Button title=
|
|
21
|
+
<Button title="Create Case" onPress={handleCreateCase} />
|
|
24
22
|
</View>
|
|
25
23
|
</View>
|
|
26
24
|
);
|
|
@@ -10,13 +10,13 @@
|
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@pega/sdk-react": "^0.1.0",
|
|
13
|
-
"expo": "~
|
|
14
|
-
"react": "^
|
|
15
|
-
"react-native": "0.
|
|
13
|
+
"expo": "~57.0.4",
|
|
14
|
+
"react": "^19.2.7",
|
|
15
|
+
"react-native": "0.86.0"
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
|
-
"@babel/core": "^
|
|
19
|
-
"@types/react": "^
|
|
20
|
-
"typescript": "~
|
|
18
|
+
"@babel/core": "^8.0.1",
|
|
19
|
+
"@types/react": "^19.2.17",
|
|
20
|
+
"typescript": "~6.0.3"
|
|
21
21
|
}
|
|
22
22
|
}
|