igniteui-theming 25.0.0 → 25.0.2
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/README.md +2 -2
- package/dist/mcp/generators/css.js +1 -8
- package/dist/mcp/generators/sass.d.ts +1 -1
- package/dist/mcp/generators/sass.js +26 -3
- package/dist/mcp/index.js +3 -3
- package/dist/mcp/json/components/themes.json.js +17 -17
- package/dist/mcp/knowledge/docs/setup/platform.md.js +4 -0
- package/dist/mcp/knowledge/index.d.ts +1 -1
- package/dist/mcp/knowledge/index.js +1 -4
- package/dist/mcp/knowledge/platform-setup.d.ts +2 -0
- package/dist/mcp/knowledge/platforms/index.d.ts +8 -11
- package/dist/mcp/knowledge/platforms/index.js +22 -14
- package/dist/mcp/knowledge/platforms/react.d.ts +2 -2
- package/dist/mcp/knowledge/platforms/react.js +3 -3
- package/dist/mcp/knowledge/sass-api.d.ts +2 -2
- package/dist/mcp/resources/presets.d.ts +12 -0
- package/dist/mcp/resources/presets.js +44 -1
- package/dist/mcp/tools/descriptions.d.ts +8 -8
- package/dist/mcp/tools/descriptions.js +25 -7
- package/dist/mcp/tools/handlers/component-theme.js +23 -5
- package/dist/mcp/tools/handlers/custom-palette.js +2 -1
- package/dist/mcp/tools/handlers/elevations.js +2 -1
- package/dist/mcp/tools/handlers/layout.js +1 -1
- package/dist/mcp/tools/handlers/palette.js +2 -3
- package/dist/mcp/tools/handlers/platform.js +247 -86
- package/dist/mcp/tools/handlers/theme.js +3 -0
- package/dist/mcp/tools/handlers/typography.js +2 -1
- package/dist/mcp/tools/schemas.d.ts +31 -31
- package/dist/mcp/utils/sass.d.ts +20 -0
- package/dist/mcp/utils/sass.js +16 -0
- package/dist/mcp/utils/types.d.ts +2 -1
- package/dist/mcp/utils/types.js +2 -1
- package/json/components/bootstrap.json +1 -1
- package/json/components/fluent.json +1 -1
- package/json/components/indigo.json +1 -1
- package/json/components/material.json +1 -1
- package/json/components/themes.json +53 -28
- package/package.json +15 -7
- package/sass/animations/_easings.scss +24 -24
- package/sass/bem/_index.scss +16 -14
- package/sass/color/_charts.scss +20 -20
- package/sass/color/_functions.scss +18 -18
- package/sass/color/_mixins.scss +1 -1
- package/sass/elevations/_functions.scss +4 -4
- package/sass/elevations/_mixins.scss +2 -2
- package/sass/elevations/presets/_index.scss +3 -3
- package/sass/elevations/presets/_indigo.scss +16 -16
- package/sass/elevations/presets/_material.scss +3 -3
- package/sass/tailwind/utilities/_common.scss +1 -1
- package/sass/themes/_functions.scss +15 -15
- package/sass/themes/_mixins.scss +9 -9
- package/sass/themes/charts/_category-chart-theme.scss +2 -9
- package/sass/themes/charts/_data-chart-theme.scss +1 -1
- package/sass/themes/charts/_doughnut-chart-theme.scss +1 -1
- package/sass/themes/charts/_financial-chart-theme.scss +2 -9
- package/sass/themes/charts/_funnel-chart-theme.scss +1 -1
- package/sass/themes/charts/_gauge-theme.scss +2 -2
- package/sass/themes/charts/_geo-map-theme.scss +1 -1
- package/sass/themes/charts/_graph-theme.scss +1 -1
- package/sass/themes/charts/_pie-chart-theme.scss +1 -1
- package/sass/themes/charts/_shape-chart-theme.scss +2 -9
- package/sass/themes/charts/_sparkline-theme.scss +2 -2
- package/sass/themes/components/action-strip/_action-strip-theme.scss +1 -1
- package/sass/themes/components/avatar/_avatar-theme.scss +2 -2
- package/sass/themes/components/badge/_badge-theme.scss +2 -2
- package/sass/themes/components/banner/_banner-theme.scss +1 -1
- package/sass/themes/components/bottom-nav/_bottom-nav-theme.scss +2 -2
- package/sass/themes/components/button/_button-theme.scss +5 -5
- package/sass/themes/components/button/_contained-button-theme.scss +5 -5
- package/sass/themes/components/button/_fab-button-theme.scss +5 -5
- package/sass/themes/components/button/_flat-button-theme.scss +17 -17
- package/sass/themes/components/button/_outlined-button-theme.scss +17 -17
- package/sass/themes/components/button-group/_button-group-theme.scss +5 -5
- package/sass/themes/components/calendar/_calendar-theme.scss +18 -20
- package/sass/themes/components/card/_card-theme.scss +3 -3
- package/sass/themes/components/carousel/_carousel-theme.scss +8 -8
- package/sass/themes/components/chat/_chat-theme.scss +1 -1
- package/sass/themes/components/checkbox/_checkbox-theme.scss +6 -6
- package/sass/themes/components/chip/_chip-theme.scss +5 -5
- package/sass/themes/components/column-actions/_column-actions-theme.scss +1 -1
- package/sass/themes/components/combo/_combo-theme.scss +3 -3
- package/sass/themes/components/dialog/_dialog-theme.scss +4 -4
- package/sass/themes/components/divider/_divider-theme.scss +1 -1
- package/sass/themes/components/dock-manager/_dock-manager-theme.scss +1 -1
- package/sass/themes/components/drop-down/_drop-down-theme.scss +10 -10
- package/sass/themes/components/expansion-panel/_expansion-panel-theme.scss +4 -4
- package/sass/themes/components/grid/_grid-summary-theme.scss +3 -3
- package/sass/themes/components/grid/_grid-theme.scss +56 -17
- package/sass/themes/components/grid/_grid-toolbar-theme.scss +1 -1
- package/sass/themes/components/highlight/_highlight-theme.scss +1 -1
- package/sass/themes/components/icon/_icon-theme.scss +1 -1
- package/sass/themes/components/icon-button/_contained-icon-button-theme.scss +8 -8
- package/sass/themes/components/icon-button/_flat-icon-button-theme.scss +12 -12
- package/sass/themes/components/icon-button/_icon-button-theme.scss +4 -4
- package/sass/themes/components/icon-button/_outlined-icon-button-theme.scss +13 -13
- package/sass/themes/components/input/_file-input-theme.scss +1 -1
- package/sass/themes/components/input/_input-theme.scss +23 -23
- package/sass/themes/components/list/_list-theme.scss +6 -6
- package/sass/themes/components/navbar/_navbar-theme.scss +4 -4
- package/sass/themes/components/navdrawer/_navdrawer-theme.scss +3 -3
- package/sass/themes/components/overlay/_overlay-theme.scss +1 -1
- package/sass/themes/components/paginator/_paginator-theme.scss +1 -1
- package/sass/themes/components/progress/_circular-theme.scss +1 -1
- package/sass/themes/components/progress/_linear-theme.scss +1 -1
- package/sass/themes/components/query-builder/_query-builder-theme.scss +2 -2
- package/sass/themes/components/radio/_radio-theme.scss +5 -5
- package/sass/themes/components/rating/_rating-theme.scss +1 -1
- package/sass/themes/components/ripple/_ripple-theme.scss +1 -1
- package/sass/themes/components/scrollbar/_scrollbar-theme.scss +1 -1
- package/sass/themes/components/select/_select-theme.scss +1 -1
- package/sass/themes/components/slider/_slider-theme.scss +7 -7
- package/sass/themes/components/snackbar/_snackbar-theme.scss +2 -2
- package/sass/themes/components/splitter/_splitter-theme.scss +1 -1
- package/sass/themes/components/stepper/_stepper-theme.scss +2 -2
- package/sass/themes/components/switch/_switch-theme.scss +13 -13
- package/sass/themes/components/tabs/_tabs-theme.scss +8 -8
- package/sass/themes/components/time-picker/_time-picker-theme.scss +8 -8
- package/sass/themes/components/toast/_toast-theme.scss +3 -3
- package/sass/themes/components/tooltip/_tooltip-theme.scss +2 -2
- package/sass/themes/components/tree/_tree-theme.scss +17 -17
- package/sass/themes/components/watermark/_watermark-theme.scss +1 -1
- package/sass/themes/schemas/charts/dark/_category-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_data-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_doughnut-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_financial-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_funnel-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_gauge.scss +9 -9
- package/sass/themes/schemas/charts/dark/_geo-map.scss +5 -5
- package/sass/themes/schemas/charts/dark/_graph.scss +5 -5
- package/sass/themes/schemas/charts/dark/_pie-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_shape-chart.scss +5 -5
- package/sass/themes/schemas/charts/dark/_sparkline.scss +5 -5
- package/sass/themes/schemas/charts/light/_category-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_data-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_doughnut-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_financial-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_funnel-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_gauge.scss +19 -19
- package/sass/themes/schemas/charts/light/_geo-map.scss +8 -8
- package/sass/themes/schemas/charts/light/_graph.scss +8 -8
- package/sass/themes/schemas/charts/light/_pie-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_shape-chart.scss +8 -8
- package/sass/themes/schemas/charts/light/_sparkline.scss +9 -9
- package/sass/themes/schemas/components/dark/_action-strip.scss +5 -5
- package/sass/themes/schemas/components/dark/_avatar.scss +5 -5
- package/sass/themes/schemas/components/dark/_badge.scss +5 -5
- package/sass/themes/schemas/components/dark/_banner.scss +5 -5
- package/sass/themes/schemas/components/dark/_bottom-nav.scss +5 -5
- package/sass/themes/schemas/components/dark/_button-group.scss +6 -6
- package/sass/themes/schemas/components/dark/_button.scss +65 -65
- package/sass/themes/schemas/components/dark/_calendar.scss +24 -24
- package/sass/themes/schemas/components/dark/_card.scss +5 -5
- package/sass/themes/schemas/components/dark/_carousel.scss +5 -5
- package/sass/themes/schemas/components/dark/_chat.scss +5 -5
- package/sass/themes/schemas/components/dark/_checkbox.scss +5 -5
- package/sass/themes/schemas/components/dark/_chip.scss +7 -7
- package/sass/themes/schemas/components/dark/_column-actions.scss +5 -5
- package/sass/themes/schemas/components/dark/_combo.scss +6 -6
- package/sass/themes/schemas/components/dark/_date-picker.scss +8 -8
- package/sass/themes/schemas/components/dark/_date-range-picker.scss +5 -5
- package/sass/themes/schemas/components/dark/_dialog.scss +5 -5
- package/sass/themes/schemas/components/dark/_divider.scss +5 -5
- package/sass/themes/schemas/components/dark/_dock-manager.scss +5 -5
- package/sass/themes/schemas/components/dark/_drop-down.scss +5 -5
- package/sass/themes/schemas/components/dark/_expansion-panel.scss +5 -5
- package/sass/themes/schemas/components/dark/_file-input.scss +5 -5
- package/sass/themes/schemas/components/dark/_grid-filtering.scss +5 -5
- package/sass/themes/schemas/components/dark/_grid-summary.scss +9 -9
- package/sass/themes/schemas/components/dark/_grid-toolbar.scss +5 -5
- package/sass/themes/schemas/components/dark/_grid.scss +57 -14
- package/sass/themes/schemas/components/dark/_highlight.scss +7 -7
- package/sass/themes/schemas/components/dark/_icon-button.scss +46 -46
- package/sass/themes/schemas/components/dark/_icon.scss +5 -5
- package/sass/themes/schemas/components/dark/_input-group.scss +6 -6
- package/sass/themes/schemas/components/dark/_label.scss +5 -5
- package/sass/themes/schemas/components/dark/_list.scss +5 -5
- package/sass/themes/schemas/components/dark/_navbar.scss +5 -5
- package/sass/themes/schemas/components/dark/_navdrawer.scss +5 -5
- package/sass/themes/schemas/components/dark/_overlay.scss +5 -5
- package/sass/themes/schemas/components/dark/_pagination.scss +5 -5
- package/sass/themes/schemas/components/dark/_pivot-data-selector.scss +9 -9
- package/sass/themes/schemas/components/dark/_progress.scss +10 -10
- package/sass/themes/schemas/components/dark/_query-builder.scss +3 -3
- package/sass/themes/schemas/components/dark/_radio.scss +5 -5
- package/sass/themes/schemas/components/dark/_rating.scss +5 -5
- package/sass/themes/schemas/components/dark/_resize-indicator.scss +9 -9
- package/sass/themes/schemas/components/dark/_ripple.scss +5 -5
- package/sass/themes/schemas/components/dark/_scrollbar.scss +5 -5
- package/sass/themes/schemas/components/dark/_select.scss +5 -5
- package/sass/themes/schemas/components/dark/_slider.scss +5 -5
- package/sass/themes/schemas/components/dark/_snackbar.scss +6 -6
- package/sass/themes/schemas/components/dark/_splitter.scss +13 -7
- package/sass/themes/schemas/components/dark/_stepper.scss +5 -5
- package/sass/themes/schemas/components/dark/_switch.scss +5 -5
- package/sass/themes/schemas/components/dark/_tabs.scss +5 -5
- package/sass/themes/schemas/components/dark/_tile-manager.scss +11 -11
- package/sass/themes/schemas/components/dark/_time-picker.scss +5 -5
- package/sass/themes/schemas/components/dark/_toast.scss +4 -4
- package/sass/themes/schemas/components/dark/_tooltip.scss +7 -7
- package/sass/themes/schemas/components/dark/_tree.scss +5 -5
- package/sass/themes/schemas/components/dark/_validator.scss +5 -5
- package/sass/themes/schemas/components/dark/_watermark.scss +5 -5
- package/sass/themes/schemas/components/dark/calendar/_base.scss +9 -9
- package/sass/themes/schemas/components/dark/calendar/_days-view.scss +11 -11
- package/sass/themes/schemas/components/dark/calendar/_picker.scss +8 -8
- package/sass/themes/schemas/components/dark/calendar/_year-month-view.scss +11 -11
- package/sass/themes/schemas/components/elevation/_button-group.scss +3 -3
- package/sass/themes/schemas/components/elevation/_carousel.scss +2 -2
- package/sass/themes/schemas/components/light/_action-strip.scss +9 -9
- package/sass/themes/schemas/components/light/_avatar.scss +9 -9
- package/sass/themes/schemas/components/light/_badge.scss +12 -12
- package/sass/themes/schemas/components/light/_banner.scss +9 -9
- package/sass/themes/schemas/components/light/_bottom-nav.scss +12 -12
- package/sass/themes/schemas/components/light/_button-group.scss +14 -14
- package/sass/themes/schemas/components/light/_button.scss +103 -103
- package/sass/themes/schemas/components/light/_calendar.scss +28 -28
- package/sass/themes/schemas/components/light/_card.scss +14 -42
- package/sass/themes/schemas/components/light/_carousel.scss +12 -12
- package/sass/themes/schemas/components/light/_chat.scss +9 -9
- package/sass/themes/schemas/components/light/_checkbox.scss +9 -9
- package/sass/themes/schemas/components/light/_chip.scss +27 -27
- package/sass/themes/schemas/components/light/_column-actions.scss +9 -9
- package/sass/themes/schemas/components/light/_combo.scss +11 -11
- package/sass/themes/schemas/components/light/_date-picker.scss +8 -8
- package/sass/themes/schemas/components/light/_date-range-picker.scss +9 -9
- package/sass/themes/schemas/components/light/_dialog.scss +14 -23
- package/sass/themes/schemas/components/light/_divider.scss +7 -7
- package/sass/themes/schemas/components/light/_dock-manager.scss +9 -9
- package/sass/themes/schemas/components/light/_drop-down.scss +16 -24
- package/sass/themes/schemas/components/light/_expansion-panel.scss +12 -24
- package/sass/themes/schemas/components/light/_file-input.scss +1 -1
- package/sass/themes/schemas/components/light/_grid-filtering.scss +9 -9
- package/sass/themes/schemas/components/light/_grid-summary.scss +13 -26
- package/sass/themes/schemas/components/light/_grid-toolbar.scss +9 -9
- package/sass/themes/schemas/components/light/_grid.scss +162 -68
- package/sass/themes/schemas/components/light/_highlight.scss +10 -10
- package/sass/themes/schemas/components/light/_icon-button.scss +48 -48
- package/sass/themes/schemas/components/light/_icon.scss +9 -9
- package/sass/themes/schemas/components/light/_input-group.scss +17 -26
- package/sass/themes/schemas/components/light/_label.scss +8 -8
- package/sass/themes/schemas/components/light/_list.scss +13 -33
- package/sass/themes/schemas/components/light/_navbar.scss +12 -12
- package/sass/themes/schemas/components/light/_navdrawer.scss +14 -26
- package/sass/themes/schemas/components/light/_overlay.scss +9 -9
- package/sass/themes/schemas/components/light/_pagination.scss +9 -9
- package/sass/themes/schemas/components/light/_pivot-data-selector.scss +9 -9
- package/sass/themes/schemas/components/light/_progress.scss +13 -13
- package/sass/themes/schemas/components/light/_query-builder.scss +10 -10
- package/sass/themes/schemas/components/light/_radio.scss +9 -9
- package/sass/themes/schemas/components/light/_rating.scss +9 -9
- package/sass/themes/schemas/components/light/_resize-indicator.scss +8 -8
- package/sass/themes/schemas/components/light/_ripple.scss +9 -9
- package/sass/themes/schemas/components/light/_scrollbar.scss +9 -9
- package/sass/themes/schemas/components/light/_select.scss +9 -9
- package/sass/themes/schemas/components/light/_slider.scss +11 -17
- package/sass/themes/schemas/components/light/_snackbar.scss +9 -9
- package/sass/themes/schemas/components/light/_splitter.scss +9 -9
- package/sass/themes/schemas/components/light/_stepper.scss +8 -8
- package/sass/themes/schemas/components/light/_switch.scss +9 -9
- package/sass/themes/schemas/components/light/_tabs.scss +9 -9
- package/sass/themes/schemas/components/light/_tile-manager.scss +10 -10
- package/sass/themes/schemas/components/light/_time-picker.scss +10 -19
- package/sass/themes/schemas/components/light/_toast.scss +11 -11
- package/sass/themes/schemas/components/light/_tooltip.scss +10 -10
- package/sass/themes/schemas/components/light/_tree.scss +8 -8
- package/sass/themes/schemas/components/light/_validator.scss +9 -9
- package/sass/themes/schemas/components/light/_watermark.scss +9 -9
- package/sass/themes/schemas/components/light/calendar/_base.scss +9 -29
- package/sass/themes/schemas/components/light/calendar/_days-view.scss +8 -17
- package/sass/themes/schemas/components/light/calendar/_picker.scss +9 -17
- package/sass/themes/schemas/components/light/calendar/_year-month-view.scss +9 -17
- package/sass/typography/_functions.scss +14 -14
- package/sass/typography/_mixins.scss +7 -7
- package/sass/utils/_css.scss +1 -1
- package/sass/utils/_map.scss +5 -5
- package/sass/utils/_math.scss +6 -5
- package/sass/utils/_meta.scss +4 -4
- package/tailwind/utilities/bootstrap.css +1 -1
- package/tailwind/utilities/fluent.css +1 -1
- package/tailwind/utilities/indigo.css +1 -1
- package/tailwind/utilities/material.css +1 -1
package/README.md
CHANGED
|
@@ -152,7 +152,7 @@ The MCP server works with any MCP-compatible client. Here are setup instructions
|
|
|
152
152
|
|
|
153
153
|
```json
|
|
154
154
|
{
|
|
155
|
-
"
|
|
155
|
+
"servers": {
|
|
156
156
|
"igniteui-theming": {
|
|
157
157
|
"command": "node",
|
|
158
158
|
"args": ["/absolute/path/to/igniteui-theming/dist/mcp/index.js"]
|
|
@@ -165,7 +165,7 @@ The MCP server works with any MCP-compatible client. Here are setup instructions
|
|
|
165
165
|
|
|
166
166
|
```json
|
|
167
167
|
{
|
|
168
|
-
"
|
|
168
|
+
"servers": {
|
|
169
169
|
"igniteui-theming": {
|
|
170
170
|
"command": "npx",
|
|
171
171
|
"args": ["-y", "igniteui-theming", "igniteui-theming-mcp"]
|
|
@@ -78,12 +78,7 @@ function formatCssOutput(css, description) {
|
|
|
78
78
|
return header + css;
|
|
79
79
|
}
|
|
80
80
|
async function generateComponentThemeCss(options) {
|
|
81
|
-
const {
|
|
82
|
-
getComponentTheme,
|
|
83
|
-
getComponentSelector,
|
|
84
|
-
getVariablePrefix,
|
|
85
|
-
SCHEMA_PRESETS
|
|
86
|
-
} = await import("../knowledge/index.js");
|
|
81
|
+
const { getComponentTheme, getComponentSelector, SCHEMA_PRESETS } = await import("../knowledge/index.js");
|
|
87
82
|
const { toVariableName } = await import("../utils/sass.js");
|
|
88
83
|
const theme = getComponentTheme(options.component);
|
|
89
84
|
if (!theme) {
|
|
@@ -104,8 +99,6 @@ async function generateComponentThemeCss(options) {
|
|
|
104
99
|
options.platform
|
|
105
100
|
);
|
|
106
101
|
const selector = options.selector || (defaultSelectors.length > 0 ? defaultSelectors[0] : options.component);
|
|
107
|
-
const prefix = getVariablePrefix(options.platform);
|
|
108
|
-
`${prefix}-${options.component}`;
|
|
109
102
|
const sassCode = `
|
|
110
103
|
@use 'sass/themes' as *;
|
|
111
104
|
@use 'sass/themes/schemas' as *;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CreateElevationsInput, CreatePaletteInput, CreateThemeInput, CreateTypographyInput, DesignSystem, GeneratedCode, Platform, ThemeVariant } from '../utils/types.js';
|
|
2
2
|
export type { ElevationsCodeOptions, PaletteCodeOptions, PaletteCodeResult, TypographyCodeOptions, } from '../utils/sass.js';
|
|
3
|
-
export { generateElevationsCode, generateHeader, generatePaletteCode, generateTypographyCode, generateUseStatement, quoteFontFamily, toVariableName, } from '../utils/sass.js';
|
|
3
|
+
export { generateElevationsCode, generateHeader, generatePaletteCode, generatePresetImports, generateTypographyCode, generateUseStatement, quoteFontFamily, toVariableName, } from '../utils/sass.js';
|
|
4
4
|
/**
|
|
5
5
|
* Generate a palette definition.
|
|
6
6
|
*/
|
|
@@ -4,7 +4,7 @@ import { generateAngularThemeSass } from "../knowledge/platforms/angular.js";
|
|
|
4
4
|
import { SCHEMAS } from "../knowledge/platforms/common.js";
|
|
5
5
|
import { generateWebComponentsThemeSass } from "../knowledge/platforms/webcomponents.js";
|
|
6
6
|
import { TYPOGRAPHY_PRESETS } from "../knowledge/typography.js";
|
|
7
|
-
import { toVariableName,
|
|
7
|
+
import { generateUseStatement, toVariableName, generatePresetImports, generateHeader, quoteFontFamily } from "../utils/sass.js";
|
|
8
8
|
import { generateElevationsCode, generatePaletteCode, generateTypographyCode } from "../utils/sass.js";
|
|
9
9
|
function generatePalette(input) {
|
|
10
10
|
const variant = input.variant ?? "light";
|
|
@@ -42,8 +42,16 @@ function generateTypography(input) {
|
|
|
42
42
|
const typeScaleVar = `$${designSystem}-type-scale`;
|
|
43
43
|
const preset = TYPOGRAPHY_PRESETS[designSystem];
|
|
44
44
|
const typeface = input.fontFamily || preset.typeface;
|
|
45
|
+
const presetImports = generatePresetImports({
|
|
46
|
+
platform: input.platform,
|
|
47
|
+
includeTypography: true
|
|
48
|
+
});
|
|
49
|
+
const imports = [
|
|
50
|
+
generateUseStatement(input.platform, input.licensed),
|
|
51
|
+
...presetImports
|
|
52
|
+
].join("\n");
|
|
45
53
|
const code = `${generateHeader(`Typography setup using ${designSystem} type scale`)}
|
|
46
|
-
${
|
|
54
|
+
${imports}
|
|
47
55
|
|
|
48
56
|
// Typography setup with ${designSystem} type scale
|
|
49
57
|
@include typography(
|
|
@@ -60,8 +68,16 @@ ${generateUseStatement(input.platform, input.licensed)}
|
|
|
60
68
|
function generateElevations(input) {
|
|
61
69
|
const preset = input.designSystem ?? "material";
|
|
62
70
|
const elevationsVar = `$${preset}-elevations`;
|
|
71
|
+
const presetImports = generatePresetImports({
|
|
72
|
+
platform: input.platform,
|
|
73
|
+
includeElevations: true
|
|
74
|
+
});
|
|
75
|
+
const imports = [
|
|
76
|
+
generateUseStatement(input.platform, input.licensed),
|
|
77
|
+
...presetImports
|
|
78
|
+
].join("\n");
|
|
63
79
|
const code = `${generateHeader(`Elevations setup using ${preset} preset`)}
|
|
64
|
-
${
|
|
80
|
+
${imports}
|
|
65
81
|
|
|
66
82
|
// Elevations setup with ${preset} shadows
|
|
67
83
|
@include elevations(${elevationsVar});
|
|
@@ -165,12 +181,18 @@ function generateGenericTheme(input, designSystem, variant) {
|
|
|
165
181
|
} else {
|
|
166
182
|
paletteArgs.push(`$surface: ${variant === "dark" ? "#222222" : "white"}`);
|
|
167
183
|
}
|
|
184
|
+
const presetImports = generatePresetImports({
|
|
185
|
+
platform: input.platform,
|
|
186
|
+
includeTypography,
|
|
187
|
+
includeElevations
|
|
188
|
+
});
|
|
168
189
|
const sections = [
|
|
169
190
|
generateHeader(
|
|
170
191
|
`Complete ${variant} theme based on ${designSystem} design system`
|
|
171
192
|
),
|
|
172
193
|
'// NOTE: Specify platform ("angular" or "webcomponents") for optimized output',
|
|
173
194
|
generateUseStatement(input.platform, input.licensed),
|
|
195
|
+
...presetImports,
|
|
174
196
|
"",
|
|
175
197
|
`// ${themeName} palette`,
|
|
176
198
|
`${paletteVar}: palette(`,
|
|
@@ -263,6 +285,7 @@ export {
|
|
|
263
285
|
generateHeader,
|
|
264
286
|
generatePalette,
|
|
265
287
|
generatePaletteCode,
|
|
288
|
+
generatePresetImports,
|
|
266
289
|
generateTheme,
|
|
267
290
|
generateTypography,
|
|
268
291
|
generateTypographyCode,
|
package/dist/mcp/index.js
CHANGED
|
@@ -21,7 +21,7 @@ import { SHADE_LEVELS, ACCENT_SHADE_LEVELS, PALETTE_COLOR_GROUPS } from "./utils
|
|
|
21
21
|
function createServer() {
|
|
22
22
|
const server = new McpServer({
|
|
23
23
|
name: "igniteui-theming",
|
|
24
|
-
version: "v25.0.
|
|
24
|
+
version: "v25.0.2",
|
|
25
25
|
description: "Generate Sass theming code for Ignite UI components - create palettes, typography, elevations, and complete themes"
|
|
26
26
|
});
|
|
27
27
|
registerTools(server);
|
|
@@ -276,7 +276,7 @@ function buildReadResourceDescription() {
|
|
|
276
276
|
const groups = {
|
|
277
277
|
Platforms: [],
|
|
278
278
|
Presets: [],
|
|
279
|
-
|
|
279
|
+
Guidance: [],
|
|
280
280
|
"Layout Docs": []
|
|
281
281
|
};
|
|
282
282
|
for (const r of RESOURCE_DEFINITIONS) {
|
|
@@ -285,7 +285,7 @@ function buildReadResourceDescription() {
|
|
|
285
285
|
} else if (r.uri.includes("://presets/")) {
|
|
286
286
|
groups.Presets.push(r);
|
|
287
287
|
} else if (r.uri.includes("://guidance/")) {
|
|
288
|
-
groups
|
|
288
|
+
groups.Guidance.push(r);
|
|
289
289
|
} else if (r.uri.includes("://docs/")) {
|
|
290
290
|
groups["Layout Docs"].push(r);
|
|
291
291
|
}
|