kopia lustrzana https://github.com/shoelace-style/shoelace
add importing section to docs
rodzic
5b1b704d1d
commit
574947656c
|
@ -255,6 +255,9 @@
|
||||||
metadata.modules?.map(module => {
|
metadata.modules?.map(module => {
|
||||||
module.declarations?.map(declaration => {
|
module.declarations?.map(declaration => {
|
||||||
if (declaration.customElement) {
|
if (declaration.customElement) {
|
||||||
|
// Generate the dist path based on the src path and attach it to the component
|
||||||
|
declaration.path = module.path.replace(/^src\//, 'dist/').replace(/\.ts$/, '.js');
|
||||||
|
|
||||||
allComponents.push(declaration);
|
allComponents.push(declaration);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -429,6 +432,41 @@
|
||||||
`;
|
`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (component.path) {
|
||||||
|
/* prettier-ignore */
|
||||||
|
result += `
|
||||||
|
## Importing
|
||||||
|
|
||||||
|
<sl-tab-group>
|
||||||
|
<sl-tab slot="nav" panel="cdn" active>CDN</sl-tab>
|
||||||
|
<sl-tab slot="nav" panel="bundler">Bundler</sl-tab>
|
||||||
|
<sl-tab slot="nav" panel="react">React</sl-tab>
|
||||||
|
|
||||||
|
<sl-tab-panel name="cdn">\n
|
||||||
|
To import this component from [the CDN](https://www.jsdelivr.com/package/npm/@shoelace-style/shoelace):
|
||||||
|
|
||||||
|
\`\`\`js
|
||||||
|
import 'https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@${metadata.package.version}/${component.path}';
|
||||||
|
\`\`\`
|
||||||
|
</sl-tab-panel>
|
||||||
|
|
||||||
|
<sl-tab-panel name="bundler">\n
|
||||||
|
To import this component using [a bundler](/getting-started/installation#bundling):
|
||||||
|
\`\`\`js
|
||||||
|
import '@shoelace-style/shoelace/${component.path}';
|
||||||
|
\`\`\`
|
||||||
|
</sl-tab-panel>
|
||||||
|
|
||||||
|
<sl-tab-panel name="react">\n
|
||||||
|
To import this component using [\`@shoelace-style/react\`](https://www.npmjs.com/package/@shoelace-style/react):
|
||||||
|
\`\`\`js
|
||||||
|
import '@shoelace-style/react/dist/${component.tagName.replace(/^sl-/, '')}';
|
||||||
|
\`\`\`
|
||||||
|
</sl-tab-panel>
|
||||||
|
</sl-tab-group>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
// Strip whitespace so markdown doesn't process things as code blocks
|
// Strip whitespace so markdown doesn't process things as code blocks
|
||||||
return result.replace(/^ +| +$/gm, '');
|
return result.replace(/^ +| +$/gm, '');
|
||||||
});
|
});
|
||||||
|
|
|
@ -318,6 +318,10 @@ strong {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.markdown-section sl-tab-panel::part(base) {
|
||||||
|
padding: var(--sl-spacing-medium) 0;
|
||||||
|
}
|
||||||
|
|
||||||
.docsify-pagination-container {
|
.docsify-pagination-container {
|
||||||
border-top-color: rgb(var(--sl-color-neutral-200)) !important;
|
border-top-color: rgb(var(--sl-color-neutral-200)) !important;
|
||||||
}
|
}
|
||||||
|
|
|
@ -94,7 +94,7 @@ Here's an example that loads only the button component. Again, if you're not usi
|
||||||
</script>
|
</script>
|
||||||
```
|
```
|
||||||
|
|
||||||
Some components have dependencies that are automatically imported when you cherry pick. If a component has dependencies, they will be listed in the "Dependencies" section of the component's documentation.
|
You can copy and paste the code to import a component from the "Importing" section of the component's documentation. Note that some components have dependencies that are automatically imported when you cherry pick. If a component has dependencies, they will be listed in the "Dependencies" section of its docs.
|
||||||
|
|
||||||
!> Never cherry pick components or utilities from `shoelace.js` as this will cause the browser to load the entire library. Instead, cherry pick from specific modules as shown above.
|
!> Never cherry pick components or utilities from `shoelace.js` as this will cause the browser to load the entire library. Instead, cherry pick from specific modules as shown above.
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue