@salesforce/help-storybook-example-component v0.0.7
@salesforce/help-storybook-example-component
About
This is just an example of a resuable component.
Getting Started
Let's start by installing c360-badge as a dependency of your project with npm.
npm i @salesforce-ux/c360-badgeDistributable
After installation, all the distributables for the c360-badge are found under /node_modules/@salesforce-ux/c360-badge/dist/ folder.
| File Name | Description |
|---|---|
badge.css | The CSS file specific to c360-badge only. It doesnot include the styles for it's parent sds-badge. c360-badge extends from sds-badge |
badge.compiled.css | The Compiled CSS file for c360-badge.This file includes styles for both c360-badge and its parent sds-badge. This file is useful for LWC applications.(see below →) |
badge.js | The bundled JS file for c360-badge component. This file is useful for Non LWC applications.(see below →) |
c360-badge Integration
For the sake of understanding, we will categorize the development environment into LWC and Non LWC application.
This Guide will cover the integration approach for these two types of application.
For Lightning Web Component(LWC) Application
Dependency Inclusion
c360-styling-hooks is a styling dependency for c360-badge. Hence, this needs to be embedded into your web app in order to make the c360-badge render properly.
/* myComponent.css */
@import "@salesforce-ux/c360-styling-hooks/dist/hooks.custom-props.css";There are also other ways c360-styling-hooks can be embedded. Please checkout the c360-styling-hooks Integration Guide to learn more.
Component CSS Import
/* myComponent.css */ @import "@salesforce-ux/c360-styling-hooks/dist/hooks.custom-props.css"; @import "@salesforce-ux/c360-badge/dist/badge.compiled.css";HTML Decoration
After that,the HTML of your LWC component template needs to be decorated to have all the named part attributes as per the component's specification. Below is a reference to the component's structure.
<c360-badge> <span part="badge"> <slot name="start"></slot> Label <slot name="end"></slot> </span> </c360-badge>
For Non LWC Application
Dependency Inclusion Read the section above
Component Import
/* myComponent.js */ import C360Badge from "@salesforce-ux/c360-badge/dist/badge";Component Registration
/* myComponent.js */ customElements.define('c360-badge', C360Badge);
Example
Below is one approach to integrate your c360-badge component.
Script
/* myComponent.js */
import "@salesforce-ux/c360-styling-hooks/dist/hooks.custom-props.css";
import C360Badge from "@salesforce-ux/c360-badge/dist/badge";
window.customElements.define('c360-badge', C360Badge);HTML
<c360-badge> Badge </c360-badge>Interactive Demo
To see more examples with interactive demo, please visit c360 Subsytem's Storybook Environment