@synergy-design-system/mcp 0.1.0 → 1.1.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/CHANGELOG.md +15 -0
- package/README.md +539 -3
- package/dist/bin/create-checksum.d.ts +2 -0
- package/dist/bin/create-checksum.js +23 -0
- package/dist/bin/start.d.ts +2 -0
- package/dist/bin/start.js +8 -0
- package/dist/build/assets.d.ts +4 -0
- package/dist/build/assets.js +57 -0
- package/dist/build/build.d.ts +1 -0
- package/dist/build/build.js +33 -0
- package/dist/build/components.d.ts +4 -0
- package/dist/build/components.js +132 -0
- package/dist/build/frameworks.d.ts +4 -0
- package/dist/build/frameworks.js +61 -0
- package/dist/build/static.d.ts +4 -0
- package/dist/build/static.js +57 -0
- package/dist/build/styles.d.ts +4 -0
- package/dist/build/styles.js +58 -0
- package/dist/build/tokens.d.ts +4 -0
- package/dist/build/tokens.js +59 -0
- package/dist/server.d.ts +6 -0
- package/dist/server.js +20 -0
- package/dist/tools/asset-info.d.ts +8 -0
- package/dist/tools/asset-info.js +140 -0
- package/dist/tools/asset-list.d.ts +6 -0
- package/dist/tools/asset-list.js +40 -0
- package/dist/tools/component-info.d.ts +6 -0
- package/dist/tools/component-info.js +35 -0
- package/dist/tools/component-list.d.ts +7 -0
- package/dist/tools/component-list.js +42 -0
- package/dist/tools/davinci-migration.d.ts +3 -0
- package/dist/tools/davinci-migration.js +66 -0
- package/dist/tools/framework-info.d.ts +7 -0
- package/dist/tools/framework-info.js +59 -0
- package/dist/tools/index.d.ts +13 -0
- package/dist/tools/index.js +13 -0
- package/dist/tools/migration-info.d.ts +6 -0
- package/dist/tools/migration-info.js +27 -0
- package/dist/tools/styles-info.d.ts +7 -0
- package/dist/tools/styles-info.js +28 -0
- package/dist/tools/styles-list.d.ts +7 -0
- package/dist/tools/styles-list.js +42 -0
- package/dist/tools/template-info.d.ts +6 -0
- package/dist/tools/template-info.js +34 -0
- package/dist/tools/template-list.d.ts +7 -0
- package/dist/tools/template-list.js +42 -0
- package/dist/tools/tokens.d.ts +7 -0
- package/dist/tools/tokens.js +24 -0
- package/dist/tools/version.d.ts +7 -0
- package/dist/tools/version.js +51 -0
- package/dist/utilities/assets.d.ts +2 -0
- package/dist/utilities/assets.js +3 -0
- package/dist/utilities/checksum.d.ts +36 -0
- package/dist/utilities/checksum.js +93 -0
- package/dist/utilities/components.d.ts +25 -0
- package/dist/utilities/components.js +86 -0
- package/dist/utilities/config.d.ts +76 -0
- package/dist/utilities/config.js +77 -0
- package/dist/utilities/file.d.ts +12 -0
- package/dist/utilities/file.js +31 -0
- package/dist/utilities/index.d.ts +12 -0
- package/dist/utilities/index.js +12 -0
- package/dist/utilities/metadata.d.ts +28 -0
- package/dist/utilities/metadata.js +57 -0
- package/dist/utilities/migration.d.ts +1 -0
- package/dist/utilities/migration.js +10 -0
- package/dist/utilities/stdio.d.ts +14 -0
- package/dist/utilities/stdio.js +60 -0
- package/dist/utilities/storybook/build-docs.d.ts +2 -0
- package/dist/utilities/storybook/build-docs.js +42 -0
- package/dist/utilities/storybook/configs.d.ts +13 -0
- package/dist/utilities/storybook/configs.js +85 -0
- package/dist/utilities/storybook/docs-scraper.d.ts +26 -0
- package/dist/utilities/storybook/docs-scraper.js +97 -0
- package/dist/utilities/storybook/index.d.ts +5 -0
- package/dist/utilities/storybook/index.js +4 -0
- package/dist/utilities/storybook/scraper.d.ts +14 -0
- package/dist/utilities/storybook/scraper.js +196 -0
- package/dist/utilities/storybook/storybook-manager.d.ts +29 -0
- package/dist/utilities/storybook/storybook-manager.js +139 -0
- package/dist/utilities/storybook/types.d.ts +22 -0
- package/dist/utilities/storybook/types.js +1 -0
- package/dist/utilities/styles.d.ts +6 -0
- package/dist/utilities/styles.js +24 -0
- package/dist/utilities/templates.d.ts +12 -0
- package/dist/utilities/templates.js +28 -0
- package/dist/utilities/tokens.d.ts +1 -0
- package/dist/utilities/tokens.js +21 -0
- package/dist/utilities/version.d.ts +10 -0
- package/dist/utilities/version.js +21 -0
- package/metadata/checksum.txt +1 -0
- package/metadata/davinci-migration/migration-guide.md +1859 -0
- package/metadata/packages/angular/LIMITATIONS.md +32 -0
- package/metadata/packages/angular/README.md +393 -0
- package/metadata/packages/assets/CHANGELOG.md +196 -0
- package/metadata/packages/assets/README.md +79 -0
- package/metadata/packages/components/components/syn-accordion/component.angular.ts +80 -0
- package/metadata/packages/components/components/syn-accordion/component.react.ts +30 -0
- package/metadata/packages/components/components/syn-accordion/component.styles.ts +15 -0
- package/metadata/packages/components/components/syn-accordion/component.ts +111 -0
- package/metadata/packages/components/components/syn-accordion/component.vue +64 -0
- package/metadata/packages/components/components/syn-alert/component.angular.ts +158 -0
- package/metadata/packages/components/components/syn-alert/component.custom.styles.ts +90 -0
- package/metadata/packages/components/components/syn-alert/component.react.ts +60 -0
- package/metadata/packages/components/components/syn-alert/component.styles.ts +110 -0
- package/metadata/packages/components/components/syn-alert/component.ts +324 -0
- package/metadata/packages/components/components/syn-alert/component.vue +130 -0
- package/metadata/packages/components/components/syn-badge/component.angular.ts +53 -0
- package/metadata/packages/components/components/syn-badge/component.custom.styles.ts +61 -0
- package/metadata/packages/components/components/syn-badge/component.react.ts +29 -0
- package/metadata/packages/components/components/syn-badge/component.styles.ts +59 -0
- package/metadata/packages/components/components/syn-badge/component.ts +65 -0
- package/metadata/packages/components/components/syn-badge/component.vue +53 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.angular.ts +58 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.custom.styles.ts +5 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.react.ts +32 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.styles.ts +18 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.ts +110 -0
- package/metadata/packages/components/components/syn-breadcrumb/component.vue +58 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.angular.ts +88 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.custom.styles.ts +74 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.react.ts +37 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.styles.ts +95 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.ts +139 -0
- package/metadata/packages/components/components/syn-breadcrumb-item/component.vue +76 -0
- package/metadata/packages/components/components/syn-button/component.angular.ts +318 -0
- package/metadata/packages/components/components/syn-button/component.custom.styles.ts +206 -0
- package/metadata/packages/components/components/syn-button/component.react.ts +56 -0
- package/metadata/packages/components/components/syn-button/component.styles.ts +368 -0
- package/metadata/packages/components/components/syn-button/component.ts +322 -0
- package/metadata/packages/components/components/syn-button/component.vue +204 -0
- package/metadata/packages/components/components/syn-button-group/component.angular.ts +55 -0
- package/metadata/packages/components/components/syn-button-group/component.react.ts +29 -0
- package/metadata/packages/components/components/syn-button-group/component.styles.ts +21 -0
- package/metadata/packages/components/components/syn-button-group/component.ts +103 -0
- package/metadata/packages/components/components/syn-button-group/component.vue +55 -0
- package/metadata/packages/components/components/syn-card/component.angular.ts +69 -0
- package/metadata/packages/components/components/syn-card/component.custom.styles.ts +55 -0
- package/metadata/packages/components/components/syn-card/component.react.ts +41 -0
- package/metadata/packages/components/components/syn-card/component.styles.ts +77 -0
- package/metadata/packages/components/components/syn-card/component.ts +68 -0
- package/metadata/packages/components/components/syn-card/component.vue +67 -0
- package/metadata/packages/components/components/syn-checkbox/component.angular.ts +260 -0
- package/metadata/packages/components/components/syn-checkbox/component.custom.styles.ts +53 -0
- package/metadata/packages/components/components/syn-checkbox/component.react.ts +64 -0
- package/metadata/packages/components/components/syn-checkbox/component.styles.ts +130 -0
- package/metadata/packages/components/components/syn-checkbox/component.ts +291 -0
- package/metadata/packages/components/components/syn-checkbox/component.vue +186 -0
- package/metadata/packages/components/components/syn-combobox/component.angular.ts +436 -0
- package/metadata/packages/components/components/syn-combobox/component.custom.styles.ts +35 -0
- package/metadata/packages/components/components/syn-combobox/component.react.ts +109 -0
- package/metadata/packages/components/components/syn-combobox/component.styles.ts +406 -0
- package/metadata/packages/components/components/syn-combobox/component.ts +1139 -0
- package/metadata/packages/components/components/syn-combobox/component.vue +304 -0
- package/metadata/packages/components/components/syn-details/component.angular.ts +184 -0
- package/metadata/packages/components/components/syn-details/component.custom.styles.ts +140 -0
- package/metadata/packages/components/components/syn-details/component.react.ts +63 -0
- package/metadata/packages/components/components/syn-details/component.styles.ts +90 -0
- package/metadata/packages/components/components/syn-details/component.ts +266 -0
- package/metadata/packages/components/components/syn-details/component.vue +134 -0
- package/metadata/packages/components/components/syn-dialog/component.angular.ts +201 -0
- package/metadata/packages/components/components/syn-dialog/component.custom.styles.ts +54 -0
- package/metadata/packages/components/components/syn-dialog/component.react.ts +91 -0
- package/metadata/packages/components/components/syn-dialog/component.styles.ts +129 -0
- package/metadata/packages/components/components/syn-dialog/component.ts +366 -0
- package/metadata/packages/components/components/syn-dialog/component.vue +169 -0
- package/metadata/packages/components/components/syn-divider/component.angular.ts +55 -0
- package/metadata/packages/components/components/syn-divider/component.custom.styles.ts +8 -0
- package/metadata/packages/components/components/syn-divider/component.react.ts +29 -0
- package/metadata/packages/components/components/syn-divider/component.styles.ts +31 -0
- package/metadata/packages/components/components/syn-divider/component.ts +42 -0
- package/metadata/packages/components/components/syn-divider/component.vue +51 -0
- package/metadata/packages/components/components/syn-drawer/component.angular.ts +234 -0
- package/metadata/packages/components/components/syn-drawer/component.custom.styles.ts +78 -0
- package/metadata/packages/components/components/syn-drawer/component.react.ts +98 -0
- package/metadata/packages/components/components/syn-drawer/component.styles.ts +165 -0
- package/metadata/packages/components/components/syn-drawer/component.ts +496 -0
- package/metadata/packages/components/components/syn-drawer/component.vue +188 -0
- package/metadata/packages/components/components/syn-dropdown/component.angular.ts +223 -0
- package/metadata/packages/components/components/syn-dropdown/component.custom.styles.ts +5 -0
- package/metadata/packages/components/components/syn-dropdown/component.react.ts +59 -0
- package/metadata/packages/components/components/syn-dropdown/component.styles.ts +60 -0
- package/metadata/packages/components/components/syn-dropdown/component.ts +484 -0
- package/metadata/packages/components/components/syn-dropdown/component.vue +159 -0
- package/metadata/packages/components/components/syn-file/component.angular.ts +359 -0
- package/metadata/packages/components/components/syn-file/component.react.ts +85 -0
- package/metadata/packages/components/components/syn-file/component.styles.ts +179 -0
- package/metadata/packages/components/components/syn-file/component.ts +631 -0
- package/metadata/packages/components/components/syn-file/component.vue +251 -0
- package/metadata/packages/components/components/syn-header/component.angular.ts +132 -0
- package/metadata/packages/components/components/syn-header/component.react.ts +65 -0
- package/metadata/packages/components/components/syn-header/component.styles.ts +128 -0
- package/metadata/packages/components/components/syn-header/component.ts +260 -0
- package/metadata/packages/components/components/syn-header/component.vue +117 -0
- package/metadata/packages/components/components/syn-icon/component.angular.ts +115 -0
- package/metadata/packages/components/components/syn-icon/component.custom.styles.ts +5 -0
- package/metadata/packages/components/components/syn-icon/component.react.ts +41 -0
- package/metadata/packages/components/components/syn-icon/component.styles.ts +25 -0
- package/metadata/packages/components/components/syn-icon/component.ts +234 -0
- package/metadata/packages/components/components/syn-icon/component.vue +100 -0
- package/metadata/packages/components/components/syn-icon-button/component.angular.ts +185 -0
- package/metadata/packages/components/components/syn-icon-button/component.custom.styles.ts +68 -0
- package/metadata/packages/components/components/syn-icon-button/component.react.ts +42 -0
- package/metadata/packages/components/components/syn-icon-button/component.styles.ts +59 -0
- package/metadata/packages/components/components/syn-icon-button/component.ts +154 -0
- package/metadata/packages/components/components/syn-icon-button/component.vue +132 -0
- package/metadata/packages/components/components/syn-input/component.angular.ts +606 -0
- package/metadata/packages/components/components/syn-input/component.custom.styles.ts +278 -0
- package/metadata/packages/components/components/syn-input/component.react.ts +91 -0
- package/metadata/packages/components/components/syn-input/component.styles.ts +287 -0
- package/metadata/packages/components/components/syn-input/component.ts +942 -0
- package/metadata/packages/components/components/syn-input/component.vue +370 -0
- package/metadata/packages/components/components/syn-menu/component.angular.ts +52 -0
- package/metadata/packages/components/components/syn-menu/component.custom.styles.ts +29 -0
- package/metadata/packages/components/components/syn-menu/component.react.ts +36 -0
- package/metadata/packages/components/components/syn-menu/component.styles.ts +27 -0
- package/metadata/packages/components/components/syn-menu/component.ts +199 -0
- package/metadata/packages/components/components/syn-menu/component.vue +48 -0
- package/metadata/packages/components/components/syn-menu-item/component.angular.ts +121 -0
- package/metadata/packages/components/components/syn-menu-item/component.custom.styles.ts +128 -0
- package/metadata/packages/components/components/syn-menu-item/component.react.ts +45 -0
- package/metadata/packages/components/components/syn-menu-item/component.styles.ts +164 -0
- package/metadata/packages/components/components/syn-menu-item/component.ts +209 -0
- package/metadata/packages/components/components/syn-menu-item/component.vue +91 -0
- package/metadata/packages/components/components/syn-menu-label/component.angular.ts +48 -0
- package/metadata/packages/components/components/syn-menu-label/component.custom.styles.ts +24 -0
- package/metadata/packages/components/components/syn-menu-label/component.react.ts +35 -0
- package/metadata/packages/components/components/syn-menu-label/component.styles.ts +28 -0
- package/metadata/packages/components/components/syn-menu-label/component.ts +54 -0
- package/metadata/packages/components/components/syn-menu-label/component.vue +41 -0
- package/metadata/packages/components/components/syn-nav-item/component.angular.ts +242 -0
- package/metadata/packages/components/components/syn-nav-item/component.react.ts +82 -0
- package/metadata/packages/components/components/syn-nav-item/component.styles.ts +337 -0
- package/metadata/packages/components/components/syn-nav-item/component.ts +492 -0
- package/metadata/packages/components/components/syn-nav-item/component.vue +182 -0
- package/metadata/packages/components/components/syn-optgroup/component.angular.ts +79 -0
- package/metadata/packages/components/components/syn-optgroup/component.react.ts +41 -0
- package/metadata/packages/components/components/syn-optgroup/component.styles.ts +59 -0
- package/metadata/packages/components/components/syn-optgroup/component.ts +176 -0
- package/metadata/packages/components/components/syn-optgroup/component.vue +71 -0
- package/metadata/packages/components/components/syn-option/component.angular.ts +79 -0
- package/metadata/packages/components/components/syn-option/component.custom.styles.ts +81 -0
- package/metadata/packages/components/components/syn-option/component.react.ts +37 -0
- package/metadata/packages/components/components/syn-option/component.styles.ts +96 -0
- package/metadata/packages/components/components/syn-option/component.ts +174 -0
- package/metadata/packages/components/components/syn-option/component.vue +71 -0
- package/metadata/packages/components/components/syn-popup/component.angular.ts +385 -0
- package/metadata/packages/components/components/syn-popup/component.react.ts +55 -0
- package/metadata/packages/components/components/syn-popup/component.styles.ts +70 -0
- package/metadata/packages/components/components/syn-popup/component.ts +583 -0
- package/metadata/packages/components/components/syn-popup/component.vue +240 -0
- package/metadata/packages/components/components/syn-prio-nav/component.angular.ts +67 -0
- package/metadata/packages/components/components/syn-prio-nav/component.react.ts +54 -0
- package/metadata/packages/components/components/syn-prio-nav/component.styles.ts +48 -0
- package/metadata/packages/components/components/syn-prio-nav/component.ts +287 -0
- package/metadata/packages/components/components/syn-prio-nav/component.vue +60 -0
- package/metadata/packages/components/components/syn-progress-bar/component.angular.ts +85 -0
- package/metadata/packages/components/components/syn-progress-bar/component.custom.styles.ts +22 -0
- package/metadata/packages/components/components/syn-progress-bar/component.react.ts +37 -0
- package/metadata/packages/components/components/syn-progress-bar/component.styles.ts +94 -0
- package/metadata/packages/components/components/syn-progress-bar/component.ts +74 -0
- package/metadata/packages/components/components/syn-progress-bar/component.vue +71 -0
- package/metadata/packages/components/components/syn-progress-ring/component.angular.ts +72 -0
- package/metadata/packages/components/components/syn-progress-ring/component.custom.styles.ts +17 -0
- package/metadata/packages/components/components/syn-progress-ring/component.react.ts +37 -0
- package/metadata/packages/components/components/syn-progress-ring/component.styles.ts +77 -0
- package/metadata/packages/components/components/syn-progress-ring/component.ts +90 -0
- package/metadata/packages/components/components/syn-progress-ring/component.vue +66 -0
- package/metadata/packages/components/components/syn-radio/component.angular.ts +109 -0
- package/metadata/packages/components/components/syn-radio/component.custom.styles.ts +73 -0
- package/metadata/packages/components/components/syn-radio/component.react.ts +48 -0
- package/metadata/packages/components/components/syn-radio/component.styles.ts +124 -0
- package/metadata/packages/components/components/syn-radio/component.ts +129 -0
- package/metadata/packages/components/components/syn-radio/component.vue +99 -0
- package/metadata/packages/components/components/syn-radio-button/component.angular.ts +123 -0
- package/metadata/packages/components/components/syn-radio-button/component.react.ts +49 -0
- package/metadata/packages/components/components/syn-radio-button/component.styles.ts +37 -0
- package/metadata/packages/components/components/syn-radio-button/component.ts +149 -0
- package/metadata/packages/components/components/syn-radio-button/component.vue +105 -0
- package/metadata/packages/components/components/syn-radio-group/component.angular.ts +204 -0
- package/metadata/packages/components/components/syn-radio-group/component.custom.styles.ts +22 -0
- package/metadata/packages/components/components/syn-radio-group/component.react.ts +56 -0
- package/metadata/packages/components/components/syn-radio-group/component.styles.ts +44 -0
- package/metadata/packages/components/components/syn-radio-group/component.ts +418 -0
- package/metadata/packages/components/components/syn-radio-group/component.vue +158 -0
- package/metadata/packages/components/components/syn-range/component.angular.ts +334 -0
- package/metadata/packages/components/components/syn-range/component.react.ts +92 -0
- package/metadata/packages/components/components/syn-range/component.styles.ts +284 -0
- package/metadata/packages/components/components/syn-range/component.ts +878 -0
- package/metadata/packages/components/components/syn-range/component.vue +240 -0
- package/metadata/packages/components/components/syn-range-tick/component.angular.ts +59 -0
- package/metadata/packages/components/components/syn-range-tick/component.react.ts +33 -0
- package/metadata/packages/components/components/syn-range-tick/component.styles.ts +34 -0
- package/metadata/packages/components/components/syn-range-tick/component.ts +50 -0
- package/metadata/packages/components/components/syn-range-tick/component.vue +57 -0
- package/metadata/packages/components/components/syn-resize-observer/component.styles.ts +16 -0
- package/metadata/packages/components/components/syn-resize-observer/component.ts +98 -0
- package/metadata/packages/components/components/syn-select/component.angular.ts +441 -0
- package/metadata/packages/components/components/syn-select/component.custom.styles.ts +176 -0
- package/metadata/packages/components/components/syn-select/component.react.ts +101 -0
- package/metadata/packages/components/components/syn-select/component.styles.ts +316 -0
- package/metadata/packages/components/components/syn-select/component.ts +1054 -0
- package/metadata/packages/components/components/syn-select/component.vue +303 -0
- package/metadata/packages/components/components/syn-side-nav/component.angular.ts +231 -0
- package/metadata/packages/components/components/syn-side-nav/component.react.ts +95 -0
- package/metadata/packages/components/components/syn-side-nav/component.styles.ts +160 -0
- package/metadata/packages/components/components/syn-side-nav/component.ts +492 -0
- package/metadata/packages/components/components/syn-side-nav/component.vue +201 -0
- package/metadata/packages/components/components/syn-spinner/component.angular.ts +44 -0
- package/metadata/packages/components/components/syn-spinner/component.custom.styles.ts +31 -0
- package/metadata/packages/components/components/syn-spinner/component.react.ts +31 -0
- package/metadata/packages/components/components/syn-spinner/component.styles.ts +55 -0
- package/metadata/packages/components/components/syn-spinner/component.ts +42 -0
- package/metadata/packages/components/components/syn-spinner/component.vue +35 -0
- package/metadata/packages/components/components/syn-switch/component.angular.ts +244 -0
- package/metadata/packages/components/components/syn-switch/component.custom.styles.ts +112 -0
- package/metadata/packages/components/components/syn-switch/component.react.ts +63 -0
- package/metadata/packages/components/components/syn-switch/component.styles.ts +177 -0
- package/metadata/packages/components/components/syn-switch/component.ts +274 -0
- package/metadata/packages/components/components/syn-switch/component.vue +178 -0
- package/metadata/packages/components/components/syn-tab/component.angular.ts +109 -0
- package/metadata/packages/components/components/syn-tab/component.custom.styles.ts +92 -0
- package/metadata/packages/components/components/syn-tab/component.react.ts +42 -0
- package/metadata/packages/components/components/syn-tab/component.styles.ts +77 -0
- package/metadata/packages/components/components/syn-tab/component.ts +132 -0
- package/metadata/packages/components/components/syn-tab/component.vue +91 -0
- package/metadata/packages/components/components/syn-tab-group/component.angular.ts +166 -0
- package/metadata/packages/components/components/syn-tab-group/component.custom.styles.ts +248 -0
- package/metadata/packages/components/components/syn-tab-group/component.react.ts +58 -0
- package/metadata/packages/components/components/syn-tab-group/component.styles.ts +200 -0
- package/metadata/packages/components/components/syn-tab-group/component.ts +557 -0
- package/metadata/packages/components/components/syn-tab-group/component.vue +126 -0
- package/metadata/packages/components/components/syn-tab-panel/component.angular.ts +68 -0
- package/metadata/packages/components/components/syn-tab-panel/component.custom.styles.ts +8 -0
- package/metadata/packages/components/components/syn-tab-panel/component.react.ts +31 -0
- package/metadata/packages/components/components/syn-tab-panel/component.styles.ts +27 -0
- package/metadata/packages/components/components/syn-tab-panel/component.ts +67 -0
- package/metadata/packages/components/components/syn-tab-panel/component.vue +60 -0
- package/metadata/packages/components/components/syn-tag/component.angular.ts +83 -0
- package/metadata/packages/components/components/syn-tag/component.custom.styles.ts +120 -0
- package/metadata/packages/components/components/syn-tag/component.react.ts +43 -0
- package/metadata/packages/components/components/syn-tag/component.styles.ts +65 -0
- package/metadata/packages/components/components/syn-tag/component.ts +90 -0
- package/metadata/packages/components/components/syn-tag/component.vue +81 -0
- package/metadata/packages/components/components/syn-textarea/component.angular.ts +394 -0
- package/metadata/packages/components/components/syn-textarea/component.custom.styles.ts +18 -0
- package/metadata/packages/components/components/syn-textarea/component.react.ts +60 -0
- package/metadata/packages/components/components/syn-textarea/component.styles.ts +187 -0
- package/metadata/packages/components/components/syn-textarea/component.ts +401 -0
- package/metadata/packages/components/components/syn-textarea/component.vue +244 -0
- package/metadata/packages/components/components/syn-tooltip/component.angular.ts +212 -0
- package/metadata/packages/components/components/syn-tooltip/component.custom.styles.ts +13 -0
- package/metadata/packages/components/components/syn-tooltip/component.react.ts +63 -0
- package/metadata/packages/components/components/syn-tooltip/component.styles.ts +64 -0
- package/metadata/packages/components/components/syn-tooltip/component.ts +319 -0
- package/metadata/packages/components/components/syn-tooltip/component.vue +158 -0
- package/metadata/packages/components/components/syn-validate/component.angular.ts +128 -0
- package/metadata/packages/components/components/syn-validate/component.react.ts +36 -0
- package/metadata/packages/components/components/syn-validate/component.styles.ts +9 -0
- package/metadata/packages/components/components/syn-validate/component.ts +437 -0
- package/metadata/packages/components/components/syn-validate/component.vue +98 -0
- package/metadata/packages/components/migration/BREAKING_CHANGES.md +489 -0
- package/metadata/packages/components/migration/migration-synergy-v3.md +50 -0
- package/metadata/packages/components/static/CHANGELOG.md +1107 -0
- package/metadata/packages/components/static/LIMITATIONS.md +269 -0
- package/metadata/packages/components/static/README.md +248 -0
- package/metadata/packages/react/LIMITATIONS.md +31 -0
- package/metadata/packages/react/README.md +262 -0
- package/metadata/packages/styles/CHANGELOG.md +76 -0
- package/metadata/packages/styles/README.md +132 -0
- package/metadata/packages/styles/index.css +309 -0
- package/metadata/packages/styles/link-list.css +47 -0
- package/metadata/packages/styles/link.css +79 -0
- package/metadata/packages/styles/tables.css +143 -0
- package/metadata/packages/styles/typography.css +52 -0
- package/metadata/packages/tokens/CHANGELOG.md +431 -0
- package/metadata/packages/tokens/README.md +408 -0
- package/metadata/packages/tokens/dark.css +268 -0
- package/metadata/packages/tokens/index.js +1294 -0
- package/metadata/packages/tokens/light.css +268 -0
- package/metadata/packages/vue/LIMITATIONS.md +53 -0
- package/metadata/packages/vue/README.md +252 -0
- package/metadata/static/angular/index.md +6 -0
- package/metadata/static/assets/index.md +10 -0
- package/metadata/static/component-info/index.md +24 -0
- package/metadata/static/component-list/index.md +34 -0
- package/metadata/static/components/index.md +10 -0
- package/metadata/static/components/syn-accordion/docs.md +428 -0
- package/metadata/static/components/syn-alert/docs.md +231 -0
- package/metadata/static/components/syn-badge/docs.md +128 -0
- package/metadata/static/components/syn-breadcrumb/docs.md +265 -0
- package/metadata/static/components/syn-breadcrumb-item/docs.md +49 -0
- package/metadata/static/components/syn-button/docs.md +402 -0
- package/metadata/static/components/syn-card/docs.md +273 -0
- package/metadata/static/components/syn-checkbox/docs.md +77 -0
- package/metadata/static/components/syn-combobox/docs.md +2402 -0
- package/metadata/static/components/syn-details/docs.md +220 -0
- package/metadata/static/components/syn-dialog/docs.md +222 -0
- package/metadata/static/components/syn-divider/docs.md +77 -0
- package/metadata/static/components/syn-drawer/docs.md +271 -0
- package/metadata/static/components/syn-dropdown/docs.md +316 -0
- package/metadata/static/components/syn-file/docs.md +215 -0
- package/metadata/static/components/syn-header/docs.md +134 -0
- package/metadata/static/components/syn-icon/docs.md +177 -0
- package/metadata/static/components/syn-icon-button/docs.md +142 -0
- package/metadata/static/components/syn-input/docs.md +460 -0
- package/metadata/static/components/syn-menu/docs.md +162 -0
- package/metadata/static/components/syn-menu-item/docs.md +196 -0
- package/metadata/static/components/syn-menu-label/docs.md +29 -0
- package/metadata/static/components/syn-nav-item/docs.md +161 -0
- package/metadata/static/components/syn-optgroup/docs.md +167 -0
- package/metadata/static/components/syn-option/docs.md +137 -0
- package/metadata/static/components/syn-prio-nav/docs.md +54 -0
- package/metadata/static/components/syn-progress-bar/docs.md +77 -0
- package/metadata/static/components/syn-progress-ring/docs.md +89 -0
- package/metadata/static/components/syn-radio/docs.md +123 -0
- package/metadata/static/components/syn-radio-group/docs.md +363 -0
- package/metadata/static/components/syn-range/docs.md +419 -0
- package/metadata/static/components/syn-range-tick/docs.md +110 -0
- package/metadata/static/components/syn-select/docs.md +730 -0
- package/metadata/static/components/syn-side-nav/docs.md +593 -0
- package/metadata/static/components/syn-spinner/docs.md +45 -0
- package/metadata/static/components/syn-switch/docs.md +74 -0
- package/metadata/static/components/syn-tab/docs.md +47 -0
- package/metadata/static/components/syn-tab-group/docs.md +1094 -0
- package/metadata/static/components/syn-tab-panel/docs.md +91 -0
- package/metadata/static/components/syn-tag/docs.md +50 -0
- package/metadata/static/components/syn-textarea/docs.md +215 -0
- package/metadata/static/components/syn-tooltip/docs.md +144 -0
- package/metadata/static/components/syn-validate/docs.md +225 -0
- package/metadata/static/migration/index.md +16 -0
- package/metadata/static/react/index.md +8 -0
- package/metadata/static/setup/icon-usage.md +276 -0
- package/metadata/static/setup/prerequisites.md +171 -0
- package/metadata/static/styles/index.md +11 -0
- package/metadata/static/styles/syn-body.md +5 -0
- package/metadata/static/styles/syn-heading.md +5 -0
- package/metadata/static/styles/syn-link-list.md +325 -0
- package/metadata/static/styles/syn-link.md +156 -0
- package/metadata/static/styles/syn-table-cell.md +125 -0
- package/metadata/static/styles/syn-table.md +201 -0
- package/metadata/static/styles/syn-weight.md +5 -0
- package/metadata/static/templates/appshell.md +2061 -0
- package/metadata/static/templates/breadcrumb.md +375 -0
- package/metadata/static/templates/footer.md +342 -0
- package/metadata/static/templates/forms.md +369 -0
- package/metadata/static/templates/index.md +9 -0
- package/metadata/static/templates/table.md +1426 -0
- package/metadata/static/vue/index.md +6 -0
- package/package.json +109 -4
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ---------------------------------------------------------------------
|
|
3
|
+
* 🔒 AUTOGENERATED BY VENDORISM
|
|
4
|
+
* Removing this comment will prevent it from being managed by it.
|
|
5
|
+
* ---------------------------------------------------------------------
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/* eslint-disable */
|
|
9
|
+
import { html } from 'lit';
|
|
10
|
+
import { property, query, state } from 'lit/decorators.js';
|
|
11
|
+
import componentStyles from '../../styles/component.styles.js';
|
|
12
|
+
import SynergyElement from '../../internal/synergy-element.js';
|
|
13
|
+
import styles from './button-group.styles.js';
|
|
14
|
+
import type { CSSResultGroup } from 'lit';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @summary Button groups can be used to group related buttons into sections.
|
|
18
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-button-group--docs
|
|
19
|
+
* @status stable
|
|
20
|
+
* @since 2.0
|
|
21
|
+
*
|
|
22
|
+
* @slot - One or more `<syn-button>` elements to display in the button group.
|
|
23
|
+
*
|
|
24
|
+
* @csspart base - The component's base wrapper.
|
|
25
|
+
*/
|
|
26
|
+
export default class SynButtonGroup extends SynergyElement {
|
|
27
|
+
static styles: CSSResultGroup = [componentStyles, styles];
|
|
28
|
+
|
|
29
|
+
@query('slot') defaultSlot: HTMLSlotElement;
|
|
30
|
+
|
|
31
|
+
@state() disableRole = false;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* A label to use for the button group. This won't be displayed on the screen, but it will be announced by assistive
|
|
35
|
+
* devices when interacting with the control and is strongly recommended.
|
|
36
|
+
*/
|
|
37
|
+
@property() label = '';
|
|
38
|
+
|
|
39
|
+
private handleFocus(event: Event) {
|
|
40
|
+
const button = findButton(event.target as HTMLElement);
|
|
41
|
+
button?.toggleAttribute('data-syn-button-group__button--focus', true);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
private handleBlur(event: Event) {
|
|
45
|
+
const button = findButton(event.target as HTMLElement);
|
|
46
|
+
button?.toggleAttribute('data-syn-button-group__button--focus', false);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
private handleMouseOver(event: Event) {
|
|
50
|
+
const button = findButton(event.target as HTMLElement);
|
|
51
|
+
button?.toggleAttribute('data-syn-button-group__button--hover', true);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
private handleMouseOut(event: Event) {
|
|
55
|
+
const button = findButton(event.target as HTMLElement);
|
|
56
|
+
button?.toggleAttribute('data-syn-button-group__button--hover', false);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
private handleSlotChange() {
|
|
60
|
+
const slottedElements = [...this.defaultSlot.assignedElements({ flatten: true })] as HTMLElement[];
|
|
61
|
+
|
|
62
|
+
slottedElements.forEach(el => {
|
|
63
|
+
const index = slottedElements.indexOf(el);
|
|
64
|
+
const button = findButton(el);
|
|
65
|
+
|
|
66
|
+
if (button) {
|
|
67
|
+
button.toggleAttribute('data-syn-button-group__button', true);
|
|
68
|
+
button.toggleAttribute('data-syn-button-group__button--first', index === 0);
|
|
69
|
+
button.toggleAttribute('data-syn-button-group__button--inner', index > 0 && index < slottedElements.length - 1);
|
|
70
|
+
button.toggleAttribute('data-syn-button-group__button--last', index === slottedElements.length - 1);
|
|
71
|
+
button.toggleAttribute(
|
|
72
|
+
'data-syn-button-group__button--radio',
|
|
73
|
+
button.tagName.toLowerCase() === 'syn-radio-button'
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
render() {
|
|
80
|
+
// eslint-disable-next-line lit-a11y/mouse-events-have-key-events
|
|
81
|
+
return html`
|
|
82
|
+
<div
|
|
83
|
+
part="base"
|
|
84
|
+
class="button-group"
|
|
85
|
+
role="${this.disableRole ? 'presentation' : 'group'}"
|
|
86
|
+
aria-label=${this.label}
|
|
87
|
+
@focusout=${this.handleBlur}
|
|
88
|
+
@focusin=${this.handleFocus}
|
|
89
|
+
@mouseover=${this.handleMouseOver}
|
|
90
|
+
@mouseout=${this.handleMouseOut}
|
|
91
|
+
>
|
|
92
|
+
<slot @slotchange=${this.handleSlotChange}></slot>
|
|
93
|
+
</div>
|
|
94
|
+
`;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function findButton(el: HTMLElement) {
|
|
99
|
+
const selector = 'syn-button, syn-radio-button';
|
|
100
|
+
|
|
101
|
+
// The button could be the target element or a child of it (e.g. a dropdown or tooltip anchor)
|
|
102
|
+
return el.closest(selector) ?? el.querySelector(selector);
|
|
103
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
// ---------------------------------------------------------------------
|
|
3
|
+
// 🔒 AUTOGENERATED @synergy-design-system/vue wrappers for @synergy-design-system/components
|
|
4
|
+
// Please do not edit this file directly!
|
|
5
|
+
// It will get recreated when running pnpm build.
|
|
6
|
+
// ---------------------------------------------------------------------
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @summary Button groups can be used to group related buttons into sections.
|
|
10
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-button-group--docs
|
|
11
|
+
* @status stable
|
|
12
|
+
* @since 2.0
|
|
13
|
+
*
|
|
14
|
+
* @slot - One or more `<syn-button>` elements to display in the button group.
|
|
15
|
+
*
|
|
16
|
+
* @csspart base - The component's base wrapper.
|
|
17
|
+
*/
|
|
18
|
+
import { computed, ref } from 'vue';
|
|
19
|
+
import '@synergy-design-system/components/components/button-group/button-group.js';
|
|
20
|
+
|
|
21
|
+
import type { SynButtonGroup } from '@synergy-design-system/components';
|
|
22
|
+
|
|
23
|
+
// DOM Reference to the element
|
|
24
|
+
const nativeElement = ref<SynButtonGroup>();
|
|
25
|
+
|
|
26
|
+
defineExpose({
|
|
27
|
+
nativeElement,
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
// Map attributes
|
|
31
|
+
const props = defineProps<{
|
|
32
|
+
/**
|
|
33
|
+
* A label to use for the button group.
|
|
34
|
+
* This won't be displayed on the screen, but it will be announced by assistive
|
|
35
|
+
devices when interacting with the control and is strongly recommended.
|
|
36
|
+
*/
|
|
37
|
+
label?: SynButtonGroup['label'];
|
|
38
|
+
}>();
|
|
39
|
+
|
|
40
|
+
// Make sure prop binding only forwards the props that are actually there.
|
|
41
|
+
// This is needed because :param="param" also adds an empty attribute
|
|
42
|
+
// when using web-components, which breaks optional arguments like size in SynInput
|
|
43
|
+
// @see https://github.com/vuejs/core/issues/5190#issuecomment-1003112498
|
|
44
|
+
const visibleProps = computed(() =>
|
|
45
|
+
Object.fromEntries(
|
|
46
|
+
Object.entries(props).filter(([, value]) => typeof value !== 'undefined'),
|
|
47
|
+
),
|
|
48
|
+
);
|
|
49
|
+
</script>
|
|
50
|
+
|
|
51
|
+
<template>
|
|
52
|
+
<syn-button-group v-bind="visibleProps" ref="nativeElement">
|
|
53
|
+
<slot></slot>
|
|
54
|
+
</syn-button-group>
|
|
55
|
+
</template>
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------
|
|
2
|
+
// 🔒 AUTOGENERATED @synergy-design-system/angular wrappers for @synergy-design-system/components
|
|
3
|
+
// Please do not edit this file directly!
|
|
4
|
+
// It will get recreated when running pnpm build.
|
|
5
|
+
// ---------------------------------------------------------------------
|
|
6
|
+
import {
|
|
7
|
+
Component,
|
|
8
|
+
ElementRef,
|
|
9
|
+
NgZone,
|
|
10
|
+
Input,
|
|
11
|
+
Output,
|
|
12
|
+
EventEmitter,
|
|
13
|
+
AfterContentInit,
|
|
14
|
+
} from '@angular/core';
|
|
15
|
+
import type { SynCard } from '@synergy-design-system/components';
|
|
16
|
+
|
|
17
|
+
import '@synergy-design-system/components/components/card/card.js';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @summary Cards can be used to group related subjects in a container.
|
|
21
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-card--docs
|
|
22
|
+
* @status stable
|
|
23
|
+
* @since 2.0
|
|
24
|
+
*
|
|
25
|
+
* @slot - The card's main content.
|
|
26
|
+
* @slot header - An optional header for the card.
|
|
27
|
+
* @slot footer - An optional footer for the card.
|
|
28
|
+
* @slot image - An optional image to render at the start of the card.
|
|
29
|
+
*
|
|
30
|
+
* @csspart base - The component's base wrapper.
|
|
31
|
+
* @csspart image - The container that wraps the card's image.
|
|
32
|
+
* @csspart header - The container that wraps the card's header.
|
|
33
|
+
* @csspart body - The container that wraps the card's main content.
|
|
34
|
+
* @csspart footer - The container that wraps the card's footer.
|
|
35
|
+
*
|
|
36
|
+
* @cssproperty --border-color - The card's border color, including borders that occur inside the card.
|
|
37
|
+
* @cssproperty --border-radius - The border radius for the card's edges.
|
|
38
|
+
* @cssproperty --border-width - The width of the card's borders.
|
|
39
|
+
* @cssproperty --padding - The padding to use for the card's sections.
|
|
40
|
+
*/
|
|
41
|
+
@Component({
|
|
42
|
+
selector: 'syn-card',
|
|
43
|
+
standalone: true,
|
|
44
|
+
template: '<ng-content></ng-content>',
|
|
45
|
+
})
|
|
46
|
+
export class SynCardComponent {
|
|
47
|
+
public nativeElement: SynCard;
|
|
48
|
+
private _ngZone: NgZone;
|
|
49
|
+
|
|
50
|
+
constructor(e: ElementRef, ngZone: NgZone) {
|
|
51
|
+
this.nativeElement = e.nativeElement;
|
|
52
|
+
this._ngZone = ngZone;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Draws the card with sharp edges.
|
|
57
|
+
* Can be used e.g.
|
|
58
|
+
* when nesting multiple syn-cards to create hierarchy.
|
|
59
|
+
*/
|
|
60
|
+
@Input()
|
|
61
|
+
set sharp(v: '' | SynCard['sharp']) {
|
|
62
|
+
this._ngZone.runOutsideAngular(
|
|
63
|
+
() => (this.nativeElement.sharp = v === '' || v),
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
get sharp(): SynCard['sharp'] {
|
|
67
|
+
return this.nativeElement.sharp;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
|
|
3
|
+
export default css`
|
|
4
|
+
:host {
|
|
5
|
+
--border-color: var(--syn-color-neutral-300);
|
|
6
|
+
--border-width: var(--syn-border-width-small);
|
|
7
|
+
--border-radius: var(--syn-border-radius-medium);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.card {
|
|
11
|
+
box-shadow: none;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Header adjustments
|
|
16
|
+
*/
|
|
17
|
+
.card__header {
|
|
18
|
+
border: none;
|
|
19
|
+
color: var(--syn-typography-color-text);
|
|
20
|
+
font: var(--syn-heading-large);
|
|
21
|
+
line-height: var(--syn-line-height-normal);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Card body
|
|
26
|
+
*/
|
|
27
|
+
.card__body {
|
|
28
|
+
color: var(--syn-typography-color-text);
|
|
29
|
+
font: var(--syn-body-medium-regular);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Card Footer
|
|
34
|
+
*/
|
|
35
|
+
.card--has-footer .card__footer {
|
|
36
|
+
border-top: none;
|
|
37
|
+
padding: var(--syn-spacing-x-small) var(--syn-spacing-large) var(--syn-spacing-large);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Cards that are sharp do not receive a border radius
|
|
42
|
+
*/
|
|
43
|
+
.card--sharp {
|
|
44
|
+
border-radius: var(--syn-border-radius-none);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Do not apply border radius to sharp card images
|
|
49
|
+
*/
|
|
50
|
+
.card--sharp .card__image {
|
|
51
|
+
border-top-left-radius: var(--syn-border-radius-none);
|
|
52
|
+
border-top-right-radius: var(--syn-border-radius-none);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
`;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------
|
|
2
|
+
// 🔒 AUTOGENERATED @synergy-design-system/react wrappers for @synergy-design-system/components
|
|
3
|
+
// Please do not edit this file directly!
|
|
4
|
+
// It will get recreated when running pnpm build.
|
|
5
|
+
// ---------------------------------------------------------------------
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { createComponent } from '@lit/react';
|
|
8
|
+
import Component from '@synergy-design-system/components/components/card/card.component.js';
|
|
9
|
+
|
|
10
|
+
const tagName = 'syn-card';
|
|
11
|
+
Component.define('syn-card');
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @summary Cards can be used to group related subjects in a container.
|
|
15
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-card--docs
|
|
16
|
+
* @status stable
|
|
17
|
+
* @since 2.0
|
|
18
|
+
*
|
|
19
|
+
* @slot - The card's main content.
|
|
20
|
+
* @slot header - An optional header for the card.
|
|
21
|
+
* @slot footer - An optional footer for the card.
|
|
22
|
+
* @slot image - An optional image to render at the start of the card.
|
|
23
|
+
*
|
|
24
|
+
* @csspart base - The component's base wrapper.
|
|
25
|
+
* @csspart image - The container that wraps the card's image.
|
|
26
|
+
* @csspart header - The container that wraps the card's header.
|
|
27
|
+
* @csspart body - The container that wraps the card's main content.
|
|
28
|
+
* @csspart footer - The container that wraps the card's footer.
|
|
29
|
+
*
|
|
30
|
+
* @cssproperty --border-color - The card's border color, including borders that occur inside the card.
|
|
31
|
+
* @cssproperty --border-radius - The border radius for the card's edges.
|
|
32
|
+
* @cssproperty --border-width - The width of the card's borders.
|
|
33
|
+
* @cssproperty --padding - The padding to use for the card's sections.
|
|
34
|
+
*/
|
|
35
|
+
export const SynCard = createComponent({
|
|
36
|
+
displayName: 'SynCard',
|
|
37
|
+
elementClass: Component,
|
|
38
|
+
events: {},
|
|
39
|
+
react: React,
|
|
40
|
+
tagName,
|
|
41
|
+
});
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ---------------------------------------------------------------------
|
|
3
|
+
* 🔒 AUTOGENERATED BY VENDORISM
|
|
4
|
+
* Removing this comment will prevent it from being managed by it.
|
|
5
|
+
* ---------------------------------------------------------------------
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/* eslint-disable */
|
|
9
|
+
import { css } from 'lit';
|
|
10
|
+
|
|
11
|
+
export default css`
|
|
12
|
+
/* stylelint-disable */
|
|
13
|
+
:host {
|
|
14
|
+
--border-color: var(--syn-color-neutral-200);
|
|
15
|
+
--border-radius: var(--syn-border-radius-medium);
|
|
16
|
+
--border-width: 1px;
|
|
17
|
+
--padding: var(--syn-spacing-large);
|
|
18
|
+
|
|
19
|
+
display: inline-block;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.card {
|
|
23
|
+
display: flex;
|
|
24
|
+
flex-direction: column;
|
|
25
|
+
background-color: var(--syn-panel-background-color);
|
|
26
|
+
box-shadow: var(--syn-shadow-x-small);
|
|
27
|
+
border: solid var(--border-width) var(--border-color);
|
|
28
|
+
border-radius: var(--border-radius);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.card__image {
|
|
32
|
+
display: flex;
|
|
33
|
+
border-top-left-radius: var(--border-radius);
|
|
34
|
+
border-top-right-radius: var(--border-radius);
|
|
35
|
+
margin: calc(-1 * var(--border-width));
|
|
36
|
+
overflow: hidden;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.card__image::slotted(img) {
|
|
40
|
+
display: block;
|
|
41
|
+
width: 100%;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.card:not(.card--has-image) .card__image {
|
|
45
|
+
display: none;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.card__header {
|
|
49
|
+
display: block;
|
|
50
|
+
border-bottom: solid var(--border-width) var(--border-color);
|
|
51
|
+
padding: calc(var(--padding) / 2) var(--padding);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.card:not(.card--has-header) .card__header {
|
|
55
|
+
display: none;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.card:not(.card--has-image) .card__header {
|
|
59
|
+
border-top-left-radius: var(--border-radius);
|
|
60
|
+
border-top-right-radius: var(--border-radius);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.card__body {
|
|
64
|
+
display: block;
|
|
65
|
+
padding: var(--padding);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.card--has-footer .card__footer {
|
|
69
|
+
display: block;
|
|
70
|
+
border-top: solid var(--border-width) var(--border-color);
|
|
71
|
+
padding: var(--padding);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.card:not(.card--has-footer) .card__footer {
|
|
75
|
+
display: none;
|
|
76
|
+
}
|
|
77
|
+
`;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ---------------------------------------------------------------------
|
|
3
|
+
* 🔒 AUTOGENERATED BY VENDORISM
|
|
4
|
+
* Removing this comment will prevent it from being managed by it.
|
|
5
|
+
* ---------------------------------------------------------------------
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/* eslint-disable */
|
|
9
|
+
import { classMap } from 'lit/directives/class-map.js';
|
|
10
|
+
import { property } from 'lit/decorators.js';
|
|
11
|
+
import { HasSlotController } from '../../internal/slot.js';
|
|
12
|
+
import { html } from 'lit';
|
|
13
|
+
import componentStyles from '../../styles/component.styles.js';
|
|
14
|
+
import SynergyElement from '../../internal/synergy-element.js';
|
|
15
|
+
import styles from './card.styles.js';
|
|
16
|
+
import customStyles from './card.custom.styles.js';
|
|
17
|
+
import type { CSSResultGroup } from 'lit';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @summary Cards can be used to group related subjects in a container.
|
|
21
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-card--docs
|
|
22
|
+
* @status stable
|
|
23
|
+
* @since 2.0
|
|
24
|
+
*
|
|
25
|
+
* @slot - The card's main content.
|
|
26
|
+
* @slot header - An optional header for the card.
|
|
27
|
+
* @slot footer - An optional footer for the card.
|
|
28
|
+
* @slot image - An optional image to render at the start of the card.
|
|
29
|
+
*
|
|
30
|
+
* @csspart base - The component's base wrapper.
|
|
31
|
+
* @csspart image - The container that wraps the card's image.
|
|
32
|
+
* @csspart header - The container that wraps the card's header.
|
|
33
|
+
* @csspart body - The container that wraps the card's main content.
|
|
34
|
+
* @csspart footer - The container that wraps the card's footer.
|
|
35
|
+
*
|
|
36
|
+
* @cssproperty --border-color - The card's border color, including borders that occur inside the card.
|
|
37
|
+
* @cssproperty --border-radius - The border radius for the card's edges.
|
|
38
|
+
* @cssproperty --border-width - The width of the card's borders.
|
|
39
|
+
* @cssproperty --padding - The padding to use for the card's sections.
|
|
40
|
+
*/
|
|
41
|
+
export default class SynCard extends SynergyElement {
|
|
42
|
+
static styles: CSSResultGroup = [componentStyles, styles, customStyles];
|
|
43
|
+
|
|
44
|
+
private readonly hasSlotController = new HasSlotController(this, 'footer', 'header', 'image');
|
|
45
|
+
|
|
46
|
+
/** Draws the card with sharp edges. Can be used e.g. when nesting multiple syn-cards to create hierarchy. */
|
|
47
|
+
@property({ type: Boolean, reflect: true }) sharp = false;
|
|
48
|
+
|
|
49
|
+
render() {
|
|
50
|
+
return html`
|
|
51
|
+
<div
|
|
52
|
+
part="base"
|
|
53
|
+
class=${classMap({
|
|
54
|
+
card: true,
|
|
55
|
+
'card--sharp': this.sharp,
|
|
56
|
+
'card--has-footer': this.hasSlotController.test('footer'),
|
|
57
|
+
'card--has-image': this.hasSlotController.test('image'),
|
|
58
|
+
'card--has-header': this.hasSlotController.test('header')
|
|
59
|
+
})}
|
|
60
|
+
>
|
|
61
|
+
<slot name="image" part="image" class="card__image"></slot>
|
|
62
|
+
<slot name="header" part="header" class="card__header"></slot>
|
|
63
|
+
<slot part="body" class="card__body"></slot>
|
|
64
|
+
<slot name="footer" part="footer" class="card__footer"></slot>
|
|
65
|
+
</div>
|
|
66
|
+
`;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
// ---------------------------------------------------------------------
|
|
3
|
+
// 🔒 AUTOGENERATED @synergy-design-system/vue wrappers for @synergy-design-system/components
|
|
4
|
+
// Please do not edit this file directly!
|
|
5
|
+
// It will get recreated when running pnpm build.
|
|
6
|
+
// ---------------------------------------------------------------------
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @summary Cards can be used to group related subjects in a container.
|
|
10
|
+
* @documentation https://synergy-design-system.github.io/?path=/docs/components-syn-card--docs
|
|
11
|
+
* @status stable
|
|
12
|
+
* @since 2.0
|
|
13
|
+
*
|
|
14
|
+
* @slot - The card's main content.
|
|
15
|
+
* @slot header - An optional header for the card.
|
|
16
|
+
* @slot footer - An optional footer for the card.
|
|
17
|
+
* @slot image - An optional image to render at the start of the card.
|
|
18
|
+
*
|
|
19
|
+
* @csspart base - The component's base wrapper.
|
|
20
|
+
* @csspart image - The container that wraps the card's image.
|
|
21
|
+
* @csspart header - The container that wraps the card's header.
|
|
22
|
+
* @csspart body - The container that wraps the card's main content.
|
|
23
|
+
* @csspart footer - The container that wraps the card's footer.
|
|
24
|
+
*
|
|
25
|
+
* @cssproperty --border-color - The card's border color, including borders that occur inside the card.
|
|
26
|
+
* @cssproperty --border-radius - The border radius for the card's edges.
|
|
27
|
+
* @cssproperty --border-width - The width of the card's borders.
|
|
28
|
+
* @cssproperty --padding - The padding to use for the card's sections.
|
|
29
|
+
*/
|
|
30
|
+
import { computed, ref } from 'vue';
|
|
31
|
+
import '@synergy-design-system/components/components/card/card.js';
|
|
32
|
+
|
|
33
|
+
import type { SynCard } from '@synergy-design-system/components';
|
|
34
|
+
|
|
35
|
+
// DOM Reference to the element
|
|
36
|
+
const nativeElement = ref<SynCard>();
|
|
37
|
+
|
|
38
|
+
defineExpose({
|
|
39
|
+
nativeElement,
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
// Map attributes
|
|
43
|
+
const props = defineProps<{
|
|
44
|
+
/**
|
|
45
|
+
* Draws the card with sharp edges.
|
|
46
|
+
* Can be used e.g.
|
|
47
|
+
* when nesting multiple syn-cards to create hierarchy.
|
|
48
|
+
*/
|
|
49
|
+
sharp?: SynCard['sharp'];
|
|
50
|
+
}>();
|
|
51
|
+
|
|
52
|
+
// Make sure prop binding only forwards the props that are actually there.
|
|
53
|
+
// This is needed because :param="param" also adds an empty attribute
|
|
54
|
+
// when using web-components, which breaks optional arguments like size in SynInput
|
|
55
|
+
// @see https://github.com/vuejs/core/issues/5190#issuecomment-1003112498
|
|
56
|
+
const visibleProps = computed(() =>
|
|
57
|
+
Object.fromEntries(
|
|
58
|
+
Object.entries(props).filter(([, value]) => typeof value !== 'undefined'),
|
|
59
|
+
),
|
|
60
|
+
);
|
|
61
|
+
</script>
|
|
62
|
+
|
|
63
|
+
<template>
|
|
64
|
+
<syn-card v-bind="visibleProps" ref="nativeElement">
|
|
65
|
+
<slot></slot>
|
|
66
|
+
</syn-card>
|
|
67
|
+
</template>
|