@fluentcommerce/ai-skills 0.2.0 → 0.3.0

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.

Potentially problematic release.


This version of @fluentcommerce/ai-skills might be problematic. Click here for more details.

Files changed (169) hide show
  1. package/README.md +866 -616
  2. package/bin/cli.mjs +2112 -1973
  3. package/content/cli/agents/fluent-cli/agent.json +149 -149
  4. package/content/cli/agents/fluent-cli.md +132 -132
  5. package/content/cli/skills/fluent-bootstrap/SKILL.md +214 -190
  6. package/content/cli/skills/fluent-cli-index/SKILL.md +1 -1
  7. package/content/cli/skills/fluent-cli-mcp-cicd/SKILL.md +117 -1
  8. package/content/cli/skills/fluent-cli-reference/SKILL.md +1040 -623
  9. package/content/cli/skills/fluent-cli-retailer/SKILL.md +27 -2
  10. package/content/cli/skills/fluent-cli-settings/SKILL.md +21 -1
  11. package/content/cli/skills/fluent-connect/SKILL.md +937 -886
  12. package/content/cli/skills/fluent-module-deploy/SKILL.md +181 -17
  13. package/content/cli/skills/fluent-profile/SKILL.md +73 -0
  14. package/content/cli/skills/fluent-workflow/SKILL.md +360 -310
  15. package/content/dev/agents/fluent-backend-dev/AGENT.md +58 -0
  16. package/content/dev/agents/fluent-backend-dev/agent.json +69 -0
  17. package/content/dev/agents/fluent-backend-dev.md +287 -0
  18. package/content/dev/agents/fluent-dev/AGENT.md +98 -76
  19. package/content/dev/agents/fluent-dev/agent.json +24 -2
  20. package/content/dev/agents/fluent-dev.md +194 -524
  21. package/content/dev/agents/fluent-frontend-dev/AGENT.md +63 -0
  22. package/content/dev/agents/fluent-frontend-dev/agent.json +52 -0
  23. package/content/dev/agents/fluent-frontend-dev.md +323 -0
  24. package/content/dev/skills/fluent-archive/SKILL.md +234 -0
  25. package/content/dev/skills/fluent-build/SKILL.md +312 -170
  26. package/content/dev/skills/fluent-connection-analysis/SKILL.md +422 -386
  27. package/content/dev/skills/fluent-custom-code/SKILL.md +15 -9
  28. package/content/dev/skills/fluent-data-module-scaffold/SKILL.md +731 -0
  29. package/content/dev/skills/fluent-e2e-test/SKILL.md +501 -394
  30. package/content/dev/skills/fluent-event-api/SKILL.md +962 -945
  31. package/content/dev/skills/fluent-feature-explain/SKILL.md +680 -603
  32. package/content/dev/skills/fluent-feature-plan/PLAN_TEMPLATE.md +40 -11
  33. package/content/dev/skills/fluent-feature-plan/SKILL.md +478 -221
  34. package/content/dev/skills/fluent-feature-status/SKILL.md +335 -0
  35. package/content/dev/skills/fluent-feedback/SKILL.md +221 -0
  36. package/content/dev/skills/fluent-implementation-map/SKILL.md +644 -0
  37. package/content/dev/skills/fluent-job-batch/SKILL.md +10 -0
  38. package/content/dev/skills/fluent-module-scaffold/SKILL.md +134 -3
  39. package/content/dev/skills/fluent-module-validate/SKILL.md +778 -775
  40. package/content/dev/skills/fluent-mystique-analyze/SKILL.md +817 -0
  41. package/content/dev/skills/fluent-mystique-builder/COMPONENT_TEMPLATE.md +81 -0
  42. package/content/dev/skills/fluent-mystique-builder/README.md +63 -0
  43. package/content/dev/skills/fluent-mystique-builder/SKILL.md +1294 -0
  44. package/content/dev/skills/fluent-mystique-builder/components/INDEX.md +92 -0
  45. package/content/dev/skills/fluent-mystique-builder/components/fc.accordion.md +48 -0
  46. package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.fulfilmentpack.md +20 -0
  47. package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.multiparcel.md +21 -0
  48. package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.returnitems.md +21 -0
  49. package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.wavepick.md +21 -0
  50. package/content/dev/skills/fluent-mystique-builder/components/fc.action.inline.md +24 -0
  51. package/content/dev/skills/fluent-mystique-builder/components/fc.activity.entity.md +25 -0
  52. package/content/dev/skills/fluent-mystique-builder/components/fc.analytics.viz.md +20 -0
  53. package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.column.md +111 -0
  54. package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.json.md +20 -0
  55. package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.jsoneditor.md +54 -0
  56. package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.locationId.md +51 -0
  57. package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.retailerId.md +52 -0
  58. package/content/dev/skills/fluent-mystique-builder/components/fc.button.bar.md +57 -0
  59. package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.download.md +53 -0
  60. package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.inline.compatibility.md +60 -0
  61. package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.inline.md +53 -0
  62. package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.md +24 -0
  63. package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.pick.md +61 -0
  64. package/content/dev/skills/fluent-mystique-builder/components/fc.buttons.add.reject.md +20 -0
  65. package/content/dev/skills/fluent-mystique-builder/components/fc.card.attribute.md +73 -0
  66. package/content/dev/skills/fluent-mystique-builder/components/fc.card.attributes.grid.md +40 -0
  67. package/content/dev/skills/fluent-mystique-builder/components/fc.card.image.md +37 -0
  68. package/content/dev/skills/fluent-mystique-builder/components/fc.card.map.point.md +24 -0
  69. package/content/dev/skills/fluent-mystique-builder/components/fc.card.multi.md +79 -0
  70. package/content/dev/skills/fluent-mystique-builder/components/fc.card.product.md +27 -0
  71. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.area.md +34 -0
  72. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.area.wrapper.feed.md +98 -0
  73. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.bar.md +52 -0
  74. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.bar.wrapper.source.md +104 -0
  75. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.gauge.md +28 -0
  76. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.gauge.wrapper.threshold.md +118 -0
  77. package/content/dev/skills/fluent-mystique-builder/components/fc.chart.line.md +32 -0
  78. package/content/dev/skills/fluent-mystique-builder/components/fc.conditional.md +62 -0
  79. package/content/dev/skills/fluent-mystique-builder/components/fc.dashboard.threshold.md +65 -0
  80. package/content/dev/skills/fluent-mystique-builder/components/fc.daterange.wrapper.forwarder.md +56 -0
  81. package/content/dev/skills/fluent-mystique-builder/components/fc.drawer.button.md +21 -0
  82. package/content/dev/skills/fluent-mystique-builder/components/fc.event.detail.md +20 -0
  83. package/content/dev/skills/fluent-mystique-builder/components/fc.events.search.md +21 -0
  84. package/content/dev/skills/fluent-mystique-builder/components/fc.field.daterange.md +83 -0
  85. package/content/dev/skills/fluent-mystique-builder/components/fc.field.filterComplex.md +106 -0
  86. package/content/dev/skills/fluent-mystique-builder/components/fc.field.intrange.md +82 -0
  87. package/content/dev/skills/fluent-mystique-builder/components/fc.field.multistring.md +50 -0
  88. package/content/dev/skills/fluent-mystique-builder/components/fc.filterPanel.md +53 -0
  89. package/content/dev/skills/fluent-mystique-builder/components/fc.json.editor.md +22 -0
  90. package/content/dev/skills/fluent-mystique-builder/components/fc.json.viewer.md +21 -0
  91. package/content/dev/skills/fluent-mystique-builder/components/fc.list.customAction.md +79 -0
  92. package/content/dev/skills/fluent-mystique-builder/components/fc.list.md +116 -0
  93. package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.bppmetrics.md +69 -0
  94. package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.feed.md +65 -0
  95. package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.source.md +64 -0
  96. package/content/dev/skills/fluent-mystique-builder/components/fc.modal.button.addItem.md +60 -0
  97. package/content/dev/skills/fluent-mystique-builder/components/fc.modal.button.md +21 -0
  98. package/content/dev/skills/fluent-mystique-builder/components/fc.mutation.inline.md +88 -0
  99. package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.collapsible.attributes.md +83 -0
  100. package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.collapsible.text.md +33 -0
  101. package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.link.md +30 -0
  102. package/content/dev/skills/fluent-mystique-builder/components/fc.order.itemDetails.md +20 -0
  103. package/content/dev/skills/fluent-mystique-builder/components/fc.order.shipmentDetails.md +20 -0
  104. package/content/dev/skills/fluent-mystique-builder/components/fc.page.filter.select.md +87 -0
  105. package/content/dev/skills/fluent-mystique-builder/components/fc.page.md +64 -0
  106. package/content/dev/skills/fluent-mystique-builder/components/fc.page.refresh.md +48 -0
  107. package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.column.md +71 -0
  108. package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.header.md +61 -0
  109. package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.md +59 -0
  110. package/content/dev/skills/fluent-mystique-builder/components/fc.page.wizard.md +45 -0
  111. package/content/dev/skills/fluent-mystique-builder/components/fc.page.wizard.summary.md +56 -0
  112. package/content/dev/skills/fluent-mystique-builder/components/fc.progress.circular.md +20 -0
  113. package/content/dev/skills/fluent-mystique-builder/components/fc.provider.graphql.md +71 -0
  114. package/content/dev/skills/fluent-mystique-builder/components/fc.quantity.list.md +87 -0
  115. package/content/dev/skills/fluent-mystique-builder/components/fc.repeater.md +56 -0
  116. package/content/dev/skills/fluent-mystique-builder/components/fc.reports.ipuipc.md +54 -0
  117. package/content/dev/skills/fluent-mystique-builder/components/fc.return.rowExpansion.md +19 -0
  118. package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.barcode.md +21 -0
  119. package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.barcodeFilter.md +72 -0
  120. package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.camera.md +20 -0
  121. package/content/dev/skills/fluent-mystique-builder/components/fc.settingForm.md +64 -0
  122. package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.profile.drawer.button.md +19 -0
  123. package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.profile.modal.button.md +64 -0
  124. package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.strategy.modal.button.md +20 -0
  125. package/content/dev/skills/fluent-mystique-builder/components/fc.stepper.md +20 -0
  126. package/content/dev/skills/fluent-mystique-builder/components/fc.tab.content.md +56 -0
  127. package/content/dev/skills/fluent-mystique-builder/components/fc.tabs.card.md +64 -0
  128. package/content/dev/skills/fluent-mystique-builder/components/fc.tabs.md +69 -0
  129. package/content/dev/skills/fluent-mystique-builder/components/fc.tile.metric.md +73 -0
  130. package/content/dev/skills/fluent-mystique-builder/components/fc.workflow.provider.md +77 -0
  131. package/content/dev/skills/fluent-mystique-builder/validate-docs.ps1 +260 -0
  132. package/content/dev/skills/fluent-mystique-scaffold/SKILL.md +1830 -0
  133. package/content/dev/skills/fluent-mystique-validate/SKILL.md +646 -0
  134. package/content/dev/skills/fluent-pre-deploy-check/SKILL.md +1144 -1090
  135. package/content/dev/skills/fluent-retailer-config/SKILL.md +1162 -1120
  136. package/content/dev/skills/fluent-rollback/SKILL.md +387 -0
  137. package/content/dev/skills/fluent-rule-scaffold/SKILL.md +515 -394
  138. package/content/dev/skills/fluent-scope-decompose/SKILL.md +1123 -1021
  139. package/content/dev/skills/fluent-session-audit-export/SKILL.md +880 -632
  140. package/content/dev/skills/fluent-session-summary/SKILL.md +320 -195
  141. package/content/dev/skills/fluent-settings/SKILL.md +151 -2
  142. package/content/dev/skills/fluent-source-onboard/SKILL.md +23 -4
  143. package/content/dev/skills/fluent-sourcing/SKILL.md +14 -0
  144. package/content/dev/skills/fluent-system-monitoring/SKILL.md +771 -767
  145. package/content/dev/skills/fluent-test-data/SKILL.md +514 -513
  146. package/content/dev/skills/fluent-trace/SKILL.md +1169 -1143
  147. package/content/dev/skills/fluent-transition-api/SKILL.md +364 -346
  148. package/content/dev/skills/fluent-use-case-discover/SKILL.md +593 -471
  149. package/content/dev/skills/fluent-use-case-discover/SPEC_TEMPLATE.md +22 -1
  150. package/content/dev/skills/fluent-version-manage/SKILL.md +44 -3
  151. package/content/dev/skills/fluent-workflow-analyzer/SKILL.md +995 -959
  152. package/content/dev/skills/fluent-workflow-builder/SKILL.md +668 -326
  153. package/content/dev/skills/fluent-workflow-deploy/SKILL.md +480 -0
  154. package/content/dev/skills/fluent-workspace-tree/SKILL.md +281 -0
  155. package/content/mcp-extn/agents/fluent-mcp.md +133 -132
  156. package/content/mcp-extn/skills/fluent-mcp-tools/SKILL.md +812 -800
  157. package/content/mcp-official/agents/fluent-mcp-core.md +91 -91
  158. package/content/mcp-official/skills/fluent-mcp-core/SKILL.md +94 -94
  159. package/content/rfl/skills/fluent-rfl-assess/SKILL.md +172 -172
  160. package/docs/CAPABILITY_MAP.md +106 -73
  161. package/docs/DEPLOYMENT_PROMOTION_RUNBOOK.md +218 -0
  162. package/docs/DESIGN-implementation-map.md +698 -0
  163. package/docs/DEV_WORKFLOW.md +814 -802
  164. package/docs/FLOW_RUN.md +142 -142
  165. package/docs/GETTING_STARTED.md +427 -0
  166. package/docs/USE_CASES.md +906 -50
  167. package/metadata.json +184 -155
  168. package/package.json +7 -2
  169. package/docs/USE_CASES.pdf +0 -0
