@synergy-design-system/metadata 3.7.0 → 3.9.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 +25 -0
- package/README.md +45 -0
- package/data/core/component/component:syn-accordion.json +46 -3
- package/data/core/component/component:syn-alert.json +112 -3
- package/data/core/component/component:syn-badge.json +66 -3
- package/data/core/component/component:syn-breadcrumb-item.json +37 -3
- package/data/core/component/component:syn-breadcrumb.json +57 -3
- package/data/core/component/component:syn-button-group.json +76 -3
- package/data/core/component/component:syn-button.json +76 -3
- package/data/core/component/component:syn-card.json +56 -3
- package/data/core/component/component:syn-chart.json +181 -0
- package/data/core/component/component:syn-checkbox.json +48 -3
- package/data/core/component/component:syn-combobox.json +53 -2
- package/data/core/component/component:syn-details.json +53 -3
- package/data/core/component/component:syn-dialog.json +70 -3
- package/data/core/component/component:syn-divider.json +38 -3
- package/data/core/component/component:syn-drawer.json +64 -3
- package/data/core/component/component:syn-dropdown.json +52 -3
- package/data/core/component/component:syn-file.json +60 -2
- package/data/core/component/component:syn-header.json +60 -1
- package/data/core/component/component:syn-icon-button.json +57 -3
- package/data/core/component/component:syn-icon.json +70 -4
- package/data/core/component/component:syn-input.json +69 -3
- package/data/core/component/component:syn-menu-item.json +62 -3
- package/data/core/component/component:syn-menu-label.json +59 -3
- package/data/core/component/component:syn-menu.json +66 -3
- package/data/core/component/component:syn-nav-item.json +62 -3
- package/data/core/component/component:syn-optgroup.json +49 -3
- package/data/core/component/component:syn-option.json +43 -3
- package/data/core/component/component:syn-pagination.json +54 -0
- package/data/core/component/component:syn-popup.json +56 -2
- package/data/core/component/component:syn-prio-nav.json +60 -3
- package/data/core/component/component:syn-progress-bar.json +58 -3
- package/data/core/component/component:syn-progress-ring.json +58 -3
- package/data/core/component/component:syn-radio-button.json +65 -2
- package/data/core/component/component:syn-radio-group.json +57 -3
- package/data/core/component/component:syn-radio.json +61 -3
- package/data/core/component/component:syn-range-tick.json +63 -2
- package/data/core/component/component:syn-range.json +61 -2
- package/data/core/component/component:syn-select.json +54 -3
- package/data/core/component/component:syn-side-nav.json +61 -3
- package/data/core/component/component:syn-spinner.json +55 -3
- package/data/core/component/component:syn-switch.json +51 -3
- package/data/core/component/component:syn-tab-group.json +50 -3
- package/data/core/component/component:syn-tab-panel.json +61 -3
- package/data/core/component/component:syn-tab.json +60 -3
- package/data/core/component/component:syn-tag-group.json +58 -2
- package/data/core/component/component:syn-tag.json +52 -3
- package/data/core/component/component:syn-textarea.json +53 -3
- package/data/core/component/component:syn-tooltip.json +66 -3
- package/data/core/component/component:syn-validate.json +64 -2
- package/data/core/setup/setup:angular-components-module.json +1 -1
- package/data/core/setup/setup:angular-forms-module.json +1 -1
- package/data/core/setup/setup:angular-package.json +2 -2
- package/data/core/setup/setup:angular-validators-module.json +1 -1
- package/data/core/setup/setup:components-package.json +2 -2
- package/data/core/setup/setup:react-package.json +2 -2
- package/data/core/setup/setup:tokens-package.json +10 -2
- package/data/core/setup/setup:vue-package.json +2 -2
- package/data/core/token/token:tokens-charts-js-index-d-ts.json +31 -0
- package/data/core/token/token:tokens-charts-js-index-js.json +31 -0
- package/data/core/token/token:tokens-charts-scss-tokens-scss.json +31 -0
- package/data/core/token/token:tokens-charts-themes-sick2025-dark-css.json +32 -0
- package/data/core/token/token:tokens-charts-themes-sick2025-light-css.json +32 -0
- package/data/core/token/token:tokens-figma-variables-sick2018-dark-json.json +1 -1
- package/data/core/token/token:tokens-figma-variables-sick2018-light-json.json +1 -1
- package/data/core/token/token:tokens-figma-variables-sick2025-dark-json.json +1 -1
- package/data/core/token/token:tokens-figma-variables-sick2025-light-json.json +1 -1
- package/data/core/token/token:tokens-js-index-d-ts.json +1 -1
- package/data/core/token/token:tokens-js-index-js.json +1 -1
- package/data/core/token/token:tokens-scss-tokens-scss.json +1 -1
- package/data/core/token/token:tokens-themes-sick2018-dark-css.json +1 -1
- package/data/core/token/token:tokens-themes-sick2018-light-css.json +1 -1
- package/data/core/token/token:tokens-themes-sick2025-dark-css.json +1 -1
- package/data/core/token/token:tokens-themes-sick2025-light-css.json +1 -1
- package/data/index.json +204 -49
- package/data/layers/examples/component/component:syn-chart.md +191 -0
- package/data/layers/full/component/component:syn-accordion/angular/accordion.component.ts +2 -2
- package/data/layers/full/component/component:syn-accordion/components/accordion.component.ts +1 -1
- package/data/layers/full/component/component:syn-accordion/react/accordion.ts +1 -1
- package/data/layers/full/component/component:syn-accordion/vue/SynVueAccordion.vue +2 -2
- package/data/layers/full/component/component:syn-alert/angular/alert.component.ts +2 -2
- package/data/layers/full/component/component:syn-alert/components/alert.component.ts +1 -1
- package/data/layers/full/component/component:syn-alert/react/alert.ts +1 -1
- package/data/layers/full/component/component:syn-alert/vue/SynVueAlert.vue +2 -2
- package/data/layers/full/component/component:syn-badge/angular/badge.component.ts +2 -2
- package/data/layers/full/component/component:syn-badge/components/badge.component.ts +1 -1
- package/data/layers/full/component/component:syn-badge/react/badge.ts +1 -1
- package/data/layers/full/component/component:syn-badge/vue/SynVueBadge.vue +2 -2
- package/data/layers/full/component/component:syn-breadcrumb/angular/breadcrumb.component.ts +2 -2
- package/data/layers/full/component/component:syn-breadcrumb/components/breadcrumb.component.ts +1 -1
- package/data/layers/full/component/component:syn-breadcrumb/react/breadcrumb.ts +1 -1
- package/data/layers/full/component/component:syn-breadcrumb/vue/SynVueBreadcrumb.vue +2 -2
- package/data/layers/full/component/component:syn-breadcrumb-item/angular/breadcrumb-item.component.ts +2 -2
- package/data/layers/full/component/component:syn-breadcrumb-item/components/breadcrumb-item.component.ts +1 -1
- package/data/layers/full/component/component:syn-breadcrumb-item/react/breadcrumb-item.ts +1 -1
- package/data/layers/full/component/component:syn-breadcrumb-item/vue/SynVueBreadcrumbItem.vue +2 -2
- package/data/layers/full/component/component:syn-button/angular/button.component.ts +2 -2
- package/data/layers/full/component/component:syn-button/components/button.component.ts +1 -1
- package/data/layers/full/component/component:syn-button/react/button.ts +1 -1
- package/data/layers/full/component/component:syn-button/vue/SynVueButton.vue +2 -2
- package/data/layers/full/component/component:syn-button-group/angular/button-group.component.ts +2 -2
- package/data/layers/full/component/component:syn-button-group/components/button-group.component.ts +1 -1
- package/data/layers/full/component/component:syn-button-group/react/button-group.ts +1 -1
- package/data/layers/full/component/component:syn-button-group/vue/SynVueButtonGroup.vue +2 -2
- package/data/layers/full/component/component:syn-card/angular/card.component.ts +2 -2
- package/data/layers/full/component/component:syn-card/components/card.component.ts +1 -1
- package/data/layers/full/component/component:syn-card/react/card.ts +1 -1
- package/data/layers/full/component/component:syn-card/vue/SynVueCard.vue +2 -2
- package/data/layers/full/component/component:syn-chart/angular/chart.component.ts +84 -0
- package/data/layers/full/component/component:syn-chart/components/chart.component.ts +181 -0
- package/data/layers/full/component/component:syn-chart/components/chart.palettes.ts +110 -0
- package/data/layers/full/component/component:syn-chart/components/chart.styles.ts +15 -0
- package/data/layers/full/component/component:syn-chart/components/chart.ts +14 -0
- package/data/layers/full/component/component:syn-chart/components/types.ts +5 -0
- package/data/layers/full/component/component:syn-chart/react/SynChartJSXElement.ts +1 -0
- package/data/layers/full/component/component:syn-chart/react/chart.ts +28 -0
- package/data/layers/full/component/component:syn-chart/vue/SynVueChart.vue +76 -0
- package/data/layers/full/component/component:syn-checkbox/angular/checkbox.component.ts +2 -2
- package/data/layers/full/component/component:syn-checkbox/components/checkbox.component.ts +1 -1
- package/data/layers/full/component/component:syn-checkbox/react/checkbox.ts +1 -1
- package/data/layers/full/component/component:syn-checkbox/vue/SynVueCheckbox.vue +2 -2
- package/data/layers/full/component/component:syn-combobox/angular/combobox.component.ts +2 -1
- package/data/layers/full/component/component:syn-combobox/components/combobox.component.ts +1 -0
- package/data/layers/full/component/component:syn-combobox/react/combobox.ts +1 -0
- package/data/layers/full/component/component:syn-combobox/vue/SynVueCombobox.vue +2 -1
- package/data/layers/full/component/component:syn-details/angular/details.component.ts +2 -2
- package/data/layers/full/component/component:syn-details/components/details.component.ts +1 -1
- package/data/layers/full/component/component:syn-details/react/details.ts +1 -1
- package/data/layers/full/component/component:syn-details/vue/SynVueDetails.vue +2 -2
- package/data/layers/full/component/component:syn-dialog/angular/dialog.component.ts +2 -2
- package/data/layers/full/component/component:syn-dialog/components/dialog.component.ts +1 -1
- package/data/layers/full/component/component:syn-dialog/react/dialog.ts +1 -1
- package/data/layers/full/component/component:syn-dialog/vue/SynVueDialog.vue +2 -2
- package/data/layers/full/component/component:syn-divider/angular/divider.component.ts +2 -2
- package/data/layers/full/component/component:syn-divider/components/divider.component.ts +1 -1
- package/data/layers/full/component/component:syn-divider/react/divider.ts +1 -1
- package/data/layers/full/component/component:syn-divider/vue/SynVueDivider.vue +2 -2
- package/data/layers/full/component/component:syn-drawer/angular/drawer.component.ts +2 -2
- package/data/layers/full/component/component:syn-drawer/components/drawer.component.ts +1 -1
- package/data/layers/full/component/component:syn-drawer/react/drawer.ts +1 -1
- package/data/layers/full/component/component:syn-drawer/vue/SynVueDrawer.vue +2 -2
- package/data/layers/full/component/component:syn-dropdown/angular/dropdown.component.ts +2 -2
- package/data/layers/full/component/component:syn-dropdown/components/dropdown.component.ts +1 -1
- package/data/layers/full/component/component:syn-dropdown/react/dropdown.ts +1 -1
- package/data/layers/full/component/component:syn-dropdown/vue/SynVueDropdown.vue +2 -2
- package/data/layers/full/component/component:syn-file/angular/file.component.ts +2 -1
- package/data/layers/full/component/component:syn-file/components/file.component.ts +1 -0
- package/data/layers/full/component/component:syn-file/react/file.ts +1 -0
- package/data/layers/full/component/component:syn-file/vue/SynVueFile.vue +2 -1
- package/data/layers/full/component/component:syn-header/angular/header.component.ts +1 -1
- package/data/layers/full/component/component:syn-header/vue/SynVueHeader.vue +1 -1
- package/data/layers/full/component/component:syn-icon/angular/icon.component.ts +2 -2
- package/data/layers/full/component/component:syn-icon/components/icon.component.ts +1 -1
- package/data/layers/full/component/component:syn-icon/react/icon.ts +1 -1
- package/data/layers/full/component/component:syn-icon/vue/SynVueIcon.vue +2 -2
- package/data/layers/full/component/component:syn-icon-button/angular/icon-button.component.ts +2 -2
- package/data/layers/full/component/component:syn-icon-button/components/icon-button.component.ts +1 -1
- package/data/layers/full/component/component:syn-icon-button/react/icon-button.ts +1 -1
- package/data/layers/full/component/component:syn-icon-button/vue/SynVueIconButton.vue +2 -2
- package/data/layers/full/component/component:syn-input/angular/input.component.ts +2 -2
- package/data/layers/full/component/component:syn-input/components/input.component.ts +1 -1
- package/data/layers/full/component/component:syn-input/react/input.ts +1 -1
- package/data/layers/full/component/component:syn-input/vue/SynVueInput.vue +2 -2
- package/data/layers/full/component/component:syn-menu/angular/menu.component.ts +2 -2
- package/data/layers/full/component/component:syn-menu/components/menu.component.ts +1 -1
- package/data/layers/full/component/component:syn-menu/react/menu.ts +1 -1
- package/data/layers/full/component/component:syn-menu/vue/SynVueMenu.vue +2 -2
- package/data/layers/full/component/component:syn-menu-item/angular/menu-item.component.ts +2 -2
- package/data/layers/full/component/component:syn-menu-item/components/menu-item.component.ts +1 -1
- package/data/layers/full/component/component:syn-menu-item/react/menu-item.ts +1 -1
- package/data/layers/full/component/component:syn-menu-item/vue/SynVueMenuItem.vue +2 -2
- package/data/layers/full/component/component:syn-menu-label/angular/menu-label.component.ts +2 -2
- package/data/layers/full/component/component:syn-menu-label/components/menu-label.component.ts +1 -1
- package/data/layers/full/component/component:syn-menu-label/react/menu-label.ts +1 -1
- package/data/layers/full/component/component:syn-menu-label/vue/SynVueMenuLabel.vue +2 -2
- package/data/layers/full/component/component:syn-nav-item/angular/nav-item.component.ts +2 -2
- package/data/layers/full/component/component:syn-nav-item/components/nav-item.component.ts +1 -1
- package/data/layers/full/component/component:syn-nav-item/react/nav-item.ts +1 -1
- package/data/layers/full/component/component:syn-nav-item/vue/SynVueNavItem.vue +2 -2
- package/data/layers/full/component/component:syn-optgroup/angular/optgroup.component.ts +2 -2
- package/data/layers/full/component/component:syn-optgroup/components/optgroup.component.ts +1 -1
- package/data/layers/full/component/component:syn-optgroup/react/optgroup.ts +1 -1
- package/data/layers/full/component/component:syn-optgroup/vue/SynVueOptgroup.vue +2 -2
- package/data/layers/full/component/component:syn-option/angular/option.component.ts +2 -2
- package/data/layers/full/component/component:syn-option/components/option.component.ts +1 -1
- package/data/layers/full/component/component:syn-option/react/option.ts +1 -1
- package/data/layers/full/component/component:syn-option/vue/SynVueOption.vue +2 -2
- package/data/layers/full/component/component:syn-pagination/angular/pagination.component.ts +1 -1
- package/data/layers/full/component/component:syn-pagination/vue/SynVuePagination.vue +1 -1
- package/data/layers/full/component/component:syn-popup/angular/popup.component.ts +2 -2
- package/data/layers/full/component/component:syn-popup/components/popup.component.ts +1 -1
- package/data/layers/full/component/component:syn-popup/react/popup.ts +1 -1
- package/data/layers/full/component/component:syn-popup/vue/SynVuePopup.vue +2 -2
- package/data/layers/full/component/component:syn-prio-nav/angular/prio-nav.component.ts +2 -2
- package/data/layers/full/component/component:syn-prio-nav/components/prio-nav.component.ts +1 -1
- package/data/layers/full/component/component:syn-prio-nav/react/prio-nav.ts +1 -1
- package/data/layers/full/component/component:syn-prio-nav/vue/SynVuePrioNav.vue +2 -2
- package/data/layers/full/component/component:syn-progress-bar/angular/progress-bar.component.ts +2 -2
- package/data/layers/full/component/component:syn-progress-bar/components/progress-bar.component.ts +1 -1
- package/data/layers/full/component/component:syn-progress-bar/react/progress-bar.ts +1 -1
- package/data/layers/full/component/component:syn-progress-bar/vue/SynVueProgressBar.vue +2 -2
- package/data/layers/full/component/component:syn-progress-ring/angular/progress-ring.component.ts +2 -2
- package/data/layers/full/component/component:syn-progress-ring/components/progress-ring.component.ts +1 -1
- package/data/layers/full/component/component:syn-progress-ring/react/progress-ring.ts +1 -1
- package/data/layers/full/component/component:syn-progress-ring/vue/SynVueProgressRing.vue +2 -2
- package/data/layers/full/component/component:syn-radio/angular/radio.component.ts +2 -2
- package/data/layers/full/component/component:syn-radio/components/radio.component.ts +1 -1
- package/data/layers/full/component/component:syn-radio/react/radio.ts +1 -1
- package/data/layers/full/component/component:syn-radio/vue/SynVueRadio.vue +2 -2
- package/data/layers/full/component/component:syn-radio-button/angular/radio-button.component.ts +2 -2
- package/data/layers/full/component/component:syn-radio-button/components/radio-button.component.ts +1 -1
- package/data/layers/full/component/component:syn-radio-button/react/radio-button.ts +1 -1
- package/data/layers/full/component/component:syn-radio-button/vue/SynVueRadioButton.vue +2 -2
- package/data/layers/full/component/component:syn-radio-group/angular/radio-group.component.ts +2 -2
- package/data/layers/full/component/component:syn-radio-group/components/radio-group.component.ts +1 -1
- package/data/layers/full/component/component:syn-radio-group/react/radio-group.ts +1 -1
- package/data/layers/full/component/component:syn-radio-group/vue/SynVueRadioGroup.vue +2 -2
- package/data/layers/full/component/component:syn-range/angular/range.component.ts +2 -1
- package/data/layers/full/component/component:syn-range/components/range.component.ts +1 -0
- package/data/layers/full/component/component:syn-range/react/range.ts +1 -0
- package/data/layers/full/component/component:syn-range/vue/SynVueRange.vue +2 -1
- package/data/layers/full/component/component:syn-range-tick/angular/range-tick.component.ts +2 -1
- package/data/layers/full/component/component:syn-range-tick/components/range-tick.component.ts +1 -0
- package/data/layers/full/component/component:syn-range-tick/react/range-tick.ts +1 -0
- package/data/layers/full/component/component:syn-range-tick/vue/SynVueRangeTick.vue +2 -1
- package/data/layers/full/component/component:syn-select/angular/select.component.ts +2 -2
- package/data/layers/full/component/component:syn-select/components/select.component.ts +1 -1
- package/data/layers/full/component/component:syn-select/react/select.ts +1 -1
- package/data/layers/full/component/component:syn-select/vue/SynVueSelect.vue +2 -2
- package/data/layers/full/component/component:syn-side-nav/angular/side-nav.component.ts +2 -2
- package/data/layers/full/component/component:syn-side-nav/components/side-nav.component.ts +1 -1
- package/data/layers/full/component/component:syn-side-nav/react/side-nav.ts +1 -1
- package/data/layers/full/component/component:syn-side-nav/vue/SynVueSideNav.vue +2 -2
- package/data/layers/full/component/component:syn-spinner/angular/spinner.component.ts +2 -2
- package/data/layers/full/component/component:syn-spinner/components/spinner.component.ts +1 -1
- package/data/layers/full/component/component:syn-spinner/react/spinner.ts +1 -1
- package/data/layers/full/component/component:syn-spinner/vue/SynVueSpinner.vue +2 -2
- package/data/layers/full/component/component:syn-switch/angular/switch.component.ts +2 -2
- package/data/layers/full/component/component:syn-switch/components/switch.component.ts +1 -1
- package/data/layers/full/component/component:syn-switch/react/switch.ts +1 -1
- package/data/layers/full/component/component:syn-switch/vue/SynVueSwitch.vue +2 -2
- package/data/layers/full/component/component:syn-tab/angular/tab.component.ts +2 -2
- package/data/layers/full/component/component:syn-tab/components/tab.component.ts +1 -1
- package/data/layers/full/component/component:syn-tab/react/tab.ts +1 -1
- package/data/layers/full/component/component:syn-tab/vue/SynVueTab.vue +2 -2
- package/data/layers/full/component/component:syn-tab-group/angular/tab-group.component.ts +2 -2
- package/data/layers/full/component/component:syn-tab-group/components/tab-group.component.ts +1 -1
- package/data/layers/full/component/component:syn-tab-group/react/tab-group.ts +1 -1
- package/data/layers/full/component/component:syn-tab-group/vue/SynVueTabGroup.vue +2 -2
- package/data/layers/full/component/component:syn-tab-panel/angular/tab-panel.component.ts +2 -2
- package/data/layers/full/component/component:syn-tab-panel/components/tab-panel.component.ts +1 -1
- package/data/layers/full/component/component:syn-tab-panel/react/tab-panel.ts +1 -1
- package/data/layers/full/component/component:syn-tab-panel/vue/SynVueTabPanel.vue +2 -2
- package/data/layers/full/component/component:syn-tag/angular/tag.component.ts +2 -2
- package/data/layers/full/component/component:syn-tag/components/tag.component.ts +1 -1
- package/data/layers/full/component/component:syn-tag/react/tag.ts +1 -1
- package/data/layers/full/component/component:syn-tag/vue/SynVueTag.vue +2 -2
- package/data/layers/full/component/component:syn-tag-group/angular/tag-group.component.ts +2 -1
- package/data/layers/full/component/component:syn-tag-group/components/tag-group.component.ts +1 -0
- package/data/layers/full/component/component:syn-tag-group/react/tag-group.ts +1 -0
- package/data/layers/full/component/component:syn-tag-group/vue/SynVueTagGroup.vue +2 -1
- package/data/layers/full/component/component:syn-textarea/angular/textarea.component.ts +2 -2
- package/data/layers/full/component/component:syn-textarea/components/textarea.component.ts +1 -1
- package/data/layers/full/component/component:syn-textarea/react/textarea.ts +1 -1
- package/data/layers/full/component/component:syn-textarea/vue/SynVueTextarea.vue +2 -2
- package/data/layers/full/component/component:syn-tooltip/angular/tooltip.component.ts +2 -2
- package/data/layers/full/component/component:syn-tooltip/components/tooltip.component.ts +1 -1
- package/data/layers/full/component/component:syn-tooltip/react/tooltip.ts +1 -1
- package/data/layers/full/component/component:syn-tooltip/vue/SynVueTooltip.vue +2 -2
- package/data/layers/full/component/component:syn-validate/angular/validate.component.ts +4 -1
- package/data/layers/full/component/component:syn-validate/components/validate.component.ts +3 -0
- package/data/layers/full/component/component:syn-validate/react/validate.ts +3 -0
- package/data/layers/full/component/component:syn-validate/vue/SynVueValidate.vue +4 -1
- package/data/layers/full/setup/setup:angular-package/angular/CHANGELOG.md +37 -0
- package/data/layers/full/setup/setup:angular-package/angular/README.md +4 -0
- package/data/layers/full/setup/setup:angular-package/angular/package.json +1 -1
- package/data/layers/full/setup/setup:components-package/components/CHANGELOG.md +36 -1
- package/data/layers/full/setup/setup:components-package/components/README.md +84 -2
- package/data/layers/full/setup/setup:components-package/components/package.json +8 -5
- package/data/layers/full/setup/setup:react-package/react/CHANGELOG.md +37 -0
- package/data/layers/full/setup/setup:react-package/react/README.md +4 -0
- package/data/layers/full/setup/setup:react-package/react/package.json +1 -1
- package/data/layers/full/setup/setup:react-package/react/syn-jsx-elements.ts +115 -80
- package/data/layers/full/setup/setup:tokens-package/tokens/CHANGELOG.md +18 -0
- package/data/layers/full/setup/setup:tokens-package/tokens/README.md +119 -19
- package/data/layers/full/setup/setup:tokens-package/tokens/package.json +11 -6
- package/data/layers/full/setup/setup:vue-package/vue/CHANGELOG.md +37 -0
- package/data/layers/full/setup/setup:vue-package/vue/README.md +4 -0
- package/data/layers/full/setup/setup:vue-package/vue/package.json +9 -2
- package/data/layers/full/tokens/charts/js/index.d.ts +664 -0
- package/data/layers/full/tokens/charts/js/index.js +664 -0
- package/data/layers/full/tokens/charts/scss/_tokens.scss +136 -0
- package/data/layers/full/tokens/charts/themes/sick2025_dark.css +142 -0
- package/data/layers/full/tokens/charts/themes/sick2025_light.css +142 -0
- package/data/layers/full/tokens/figma-variables/sick2025-light.json +12 -12
- package/data/layers/full/tokens/js/index.d.ts +1 -1
- package/data/layers/full/tokens/js/index.js +1 -1
- package/data/layers/full/tokens/scss/_tokens.scss +1 -1
- package/data/layers/full/tokens/themes/sick2018_dark.css +1 -1
- package/data/layers/full/tokens/themes/sick2018_light.css +1 -1
- package/data/layers/full/tokens/themes/sick2025_dark.css +1 -1
- package/data/layers/full/tokens/themes/sick2025_light.css +12 -12
- package/data/layers/interface/component/component:syn-accordion.json +3 -2
- package/data/layers/interface/component/component:syn-accordion.md +3 -2
- package/data/layers/interface/component/component:syn-alert.json +3 -2
- package/data/layers/interface/component/component:syn-alert.md +3 -2
- package/data/layers/interface/component/component:syn-badge.json +3 -2
- package/data/layers/interface/component/component:syn-badge.md +3 -2
- package/data/layers/interface/component/component:syn-breadcrumb-item.json +3 -2
- package/data/layers/interface/component/component:syn-breadcrumb-item.md +3 -2
- package/data/layers/interface/component/component:syn-breadcrumb.json +3 -2
- package/data/layers/interface/component/component:syn-breadcrumb.md +3 -2
- package/data/layers/interface/component/component:syn-button-group.json +2 -2
- package/data/layers/interface/component/component:syn-button-group.md +2 -2
- package/data/layers/interface/component/component:syn-button.json +3 -2
- package/data/layers/interface/component/component:syn-button.md +3 -2
- package/data/layers/interface/component/component:syn-card.json +3 -2
- package/data/layers/interface/component/component:syn-card.md +3 -2
- package/data/layers/interface/component/component:syn-chart.json +51 -0
- package/data/layers/interface/component/component:syn-chart.md +61 -0
- package/data/layers/interface/component/component:syn-checkbox.json +3 -2
- package/data/layers/interface/component/component:syn-checkbox.md +3 -2
- package/data/layers/interface/component/component:syn-combobox.json +3 -2
- package/data/layers/interface/component/component:syn-combobox.md +3 -2
- package/data/layers/interface/component/component:syn-details.json +3 -2
- package/data/layers/interface/component/component:syn-details.md +3 -2
- package/data/layers/interface/component/component:syn-dialog.json +3 -2
- package/data/layers/interface/component/component:syn-dialog.md +3 -2
- package/data/layers/interface/component/component:syn-divider.json +3 -2
- package/data/layers/interface/component/component:syn-divider.md +3 -2
- package/data/layers/interface/component/component:syn-drawer.json +3 -2
- package/data/layers/interface/component/component:syn-drawer.md +3 -2
- package/data/layers/interface/component/component:syn-dropdown.json +3 -2
- package/data/layers/interface/component/component:syn-dropdown.md +3 -2
- package/data/layers/interface/component/component:syn-file.json +3 -2
- package/data/layers/interface/component/component:syn-file.md +3 -2
- package/data/layers/interface/component/component:syn-header.json +2 -1
- package/data/layers/interface/component/component:syn-header.md +2 -1
- package/data/layers/interface/component/component:syn-icon-button.json +3 -2
- package/data/layers/interface/component/component:syn-icon-button.md +3 -2
- package/data/layers/interface/component/component:syn-icon.json +2 -2
- package/data/layers/interface/component/component:syn-icon.md +2 -2
- package/data/layers/interface/component/component:syn-input.json +3 -2
- package/data/layers/interface/component/component:syn-input.md +3 -2
- package/data/layers/interface/component/component:syn-menu-item.json +3 -2
- package/data/layers/interface/component/component:syn-menu-item.md +3 -2
- package/data/layers/interface/component/component:syn-menu-label.json +3 -2
- package/data/layers/interface/component/component:syn-menu-label.md +3 -2
- package/data/layers/interface/component/component:syn-menu.json +3 -2
- package/data/layers/interface/component/component:syn-menu.md +3 -2
- package/data/layers/interface/component/component:syn-nav-item.json +3 -2
- package/data/layers/interface/component/component:syn-nav-item.md +3 -2
- package/data/layers/interface/component/component:syn-optgroup.json +3 -2
- package/data/layers/interface/component/component:syn-optgroup.md +3 -2
- package/data/layers/interface/component/component:syn-option.json +3 -2
- package/data/layers/interface/component/component:syn-option.md +3 -2
- package/data/layers/interface/component/component:syn-popup.json +1 -1
- package/data/layers/interface/component/component:syn-popup.md +1 -1
- package/data/layers/interface/component/component:syn-prio-nav.json +3 -2
- package/data/layers/interface/component/component:syn-prio-nav.md +3 -2
- package/data/layers/interface/component/component:syn-progress-bar.json +3 -2
- package/data/layers/interface/component/component:syn-progress-bar.md +3 -2
- package/data/layers/interface/component/component:syn-progress-ring.json +3 -2
- package/data/layers/interface/component/component:syn-progress-ring.md +3 -2
- package/data/layers/interface/component/component:syn-radio-button.json +1 -1
- package/data/layers/interface/component/component:syn-radio-button.md +1 -1
- package/data/layers/interface/component/component:syn-radio-group.json +2 -2
- package/data/layers/interface/component/component:syn-radio-group.md +2 -2
- package/data/layers/interface/component/component:syn-radio.json +3 -2
- package/data/layers/interface/component/component:syn-radio.md +3 -2
- package/data/layers/interface/component/component:syn-range-tick.json +3 -2
- package/data/layers/interface/component/component:syn-range-tick.md +3 -2
- package/data/layers/interface/component/component:syn-range.json +3 -2
- package/data/layers/interface/component/component:syn-range.md +3 -2
- package/data/layers/interface/component/component:syn-select.json +3 -2
- package/data/layers/interface/component/component:syn-select.md +3 -2
- package/data/layers/interface/component/component:syn-side-nav.json +3 -2
- package/data/layers/interface/component/component:syn-side-nav.md +3 -2
- package/data/layers/interface/component/component:syn-spinner.json +3 -2
- package/data/layers/interface/component/component:syn-spinner.md +3 -2
- package/data/layers/interface/component/component:syn-switch.json +3 -2
- package/data/layers/interface/component/component:syn-switch.md +3 -2
- package/data/layers/interface/component/component:syn-tab-group.json +3 -2
- package/data/layers/interface/component/component:syn-tab-group.md +3 -2
- package/data/layers/interface/component/component:syn-tab-panel.json +3 -2
- package/data/layers/interface/component/component:syn-tab-panel.md +3 -2
- package/data/layers/interface/component/component:syn-tab.json +3 -2
- package/data/layers/interface/component/component:syn-tab.md +3 -2
- package/data/layers/interface/component/component:syn-tag-group.json +2 -2
- package/data/layers/interface/component/component:syn-tag-group.md +2 -2
- package/data/layers/interface/component/component:syn-tag.json +3 -2
- package/data/layers/interface/component/component:syn-tag.md +3 -2
- package/data/layers/interface/component/component:syn-textarea.json +3 -2
- package/data/layers/interface/component/component:syn-textarea.md +3 -2
- package/data/layers/interface/component/component:syn-tooltip.json +3 -2
- package/data/layers/interface/component/component:syn-tooltip.md +3 -2
- package/data/layers/interface/component/component:syn-validate.json +3 -2
- package/data/layers/interface/component/component:syn-validate.md +3 -2
- package/data/layers/rules/component/component:syn-accordion.md +33 -0
- package/data/layers/rules/component/component:syn-alert.md +81 -0
- package/data/layers/rules/component/component:syn-badge.md +42 -0
- package/data/layers/rules/component/component:syn-breadcrumb-item.md +28 -0
- package/data/layers/rules/component/component:syn-breadcrumb.md +42 -0
- package/data/layers/rules/component/component:syn-button-group.md +55 -0
- package/data/layers/rules/component/component:syn-button.md +54 -0
- package/data/layers/rules/component/component:syn-card.md +37 -0
- package/data/layers/rules/component/component:syn-chart.md +39 -0
- package/data/layers/rules/component/component:syn-checkbox.md +34 -0
- package/data/layers/rules/component/component:syn-combobox.md +42 -0
- package/data/layers/rules/component/component:syn-details.md +37 -0
- package/data/layers/rules/component/component:syn-dialog.md +47 -0
- package/data/layers/rules/component/component:syn-divider.md +26 -0
- package/data/layers/rules/component/component:syn-drawer.md +45 -0
- package/data/layers/rules/component/component:syn-dropdown.md +36 -0
- package/data/layers/rules/component/component:syn-file.md +45 -0
- package/data/layers/rules/component/component:syn-header.md +48 -0
- package/data/layers/rules/component/component:syn-icon-button.md +41 -0
- package/data/layers/rules/component/component:syn-icon.md +42 -0
- package/data/layers/rules/component/component:syn-input.md +50 -0
- package/data/layers/rules/component/component:syn-menu-item.md +47 -0
- package/data/layers/rules/component/component:syn-menu-label.md +43 -0
- package/data/layers/rules/component/component:syn-menu.md +51 -0
- package/data/layers/rules/component/component:syn-nav-item.md +44 -0
- package/data/layers/rules/component/component:syn-optgroup.md +37 -0
- package/data/layers/rules/component/component:syn-option.md +34 -0
- package/data/layers/rules/component/component:syn-pagination.md +42 -0
- package/data/layers/rules/component/component:syn-popup.md +42 -0
- package/data/layers/rules/component/component:syn-prio-nav.md +47 -0
- package/data/layers/rules/component/component:syn-progress-bar.md +42 -0
- package/data/layers/rules/component/component:syn-progress-ring.md +42 -0
- package/data/layers/rules/component/component:syn-radio-button.md +49 -0
- package/data/layers/rules/component/component:syn-radio-group.md +43 -0
- package/data/layers/rules/component/component:syn-radio.md +46 -0
- package/data/layers/rules/component/component:syn-range-tick.md +48 -0
- package/data/layers/rules/component/component:syn-range.md +46 -0
- package/data/layers/rules/component/component:syn-select.md +42 -0
- package/data/layers/rules/component/component:syn-side-nav.md +47 -0
- package/data/layers/rules/component/component:syn-spinner.md +38 -0
- package/data/layers/rules/component/component:syn-switch.md +39 -0
- package/data/layers/rules/component/component:syn-tab-group.md +35 -0
- package/data/layers/rules/component/component:syn-tab-panel.md +44 -0
- package/data/layers/rules/component/component:syn-tab.md +44 -0
- package/data/layers/rules/component/component:syn-tag-group.md +46 -0
- package/data/layers/rules/component/component:syn-tag.md +40 -0
- package/data/layers/rules/component/component:syn-textarea.md +40 -0
- package/data/layers/rules/component/component:syn-tooltip.md +47 -0
- package/data/layers/rules/component/component:syn-validate.md +50 -0
- package/data/manifest.json +3 -3
- package/data/schemas/core-entity.schema.json +1 -0
- package/data/schemas/layer-ref.schema.json +1 -0
- package/dist/bin/install-skills.d.ts +2 -0
- package/dist/bin/install-skills.js +79 -0
- package/dist/intentPolicy/capabilities.d.ts +6 -0
- package/dist/intentPolicy/capabilities.js +22 -0
- package/dist/intentPolicy/categories.d.ts +6 -0
- package/dist/intentPolicy/categories.js +22 -0
- package/dist/intentPolicy/domains/action/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/action/capabilities.js +26 -0
- package/dist/intentPolicy/domains/action/category.d.ts +2 -0
- package/dist/intentPolicy/domains/action/category.js +4 -0
- package/dist/intentPolicy/domains/action/index.d.ts +4 -0
- package/dist/intentPolicy/domains/action/index.js +4 -0
- package/dist/intentPolicy/domains/action/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/action/intents.js +38 -0
- package/dist/intentPolicy/domains/action/patterns/grouped.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/grouped.js +9 -0
- package/dist/intentPolicy/domains/action/patterns/icon.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/icon.js +9 -0
- package/dist/intentPolicy/domains/action/patterns/index.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/index.js +14 -0
- package/dist/intentPolicy/domains/action/patterns/navigation.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/navigation.js +39 -0
- package/dist/intentPolicy/domains/action/patterns/primary.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/primary.js +39 -0
- package/dist/intentPolicy/domains/action/patterns/reset.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/reset.js +39 -0
- package/dist/intentPolicy/domains/action/patterns/submit.d.ts +2 -0
- package/dist/intentPolicy/domains/action/patterns/submit.js +58 -0
- package/dist/intentPolicy/domains/assistance/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/assistance/capabilities.js +10 -0
- package/dist/intentPolicy/domains/assistance/category.d.ts +2 -0
- package/dist/intentPolicy/domains/assistance/category.js +4 -0
- package/dist/intentPolicy/domains/assistance/index.d.ts +4 -0
- package/dist/intentPolicy/domains/assistance/index.js +4 -0
- package/dist/intentPolicy/domains/assistance/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/assistance/intents.js +14 -0
- package/dist/intentPolicy/domains/assistance/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/assistance/patterns.js +13 -0
- package/dist/intentPolicy/domains/disclosure/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/disclosure/capabilities.js +14 -0
- package/dist/intentPolicy/domains/disclosure/category.d.ts +2 -0
- package/dist/intentPolicy/domains/disclosure/category.js +4 -0
- package/dist/intentPolicy/domains/disclosure/index.d.ts +4 -0
- package/dist/intentPolicy/domains/disclosure/index.js +4 -0
- package/dist/intentPolicy/domains/disclosure/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/disclosure/intents.js +20 -0
- package/dist/intentPolicy/domains/disclosure/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/disclosure/patterns.js +23 -0
- package/dist/intentPolicy/domains/feedback/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/feedback/capabilities.js +42 -0
- package/dist/intentPolicy/domains/feedback/category.d.ts +2 -0
- package/dist/intentPolicy/domains/feedback/category.js +4 -0
- package/dist/intentPolicy/domains/feedback/index.d.ts +4 -0
- package/dist/intentPolicy/domains/feedback/index.js +4 -0
- package/dist/intentPolicy/domains/feedback/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/feedback/intents.js +32 -0
- package/dist/intentPolicy/domains/feedback/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/feedback/patterns.js +44 -0
- package/dist/intentPolicy/domains/input/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/input/capabilities.js +38 -0
- package/dist/intentPolicy/domains/input/category.d.ts +2 -0
- package/dist/intentPolicy/domains/input/category.js +4 -0
- package/dist/intentPolicy/domains/input/index.d.ts +4 -0
- package/dist/intentPolicy/domains/input/index.js +4 -0
- package/dist/intentPolicy/domains/input/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/input/intents.js +62 -0
- package/dist/intentPolicy/domains/input/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/input/patterns.js +99 -0
- package/dist/intentPolicy/domains/navigation/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/navigation/capabilities.js +54 -0
- package/dist/intentPolicy/domains/navigation/category.d.ts +2 -0
- package/dist/intentPolicy/domains/navigation/category.js +4 -0
- package/dist/intentPolicy/domains/navigation/index.d.ts +4 -0
- package/dist/intentPolicy/domains/navigation/index.js +4 -0
- package/dist/intentPolicy/domains/navigation/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/navigation/intents.js +44 -0
- package/dist/intentPolicy/domains/navigation/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/navigation/patterns.js +192 -0
- package/dist/intentPolicy/domains/status/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/status/capabilities.js +14 -0
- package/dist/intentPolicy/domains/status/category.d.ts +2 -0
- package/dist/intentPolicy/domains/status/category.js +4 -0
- package/dist/intentPolicy/domains/status/index.d.ts +4 -0
- package/dist/intentPolicy/domains/status/index.js +4 -0
- package/dist/intentPolicy/domains/status/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/status/intents.js +26 -0
- package/dist/intentPolicy/domains/status/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/status/patterns.js +32 -0
- package/dist/intentPolicy/domains/structure/capabilities.d.ts +2 -0
- package/dist/intentPolicy/domains/structure/capabilities.js +22 -0
- package/dist/intentPolicy/domains/structure/category.d.ts +2 -0
- package/dist/intentPolicy/domains/structure/category.js +4 -0
- package/dist/intentPolicy/domains/structure/index.d.ts +4 -0
- package/dist/intentPolicy/domains/structure/index.js +4 -0
- package/dist/intentPolicy/domains/structure/intents.d.ts +2 -0
- package/dist/intentPolicy/domains/structure/intents.js +32 -0
- package/dist/intentPolicy/domains/structure/patterns.d.ts +2 -0
- package/dist/intentPolicy/domains/structure/patterns.js +96 -0
- package/dist/intentPolicy/intents.d.ts +7 -0
- package/dist/intentPolicy/intents.js +23 -0
- package/dist/intentPolicy/intermediate-representation/types.d.ts +38 -0
- package/dist/intentPolicy/intermediate-representation/types.js +1 -0
- package/dist/intentPolicy/mappings/framework-targets.d.ts +5 -0
- package/dist/intentPolicy/mappings/framework-targets.js +21 -0
- package/dist/intentPolicy/patterns.d.ts +6 -0
- package/dist/intentPolicy/patterns.js +22 -0
- package/dist/intentPolicy/registry.d.ts +4 -0
- package/dist/intentPolicy/registry.js +4 -0
- package/dist/intentPolicy/renderers/index.d.ts +6 -0
- package/dist/intentPolicy/renderers/index.js +95 -0
- package/dist/intentPolicy/resolution.d.ts +41 -0
- package/dist/intentPolicy/resolution.js +226 -0
- package/dist/intentPolicy/services/render.d.ts +16 -0
- package/dist/intentPolicy/services/render.js +29 -0
- package/dist/intentPolicy/types.d.ts +486 -0
- package/dist/intentPolicy/types.js +17 -0
- package/dist/public/domains/components.d.ts +15 -1
- package/dist/public/domains/components.js +43 -0
- package/dist/public/domains/intent-policy.d.ts +255 -0
- package/dist/public/domains/intent-policy.js +965 -0
- package/dist/public/index.d.ts +72 -3
- package/dist/public/index.js +80 -1
- package/dist/public/skill-bundle.d.ts +17 -0
- package/dist/public/skill-bundle.js +259 -0
- package/dist/public/types.d.ts +12 -2
- package/package.json +10 -5
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# syn-textarea
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Textareas collect data from the user and allow multiple lines of text.
|
|
6
|
+
|
|
7
|
+
## Common Use Cases
|
|
8
|
+
|
|
9
|
+
- Collect detailed user feedback or comments.
|
|
10
|
+
- Enable users to write comprehensive reviews of products or services.
|
|
11
|
+
- Gather extensive information about issues or requests.
|
|
12
|
+
- Capture detailed responses in surveys or questionnaires.
|
|
13
|
+
|
|
14
|
+
## Usage Guidelines
|
|
15
|
+
|
|
16
|
+
### Behavior and Interaction
|
|
17
|
+
|
|
18
|
+
- Provide real-time validation to help users correct errors as they type.
|
|
19
|
+
- Provide a visible scrollbar when text overflows.
|
|
20
|
+
- Adapt the size of the field to the expected length of user input.
|
|
21
|
+
- Avoid including a "clear" button to prevent unwanted loss of user input.
|
|
22
|
+
|
|
23
|
+
### Content and Guidance
|
|
24
|
+
|
|
25
|
+
- Inform users whenever minimum or maximum lengths are set; use the field's help text for this.
|
|
26
|
+
- Use placeholder text as an addition to label as it should not include essential information required to complete the field correctly.
|
|
27
|
+
- Use help text to provide hints or examples of expected inputs.
|
|
28
|
+
|
|
29
|
+
## Accessibility
|
|
30
|
+
|
|
31
|
+
- Ensure textarea fields are part of a logical tab order and provide a clearly visible focus state when focused.
|
|
32
|
+
- Always provide a descriptive label. Placeholder text may support the label but must not replace it.
|
|
33
|
+
- Ensure textarea fields remain usable across all screen sizes, including touch devices with sufficiently large touch targets.
|
|
34
|
+
- Inform users about input constraints such as minimum or maximum character limits, and expose validation feedback clearly.
|
|
35
|
+
- Use helper and error text that can be announced by assistive technologies (e.g., by linking descriptions and errors to the field).
|
|
36
|
+
- Prefer keeping the field enabled by default and validate on submit or during input instead of blocking input unnecessarily.
|
|
37
|
+
|
|
38
|
+
## Related Templates
|
|
39
|
+
|
|
40
|
+
- Forms
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# syn-tooltip
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Tooltips display additional information based on a specific action.
|
|
6
|
+
|
|
7
|
+
## Common Use Cases
|
|
8
|
+
|
|
9
|
+
- Provide additional, useful, and non-essential information about form fields.
|
|
10
|
+
- Expand abbreviations or acronyms that might be unfamiliar to users.
|
|
11
|
+
- Offer detailed information about specific data points in charts or graphs.
|
|
12
|
+
- Provide more context for error messages or warnings and anticipate any questions that users may have.
|
|
13
|
+
|
|
14
|
+
## Usage Guidelines
|
|
15
|
+
|
|
16
|
+
### Behavior and Placement
|
|
17
|
+
|
|
18
|
+
- Place the tooltip where the floating element does not obscure important content related to the subject.
|
|
19
|
+
- Ensure it disappears when the user interacts with other elements.
|
|
20
|
+
- Avoid tooltips being cropped by other elements of the interface; use appropriate placement for this purpose.
|
|
21
|
+
|
|
22
|
+
### Content
|
|
23
|
+
|
|
24
|
+
- Use short, descriptive text; if a longer explanation is required, consider non-interactive means to convey this information.
|
|
25
|
+
- Avoid jargon or highly technical language; aim to solve questions, not trigger more.
|
|
26
|
+
- Do not use for critical or unique information.
|
|
27
|
+
- Do not place links, buttons, or other interactive elements within the content.
|
|
28
|
+
|
|
29
|
+
### Styling
|
|
30
|
+
|
|
31
|
+
- Display a headline by bolding the text if it makes the content easier to understand.
|
|
32
|
+
- Emphasize key information by bolding parts of the text.
|
|
33
|
+
|
|
34
|
+
### Trigger Element
|
|
35
|
+
|
|
36
|
+
- Use any interactive element as a tooltip trigger by placing it in the provided slot. The tooltip will open when the user hovers over or focuses on the trigger element.
|
|
37
|
+
|
|
38
|
+
## Accessibility
|
|
39
|
+
|
|
40
|
+
- Avoid placing buttons, links, or other interactive controls inside a tooltip, as it's designed to be an ephemeral container for supplementary information.
|
|
41
|
+
- On desktop, tooltips open by default on hover over the trigger element, or optionally on click. They close by clicking the trigger again or by moving the pointer away.
|
|
42
|
+
- On touch devices, tooltips open when tapping on the trigger element and close by tapping on the trigger element again.
|
|
43
|
+
- For keyboard navigation, tooltips should open by focusing (Tab) on the trigger element and close by pressing Escape or by moving focus away.
|
|
44
|
+
|
|
45
|
+
## Related Templates
|
|
46
|
+
|
|
47
|
+
- tooltip
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# syn-validate
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Validate provides form field validation messages in a unified way.
|
|
6
|
+
It does this by using [the native browser validation](https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation)
|
|
7
|
+
and showing the validation message in a consistent, user defined way.
|
|
8
|
+
|
|
9
|
+
## Common Use Cases
|
|
10
|
+
|
|
11
|
+
- Display field validation for forms and wizards.
|
|
12
|
+
- Show custom validation messages for domain specific rules.
|
|
13
|
+
- Integrate consistent error handling across native and custom form controls.
|
|
14
|
+
|
|
15
|
+
## Usage Guidelines
|
|
16
|
+
|
|
17
|
+
### Validation Messages
|
|
18
|
+
|
|
19
|
+
- Write actionable messages that tell users what to fix and how.
|
|
20
|
+
- Prefer field specific messages over generic form level errors.
|
|
21
|
+
- Use consistent wording for recurring validation rules.
|
|
22
|
+
|
|
23
|
+
### Display Variants
|
|
24
|
+
|
|
25
|
+
- Use inline variant for persistent field level feedback.
|
|
26
|
+
- Use tooltip variant where space is constrained and interaction remains clear.
|
|
27
|
+
- Hide icons only when another strong error cue is present.
|
|
28
|
+
|
|
29
|
+
### Validation Timing
|
|
30
|
+
|
|
31
|
+
- Use eager validation for high risk fields that benefit from immediate feedback.
|
|
32
|
+
- Use submit time validation to reduce interruption in long forms.
|
|
33
|
+
- Support custom validation events when integrating non-standard controls.
|
|
34
|
+
|
|
35
|
+
## Accessibility
|
|
36
|
+
|
|
37
|
+
- Validation messages must be text based and clearly associated with the target field.
|
|
38
|
+
- Use live validation thoughtfully to avoid excessive announcement noise for screen readers.
|
|
39
|
+
- Provide specific corrective guidance instead of generic error statements.
|
|
40
|
+
|
|
41
|
+
## Related Components
|
|
42
|
+
|
|
43
|
+
- syn-input
|
|
44
|
+
- syn-select
|
|
45
|
+
- syn-textarea
|
|
46
|
+
- syn-file
|
|
47
|
+
|
|
48
|
+
## Related Templates
|
|
49
|
+
|
|
50
|
+
- Forms
|
package/data/manifest.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"builtAt": "2026-05-
|
|
2
|
+
"builtAt": "2026-05-28T08:21:08.716Z",
|
|
3
3
|
"sources": [
|
|
4
4
|
{
|
|
5
5
|
"entityCount": 4,
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"status": "success"
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
|
-
"entityCount":
|
|
15
|
+
"entityCount": 57,
|
|
16
16
|
"source": "components",
|
|
17
17
|
"status": "success"
|
|
18
18
|
},
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"status": "success"
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
|
-
"entityCount":
|
|
35
|
+
"entityCount": 17,
|
|
36
36
|
"source": "tokens",
|
|
37
37
|
"status": "success"
|
|
38
38
|
},
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/* eslint-disable no-console */
|
|
3
|
+
/**
|
|
4
|
+
* CLI entry point: install-skills
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* npx @synergy-design-system/metadata install-skills --path .github/skills
|
|
8
|
+
* npx @synergy-design-system/metadata install-skills --path=/absolute/path
|
|
9
|
+
*/
|
|
10
|
+
import { resolve } from 'node:path';
|
|
11
|
+
import { generateSkillBundle } from '../public/index.js';
|
|
12
|
+
const SYNERGY_LOGO = `
|
|
13
|
+
+------------------------------+
|
|
14
|
+
|----+++++++--------+++++++----|
|
|
15
|
+
|---++------+*---*-+------++---|
|
|
16
|
+
|---++---------%*---------++---|
|
|
17
|
+
|---++---------++---------++---|
|
|
18
|
+
|---++-----*+++**+++%-----*+---|
|
|
19
|
+
|----**----*---++---*----++----|
|
|
20
|
+
|------****%********%****------|
|
|
21
|
+
|----++----*---++---*----**----|
|
|
22
|
+
|---+*-----%+++**+++*-----++---|
|
|
23
|
+
|---++---------++---------++---|
|
|
24
|
+
|---++---------*%---------++---|
|
|
25
|
+
|---++------+-*---*+------++---|
|
|
26
|
+
|----+++++++--------+++++++----|
|
|
27
|
+
+------------------------------+
|
|
28
|
+
`;
|
|
29
|
+
/**
|
|
30
|
+
* Parse command line arguments into options.
|
|
31
|
+
*/
|
|
32
|
+
function parseArgs(args) {
|
|
33
|
+
return args.reduce((opts, arg, index) => {
|
|
34
|
+
if (arg === '--path' && index + 1 < args.length) {
|
|
35
|
+
return { ...opts, path: args[index + 1] };
|
|
36
|
+
}
|
|
37
|
+
if (arg.startsWith('--path=')) {
|
|
38
|
+
return { ...opts, path: arg.substring('--path='.length) };
|
|
39
|
+
}
|
|
40
|
+
return opts;
|
|
41
|
+
}, {});
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Validate parsed options and throw if required fields are missing.
|
|
45
|
+
*/
|
|
46
|
+
function validateOptions(opts) {
|
|
47
|
+
if (!opts.path) {
|
|
48
|
+
throw new Error('--path argument is required\nUsage: install-skills --path <directory>');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async function main() {
|
|
52
|
+
try {
|
|
53
|
+
const opts = parseArgs(process.argv.slice(2));
|
|
54
|
+
validateOptions(opts);
|
|
55
|
+
const absolutePath = resolve(process.cwd(), opts.path);
|
|
56
|
+
console.log(`Installing Synergy skills to: ${absolutePath}`);
|
|
57
|
+
await generateSkillBundle({ outputPath: absolutePath });
|
|
58
|
+
console.log(SYNERGY_LOGO);
|
|
59
|
+
console.log('✓ Synergy skills installed successfully\n');
|
|
60
|
+
console.log('Next steps:');
|
|
61
|
+
console.log(' 1. In VS Code, reference the skill with: @synergy-component');
|
|
62
|
+
console.log(' 2. Ask questions like: "How do I use syn-button?"');
|
|
63
|
+
console.log(`\nSkill location: ${absolutePath}`);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
if (error instanceof Error && error.message.startsWith('--path')) {
|
|
67
|
+
throw new Error(`Error: ${error.message}`);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
throw new Error(`Error installing skills: ${error instanceof Error ? error.message : String(error)}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
main()
|
|
75
|
+
.then(() => process.exit(0))
|
|
76
|
+
.catch((e) => {
|
|
77
|
+
console.error(e.message);
|
|
78
|
+
process.exit(1);
|
|
79
|
+
});
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IntentCapability } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* A comprehensive list of intent capabilities, categorized by their respective intent categories.
|
|
4
|
+
* Each capability outlines the specific functionalities and features that an intent can support within a user interface, providing designers and developers with a clear understanding of how to effectively implement and leverage these capabilities to enhance user interactions and overall experience.
|
|
5
|
+
*/
|
|
6
|
+
export declare const targetCapabilities: IntentCapability[];
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { actionCapabilities } from './domains/action/index.js';
|
|
2
|
+
import { assistanceCapabilities } from './domains/assistance/index.js';
|
|
3
|
+
import { disclosureCapabilities } from './domains/disclosure/index.js';
|
|
4
|
+
import { feedbackCapabilities } from './domains/feedback/index.js';
|
|
5
|
+
import { inputCapabilities } from './domains/input/index.js';
|
|
6
|
+
import { navigationCapabilities } from './domains/navigation/index.js';
|
|
7
|
+
import { statusCapabilities } from './domains/status/index.js';
|
|
8
|
+
import { structureCapabilities } from './domains/structure/index.js';
|
|
9
|
+
/**
|
|
10
|
+
* A comprehensive list of intent capabilities, categorized by their respective intent categories.
|
|
11
|
+
* Each capability outlines the specific functionalities and features that an intent can support within a user interface, providing designers and developers with a clear understanding of how to effectively implement and leverage these capabilities to enhance user interactions and overall experience.
|
|
12
|
+
*/
|
|
13
|
+
export const targetCapabilities = [
|
|
14
|
+
...actionCapabilities,
|
|
15
|
+
...feedbackCapabilities,
|
|
16
|
+
...inputCapabilities,
|
|
17
|
+
...navigationCapabilities,
|
|
18
|
+
...disclosureCapabilities,
|
|
19
|
+
...statusCapabilities,
|
|
20
|
+
...assistanceCapabilities,
|
|
21
|
+
...structureCapabilities,
|
|
22
|
+
];
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { IntentCategory } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* A comprehensive list of intent categories, each representing a distinct classification of user intents that can be utilized within a user interface.
|
|
4
|
+
* These categories serve as a foundational framework for organizing and understanding the various types of user interactions and behaviors that can occur within a digital product, enabling designers and developers to create more intuitive and user-friendly interfaces that effectively address the needs and goals of their users.
|
|
5
|
+
*/
|
|
6
|
+
export declare const intentCategories: IntentCategory[];
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { actionCategory } from './domains/action/index.js';
|
|
2
|
+
import { assistanceCategory } from './domains/assistance/index.js';
|
|
3
|
+
import { disclosureCategory } from './domains/disclosure/index.js';
|
|
4
|
+
import { feedbackCategory } from './domains/feedback/index.js';
|
|
5
|
+
import { inputCategory } from './domains/input/index.js';
|
|
6
|
+
import { navigationCategory } from './domains/navigation/index.js';
|
|
7
|
+
import { statusCategory } from './domains/status/index.js';
|
|
8
|
+
import { structureCategory } from './domains/structure/index.js';
|
|
9
|
+
/**
|
|
10
|
+
* A comprehensive list of intent categories, each representing a distinct classification of user intents that can be utilized within a user interface.
|
|
11
|
+
* These categories serve as a foundational framework for organizing and understanding the various types of user interactions and behaviors that can occur within a digital product, enabling designers and developers to create more intuitive and user-friendly interfaces that effectively address the needs and goals of their users.
|
|
12
|
+
*/
|
|
13
|
+
export const intentCategories = [
|
|
14
|
+
actionCategory,
|
|
15
|
+
feedbackCategory,
|
|
16
|
+
inputCategory,
|
|
17
|
+
navigationCategory,
|
|
18
|
+
disclosureCategory,
|
|
19
|
+
statusCategory,
|
|
20
|
+
assistanceCategory,
|
|
21
|
+
structureCategory,
|
|
22
|
+
];
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export const actionCapabilities = [
|
|
2
|
+
{
|
|
3
|
+
categories: ['action'],
|
|
4
|
+
target: {
|
|
5
|
+
id: 'component:syn-button',
|
|
6
|
+
kind: 'component',
|
|
7
|
+
name: 'syn-button',
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
categories: ['action'],
|
|
12
|
+
target: {
|
|
13
|
+
id: 'component:syn-icon-button',
|
|
14
|
+
kind: 'component',
|
|
15
|
+
name: 'syn-icon-button',
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
categories: ['action'],
|
|
20
|
+
target: {
|
|
21
|
+
id: 'component:syn-button-group',
|
|
22
|
+
kind: 'component',
|
|
23
|
+
name: 'syn-button-group',
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
];
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export const actionIntents = [
|
|
2
|
+
{
|
|
3
|
+
category: 'action',
|
|
4
|
+
description: 'Use when the component should present the primary action in a context.',
|
|
5
|
+
id: 'action.primary',
|
|
6
|
+
userGoal: 'Highlight the most important next action for the user.',
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
category: 'action',
|
|
10
|
+
description: 'Use when the component submits form data.',
|
|
11
|
+
id: 'action.submit',
|
|
12
|
+
userGoal: 'Submit user-provided data to a form handler.',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
category: 'action',
|
|
16
|
+
description: 'Use when the component resets form state to defaults.',
|
|
17
|
+
id: 'action.reset',
|
|
18
|
+
userGoal: 'Clear or reset user-entered data.',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
category: 'action',
|
|
22
|
+
description: 'Use when the component should navigate to another location.',
|
|
23
|
+
id: 'action.navigation',
|
|
24
|
+
userGoal: 'Move the user to another destination.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
category: 'action',
|
|
28
|
+
description: 'Use icon-only buttons for compact actions where space is constrained.',
|
|
29
|
+
id: 'action.button.icon',
|
|
30
|
+
userGoal: 'Provide a compact action trigger while preserving quick recognition.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
category: 'action',
|
|
34
|
+
description: 'Use grouped actions when related actions should be presented as one unit.',
|
|
35
|
+
id: 'action.grouped',
|
|
36
|
+
userGoal: 'Present related actions with clear grouping and consistent alignment.',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const actionGroupedPattern = {
|
|
2
|
+
description: 'Group related actions into one aligned unit for consistent interaction.',
|
|
3
|
+
intent: 'action.grouped',
|
|
4
|
+
notes: ['Prefer grouping actions with related intent and similar importance.'],
|
|
5
|
+
structure: {
|
|
6
|
+
component: 'syn-button-group',
|
|
7
|
+
},
|
|
8
|
+
target: { id: 'component:syn-button-group', kind: 'component', name: 'syn-button-group' },
|
|
9
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const actionIconPattern = {
|
|
2
|
+
description: 'Compact icon-only action button with accessible label requirements.',
|
|
3
|
+
intent: 'action.button.icon',
|
|
4
|
+
notes: ['Provide an accessible label (for example aria-label) because no visible text is shown.'],
|
|
5
|
+
structure: {
|
|
6
|
+
component: 'syn-icon-button',
|
|
7
|
+
},
|
|
8
|
+
target: { id: 'component:syn-icon-button', kind: 'component', name: 'syn-icon-button' },
|
|
9
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { actionGroupedPattern } from './grouped.js';
|
|
2
|
+
import { actionIconPattern } from './icon.js';
|
|
3
|
+
import { actionNavigationPattern } from './navigation.js';
|
|
4
|
+
import { actionPrimaryPattern } from './primary.js';
|
|
5
|
+
import { actionResetPattern } from './reset.js';
|
|
6
|
+
import { actionSubmitPattern } from './submit.js';
|
|
7
|
+
export const actionPatterns = [
|
|
8
|
+
actionPrimaryPattern,
|
|
9
|
+
actionSubmitPattern,
|
|
10
|
+
actionResetPattern,
|
|
11
|
+
actionNavigationPattern,
|
|
12
|
+
actionIconPattern,
|
|
13
|
+
actionGroupedPattern,
|
|
14
|
+
];
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export const actionNavigationPattern = {
|
|
2
|
+
description: 'Navigation action uses href and text variant.',
|
|
3
|
+
intent: 'action.navigation',
|
|
4
|
+
structure: {
|
|
5
|
+
component: 'syn-button',
|
|
6
|
+
config: {
|
|
7
|
+
contentRules: [
|
|
8
|
+
{
|
|
9
|
+
code: 'REQUIRED_CONTENT_BUTTON_LABEL',
|
|
10
|
+
kind: 'requiredContent',
|
|
11
|
+
message: 'syn-button must contain visible content (text and/or child nodes).',
|
|
12
|
+
rationale: 'An empty button is inaccessible and provides no affordance to the user.',
|
|
13
|
+
suggestedFix: 'Add a label, text, or child element such as syn-icon inside the button.',
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
propRules: [
|
|
17
|
+
{
|
|
18
|
+
code: 'REQUIRED_PROP_HREF',
|
|
19
|
+
kind: 'requiredEquals',
|
|
20
|
+
message: 'href property must be set for navigation action intent.',
|
|
21
|
+
prop: 'href',
|
|
22
|
+
rationale: 'The href property provides the navigation target for semantic link behavior.',
|
|
23
|
+
suggestedFix: 'Set href property to the target URL or route.',
|
|
24
|
+
value: '#',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
code: 'REQUIRED_PROP_TEXT_VARIANT',
|
|
28
|
+
kind: 'requiredEquals',
|
|
29
|
+
message: 'variant property should be set to "text" for navigation action styling.',
|
|
30
|
+
prop: 'variant',
|
|
31
|
+
rationale: 'Text variant provides unstyled appearance appropriate for link-like navigation.',
|
|
32
|
+
suggestedFix: 'Set variant property to "text".',
|
|
33
|
+
value: 'text',
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
target: { id: 'component:syn-button', kind: 'component', name: 'syn-button' },
|
|
39
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export const actionPrimaryPattern = {
|
|
2
|
+
description: 'Primary action button styling for default primary interaction.',
|
|
3
|
+
intent: 'action.primary',
|
|
4
|
+
structure: {
|
|
5
|
+
component: 'syn-button',
|
|
6
|
+
config: {
|
|
7
|
+
contentRules: [
|
|
8
|
+
{
|
|
9
|
+
code: 'REQUIRED_CONTENT_BUTTON_LABEL',
|
|
10
|
+
kind: 'requiredContent',
|
|
11
|
+
message: 'syn-button must contain visible content (text and/or child nodes).',
|
|
12
|
+
rationale: 'An empty button is inaccessible and provides no affordance to the user.',
|
|
13
|
+
suggestedFix: 'Add a label, text, or child element such as syn-icon inside the button.',
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
propRules: [
|
|
17
|
+
{
|
|
18
|
+
code: 'REQUIRED_PROP_BUTTON_TYPE',
|
|
19
|
+
kind: 'requiredEquals',
|
|
20
|
+
message: 'type property must be set to "button" for primary action intent.',
|
|
21
|
+
prop: 'type',
|
|
22
|
+
rationale: 'The semantic button type ensures proper HTML behavior and accessibility.',
|
|
23
|
+
suggestedFix: 'Set type property to "button".',
|
|
24
|
+
value: 'button',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
code: 'REQUIRED_PROP_FILLED_VARIANT',
|
|
28
|
+
kind: 'requiredEquals',
|
|
29
|
+
message: 'variant property should be set to "filled" for primary action emphasis.',
|
|
30
|
+
prop: 'variant',
|
|
31
|
+
rationale: 'Filled variant provides clear visual priority for primary actions.',
|
|
32
|
+
suggestedFix: 'Set variant property to "filled".',
|
|
33
|
+
value: 'filled',
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
target: { id: 'component:syn-button', kind: 'component', name: 'syn-button' },
|
|
39
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export const actionResetPattern = {
|
|
2
|
+
description: 'Reset action styling for secondary importance.',
|
|
3
|
+
intent: 'action.reset',
|
|
4
|
+
structure: {
|
|
5
|
+
component: 'syn-button',
|
|
6
|
+
config: {
|
|
7
|
+
contentRules: [
|
|
8
|
+
{
|
|
9
|
+
code: 'REQUIRED_CONTENT_BUTTON_LABEL',
|
|
10
|
+
kind: 'requiredContent',
|
|
11
|
+
message: 'syn-button must contain visible content (text and/or child nodes).',
|
|
12
|
+
rationale: 'An empty button is inaccessible and provides no affordance to the user.',
|
|
13
|
+
suggestedFix: 'Add a label, text, or child element such as syn-icon inside the button.',
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
propRules: [
|
|
17
|
+
{
|
|
18
|
+
code: 'REQUIRED_PROP_RESET_TYPE',
|
|
19
|
+
kind: 'requiredEquals',
|
|
20
|
+
message: 'type property must be set to "reset" for reset action intent.',
|
|
21
|
+
prop: 'type',
|
|
22
|
+
rationale: 'The semantic reset type ensures proper form reset behavior.',
|
|
23
|
+
suggestedFix: 'Set type property to "reset".',
|
|
24
|
+
value: 'reset',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
code: 'REQUIRED_PROP_TEXT_VARIANT',
|
|
28
|
+
kind: 'requiredEquals',
|
|
29
|
+
message: 'variant property should be set to "text" for secondary action styling.',
|
|
30
|
+
prop: 'variant',
|
|
31
|
+
rationale: 'Text variant provides lower visual priority appropriate for reset actions.',
|
|
32
|
+
suggestedFix: 'Set variant property to "text".',
|
|
33
|
+
value: 'text',
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
target: { id: 'component:syn-button', kind: 'component', name: 'syn-button' },
|
|
39
|
+
};
|