@synergy-design-system/mcp 2.15.0 → 3.0.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 +13 -0
- package/README.md +826 -303
- package/dist/bin/start.js +57 -6
- package/dist/middleware/compose.d.ts +15 -0
- package/dist/middleware/compose.js +10 -0
- package/dist/middleware/compression.d.ts +19 -0
- package/dist/middleware/compression.js +35 -0
- package/dist/middleware/error-handler.d.ts +13 -0
- package/dist/middleware/error-handler.js +42 -0
- package/dist/middleware/index.d.ts +9 -0
- package/dist/middleware/index.js +8 -0
- package/dist/middleware/logging.d.ts +14 -0
- package/dist/middleware/logging.js +64 -0
- package/dist/middleware/types.d.ts +20 -0
- package/dist/middleware/types.js +4 -0
- package/dist/resources/asset-list.d.ts +7 -0
- package/dist/resources/asset-list.js +34 -0
- package/dist/resources/component-cluster-list.d.ts +7 -0
- package/dist/resources/component-cluster-list.js +30 -0
- package/dist/resources/component-list.d.ts +7 -0
- package/dist/resources/component-list.js +31 -0
- package/dist/resources/index.d.ts +5 -0
- package/dist/resources/index.js +5 -0
- package/dist/resources/styles-list.d.ts +7 -0
- package/dist/resources/styles-list.js +31 -0
- package/dist/resources/templates-list.d.ts +7 -0
- package/dist/resources/templates-list.js +28 -0
- package/dist/server.js +5 -1
- package/dist/tools/asset-info.js +41 -85
- package/dist/tools/asset-list.js +22 -31
- package/dist/tools/component-cluster-list.d.ts +6 -0
- package/dist/tools/component-cluster-list.js +30 -0
- package/dist/tools/component-info.js +38 -21
- package/dist/tools/component-list.js +35 -30
- package/dist/tools/davinci-migration-info.d.ts +2 -0
- package/dist/tools/davinci-migration-info.js +21 -0
- package/dist/tools/davinci-migration-list.d.ts +2 -0
- package/dist/tools/davinci-migration-list.js +20 -0
- package/dist/tools/index.d.ts +6 -5
- package/dist/tools/index.js +6 -5
- package/dist/tools/migration-info.js +12 -37
- package/dist/tools/migration-list.js +7 -13
- package/dist/tools/setup.d.ts +6 -0
- package/dist/tools/setup.js +31 -0
- package/dist/tools/styles-info.d.ts +1 -2
- package/dist/tools/styles-info.js +24 -20
- package/dist/tools/styles-list.js +19 -33
- package/dist/tools/template-info.js +19 -20
- package/dist/tools/template-list.d.ts +1 -1
- package/dist/tools/template-list.js +17 -32
- package/dist/tools/{tokens.d.ts → token-info.d.ts} +2 -2
- package/dist/tools/token-info.js +31 -0
- package/dist/tools/tokens-list.d.ts +6 -0
- package/dist/tools/tokens-list.js +52 -0
- package/dist/transports/http.d.ts +14 -0
- package/dist/transports/http.js +157 -0
- package/dist/transports/index.d.ts +23 -0
- package/dist/transports/index.js +23 -0
- package/dist/transports/stdio.d.ts +10 -0
- package/dist/transports/stdio.js +21 -0
- package/dist/types/tool-response.d.ts +13 -0
- package/dist/types/tool-response.js +7 -0
- package/dist/utilities/cli.d.ts +27 -0
- package/dist/utilities/cli.js +170 -0
- package/dist/utilities/compression.d.ts +7 -0
- package/dist/utilities/compression.js +45 -0
- package/dist/utilities/config.d.ts +122 -80
- package/dist/utilities/config.js +212 -81
- package/dist/utilities/davinci.d.ts +12 -0
- package/dist/utilities/davinci.js +55 -0
- package/dist/utilities/index.d.ts +10 -10
- package/dist/utilities/index.js +10 -10
- package/dist/utilities/local-file-logger.d.ts +2 -0
- package/dist/utilities/local-file-logger.js +22 -0
- package/dist/utilities/logger.d.ts +12 -0
- package/dist/utilities/logger.js +30 -0
- package/dist/utilities/logging-context.d.ts +8 -0
- package/dist/utilities/logging-context.js +7 -0
- package/dist/utilities/logging-service.d.ts +2 -0
- package/dist/utilities/logging-service.js +24 -0
- package/dist/utilities/logging-types.d.ts +19 -0
- package/dist/utilities/metadata.d.ts +10 -17
- package/dist/utilities/metadata.js +34 -51
- package/dist/utilities/migration.d.ts +2 -1
- package/dist/utilities/migration.js +33 -30
- package/dist/utilities/rules.d.ts +8 -0
- package/dist/utilities/rules.js +37 -0
- package/dist/utilities/server.d.ts +7 -0
- package/dist/utilities/server.js +12 -0
- package/dist/utilities/token-counter.d.ts +14 -0
- package/dist/utilities/token-counter.js +53 -0
- package/package.json +18 -28
- package/rules/asset-info.md +10 -0
- package/rules/asset-list.md +10 -0
- package/rules/component-cluster-list.md +5 -0
- package/{metadata/static/angular/index.md → rules/component-info-angular.md} +2 -1
- package/{metadata/static/react/index.md → rules/component-info-react.md} +2 -1
- package/{metadata/static/vue/index.md → rules/component-info-vue.md} +4 -1
- package/{metadata/static/component-list/index.md → rules/component-list.md} +5 -7
- package/rules/styles-info.md +9 -0
- package/{metadata/static/styles/index.md → rules/styles-list.md} +0 -2
- package/{metadata/static/templates/index.md → rules/template-info.md} +0 -1
- package/rules/template-list.md +7 -0
- package/dist/bin/create-checksum.d.ts +0 -2
- package/dist/bin/create-checksum.js +0 -24
- package/dist/build/assets.d.ts +0 -4
- package/dist/build/assets.js +0 -57
- package/dist/build/build.js +0 -35
- package/dist/build/components.d.ts +0 -4
- package/dist/build/components.js +0 -133
- package/dist/build/fonts.d.ts +0 -4
- package/dist/build/fonts.js +0 -49
- package/dist/build/frameworks.d.ts +0 -4
- package/dist/build/frameworks.js +0 -61
- package/dist/build/static.d.ts +0 -4
- package/dist/build/static.js +0 -65
- package/dist/build/styles.d.ts +0 -4
- package/dist/build/styles.js +0 -58
- package/dist/build/tokens.d.ts +0 -4
- package/dist/build/tokens.js +0 -59
- package/dist/tools/davinci-migration.d.ts +0 -3
- package/dist/tools/davinci-migration.js +0 -66
- package/dist/tools/font-info.d.ts +0 -6
- package/dist/tools/font-info.js +0 -35
- package/dist/tools/framework-info.d.ts +0 -7
- package/dist/tools/framework-info.js +0 -58
- package/dist/tools/tokens.js +0 -24
- package/dist/tools/version.d.ts +0 -7
- package/dist/tools/version.js +0 -53
- package/dist/utilities/assets.d.ts +0 -2
- package/dist/utilities/assets.js +0 -3
- package/dist/utilities/checksum.d.ts +0 -36
- package/dist/utilities/checksum.js +0 -94
- package/dist/utilities/components.d.ts +0 -25
- package/dist/utilities/components.js +0 -86
- package/dist/utilities/file.d.ts +0 -12
- package/dist/utilities/file.js +0 -31
- package/dist/utilities/fonts.d.ts +0 -2
- package/dist/utilities/fonts.js +0 -3
- package/dist/utilities/stdio.d.ts +0 -14
- package/dist/utilities/stdio.js +0 -60
- package/dist/utilities/storybook/build-docs.d.ts +0 -2
- package/dist/utilities/storybook/build-docs.js +0 -43
- package/dist/utilities/storybook/configs.d.ts +0 -13
- package/dist/utilities/storybook/configs.js +0 -85
- package/dist/utilities/storybook/docs-scraper.d.ts +0 -26
- package/dist/utilities/storybook/docs-scraper.js +0 -96
- package/dist/utilities/storybook/index.d.ts +0 -5
- package/dist/utilities/storybook/index.js +0 -4
- package/dist/utilities/storybook/scraper.d.ts +0 -14
- package/dist/utilities/storybook/scraper.js +0 -243
- package/dist/utilities/storybook/storybook-manager.d.ts +0 -29
- package/dist/utilities/storybook/storybook-manager.js +0 -138
- package/dist/utilities/storybook/types.d.ts +0 -22
- package/dist/utilities/storybook/types.js +0 -1
- package/dist/utilities/styles.d.ts +0 -6
- package/dist/utilities/styles.js +0 -24
- package/dist/utilities/templates.d.ts +0 -12
- package/dist/utilities/templates.js +0 -28
- package/dist/utilities/tokens.d.ts +0 -1
- package/dist/utilities/tokens.js +0 -21
- package/dist/utilities/version.d.ts +0 -28
- package/dist/utilities/version.js +0 -21
- package/metadata/checksum.txt +0 -1
- package/metadata/davinci-migration/migration-guide.md +0 -1859
- package/metadata/packages/angular/LIMITATIONS.md +0 -32
- package/metadata/packages/angular/README.md +0 -393
- package/metadata/packages/assets/BREAKING_CHANGES.md +0 -305
- package/metadata/packages/assets/CHANGELOG.md +0 -374
- package/metadata/packages/assets/README.md +0 -103
- package/metadata/packages/components/components/syn-accordion/component.angular.ts +0 -80
- package/metadata/packages/components/components/syn-accordion/component.react.ts +0 -30
- package/metadata/packages/components/components/syn-accordion/component.styles.ts +0 -15
- package/metadata/packages/components/components/syn-accordion/component.ts +0 -111
- package/metadata/packages/components/components/syn-accordion/component.vue +0 -64
- package/metadata/packages/components/components/syn-alert/component.angular.ts +0 -169
- package/metadata/packages/components/components/syn-alert/component.react.ts +0 -60
- package/metadata/packages/components/components/syn-alert/component.styles.ts +0 -203
- package/metadata/packages/components/components/syn-alert/component.ts +0 -322
- package/metadata/packages/components/components/syn-alert/component.vue +0 -135
- package/metadata/packages/components/components/syn-badge/component.angular.ts +0 -53
- package/metadata/packages/components/components/syn-badge/component.custom.styles.ts +0 -62
- package/metadata/packages/components/components/syn-badge/component.react.ts +0 -29
- package/metadata/packages/components/components/syn-badge/component.styles.ts +0 -52
- package/metadata/packages/components/components/syn-badge/component.ts +0 -58
- package/metadata/packages/components/components/syn-badge/component.vue +0 -53
- package/metadata/packages/components/components/syn-breadcrumb/component.angular.ts +0 -58
- package/metadata/packages/components/components/syn-breadcrumb/component.custom.styles.ts +0 -5
- package/metadata/packages/components/components/syn-breadcrumb/component.react.ts +0 -32
- package/metadata/packages/components/components/syn-breadcrumb/component.styles.ts +0 -11
- package/metadata/packages/components/components/syn-breadcrumb/component.ts +0 -103
- package/metadata/packages/components/components/syn-breadcrumb/component.vue +0 -58
- package/metadata/packages/components/components/syn-breadcrumb-item/component.angular.ts +0 -88
- package/metadata/packages/components/components/syn-breadcrumb-item/component.custom.styles.ts +0 -78
- package/metadata/packages/components/components/syn-breadcrumb-item/component.react.ts +0 -37
- package/metadata/packages/components/components/syn-breadcrumb-item/component.styles.ts +0 -88
- package/metadata/packages/components/components/syn-breadcrumb-item/component.ts +0 -132
- package/metadata/packages/components/components/syn-breadcrumb-item/component.vue +0 -76
- package/metadata/packages/components/components/syn-button/component.angular.ts +0 -318
- package/metadata/packages/components/components/syn-button/component.custom.styles.ts +0 -245
- package/metadata/packages/components/components/syn-button/component.react.ts +0 -56
- package/metadata/packages/components/components/syn-button/component.styles.ts +0 -361
- package/metadata/packages/components/components/syn-button/component.ts +0 -315
- package/metadata/packages/components/components/syn-button/component.vue +0 -204
- package/metadata/packages/components/components/syn-button-group/component.angular.ts +0 -79
- package/metadata/packages/components/components/syn-button-group/component.custom.styles.ts +0 -5
- package/metadata/packages/components/components/syn-button-group/component.react.ts +0 -29
- package/metadata/packages/components/components/syn-button-group/component.styles.ts +0 -14
- package/metadata/packages/components/components/syn-button-group/component.ts +0 -171
- package/metadata/packages/components/components/syn-button-group/component.vue +0 -67
- package/metadata/packages/components/components/syn-card/component.angular.ts +0 -83
- package/metadata/packages/components/components/syn-card/component.custom.styles.ts +0 -60
- package/metadata/packages/components/components/syn-card/component.react.ts +0 -41
- package/metadata/packages/components/components/syn-card/component.styles.ts +0 -70
- package/metadata/packages/components/components/syn-card/component.ts +0 -65
- package/metadata/packages/components/components/syn-card/component.vue +0 -73
- package/metadata/packages/components/components/syn-checkbox/component.angular.ts +0 -273
- package/metadata/packages/components/components/syn-checkbox/component.react.ts +0 -64
- package/metadata/packages/components/components/syn-checkbox/component.styles.ts +0 -183
- package/metadata/packages/components/components/syn-checkbox/component.ts +0 -287
- package/metadata/packages/components/components/syn-checkbox/component.vue +0 -191
- package/metadata/packages/components/components/syn-combobox/component.angular.ts +0 -516
- package/metadata/packages/components/components/syn-combobox/component.react.ts +0 -118
- package/metadata/packages/components/components/syn-combobox/component.styles.ts +0 -393
- package/metadata/packages/components/components/syn-combobox/component.ts +0 -1684
- package/metadata/packages/components/components/syn-combobox/component.vue +0 -350
- package/metadata/packages/components/components/syn-details/component.angular.ts +0 -186
- package/metadata/packages/components/components/syn-details/component.react.ts +0 -65
- package/metadata/packages/components/components/syn-details/component.styles.ts +0 -181
- package/metadata/packages/components/components/syn-details/component.ts +0 -261
- package/metadata/packages/components/components/syn-details/component.vue +0 -136
- package/metadata/packages/components/components/syn-dialog/component.angular.ts +0 -201
- package/metadata/packages/components/components/syn-dialog/component.react.ts +0 -91
- package/metadata/packages/components/components/syn-dialog/component.styles.ts +0 -130
- package/metadata/packages/components/components/syn-dialog/component.ts +0 -367
- package/metadata/packages/components/components/syn-dialog/component.vue +0 -169
- package/metadata/packages/components/components/syn-divider/component.angular.ts +0 -55
- package/metadata/packages/components/components/syn-divider/component.react.ts +0 -29
- package/metadata/packages/components/components/syn-divider/component.styles.ts +0 -22
- package/metadata/packages/components/components/syn-divider/component.ts +0 -34
- package/metadata/packages/components/components/syn-divider/component.vue +0 -51
- package/metadata/packages/components/components/syn-drawer/component.angular.ts +0 -234
- package/metadata/packages/components/components/syn-drawer/component.custom.styles.ts +0 -78
- package/metadata/packages/components/components/syn-drawer/component.react.ts +0 -98
- package/metadata/packages/components/components/syn-drawer/component.styles.ts +0 -158
- package/metadata/packages/components/components/syn-drawer/component.ts +0 -489
- package/metadata/packages/components/components/syn-drawer/component.vue +0 -188
- package/metadata/packages/components/components/syn-dropdown/component.angular.ts +0 -208
- package/metadata/packages/components/components/syn-dropdown/component.react.ts +0 -59
- package/metadata/packages/components/components/syn-dropdown/component.styles.ts +0 -51
- package/metadata/packages/components/components/syn-dropdown/component.ts +0 -469
- package/metadata/packages/components/components/syn-dropdown/component.vue +0 -152
- package/metadata/packages/components/components/syn-file/component.angular.ts +0 -372
- package/metadata/packages/components/components/syn-file/component.react.ts +0 -85
- package/metadata/packages/components/components/syn-file/component.styles.ts +0 -197
- package/metadata/packages/components/components/syn-file/component.ts +0 -645
- package/metadata/packages/components/components/syn-file/component.vue +0 -256
- package/metadata/packages/components/components/syn-header/component.angular.ts +0 -149
- package/metadata/packages/components/components/syn-header/component.react.ts +0 -68
- package/metadata/packages/components/components/syn-header/component.styles.ts +0 -143
- package/metadata/packages/components/components/syn-header/component.ts +0 -310
- package/metadata/packages/components/components/syn-header/component.vue +0 -126
- package/metadata/packages/components/components/syn-icon/component.angular.ts +0 -115
- package/metadata/packages/components/components/syn-icon/component.custom.styles.ts +0 -5
- package/metadata/packages/components/components/syn-icon/component.react.ts +0 -41
- package/metadata/packages/components/components/syn-icon/component.styles.ts +0 -18
- package/metadata/packages/components/components/syn-icon/component.ts +0 -227
- package/metadata/packages/components/components/syn-icon/component.vue +0 -100
- package/metadata/packages/components/components/syn-icon-button/component.angular.ts +0 -185
- package/metadata/packages/components/components/syn-icon-button/component.custom.styles.ts +0 -79
- package/metadata/packages/components/components/syn-icon-button/component.react.ts +0 -42
- package/metadata/packages/components/components/syn-icon-button/component.styles.ts +0 -52
- package/metadata/packages/components/components/syn-icon-button/component.ts +0 -147
- package/metadata/packages/components/components/syn-icon-button/component.vue +0 -132
- package/metadata/packages/components/components/syn-input/component.angular.ts +0 -608
- package/metadata/packages/components/components/syn-input/component.custom.styles.ts +0 -278
- package/metadata/packages/components/components/syn-input/component.react.ts +0 -91
- package/metadata/packages/components/components/syn-input/component.styles.ts +0 -280
- package/metadata/packages/components/components/syn-input/component.ts +0 -941
- package/metadata/packages/components/components/syn-input/component.vue +0 -370
- package/metadata/packages/components/components/syn-menu/component.angular.ts +0 -52
- package/metadata/packages/components/components/syn-menu/component.react.ts +0 -36
- package/metadata/packages/components/components/syn-menu/component.styles.ts +0 -37
- package/metadata/packages/components/components/syn-menu/component.ts +0 -191
- package/metadata/packages/components/components/syn-menu/component.vue +0 -48
- package/metadata/packages/components/components/syn-menu-item/component.angular.ts +0 -121
- package/metadata/packages/components/components/syn-menu-item/component.react.ts +0 -45
- package/metadata/packages/components/components/syn-menu-item/component.styles.ts +0 -285
- package/metadata/packages/components/components/syn-menu-item/component.ts +0 -201
- package/metadata/packages/components/components/syn-menu-item/component.vue +0 -91
- package/metadata/packages/components/components/syn-menu-label/component.angular.ts +0 -48
- package/metadata/packages/components/components/syn-menu-label/component.react.ts +0 -35
- package/metadata/packages/components/components/syn-menu-label/component.styles.ts +0 -31
- package/metadata/packages/components/components/syn-menu-label/component.ts +0 -46
- package/metadata/packages/components/components/syn-menu-label/component.vue +0 -41
- package/metadata/packages/components/components/syn-nav-item/component.angular.ts +0 -242
- package/metadata/packages/components/components/syn-nav-item/component.react.ts +0 -82
- package/metadata/packages/components/components/syn-nav-item/component.styles.ts +0 -333
- package/metadata/packages/components/components/syn-nav-item/component.ts +0 -491
- package/metadata/packages/components/components/syn-nav-item/component.vue +0 -182
- package/metadata/packages/components/components/syn-optgroup/component.angular.ts +0 -79
- package/metadata/packages/components/components/syn-optgroup/component.react.ts +0 -41
- package/metadata/packages/components/components/syn-optgroup/component.styles.ts +0 -61
- package/metadata/packages/components/components/syn-optgroup/component.ts +0 -176
- package/metadata/packages/components/components/syn-optgroup/component.vue +0 -71
- package/metadata/packages/components/components/syn-option/component.angular.ts +0 -79
- package/metadata/packages/components/components/syn-option/component.react.ts +0 -37
- package/metadata/packages/components/components/syn-option/component.styles.ts +0 -165
- package/metadata/packages/components/components/syn-option/component.ts +0 -191
- package/metadata/packages/components/components/syn-option/component.vue +0 -71
- package/metadata/packages/components/components/syn-pagination/component.angular.ts +0 -201
- package/metadata/packages/components/components/syn-pagination/component.react.ts +0 -56
- package/metadata/packages/components/components/syn-pagination/component.styles.ts +0 -128
- package/metadata/packages/components/components/syn-pagination/component.ts +0 -452
- package/metadata/packages/components/components/syn-pagination/component.vue +0 -144
- package/metadata/packages/components/components/syn-popup/component.angular.ts +0 -372
- package/metadata/packages/components/components/syn-popup/component.react.ts +0 -55
- package/metadata/packages/components/components/syn-popup/component.styles.ts +0 -70
- package/metadata/packages/components/components/syn-popup/component.ts +0 -582
- package/metadata/packages/components/components/syn-popup/component.vue +0 -233
- package/metadata/packages/components/components/syn-prio-nav/component.angular.ts +0 -67
- package/metadata/packages/components/components/syn-prio-nav/component.react.ts +0 -54
- package/metadata/packages/components/components/syn-prio-nav/component.styles.ts +0 -48
- package/metadata/packages/components/components/syn-prio-nav/component.ts +0 -288
- package/metadata/packages/components/components/syn-prio-nav/component.vue +0 -60
- package/metadata/packages/components/components/syn-progress-bar/component.angular.ts +0 -85
- package/metadata/packages/components/components/syn-progress-bar/component.custom.styles.ts +0 -24
- package/metadata/packages/components/components/syn-progress-bar/component.react.ts +0 -37
- package/metadata/packages/components/components/syn-progress-bar/component.styles.ts +0 -87
- package/metadata/packages/components/components/syn-progress-bar/component.ts +0 -67
- package/metadata/packages/components/components/syn-progress-bar/component.vue +0 -71
- package/metadata/packages/components/components/syn-progress-ring/component.angular.ts +0 -72
- package/metadata/packages/components/components/syn-progress-ring/component.custom.styles.ts +0 -19
- package/metadata/packages/components/components/syn-progress-ring/component.react.ts +0 -37
- package/metadata/packages/components/components/syn-progress-ring/component.styles.ts +0 -70
- package/metadata/packages/components/components/syn-progress-ring/component.ts +0 -83
- package/metadata/packages/components/components/syn-progress-ring/component.vue +0 -66
- package/metadata/packages/components/components/syn-radio/component.angular.ts +0 -122
- package/metadata/packages/components/components/syn-radio/component.react.ts +0 -48
- package/metadata/packages/components/components/syn-radio/component.styles.ts +0 -179
- package/metadata/packages/components/components/syn-radio/component.ts +0 -131
- package/metadata/packages/components/components/syn-radio/component.vue +0 -104
- package/metadata/packages/components/components/syn-radio-button/component.angular.ts +0 -123
- package/metadata/packages/components/components/syn-radio-button/component.react.ts +0 -49
- package/metadata/packages/components/components/syn-radio-button/component.styles.ts +0 -30
- package/metadata/packages/components/components/syn-radio-button/component.ts +0 -142
- package/metadata/packages/components/components/syn-radio-button/component.vue +0 -105
- package/metadata/packages/components/components/syn-radio-group/component.angular.ts +0 -204
- package/metadata/packages/components/components/syn-radio-group/component.react.ts +0 -56
- package/metadata/packages/components/components/syn-radio-group/component.styles.ts +0 -58
- package/metadata/packages/components/components/syn-radio-group/component.ts +0 -440
- package/metadata/packages/components/components/syn-radio-group/component.vue +0 -158
- package/metadata/packages/components/components/syn-range/component.angular.ts +0 -347
- package/metadata/packages/components/components/syn-range/component.react.ts +0 -92
- package/metadata/packages/components/components/syn-range/component.styles.ts +0 -310
- package/metadata/packages/components/components/syn-range/component.ts +0 -933
- package/metadata/packages/components/components/syn-range/component.vue +0 -245
- package/metadata/packages/components/components/syn-range-tick/component.angular.ts +0 -59
- package/metadata/packages/components/components/syn-range-tick/component.react.ts +0 -33
- package/metadata/packages/components/components/syn-range-tick/component.styles.ts +0 -34
- package/metadata/packages/components/components/syn-range-tick/component.ts +0 -50
- package/metadata/packages/components/components/syn-range-tick/component.vue +0 -57
- package/metadata/packages/components/components/syn-resize-observer/component.styles.ts +0 -9
- package/metadata/packages/components/components/syn-resize-observer/component.ts +0 -91
- package/metadata/packages/components/components/syn-select/component.angular.ts +0 -439
- package/metadata/packages/components/components/syn-select/component.react.ts +0 -101
- package/metadata/packages/components/components/syn-select/component.styles.ts +0 -380
- package/metadata/packages/components/components/syn-select/component.ts +0 -1056
- package/metadata/packages/components/components/syn-select/component.vue +0 -301
- package/metadata/packages/components/components/syn-side-nav/component.angular.ts +0 -210
- package/metadata/packages/components/components/syn-side-nav/component.react.ts +0 -95
- package/metadata/packages/components/components/syn-side-nav/component.styles.ts +0 -142
- package/metadata/packages/components/components/syn-side-nav/component.ts +0 -458
- package/metadata/packages/components/components/syn-side-nav/component.vue +0 -188
- package/metadata/packages/components/components/syn-spinner/component.angular.ts +0 -44
- package/metadata/packages/components/components/syn-spinner/component.custom.styles.ts +0 -32
- package/metadata/packages/components/components/syn-spinner/component.react.ts +0 -31
- package/metadata/packages/components/components/syn-spinner/component.styles.ts +0 -48
- package/metadata/packages/components/components/syn-spinner/component.ts +0 -35
- package/metadata/packages/components/components/syn-spinner/component.vue +0 -35
- package/metadata/packages/components/components/syn-switch/component.angular.ts +0 -257
- package/metadata/packages/components/components/syn-switch/component.react.ts +0 -63
- package/metadata/packages/components/components/syn-switch/component.styles.ts +0 -252
- package/metadata/packages/components/components/syn-switch/component.ts +0 -279
- package/metadata/packages/components/components/syn-switch/component.vue +0 -183
- package/metadata/packages/components/components/syn-tab/component.angular.ts +0 -109
- package/metadata/packages/components/components/syn-tab/component.custom.styles.ts +0 -94
- package/metadata/packages/components/components/syn-tab/component.react.ts +0 -42
- package/metadata/packages/components/components/syn-tab/component.styles.ts +0 -70
- package/metadata/packages/components/components/syn-tab/component.ts +0 -125
- package/metadata/packages/components/components/syn-tab/component.vue +0 -91
- package/metadata/packages/components/components/syn-tab-group/component.angular.ts +0 -166
- package/metadata/packages/components/components/syn-tab-group/component.custom.styles.ts +0 -218
- package/metadata/packages/components/components/syn-tab-group/component.react.ts +0 -58
- package/metadata/packages/components/components/syn-tab-group/component.styles.ts +0 -193
- package/metadata/packages/components/components/syn-tab-group/component.ts +0 -551
- package/metadata/packages/components/components/syn-tab-group/component.vue +0 -126
- package/metadata/packages/components/components/syn-tab-panel/component.angular.ts +0 -68
- package/metadata/packages/components/components/syn-tab-panel/component.custom.styles.ts +0 -8
- package/metadata/packages/components/components/syn-tab-panel/component.react.ts +0 -31
- package/metadata/packages/components/components/syn-tab-panel/component.styles.ts +0 -20
- package/metadata/packages/components/components/syn-tab-panel/component.ts +0 -60
- package/metadata/packages/components/components/syn-tab-panel/component.vue +0 -60
- package/metadata/packages/components/components/syn-tag/component.angular.ts +0 -83
- package/metadata/packages/components/components/syn-tag/component.custom.styles.ts +0 -121
- package/metadata/packages/components/components/syn-tag/component.react.ts +0 -43
- package/metadata/packages/components/components/syn-tag/component.styles.ts +0 -58
- package/metadata/packages/components/components/syn-tag/component.ts +0 -83
- package/metadata/packages/components/components/syn-tag/component.vue +0 -81
- package/metadata/packages/components/components/syn-tag-group/component.angular.ts +0 -83
- package/metadata/packages/components/components/syn-tag-group/component.react.ts +0 -33
- package/metadata/packages/components/components/syn-tag-group/component.styles.ts +0 -49
- package/metadata/packages/components/components/syn-tag-group/component.ts +0 -95
- package/metadata/packages/components/components/syn-tag-group/component.vue +0 -69
- package/metadata/packages/components/components/syn-textarea/component.angular.ts +0 -396
- package/metadata/packages/components/components/syn-textarea/component.react.ts +0 -60
- package/metadata/packages/components/components/syn-textarea/component.styles.ts +0 -208
- package/metadata/packages/components/components/syn-textarea/component.ts +0 -400
- package/metadata/packages/components/components/syn-textarea/component.vue +0 -244
- package/metadata/packages/components/components/syn-tooltip/component.angular.ts +0 -196
- package/metadata/packages/components/components/syn-tooltip/component.react.ts +0 -63
- package/metadata/packages/components/components/syn-tooltip/component.styles.ts +0 -62
- package/metadata/packages/components/components/syn-tooltip/component.ts +0 -312
- package/metadata/packages/components/components/syn-tooltip/component.vue +0 -150
- package/metadata/packages/components/components/syn-validate/component.angular.ts +0 -137
- package/metadata/packages/components/components/syn-validate/component.react.ts +0 -44
- package/metadata/packages/components/components/syn-validate/component.styles.ts +0 -9
- package/metadata/packages/components/components/syn-validate/component.ts +0 -590
- package/metadata/packages/components/components/syn-validate/component.vue +0 -107
- package/metadata/packages/components/migration/BREAKING_CHANGES.md +0 -908
- package/metadata/packages/components/static/CHANGELOG.md +0 -2155
- package/metadata/packages/components/static/LIMITATIONS.md +0 -433
- package/metadata/packages/components/static/README.md +0 -231
- package/metadata/packages/fonts/CHANGELOG.md +0 -57
- package/metadata/packages/fonts/README.md +0 -164
- package/metadata/packages/fonts/package.json +0 -72
- package/metadata/packages/react/LIMITATIONS.md +0 -31
- package/metadata/packages/react/README.md +0 -262
- package/metadata/packages/styles/BREAKING_CHANGES.md +0 -105
- package/metadata/packages/styles/CHANGELOG.md +0 -188
- package/metadata/packages/styles/README.md +0 -132
- package/metadata/packages/styles/index.css +0 -300
- package/metadata/packages/styles/link-list.css +0 -47
- package/metadata/packages/styles/link.css +0 -81
- package/metadata/packages/styles/tables.css +0 -132
- package/metadata/packages/styles/typography.css +0 -52
- package/metadata/packages/tokens/BREAKING_CHANGES.md +0 -180
- package/metadata/packages/tokens/CHANGELOG.md +0 -959
- package/metadata/packages/tokens/README.md +0 -435
- package/metadata/packages/tokens/dark.css +0 -454
- package/metadata/packages/tokens/index.js +0 -2224
- package/metadata/packages/tokens/light.css +0 -454
- package/metadata/packages/tokens/sick2018_dark.css +0 -454
- package/metadata/packages/tokens/sick2018_light.css +0 -454
- package/metadata/packages/tokens/sick2025_dark.css +0 -454
- package/metadata/packages/tokens/sick2025_light.css +0 -454
- package/metadata/packages/vue/LIMITATIONS.md +0 -53
- package/metadata/packages/vue/README.md +0 -252
- package/metadata/static/assets/index.md +0 -10
- package/metadata/static/components/index.md +0 -10
- package/metadata/static/components/syn-accordion/docs.md +0 -449
- package/metadata/static/components/syn-alert/docs.md +0 -282
- package/metadata/static/components/syn-badge/docs.md +0 -106
- package/metadata/static/components/syn-breadcrumb/docs.md +0 -265
- package/metadata/static/components/syn-breadcrumb-item/docs.md +0 -49
- package/metadata/static/components/syn-button/docs.md +0 -472
- package/metadata/static/components/syn-button-group/docs.md +0 -259
- package/metadata/static/components/syn-card/docs.md +0 -314
- package/metadata/static/components/syn-checkbox/docs.md +0 -176
- package/metadata/static/components/syn-combobox/docs.md +0 -2633
- package/metadata/static/components/syn-details/docs.md +0 -227
- package/metadata/static/components/syn-dialog/docs.md +0 -220
- package/metadata/static/components/syn-divider/docs.md +0 -77
- package/metadata/static/components/syn-drawer/docs.md +0 -269
- package/metadata/static/components/syn-dropdown/docs.md +0 -316
- package/metadata/static/components/syn-file/docs.md +0 -239
- package/metadata/static/components/syn-header/docs.md +0 -209
- package/metadata/static/components/syn-icon/docs.md +0 -177
- package/metadata/static/components/syn-icon-button/docs.md +0 -142
- package/metadata/static/components/syn-input/docs.md +0 -462
- package/metadata/static/components/syn-menu/docs.md +0 -162
- package/metadata/static/components/syn-menu-item/docs.md +0 -216
- package/metadata/static/components/syn-menu-label/docs.md +0 -29
- package/metadata/static/components/syn-nav-item/docs.md +0 -166
- package/metadata/static/components/syn-optgroup/docs.md +0 -167
- package/metadata/static/components/syn-option/docs.md +0 -137
- package/metadata/static/components/syn-pagination/docs.md +0 -102
- package/metadata/static/components/syn-popup/docs.md +0 -812
- package/metadata/static/components/syn-prio-nav/docs.md +0 -54
- package/metadata/static/components/syn-progress-bar/docs.md +0 -77
- package/metadata/static/components/syn-progress-ring/docs.md +0 -89
- package/metadata/static/components/syn-radio/docs.md +0 -178
- package/metadata/static/components/syn-radio-group/docs.md +0 -484
- package/metadata/static/components/syn-range/docs.md +0 -438
- package/metadata/static/components/syn-range-tick/docs.md +0 -110
- package/metadata/static/components/syn-select/docs.md +0 -811
- package/metadata/static/components/syn-side-nav/docs.md +0 -593
- package/metadata/static/components/syn-spinner/docs.md +0 -45
- package/metadata/static/components/syn-switch/docs.md +0 -121
- package/metadata/static/components/syn-tab/docs.md +0 -47
- package/metadata/static/components/syn-tab-group/docs.md +0 -1094
- package/metadata/static/components/syn-tab-panel/docs.md +0 -91
- package/metadata/static/components/syn-tag/docs.md +0 -50
- package/metadata/static/components/syn-tag-group/docs.md +0 -269
- package/metadata/static/components/syn-textarea/docs.md +0 -215
- package/metadata/static/components/syn-tooltip/docs.md +0 -217
- package/metadata/static/components/syn-validate/docs.md +0 -305
- package/metadata/static/fonts/index.md +0 -4
- package/metadata/static/migration/index.md +0 -57
- package/metadata/static/migration/v2-2018-to-v2-2025.md +0 -481
- package/metadata/static/migration/v2-2018-to-v3-2018.md +0 -147
- package/metadata/static/migration/v2-2018-to-v3-2025.md +0 -150
- package/metadata/static/migration/v2-2025-to-v3-2025.md +0 -133
- package/metadata/static/setup/icon-usage.md +0 -411
- package/metadata/static/setup/prerequisites.md +0 -319
- package/metadata/static/styles/syn-body.md +0 -5
- package/metadata/static/styles/syn-heading.md +0 -5
- package/metadata/static/styles/syn-link-list.md +0 -325
- package/metadata/static/styles/syn-link.md +0 -156
- package/metadata/static/styles/syn-table-cell.md +0 -127
- package/metadata/static/styles/syn-table.md +0 -201
- package/metadata/static/styles/syn-weight.md +0 -5
- package/metadata/static/templates/appshell.md +0 -2053
- package/metadata/static/templates/breadcrumb.md +0 -379
- package/metadata/static/templates/footer.md +0 -340
- package/metadata/static/templates/forms.md +0 -558
- package/metadata/static/templates/localization.md +0 -279
- package/metadata/static/templates/table.md +0 -1425
- package/metadata/static/templates/tag-group.md +0 -833
- /package/dist/{build/build.d.ts → utilities/logging-types.js} +0 -0
- /package/{metadata/static/component-info/index.md → rules/component-info.md} +0 -0
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
# Migrating from Synergy 2.x (SICK 2018) → Synergy 3.x (SICK 2025)
|
|
2
|
-
|
|
3
|
-
This guide describes how to migrate an application from **Synergy 2.x with the SICK 2018 theme** to **Synergy 3.x with the SICK 2025 theme**.
|
|
4
|
-
|
|
5
|
-
This is the **recommended** end state for new and actively maintained applications.
|
|
6
|
-
|
|
7
|
-
> This guide focuses on the _user perspective_ and high-level sequence.
|
|
8
|
-
> For low-level, package-specific changes, always consult the respective `BREAKING_CHANGES.md` documents.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## Migration Checklist: Quick Overview
|
|
13
|
-
|
|
14
|
-
- [ ] Review the [Migration to SICK 2025 on Synergy 2](?path=/docs/migration-v2-sick-2018-to-v2-sick-2025--docs) to understand the theme and icon changes.
|
|
15
|
-
- [ ] Decide whether you want to migrate the theme **before** or **together with** the Synergy 3 upgrade.
|
|
16
|
-
- [ ] Update all `@synergy-design-system/*` packages to their compatible Synergy 3 versions.
|
|
17
|
-
- [ ] Apply all relevant breaking changes for:
|
|
18
|
-
- [ ] `@synergy-design-system/components` ([BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs))
|
|
19
|
-
- [ ] `@synergy-design-system/tokens` ([BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs))
|
|
20
|
-
- [ ] `@synergy-design-system/assets` ([BREAKING_CHANGES](?path=/docs/packages-assets-breaking-changes--docs))
|
|
21
|
-
- [ ] `@synergy-design-system/styles` ([BREAKING_CHANGES](?path=/docs/packages-styles-breaking-changes--docs))
|
|
22
|
-
- [ ] Enable the SICK 2025 theme (tokens, theme classes, icons, font).
|
|
23
|
-
- [ ] Test your application visually and functionally in both light and dark mode.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Recommended Strategy
|
|
28
|
-
|
|
29
|
-
There are two practical ways to perform this migration:
|
|
30
|
-
|
|
31
|
-
1. **Two-step migration** (less risk, more control)
|
|
32
|
-
- Step 1: Stay on Synergy 2 but migrate to SICK 2025 using the existing theme migration guide.
|
|
33
|
-
- Step 2: Upgrade from Synergy 2 to Synergy 3 while already using SICK 2025.
|
|
34
|
-
|
|
35
|
-
2. **One-step migration** (fewer intermediate states, more changes at once)
|
|
36
|
-
- Update all packages directly to Synergy 3.
|
|
37
|
-
- Apply package breaking changes and enable SICK 2025 in one go.
|
|
38
|
-
|
|
39
|
-
This guide is written so it works for both strategies. When in doubt, prefer the **two-step** approach.
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## Migration Steps: Detailed Guide
|
|
44
|
-
|
|
45
|
-
### 1. Prepare and review current setup
|
|
46
|
-
|
|
47
|
-
- Confirm your current versions of all `@synergy-design-system/*` packages.
|
|
48
|
-
- Confirm that your application is currently using the **SICK 2018** theme (legacy theme files and theme classes).
|
|
49
|
-
- Skim through the package-specific breaking change guides to understand the scope of changes:
|
|
50
|
-
- Components: [BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs)
|
|
51
|
-
- Tokens: [BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs)
|
|
52
|
-
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
### 2. (Optional but recommended) First migrate SICK 2018 → SICK 2025 on Synergy 2
|
|
56
|
-
|
|
57
|
-
If you prefer a **safer**, staged migration, first migrate your theme while staying on Synergy 2:
|
|
58
|
-
|
|
59
|
-
- Follow the guide [Migration to SICK 2025 on Synergy 2](?path=/docs/migration-v2-sick-2018-to-v2-sick-2025--docs).
|
|
60
|
-
- Verify:
|
|
61
|
-
- New SICK 2025 icon assets are available and copied by your build.
|
|
62
|
-
- `setSystemIconLibrary('sick2025')` (or `setupIcons('sick2025')`) is called as appropriate.
|
|
63
|
-
- `sick2025_light.css` and `sick2025_dark.css` are imported.
|
|
64
|
-
- Theme switching uses `.syn-sick2025-light` and `.syn-sick2025-dark`.
|
|
65
|
-
- The **SICK Intl** font is loaded.
|
|
66
|
-
|
|
67
|
-
Once this is working, you are effectively in the same state as **Path C** and can continue as in that path when upgrading to Synergy 3.
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
### 3. Update Synergy packages to version 3
|
|
72
|
-
|
|
73
|
-
Update your dependencies to the compatible Synergy 3 versions:
|
|
74
|
-
|
|
75
|
-
- `@synergy-design-system/components` → latest **3.x**
|
|
76
|
-
- `@synergy-design-system/tokens` → latest **3.x**
|
|
77
|
-
- `@synergy-design-system/assets` → latest **2.x** (or the version recommended in the release notes)
|
|
78
|
-
- `@synergy-design-system/styles` → latest **2.x** (or the version recommended in the release notes)
|
|
79
|
-
|
|
80
|
-
Make sure all `@synergy-design-system/*` packages are updated together to avoid version mismatches.
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
### 4. Apply package-level breaking changes
|
|
85
|
-
|
|
86
|
-
Go through the breaking change guides and adjust your code accordingly.
|
|
87
|
-
Focus especially on:
|
|
88
|
-
|
|
89
|
-
-- **Components** ([BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs))
|
|
90
|
-
|
|
91
|
-
- Removed or renamed attributes (e.g. deprecated attributes on dropdowns, tooltips, popups, etc.).
|
|
92
|
-
- Changes in defaults (e.g. numeric input behavior).
|
|
93
|
-
- Updated settings utilities.
|
|
94
|
-
|
|
95
|
-
-- **Tokens** ([BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs))
|
|
96
|
-
|
|
97
|
-
- New default theme behavior (SICK 2025 becoming the default for certain theme imports).
|
|
98
|
-
- The planned deprecation of legacy tokens (e.g. page background tokens).
|
|
99
|
-
|
|
100
|
-
-- **Assets & Styles** ([BREAKING_CHANGES](?path=/docs/packages-assets-breaking-changes--docs), [BREAKING_CHANGES](?path=/docs/packages-styles-breaking-changes--docs))
|
|
101
|
-
|
|
102
|
-
- Any changes in asset paths, build configuration, or CSS utility classes.
|
|
103
|
-
|
|
104
|
-
Handle these changes package by package so that your code compiles and your tests pass.
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
### 5. Ensure SICK 2025 is active on Synergy 3
|
|
109
|
-
|
|
110
|
-
On Synergy 3, SICK 2025 becomes the **primary** theme. To ensure your application is correctly configured:
|
|
111
|
-
|
|
112
|
-
- Confirm that your theme imports reference the SICK 2025 theme files.
|
|
113
|
-
- Confirm that your runtime theme switching uses `.syn-sick2025-light` and `.syn-sick2025-dark`.
|
|
114
|
-
- Confirm that your icon setup uses the SICK 2025 icon library.
|
|
115
|
-
- Confirm that the SICK Intl font is loaded (via fonts package, CDN, or local hosting).
|
|
116
|
-
|
|
117
|
-
If you used the two-step strategy and already migrated the theme on Synergy 2, this step should mostly be a verification.
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
### 6. Test and verify
|
|
122
|
-
|
|
123
|
-
- Manually test key user flows in your application in both light and dark mode.
|
|
124
|
-
- Pay special attention to:
|
|
125
|
-
- Layout changes due to new spacing, radii, and typography.
|
|
126
|
-
- Numeric inputs and other controls with changed defaults.
|
|
127
|
-
- Popovers, tooltips, dropdowns, and navigation components after API cleanups.
|
|
128
|
-
- Run your automated tests and visual regression tests (if available).
|
|
129
|
-
|
|
130
|
-
---
|
|
131
|
-
|
|
132
|
-
## Migration: Breaking Changes & Details
|
|
133
|
-
|
|
134
|
-
This path-level guide is intentionally high level.
|
|
135
|
-
For exact API changes, always work with the package-specific documents:
|
|
136
|
-
|
|
137
|
-
- Components: [@synergy-design-system/components BREAKING CHANGES](?path=/docs/packages-components-breaking-changes--docs)
|
|
138
|
-
- Tokens: [@synergy-design-system/tokens BREAKING CHANGES](?path=/docs/packages-tokens-breaking-changes--docs)
|
|
139
|
-
- Assets: [@synergy-design-system/assets BREAKING CHANGES](?path=/docs/packages-assets-breaking-changes--docs)
|
|
140
|
-
- Styles: [@synergy-design-system/styles BREAKING CHANGES](?path=/docs/packages-styles-breaking-changes--docs)
|
|
141
|
-
|
|
142
|
-
You can combine this path guide with those documents to form a project-specific migration plan.
|
|
143
|
-
|
|
144
|
-
---
|
|
145
|
-
|
|
146
|
-
## References & Further Reading
|
|
147
|
-
|
|
148
|
-
- Overall migration paths overview: [Synergy Migration Overview](?path=/docs/migration--docs)
|
|
149
|
-
- SICK 2025 theme migration for Synergy 2: [Migration to SICK 2025 on Synergy 2](?path=/docs/migration-v2-sick-2018-to-v2-sick-2025--docs)
|
|
150
|
-
- Additional Synergy documentation: [Synergy Docs](?path=/docs/welcome--docs)
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
# Migrating from Synergy 2.x (SICK 2025) → Synergy 3.x (SICK 2025)
|
|
2
|
-
|
|
3
|
-
This guide describes how to migrate an application from **Synergy 2.x with the SICK 2025 theme** to **Synergy 3.x with the SICK 2025 theme**.
|
|
4
|
-
|
|
5
|
-
Use this path if you already migrated your application to the SICK 2025 theme while staying on Synergy 2 (using the dedicated SICK 2025 migration guide) and now want to upgrade to Synergy 3.
|
|
6
|
-
|
|
7
|
-
> This guide assumes that SICK 2025 is already correctly configured in your Synergy 2 setup.
|
|
8
|
-
> If you are still on SICK 2018, use **Path B** instead.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## Migration Checklist: Quick Overview
|
|
13
|
-
|
|
14
|
-
- [ ] Confirm that your Synergy 2 application already follows the SICK 2025 migration guide.
|
|
15
|
-
- [ ] Update all `@synergy-design-system/*` packages to their compatible Synergy 3 versions.
|
|
16
|
-
- [ ] Apply all relevant breaking changes for:
|
|
17
|
-
- [ ] `@synergy-design-system/components` ([BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs))
|
|
18
|
-
- [ ] `@synergy-design-system/tokens` ([BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs))
|
|
19
|
-
- [ ] `@synergy-design-system/assets` ([BREAKING_CHANGES](?path=/docs/packages-assets-breaking-changes--docs))
|
|
20
|
-
- [ ] `@synergy-design-system/styles` ([BREAKING_CHANGES](?path=/docs/packages-styles-breaking-changes--docs))
|
|
21
|
-
- [ ] Verify that SICK 2025 remains active after the upgrade (themes, icons, font).
|
|
22
|
-
- [ ] Test your application visually and functionally in both light and dark mode.
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## Starting Point: Already on SICK 2025
|
|
27
|
-
|
|
28
|
-
Before you start, you should already have completed:
|
|
29
|
-
|
|
30
|
-
- The theme migration from SICK 2018 to SICK 2025 on Synergy 2, following
|
|
31
|
-
[Migration to SICK 2025 on Synergy 2](?path=/docs/migration-v2-sick-2018-to-v2-sick-2025--docs).
|
|
32
|
-
- Your application:
|
|
33
|
-
- Uses the `sick2025_light.css` and `sick2025_dark.css` theme files.
|
|
34
|
-
- Uses the `.syn-sick2025-light` and `.syn-sick2025-dark` classes for theme switching.
|
|
35
|
-
- Loads the SICK Intl font.
|
|
36
|
-
- Has SICK 2025 icons configured (via direct setup or `setupIcons('sick2025')`).
|
|
37
|
-
|
|
38
|
-
If any of these are not yet true, complete the SICK 2025 migration first.
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## Migration Steps: Detailed Guide
|
|
43
|
-
|
|
44
|
-
### 1. Prepare and review current setup
|
|
45
|
-
|
|
46
|
-
- Confirm your current Synergy versions (2.x) for all `@synergy-design-system/*` packages.
|
|
47
|
-
- Confirm that SICK 2025 is visually working as expected.
|
|
48
|
-
- Skim the package-level breaking change guides to understand the scope of the Synergy 3 upgrade:
|
|
49
|
-
- Components: [BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs)
|
|
50
|
-
- Tokens: [BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs)
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
### 2. Update Synergy packages to version 3
|
|
55
|
-
|
|
56
|
-
Update your dependencies to the compatible Synergy 3 versions:
|
|
57
|
-
|
|
58
|
-
- `@synergy-design-system/components` → latest **3.x**
|
|
59
|
-
- `@synergy-design-system/tokens` → latest **3.x**
|
|
60
|
-
- `@synergy-design-system/assets` → latest **2.x** (or the version recommended in the release notes)
|
|
61
|
-
- `@synergy-design-system/styles` → latest **2.x** (or the version recommended in the release notes)
|
|
62
|
-
|
|
63
|
-
Make sure you update all packages together to avoid version drift.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
### 3. Apply package-level breaking changes
|
|
68
|
-
|
|
69
|
-
With SICK 2025 already in place, your main work for this path is to align with the Synergy 3 API and behavioral changes.
|
|
70
|
-
|
|
71
|
-
-- **Components** ([BREAKING_CHANGES](?path=/docs/packages-components-breaking-changes--docs))
|
|
72
|
-
|
|
73
|
-
- Remove deprecated attributes and properties that were dropped in Synergy 3.
|
|
74
|
-
- Adjust to new defaults (e.g., numeric input strategies, popup behavior, navigation variants).
|
|
75
|
-
- Review any changes in configuration utilities or default settings.
|
|
76
|
-
|
|
77
|
-
-- **Tokens** ([BREAKING_CHANGES](?path=/docs/packages-tokens-breaking-changes--docs))
|
|
78
|
-
|
|
79
|
-
- Verify that your theme imports still point to the correct SICK 2025 theme files.
|
|
80
|
-
- Check for deprecated or renamed tokens and adjust usages accordingly.
|
|
81
|
-
|
|
82
|
-
-- **Assets & Styles** ([BREAKING_CHANGES](?path=/docs/packages-assets-breaking-changes--docs), [BREAKING_CHANGES](?path=/docs/packages-styles-breaking-changes--docs))
|
|
83
|
-
|
|
84
|
-
- Confirm that asset paths and CSS utilities still match your build setup.
|
|
85
|
-
- Apply any required changes to your bundler configuration.
|
|
86
|
-
|
|
87
|
-
Work through these changes systematically to keep the codebase compiling and tests passing.
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
### 4. Verify SICK 2025 configuration on Synergy 3
|
|
92
|
-
|
|
93
|
-
Because SICK 2025 is the primary theme in Synergy 3, your existing SICK 2025 setup should mostly carry over, but verify the following:
|
|
94
|
-
|
|
95
|
-
- **Theme files**: Your imports reference SICK 2025 theme files compatible with Synergy 3.
|
|
96
|
-
- **Theme classes**: You still use `.syn-sick2025-light` and `.syn-sick2025-dark` consistently.
|
|
97
|
-
- **Icons**: Any utilities you used on Synergy 2 (such as `setupIcons('sick2025')` or `setSystemIconLibrary`) are still called at the right time.
|
|
98
|
-
- **Fonts**: The SICK Intl font is loaded through your preferred method.
|
|
99
|
-
|
|
100
|
-
Adjust only if the breaking change documentation suggests changes.
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
### 5. Test and verify
|
|
105
|
-
|
|
106
|
-
- Test the application in all key scenarios and supported browsers.
|
|
107
|
-
- Pay attention to:
|
|
108
|
-
- Controls with changed defaults or removed attributes.
|
|
109
|
-
- Components that rely on the Popover API or similar platform features.
|
|
110
|
-
- Visual differences due to adjustments in spacing, radii, and typography.
|
|
111
|
-
- Run your automated test suite and any visual regression checks.
|
|
112
|
-
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
## Migration: Breaking Changes & Details
|
|
116
|
-
|
|
117
|
-
This path is intentionally focused on the **upgrade from Synergy 2 to Synergy 3** with SICK 2025 already in place.
|
|
118
|
-
For detailed, package-specific changes, consult:
|
|
119
|
-
|
|
120
|
-
- Components: [@synergy-design-system/components BREAKING CHANGES](?path=/docs/packages-components-breaking-changes--docs)
|
|
121
|
-
- Tokens: [@synergy-design-system/tokens BREAKING CHANGES](?path=/docs/packages-tokens-breaking-changes--docs)
|
|
122
|
-
- Assets: [@synergy-design-system/assets BREAKING CHANGES](?path=/docs/packages-assets-breaking-changes--docs)
|
|
123
|
-
- Styles: [@synergy-design-system/styles BREAKING CHANGES](?path=/docs/packages-styles-breaking-changes--docs)
|
|
124
|
-
|
|
125
|
-
Combine this path guide with those references to implement and review changes in your codebase.
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## References & Further Reading
|
|
130
|
-
|
|
131
|
-
- Overall migration paths overview: [Synergy Migration Overview](?path=/docs/migration--docs)
|
|
132
|
-
- SICK 2025 theme migration for Synergy 2: [Migration to SICK 2025 on Synergy 2](?path=/docs/migration-v2-sick-2018-to-v2-sick-2025--docs)
|
|
133
|
-
- Additional Synergy documentation: [Synergy Docs](?path=/docs/welcome--docs)
|
|
@@ -1,411 +0,0 @@
|
|
|
1
|
-
Icons are small standard symbols that are primarily used in screen design.
|
|
2
|
-
Due to their intended use, the icons must be recognizable min size of 16 x 16 pixels.
|
|
3
|
-
|
|
4
|
-
> 👩💻 **Looking for a specific icon?**<br />
|
|
5
|
-
> Use our [icon search](https://synergy-design-system.github.io/?path=/docs/icon-search--docs) to find a matching icon for your need!
|
|
6
|
-
|
|
7
|
-
## Package installation
|
|
8
|
-
|
|
9
|
-
In order for the `syn-icon` component to work, the `@synergy-design-system/assets` package has to be installed.
|
|
10
|
-
|
|
11
|
-
Run the following command to install the required package.
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
# Install the assets library
|
|
15
|
-
npm install --save @synergy-design-system/assets
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Libraries
|
|
19
|
-
|
|
20
|
-
You can register additional icons to use with the <syn-icon> component through icon libraries.
|
|
21
|
-
Icon files can exist locally or on a CORS-enabled endpoint (e.g. a CDN).
|
|
22
|
-
There is no limit to how many icon libraries you can register and there is no cost associated with registering them, as individual icons are only requested when they're used.
|
|
23
|
-
The default icon library contains all of the icons by Synergy Design System, which are based on the [Material Icons](https://fonts.google.com/icons).
|
|
24
|
-
|
|
25
|
-
### How to use the Synergy Design System icons
|
|
26
|
-
|
|
27
|
-
The default base path of the icon library is set to **assets/icons/**.
|
|
28
|
-
To make the <syn-icon> work out of the box, without configuring anything, the used icons can be copied to this path in you application.
|
|
29
|
-
This can either be done manually or with the help of the bundler.
|
|
30
|
-
|
|
31
|
-
### Differences in icon usage between Synergy 2.0 and Synergy 3.0
|
|
32
|
-
|
|
33
|
-
With the upgrade to Synergy 3.0, new icons will be used.
|
|
34
|
-
Those icons are already available as assets in the \`@synergy-design-system/assets\` package.
|
|
35
|
-
When using the new icons, you have to make sure that the icons are available in the \`assets/icons/\` directory of your project.
|
|
36
|
-
The new SICK 2025 icons will be available as `outline` and `fill` variant. `Outline` is the default icon variant and should be used in most cases. `Fill` icons have a slighty different naming. They have the same name as the `outline` icons, but with a suffix of `_fill`. If the `fill` icons should be used without the `_fill` suffix, the icon names need to be renamed. For some examples see the following subchapters.
|
|
37
|
-
|
|
38
|
-
System icons come bundled with the \`@synergy-design-system/components\` package. You may switch to the new icons with the new \`setSystemIconLibrary\` utility provided.
|
|
39
|
-
Please have a look at the following example to see how to switch the icon library.
|
|
40
|
-
Note that if you do not call this function, it will default to the 2018 icon library, which is used in Synergy 2.0 until Synergy 3.0 is released.
|
|
41
|
-
|
|
42
|
-
```javascript
|
|
43
|
-
import { setSystemIconLibrary } from "@synergy-design-system/components";
|
|
44
|
-
|
|
45
|
-
// Switch to the 2025 icon library
|
|
46
|
-
setSystemIconLibrary("sick2025");
|
|
47
|
-
|
|
48
|
-
// Switch back to the 2018 icon library
|
|
49
|
-
setSystemIconLibrary("sick2018");
|
|
50
|
-
|
|
51
|
-
// Switch to the default icon library (2018 for Synergy 2.0, 2025 for Synergy 3.0)
|
|
52
|
-
setSystemIconLibrary();
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
#### Angular + Webpack
|
|
56
|
-
|
|
57
|
-
Including assets from another library can be achieved in angular via configuring the assets configuration in the angular.json file.
|
|
58
|
-
For more information have a look at the [angular documentation](https://angular.io/guide/workspace-config#asset-config).
|
|
59
|
-
|
|
60
|
-
Here's an example that copies the Synergy icons to the path **assets/icons/** of an angular project:
|
|
61
|
-
|
|
62
|
-
##### Synergy icons SICK 2018
|
|
63
|
-
|
|
64
|
-
```json
|
|
65
|
-
// angular.json
|
|
66
|
-
"assets": [
|
|
67
|
-
{
|
|
68
|
-
"glob": "**/*",
|
|
69
|
-
"input": "./node_modules/@synergy-design-system/assets/src/icons",
|
|
70
|
-
"output": "/assets/icons"
|
|
71
|
-
}
|
|
72
|
-
],
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
```html
|
|
76
|
-
<!-- Usage -->
|
|
77
|
-
<syn-icon name="wallpaper"> <syn-icon /></syn-icon>
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
##### Synergy icons SICK 2025 outline
|
|
81
|
-
|
|
82
|
-
```json
|
|
83
|
-
// angular.json
|
|
84
|
-
"assets": [
|
|
85
|
-
{
|
|
86
|
-
"glob": "**/*",
|
|
87
|
-
"input": "./node_modules/@synergy-design-system/assets/src/sick2025/outline",
|
|
88
|
-
"output": "/assets/icons"
|
|
89
|
-
}
|
|
90
|
-
],
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
```html
|
|
94
|
-
<!-- Usage -->
|
|
95
|
-
<syn-icon name="wallpaper"> <syn-icon /></syn-icon>
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
##### Synergy icons SICK 2025 fill
|
|
99
|
-
|
|
100
|
-
```json
|
|
101
|
-
// angular.json
|
|
102
|
-
"assets": [
|
|
103
|
-
{
|
|
104
|
-
"glob": "**/*",
|
|
105
|
-
"input": "./node_modules/@synergy-design-system/assets/src/sick2025/fill",
|
|
106
|
-
"output": "/assets/icons"
|
|
107
|
-
}
|
|
108
|
-
],
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
```html
|
|
112
|
-
<!-- Usage -->
|
|
113
|
-
<syn-icon name="wallpaper_fill"> <syn-icon /></syn-icon>
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
#### Vite
|
|
117
|
-
|
|
118
|
-
Including assets from another library in vite project can be achieved via using the [vite-plugin-static-copy plugin](https://www.npmjs.com/package/vite-plugin-static-copy).
|
|
119
|
-
Here's an example with adapted vite.config.ts that copies the Synergy icons to the path **assets/icons/** of a vite project:
|
|
120
|
-
|
|
121
|
-
##### Synergy icons SICK 2018
|
|
122
|
-
|
|
123
|
-
```js
|
|
124
|
-
// Vite config
|
|
125
|
-
import { defineConfig } from "vite";
|
|
126
|
-
import { viteStaticCopy } from "vite-plugin-static-copy";
|
|
127
|
-
|
|
128
|
-
export default defineConfig({
|
|
129
|
-
plugins: [
|
|
130
|
-
viteStaticCopy({
|
|
131
|
-
targets: [
|
|
132
|
-
{
|
|
133
|
-
src: "node_modules/@synergy-design-system/assets/src/icons/*",
|
|
134
|
-
dest: "./assets/icons/",
|
|
135
|
-
},
|
|
136
|
-
],
|
|
137
|
-
}),
|
|
138
|
-
],
|
|
139
|
-
});
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
```html
|
|
143
|
-
<!-- Usage -->
|
|
144
|
-
<syn-icon name="wallpaper"> <syn-icon /></syn-icon>
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
##### Synergy icons SICK 2025 outline
|
|
148
|
-
|
|
149
|
-
```js
|
|
150
|
-
// Vite config
|
|
151
|
-
import { defineConfig } from "vite";
|
|
152
|
-
import { viteStaticCopy } from "vite-plugin-static-copy";
|
|
153
|
-
|
|
154
|
-
export default defineConfig({
|
|
155
|
-
plugins: [
|
|
156
|
-
viteStaticCopy({
|
|
157
|
-
targets: [
|
|
158
|
-
{
|
|
159
|
-
src: "node_modules/@synergy-design-system/assets/src/sick2025/outline/*",
|
|
160
|
-
dest: "./assets/icons/",
|
|
161
|
-
},
|
|
162
|
-
],
|
|
163
|
-
}),
|
|
164
|
-
],
|
|
165
|
-
});
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
```html
|
|
169
|
-
<!-- Usage -->
|
|
170
|
-
<syn-icon name="wallpaper"> <syn-icon /></syn-icon>
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
##### Synergy icons SICK 2025 fill
|
|
174
|
-
|
|
175
|
-
Usage with `_fill` suffix:
|
|
176
|
-
|
|
177
|
-
```js
|
|
178
|
-
// Vite config
|
|
179
|
-
import { defineConfig } from "vite";
|
|
180
|
-
import { viteStaticCopy } from "vite-plugin-static-copy";
|
|
181
|
-
|
|
182
|
-
export default defineConfig({
|
|
183
|
-
plugins: [
|
|
184
|
-
viteStaticCopy({
|
|
185
|
-
targets: [
|
|
186
|
-
{
|
|
187
|
-
src: "node_modules/@synergy-design-system/assets/src/sick2025/fill/*",
|
|
188
|
-
dest: "./assets/icons/",
|
|
189
|
-
},
|
|
190
|
-
],
|
|
191
|
-
}),
|
|
192
|
-
],
|
|
193
|
-
});
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
```html
|
|
197
|
-
<!-- Usage -->
|
|
198
|
-
<syn-icon name="wallpaper_fill"> <syn-icon /></syn-icon>
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
Usage without `_fill` suffix by renaming files:
|
|
202
|
-
|
|
203
|
-
```js
|
|
204
|
-
// Vite config
|
|
205
|
-
import { defineConfig } from "vite";
|
|
206
|
-
import { viteStaticCopy } from "vite-plugin-static-copy";
|
|
207
|
-
|
|
208
|
-
export default defineConfig({
|
|
209
|
-
plugins: [
|
|
210
|
-
viteStaticCopy({
|
|
211
|
-
targets: [
|
|
212
|
-
{
|
|
213
|
-
src: "node_modules/@synergy-design-system/assets/src/sick2025/fill/*",
|
|
214
|
-
dest: "./assets/icons/",
|
|
215
|
-
rename: (name, extension) =>
|
|
216
|
-
`${name.replace(/_fill$/, "")}.${extension}`,
|
|
217
|
-
},
|
|
218
|
-
],
|
|
219
|
-
}),
|
|
220
|
-
],
|
|
221
|
-
});
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
```html
|
|
225
|
-
<!-- Usage -->
|
|
226
|
-
<syn-icon name="wallpaper"> <syn-icon /></syn-icon>
|
|
227
|
-
```
|
|
228
|
-
|
|
229
|
-
### How to use a custom icon library
|
|
230
|
-
|
|
231
|
-
To register an additional icon library, use the `registerIconLibrary()` function that's exported from `utilities/icon-library.js`.
|
|
232
|
-
At a minimum, you must provide a name and a resolver function. The resolver function translates an icon name to a URL where the corresponding SVG file exists.
|
|
233
|
-
Refer to the examples below to better understand how it works.
|
|
234
|
-
|
|
235
|
-
If necessary, a mutator function can be used to mutate the SVG element before rendering. This is necessary for some libraries due to the many possible ways SVGs are crafted.
|
|
236
|
-
For example, icons should ideally inherit the current text color via currentColor, so you may need to apply fill="currentColor" or stroke="currentColor" to the SVG element using this function.
|
|
237
|
-
|
|
238
|
-
#### Custom icon library provided locally
|
|
239
|
-
|
|
240
|
-
Here's an example that registers an icon library located in the /assets/icons directory.
|
|
241
|
-
|
|
242
|
-
```html
|
|
243
|
-
<script type="module">
|
|
244
|
-
import { registerIconLibrary } from "@synergy-design-system/components";
|
|
245
|
-
|
|
246
|
-
registerIconLibrary("my-icons", {
|
|
247
|
-
resolver: name => `/assets/icons/\${name}.svg`,
|
|
248
|
-
mutator: svg => svg.setAttribute("fill", "currentColor"),
|
|
249
|
-
});
|
|
250
|
-
</script>
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
To display an icon, set the library and name attributes of an syn-icon element.
|
|
254
|
-
|
|
255
|
-
```html
|
|
256
|
-
<!-- This will show the icon located at /assets/icons/smile.svg -->
|
|
257
|
-
<syn-icon library="my-icons" name="smile"></syn-icon>
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
## Referencing Assets
|
|
261
|
-
|
|
262
|
-
Most of the magic behind assets is handled internally by Synergy, but if you need to reference the base path for any reason, there is an exported function called getBasePath(). An optional string argument can be passed, allowing you to get the full path to any asset.
|
|
263
|
-
|
|
264
|
-
```html
|
|
265
|
-
<script type="module">
|
|
266
|
-
import { getBasePath, setBasePath } from "@synergy-design-system/components";
|
|
267
|
-
|
|
268
|
-
setBasePath("/path/to/assets");
|
|
269
|
-
|
|
270
|
-
// ...
|
|
271
|
-
|
|
272
|
-
// Get the base path, e.g. /path/to/assets
|
|
273
|
-
const basePath = getBasePath();
|
|
274
|
-
|
|
275
|
-
// Get the path to an asset, e.g. /path/to/assets/file.ext
|
|
276
|
-
const assetPath = getBasePath("file.ext");
|
|
277
|
-
</script>
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
---
|
|
281
|
-
|
|
282
|
-
## Creating a custom spritesheet
|
|
283
|
-
|
|
284
|
-
For performance reasons, it may be beneficial to create a spritesheet from multiple icons.
|
|
285
|
-
This can be done in multiple ways:
|
|
286
|
-
|
|
287
|
-
### 1. Using the `createSpriteSheet` function
|
|
288
|
-
|
|
289
|
-
The `createSpriteSheet` function is provided by the `@synergy-design-system/assets` package.
|
|
290
|
-
It takes an array of icon keys and returns a string representation of the SVG sprite sheet, intended to be saved into the file system.
|
|
291
|
-
You may also provide an optional second argument to specify the icon set to use, either `sick2018` or `sick2025`. If not provided, it will default to `sick2018` for Synergy V2 and `sick2025` for Synergy V3.
|
|
292
|
-
As we do not know how exactly you want to use the spritesheet, we will just print it to the console in the following example.
|
|
293
|
-
|
|
294
|
-
```typescript
|
|
295
|
-
import { createSpriteSheet } from "@synergy-design-system/assets";
|
|
296
|
-
|
|
297
|
-
const icons = [
|
|
298
|
-
"warning",
|
|
299
|
-
"inventory",
|
|
300
|
-
"battery_charging_full",
|
|
301
|
-
"notifications",
|
|
302
|
-
];
|
|
303
|
-
|
|
304
|
-
// V2 iconsheet
|
|
305
|
-
const sheet = createSpriteSheet(icons, "sick2018");
|
|
306
|
-
|
|
307
|
-
// V3 iconsheet
|
|
308
|
-
const sheet = createSpriteSheet(icons, "sick2025");
|
|
309
|
-
|
|
310
|
-
// Automatically chooses the default, depending on the version of Synergy you are using
|
|
311
|
-
const sheet = createSpriteSheet(icons);
|
|
312
|
-
|
|
313
|
-
console.log(sheet);
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
### 2. Using the the `syn-create-spritesheet` command line utility
|
|
317
|
-
|
|
318
|
-
```bash
|
|
319
|
-
# Move to the root of your project
|
|
320
|
-
cd my-project
|
|
321
|
-
|
|
322
|
-
# Create the spritesheet on the command line.
|
|
323
|
-
# You will need to provide a list of icons to include in the spritesheet.
|
|
324
|
-
# Provide the wanted iconset with the --iconset flag.
|
|
325
|
-
# The following command will make sure to save the spritesheet to the file icons.svg
|
|
326
|
-
|
|
327
|
-
# Generates the icons from the 2025 iconset
|
|
328
|
-
npx syn-create-spritesheet --icons=warning,inventory,battery_charging_full,notifications --iconset=sick2025 > public/icons.svg
|
|
329
|
-
|
|
330
|
-
npx syn-create-spritesheet --icons=warning,inventory,battery_charging_full,notifications > public/icons.svg
|
|
331
|
-
```
|
|
332
|
-
|
|
333
|
-
### 3. Directly generating the spritesheet in vite
|
|
334
|
-
|
|
335
|
-
The following example demonstrates how to generate a spritesheet directly in a vite project, running on every start of the development server.
|
|
336
|
-
|
|
337
|
-
```typescript
|
|
338
|
-
import fs from "node:fs";
|
|
339
|
-
import { defineConfig } from "vite";
|
|
340
|
-
import { createSpriteSheet } from "@synergy-design-system/assets";
|
|
341
|
-
|
|
342
|
-
type SynSpriteSheetOptions = {
|
|
343
|
-
/**
|
|
344
|
-
* The output file name. Make sure the path exists
|
|
345
|
-
*/
|
|
346
|
-
outFileName: string;
|
|
347
|
-
|
|
348
|
-
/**
|
|
349
|
-
* List of icons to include in the sprite sheet
|
|
350
|
-
*/
|
|
351
|
-
icons: Parameters<typeof createSpriteSheet>[0];
|
|
352
|
-
};
|
|
353
|
-
|
|
354
|
-
const defaultOptions: SynSpriteSheetOptions = {
|
|
355
|
-
icons: [],
|
|
356
|
-
outFileName: "./public/synergy-icon-sprites.svg",
|
|
357
|
-
};
|
|
358
|
-
|
|
359
|
-
const synSpriteSheetCreator = (
|
|
360
|
-
options: Partial<SynSpriteSheetOptions> = {},
|
|
361
|
-
) => ({
|
|
362
|
-
buildStart: () => {
|
|
363
|
-
const finalOptions = {
|
|
364
|
-
...defaultOptions,
|
|
365
|
-
...options,
|
|
366
|
-
};
|
|
367
|
-
const { icons, outFileName } = finalOptions;
|
|
368
|
-
|
|
369
|
-
const sheet = createSpriteSheet(icons);
|
|
370
|
-
|
|
371
|
-
// Create the output file
|
|
372
|
-
fs.writeFileSync(outFileName, sheet);
|
|
373
|
-
},
|
|
374
|
-
name: "syn-sprite-sheet-creator",
|
|
375
|
-
});
|
|
376
|
-
|
|
377
|
-
// https://vitejs.dev/config/
|
|
378
|
-
export default defineConfig({
|
|
379
|
-
plugins: [
|
|
380
|
-
synSpriteSheetCreator({
|
|
381
|
-
icons: ["warning", "inventory", "battery_charging_full", "notifications"],
|
|
382
|
-
}),
|
|
383
|
-
],
|
|
384
|
-
server: {
|
|
385
|
-
port: 5173,
|
|
386
|
-
},
|
|
387
|
-
});
|
|
388
|
-
```
|
|
389
|
-
|
|
390
|
-
### 4. Creating sprites for angular usage
|
|
391
|
-
|
|
392
|
-
In an angular project, you can use the following code to create a spritesheet.
|
|
393
|
-
|
|
394
|
-
```typescript
|
|
395
|
-
// Save this to a file called create-spritesheet.ts in your angular project
|
|
396
|
-
import fs from "node:fs";
|
|
397
|
-
import { createSpriteSheet } from "@synergy-design-system/assets";
|
|
398
|
-
|
|
399
|
-
const icons = [
|
|
400
|
-
"warning",
|
|
401
|
-
"inventory",
|
|
402
|
-
"battery_charging_full",
|
|
403
|
-
"notifications",
|
|
404
|
-
];
|
|
405
|
-
const sheet = createSpriteSheet(icons);
|
|
406
|
-
|
|
407
|
-
// Everything in the src/assets dir will be copied by angular per default.
|
|
408
|
-
// Please refer to https://angular.io/guide/workspace-config#assets-configuration
|
|
409
|
-
// for more information about how to configure this setting.
|
|
410
|
-
fs.writeFileSync("src/assets/icons.svg", sheet);
|
|
411
|
-
```
|