@pega/sdk 0.0.1 → 0.0.3
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/dist/index.js +2 -19
- package/package.json +4 -1
- package/templates/react-sdk-reference/.claude/instructions/component-map.md +38 -0
- package/templates/react-sdk-reference/.claude/instructions/dse-component.md +75 -0
- package/templates/react-sdk-reference/.claude/instructions/field-component.md +71 -0
- package/templates/react-sdk-reference/.claude/instructions/template-component.md +92 -0
- package/templates/react-sdk-reference/.claude/instructions/widget-component.md +87 -0
- package/templates/react-sdk-reference/.claude/prompts/add-component.md +144 -0
- package/templates/react-sdk-reference/.claude/prompts/component-manifest.json +111 -0
- package/templates/react-sdk-reference/.claude/prompts/generate-all-components.md +149 -0
- package/templates/react-sdk-reference/.claude/prompts/generate-dse-components.md +126 -0
- package/templates/react-sdk-reference/.claude/prompts/generate-field-components.md +139 -0
- package/templates/react-sdk-reference/.claude/prompts/generate-template-components.md +151 -0
- package/templates/react-sdk-reference/.claude/prompts/generate-widget-components.md +124 -0
- package/templates/react-sdk-reference/.claude/prompts/identify-components.md +105 -0
- package/templates/react-sdk-reference/.claude/prompts/replace-design-system.md +519 -0
- package/templates/react-sdk-reference/.claude/skills/component-contracts.md +140 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/AlertBanner.md +135 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Banner.md +149 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/CaseSummaryFields.md +154 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/DetailsFields.md +144 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroup.md +131 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroupList.md +111 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldValueList.md +115 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Operator.md +149 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Pulse.md +83 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/RichTextEditor.md +206 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/WssQuickCreate.md +135 -0
- package/templates/react-sdk-reference/.claude/skills/design-system-extension.md +289 -0
- package/templates/react-sdk-reference/.claude/skills/field-components.md +294 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/AutoComplete.md +112 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/CancelAlert.md +203 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Checkbox.md +158 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Currency.md +106 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Date.md +99 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/DateTime.md +103 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Decimal.md +98 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Dropdown.md +114 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Email.md +107 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Group.md +90 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Integer.md +87 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Location.md +136 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Multiselect.md +164 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/ObjectReference.md +164 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Percentage.md +92 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Phone.md +110 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/RadioButtons.md +146 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/RichText.md +138 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/ScalarList.md +124 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/SelectableCard.md +216 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/SemanticLink.md +148 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextArea.md +96 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextContent.md +101 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/TextInput.md +104 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/Time.md +88 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/URL.md +85 -0
- package/templates/react-sdk-reference/.claude/skills/field-skills/UserReference.md +180 -0
- package/templates/react-sdk-reference/.claude/skills/run-and-verify.md +68 -0
- package/templates/react-sdk-reference/.claude/skills/template-components.md +322 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/AdvancedSearch.md +144 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/AppShell.md +122 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/BannerPage.md +83 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseSummary.md +100 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseView.md +131 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/CaseViewActionsMenu.md +126 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/Confirmation.md +107 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DataReference.md +120 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultForm.md +102 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultPage.md +110 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/Details.md +88 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsSubTabs.md +95 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsThreeColumn.md +78 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsTwoColumn.md +78 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/DynamicTabs.md +101 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/FieldGroupTemplate.md +109 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/HierarchicalForm.md +113 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboard.md +104 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboardPage.md +85 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListPage.md +68 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/ListView.md +139 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/MultiReferenceReadOnly.md +80 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/NarrowWide.md +141 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/OneColumn.md +109 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/PromotedFilters.md +124 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/SelfServiceCaseView.md +135 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/SimpleTable.md +127 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/SingleReferenceReadOnly.md +103 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/SubTabs.md +79 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/TwoColumn.md +131 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/WideNarrow.md +150 -0
- package/templates/react-sdk-reference/.claude/skills/template-skills/WssNavBar.md +135 -0
- package/templates/react-sdk-reference/.claude/skills/widget-components.md +271 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/AppAnnouncement.md +82 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Attachment.md +146 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/CaseHistory.md +107 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/FileUtility.md +200 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/Followers.md +99 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/QuickCreate.md +114 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/SummaryItem.md +167 -0
- package/templates/react-sdk-reference/.claude/skills/widget-skills/ToDo.md +190 -0
- package/templates/react-sdk-reference/.cursor/rules/component-map.mdrules +41 -0
- package/templates/react-sdk-reference/.cursor/rules/dse-component.mdrules +78 -0
- package/templates/react-sdk-reference/.cursor/rules/field-component.mdrules +74 -0
- package/templates/react-sdk-reference/.cursor/rules/pega-sdk.mdrules +247 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/add-component.mdrules +149 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/component-manifest.json +111 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-all-components.mdrules +154 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-dse-components.mdrules +131 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-field-components.mdrules +144 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-template-components.mdrules +156 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/generate-widget-components.mdrules +129 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/identify-components.mdrules +110 -0
- package/templates/react-sdk-reference/.cursor/rules/prompts/replace-design-system.mdrules +524 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/component-contracts.mdrules +145 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/AlertBanner.mdrules +140 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/Banner.mdrules +154 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/CaseSummaryFields.mdrules +159 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/DetailsFields.mdrules +149 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/FieldGroup.mdrules +136 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/FieldGroupList.mdrules +116 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/FieldValueList.mdrules +120 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/Operator.mdrules +154 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/Pulse.mdrules +88 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/RichTextEditor.mdrules +211 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/WssQuickCreate.mdrules +140 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension.mdrules +294 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-components.mdrules +299 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/AutoComplete.mdrules +117 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/CancelAlert.mdrules +208 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Checkbox.mdrules +163 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Currency.mdrules +111 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Date.mdrules +104 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/DateTime.mdrules +108 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Decimal.mdrules +103 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Dropdown.mdrules +119 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Email.mdrules +112 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Group.mdrules +95 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Integer.mdrules +92 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Location.mdrules +141 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Multiselect.mdrules +169 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/ObjectReference.mdrules +169 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Percentage.mdrules +97 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Phone.mdrules +115 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/RadioButtons.mdrules +151 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/RichText.mdrules +143 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/ScalarList.mdrules +129 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/SelectableCard.mdrules +221 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/SemanticLink.mdrules +153 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextArea.mdrules +101 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextContent.mdrules +106 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextInput.mdrules +109 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Time.mdrules +93 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/URL.mdrules +90 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/UserReference.mdrules +185 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/run-and-verify.mdrules +73 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-components.mdrules +327 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AdvancedSearch.mdrules +149 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AppShell.mdrules +127 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/BannerPage.mdrules +88 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseSummary.mdrules +105 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseView.mdrules +136 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseViewActionsMenu.mdrules +131 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/Confirmation.mdrules +112 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DataReference.mdrules +125 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultForm.mdrules +107 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultPage.mdrules +115 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/Details.mdrules +93 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DetailsSubTabs.mdrules +100 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DetailsThreeColumn.mdrules +83 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DetailsTwoColumn.mdrules +83 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DynamicTabs.mdrules +106 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/FieldGroupTemplate.mdrules +114 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/HierarchicalForm.mdrules +118 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/InlineDashboard.mdrules +109 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/InlineDashboardPage.mdrules +90 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/ListPage.mdrules +73 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/ListView.mdrules +144 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/MultiReferenceReadOnly.mdrules +85 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/NarrowWide.mdrules +146 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/OneColumn.mdrules +114 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/PromotedFilters.mdrules +129 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SelfServiceCaseView.mdrules +140 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SimpleTable.mdrules +132 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SingleReferenceReadOnly.mdrules +108 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SubTabs.mdrules +84 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/TwoColumn.mdrules +136 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WideNarrow.mdrules +155 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WssNavBar.mdrules +140 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-components.mdrules +276 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/AppAnnouncement.mdrules +87 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/Attachment.mdrules +151 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/CaseHistory.mdrules +112 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/FileUtility.mdrules +205 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/Followers.mdrules +104 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/QuickCreate.mdrules +119 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/SummaryItem.mdrules +172 -0
- package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/ToDo.mdrules +195 -0
- package/templates/react-sdk-reference/.cursor/rules/template-component.mdrules +95 -0
- package/templates/react-sdk-reference/.cursor/rules/widget-component.mdrules +90 -0
- package/templates/react-sdk-reference/.github/copilot-instructions.md +58 -0
- package/templates/react-sdk-reference/.github/prompts/add-component.prompt.md +144 -16
- package/templates/react-sdk-reference/.github/prompts/generate-all-components.prompt.md +154 -0
- package/templates/react-sdk-reference/.github/prompts/generate-dse-components.prompt.md +131 -0
- package/templates/react-sdk-reference/.github/prompts/generate-field-components.prompt.md +144 -0
- package/templates/react-sdk-reference/.github/prompts/generate-template-components.prompt.md +156 -0
- package/templates/react-sdk-reference/.github/prompts/generate-widget-components.prompt.md +129 -0
- package/templates/react-sdk-reference/.github/skills/design-system-extension.md +58 -18
- package/templates/react-sdk-reference/.github/skills/field-components.md +55 -23
- package/templates/react-sdk-reference/.github/skills/template-components.md +48 -11
- package/templates/react-sdk-reference/.github/skills/widget-components.md +49 -12
- package/templates/react-sdk-reference/AGENTS.md +217 -29
- package/templates/react-sdk-reference/package.json +3 -2
- package/templates/react-sdk-reference/pega-auth-0.2.42.tgz +0 -0
- package/templates/react-sdk-reference/pega-constellationjs-0.26.3-local.tgz +0 -0
- package/templates/react-sdk-reference/pega-sdk-react-0.1.0.tgz +0 -0
- package/templates/react-sdk-reference/pega-sdk-types-0.1.0.tgz +0 -0
- package/templates/react-sdk-reference/sdk-config.json +1 -1
- package/templates/react-sdk-reference/vite.config.ts +1 -1
- package/templates/react-sdk-reference/.github/prompts/replace-all-fields.prompt.md +0 -48
- package/templates/react-sdk-reference/.github/prompts/replace-component.prompt.md +0 -81
- package/templates/react-sdk-reference/.github/prompts/replace-field.prompt.md +0 -41
- package/templates/react-sdk-reference/.github/prompts/swap-design-system.prompt.md +0 -49
- package/templates/react-sdk-reference/.github/skills/swap-design-system.md +0 -105
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
## Step 0 — Resolve inputs
|
|
2
|
+
|
|
3
|
+
Read the user's message carefully. Extract:
|
|
4
|
+
|
|
5
|
+
- **Design system** — the UI library to use (e.g. `Ant Design`, `Chakra UI`, `Carbon`, `Radix UI`)
|
|
6
|
+
- **Output base path** — the folder where template components should be generated (e.g. `src/components/template/`)
|
|
7
|
+
- **Component list** — which templates to generate (default: all 32 listed below)
|
|
8
|
+
|
|
9
|
+
Both **design system** and **output base path** are required. If either is missing or ambiguous, ask both unresolved items in one numbered list. Do not assume or default the output path — the client's folder structure may differ from the reference app.
|
|
10
|
+
|
|
11
|
+
Example questions (ask only the ones that are actually missing):
|
|
12
|
+
1. Which design system should I use? (e.g. Ant Design, Chakra UI, Carbon, Radix UI)
|
|
13
|
+
2. Where should the template components be generated? (e.g. `src/components/template/`)
|
|
14
|
+
|
|
15
|
+
> **Note:** The design system applies only to **layout templates** (TwoColumn, OneColumn, NarrowWide, WideNarrow, and their sub-variants). Form templates and page templates use the PConnect bridge pattern and are design-system agnostic — they will be generated without DS primitives regardless of your choice.
|
|
16
|
+
|
|
17
|
+
If the user specified a subset (e.g., "just TwoColumn and OneColumn"), restrict the list accordingly.
|
|
18
|
+
|
|
19
|
+
Once both are known, continue to Step 1.
|
|
20
|
+
|
|
21
|
+
### Full component list (default — 32 templates)
|
|
22
|
+
|
|
23
|
+
| Component | Category |
|
|
24
|
+
|---|---|
|
|
25
|
+
| AdvancedSearch | Page |
|
|
26
|
+
| AppShell | Page |
|
|
27
|
+
| BannerPage | Page |
|
|
28
|
+
| CaseSummary | Page |
|
|
29
|
+
| CaseView | Page |
|
|
30
|
+
| CaseViewActionsMenu | Widget |
|
|
31
|
+
| Confirmation | Page |
|
|
32
|
+
| DataReference | Form |
|
|
33
|
+
| DefaultForm | Form |
|
|
34
|
+
| DefaultPage | Page |
|
|
35
|
+
| Details | Layout |
|
|
36
|
+
| DetailsSubTabs | Layout |
|
|
37
|
+
| DetailsThreeColumn | Layout |
|
|
38
|
+
| DetailsTwoColumn | Layout |
|
|
39
|
+
| DynamicTabs | Navigation |
|
|
40
|
+
| FieldGroupTemplate | Form |
|
|
41
|
+
| HierarchicalForm | Form |
|
|
42
|
+
| InlineDashboard | Page |
|
|
43
|
+
| InlineDashboardPage | Page |
|
|
44
|
+
| ListPage | Page |
|
|
45
|
+
| ListView | Page |
|
|
46
|
+
| MultiReferenceReadOnly | Display |
|
|
47
|
+
| NarrowWide | Layout |
|
|
48
|
+
| OneColumn | Layout |
|
|
49
|
+
| PromotedFilters | Widget |
|
|
50
|
+
| SelfServiceCaseView | Page |
|
|
51
|
+
| SimpleTable | Table |
|
|
52
|
+
| SingleReferenceReadOnly | Display |
|
|
53
|
+
| SubTabs | Navigation |
|
|
54
|
+
| TwoColumn | Layout |
|
|
55
|
+
| WideNarrow | Layout |
|
|
56
|
+
| WssNavBar | Navigation |
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Step 1 — Read `template-components.md` (once, for the entire session)
|
|
61
|
+
|
|
62
|
+
Read the full contents of `.claude/skills/template-components.md`.
|
|
63
|
+
|
|
64
|
+
This gives you:
|
|
65
|
+
- **Layout template pattern** — DS-agnostic grid skeleton with `// [DS GRID]` placeholder; `templateCol` parsing logic; responsive behavior rules
|
|
66
|
+
- **Design System Adaptation section** — how to map the chosen DS's grid/flex primitive to the computed column ratios
|
|
67
|
+
- **Form template pattern** — PConnect bridge via `createElement(createPConnectComponent(), ...)` and `connectToState`; no DS involved
|
|
68
|
+
- **Page template pattern** — region extraction via `getRawMetadata()` and PConnect bridge; no DS involved
|
|
69
|
+
- Registration conventions and helper utilities
|
|
70
|
+
|
|
71
|
+
Keep this context active throughout the entire generation session. Do not re-read it per component.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Step 2 — Install and discover the design system (once)
|
|
76
|
+
|
|
77
|
+
Execute **Step 3** from `.claude/prompts/add-component.md` exactly as written:
|
|
78
|
+
- Check `package.json` for the DS package
|
|
79
|
+
- Install if missing, including any peer dependencies
|
|
80
|
+
- Report what was installed
|
|
81
|
+
|
|
82
|
+
Then execute **Step 4** from `.claude/prompts/add-component.md` exactly as written:
|
|
83
|
+
- Read the DS README from `node_modules`
|
|
84
|
+
- Discover exported layout components (Grid, Columns, Flex, SimpleGrid, etc.) from `dist/index.d.ts`
|
|
85
|
+
- Read prop interfaces for the grid/layout components needed by layout templates
|
|
86
|
+
- Note responsive breakpoint APIs and column sizing conventions
|
|
87
|
+
|
|
88
|
+
> You only need layout-related DS components. Form and page templates do not use the DS.
|
|
89
|
+
|
|
90
|
+
Build a **DS layout API reference** from this discovery. Reuse it for every layout template — do not repeat these commands per component.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Step 3 — Overwrite check (all at once)
|
|
95
|
+
|
|
96
|
+
For each component in the list, check whether `<outputPath>/<ComponentName>/<ComponentName>.tsx` already exists.
|
|
97
|
+
|
|
98
|
+
If **any** exist, report them all at once and ask:
|
|
99
|
+
> "The following N components already exist: [list]. How should I proceed?
|
|
100
|
+
> - **Overwrite all** — replace all existing implementations
|
|
101
|
+
> - **Skip existing** — only generate components that don't exist yet
|
|
102
|
+
> - **Cancel** — stop without generating anything"
|
|
103
|
+
|
|
104
|
+
Wait for the user's answer before proceeding. If none exist, continue immediately.
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Step 4 — Generate each component (loop)
|
|
109
|
+
|
|
110
|
+
For each component in the resolved list (in the order listed in Step 0):
|
|
111
|
+
|
|
112
|
+
### 4a — Read the component-specific skill file
|
|
113
|
+
Execute **Step 2** from `.claude/prompts/add-component.md` for this component:
|
|
114
|
+
- Read `.claude/skills/template-skills/<ComponentName>.md` fully
|
|
115
|
+
- Identify the template category from the skill file:
|
|
116
|
+
- **Layout** — uses DS grid primitives from Step 2's API reference
|
|
117
|
+
- **Form** — uses PConnect bridge + CSS classes; ignore DS
|
|
118
|
+
- **Page** — uses region extraction + PConnect bridge; ignore DS
|
|
119
|
+
- Pay attention to Behavioral Contract, sub-variants, and any Design System Mapping table
|
|
120
|
+
|
|
121
|
+
### 4b — Generate the component files
|
|
122
|
+
Execute **Step 5** from `.claude/prompts/add-component.md` for this component:
|
|
123
|
+
- Create `<outputPath>/<ComponentName>/` directory
|
|
124
|
+
- Create `<ComponentName>.tsx` using:
|
|
125
|
+
- **Layout templates**: DS-agnostic skeleton from `template-components.md` with the `// [DS GRID]` section filled in using DS layout API confirmed in Step 2
|
|
126
|
+
- **Form/Page templates**: PConnect bridge pattern from `template-components.md`; no DS primitives
|
|
127
|
+
- Behavioral Contract from the component skill file
|
|
128
|
+
- Create `index.tsx` if required by the skill file:
|
|
129
|
+
```typescript
|
|
130
|
+
export { default } from './<ComponentName>';
|
|
131
|
+
```
|
|
132
|
+
- Create any CSS file required by the skill file (e.g., `DefaultForm.css` with grid classes)
|
|
133
|
+
|
|
134
|
+
### 4c — Register the component
|
|
135
|
+
Execute **Step 6** from `.claude/prompts/add-component.md` for this component:
|
|
136
|
+
- Add the import to `src/components/component-map.ts` in the Templates section
|
|
137
|
+
- Add the entry to `getSampleComponentMap()` under the templates comment
|
|
138
|
+
- For sub-variants (e.g., TwoColumnPage, TwoColumnTab), register each key separately pointing to its own file or a shared implementation as specified in the skill file
|
|
139
|
+
- Do not reorder or restructure any existing entries
|
|
140
|
+
|
|
141
|
+
### 4d — Report progress
|
|
142
|
+
After each component: "`<ComponentName>` ✓ — `<Layout | Form | Page>` template`<, using <DS component name> for grid>` if layout"
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Step 5 — Verify the build
|
|
147
|
+
|
|
148
|
+
Execute **Step 7** from `.claude/prompts/add-component.md` exactly as written:
|
|
149
|
+
- Run `npm run build`
|
|
150
|
+
- Fix any TypeScript or build errors before reporting completion
|
|
151
|
+
- Report a summary: list of all files created and all entries added to `component-map.ts`
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
## Step 0 — Resolve inputs
|
|
2
|
+
|
|
3
|
+
Read the user's message carefully. Extract:
|
|
4
|
+
|
|
5
|
+
- **Design system** — the UI library to use (e.g. `Ant Design`, `Chakra UI`, `Carbon`, `Radix UI`)
|
|
6
|
+
- **Output base path** — the folder where widget components should be generated (e.g. `src/components/widget/`)
|
|
7
|
+
- **Component list** — which widgets to generate (default: all 9 listed below)
|
|
8
|
+
|
|
9
|
+
Both **design system** and **output base path** are required. If either is missing or ambiguous, ask both unresolved items in one numbered list. Do not assume or default the output path — the client's folder structure may differ from the reference app.
|
|
10
|
+
|
|
11
|
+
Example questions (ask only the ones that are actually missing):
|
|
12
|
+
1. Which design system should I use? (e.g. Ant Design, Chakra UI, Carbon, Radix UI)
|
|
13
|
+
2. Where should the widget components be generated? (e.g. `src/components/widget/`)
|
|
14
|
+
|
|
15
|
+
If the user specified a subset (e.g., "just ToDo and Attachment"), restrict the list accordingly.
|
|
16
|
+
|
|
17
|
+
Once both are known, continue to Step 1.
|
|
18
|
+
|
|
19
|
+
### Full component list (default — 9 widgets)
|
|
20
|
+
|
|
21
|
+
| Component | Description |
|
|
22
|
+
|---|---|
|
|
23
|
+
| AppAnnouncement | System-wide announcements |
|
|
24
|
+
| Attachment | File upload/download |
|
|
25
|
+
| CaseHistory | Case audit trail |
|
|
26
|
+
| FileUtility | File management utility |
|
|
27
|
+
| Followers | Case followers list |
|
|
28
|
+
| QuickCreate | Quick case creation buttons |
|
|
29
|
+
| SummaryItem | Single summary card |
|
|
30
|
+
| SummaryList | List of summary cards |
|
|
31
|
+
| ToDo | Assignment worklist |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Step 1 — Read `widget-components.md` (once, for the entire session)
|
|
36
|
+
|
|
37
|
+
Read the full contents of `.claude/skills/widget-components.md`.
|
|
38
|
+
|
|
39
|
+
This gives you:
|
|
40
|
+
- The DS-agnostic data-fetching skeleton with `// [DS RENDER]` placeholder
|
|
41
|
+
- The Design System Adaptation guide (primitive mapping table, icon discovery rules)
|
|
42
|
+
- All common Pega APIs used in widgets: `PCore.getDataPageUtils()`, `PCore.getMashupApi()`, `PCore.getAttachmentUtils()`, `pConn.getCaseInfo()`, etc.
|
|
43
|
+
- Registration conventions
|
|
44
|
+
|
|
45
|
+
> The PCore data-fetching logic is always identical regardless of design system. Only the `// [DS RENDER]` section changes per DS.
|
|
46
|
+
|
|
47
|
+
Keep this context active throughout the entire generation session. Do not re-read it per component.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Step 2 — Install and discover the design system (once)
|
|
52
|
+
|
|
53
|
+
Execute **Step 3** from `.claude/prompts/add-component.md` exactly as written:
|
|
54
|
+
- Check `package.json` for the DS package
|
|
55
|
+
- Install if missing, including any peer dependencies
|
|
56
|
+
- Report what was installed
|
|
57
|
+
|
|
58
|
+
Then execute **Step 4** from `.claude/prompts/add-component.md` exactly as written:
|
|
59
|
+
- Read the DS README from `node_modules`
|
|
60
|
+
- Discover exported components from `dist/index.d.ts`
|
|
61
|
+
- Focus on presentation primitives used in widgets: Card, List, Table, Button, Badge, Spinner, Skeleton, Empty state
|
|
62
|
+
- Read prop interfaces for these components from `.d.ts` files
|
|
63
|
+
- If the DS has a companion icon package, discover its exports
|
|
64
|
+
|
|
65
|
+
Build a **DS UI primitive reference map** from this discovery. Reuse it for every widget — do not repeat these commands per component.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Step 3 — Overwrite check (all at once)
|
|
70
|
+
|
|
71
|
+
For each component in the list, check whether `<outputPath>/<ComponentName>/<ComponentName>.tsx` already exists.
|
|
72
|
+
|
|
73
|
+
If **any** exist, report them all at once and ask:
|
|
74
|
+
> "The following N components already exist: [list]. How should I proceed?
|
|
75
|
+
> - **Overwrite all** — replace all existing implementations
|
|
76
|
+
> - **Skip existing** — only generate components that don't exist yet
|
|
77
|
+
> - **Cancel** — stop without generating anything"
|
|
78
|
+
|
|
79
|
+
Wait for the user's answer before proceeding. If none exist, continue immediately.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Step 4 — Generate each component (loop)
|
|
84
|
+
|
|
85
|
+
For each component in the resolved list (in the order listed in Step 0):
|
|
86
|
+
|
|
87
|
+
### 4a — Read the component-specific skill file
|
|
88
|
+
Execute **Step 2** from `.claude/prompts/add-component.md` for this component:
|
|
89
|
+
- Read `.claude/skills/widget-skills/<ComponentName>.md` fully if it exists
|
|
90
|
+
- Pay attention to:
|
|
91
|
+
- **Behavioral Contract** — data fetching logic, PCore API calls, state management, action handlers
|
|
92
|
+
- **Design System Mapping** table — the recommended DS component for presentation
|
|
93
|
+
- If no skill file exists (e.g., `SummaryList`), use the general data-fetching pattern from `widget-components.md`
|
|
94
|
+
|
|
95
|
+
### 4b — Generate the component files
|
|
96
|
+
Execute **Step 5** from `.claude/prompts/add-component.md` for this component:
|
|
97
|
+
- Create `<outputPath>/<ComponentName>/` directory
|
|
98
|
+
- Create `<ComponentName>.tsx` using:
|
|
99
|
+
- The DS-agnostic data-fetching skeleton from `widget-components.md` (read in Step 1)
|
|
100
|
+
- The Behavioral Contract from the component skill file (PCore API calls, state, actions)
|
|
101
|
+
- The DS UI primitives confirmed in Step 2 (from the DS primitive reference map — no new terminal commands needed) filling in the `// [DS RENDER]` section
|
|
102
|
+
- Create `index.tsx` if required by the skill file:
|
|
103
|
+
```typescript
|
|
104
|
+
export { default } from './<ComponentName>';
|
|
105
|
+
```
|
|
106
|
+
- Create any CSS or utility files required by the skill file
|
|
107
|
+
|
|
108
|
+
### 4c — Register the component
|
|
109
|
+
Execute **Step 6** from `.claude/prompts/add-component.md` for this component:
|
|
110
|
+
- Add the import to `src/components/component-map.ts` in the Widgets section
|
|
111
|
+
- Add the entry to `getSampleComponentMap()` under the widgets comment
|
|
112
|
+
- Do not reorder or restructure any existing entries
|
|
113
|
+
|
|
114
|
+
### 4d — Report progress
|
|
115
|
+
After each component: "`<ComponentName>` ✓ — using `<DS card/list primitive>`"
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## Step 5 — Verify the build
|
|
120
|
+
|
|
121
|
+
Execute **Step 7** from `.claude/prompts/add-component.md` exactly as written:
|
|
122
|
+
- Run `npm run build`
|
|
123
|
+
- Fix any TypeScript or build errors before reporting completion
|
|
124
|
+
- Report a summary: list of all files created and all entries added to `component-map.ts`
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# identify-components
|
|
2
|
+
|
|
3
|
+
Analyze the attached screenshot and identify which SDK components from this application are visible in the image.
|
|
4
|
+
|
|
5
|
+
**Output only a single line** in this exact format — nothing else:
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
components="ComponentA,ComponentB,ComponentC"
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
This output can be pasted directly into a `/replace-design-system` invocation.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Visual Recognition Guide
|
|
16
|
+
|
|
17
|
+
Use the table below to map what you see in the image to SDK component names.
|
|
18
|
+
|
|
19
|
+
### Structural / layout components
|
|
20
|
+
|
|
21
|
+
| What you see | SDK component name | Category |
|
|
22
|
+
|---|---|---|
|
|
23
|
+
| Chevron/arrow step bar at the top of a form (e.g. "Step 1 → Step 2 → Step 3") | `Stages` | infra |
|
|
24
|
+
| Full case shell: step bar + case title + **action menu (⋮ or kebab)** + tabbed content area | `CaseView` | template |
|
|
25
|
+
| Row of action buttons at the bottom (Cancel / Save / Submit) | `ActionButtons` | infra |
|
|
26
|
+
| White/card area wrapping form fields | `DefaultForm` | template |
|
|
27
|
+
| Full-page layout with header + sidebar + content area | `AppShell` | template |
|
|
28
|
+
| Left-side vertical tab navigation | `VerticalTabs` | infra |
|
|
29
|
+
| Top navigation bar with logo + user menu | `NavBar` | infra |
|
|
30
|
+
| Top navigation bar (WSS / self-service variant) | `WssNavBar` | template |
|
|
31
|
+
| Two-column layout (equal or narrow/wide split) | `TwoColumn` / `NarrowWide` / `WideNarrow` | template |
|
|
32
|
+
| Single-column stacked layout | `OneColumn` | template |
|
|
33
|
+
| Tabbed panel inside a form or page | `SubTabs` / `Details` | template |
|
|
34
|
+
|
|
35
|
+
### Field components
|
|
36
|
+
|
|
37
|
+
| What you see | SDK component name | Category |
|
|
38
|
+
|---|---|---|
|
|
39
|
+
| Single-line text input box | `TextInput` | field |
|
|
40
|
+
| Multi-line text input / textarea | `TextArea` | field |
|
|
41
|
+
| Dropdown / select menu (chevron on right) | `Dropdown` | field |
|
|
42
|
+
| Phone input with country code prefix (e.g. "+1 ▼") | `Phone` | field |
|
|
43
|
+
| Date picker input (calendar icon) | `Date` | field |
|
|
44
|
+
| Date + time picker input | `DateTime` | field |
|
|
45
|
+
| Time-only picker | `Time` | field |
|
|
46
|
+
| Currency input ($ prefix or formatted number) | `Currency` | field |
|
|
47
|
+
| Percentage input (% suffix) | `Percentage` | field |
|
|
48
|
+
| Decimal / float number input | `Decimal` | field |
|
|
49
|
+
| Integer-only number input | `Integer` | field |
|
|
50
|
+
| Email input (envelope icon or @-hint) | `Email` | field |
|
|
51
|
+
| URL input (link icon or http-hint) | `URL` | field |
|
|
52
|
+
| Checkbox with label | `Checkbox` | field |
|
|
53
|
+
| Radio button group | `RadioButtons` | field |
|
|
54
|
+
| Multi-select / tag-style select with chips | `Multiselect` | field |
|
|
55
|
+
| Type-ahead / autocomplete input with suggestions | `AutoComplete` | field |
|
|
56
|
+
| Rich text editor (toolbar with Bold/Italic/etc.) | `RichText` | field |
|
|
57
|
+
| Read-only comma-separated list of values | `ScalarList` | field |
|
|
58
|
+
| Selectable card / tile (click to select, like a plan card) | `SelectableCard` | field |
|
|
59
|
+
| Map / location picker with pin icon | `Location` | field |
|
|
60
|
+
| Link to another object/record | `ObjectReference` | field |
|
|
61
|
+
| Hyperlink displayed inline | `SemanticLink` | field |
|
|
62
|
+
| User avatar + name displayed inline | `UserReference` | field |
|
|
63
|
+
| Inline alert / warning inside a form | `CancelAlert` | field |
|
|
64
|
+
| Static text block / paragraph inside a form | `TextContent` | field |
|
|
65
|
+
| Grouping box around related fields | `Group` | field |
|
|
66
|
+
|
|
67
|
+
### Widget components
|
|
68
|
+
|
|
69
|
+
| What you see | SDK component name | Category |
|
|
70
|
+
|---|---|---|
|
|
71
|
+
| To-do / task list card with assignments | `ToDo` | widget |
|
|
72
|
+
| File attachment area with upload button | `Attachment` | widget |
|
|
73
|
+
| Case history / audit trail table | `CaseHistory` | widget |
|
|
74
|
+
| File list with download actions | `FileUtility` | widget |
|
|
75
|
+
| List of follower avatars + "Follow" button | `Followers` | widget |
|
|
76
|
+
| "+" quick-create button with dropdown menu | `QuickCreate` | widget |
|
|
77
|
+
| Summary card for a single record with action menu | `SummaryItem` | widget |
|
|
78
|
+
| List of SummaryItem cards | `SummaryList` | widget |
|
|
79
|
+
| Announcement / news card | `AppAnnouncement` | widget |
|
|
80
|
+
|
|
81
|
+
### DSE / design system extension components
|
|
82
|
+
|
|
83
|
+
| What you see | SDK component name | Category |
|
|
84
|
+
|---|---|---|
|
|
85
|
+
| Coloured banner alert bar (info / warning / error / success) | `AlertBanner` | designSystemExtension |
|
|
86
|
+
| Hero-style banner with title + CTA button | `Banner` | designSystemExtension |
|
|
87
|
+
| Read-only field+value pairs in a case summary | `CaseSummaryFields` | designSystemExtension |
|
|
88
|
+
| Read-only label+value pairs in a details view | `DetailsFields` | designSystemExtension |
|
|
89
|
+
| Collapsible section with header (accordion-style) | `FieldGroup` | designSystemExtension |
|
|
90
|
+
| List of field groups with "Add" link | `FieldGroupList` | designSystemExtension |
|
|
91
|
+
| User operator info popover (name + contact) | `Operator` | designSystemExtension |
|
|
92
|
+
| Comment/pulse card with avatar + timestamp | `Pulse` | designSystemExtension |
|
|
93
|
+
| Rich text editor with theme-aware toolbar | `RichTextEditor` | designSystemExtension |
|
|
94
|
+
| Quick-create shortcut links list (WSS sidebar) | `WssQuickCreate` | designSystemExtension |
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Rules
|
|
99
|
+
|
|
100
|
+
1. **Only list components you can actually see rendered in the image.** Do not include components that might be present but are not visible (e.g. a NavBar not shown in the screenshot).
|
|
101
|
+
2. **Do not include `FieldValueList`** — it is an internal rendering helper, not a visible component.
|
|
102
|
+
3. **Structural components that frame a form always count** — if you see a step bar, include `Stages`; if you see action buttons, include `ActionButtons`.
|
|
103
|
+
4. **An avatar + form title alone is NOT `CaseView`** — `CaseView` requires a full case shell with an action/kebab menu and tabbed content. A simple avatar + heading above a form is just part of `DefaultForm`.
|
|
104
|
+
5. **When in doubt between two similar components** (e.g. `NarrowWide` vs `WideNarrow`), pick the one whose column ratio best matches the image proportions, or include both separated by a comma.
|
|
105
|
+
6. **Output only the single `components="..."` line.** No explanation, no list, no markdown — just that line.
|