@dillingerstaffing/strand-vue 0.16.0 → 0.17.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.
- package/dist/components/CardSection/CardSection.vue.d.ts +27 -0
- package/dist/components/CardSection/CardSection.vue.d.ts.map +1 -0
- package/dist/components/CardSection/index.d.ts +2 -0
- package/dist/components/CardSection/index.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScale.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScale.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleAxis.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScaleAxis.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleBar.vue.d.ts +24 -0
- package/dist/components/ContainerScale/ContainerScaleBar.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleCaption.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScaleCaption.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleLabel.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScaleLabel.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScalePx.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScalePx.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleRow.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScaleRow.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/ContainerScaleTrack.vue.d.ts +23 -0
- package/dist/components/ContainerScale/ContainerScaleTrack.vue.d.ts.map +1 -0
- package/dist/components/ContainerScale/index.d.ts +9 -0
- package/dist/components/ContainerScale/index.d.ts.map +1 -0
- package/dist/components/KvEditorial/KvEditorial.vue.d.ts +32 -0
- package/dist/components/KvEditorial/KvEditorial.vue.d.ts.map +1 -0
- package/dist/components/KvEditorial/index.d.ts +2 -0
- package/dist/components/KvEditorial/index.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrame.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrame.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameActions.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameActions.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameBody.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameBody.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameChrome.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameChrome.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameContent.vue.d.ts +25 -0
- package/dist/components/LabFrame/LabFrameContent.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameContentHead.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameContentHead.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameDot.vue.d.ts +9 -0
- package/dist/components/LabFrame/LabFrameDot.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameOverlay.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameOverlay.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanel.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFramePanel.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanelBody.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFramePanelBody.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanelClose.vue.d.ts +25 -0
- package/dist/components/LabFrame/LabFramePanelClose.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanelFooter.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFramePanelFooter.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanelHeader.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFramePanelHeader.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFramePanelTitle.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFramePanelTitle.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/LabFrameTitle.vue.d.ts +23 -0
- package/dist/components/LabFrame/LabFrameTitle.vue.d.ts.map +1 -0
- package/dist/components/LabFrame/index.d.ts +16 -0
- package/dist/components/LabFrame/index.d.ts.map +1 -0
- package/dist/components/LabGlassStage/LabGlassPanel.vue.d.ts +23 -0
- package/dist/components/LabGlassStage/LabGlassPanel.vue.d.ts.map +1 -0
- package/dist/components/LabGlassStage/LabGlassStage.vue.d.ts +23 -0
- package/dist/components/LabGlassStage/LabGlassStage.vue.d.ts.map +1 -0
- package/dist/components/LabGlassStage/index.d.ts +3 -0
- package/dist/components/LabGlassStage/index.d.ts.map +1 -0
- package/dist/components/LabRevealStage/LabRevealLine.vue.d.ts +23 -0
- package/dist/components/LabRevealStage/LabRevealLine.vue.d.ts.map +1 -0
- package/dist/components/LabRevealStage/LabRevealStage.vue.d.ts +23 -0
- package/dist/components/LabRevealStage/LabRevealStage.vue.d.ts.map +1 -0
- package/dist/components/LabRevealStage/index.d.ts +3 -0
- package/dist/components/LabRevealStage/index.d.ts.map +1 -0
- package/dist/components/LabShell/LabBrand.vue.d.ts +23 -0
- package/dist/components/LabShell/LabBrand.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabBrandMark.vue.d.ts +23 -0
- package/dist/components/LabShell/LabBrandMark.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabBrandSub.vue.d.ts +23 -0
- package/dist/components/LabShell/LabBrandSub.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabBrandTitle.vue.d.ts +23 -0
- package/dist/components/LabShell/LabBrandTitle.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExample.vue.d.ts +23 -0
- package/dist/components/LabShell/LabExample.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExampleCaption.vue.d.ts +23 -0
- package/dist/components/LabShell/LabExampleCaption.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExampleCode.vue.d.ts +23 -0
- package/dist/components/LabShell/LabExampleCode.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExampleDemo.vue.d.ts +27 -0
- package/dist/components/LabShell/LabExampleDemo.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExampleLabel.vue.d.ts +23 -0
- package/dist/components/LabShell/LabExampleLabel.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabExampleMeta.vue.d.ts +23 -0
- package/dist/components/LabShell/LabExampleMeta.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeader.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeader.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderLead.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderLead.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderMeta.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderMeta.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderMetaItem.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderMetaItem.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderMetaLabel.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderMetaLabel.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderMetaValue.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderMetaValue.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabHeaderTitle.vue.d.ts +23 -0
- package/dist/components/LabShell/LabHeaderTitle.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabMain.vue.d.ts +23 -0
- package/dist/components/LabShell/LabMain.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSection.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSection.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSectionBody.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSectionBody.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSectionHead.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSectionHead.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSectionHeadNote.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSectionHeadNote.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabShell.vue.d.ts +23 -0
- package/dist/components/LabShell/LabShell.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebar.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebar.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarGroup.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebarGroup.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarGroupDot.vue.d.ts +8 -0
- package/dist/components/LabShell/LabSidebarGroupDot.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarGroupLabel.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebarGroupLabel.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarGroupLink.vue.d.ts +25 -0
- package/dist/components/LabShell/LabSidebarGroupLink.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarGroupList.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebarGroupList.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarHead.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebarHead.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabSidebarScroll.vue.d.ts +23 -0
- package/dist/components/LabShell/LabSidebarScroll.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabTaxonomy.vue.d.ts +23 -0
- package/dist/components/LabShell/LabTaxonomy.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabTaxonomyList.vue.d.ts +23 -0
- package/dist/components/LabShell/LabTaxonomyList.vue.d.ts.map +1 -0
- package/dist/components/LabShell/LabTaxonomyTitle.vue.d.ts +23 -0
- package/dist/components/LabShell/LabTaxonomyTitle.vue.d.ts.map +1 -0
- package/dist/components/LabShell/index.d.ts +35 -0
- package/dist/components/LabShell/index.d.ts.map +1 -0
- package/dist/components/LabTip/LabTip.vue.d.ts +25 -0
- package/dist/components/LabTip/LabTip.vue.d.ts.map +1 -0
- package/dist/components/LabTip/LabTipBubble.vue.d.ts +26 -0
- package/dist/components/LabTip/LabTipBubble.vue.d.ts.map +1 -0
- package/dist/components/LabTip/index.d.ts +3 -0
- package/dist/components/LabTip/index.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilCell.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilCell.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilCellBlock.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilCellBlock.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilCellCaption.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilCellCaption.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilCellCode.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilCellCode.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilCellDemo.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilCellDemo.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/LabUtilRow.vue.d.ts +23 -0
- package/dist/components/LabUtilCell/LabUtilRow.vue.d.ts.map +1 -0
- package/dist/components/LabUtilCell/index.d.ts +7 -0
- package/dist/components/LabUtilCell/index.d.ts.map +1 -0
- package/dist/components/Swatch/Swatch.vue.d.ts +12 -0
- package/dist/components/Swatch/Swatch.vue.d.ts.map +1 -0
- package/dist/components/Swatch/SwatchGrid.vue.d.ts +23 -0
- package/dist/components/Swatch/SwatchGrid.vue.d.ts.map +1 -0
- package/dist/components/Swatch/index.d.ts +3 -0
- package/dist/components/Swatch/index.d.ts.map +1 -0
- package/dist/components/TokenSpecimen/TokenSpecimen.vue.d.ts +23 -0
- package/dist/components/TokenSpecimen/TokenSpecimen.vue.d.ts.map +1 -0
- package/dist/components/TokenSpecimen/TokenSpecimenBox.vue.d.ts +10 -0
- package/dist/components/TokenSpecimen/TokenSpecimenBox.vue.d.ts.map +1 -0
- package/dist/components/TokenSpecimen/TokenSpecimenGrid.vue.d.ts +23 -0
- package/dist/components/TokenSpecimen/TokenSpecimenGrid.vue.d.ts.map +1 -0
- package/dist/components/TokenSpecimen/TokenSpecimenSpacer.vue.d.ts +9 -0
- package/dist/components/TokenSpecimen/TokenSpecimenSpacer.vue.d.ts.map +1 -0
- package/dist/components/TokenSpecimen/index.d.ts +5 -0
- package/dist/components/TokenSpecimen/index.d.ts.map +1 -0
- package/dist/components/TypeSpecimen/TypeSpecimen.vue.d.ts +23 -0
- package/dist/components/TypeSpecimen/TypeSpecimen.vue.d.ts.map +1 -0
- package/dist/components/TypeSpecimen/TypeSpecimenMeta.vue.d.ts +23 -0
- package/dist/components/TypeSpecimen/TypeSpecimenMeta.vue.d.ts.map +1 -0
- package/dist/components/TypeSpecimen/index.d.ts +3 -0
- package/dist/components/TypeSpecimen/index.d.ts.map +1 -0
- package/dist/css/strand-ui.css +1268 -87
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1797 -756
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/components/CardSection/CardSection.test.ts +51 -0
- package/src/components/CardSection/CardSection.vue +42 -0
- package/src/components/CardSection/index.ts +1 -0
- package/src/components/ContainerScale/ContainerScale.test.ts +42 -0
- package/src/components/ContainerScale/ContainerScale.vue +8 -0
- package/src/components/ContainerScale/ContainerScaleAxis.vue +8 -0
- package/src/components/ContainerScale/ContainerScaleBar.vue +17 -0
- package/src/components/ContainerScale/ContainerScaleCaption.vue +8 -0
- package/src/components/ContainerScale/ContainerScaleLabel.vue +8 -0
- package/src/components/ContainerScale/ContainerScalePx.vue +8 -0
- package/src/components/ContainerScale/ContainerScaleRow.vue +8 -0
- package/src/components/ContainerScale/ContainerScaleTrack.vue +8 -0
- package/src/components/ContainerScale/index.ts +8 -0
- package/src/components/KvEditorial/KvEditorial.test.ts +43 -0
- package/src/components/KvEditorial/KvEditorial.vue +56 -0
- package/src/components/KvEditorial/index.ts +1 -0
- package/src/components/LabFrame/LabFrame.test.ts +89 -0
- package/src/components/LabFrame/LabFrame.vue +8 -0
- package/src/components/LabFrame/LabFrameActions.vue +8 -0
- package/src/components/LabFrame/LabFrameBody.vue +8 -0
- package/src/components/LabFrame/LabFrameChrome.vue +8 -0
- package/src/components/LabFrame/LabFrameContent.vue +17 -0
- package/src/components/LabFrame/LabFrameContentHead.vue +8 -0
- package/src/components/LabFrame/LabFrameDot.vue +15 -0
- package/src/components/LabFrame/LabFrameOverlay.vue +8 -0
- package/src/components/LabFrame/LabFramePanel.vue +11 -0
- package/src/components/LabFrame/LabFramePanelBody.vue +8 -0
- package/src/components/LabFrame/LabFramePanelClose.vue +26 -0
- package/src/components/LabFrame/LabFramePanelFooter.vue +8 -0
- package/src/components/LabFrame/LabFramePanelHeader.vue +8 -0
- package/src/components/LabFrame/LabFramePanelTitle.vue +8 -0
- package/src/components/LabFrame/LabFrameTitle.vue +8 -0
- package/src/components/LabFrame/index.ts +15 -0
- package/src/components/LabGlassStage/LabGlassPanel.vue +8 -0
- package/src/components/LabGlassStage/LabGlassStage.test.ts +16 -0
- package/src/components/LabGlassStage/LabGlassStage.vue +8 -0
- package/src/components/LabGlassStage/index.ts +2 -0
- package/src/components/LabRevealStage/LabRevealLine.vue +8 -0
- package/src/components/LabRevealStage/LabRevealStage.test.ts +16 -0
- package/src/components/LabRevealStage/LabRevealStage.vue +8 -0
- package/src/components/LabRevealStage/index.ts +2 -0
- package/src/components/LabShell/LabBrand.vue +8 -0
- package/src/components/LabShell/LabBrandMark.vue +8 -0
- package/src/components/LabShell/LabBrandSub.vue +8 -0
- package/src/components/LabShell/LabBrandTitle.vue +8 -0
- package/src/components/LabShell/LabExample.vue +8 -0
- package/src/components/LabShell/LabExampleCaption.vue +8 -0
- package/src/components/LabShell/LabExampleCode.vue +8 -0
- package/src/components/LabShell/LabExampleDemo.vue +30 -0
- package/src/components/LabShell/LabExampleLabel.vue +8 -0
- package/src/components/LabShell/LabExampleMeta.vue +8 -0
- package/src/components/LabShell/LabHeader.vue +8 -0
- package/src/components/LabShell/LabHeaderLead.vue +8 -0
- package/src/components/LabShell/LabHeaderMeta.vue +8 -0
- package/src/components/LabShell/LabHeaderMetaItem.vue +8 -0
- package/src/components/LabShell/LabHeaderMetaLabel.vue +8 -0
- package/src/components/LabShell/LabHeaderMetaValue.vue +8 -0
- package/src/components/LabShell/LabHeaderTitle.vue +8 -0
- package/src/components/LabShell/LabMain.vue +8 -0
- package/src/components/LabShell/LabSection.vue +8 -0
- package/src/components/LabShell/LabSectionBody.vue +8 -0
- package/src/components/LabShell/LabSectionHead.vue +8 -0
- package/src/components/LabShell/LabSectionHeadNote.vue +8 -0
- package/src/components/LabShell/LabShell.test.ts +166 -0
- package/src/components/LabShell/LabShell.vue +12 -0
- package/src/components/LabShell/LabSidebar.vue +8 -0
- package/src/components/LabShell/LabSidebarGroup.vue +8 -0
- package/src/components/LabShell/LabSidebarGroupDot.vue +8 -0
- package/src/components/LabShell/LabSidebarGroupLabel.vue +8 -0
- package/src/components/LabShell/LabSidebarGroupLink.vue +14 -0
- package/src/components/LabShell/LabSidebarGroupList.vue +8 -0
- package/src/components/LabShell/LabSidebarHead.vue +8 -0
- package/src/components/LabShell/LabSidebarScroll.vue +8 -0
- package/src/components/LabShell/LabTaxonomy.vue +8 -0
- package/src/components/LabShell/LabTaxonomyList.vue +8 -0
- package/src/components/LabShell/LabTaxonomyTitle.vue +8 -0
- package/src/components/LabShell/index.ts +34 -0
- package/src/components/LabTip/LabTip.test.ts +39 -0
- package/src/components/LabTip/LabTip.vue +18 -0
- package/src/components/LabTip/LabTipBubble.vue +19 -0
- package/src/components/LabTip/index.ts +2 -0
- package/src/components/LabUtilCell/LabUtilCell.test.ts +25 -0
- package/src/components/LabUtilCell/LabUtilCell.vue +8 -0
- package/src/components/LabUtilCell/LabUtilCellBlock.vue +8 -0
- package/src/components/LabUtilCell/LabUtilCellCaption.vue +8 -0
- package/src/components/LabUtilCell/LabUtilCellCode.vue +8 -0
- package/src/components/LabUtilCell/LabUtilCellDemo.vue +8 -0
- package/src/components/LabUtilCell/LabUtilRow.vue +8 -0
- package/src/components/LabUtilCell/index.ts +6 -0
- package/src/components/Swatch/Swatch.test.ts +29 -0
- package/src/components/Swatch/Swatch.vue +23 -0
- package/src/components/Swatch/SwatchGrid.vue +8 -0
- package/src/components/Swatch/index.ts +2 -0
- package/src/components/TokenSpecimen/TokenSpecimen.test.ts +41 -0
- package/src/components/TokenSpecimen/TokenSpecimen.vue +8 -0
- package/src/components/TokenSpecimen/TokenSpecimenBox.vue +23 -0
- package/src/components/TokenSpecimen/TokenSpecimenGrid.vue +8 -0
- package/src/components/TokenSpecimen/TokenSpecimenSpacer.vue +20 -0
- package/src/components/TokenSpecimen/index.ts +4 -0
- package/src/components/TypeSpecimen/TypeSpecimen.test.ts +17 -0
- package/src/components/TypeSpecimen/TypeSpecimen.vue +8 -0
- package/src/components/TypeSpecimen/TypeSpecimenMeta.vue +8 -0
- package/src/components/TypeSpecimen/index.ts +2 -0
- package/src/index.ts +18 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-taxonomy__list', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><dl :class="classes" v-bind="$attrs"><slot /></dl></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-taxonomy__title', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export { default as LabShell } from './LabShell.vue'
|
|
2
|
+
export { default as LabSidebar } from './LabSidebar.vue'
|
|
3
|
+
export { default as LabSidebarHead } from './LabSidebarHead.vue'
|
|
4
|
+
export { default as LabSidebarScroll } from './LabSidebarScroll.vue'
|
|
5
|
+
export { default as LabBrand } from './LabBrand.vue'
|
|
6
|
+
export { default as LabBrandMark } from './LabBrandMark.vue'
|
|
7
|
+
export { default as LabBrandTitle } from './LabBrandTitle.vue'
|
|
8
|
+
export { default as LabBrandSub } from './LabBrandSub.vue'
|
|
9
|
+
export { default as LabSidebarGroup } from './LabSidebarGroup.vue'
|
|
10
|
+
export { default as LabSidebarGroupLabel } from './LabSidebarGroupLabel.vue'
|
|
11
|
+
export { default as LabSidebarGroupList } from './LabSidebarGroupList.vue'
|
|
12
|
+
export { default as LabSidebarGroupLink } from './LabSidebarGroupLink.vue'
|
|
13
|
+
export { default as LabSidebarGroupDot } from './LabSidebarGroupDot.vue'
|
|
14
|
+
export { default as LabMain } from './LabMain.vue'
|
|
15
|
+
export { default as LabHeader } from './LabHeader.vue'
|
|
16
|
+
export { default as LabHeaderTitle } from './LabHeaderTitle.vue'
|
|
17
|
+
export { default as LabHeaderLead } from './LabHeaderLead.vue'
|
|
18
|
+
export { default as LabHeaderMeta } from './LabHeaderMeta.vue'
|
|
19
|
+
export { default as LabHeaderMetaItem } from './LabHeaderMetaItem.vue'
|
|
20
|
+
export { default as LabHeaderMetaLabel } from './LabHeaderMetaLabel.vue'
|
|
21
|
+
export { default as LabHeaderMetaValue } from './LabHeaderMetaValue.vue'
|
|
22
|
+
export { default as LabTaxonomy } from './LabTaxonomy.vue'
|
|
23
|
+
export { default as LabTaxonomyTitle } from './LabTaxonomyTitle.vue'
|
|
24
|
+
export { default as LabTaxonomyList } from './LabTaxonomyList.vue'
|
|
25
|
+
export { default as LabSection } from './LabSection.vue'
|
|
26
|
+
export { default as LabSectionHead } from './LabSectionHead.vue'
|
|
27
|
+
export { default as LabSectionHeadNote } from './LabSectionHeadNote.vue'
|
|
28
|
+
export { default as LabSectionBody } from './LabSectionBody.vue'
|
|
29
|
+
export { default as LabExample } from './LabExample.vue'
|
|
30
|
+
export { default as LabExampleMeta } from './LabExampleMeta.vue'
|
|
31
|
+
export { default as LabExampleLabel } from './LabExampleLabel.vue'
|
|
32
|
+
export { default as LabExampleCode } from './LabExampleCode.vue'
|
|
33
|
+
export { default as LabExampleDemo } from './LabExampleDemo.vue'
|
|
34
|
+
export { default as LabExampleCaption } from './LabExampleCaption.vue'
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest'
|
|
2
|
+
import { render } from '@testing-library/vue'
|
|
3
|
+
import LabTip from './LabTip.vue'
|
|
4
|
+
import LabTipBubble from './LabTipBubble.vue'
|
|
5
|
+
|
|
6
|
+
describe('LabTip (Vue)', () => {
|
|
7
|
+
it('Tip base class', () => {
|
|
8
|
+
const { container } = render(LabTip, { slots: { default: 'x' } })
|
|
9
|
+
expect(container.firstElementChild?.className).toContain('strand-ref-tip')
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
it('Tip pinned modifier', () => {
|
|
13
|
+
const { container } = render(LabTip, {
|
|
14
|
+
props: { pinned: true },
|
|
15
|
+
slots: { default: 'x' },
|
|
16
|
+
})
|
|
17
|
+
expect(container.firstElementChild?.className).toContain('strand-ref-tip--pinned')
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
it('Bubble default placement top', () => {
|
|
21
|
+
const { container } = render(LabTipBubble, { slots: { default: 'x' } })
|
|
22
|
+
expect(container.firstElementChild?.className).toContain('strand-ref-tip__bubble--top')
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
it('Bubble accepts placements', () => {
|
|
26
|
+
for (const p of ['top', 'bottom', 'left', 'right'] as const) {
|
|
27
|
+
const { container } = render(LabTipBubble, {
|
|
28
|
+
props: { placement: p },
|
|
29
|
+
slots: { default: 'x' },
|
|
30
|
+
})
|
|
31
|
+
expect(container.firstElementChild?.className).toContain(`strand-ref-tip__bubble--${p}`)
|
|
32
|
+
}
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
it('Bubble role=tooltip', () => {
|
|
36
|
+
const { container } = render(LabTipBubble, { slots: { default: 'x' } })
|
|
37
|
+
expect(container.firstElementChild?.getAttribute('role')).toBe('tooltip')
|
|
38
|
+
})
|
|
39
|
+
})
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
interface Props {
|
|
6
|
+
pinned?: boolean
|
|
7
|
+
className?: string
|
|
8
|
+
}
|
|
9
|
+
const props = withDefaults(defineProps<Props>(), { pinned: false, className: '' })
|
|
10
|
+
|
|
11
|
+
const classes = computed(() =>
|
|
12
|
+
['strand-ref-tip', props.pinned ? 'strand-ref-tip--pinned' : '', props.className]
|
|
13
|
+
.filter(Boolean)
|
|
14
|
+
.join(' '),
|
|
15
|
+
)
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
type Placement = 'top' | 'bottom' | 'left' | 'right'
|
|
6
|
+
interface Props {
|
|
7
|
+
placement?: Placement
|
|
8
|
+
className?: string
|
|
9
|
+
}
|
|
10
|
+
const props = withDefaults(defineProps<Props>(), { placement: 'top', className: '' })
|
|
11
|
+
|
|
12
|
+
const classes = computed(() =>
|
|
13
|
+
['strand-ref-tip__bubble', `strand-ref-tip__bubble--${props.placement}`, props.className]
|
|
14
|
+
.filter(Boolean)
|
|
15
|
+
.join(' '),
|
|
16
|
+
)
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<template><span :class="classes" role="tooltip" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest'
|
|
2
|
+
import { render } from '@testing-library/vue'
|
|
3
|
+
import LabUtilRow from './LabUtilRow.vue'
|
|
4
|
+
import LabUtilCell from './LabUtilCell.vue'
|
|
5
|
+
import LabUtilCellCode from './LabUtilCellCode.vue'
|
|
6
|
+
import LabUtilCellCaption from './LabUtilCellCaption.vue'
|
|
7
|
+
import LabUtilCellDemo from './LabUtilCellDemo.vue'
|
|
8
|
+
import LabUtilCellBlock from './LabUtilCellBlock.vue'
|
|
9
|
+
|
|
10
|
+
describe('LabUtilCell family (Vue)', () => {
|
|
11
|
+
const cases: Array<[any, string]> = [
|
|
12
|
+
[LabUtilRow, 'strand-ref-util-row'],
|
|
13
|
+
[LabUtilCell, 'strand-ref-util-cell'],
|
|
14
|
+
[LabUtilCellCode, 'strand-ref-util-cell__code'],
|
|
15
|
+
[LabUtilCellCaption, 'strand-ref-util-cell__caption'],
|
|
16
|
+
[LabUtilCellDemo, 'strand-ref-util-cell__demo'],
|
|
17
|
+
[LabUtilCellBlock, 'strand-ref-util-cell__block'],
|
|
18
|
+
]
|
|
19
|
+
for (const [C, cls] of cases) {
|
|
20
|
+
it(`${cls} renders with base class`, () => {
|
|
21
|
+
const { container } = render(C, { slots: { default: 'x' } })
|
|
22
|
+
expect(container.firstElementChild?.className).toContain(cls)
|
|
23
|
+
})
|
|
24
|
+
}
|
|
25
|
+
})
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-cell', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-cell__block', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-cell__caption', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-cell__code', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-cell__demo', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-ref-util-row', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as LabUtilRow } from './LabUtilRow.vue'
|
|
2
|
+
export { default as LabUtilCell } from './LabUtilCell.vue'
|
|
3
|
+
export { default as LabUtilCellCode } from './LabUtilCellCode.vue'
|
|
4
|
+
export { default as LabUtilCellCaption } from './LabUtilCellCaption.vue'
|
|
5
|
+
export { default as LabUtilCellDemo } from './LabUtilCellDemo.vue'
|
|
6
|
+
export { default as LabUtilCellBlock } from './LabUtilCellBlock.vue'
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest'
|
|
2
|
+
import { render } from '@testing-library/vue'
|
|
3
|
+
import Swatch from './Swatch.vue'
|
|
4
|
+
import SwatchGrid from './SwatchGrid.vue'
|
|
5
|
+
|
|
6
|
+
describe('Swatch (Vue)', () => {
|
|
7
|
+
it('SwatchGrid base class', () => {
|
|
8
|
+
const { container } = render(SwatchGrid, { slots: { default: 'x' } })
|
|
9
|
+
expect(container.firstElementChild?.className).toContain('strand-swatch-grid')
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
it('Swatch renders name + hex + base class', () => {
|
|
13
|
+
const { container, getByText } = render(Swatch, {
|
|
14
|
+
props: { name: 'blue', hex: '#fff', background: '#fff', color: '#000' },
|
|
15
|
+
})
|
|
16
|
+
expect(container.firstElementChild?.className).toContain('strand-swatch')
|
|
17
|
+
expect(getByText('blue')).toBeTruthy()
|
|
18
|
+
expect(getByText('#fff')).toBeTruthy()
|
|
19
|
+
})
|
|
20
|
+
|
|
21
|
+
it('Swatch applies inline background/color', () => {
|
|
22
|
+
const { container } = render(Swatch, {
|
|
23
|
+
props: { name: 'a', hex: '#fff', background: 'rgb(1, 2, 3)', color: 'rgb(255, 255, 255)' },
|
|
24
|
+
})
|
|
25
|
+
const el = container.firstElementChild as HTMLElement
|
|
26
|
+
expect(el.style.background).toContain('rgb(1, 2, 3)')
|
|
27
|
+
expect(el.style.color).toBe('rgb(255, 255, 255)')
|
|
28
|
+
})
|
|
29
|
+
})
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
interface Props {
|
|
6
|
+
name: string
|
|
7
|
+
hex: string
|
|
8
|
+
background: string
|
|
9
|
+
color: string
|
|
10
|
+
className?: string
|
|
11
|
+
}
|
|
12
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
13
|
+
|
|
14
|
+
const classes = computed(() => ['strand-swatch', props.className].filter(Boolean).join(' '))
|
|
15
|
+
const swatchStyle = computed(() => ({ background: props.background, color: props.color }))
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<template>
|
|
19
|
+
<div :class="classes" :style="swatchStyle" v-bind="$attrs">
|
|
20
|
+
<span class="strand-swatch__name">{{ name }}</span>
|
|
21
|
+
<span class="strand-swatch__hex">{{ hex }}</span>
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-swatch-grid', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest'
|
|
2
|
+
import { render } from '@testing-library/vue'
|
|
3
|
+
import TokenSpecimen from './TokenSpecimen.vue'
|
|
4
|
+
import TokenSpecimenGrid from './TokenSpecimenGrid.vue'
|
|
5
|
+
import TokenSpecimenSpacer from './TokenSpecimenSpacer.vue'
|
|
6
|
+
import TokenSpecimenBox from './TokenSpecimenBox.vue'
|
|
7
|
+
|
|
8
|
+
describe('TokenSpecimen (Vue)', () => {
|
|
9
|
+
it('Grid base class', () => {
|
|
10
|
+
const { container } = render(TokenSpecimenGrid, { slots: { default: 'x' } })
|
|
11
|
+
expect(container.firstElementChild?.className).toContain('strand-token-specimen-grid')
|
|
12
|
+
})
|
|
13
|
+
|
|
14
|
+
it('Specimen base class', () => {
|
|
15
|
+
const { container } = render(TokenSpecimen, { slots: { default: 'x' } })
|
|
16
|
+
expect(container.firstElementChild?.className).toContain('strand-token-specimen')
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
it('Spacer base class + inline width (string)', () => {
|
|
20
|
+
const { container } = render(TokenSpecimenSpacer, { props: { width: '48px' } })
|
|
21
|
+
const el = container.firstElementChild as HTMLElement
|
|
22
|
+
expect(el.className).toContain('strand-token-specimen__spacer')
|
|
23
|
+
expect(el.style.width).toBe('48px')
|
|
24
|
+
})
|
|
25
|
+
|
|
26
|
+
it('Spacer numeric width converts to px', () => {
|
|
27
|
+
const { container } = render(TokenSpecimenSpacer, { props: { width: 48 } })
|
|
28
|
+
const el = container.firstElementChild as HTMLElement
|
|
29
|
+
expect(el.style.width).toBe('48px')
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
it('Box base class + inline radius + shadow', () => {
|
|
33
|
+
const { container } = render(TokenSpecimenBox, {
|
|
34
|
+
props: { radius: '8px', shadow: '0 4px 12px rgba(0,0,0,0.1)' },
|
|
35
|
+
})
|
|
36
|
+
const el = container.firstElementChild as HTMLElement
|
|
37
|
+
expect(el.className).toContain('strand-token-specimen__box')
|
|
38
|
+
expect(el.style.borderRadius).toBe('8px')
|
|
39
|
+
expect(el.style.boxShadow).toContain('rgba(0,0,0,0.1)')
|
|
40
|
+
})
|
|
41
|
+
})
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-token-specimen', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
interface Props {
|
|
6
|
+
radius?: string
|
|
7
|
+
shadow?: string
|
|
8
|
+
className?: string
|
|
9
|
+
}
|
|
10
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
11
|
+
|
|
12
|
+
const classes = computed(() => ['strand-token-specimen__box', props.className].filter(Boolean).join(' '))
|
|
13
|
+
const boxStyle = computed(() => {
|
|
14
|
+
const s: Record<string, string> = {}
|
|
15
|
+
if (props.radius) s.borderRadius = props.radius
|
|
16
|
+
if (props.shadow) s.boxShadow = props.shadow
|
|
17
|
+
return s
|
|
18
|
+
})
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<template>
|
|
22
|
+
<span :class="classes" :style="boxStyle" v-bind="$attrs" />
|
|
23
|
+
</template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-token-specimen-grid', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
interface Props {
|
|
6
|
+
width?: string | number
|
|
7
|
+
className?: string
|
|
8
|
+
}
|
|
9
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
10
|
+
|
|
11
|
+
const classes = computed(() => ['strand-token-specimen__spacer', props.className].filter(Boolean).join(' '))
|
|
12
|
+
const barStyle = computed(() => {
|
|
13
|
+
const w = typeof props.width === 'number' ? props.width + 'px' : props.width
|
|
14
|
+
return w ? { width: w } : {}
|
|
15
|
+
})
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<template>
|
|
19
|
+
<span :class="classes" :style="barStyle" v-bind="$attrs" />
|
|
20
|
+
</template>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as TokenSpecimen } from './TokenSpecimen.vue'
|
|
2
|
+
export { default as TokenSpecimenGrid } from './TokenSpecimenGrid.vue'
|
|
3
|
+
export { default as TokenSpecimenSpacer } from './TokenSpecimenSpacer.vue'
|
|
4
|
+
export { default as TokenSpecimenBox } from './TokenSpecimenBox.vue'
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest'
|
|
2
|
+
import { render } from '@testing-library/vue'
|
|
3
|
+
import TypeSpecimen from './TypeSpecimen.vue'
|
|
4
|
+
import TypeSpecimenMeta from './TypeSpecimenMeta.vue'
|
|
5
|
+
|
|
6
|
+
describe('TypeSpecimen (Vue)', () => {
|
|
7
|
+
it('base class', () => {
|
|
8
|
+
const { container } = render(TypeSpecimen, { slots: { default: 'x' } })
|
|
9
|
+
expect(container.firstElementChild?.className).toContain('strand-type-specimen')
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
it('Meta base class + span', () => {
|
|
13
|
+
const { container } = render(TypeSpecimenMeta, { slots: { default: 'x' } })
|
|
14
|
+
expect(container.firstElementChild?.tagName).toBe('SPAN')
|
|
15
|
+
expect(container.firstElementChild?.className).toContain('strand-type-specimen__meta')
|
|
16
|
+
})
|
|
17
|
+
})
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-type-specimen', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><div :class="classes" v-bind="$attrs"><slot /></div></template>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<!--! Strand Vue | MIT License | dillingerstaffing.com -->
|
|
2
|
+
<script setup lang="ts">
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
interface Props { className?: string }
|
|
5
|
+
const props = withDefaults(defineProps<Props>(), { className: '' })
|
|
6
|
+
const classes = computed(() => ['strand-type-specimen__meta', props.className].filter(Boolean).join(' '))
|
|
7
|
+
</script>
|
|
8
|
+
<template><span :class="classes" v-bind="$attrs"><slot /></span></template>
|
package/src/index.ts
CHANGED
|
@@ -46,3 +46,21 @@ export { default as Progress } from "./components/Progress/Progress.vue";
|
|
|
46
46
|
export { default as Spinner } from "./components/Spinner/Spinner.vue";
|
|
47
47
|
export { default as Skeleton } from "./components/Skeleton/Skeleton.vue";
|
|
48
48
|
export { default as StarRating } from "./components/StarRating/StarRating.vue";
|
|
49
|
+
|
|
50
|
+
// Composition helpers
|
|
51
|
+
export { default as CardSection } from "./components/CardSection/CardSection.vue";
|
|
52
|
+
export { default as KvEditorial } from "./components/KvEditorial/KvEditorial.vue";
|
|
53
|
+
|
|
54
|
+
// Component-reference page chrome (strand-ref-* family)
|
|
55
|
+
export * from "./components/LabShell/index";
|
|
56
|
+
export * from "./components/LabFrame/index";
|
|
57
|
+
export * from "./components/LabGlassStage/index";
|
|
58
|
+
export * from "./components/LabRevealStage/index";
|
|
59
|
+
export * from "./components/LabTip/index";
|
|
60
|
+
export * from "./components/LabUtilCell/index";
|
|
61
|
+
|
|
62
|
+
// Spec-visualizer primitives
|
|
63
|
+
export * from "./components/Swatch/index";
|
|
64
|
+
export * from "./components/TypeSpecimen/index";
|
|
65
|
+
export * from "./components/TokenSpecimen/index";
|
|
66
|
+
export * from "./components/ContainerScale/index";
|