@@ -0,0 +1,92 @@
1
+ # Mystique Components Index
2
+
3
+ AI lookup table for Mystique components, derived from component frontmatter (`alias`, `category`, `module`) and sorted alphabetically by alias.
4
+
5
+ | Alias | Category | Module |
6
+ | --- | --- | --- |
7
+ | `fc.accordion` | layout | Core |
8
+ | `fc.action.field.fulfilmentpack` | field | Store |
9
+ | `fc.action.field.multiparcel` | field | Store |
10
+ | `fc.action.field.returnitems` | field | Returns |
11
+ | `fc.action.field.wavepick` | field | Store |
12
+ | `fc.action.inline` | action | Core |
13
+ | `fc.activity.entity` | content | OMS |
14
+ | `fc.analytics.viz` | content | Analytics |
15
+ | `fc.attribute.column` | content | Core |
16
+ | `fc.attribute.json` | content | OMS |
17
+ | `fc.attribute.jsoneditor` | content | Core |
18
+ | `fc.attribute.locationId` | field | Core |
19
+ | `fc.attribute.retailerId` | field | Core |
20
+ | `fc.button.bar` | action | Core |
21
+ | `fc.button.print` | action | Core |
22
+ | `fc.button.print.download` | action | Core |
23
+ | `fc.button.print.inline` | action | Core |
24
+ | `fc.button.print.inline.compatibility` | action | OMS |
25
+ | `fc.button.print.pick` | action | Store |
26
+ | `fc.buttons.add.reject` | action | Store |
27
+ | `fc.card.attribute` | content | Core |
28
+ | `fc.card.attributes.grid` | content | Core |
29
+ | `fc.card.image` | content | Core |
30
+ | `fc.card.map.point` | content | OMS |
31
+ | `fc.card.multi` | content | Core |
32
+ | `fc.card.product` | content | Core |
33
+ | `fc.chart.area` | content | Core |
34
+ | `fc.chart.area.wrapper.feed` | wrapper | Core |
35
+ | `fc.chart.bar` | content | Core |
36
+ | `fc.chart.bar.wrapper.source` | wrapper | Core |
37
+ | `fc.chart.gauge` | content | Core |
38
+ | `fc.chart.gauge.wrapper.threshold` | wrapper | Core |
39
+ | `fc.chart.line` | content | Core |
40
+ | `fc.conditional` | layout | Core |
41
+ | `fc.dashboard.threshold` | content | Core |
42
+ | `fc.daterange.wrapper.forwarder` | filter | Core |
43
+ | `fc.drawer.button` | action | Core |
44
+ | `fc.event.detail` | content | OMS |
45
+ | `fc.events.search` | content | OMS |
46
+ | `fc.field.daterange` | field | Core |
47
+ | `fc.field.filterComplex` | field | Core |
48
+ | `fc.field.intrange` | field | Core |
49
+ | `fc.field.multistring` | field | Core |
50
+ | `fc.filterPanel` | filter | Core |
51
+ | `fc.json.editor` | content | Core |
52
+ | `fc.json.viewer` | content | Core |
53
+ | `fc.list` | content | Core |
54
+ | `fc.list.customAction` | content | Core |
55
+ | `fc.list.wrapper.bppmetrics` | wrapper | Core |
56
+ | `fc.list.wrapper.feed` | wrapper | Core |
57
+ | `fc.list.wrapper.source` | wrapper | Core |
58
+ | `fc.modal.button` | action | Core |
59
+ | `fc.modal.button.addItem` | action | OMS |
60
+ | `fc.mutation.inline` | action | Core |
61
+ | `fc.mystique.collapsible.attributes` | content | Core |
62
+ | `fc.mystique.collapsible.text` | content | Core |
63
+ | `fc.mystique.link` | content | Core |
64
+ | `fc.order.itemDetails` | content | OMS |
65
+ | `fc.order.shipmentDetails` | content | OMS |
66
+ | `fc.page` | page | Core |
67
+ | `fc.page.filter.select` | layout | Core |
68
+ | `fc.page.refresh` | page | Core |
69
+ | `fc.page.section` | layout | Core |
70
+ | `fc.page.section.column` | layout | Core |
71
+ | `fc.page.section.header` | layout | Core |
72
+ | `fc.page.wizard` | page | Core |
73
+ | `fc.page.wizard.summary` | page | Core |
74
+ | `fc.progress.circular` | content | Core |
75
+ | `fc.provider.graphql` | content | Core |
76
+ | `fc.quantity.list` | content | Core |
77
+ | `fc.repeater` | layout | Core |
78
+ | `fc.reports.ipuipc` | content | Analytics |
79
+ | `fc.return.rowExpansion` | content | Returns |
80
+ | `fc.scanner.barcode` | content | Core |
81
+ | `fc.scanner.barcodeFilter` | content | Core |
82
+ | `fc.scanner.camera` | content | Core |
83
+ | `fc.settingForm` | content | Core |
84
+ | `fc.sourcing.profile.drawer.button` | action | Core |
85
+ | `fc.sourcing.profile.modal.button` | action | Core |
86
+ | `fc.sourcing.strategy.modal.button` | action | Core |
87
+ | `fc.stepper` | content | Core |
88
+ | `fc.tab.content` | layout | Core |
89
+ | `fc.tabs` | layout | Core |
90
+ | `fc.tabs.card` | layout | Core |
91
+ | `fc.tile.metric` | content | Core |
92
+ | `fc.workflow.provider` | layout | Core |
@@ -0,0 +1,48 @@
1
+ ---
2
+ alias: "fc.accordion"
3
+ aliases:
4
+ - fc.accordion
5
+ category: layout
6
+ module: Core
7
+ ---
8
+ # fc.accordion
9
+
10
+ Expandable/collapsible Material-UI Accordion section.
11
+
12
+ ## When to Use
13
+ - Secondary information that doesn't need to be visible by default
14
+ - Long forms where sections can be collapsed
15
+ - FAQ or documentation-style expandable sections
16
+
17
+ ## Key Props
18
+ | Prop | Type | Required | What it controls |
19
+ |------|------|----------|------------------|
20
+ | `summary` | string / component[] | No | Always-visible header content |
21
+ | `details` | string / component[] | No | Expandable body content |
22
+ | `defaultExpanded` | boolean | No | Start expanded (default: false) |
23
+ | `expanded` | boolean | No | Force open/closed |
24
+ | `disabled` | boolean | No | Prevent interaction |
25
+ | `expandIcon` | boolean | No | Show expand arrow (default: true) |
26
+
27
+ ## Data Binding
28
+ Inherits parent data context.
29
+
30
+ ## Descendants
31
+ Yes — rendered inside the expandable area.
32
+
33
+ ## Manifest Example
34
+ ```json
35
+ {
36
+ "component": "fc.accordion",
37
+ "props": { "summary": "Advanced Details", "defaultExpanded": false },
38
+ "descendants": [
39
+ { "component": "fc.card.attribute", "props": { "attributes": [] } }
40
+ ]
41
+ }
42
+ ```
43
+
44
+ ## AI Parse Notes
45
+ - **Primary intent:** Declarative Mystique component definition for manifests.
46
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
47
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
48
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,20 @@
1
+ ---
2
+ alias: "fc.action.field.fulfilmentpack"
3
+ aliases:
4
+ - fc.action.field.fulfilmentpack
5
+ - FULFILMENT_PACK
6
+ category: field
7
+ module: Store
8
+ ---
9
+ # fc.action.field.fulfilmentpack
10
+
11
+ Packing workflow field — confirm items packed and ready for dispatch.
12
+
13
+ ## When to Use
14
+ - Pack confirmation step in fulfilment workflow
15
+
16
+ ## AI Parse Notes
17
+ - **Primary intent:** Declarative Mystique component definition for manifests.
18
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
19
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
20
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,21 @@
1
+ ---
2
+ alias: "fc.action.field.multiparcel"
3
+ aliases:
4
+ - fc.action.field.multiparcel
5
+ - MULTI_PARCEL_FIELD
6
+ category: field
7
+ module: Store
8
+ ---
9
+ # fc.action.field.multiparcel
10
+
11
+ Multi-parcel shipment management — split items across parcels with tracking numbers.
12
+
13
+ ## When to Use
14
+ - Pack screen for multi-box shipments
15
+ - Parcel splitting and tracking assignment
16
+
17
+ ## AI Parse Notes
18
+ - **Primary intent:** Declarative Mystique component definition for manifests.
19
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
20
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
21
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,21 @@
1
+ ---
2
+ alias: "fc.action.field.returnitems"
3
+ aliases:
4
+ - fc.action.field.returnitems
5
+ - RETURN_ITEMS
6
+ category: field
7
+ module: Returns
8
+ ---
9
+ # fc.action.field.returnitems
10
+
11
+ Return items grid editor — select items and quantities to return.
12
+
13
+ ## When to Use
14
+ - Return creation workflow
15
+ - Item selection for return processing
16
+
17
+ ## AI Parse Notes
18
+ - **Primary intent:** Declarative Mystique component definition for manifests.
19
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
20
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
21
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,21 @@
1
+ ---
2
+ alias: "fc.action.field.wavepick"
3
+ aliases:
4
+ - fc.action.field.wavepick
5
+ - PICKED_ITEMS
6
+ category: field
7
+ module: Store
8
+ ---
9
+ # fc.action.field.wavepick
10
+
11
+ Warehouse pick list interface showing items to pick with quantity fields and barcode scanning support.
12
+
13
+ ## When to Use
14
+ - Warehouse wave picking workflow
15
+ - Pick list display with scan input
16
+
17
+ ## AI Parse Notes
18
+ - **Primary intent:** Declarative Mystique component definition for manifests.
19
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
20
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
21
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,24 @@
1
+ ---
2
+ alias: "fc.action.inline"
3
+ aliases:
4
+ - fc.action.inline
5
+ category: action
6
+ module: Core
7
+ ---
8
+ # fc.action.inline
9
+
10
+ Inline user action button that triggers workflow events on the current entity.
11
+
12
+ ## When to Use
13
+ - Actions within content rather than the page header
14
+ - Per-item actions in detail views
15
+ - Confirm/Cancel buttons inline
16
+
17
+ ## Data Binding
18
+ Operates on current entity in data context.
19
+
20
+ ## AI Parse Notes
21
+ - **Primary intent:** Declarative Mystique component definition for manifests.
22
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
23
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
24
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,25 @@
1
+ ---
2
+ alias: "fc.activity.entity"
3
+ aliases:
4
+ - fc.activity.entity
5
+ category: content
6
+ module: OMS
7
+ ---
8
+ # fc.activity.entity
9
+
10
+ Chronological timeline of all state changes and events for an entity.
11
+
12
+ ## When to Use
13
+ - Entity detail page "Activity" tab
14
+ - Audit trail for orders, fulfilments, etc.
15
+
16
+ ## Manifest Example
17
+ ```json
18
+ { "component": "fc.activity.entity" }
19
+ ```
20
+
21
+ ## AI Parse Notes
22
+ - **Primary intent:** Declarative Mystique component definition for manifests.
23
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
24
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
25
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,20 @@
1
+ ---
2
+ alias: "fc.analytics.viz"
3
+ aliases:
4
+ - fc.analytics.viz
5
+ category: content
6
+ module: Analytics
7
+ ---
8
+ # fc.analytics.viz
9
+
10
+ Embedded Looker analytics dashboard visualization.
11
+
12
+ ## When to Use
13
+ - Analytics dashboard pages
14
+ - Embedded BI reporting
15
+
16
+ ## AI Parse Notes
17
+ - **Primary intent:** Declarative Mystique component definition for manifests.
18
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
19
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
20
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,111 @@
1
+ ---
2
+ alias: "fc.attribute.column"
3
+ aliases:
4
+ - fc.attribute.column
5
+ category: content
6
+ module: Core
7
+ ---
8
+
9
+ # fc.attribute.column
10
+
11
+ Vertical content column that displays data values stacked in a list with optional colored status dots, expand/collapse for long lists, and sorting.
12
+
13
+ ## When to Use
14
+ - Display multiple field values stacked vertically in a list column cell
15
+ - Show a status indicator with a colored dot based on a setting
16
+ - Render nested array data (e.g. `items[].ref`) as a vertical list within a table cell
17
+ - Combine multiple named fields into a single column (e.g. name + ref + type)
18
+
19
+ ## Key Props
20
+ | Prop | Type | Required | What it controls |
21
+ |------|------|----------|------------------|
22
+ | `value` | string \| Record<string, any>[] | Yes | Template string for array data mode (`"{{ref}}"`) or array of field descriptors for multi-field mode (see below) |
23
+ | `minListSize` | number | No | Number of rows to show before "More" toggle. Default: `5`. Set to `0` or negative to disable truncation. |
24
+ | `contentColumnSetting` | string | No | Setting key for colored dot configuration. When set, renders a colored status dot before the text based on matching value. |
25
+ | `type` | DynamicAttributeType | No | Dynamic attribute type for value resolution |
26
+ | `sortOrder` | `"asc"` / `"desc"` | No | Sort order for array data items |
27
+
28
+ ### Multi-field value format (when `value` is an array)
29
+ | Field | Type | Description |
30
+ |-------|------|-------------|
31
+ | `name` | string | Field path: `"fieldName"` for top-level or `"array.fieldName"` for nested array access |
32
+ | `label` | string | Optional label prefix rendered before the values (e.g. `"Items:"`) |
33
+ | `style` | CSSProperties | Optional inline styles for this row (e.g. `{ color: "grey" }`) |
34
+
35
+ ## Data Binding
36
+ - **Array data mode** (`data` is array, `value` is template string): Iterates over the data array and renders each item using the template string.
37
+ - **Multi-field mode** (`data` is object, `value` is descriptor array): Reads named fields from the data object. Single-segment names (e.g. `"name"`) read directly; two-segment names (e.g. `"items.ref"`) iterate over the nested array.
38
+
39
+ ## Descendants
40
+ No -- self-contained display component.
41
+
42
+ ## Composition Patterns
43
+ - `fc.list` column `type: "component"` > `fc.attribute.column` for stacked multi-line cells
44
+ - Commonly used to combine product name + SKU ref in one list column
45
+ - Use `contentColumnSetting` with a setting defining `{ name, color, label }` entries for status dots
46
+
47
+ ## Gotchas
48
+ - The `minListSize` default is 5 -- lists longer than 5 items show a "More" / "Less" toggle. Set to `0` to disable.
49
+ - The colored dot feature (`contentColumnSetting`) only activates when `value` is a string and the setting is provided. The setting must return a record of `{ name, color?, label? }` objects.
50
+ - For multi-field `value` arrays, only 1-segment and 2-segment paths are supported. 3+ segment paths render nothing.
51
+ - Sort order applies to array data mode -- it re-orders the data array by the template value.
52
+ - The "More" / "Less" text is translated via `fc.attribute.column.more` and `fc.attribute.column.less` i18n keys.
53
+ - Registered with category `content` in the component registry.
54
+
55
+ ## Manifest Example
56
+ ### Multi-field mode (stacked name + ref)
57
+ ```json
58
+ {
59
+ "label": "Product",
60
+ "type": "component",
61
+ "options": {
62
+ "component": "fc.attribute.column",
63
+ "props": {
64
+ "value": [
65
+ { "name": "name" },
66
+ { "name": "ref", "style": { "color": "grey" } }
67
+ ]
68
+ },
69
+ "dataSource": "node"
70
+ }
71
+ }
72
+ ```
73
+
74
+ ### Array data mode (list of refs)
75
+ ```json
76
+ {
77
+ "label": "Items",
78
+ "type": "component",
79
+ "options": {
80
+ "component": "fc.attribute.column",
81
+ "props": {
82
+ "value": "{{ref}}",
83
+ "minListSize": 3,
84
+ "sortOrder": "asc"
85
+ },
86
+ "dataSource": "node.items.edges.node"
87
+ }
88
+ }
89
+ ```
90
+
91
+ ### Status dot mode
92
+ ```json
93
+ {
94
+ "label": "Status",
95
+ "type": "component",
96
+ "options": {
97
+ "component": "fc.attribute.column",
98
+ "props": {
99
+ "value": "{{status}}",
100
+ "contentColumnSetting": "fc.mystique.status.colours"
101
+ },
102
+ "dataSource": "node"
103
+ }
104
+ }
105
+ ```
106
+
107
+ ## AI Parse Notes
108
+ - **Primary intent:** Declarative Mystique component definition for manifests.
109
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
110
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
111
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,20 @@
1
+ ---
2
+ alias: "fc.attribute.json"
3
+ aliases:
4
+ - fc.attribute.json
5
+ category: content
6
+ module: OMS
7
+ ---
8
+ # fc.attribute.json
9
+
10
+ Pretty-printed JSON display with syntax highlighting. OMS variant of JSON viewer.
11
+
12
+ ## When to Use
13
+ - Display entity attributes as formatted JSON
14
+ - Debugging views
15
+
16
+ ## AI Parse Notes
17
+ - **Primary intent:** Declarative Mystique component definition for manifests.
18
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
19
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
20
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,54 @@
1
+ ---
2
+ alias: "fc.attribute.jsoneditor"
3
+ aliases:
4
+ - fc.attribute.jsoneditor
5
+ - fc.json.editor
6
+ category: content
7
+ module: Core
8
+ ---
9
+ # fc.attribute.jsoneditor
10
+
11
+ Compatibility alias for `fc.json.editor` used in older manifests for editable JSON attribute input.
12
+
13
+ ## When to Use
14
+ - Legacy manifests that reference `fc.attribute.jsoneditor`
15
+ - JSON attribute editing in forms and settings pages
16
+ - Gradual migration to canonical component names
17
+
18
+ ## Key Props
19
+ | Prop | Type | Required | What it controls |
20
+ |------|------|----------|------------------|
21
+ | _Same as_ `fc.json.editor` | — | — | Uses the same props and runtime behavior as `fc.json.editor` |
22
+
23
+ ## Data Binding
24
+ Binds to JSON value paths using the same input/output contract as `fc.json.editor`.
25
+
26
+ ## Descendants
27
+ No.
28
+
29
+ ## Composition Patterns
30
+ - Prefer `fc.json.editor` for new manifests.
31
+ - Keep this alias only when backward compatibility is required.
32
+
33
+ ## Gotchas
34
+ - Alias and canonical component are functionally equivalent.
35
+ - Validate JSON shape before persisting changes.
36
+
37
+ ## Validation Rules
38
+ - Must resolve to the same prop contract as `fc.json.editor`.
39
+
40
+ ## Manifest Example
41
+ ```json
42
+ {
43
+ "component": "fc.attribute.jsoneditor",
44
+ "props": {
45
+ "dataSource": "entity.attributes.config"
46
+ }
47
+ }
48
+ ```
49
+
50
+ ## AI Parse Notes
51
+ - **Primary intent:** Declarative Mystique component definition for manifests.
52
+ - **Selection signals:** Match by `alias`, `category`, and required `Key Props`.
53
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
54
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,51 @@
1
+ ---
2
+ alias: "fc.attribute.locationId"
3
+ aliases:
4
+ - fc.attribute.locationId
5
+ category: field
6
+ module: Core
7
+ ---
8
+ # fc.attribute.locationId
9
+
10
+ Location ID dropdown selector for assigning a primary location to a user. Conditionally shows/hides based on user type (required for AGENT, optional otherwise).
11
+
12
+ ## When to Use
13
+ - Create/edit user drawers where a location must be assigned
14
+ - Agent user forms requiring a mandatory location
15
+ - Any form where location selection is conditional on context
16
+
17
+ ## Key Props
18
+ | Prop | Type | Required | What it controls |
19
+ |------|------|----------|------------------|
20
+ | `name` | string | Yes | Field name in the form |
21
+ | `label` | string | No | Field label (supports i18n keys) |
22
+ | `value` | string | No | Pre-selected location ID |
23
+ | `mandatory` | boolean | No | Whether the field is required |
24
+
25
+ ## Data Binding
26
+ The component queries available locations and presents them in a dropdown. When the "+ ADD LOCATION" button is not pressed, no validation is applied. Once expanded, the field validates that a non-empty value is submitted.
27
+
28
+ ## Descendants
29
+ No.
30
+
31
+ ## Gotchas
32
+ - The component has two states: collapsed (no validation) and expanded (required validation). This allows location to be optional for non-AGENT user types.
33
+ - Location ID is mandatory from the backend perspective, but this component conditionally avoids system validation.
34
+ - Designed specifically for the Create User drawer workflow.
35
+
36
+ ## Manifest Example
37
+ ```json
38
+ {
39
+ "component": "fc.attribute.locationId",
40
+ "props": {
41
+ "name": "primaryLocationId",
42
+ "label": "i18n:fc.user.primaryLocation"
43
+ }
44
+ }
45
+ ```
46
+
47
+ ## AI Parse Notes
48
+ - **Primary intent:** Declarative Mystique component definition for manifests.
49
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
50
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
51
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,52 @@
1
+ ---
2
+ alias: "fc.attribute.retailerId"
3
+ aliases:
4
+ - fc.attribute.retailerId
5
+ category: field
6
+ module: Core
7
+ ---
8
+ # fc.attribute.retailerId
9
+
10
+ Retailer ID dropdown selector for assigning a primary retailer to a user. Conditionally shows/hides based on user type (required for RETAILER, optional otherwise). Adapts display between radio buttons (1-3 options) and a scrollable list (4+ options).
11
+
12
+ ## When to Use
13
+ - Create/edit user drawers where a retailer must be assigned
14
+ - RETAILER user type forms requiring a mandatory retailer selection
15
+ - Any form where retailer selection is conditional on context
16
+
17
+ ## Key Props
18
+ | Prop | Type | Required | What it controls |
19
+ |------|------|----------|------------------|
20
+ | `name` | string | Yes | Field name in the form |
21
+ | `label` | string | No | Field label (supports i18n keys) |
22
+ | `value` | string | No | Pre-selected retailer ID |
23
+ | `mandatory` | boolean | No | Whether the field is required |
24
+
25
+ ## Data Binding
26
+ The component queries available retailers and renders them as radio buttons (1-3 retailers) or a scrollable list (4+ retailers). When the "+ ADD RETAILER" button is not pressed, no validation is applied. Once expanded, the field validates that a non-empty value is submitted.
27
+
28
+ ## Descendants
29
+ No.
30
+
31
+ ## Gotchas
32
+ - Two display modes: radio group for 1-3 retailers, scrollable list for 4+ retailers.
33
+ - The component has two states: collapsed (no validation) and expanded (required validation). This allows retailer to be optional for non-RETAILER user types.
34
+ - Retailer ID is mandatory from the backend perspective, but this component conditionally avoids system validation.
35
+ - Designed specifically for the Create User drawer workflow.
36
+
37
+ ## Manifest Example
38
+ ```json
39
+ {
40
+ "component": "fc.attribute.retailerId",
41
+ "props": {
42
+ "name": "primaryRetailerId",
43
+ "label": "i18n:fc.user.primaryRetailer"
44
+ }
45
+ }
46
+ ```
47
+
48
+ ## AI Parse Notes
49
+ - **Primary intent:** Declarative Mystique component definition for manifests.
50
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
51
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
52
+ - **Safety checks:** Validate required props and data bindings before manifest generation.
@@ -0,0 +1,57 @@
1
+ ---
2
+ alias: "fc.button.bar"
3
+ aliases:
4
+ - fc.button.bar
5
+ category: action
6
+ module: Core
7
+ ---
8
+
9
+ # fc.button.bar
10
+
11
+ Horizontal button bar that renders its descendants in a right-aligned row spanning the full width.
12
+
13
+ ## When to Use
14
+ - Group multiple action buttons in a right-aligned horizontal bar
15
+ - Create a toolbar row at the top or bottom of a section
16
+ - Align action buttons consistently across different page layouts
17
+
18
+ ## Key Props
19
+
20
+ This component has no props. It is a layout wrapper rendered as a full-width `Grid` item with `justify-content: flex-end`.
21
+
22
+ ## Descendants
23
+ Yes -- accepts button components or any other action components as children. All descendants are rendered in a right-aligned horizontal row.
24
+
25
+ ## Composition Patterns
26
+ - `fc.page.section.header` > `fc.button.bar` > multiple buttons
27
+ - `fc.column` > `fc.button.bar` > `fc.drawer.button` + `fc.modal.button`
28
+ - `fc.page` > `fc.button.bar` > action buttons at the top of a page
29
+
30
+ ## Gotchas
31
+ - Renders as a full-width (`xs={12}`) Grid item -- takes the full row width with content pushed to the right.
32
+ - The bar itself has no padding or visual chrome -- it only provides the flex layout.
33
+ - Uses `flexDirection: row` and `justifyContent: flex-end` for right-alignment.
34
+ - Registered with category `content` in the component registry.
35
+
36
+ ## Manifest Example
37
+ ```json
38
+ {
39
+ "component": "fc.button.bar",
40
+ "descendants": [
41
+ {
42
+ "component": "fc.drawer.button",
43
+ "props": { "label": "Edit Details" }
44
+ },
45
+ {
46
+ "component": "fc.modal.button",
47
+ "props": { "label": "Send Event" }
48
+ }
49
+ ]
50
+ }
51
+ ```
52
+
53
+ ## AI Parse Notes
54
+ - **Primary intent:** Declarative Mystique component definition for manifests.
55
+ - **Selection signals:** Match by `alias`, category, and required `Key Props`.
56
+ - **Assembly hints:** Combine with compatible parent/child components listed in `Composition Patterns`.
57
+ - **Safety checks:** Validate required props and data bindings before manifest generation.