@salesforce/afv-skills 1.14.0 → 1.15.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.
Files changed (332) hide show
  1. package/package.json +1 -1
  2. package/skills/applying-slds/SKILL.md +322 -0
  3. package/skills/applying-slds/checklists.md +83 -0
  4. package/skills/applying-slds/examples.md +283 -0
  5. package/skills/applying-slds/guidance/README.md +83 -0
  6. package/skills/applying-slds/guidance/blueprints-index.md +213 -0
  7. package/skills/applying-slds/guidance/icons-guidance.md +186 -0
  8. package/skills/applying-slds/guidance/overviews/borders.md +236 -0
  9. package/skills/applying-slds/guidance/overviews/color.md +266 -0
  10. package/skills/applying-slds/guidance/overviews/display-density.md +366 -0
  11. package/skills/applying-slds/guidance/overviews/icons.md +240 -0
  12. package/skills/applying-slds/guidance/overviews/illustrations.md +235 -0
  13. package/skills/applying-slds/guidance/overviews/shadows.md +176 -0
  14. package/skills/applying-slds/guidance/overviews/spacing.md +216 -0
  15. package/skills/applying-slds/guidance/overviews/typography.md +323 -0
  16. package/skills/applying-slds/guidance/overviews/utilities.md +542 -0
  17. package/skills/applying-slds/guidance/slds-development-guide.md +288 -0
  18. package/skills/applying-slds/guidance/styling-hooks/borders.md +202 -0
  19. package/skills/applying-slds/guidance/styling-hooks/color/expressive-palette-hooks.md +153 -0
  20. package/skills/applying-slds/guidance/styling-hooks/color/index.md +171 -0
  21. package/skills/applying-slds/guidance/styling-hooks/color/semantic/accent-hooks.md +204 -0
  22. package/skills/applying-slds/guidance/styling-hooks/color/semantic/feedback-hooks.md +768 -0
  23. package/skills/applying-slds/guidance/styling-hooks/color/semantic/surface-hooks.md +337 -0
  24. package/skills/applying-slds/guidance/styling-hooks/color/system-hooks.md +132 -0
  25. package/skills/applying-slds/guidance/styling-hooks/index.md +327 -0
  26. package/skills/applying-slds/guidance/styling-hooks/shadows.md +238 -0
  27. package/skills/applying-slds/guidance/styling-hooks/spacing.md +254 -0
  28. package/skills/applying-slds/guidance/styling-hooks/typography.md +448 -0
  29. package/skills/applying-slds/guidance/utilities/alignment.md +119 -0
  30. package/skills/applying-slds/guidance/utilities/borders.md +131 -0
  31. package/skills/applying-slds/guidance/utilities/box.md +125 -0
  32. package/skills/applying-slds/guidance/utilities/color.md +165 -0
  33. package/skills/applying-slds/guidance/utilities/dark-mode.md +111 -0
  34. package/skills/applying-slds/guidance/utilities/description-list.md +168 -0
  35. package/skills/applying-slds/guidance/utilities/floats.md +117 -0
  36. package/skills/applying-slds/guidance/utilities/grid.md +264 -0
  37. package/skills/applying-slds/guidance/utilities/horizontal-list.md +110 -0
  38. package/skills/applying-slds/guidance/utilities/hyphenation.md +84 -0
  39. package/skills/applying-slds/guidance/utilities/index.md +205 -0
  40. package/skills/applying-slds/guidance/utilities/interactions.md +89 -0
  41. package/skills/applying-slds/guidance/utilities/layout.md +109 -0
  42. package/skills/applying-slds/guidance/utilities/line-clamp.md +131 -0
  43. package/skills/applying-slds/guidance/utilities/margin.md +155 -0
  44. package/skills/applying-slds/guidance/utilities/media-object.md +161 -0
  45. package/skills/applying-slds/guidance/utilities/name-value-list.md +152 -0
  46. package/skills/applying-slds/guidance/utilities/padding.md +155 -0
  47. package/skills/applying-slds/guidance/utilities/position.md +177 -0
  48. package/skills/applying-slds/guidance/utilities/print.md +114 -0
  49. package/skills/applying-slds/guidance/utilities/scrollable.md +126 -0
  50. package/skills/applying-slds/guidance/utilities/sizing.md +190 -0
  51. package/skills/applying-slds/guidance/utilities/themes.md +121 -0
  52. package/skills/applying-slds/guidance/utilities/truncate.md +127 -0
  53. package/skills/applying-slds/guidance/utilities/typography.md +166 -0
  54. package/skills/applying-slds/guidance/utilities/vertical-list.md +166 -0
  55. package/skills/applying-slds/guidance/utilities/visibility.md +228 -0
  56. package/skills/applying-slds/metadata/README.md +84 -0
  57. package/skills/applying-slds/metadata/blueprints/components/accordion.yaml +304 -0
  58. package/skills/applying-slds/metadata/blueprints/components/activity-timeline.yaml +92 -0
  59. package/skills/applying-slds/metadata/blueprints/components/alert.yaml +103 -0
  60. package/skills/applying-slds/metadata/blueprints/components/app-launcher.yaml +94 -0
  61. package/skills/applying-slds/metadata/blueprints/components/avatar-group.yaml +81 -0
  62. package/skills/applying-slds/metadata/blueprints/components/avatar.yaml +97 -0
  63. package/skills/applying-slds/metadata/blueprints/components/badges.yaml +102 -0
  64. package/skills/applying-slds/metadata/blueprints/components/brand-band.yaml +198 -0
  65. package/skills/applying-slds/metadata/blueprints/components/breadcrumbs.yaml +95 -0
  66. package/skills/applying-slds/metadata/blueprints/components/builder-header.yaml +192 -0
  67. package/skills/applying-slds/metadata/blueprints/components/button-groups.yaml +82 -0
  68. package/skills/applying-slds/metadata/blueprints/components/button-icons.yaml +295 -0
  69. package/skills/applying-slds/metadata/blueprints/components/buttons.yaml +230 -0
  70. package/skills/applying-slds/metadata/blueprints/components/cards.yaml +124 -0
  71. package/skills/applying-slds/metadata/blueprints/components/carousel.yaml +140 -0
  72. package/skills/applying-slds/metadata/blueprints/components/chat.yaml +179 -0
  73. package/skills/applying-slds/metadata/blueprints/components/checkbox-button-group.yaml +192 -0
  74. package/skills/applying-slds/metadata/blueprints/components/checkbox-button.yaml +204 -0
  75. package/skills/applying-slds/metadata/blueprints/components/checkbox-toggle.yaml +177 -0
  76. package/skills/applying-slds/metadata/blueprints/components/checkbox.yaml +108 -0
  77. package/skills/applying-slds/metadata/blueprints/components/color-picker.yaml +172 -0
  78. package/skills/applying-slds/metadata/blueprints/components/combobox.yaml +136 -0
  79. package/skills/applying-slds/metadata/blueprints/components/counter.yaml +147 -0
  80. package/skills/applying-slds/metadata/blueprints/components/data-tables.yaml +157 -0
  81. package/skills/applying-slds/metadata/blueprints/components/datepickers.yaml +130 -0
  82. package/skills/applying-slds/metadata/blueprints/components/datetime-picker.yaml +155 -0
  83. package/skills/applying-slds/metadata/blueprints/components/docked-composer.yaml +201 -0
  84. package/skills/applying-slds/metadata/blueprints/components/docked-form-footer.yaml +161 -0
  85. package/skills/applying-slds/metadata/blueprints/components/docked-utility-bar.yaml +175 -0
  86. package/skills/applying-slds/metadata/blueprints/components/drop-zone.yaml +115 -0
  87. package/skills/applying-slds/metadata/blueprints/components/dueling-picklist.yaml +196 -0
  88. package/skills/applying-slds/metadata/blueprints/components/dynamic-icons.yaml +128 -0
  89. package/skills/applying-slds/metadata/blueprints/components/dynamic-menu.yaml +141 -0
  90. package/skills/applying-slds/metadata/blueprints/components/expandable-section.yaml +115 -0
  91. package/skills/applying-slds/metadata/blueprints/components/expression.yaml +143 -0
  92. package/skills/applying-slds/metadata/blueprints/components/feeds.yaml +125 -0
  93. package/skills/applying-slds/metadata/blueprints/components/file-selector.yaml +154 -0
  94. package/skills/applying-slds/metadata/blueprints/components/files.yaml +119 -0
  95. package/skills/applying-slds/metadata/blueprints/components/form-element.yaml +145 -0
  96. package/skills/applying-slds/metadata/blueprints/components/global-header.yaml +120 -0
  97. package/skills/applying-slds/metadata/blueprints/components/global-navigation.yaml +100 -0
  98. package/skills/applying-slds/metadata/blueprints/components/icons.yaml +138 -0
  99. package/skills/applying-slds/metadata/blueprints/components/illustration.yaml +205 -0
  100. package/skills/applying-slds/metadata/blueprints/components/input.yaml +151 -0
  101. package/skills/applying-slds/metadata/blueprints/components/list-builder.yaml +127 -0
  102. package/skills/applying-slds/metadata/blueprints/components/lookups.yaml +132 -0
  103. package/skills/applying-slds/metadata/blueprints/components/map.yaml +118 -0
  104. package/skills/applying-slds/metadata/blueprints/components/menus.yaml +134 -0
  105. package/skills/applying-slds/metadata/blueprints/components/modals.yaml +152 -0
  106. package/skills/applying-slds/metadata/blueprints/components/notifications.yaml +88 -0
  107. package/skills/applying-slds/metadata/blueprints/components/page-headers.yaml +135 -0
  108. package/skills/applying-slds/metadata/blueprints/components/panels.yaml +149 -0
  109. package/skills/applying-slds/metadata/blueprints/components/path.yaml +154 -0
  110. package/skills/applying-slds/metadata/blueprints/components/picklist.yaml +125 -0
  111. package/skills/applying-slds/metadata/blueprints/components/pills.yaml +154 -0
  112. package/skills/applying-slds/metadata/blueprints/components/popovers.yaml +120 -0
  113. package/skills/applying-slds/metadata/blueprints/components/progress-bar.yaml +110 -0
  114. package/skills/applying-slds/metadata/blueprints/components/progress-indicator.yaml +133 -0
  115. package/skills/applying-slds/metadata/blueprints/components/progress-ring.yaml +102 -0
  116. package/skills/applying-slds/metadata/blueprints/components/prompt.yaml +126 -0
  117. package/skills/applying-slds/metadata/blueprints/components/publishers.yaml +178 -0
  118. package/skills/applying-slds/metadata/blueprints/components/radio-button-group.yaml +172 -0
  119. package/skills/applying-slds/metadata/blueprints/components/radio-group.yaml +112 -0
  120. package/skills/applying-slds/metadata/blueprints/components/rich-text-editor.yaml +135 -0
  121. package/skills/applying-slds/metadata/blueprints/components/scoped-notifications.yaml +188 -0
  122. package/skills/applying-slds/metadata/blueprints/components/scoped-tabs.yaml +97 -0
  123. package/skills/applying-slds/metadata/blueprints/components/select.yaml +127 -0
  124. package/skills/applying-slds/metadata/blueprints/components/setup-assistant.yaml +152 -0
  125. package/skills/applying-slds/metadata/blueprints/components/slider.yaml +111 -0
  126. package/skills/applying-slds/metadata/blueprints/components/spinners.yaml +135 -0
  127. package/skills/applying-slds/metadata/blueprints/components/split-view.yaml +112 -0
  128. package/skills/applying-slds/metadata/blueprints/components/summary-detail.yaml +103 -0
  129. package/skills/applying-slds/metadata/blueprints/components/tabs.yaml +138 -0
  130. package/skills/applying-slds/metadata/blueprints/components/textarea.yaml +116 -0
  131. package/skills/applying-slds/metadata/blueprints/components/tiles.yaml +108 -0
  132. package/skills/applying-slds/metadata/blueprints/components/timepicker.yaml +111 -0
  133. package/skills/applying-slds/metadata/blueprints/components/toast.yaml +154 -0
  134. package/skills/applying-slds/metadata/blueprints/components/tooltips.yaml +107 -0
  135. package/skills/applying-slds/metadata/blueprints/components/tree-grid.yaml +116 -0
  136. package/skills/applying-slds/metadata/blueprints/components/trees.yaml +116 -0
  137. package/skills/applying-slds/metadata/blueprints/components/trial-bar.yaml +112 -0
  138. package/skills/applying-slds/metadata/blueprints/components/vertical-navigation.yaml +130 -0
  139. package/skills/applying-slds/metadata/blueprints/components/vertical-tabs.yaml +140 -0
  140. package/skills/applying-slds/metadata/blueprints/components/visual-picker.yaml +150 -0
  141. package/skills/applying-slds/metadata/blueprints/components/welcome-mat.yaml +136 -0
  142. package/skills/applying-slds/metadata/hooks-index.json +6272 -0
  143. package/skills/applying-slds/metadata/icon-metadata.json +38466 -0
  144. package/skills/applying-slds/metadata/utilities-index.json +21912 -0
  145. package/skills/applying-slds/references/component-selection.md +112 -0
  146. package/skills/applying-slds/references/icons-decision-guide.md +124 -0
  147. package/skills/applying-slds/references/styling-decision-guide.md +228 -0
  148. package/skills/applying-slds/references/utilities-quick-ref.md +125 -0
  149. package/skills/applying-slds/scripts/search-blueprints.cjs +117 -0
  150. package/skills/applying-slds/scripts/search-hooks.cjs +139 -0
  151. package/skills/applying-slds/scripts/search-icons.cjs +174 -0
  152. package/skills/applying-slds/scripts/search-utilities.cjs +161 -0
  153. package/skills/generating-custom-lightning-type/SKILL.md +17 -39
  154. package/skills/generating-custom-lightning-type/assets/primitive-types-and-constraints.md +41 -0
  155. package/skills/generating-custom-lightning-type/references/widget-rendition.md +124 -0
  156. package/skills/investigating-agentforce-architecture/README.md +156 -0
  157. package/skills/investigating-agentforce-architecture/SKILL.md +230 -0
  158. package/skills/investigating-agentforce-architecture/assets/cli/describe_sobject.yaml +16 -0
  159. package/skills/investigating-agentforce-architecture/assets/cli/describe_tooling_sobject.yaml +17 -0
  160. package/skills/investigating-agentforce-architecture/assets/cli/list_metadata_genaiprompttemplate.yaml +17 -0
  161. package/skills/investigating-agentforce-architecture/assets/cli/org_display.yaml +15 -0
  162. package/skills/investigating-agentforce-architecture/assets/cli/retrieve_genai_plugin.yaml +18 -0
  163. package/skills/investigating-agentforce-architecture/assets/cli/show_access_token.yaml +27 -0
  164. package/skills/investigating-agentforce-architecture/assets/mermaid/action_tree.mmd +20 -0
  165. package/skills/investigating-agentforce-architecture/assets/mermaid/data_flow.mmd +19 -0
  166. package/skills/investigating-agentforce-architecture/assets/mermaid/dependency_graph.mmd +19 -0
  167. package/skills/investigating-agentforce-architecture/assets/mermaid/invocation_sequence.mmd +20 -0
  168. package/skills/investigating-agentforce-architecture/assets/mermaid/planner_state.mmd +18 -0
  169. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_ids.soql +3 -0
  170. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_names.soql +3 -0
  171. package/skills/investigating-agentforce-architecture/assets/soql/bot_definition_details.soql +3 -0
  172. package/skills/investigating-agentforce-architecture/assets/soql/bot_version_lookup.soql +4 -0
  173. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_by_ids.soql +3 -0
  174. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_ids_by_names.soql +3 -0
  175. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_view_by_durable_ids.soql +4 -0
  176. package/skills/investigating-agentforce-architecture/assets/soql/flow_metadata_by_id.soql +3 -0
  177. package/skills/investigating-agentforce-architecture/assets/soql/functions_by_plugins.soql +5 -0
  178. package/skills/investigating-agentforce-architecture/assets/soql/planner_attrs_by_parent_ids.soql +3 -0
  179. package/skills/investigating-agentforce-architecture/assets/soql/planner_bundle_functions.soql +3 -0
  180. package/skills/investigating-agentforce-architecture/assets/soql/planner_definition_by_agent_chain.soql +3 -0
  181. package/skills/investigating-agentforce-architecture/assets/soql/plugin_functions_by_plugin_ids.soql +3 -0
  182. package/skills/investigating-agentforce-architecture/assets/soql/plugin_instructions_by_plugin_ids.soql +3 -0
  183. package/skills/investigating-agentforce-architecture/assets/soql/plugins_by_planner.soql +4 -0
  184. package/skills/investigating-agentforce-architecture/references/architecture_sections.md +243 -0
  185. package/skills/investigating-agentforce-architecture/references/contract.json +244 -0
  186. package/skills/investigating-agentforce-architecture/references/soql_fields.md +512 -0
  187. package/skills/investigating-agentforce-architecture/scripts/_shared/__init__.py +1 -0
  188. package/skills/investigating-agentforce-architecture/scripts/_shared/fs_guard.py +329 -0
  189. package/skills/investigating-agentforce-architecture/scripts/_shared/paths.py +110 -0
  190. package/skills/investigating-agentforce-architecture/scripts/_shared/runtime.py +59 -0
  191. package/skills/investigating-agentforce-architecture/scripts/_shared/sql.py +10 -0
  192. package/skills/investigating-agentforce-architecture/scripts/cache_check.py +234 -0
  193. package/skills/investigating-agentforce-architecture/scripts/config.py +131 -0
  194. package/skills/investigating-agentforce-architecture/scripts/fetch_soql.py +689 -0
  195. package/skills/investigating-agentforce-architecture/scripts/finalize.py +295 -0
  196. package/skills/investigating-agentforce-architecture/scripts/main.py +2835 -0
  197. package/skills/investigating-agentforce-architecture/scripts/metadata_listing.py +265 -0
  198. package/skills/investigating-agentforce-architecture/scripts/parallel_retrieve.py +69 -0
  199. package/skills/investigating-agentforce-architecture/scripts/parse_bundle.py +215 -0
  200. package/skills/investigating-agentforce-architecture/scripts/parse_wave.py +845 -0
  201. package/skills/investigating-agentforce-architecture/scripts/probe_channels.py +302 -0
  202. package/skills/investigating-agentforce-architecture/scripts/render_architecture.py +1043 -0
  203. package/skills/investigating-agentforce-architecture/scripts/resolve_bot.py +255 -0
  204. package/skills/investigating-agentforce-architecture/scripts/resolve_invocation_target.py +130 -0
  205. package/skills/investigating-agentforce-architecture/scripts/rest_client.py +763 -0
  206. package/skills/investigating-agentforce-architecture/scripts/retrieve_planner.py +13 -0
  207. package/skills/investigating-agentforce-architecture/scripts/sf_cli.py +242 -0
  208. package/skills/investigating-agentforce-architecture/scripts/soql_loader.py +253 -0
  209. package/skills/investigating-agentforce-architecture/scripts/summarize_tree.py +143 -0
  210. package/skills/investigating-agentforce-architecture/scripts/tests/__init__.py +0 -0
  211. package/skills/investigating-agentforce-architecture/scripts/tests/_bootstrap.py +23 -0
  212. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/__init__.py +0 -0
  213. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/genai_payloads.py +400 -0
  214. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check.py +307 -0
  215. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check_main.py +283 -0
  216. package/skills/investigating-agentforce-architecture/scripts/tests/test_config.py +115 -0
  217. package/skills/investigating-agentforce-architecture/scripts/tests/test_end_to_end_fixture.py +651 -0
  218. package/skills/investigating-agentforce-architecture/scripts/tests/test_finalize.py +278 -0
  219. package/skills/investigating-agentforce-architecture/scripts/tests/test_flow_children_inflation.py +582 -0
  220. package/skills/investigating-agentforce-architecture/scripts/tests/test_fs_guard.py +113 -0
  221. package/skills/investigating-agentforce-architecture/scripts/tests/test_iterative_wave_b.py +478 -0
  222. package/skills/investigating-agentforce-architecture/scripts/tests/test_main_pipeline.py +3359 -0
  223. package/skills/investigating-agentforce-architecture/scripts/tests/test_parallel_retrieve.py +131 -0
  224. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_bundle.py +400 -0
  225. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave.py +644 -0
  226. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_classifiers.py +224 -0
  227. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_helpers.py +380 -0
  228. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_main.py +397 -0
  229. package/skills/investigating-agentforce-architecture/scripts/tests/test_per_branch_visited.py +244 -0
  230. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_channels.py +359 -0
  231. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_cli_recipes.py +185 -0
  232. package/skills/investigating-agentforce-architecture/scripts/tests/test_render_architecture.py +810 -0
  233. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_bot.py +203 -0
  234. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_creds.py +157 -0
  235. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_invocation_target.py +145 -0
  236. package/skills/investigating-agentforce-architecture/scripts/tests/test_rest_client.py +1253 -0
  237. package/skills/investigating-agentforce-architecture/scripts/tests/test_runtime_override.py +100 -0
  238. package/skills/investigating-agentforce-architecture/scripts/tests/test_sf_cli.py +261 -0
  239. package/skills/investigating-agentforce-architecture/scripts/tests/test_signature_stamping.py +466 -0
  240. package/skills/investigating-agentforce-architecture/scripts/tests/test_soql_loader.py +501 -0
  241. package/skills/investigating-agentforce-architecture/scripts/tests/test_summarize_tree.py +241 -0
  242. package/skills/investigating-agentforce-architecture/scripts/tests/test_write_emit_ctx.py +480 -0
  243. package/skills/investigating-agentforce-architecture/tools/emit_env.py +157 -0
  244. package/skills/investigating-agentforce-architecture/tools/emit_result.py +262 -0
  245. package/skills/investigating-agentforce-architecture/tools/sanitize.py +33 -0
  246. package/skills/investigating-agentforce-architecture/tools/write_emit_ctx.py +332 -0
  247. package/skills/investigating-agentforce-d360/README.md +123 -0
  248. package/skills/investigating-agentforce-d360/SKILL.md +163 -0
  249. package/skills/investigating-agentforce-d360/assets/dc/app_generation.sql +51 -0
  250. package/skills/investigating-agentforce-d360/assets/dc/content_category.sql +44 -0
  251. package/skills/investigating-agentforce-d360/assets/dc/content_quality.sql +41 -0
  252. package/skills/investigating-agentforce-d360/assets/dc/discover_sessions.sql +36 -0
  253. package/skills/investigating-agentforce-d360/assets/dc/feedback.sql +47 -0
  254. package/skills/investigating-agentforce-d360/assets/dc/feedback_details.sql +38 -0
  255. package/skills/investigating-agentforce-d360/assets/dc/gateway_records.sql +45 -0
  256. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_llm.sql +50 -0
  257. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_metadata.sql +44 -0
  258. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_tags.sql +42 -0
  259. package/skills/investigating-agentforce-d360/assets/dc/gateway_requests.sql +89 -0
  260. package/skills/investigating-agentforce-d360/assets/dc/gateway_responses.sql +43 -0
  261. package/skills/investigating-agentforce-d360/assets/dc/generations.sql +52 -0
  262. package/skills/investigating-agentforce-d360/assets/dc/interactions.sql +53 -0
  263. package/skills/investigating-agentforce-d360/assets/dc/messages.sql +53 -0
  264. package/skills/investigating-agentforce-d360/assets/dc/messaging_session.sql +37 -0
  265. package/skills/investigating-agentforce-d360/assets/dc/moment_interactions.sql +34 -0
  266. package/skills/investigating-agentforce-d360/assets/dc/moments.sql +39 -0
  267. package/skills/investigating-agentforce-d360/assets/dc/participants.sql +48 -0
  268. package/skills/investigating-agentforce-d360/assets/dc/sessions.sql +78 -0
  269. package/skills/investigating-agentforce-d360/assets/dc/steps.sql +64 -0
  270. package/skills/investigating-agentforce-d360/assets/dc/tag_associations.sql +46 -0
  271. package/skills/investigating-agentforce-d360/assets/dc/tag_definition_associations.sql +37 -0
  272. package/skills/investigating-agentforce-d360/assets/dc/tag_definitions.sql +50 -0
  273. package/skills/investigating-agentforce-d360/assets/dc/tags.sql +37 -0
  274. package/skills/investigating-agentforce-d360/assets/dc/telemetry_spans.sql +55 -0
  275. package/skills/investigating-agentforce-d360/references/artifacts.md +50 -0
  276. package/skills/investigating-agentforce-d360/references/dc_dmo_fields.md +823 -0
  277. package/skills/investigating-agentforce-d360/references/dc_pipeline_contract.md +608 -0
  278. package/skills/investigating-agentforce-d360/scripts/_shared/__init__.py +2 -0
  279. package/skills/investigating-agentforce-d360/scripts/_shared/cli_override.py +98 -0
  280. package/skills/investigating-agentforce-d360/scripts/_shared/fs_guard.py +334 -0
  281. package/skills/investigating-agentforce-d360/scripts/_shared/paths.py +155 -0
  282. package/skills/investigating-agentforce-d360/scripts/_shared/runtime.py +59 -0
  283. package/skills/investigating-agentforce-d360/scripts/_shared/sql.py +14 -0
  284. package/skills/investigating-agentforce-d360/scripts/assemble_dc.py +1624 -0
  285. package/skills/investigating-agentforce-d360/scripts/config.py +45 -0
  286. package/skills/investigating-agentforce-d360/scripts/dc.py +188 -0
  287. package/skills/investigating-agentforce-d360/scripts/discover_sessions.py +556 -0
  288. package/skills/investigating-agentforce-d360/scripts/fetch_dc.py +1045 -0
  289. package/skills/investigating-agentforce-d360/scripts/render_dc.py +1750 -0
  290. package/skills/investigating-agentforce-d360/scripts/resolve_session.py +264 -0
  291. package/skills/investigating-agentforce-d360/scripts/storage.py +92 -0
  292. package/skills/investigating-agentforce-d360/scripts/tests/__init__.py +0 -0
  293. package/skills/investigating-agentforce-d360/scripts/tests/_bootstrap.py +15 -0
  294. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/__init__.py +0 -0
  295. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/synthetic_session.py +424 -0
  296. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_bootstrap_and_mode.py +115 -0
  297. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct.py +220 -0
  298. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct_integration.py +158 -0
  299. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_helpers.py +287 -0
  300. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_integration.py +247 -0
  301. package/skills/investigating-agentforce-d360/scripts/tests/test_dc_and_resolve_session.py +433 -0
  302. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions.py +458 -0
  303. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions_grep_ci.py +193 -0
  304. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_helpers.py +266 -0
  305. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_identity.py +528 -0
  306. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_main.py +251 -0
  307. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall.py +229 -0
  308. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall_full.py +283 -0
  309. package/skills/investigating-agentforce-d360/scripts/tests/test_identity_coherence.py +327 -0
  310. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_branches.py +256 -0
  311. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_gateway_direct.py +130 -0
  312. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_helpers.py +291 -0
  313. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_integration.py +220 -0
  314. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_planner_llm_calls.py +284 -0
  315. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_show_prompts_gating.py +215 -0
  316. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_from_disk.py +100 -0
  317. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_session_main.py +149 -0
  318. package/skills/investigating-agentforce-d360/scripts/tests/test_runtime_override.py +104 -0
  319. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape.py +95 -0
  320. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape_dropped_by_stdm.py +85 -0
  321. package/skills/managing-managed-event-subscription/SKILL.md +152 -0
  322. package/skills/managing-managed-event-subscription/assets/managed-event-subscription-template.xml +20 -0
  323. package/skills/managing-managed-event-subscription/references/delete-guide.md +57 -0
  324. package/skills/managing-managed-event-subscription/references/topic-name-formats.md +26 -0
  325. package/skills/managing-managed-event-subscription/references/update-constraints.md +30 -0
  326. package/skills/uplifting-components-to-slds2/SKILL.md +3 -2
  327. package/skills/uplifting-components-to-slds2/references/color-hooks-decision-guide.md +30 -9
  328. package/skills/uplifting-components-to-slds2/references/examples.md +24 -6
  329. package/skills/validating-slds/SKILL.md +262 -0
  330. package/skills/validating-slds/references/quality-checks.md +308 -0
  331. package/skills/validating-slds/references/report-format.md +302 -0
  332. package/skills/validating-slds/scripts/analyze-quality.cjs +521 -0
@@ -0,0 +1,83 @@
1
+ # Bundled Guidance Index
2
+
3
+ Source: `packages/guidance/` -- SLDS domain knowledge for deep reference.
4
+
5
+ Read these files when the workflow phases in SKILL.md point you here. The Knowledge Map in SKILL.md tells you which file to read for each task.
6
+
7
+ ---
8
+
9
+ ## Root Files
10
+
11
+ | File | Read When | Description |
12
+ |------|-----------|-------------|
13
+ | `slds-development-guide.md` | Need comprehensive SLDS development patterns | Full development guide -- component hierarchy, framework patterns, code generation rules. SKILL.md has the core; this is the deep reference. |
14
+ | `blueprints-index.md` | Selecting a blueprint component | All SLDS blueprints mapped to categories and LBC equivalents |
15
+ | `icons-guidance.md` | Implementing icons | Icon implementation patterns, categories, accessibility |
16
+
17
+ ## Overviews (`overviews/`)
18
+
19
+ Foundational concepts for each SLDS domain. Read when you need to understand the rules behind a domain before using specific hooks or utilities.
20
+
21
+ | File | Read When | Description |
22
+ |------|-----------|-------------|
23
+ | `color.md` | Making any color decision | 85-5-10 density rule, color role taxonomy, hook selection hierarchy, numerical color system |
24
+ | `spacing.md` | Setting spacing or sizing | 4-point spacing grid, semantic sizing scale, spacing-to-hook mappings |
25
+ | `typography.md` | Setting fonts, sizes, weights | Typography scale, heading hierarchy, font family hooks |
26
+ | `shadows.md` | Adding elevation or depth | Shadow levels, elevation system, when to use which shadow |
27
+ | `borders.md` | Adding borders or dividers | SLDS 2 minimal-border philosophy, border hooks and utility classes |
28
+ | `display-density.md` | Supporting comfy/compact modes | Display density utility patterns, density-responsive components |
29
+ | `illustrations.md` | Showing empty/error/info states | SLDS illustration markup, when to use which illustration |
30
+ | `icons.md` | Understanding icon system | Icon categories overview, sprite structure, sizing conventions |
31
+ | `utilities.md` | Understanding utility class system | Utility class philosophy, naming patterns, when to use utilities vs. hooks |
32
+
33
+ ## Styling Hooks (`styling-hooks/`)
34
+
35
+ CSS custom property guidance. Read when applying `--slds-g-*`, `--slds-s-*`, or `--slds-c-*` hooks.
36
+
37
+ | File | Read When | Description |
38
+ |------|-----------|-------------|
39
+ | `index.md` | Starting any styling hooks work | Entry point: three-tier hierarchy (global/shared/component), core categories, decision trees |
40
+ | `color/index.md` | Working with color hooks | Color hook organization, palettes, selection hierarchy |
41
+ | `color/system-hooks.md` | Need system-level color hooks | Low-level palette hooks (`--slds-g-color-palette-*`) |
42
+ | `color/expressive-palette-hooks.md` | Need expressive/brand colors | Expressive palette hooks for brand-aligned color usage |
43
+ | `color/semantic/accent-hooks.md` | Need accent/brand colors | `--slds-g-color-accent-*` hooks for interactive and brand elements |
44
+ | `color/semantic/feedback-hooks.md` | Need success/warning/error colors | `--slds-g-color-error-*`, `--slds-g-color-success-*`, `--slds-g-color-warning-*` |
45
+ | `color/semantic/surface-hooks.md` | Need surface/background colors | `--slds-g-color-surface-*` and `--slds-g-color-on-surface-*` for surfaces and text |
46
+ | `typography.md` | Setting typography with hooks | Typography hooks: font-family, font-size, font-weight, line-height |
47
+ | `spacing.md` | Setting spacing/sizing with hooks | Spacing hooks: `--slds-g-spacing-*`, sizing hooks |
48
+ | `borders.md` | Setting borders with hooks | Border hooks: width, color, radius |
49
+ | `shadows.md` | Setting shadows with hooks | Shadow hooks: `--slds-g-shadow-*` levels |
50
+
51
+ ## Utilities (`utilities/`)
52
+
53
+ Individual utility class categories. Read when you need specific classes for a layout or styling task.
54
+
55
+ | File | Read When | Description |
56
+ |------|-----------|-------------|
57
+ | `index.md` | Need utility class overview | All 26 categories with class counts and common patterns |
58
+ | `grid.md` | Building grid layouts | `slds-grid`, `slds-col`, `slds-size_*`, responsive sizing |
59
+ | `margin.md` | Adding margin | `slds-m-*` margin utilities by direction and size |
60
+ | `padding.md` | Adding padding | `slds-p-*` padding utilities by direction and size |
61
+ | `sizing.md` | Setting widths | `slds-size_*` fractional and absolute width utilities |
62
+ | `layout.md` | Page-level layout | Page layout containers and regions |
63
+ | `alignment.md` | Aligning content | Flex alignment, text alignment, vertical centering |
64
+ | `borders.md` | Adding border utilities | Border direction, radius, and removal utilities |
65
+ | `box.md` | Box model utilities | Box-sizing, overflow, display utilities |
66
+ | `color.md` | Color utility classes | Text and background color utilities |
67
+ | `dark-mode.md` | Dark mode support | Dark mode utility classes and patterns |
68
+ | `description-list.md` | Description lists | `dl`/`dt`/`dd` styling utilities |
69
+ | `floats.md` | Float layout | Float and clearfix utilities |
70
+ | `horizontal-list.md` | Horizontal lists | Inline list layout utilities |
71
+ | `hyphenation.md` | Word breaking | Hyphenation and word-break utilities |
72
+ | `interactions.md` | Pointer/cursor styles | Interaction and cursor utilities |
73
+ | `line-clamp.md` | Text line limiting | Line clamping utilities |
74
+ | `media-object.md` | Media object pattern | Figure + body layout utilities |
75
+ | `name-value-list.md` | Name-value pairs | Key-value display utilities |
76
+ | `position.md` | Positioning | Position, z-index, and sticky utilities |
77
+ | `print.md` | Print styles | Print-specific visibility and layout |
78
+ | `scrollable.md` | Scroll containers | Scrollable area utilities |
79
+ | `themes.md` | Theme containers | Theme override container utilities |
80
+ | `truncate.md` | Text truncation | Ellipsis and text truncation |
81
+ | `typography.md` | Text styling | Font size, weight, alignment utilities |
82
+ | `vertical-list.md` | Vertical lists | Stacked list layout utilities |
83
+ | `visibility.md` | Show/hide elements | Responsive and state visibility utilities |
@@ -0,0 +1,213 @@
1
+ ---
2
+ id: slds.guidance.blueprints
3
+ title: SLDS Blueprints Index
4
+ description: Complete index of SLDS blueprints by category with Lightning component mapping
5
+ summary: "Index of SLDS blueprints across 9 categories (Actions, Input, Layout, Navigation, Display, Data, Feedback, Overlay, Complex Components). Covers when to use blueprints vs Lightning Base Components."
6
+
7
+ artifact_type: index
8
+ domain: blueprints
9
+ topic: blueprints
10
+
11
+ content_format: structured
12
+ complexity: intermediate
13
+ audience: [implementer]
14
+
15
+ tasks: [choose, learn]
16
+
17
+ refs:
18
+ - slds.guidance.development
19
+ - slds.guidance.design
20
+ - slds.guidance.icons
21
+
22
+ tags: [blueprints, components, html, css, implementation]
23
+ keywords: [SLDS blueprints, component implementation, HTML structure, CSS classes, Lightning components, custom components]
24
+ ---
25
+
26
+ # SLDS Blueprints Index
27
+
28
+ ## Overview
29
+
30
+ Blueprints provide HTML structure, CSS classes, ARIA requirements, and code examples for each SLDS component. Each blueprint includes:
31
+
32
+ - **HTML structure**: Element hierarchy and required markup
33
+ - **CSS classes**: Root, element, modifier, size, and state classes
34
+ - **Styling hooks**: CSS custom properties for theming
35
+ - **Accessibility**: ARIA attributes, keyboard patterns, screen reader guidance
36
+ - **Code examples**: Usage examples for variants
37
+ - **Lightning component mapping**: Corresponding LWC when available
38
+
39
+ **Use blueprints** when building custom HTML/CSS, targeting non-Salesforce platforms, or when no Lightning Base Component exists.
40
+
41
+ **Use Lightning Base Components** when working within Salesforce (LWC, Aura, Visualforce) — they handle accessibility, events, and framework integration automatically.
42
+
43
+ ---
44
+
45
+ ## Blueprints by Category
46
+
47
+ ### Actions
48
+
49
+ | Blueprint | Description | Lightning Component |
50
+ |-----------|-------------|---------------------|
51
+ | **Buttons** | Action triggers with text labels | `lightning-button` |
52
+ | **Button Icons** | Icon-only action triggers | `lightning-button-icon` |
53
+ | **Button Groups** | Related buttons in a row | `lightning-button-group` |
54
+ | **Docked Utility Bar** | Persistent bottom utility panel | N/A |
55
+
56
+ ---
57
+
58
+ ### Input
59
+
60
+ Form controls for user input and data entry.
61
+
62
+ | Blueprint | Description | Lightning Component |
63
+ |-----------|-------------|---------------------|
64
+ | **Checkbox** | Binary selection control | `lightning-checkbox` |
65
+ | **Checkbox Button** | Checkbox styled as a button | `lightning-checkbox-button` |
66
+ | **Checkbox Button Group** | Set of checkbox buttons in a fieldset | `lightning-checkbox-group` |
67
+ | **Checkbox Toggle** | Toggle-style checkbox | `lightning-input` (type="checkbox-button") |
68
+ | **Combobox** | Text input with dropdown list | `lightning-combobox` |
69
+ | **Counter** | Number input with increment/decrement controls | N/A |
70
+ | **Datepickers** | Calendar date selection | `lightning-input` (type="date") |
71
+ | **Datetime Picker** | Combined date and time selection | `lightning-input` (type="datetime") |
72
+ | **Dueling Picklist** | Multi-select with two lists | `lightning-dual-listbox` |
73
+ | **Expression** | Formula builder interface | N/A |
74
+ | **File Selector** | File upload with drag-and-drop | `lightning-file-upload` |
75
+ | **Form Element** | Wrapper for form inputs | N/A |
76
+ | **Input** | Text/number input | `lightning-input` |
77
+ | **Lookups** | Search and select from a dataset | `lightning-record-picker` |
78
+ | **Picklist** | Dropdown from predefined options | `lightning-combobox` |
79
+ | **Radio Group** | Single selection from exclusive options | `lightning-radio-group` |
80
+ | **Radio Button Group** | Radio buttons in a styled group | `lightning-radio-group` |
81
+ | **Rich Text Editor** | Text editor with formatting toolbar | `lightning-input-rich-text` |
82
+ | **Select** | Native dropdown selection | `lightning-combobox` |
83
+ | **Slider** | Numeric range input via draggable handle | `lightning-slider` |
84
+ | **Textarea** | Multi-line text input | `lightning-textarea` |
85
+ | **Timepicker** | Time selection interface | `lightning-input` (type="time") |
86
+ | **Visual Picker** | Visual tile-based selection | `lightning-radio-group` (with tiles) |
87
+
88
+ ---
89
+
90
+ ### Layout
91
+
92
+ Components for organizing and structuring content.
93
+
94
+ | Blueprint | Description | Lightning Component |
95
+ |-----------|-------------|---------------------|
96
+ | **Accordion** | Collapsible stacked sections | `lightning-accordion` |
97
+ | **Brand Band** | Visual header with branding | N/A |
98
+ | **Builder Header** | Header for app builder interfaces | N/A |
99
+ | **Cards** | Container with header/body/footer | `lightning-card` |
100
+ | **Carousel** | Slideshow with navigation controls | `lightning-carousel` |
101
+ | **Docked Form Footer** | Fixed bottom footer for form actions | N/A |
102
+ | **Expandable Section** | Collapsible content block | N/A |
103
+ | **Page Headers** | Page title, metadata, and actions | `lightning-record-view-form` |
104
+ | **Panels** | Structured side or overlay container | N/A |
105
+ | **Split View** | Resizable two-pane layout | N/A |
106
+ | **Summary Detail** | Collapsible key-value layout | N/A |
107
+ | **Tiles** | Card-like grid content items | `lightning-tile` |
108
+
109
+ ---
110
+
111
+ ### Navigation
112
+
113
+ Components for navigation and wayfinding.
114
+
115
+ | Blueprint | Description | Lightning Component |
116
+ |-----------|-------------|---------------------|
117
+ | **App Launcher** | Grid for app discovery | N/A |
118
+ | **Breadcrumbs** | Hierarchical location trail | `lightning-breadcrumbs` |
119
+ | **Dynamic Menu** | Contextual menu in popover | N/A |
120
+ | **Global Header** | Primary application header | N/A |
121
+ | **Global Navigation** | Main navigation bar | `lightning-navigation` |
122
+ | **Menus** | Contextual action lists | `lightning-menu-item` |
123
+ | **Path** | Linear process stage indicator | `lightning-path` |
124
+ | **Scoped Tabs** | Tabs scoped to a context | `lightning-tabset` |
125
+ | **Tabs** | Switchable content panels | `lightning-tabset` |
126
+ | **Trees** | Hierarchical list | `lightning-tree` |
127
+ | **Vertical Navigation** | Vertical nav menu | `lightning-vertical-navigation` |
128
+ | **Vertical Tabs** | Vertical tab interface | `lightning-vertical-navigation` |
129
+
130
+ ---
131
+
132
+ ### Display
133
+
134
+ | Blueprint | Description | Lightning Component |
135
+ |-----------|-------------|---------------------|
136
+ | **Activity Timeline** | Chronological event list | `lightning-activity-timeline` |
137
+ | **Avatar** | User or entity image placeholder | `lightning-avatar` |
138
+ | **Avatar Group** | Stacked avatar collection | N/A |
139
+ | **Badges** | Small status label | `lightning-badge` |
140
+ | **Dynamic Icons** | Animated contextual icons | N/A |
141
+ | **Files** | File attachment card | N/A |
142
+ | **Icons** | SVG icons from SLDS sprite | `lightning-icon` |
143
+ | **Illustration** | Empty/error state graphic | N/A |
144
+ | **Pills** | Removable tag or filter token | `lightning-pill` |
145
+
146
+ ---
147
+
148
+ ### Data
149
+
150
+ Components for displaying structured data.
151
+
152
+ | Blueprint | Description | Lightning Component |
153
+ |-----------|-------------|---------------------|
154
+ | **Data Tables** | Sortable tabular data | `lightning-datatable` |
155
+ | **Tree Grid** | Hierarchical data table | `lightning-tree-grid` |
156
+
157
+ ---
158
+
159
+ ### Feedback
160
+
161
+ Components for communicating status and feedback.
162
+
163
+ | Blueprint | Description | Lightning Component |
164
+ |-----------|-------------|---------------------|
165
+ | **Alert** | Page-level status banner | N/A |
166
+ | **Notifications** | System notification messages | N/A |
167
+ | **Progress Bar** | Linear completion indicator | `lightning-progress-bar` |
168
+ | **Progress Indicator** | Multi-step process tracker | `lightning-progress-indicator` |
169
+ | **Progress Ring** | Circular progress indicator | `lightning-progress-ring` |
170
+ | **Scoped Notifications** | Notification scoped to a container | N/A |
171
+ | **Spinners** | Loading state indicator | `lightning-spinner` |
172
+ | **Toast** | Temporary notification message | N/A |
173
+ | **Trial Bar** | Trial status and call-to-action bar | N/A |
174
+
175
+ ---
176
+
177
+ ### Overlay
178
+
179
+ Components that appear above the main interface.
180
+
181
+ | Blueprint | Description | Lightning Component |
182
+ |-----------|-------------|---------------------|
183
+ | **Docked Composer** | Bottom-docked content creation panel | N/A |
184
+ | **Modals** | Blocking dialog overlay | N/A |
185
+ | **Popovers** | Contextual overlay anchored to trigger | N/A |
186
+ | **Prompt** | Confirmation or input dialog | N/A |
187
+ | **Tooltips** | Hover-triggered label | N/A |
188
+ | **Welcome Mat** | Onboarding introduction overlay | N/A |
189
+
190
+ ---
191
+
192
+ ### Complex Components
193
+
194
+ Advanced components with rich functionality.
195
+
196
+ | Blueprint | Description | Lightning Component |
197
+ |-----------|-------------|---------------------|
198
+ | **Chat** | Chronological chat message display | N/A |
199
+ | **Color Picker** | Color selection with hex/swatch input | N/A |
200
+ | **Drop Zone** | Drag-and-drop target area | N/A |
201
+ | **Feeds** | Chronological activity feed | N/A |
202
+ | **List Builder** | Drag-and-drop list ordering | N/A |
203
+ | **Map** | Interactive map display | `lightning-map` |
204
+ | **Publishers** | Content creation panel | N/A |
205
+ | **Setup Assistant** | Guided onboarding checklist | N/A |
206
+
207
+ ---
208
+
209
+ ## Framework Notes
210
+
211
+ - **LWC / Aura**: Prefer the mapped Lightning component when listed — it handles accessibility and events.
212
+ - **React / Vue / Angular / plain HTML**: Use the blueprint HTML structure and CSS classes directly.
213
+ - **Customization**: Apply styling hooks (CSS custom properties) to theme components without overriding base styles.
@@ -0,0 +1,186 @@
1
+ ---
2
+ id: slds.guidance.icons
3
+ title: SLDS Icons Guidance
4
+ description: Icon selection and implementation guidance for coding agents
5
+ summary: "Icon implementation guide covering the sprite:symbol naming model, category decision guide (action, utility, standard, custom, doctype), implementation patterns for Lightning and SLDS markup, and accessibility requirements."
6
+
7
+ artifact_type: guide
8
+ domain: icons
9
+ topic: icons
10
+
11
+ content_format: structured
12
+ complexity: intermediate
13
+ audience: [implementer]
14
+
15
+ tasks: [choose, implement]
16
+
17
+ refs:
18
+ - slds.guidance.development
19
+ - slds.guidance.design
20
+ - slds.guidance.blueprints
21
+
22
+ tags: [icons, sprites, svg, utility-icons, action-icons, standard-icons]
23
+ keywords: [icon sprites, utility icons, action icons, standard icons, custom icons, doctype icons, icon accessibility, SVG icons]
24
+ ---
25
+
26
+ # SLDS Icons Guidance
27
+
28
+ ## Overview
29
+
30
+ SLDS icons are a curated set of reusable SVG symbols grouped into **sprite categories**. They're used to add quick, consistent visual meaning to UI elements (buttons, navigation, record headers, status indicators, file types, and more).
31
+
32
+ This guidance covers:
33
+
34
+ - **Category guidance** for picking the right sprite
35
+ - **Implementation patterns** (Lightning + SLDS markup)
36
+ - **Accessibility requirements** for icons in UI
37
+
38
+ ---
39
+
40
+ ## Icon Naming Model (Critical)
41
+
42
+ An icon is referenced as:
43
+
44
+ - **`sprite:symbol`** (example: `utility:search`, `action:save`, `standard:account`)
45
+
46
+ Where:
47
+
48
+ - **sprite** = category (action, utility, standard, custom, doctype)
49
+ - **symbol** = the icon name within that sprite
50
+
51
+ ---
52
+
53
+ ## Category Decision Guide (What to Use When)
54
+
55
+ ### Action Icons (`action:*`)
56
+
57
+ - **Use for**: verbs / user actions (save, delete, edit, add, close)
58
+ - **Common placements**: buttons, menus, toolbars, row actions
59
+ - **Rule of thumb**: if the UI text could start with "Do …", use `action:`
60
+
61
+ ### Utility Icons (`utility:*`)
62
+
63
+ - **Use for**: general interface affordances and controls (search, settings, filter, chevrons)
64
+ - **Common placements**: nav, search fields, utility panels, small inline UI hints
65
+ - **Rule of thumb**: if it's a UI control concept (not a business object), use `utility:`
66
+
67
+ ### Standard Icons (`standard:*`)
68
+
69
+ - **Use for**: Salesforce objects/entities (Account, Contact, Case, Opportunity)
70
+ - **Common placements**: record headers, object pickers, list tiles
71
+ - **Rule of thumb**: if the icon represents "what this thing is" (a noun/object), use `standard:`
72
+
73
+ ### Custom Icons (`custom:*`)
74
+
75
+ - **Use for**: generic shapes/symbols, often for custom objects when no standard icon fits
76
+ - **Common placements**: custom object tiles, app launcher tiles, branded placeholders
77
+ - **Rule of thumb**: use `custom:` when `standard:` is not appropriate and you still want a "record/object style" icon
78
+
79
+ ### Doctype Icons (`doctype:*`)
80
+
81
+ - **Use for**: file types (pdf, image, spreadsheet, etc.)
82
+ - **Common placements**: attachments, file lists, previews
83
+ - **Rule of thumb**: if you're representing a file format, use `doctype:`
84
+
85
+ ---
86
+
87
+ ## How to Search Icons
88
+
89
+ **Effective query patterns:**
90
+
91
+ - **Intent-first**: "save", "delete", "filter", "settings", "add user"
92
+ - **Object-first**: "account", "contact", "case"
93
+ - **UI affordance**: "chevron right", "close x", "search magnifier"
94
+
95
+ **Optional filters:**
96
+
97
+ - Restrict to a sprite category (action / utility / standard / custom / doctype)
98
+ - Limit results to keep responses tight
99
+
100
+ ### Searchable Metadata Fields
101
+
102
+ Each icon entry in the JSON metadata supports these lookup strategies:
103
+
104
+ - **Exact match**: `category` + icon name (mapped to `sprite:symbol` at runtime, e.g. `utility:chevronright`)
105
+ - **Discovery**: `synonyms` (best for intent searches — e.g. "next" finds `chevronright`)
106
+ - **Styling**: `className` (computed as `slds-icon-{category}-{name}` for SLDS `<svg>` containers)
107
+ - **Context**: `description` (matches long-form queries about icon purpose)
108
+ - **RTL**: `directionality.hasRtl` (rare, but important for directional glyphs)
109
+
110
+ ---
111
+
112
+ ## Implementation Patterns
113
+
114
+ ### Lightning Web Components (preferred inside Salesforce)
115
+
116
+ **Icon only:**
117
+
118
+ ```html
119
+ <lightning-icon
120
+ icon-name="utility:search"
121
+ alternative-text="Search"
122
+ title="Search"
123
+ size="x-small">
124
+ </lightning-icon>
125
+ ```
126
+
127
+ **Icon button:**
128
+
129
+ ```html
130
+ <lightning-button-icon
131
+ icon-name="action:save"
132
+ alternative-text="Save"
133
+ title="Save"
134
+ onclick={handleSave}>
135
+ </lightning-button-icon>
136
+ ```
137
+
138
+ ### SLDS (raw HTML/SVG usage)
139
+
140
+ If you're implementing outside Lightning components, use the `className` from the JSON (example: `slds-icon-utility-search`) with the appropriate SLDS blueprint patterns for icon containers.
141
+
142
+ ---
143
+
144
+ ## Sizes
145
+
146
+ When rendering icons in Lightning Web Components, prefer the built-in size tokens on `lightning-icon` / `lightning-button-icon` instead of custom CSS.
147
+
148
+ | Size token | Typical use |
149
+ |-----------|-------------|
150
+ | `xx-small` | Inline with dense UI or text-adjacent glyphs |
151
+ | `x-small` | Compact layouts / tight controls |
152
+ | `small` | Default for most utility UI icons |
153
+ | `medium` | Default for object/record representation icons |
154
+ | `large` | Featured / hero contexts (use sparingly) |
155
+
156
+ ---
157
+
158
+ ## Accessibility Requirements (Do Not Skip)
159
+
160
+ ### When the icon communicates meaning
161
+
162
+ - **Provide text** for assistive tech:
163
+ - LWC: `alternative-text` (required), `title` (recommended)
164
+ - HTML/SVG: ensure an accessible name via text, `aria-label`, or `title` as appropriate
165
+
166
+ ### When the icon is purely decorative
167
+
168
+ - Hide it from assistive tech (don't create "noise"):
169
+ - LWC: use an empty `alternative-text=""` only if the containing control already has an accessible label
170
+ - HTML/SVG: `aria-hidden="true"` on the decorative icon element
171
+
172
+ ### Don't rely on icons alone
173
+
174
+ If the icon represents status (success/error/warning), ensure there's **text and/or non-color cues** in addition to the icon.
175
+
176
+ ---
177
+
178
+ ## Icon Metadata Structure
179
+
180
+ All 1,732 icons are stored in a single `icon-metadata.json` file, keyed by icon name. Each entry includes:
181
+
182
+ - `displayName` — the icon identifier (e.g. `chevronright`, `add_contact`)
183
+ - `category` — sprite category: `action`, `utility`, `standard`, `custom`, `doctype`
184
+ - `synonyms` — search terms for discovery (e.g. `["next", "forward", "arrow", "chevron"]`)
185
+ - `description` — what the icon represents
186
+ - `directionality` — `type` (`common` or `directional`) and `hasRtl` flag