igniteui-webcomponents 7.3.1 → 7.4.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 +72 -1
- package/animations/easings.d.ts +21 -31
- package/animations/easings.js +21 -34
- package/animations/easings.js.map +1 -1
- package/animations/player.d.ts +8 -16
- package/animations/player.js +5 -8
- package/animations/player.js.map +1 -1
- package/animations/view-transition.d.ts +10 -10
- package/animations/view-transition.js +26 -37
- package/animations/view-transition.js.map +1 -1
- package/components/avatar/themes/avatar.base.css.js +1 -1
- package/components/avatar/themes/avatar.base.css.js.map +1 -1
- package/components/badge/themes/badge.base.css.js +1 -1
- package/components/badge/themes/badge.base.css.js.map +1 -1
- package/components/banner/themes/banner.base.css.js +1 -1
- package/components/banner/themes/banner.base.css.js.map +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js +1 -1
- package/components/banner/themes/shared/banner.indigo.css.js.map +1 -1
- package/components/breadcrumb/breadcrumb.d.ts +74 -0
- package/components/breadcrumb/breadcrumb.js +107 -0
- package/components/breadcrumb/breadcrumb.js.map +1 -0
- package/components/breadcrumb/breadcrumbs.d.ts +60 -0
- package/components/breadcrumb/breadcrumbs.js +50 -0
- package/components/breadcrumb/breadcrumbs.js.map +1 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.d.ts +1 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.js +3 -0
- package/components/breadcrumb/themes/breadcrumb.base.css.js.map +1 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.d.ts +1 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.js +3 -0
- package/components/breadcrumb/themes/breadcrumbs.base.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/dark/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.d.ts +1 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.js +3 -0
- package/components/breadcrumb/themes/light/breadcrumb.shared.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.bootstrap.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.common.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.fluent.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.indigo.css.js.map +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.d.ts +1 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.js +3 -0
- package/components/breadcrumb/themes/shared/breadcrumb.material.css.js.map +1 -0
- package/components/breadcrumb/themes/themes.d.ts +2 -0
- package/components/breadcrumb/themes/themes.js +50 -0
- package/components/breadcrumb/themes/themes.js.map +1 -0
- package/components/button/button.d.ts +0 -2
- package/components/button/button.js.map +1 -1
- package/components/button-group/button-group.d.ts +42 -12
- package/components/button-group/button-group.js +82 -34
- package/components/button-group/button-group.js.map +1 -1
- package/components/button-group/toggle-button.d.ts +6 -1
- package/components/button-group/toggle-button.js +28 -2
- package/components/button-group/toggle-button.js.map +1 -1
- package/components/calendar/base.d.ts +7 -2
- package/components/calendar/base.js +10 -4
- package/components/calendar/base.js.map +1 -1
- package/components/calendar/calendar.d.ts +6 -3
- package/components/calendar/calendar.js +41 -14
- package/components/calendar/calendar.js.map +1 -1
- package/components/calendar/days-view/days-view.d.ts +5 -8
- package/components/calendar/days-view/days-view.js +7 -16
- package/components/calendar/days-view/days-view.js.map +1 -1
- package/components/calendar/helpers.d.ts +13 -0
- package/components/calendar/helpers.js +15 -0
- package/components/calendar/helpers.js.map +1 -1
- package/components/calendar/themes/calendar.base.css.js +1 -1
- package/components/calendar/themes/calendar.base.css.js.map +1 -1
- package/components/calendar/themes/days-view.base.css.js +1 -1
- package/components/calendar/themes/days-view.base.css.js.map +1 -1
- package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/calendar.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js +1 -1
- package/components/calendar/themes/shared/bootstrap/days-view.bootstrap.css.js.map +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js +1 -1
- package/components/calendar/themes/shared/fluent/days-view.fluent.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/calendar.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js +1 -1
- package/components/calendar/themes/shared/indigo/days-view.indigo.css.js.map +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js +1 -1
- package/components/calendar/themes/shared/material/days-view.material.css.js.map +1 -1
- package/components/calendar/themes/year-month-view.base.css.js +1 -1
- package/components/calendar/themes/year-month-view.base.css.js.map +1 -1
- package/components/card/themes/container.base.css.js +1 -1
- package/components/card/themes/container.base.css.js.map +1 -1
- package/components/carousel/carousel-indicator.js +1 -0
- package/components/carousel/carousel-indicator.js.map +1 -1
- package/components/carousel/carousel-slide.d.ts +1 -1
- package/components/carousel/carousel-slide.js.map +1 -1
- package/components/carousel/carousel.d.ts +3 -3
- package/components/carousel/carousel.js.map +1 -1
- package/components/carousel/themes/carousel.base.css.js +1 -1
- package/components/carousel/themes/carousel.base.css.js.map +1 -1
- package/components/carousel/themes/shared/carousel.indigo.css.js +1 -1
- package/components/carousel/themes/shared/carousel.indigo.css.js.map +1 -1
- package/components/chat/chat-input.d.ts +1 -2
- package/components/chat/chat-input.js +1 -1
- package/components/chat/chat-input.js.map +1 -1
- package/components/chat/chat-state.d.ts +8 -9
- package/components/chat/chat-state.js.map +1 -1
- package/components/chat/chat.d.ts +1 -3
- package/components/chat/chat.js +2 -2
- package/components/chat/chat.js.map +1 -1
- package/components/chat/message-attachments.d.ts +6 -15
- package/components/chat/message-attachments.js.map +1 -1
- package/components/chat/themes/chat.base.css.js +1 -1
- package/components/chat/themes/chat.base.css.js.map +1 -1
- package/components/chat/themes/message.base.css.js +1 -1
- package/components/chat/themes/message.base.css.js.map +1 -1
- package/components/chat/utils.d.ts +0 -1
- package/components/chat/utils.js +1 -1
- package/components/chat/utils.js.map +1 -1
- package/components/checkbox/checkbox-base.d.ts +1 -1
- package/components/checkbox/checkbox.js +1 -1
- package/components/checkbox/checkbox.js.map +1 -1
- package/components/checkbox/themes/checkbox.base.css.js +1 -1
- package/components/checkbox/themes/checkbox.base.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/checkbox/checkbox.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.bootstrap.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.fluent.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.indigo.css.js.map +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js +1 -1
- package/components/checkbox/themes/shared/switch/switch.material.css.js.map +1 -1
- package/components/checkbox/themes/switch.base.css.js +1 -1
- package/components/checkbox/themes/switch.base.css.js.map +1 -1
- package/components/chip/chip.d.ts +2 -2
- package/components/chip/chip.js.map +1 -1
- package/components/color-picker/color-picker.d.ts +35 -34
- package/components/color-picker/color-picker.js +9 -4
- package/components/color-picker/color-picker.js.map +1 -1
- package/components/color-picker/common.d.ts +0 -2
- package/components/color-picker/common.js +2 -2
- package/components/color-picker/common.js.map +1 -1
- package/components/color-picker/converters.js.map +1 -1
- package/components/color-picker/picker-canvas.js.map +1 -1
- package/components/color-picker/themes/color-picker.base.css.js +1 -1
- package/components/color-picker/themes/color-picker.base.css.js.map +1 -1
- package/components/combo/combo.d.ts +18 -20
- package/components/combo/combo.js +8 -2
- package/components/combo/combo.js.map +1 -1
- package/components/combo/controllers/data.d.ts +7 -10
- package/components/combo/controllers/data.js.map +1 -1
- package/components/combo/themes/combo-item.base.css.js +1 -1
- package/components/combo/themes/combo-item.base.css.js.map +1 -1
- package/components/combo/themes/combo.base.css.js +1 -1
- package/components/combo/themes/combo.base.css.js.map +1 -1
- package/components/combo/themes/shared/combo.bootstrap.css.js +1 -1
- package/components/combo/themes/shared/combo.bootstrap.css.js.map +1 -1
- package/components/date-picker/date-picker.base.d.ts +33 -29
- package/components/date-picker/date-picker.base.js +15 -4
- package/components/date-picker/date-picker.base.js.map +1 -1
- package/components/date-picker/date-picker.d.ts +1 -1
- package/components/date-picker/date-picker.js +5 -3
- package/components/date-picker/date-picker.js.map +1 -1
- package/components/date-picker/themes/date-picker.base.css.js +1 -1
- package/components/date-picker/themes/date-picker.base.css.js.map +1 -1
- package/components/date-range-picker/date-range-input.d.ts +0 -2
- package/components/date-range-picker/date-range-input.js +0 -6
- package/components/date-range-picker/date-range-input.js.map +1 -1
- package/components/date-range-picker/date-range-picker.base.css.js +1 -1
- package/components/date-range-picker/date-range-picker.base.css.js.map +1 -1
- package/components/date-range-picker/date-range-picker.d.ts +22 -31
- package/components/date-range-picker/date-range-picker.js +7 -7
- package/components/date-range-picker/date-range-picker.js.map +1 -1
- package/components/date-range-picker/i18n.d.ts +21 -0
- package/components/date-range-picker/i18n.js +10 -0
- package/components/date-range-picker/i18n.js.map +1 -0
- package/components/date-range-picker/predefined-ranges-area.base.css.js +1 -1
- package/components/date-range-picker/predefined-ranges-area.base.css.js.map +1 -1
- package/components/date-range-picker/predefined-ranges-area.d.ts +3 -3
- package/components/date-range-picker/predefined-ranges-area.js +2 -5
- package/components/date-range-picker/predefined-ranges-area.js.map +1 -1
- package/components/date-range-picker/validators.d.ts +0 -4
- package/components/date-range-picker/validators.js +4 -4
- package/components/date-range-picker/validators.js.map +1 -1
- package/components/date-time-input/date-time-input.base.d.ts +39 -37
- package/components/date-time-input/date-time-input.base.js +6 -0
- package/components/date-time-input/date-time-input.base.js.map +1 -1
- package/components/date-time-input/date-time-input.d.ts +1 -11
- package/components/date-time-input/date-time-input.js +0 -6
- package/components/date-time-input/date-time-input.js.map +1 -1
- package/components/date-time-input/datetime-mask-parser.d.ts +0 -10
- package/components/date-time-input/datetime-mask-parser.js +1 -1
- package/components/date-time-input/datetime-mask-parser.js.map +1 -1
- package/components/dialog/dialog.js.map +1 -1
- package/components/divider/themes/divider.base.css.js +1 -1
- package/components/divider/themes/divider.base.css.js.map +1 -1
- package/components/dropdown/dropdown-group.d.ts +2 -10
- package/components/dropdown/dropdown-group.js +2 -27
- package/components/dropdown/dropdown-group.js.map +1 -1
- package/components/dropdown/dropdown.d.ts +17 -23
- package/components/dropdown/dropdown.js +5 -17
- package/components/dropdown/dropdown.js.map +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js +1 -1
- package/components/dropdown/themes/dropdown-item.base.css.js.map +1 -1
- package/components/dropdown/themes/dropdown.base.css.js +1 -1
- package/components/dropdown/themes/dropdown.base.css.js.map +1 -1
- package/components/file-input/file-input.d.ts +2 -2
- package/components/file-input/file-input.js.map +1 -1
- package/components/file-input/themes/file-input.base.css.js +1 -1
- package/components/file-input/themes/file-input.base.css.js.map +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js +1 -1
- package/components/file-input/themes/shared/file-input.bootstrap.css.js.map +1 -1
- package/components/icon/icon.d.ts +1 -1
- package/components/icon/icon.registry.d.ts +6 -6
- package/components/icon/icon.registry.js.map +1 -1
- package/components/input/input.d.ts +3 -3
- package/components/input/input.js.map +1 -1
- package/components/input/themes/shared/input.indigo.css.js +1 -1
- package/components/input/themes/shared/input.indigo.css.js.map +1 -1
- package/components/input/themes/shared/input.material.css.js +1 -1
- package/components/input/themes/shared/input.material.css.js.map +1 -1
- package/components/list/themes/item.base.css.js +1 -1
- package/components/list/themes/item.base.css.js.map +1 -1
- package/components/mask-input/mask-history.d.ts +22 -18
- package/components/mask-input/mask-history.js.map +1 -1
- package/components/mask-input/mask-input.d.ts +1 -1
- package/components/mask-input/mask-parser.d.ts +11 -13
- package/components/mask-input/mask-parser.js.map +1 -1
- package/components/nav-drawer/themes/item.base.css.js +1 -1
- package/components/nav-drawer/themes/item.base.css.js.map +1 -1
- package/components/popover/popover.d.ts +45 -34
- package/components/popover/popover.js +54 -122
- package/components/popover/popover.js.map +1 -1
- package/components/popover/position/arrow.d.ts +19 -0
- package/components/popover/position/arrow.js +33 -0
- package/components/popover/position/arrow.js.map +1 -0
- package/components/popover/position/floating.d.ts +40 -0
- package/components/popover/position/floating.js +146 -0
- package/components/popover/position/floating.js.map +1 -0
- package/components/popover/position/native.d.ts +45 -0
- package/components/popover/position/native.js +158 -0
- package/components/popover/position/native.js.map +1 -0
- package/components/popover/position/strategy.d.ts +37 -0
- package/components/popover/position/strategy.js +21 -0
- package/components/popover/position/strategy.js.map +1 -0
- package/components/popover/position/types.d.ts +26 -0
- package/components/popover/position/types.js +15 -0
- package/components/popover/position/types.js.map +1 -0
- package/components/popover/themes/light/popover.base.css.js +1 -1
- package/components/popover/themes/light/popover.base.css.js.map +1 -1
- package/components/progress/circular-progress.d.ts +0 -5
- package/components/progress/circular-progress.js.map +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
- package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.d.ts +1 -0
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js +3 -0
- package/components/progress/themes/linear/shared/linear.progress.bootstrap.css.js.map +1 -0
- package/components/progress/themes/linear/themes.js +3 -2
- package/components/progress/themes/linear/themes.js.map +1 -1
- package/components/qr-code/qr-code.d.ts +29 -2
- package/components/qr-code/qr-code.js +56 -13
- package/components/qr-code/qr-code.js.map +1 -1
- package/components/qr-code/renderer/export.d.ts +28 -0
- package/components/qr-code/renderer/export.js +120 -0
- package/components/qr-code/renderer/export.js.map +1 -0
- package/components/qr-code/types.d.ts +26 -0
- package/components/qr-code/types.js.map +1 -1
- package/components/radio/radio.d.ts +4 -4
- package/components/radio/radio.js +17 -14
- package/components/radio/radio.js.map +1 -1
- package/components/radio/themes/radio.base.css.js +1 -1
- package/components/radio/themes/radio.base.css.js.map +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js +1 -1
- package/components/radio/themes/shared/radio.bootstrap.css.js.map +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js +1 -1
- package/components/radio/themes/shared/radio.indigo.css.js.map +1 -1
- package/components/radio-group/radio-group.js.map +1 -1
- package/components/rating/rating.d.ts +6 -6
- package/components/rating/rating.js.map +1 -1
- package/components/select/select-group.d.ts +5 -10
- package/components/select/select-group.js +10 -34
- package/components/select/select-group.js.map +1 -1
- package/components/select/select.d.ts +12 -20
- package/components/select/select.js +4 -14
- package/components/select/select.js.map +1 -1
- package/components/select/themes/select.base.css.js +1 -1
- package/components/select/themes/select.base.css.js.map +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js +1 -1
- package/components/select/themes/shared/select.bootstrap.css.js.map +1 -1
- package/components/slider/themes/shared/slider.material.css.js +1 -1
- package/components/slider/themes/shared/slider.material.css.js.map +1 -1
- package/components/slider/themes/slider.base.css.js +1 -1
- package/components/slider/themes/slider.base.css.js.map +1 -1
- package/components/snackbar/themes/snackbar.base.css.js +1 -1
- package/components/snackbar/themes/snackbar.base.css.js.map +1 -1
- package/components/splitter/splitter.d.ts +6 -6
- package/components/splitter/splitter.js.map +1 -1
- package/components/splitter/themes/splitter.base.css.js +1 -1
- package/components/splitter/themes/splitter.base.css.js.map +1 -1
- package/components/stepper/themes/step/step.base.css.js +1 -1
- package/components/stepper/themes/step/step.base.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.bootstrap.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.fluent.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.fluent.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.indigo.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.indigo.css.js.map +1 -1
- package/components/tabs/themes/shared/tab/tab.material.css.js +1 -1
- package/components/tabs/themes/shared/tab/tab.material.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.fluent.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.fluent.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.indigo.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.indigo.css.js.map +1 -1
- package/components/tabs/themes/shared/tabs/tabs.material.css.js +1 -1
- package/components/tabs/themes/shared/tabs/tabs.material.css.js.map +1 -1
- package/components/tabs/themes/tab.base.css.js +1 -1
- package/components/tabs/themes/tab.base.css.js.map +1 -1
- package/components/textarea/textarea.d.ts +1 -1
- package/components/textarea/textarea.js.map +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js +1 -1
- package/components/textarea/themes/shared/textarea.bootstrap.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js +1 -1
- package/components/textarea/themes/shared/textarea.common.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js +1 -1
- package/components/textarea/themes/shared/textarea.fluent.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js +1 -1
- package/components/textarea/themes/shared/textarea.indigo.css.js.map +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js +1 -1
- package/components/textarea/themes/shared/textarea.material.css.js.map +1 -1
- package/components/tile-manager/themes/tile.base.css.js +1 -1
- package/components/tile-manager/themes/tile.base.css.js.map +1 -1
- package/components/tile-manager/tile-manager.d.ts +6 -7
- package/components/tile-manager/tile-manager.js.map +1 -1
- package/components/tile-manager/tile.d.ts +3 -3
- package/components/tile-manager/tile.js.map +1 -1
- package/components/toast/themes/toast.base.css.js +1 -1
- package/components/toast/themes/toast.base.css.js.map +1 -1
- package/components/toast/toast.d.ts +0 -2
- package/components/toast/toast.js.map +1 -1
- package/components/tooltip/controller.js.map +1 -1
- package/components/tooltip/service.js +4 -5
- package/components/tooltip/service.js.map +1 -1
- package/components/tooltip/themes/tooltip.base.css.js +1 -1
- package/components/tooltip/themes/tooltip.base.css.js.map +1 -1
- package/components/tooltip/tooltip.d.ts +34 -13
- package/components/tooltip/tooltip.js +8 -4
- package/components/tooltip/tooltip.js.map +1 -1
- package/components/tree/themes/item.base.css.js +1 -1
- package/components/tree/themes/item.base.css.js.map +1 -1
- package/components/tree/tree-item.d.ts +6 -6
- package/components/tree/tree-item.js.map +1 -1
- package/components/tree/tree.navigation.d.ts +5 -6
- package/components/tree/tree.navigation.js.map +1 -1
- package/components/tree/tree.selection.js.map +1 -1
- package/components/types.d.ts +1 -1
- package/components/types.js.map +1 -1
- package/components/validation-container/themes/validator.base.css.js +1 -1
- package/components/validation-container/themes/validator.base.css.js.map +1 -1
- package/components/validation-container/validation-container.d.ts +10 -12
- package/components/validation-container/validation-container.js +14 -17
- package/components/validation-container/validation-container.js.map +1 -1
- package/components/virtualization/engine.d.ts +5 -5
- package/components/virtualization/engine.js.map +1 -1
- package/components/virtualization/virtualization.d.ts +61 -63
- package/components/virtualization/virtualization.js +6 -5
- package/components/virtualization/virtualization.js.map +1 -1
- package/custom-elements.json +16769 -19698
- package/igniteui-webcomponents.css-data.json +2 -2
- package/igniteui-webcomponents.html-data.json +1 -1
- package/index.d.ts +3 -1
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internals/abort-handler.d.ts +13 -25
- package/internals/abort-handler.js +4 -6
- package/internals/abort-handler.js.map +1 -1
- package/internals/context.d.ts +13 -7
- package/internals/context.js +2 -1
- package/internals/context.js.map +1 -1
- package/internals/controllers/adopt-styles.d.ts +19 -20
- package/internals/controllers/adopt-styles.js +3 -8
- package/internals/controllers/adopt-styles.js.map +1 -1
- package/internals/controllers/aria-projection.d.ts +56 -55
- package/internals/controllers/aria-projection.js +14 -15
- package/internals/controllers/aria-projection.js.map +1 -1
- package/internals/controllers/async-consumer.js.map +1 -1
- package/internals/controllers/command.d.ts +15 -30
- package/internals/controllers/command.js +2 -7
- package/internals/controllers/command.js.map +1 -1
- package/internals/controllers/context-provider.d.ts +7 -13
- package/internals/controllers/context-provider.js.map +1 -1
- package/internals/controllers/focus-ring.d.ts +10 -30
- package/internals/controllers/focus-ring.js +6 -12
- package/internals/controllers/focus-ring.js.map +1 -1
- package/internals/controllers/fullscreen.d.ts +7 -23
- package/internals/controllers/fullscreen.js +3 -9
- package/internals/controllers/fullscreen.js.map +1 -1
- package/internals/controllers/gestures.d.ts +10 -29
- package/internals/controllers/gestures.js +1 -3
- package/internals/controllers/gestures.js.map +1 -1
- package/internals/controllers/group.d.ts +13 -30
- package/internals/controllers/group.js.map +1 -1
- package/internals/controllers/host-listeners.d.ts +28 -0
- package/internals/controllers/host-listeners.js +27 -0
- package/internals/controllers/host-listeners.js.map +1 -0
- package/internals/controllers/id-resolver.d.ts +8 -9
- package/internals/controllers/id-resolver.js +6 -14
- package/internals/controllers/id-resolver.js.map +1 -1
- package/internals/controllers/internals.d.ts +53 -104
- package/internals/controllers/internals.js +40 -13
- package/internals/controllers/internals.js.map +1 -1
- package/internals/controllers/key-bindings.d.ts +61 -158
- package/internals/controllers/key-bindings.js +68 -67
- package/internals/controllers/key-bindings.js.map +1 -1
- package/internals/controllers/keys.d.ts +32 -0
- package/internals/controllers/keys.js +20 -0
- package/internals/controllers/keys.js.map +1 -0
- package/internals/controllers/mutation-observer.d.ts +14 -37
- package/internals/controllers/mutation-observer.js +1 -1
- package/internals/controllers/mutation-observer.js.map +1 -1
- package/internals/controllers/resize-observer.d.ts +9 -19
- package/internals/controllers/resize-observer.js.map +1 -1
- package/internals/controllers/root-click.d.ts +11 -42
- package/internals/controllers/root-click.js +4 -6
- package/internals/controllers/root-click.js.map +1 -1
- package/internals/controllers/roving-focus.d.ts +16 -35
- package/internals/controllers/roving-focus.js.map +1 -1
- package/internals/controllers/slot.d.ts +25 -54
- package/internals/controllers/slot.js +6 -6
- package/internals/controllers/slot.js.map +1 -1
- package/internals/controllers/toggle.d.ts +44 -48
- package/internals/controllers/toggle.js.map +1 -1
- package/internals/date/compare.js.map +1 -1
- package/internals/date/converters.d.ts +10 -7
- package/internals/date/converters.js.map +1 -1
- package/internals/date/model.d.ts +9 -16
- package/internals/date/model.js +22 -25
- package/internals/date/model.js.map +1 -1
- package/internals/decorators/blazorAdditionalDependencies.d.ts +4 -2
- package/internals/decorators/blazorAdditionalDependencies.js.map +1 -1
- package/internals/decorators/blazorDeepImport.d.ts +1 -3
- package/internals/decorators/blazorDeepImport.js.map +1 -1
- package/internals/decorators/blazorInclude.d.ts +3 -2
- package/internals/decorators/blazorInclude.js.map +1 -1
- package/internals/decorators/blazorIndirectRender.d.ts +1 -3
- package/internals/decorators/blazorIndirectRender.js.map +1 -1
- package/internals/decorators/blazorSuppressComponent.d.ts +1 -3
- package/internals/decorators/blazorSuppressComponent.js.map +1 -1
- package/internals/decorators/coerced-property.d.ts +14 -20
- package/internals/decorators/coerced-property.js.map +1 -1
- package/internals/decorators/shadow-options.d.ts +2 -5
- package/internals/decorators/shadow-options.js.map +1 -1
- package/internals/definitions/defineAllComponents.js +6 -0
- package/internals/definitions/defineAllComponents.js.map +1 -1
- package/internals/directives/drag.d.ts +51 -81
- package/internals/directives/drag.js +27 -89
- package/internals/directives/drag.js.map +1 -1
- package/internals/directives/pointer-operation.d.ts +75 -0
- package/internals/directives/pointer-operation.js +92 -0
- package/internals/directives/pointer-operation.js.map +1 -0
- package/internals/directives/resize.d.ts +36 -64
- package/internals/directives/resize.js +18 -85
- package/internals/directives/resize.js.map +1 -1
- package/internals/i18n/EN/calendar.resources.d.ts +8 -2
- package/internals/i18n/EN/calendar.resources.js +2 -2
- package/internals/i18n/EN/calendar.resources.js.map +1 -1
- package/internals/i18n/EN/chat.resources.d.ts +8 -2
- package/internals/i18n/EN/chat.resources.js +3 -10
- package/internals/i18n/EN/chat.resources.js.map +1 -1
- package/internals/i18n/EN/date-picker.resources.d.ts +6 -4
- package/internals/i18n/EN/date-picker.resources.js +1 -7
- package/internals/i18n/EN/date-picker.resources.js.map +1 -1
- package/internals/i18n/EN/date-range-picker.resources.d.ts +9 -2
- package/internals/i18n/EN/date-range-picker.resources.js +2 -2
- package/internals/i18n/EN/date-range-picker.resources.js.map +1 -1
- package/internals/i18n/i18n-controller.d.ts +44 -46
- package/internals/i18n/i18n-controller.js +46 -33
- package/internals/i18n/i18n-controller.js.map +1 -1
- package/internals/i18n/utils.d.ts +9 -4
- package/internals/i18n/utils.js +4 -27
- package/internals/i18n/utils.js.map +1 -1
- package/internals/mixins/alert.d.ts +10 -25
- package/internals/mixins/alert.js.map +1 -1
- package/internals/mixins/combo-box.d.ts +21 -11
- package/internals/mixins/combo-box.js +16 -22
- package/internals/mixins/combo-box.js.map +1 -1
- package/internals/mixins/event-emitter.js +9 -11
- package/internals/mixins/event-emitter.js.map +1 -1
- package/internals/mixins/forms/associated-required.d.ts +4 -4
- package/internals/mixins/forms/associated-required.js.map +1 -1
- package/internals/mixins/forms/associated.d.ts +4 -2
- package/internals/mixins/forms/associated.js +8 -19
- package/internals/mixins/forms/associated.js.map +1 -1
- package/internals/mixins/forms/form-transformers.js.map +1 -1
- package/internals/mixins/forms/types.d.ts +24 -80
- package/internals/mixins/forms/types.js.map +1 -1
- package/internals/mixins/group.d.ts +18 -0
- package/internals/mixins/group.js +37 -0
- package/internals/mixins/group.js.map +1 -0
- package/internals/mixins/i18n.d.ts +10 -16
- package/internals/mixins/i18n.js.map +1 -1
- package/internals/mixins/mask-behavior.d.ts +8 -22
- package/internals/mixins/mask-behavior.js +1 -2
- package/internals/mixins/mask-behavior.js.map +1 -1
- package/internals/mixins/option.d.ts +1 -2
- package/internals/mixins/option.js +2 -1
- package/internals/mixins/option.js.map +1 -1
- package/internals/part-map.d.ts +4 -2
- package/internals/part-map.js +1 -1
- package/internals/part-map.js.map +1 -1
- package/internals/templates/input-shell.d.ts +8 -17
- package/internals/templates/input-shell.js +4 -1
- package/internals/templates/input-shell.js.map +1 -1
- package/internals/templates/masked-input.d.ts +7 -8
- package/internals/templates/masked-input.js.map +1 -1
- package/internals/templates/slotted-icon.d.ts +7 -12
- package/internals/templates/slotted-icon.js.map +1 -1
- package/internals/templates/toggle-shell.d.ts +6 -7
- package/internals/templates/toggle-shell.js.map +1 -1
- package/internals/timing.d.ts +5 -14
- package/internals/timing.js.map +1 -1
- package/internals/utils/arrays.d.ts +21 -21
- package/internals/utils/arrays.js +14 -0
- package/internals/utils/arrays.js.map +1 -1
- package/internals/utils/dom.d.ts +51 -39
- package/internals/utils/dom.js +1 -2
- package/internals/utils/dom.js.map +1 -1
- package/internals/utils/events.d.ts +29 -16
- package/internals/utils/events.js +9 -1
- package/internals/utils/events.js.map +1 -1
- package/internals/utils/lit.d.ts +5 -2
- package/internals/utils/lit.js.map +1 -1
- package/internals/utils/math.d.ts +8 -6
- package/internals/utils/math.js.map +1 -1
- package/internals/utils/objects.d.ts +3 -20
- package/internals/utils/objects.js +1 -39
- package/internals/utils/objects.js.map +1 -1
- package/internals/utils/strings.d.ts +9 -11
- package/internals/utils/strings.js.map +1 -1
- package/internals/utils/types.d.ts +16 -3
- package/internals/utils/types.js +3 -0
- package/internals/utils/types.js.map +1 -1
- package/internals/validators.d.ts +9 -8
- package/internals/validators.js +12 -6
- package/internals/validators.js.map +1 -1
- package/package.json +1 -1
- package/skills/README.md +3 -0
- package/skills/igniteui-wc-figma-to-app/SKILL.md +907 -0
- package/skills/igniteui-wc-figma-to-app/references/asset-extraction.md +363 -0
- package/skills/igniteui-wc-figma-to-app/references/design-token-bridge.md +407 -0
- package/skills/igniteui-wc-figma-to-app/references/figma-component-map.md +325 -0
- package/skills/igniteui-wc-figma-to-app/references/mcp-setup.md +409 -0
- package/skills/igniteui-wc-figma-to-app/references/validation-patterns.md +376 -0
- package/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +21 -0
- package/skills/igniteui-wc-integrate-with-framework/SKILL.md +4 -3
- package/skills/igniteui-wc-integrate-with-framework/references/vanilla-js.md +14 -0
- package/skills/igniteui-wc-migrate-grid-lite-to-premium/SKILL.md +12 -2
- package/theming/config.d.ts +14 -5
- package/theming/config.js +38 -18
- package/theming/config.js.map +1 -1
- package/theming/context.d.ts +1 -23
- package/theming/context.js.map +1 -1
- package/theming/theming-controller.d.ts +2 -32
- package/theming/theming-controller.js +15 -21
- package/theming/theming-controller.js.map +1 -1
- package/theming/theming-event.d.ts +0 -7
- package/theming/theming-event.js +0 -13
- package/theming/theming-event.js.map +1 -1
- package/theming/types.d.ts +1 -8
- package/theming/types.js.map +1 -1
- package/web-types.json +3 -3
- package/animations/presets/slide/index.d.ts +0 -3
- package/animations/presets/slide/index.js +0 -16
- package/animations/presets/slide/index.js.map +0 -1
- package/internals/controllers/root-scroll.d.ts +0 -31
- package/internals/controllers/root-scroll.js +0 -71
- package/internals/controllers/root-scroll.js.map +0 -1
- package/theming/utils.d.ts +0 -11
- package/theming/utils.js +0 -20
- package/theming/utils.js.map +0 -1
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
# Figma Variables → Ignite UI Web Components Theming Bridge
|
|
2
|
+
|
|
3
|
+
> **Part of the [`igniteui-wc-figma-to-app`](../SKILL.md) skill.**
|
|
4
|
+
>
|
|
5
|
+
> Use this file in Phase 3 to translate Figma variable values (from
|
|
6
|
+
> `figma_get_variable_defs`) into Ignite UI Theming MCP inputs. Read it in full before
|
|
7
|
+
> calling any theming tool. For the theming system itself — palette semantics, token
|
|
8
|
+
> rules, compound components — the source of truth is
|
|
9
|
+
> [`igniteui-wc-customize-component-theme`](../../igniteui-wc-customize-component-theme/SKILL.md).
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## How the Indigo.Design UI Kits Organize Variables
|
|
14
|
+
|
|
15
|
+
The **Indigo.Design UI Kits** are Figma component libraries published by Infragistics.
|
|
16
|
+
Designers build their own app frames in Figma using these kits as shared libraries. The
|
|
17
|
+
kits come in four design-system variants, each with light and dark themes:
|
|
18
|
+
|
|
19
|
+
| Kit variant | Figma library name pattern | `designSystem` value |
|
|
20
|
+
| ---------------------- | ----------------------------------------------- | -------------------- |
|
|
21
|
+
| Material (most common) | `Indigo.Design UI Kit for Material` | `"material"` |
|
|
22
|
+
| Fluent | `Indigo.Design UI Kit for Fluent` | `"fluent"` |
|
|
23
|
+
| Bootstrap | `Indigo.Design UI Kit for Bootstrap` | `"bootstrap"` |
|
|
24
|
+
| Indigo | `Indigo.Design UI Kit` / `Indigo.Design System` | `"indigo"` |
|
|
25
|
+
|
|
26
|
+
**Identifying the active kit variant** is the first task in Phase 3 because it sets the
|
|
27
|
+
design system for the whole app. Use these signals in **strict precedence order** — stop
|
|
28
|
+
at the first clear match:
|
|
29
|
+
|
|
30
|
+
1. **Library source name** — `figma_get_design_context` / `figma_get_metadata` may
|
|
31
|
+
reference the source library file name.
|
|
32
|
+
2. **Variable collection name** — `figma_get_variable_defs` may return collection names
|
|
33
|
+
that include the design system (e.g. `Material/color/primary`).
|
|
34
|
+
3. **Elevation variable structure** — inspect `Elevations/*`:
|
|
35
|
+
- **Three-layer DROP_SHADOW** (umbra + penumbra + ambient, `Elevations/Shadow 01-03`) → **Material**
|
|
36
|
+
- **Single-layer DROP_SHADOW** → Indigo, Fluent, or Bootstrap
|
|
37
|
+
4. **Palette shade naming** — `primary/500`, `primary/100`–`primary/900` follows the
|
|
38
|
+
Material 100–900 convention → likely **Material**.
|
|
39
|
+
5. **Visual heuristics** — see the [Design System Detection table](#design-system-detection-from-figma).
|
|
40
|
+
|
|
41
|
+
> **Never use font name as a primary signal.** "Titillium Web" is the default body font in
|
|
42
|
+
> the Indigo.Design UI Kit for Material — it is not exclusive to any kit variant.
|
|
43
|
+
|
|
44
|
+
All four kit variants share the same variable naming conventions:
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
Primitives collection → raw palette values (e.g. blue/500 = #6200EE)
|
|
48
|
+
Semantic collection → role-based aliases (e.g. color/primary = alias → blue/500)
|
|
49
|
+
Component collection → per-component overrides (e.g. button/background = alias → color/primary)
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## The Web Components Theming Contract
|
|
55
|
+
|
|
56
|
+
Before mapping any value, understand what actually drives a Web Components theme. This is
|
|
57
|
+
the single biggest difference from the Angular flow.
|
|
58
|
+
|
|
59
|
+
| Layer | What it is | How it gets set |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| **Design system + variant** | `--ig-theme`, `--ig-theme-variant` on `:root` | A pre-built theme CSS import or the `:root` block generated by `create_theme`; `configureTheme(ds, variant)` switches component themes at runtime but does not rewrite these CSS variables |
|
|
62
|
+
| **Palette** | `--ig-<family>-<shade>` and `--ig-<family>-<shade>-contrast` custom properties | `create_palette` / `create_theme`, or overriding the `*-500` base shade by hand |
|
|
63
|
+
| **Typography** | `--ig-font-family` plus the type scale | `create_typography`, or plain CSS in a CSS-only project |
|
|
64
|
+
| **Elevations** | shadow custom properties | `create_elevations` (`designSystem: "material" \| "indigo"`) |
|
|
65
|
+
| **Layout** | `--ig-size`, `--ig-spacing`, `--ig-radius-factor` | `set_size` / `set_spacing` / `set_roundness` |
|
|
66
|
+
| **Per component** | component design tokens | `get_component_design_tokens` → `create_component_theme` |
|
|
67
|
+
|
|
68
|
+
Components read the design system **at runtime from CSS variables** and fall back to
|
|
69
|
+
`bootstrap` / `light` when they are absent. A correct palette with a missing
|
|
70
|
+
`--ig-theme` gives you the right colors on the wrong component anatomy.
|
|
71
|
+
|
|
72
|
+
**Every theming tool accepts `output: "css" | "sass"`, defaulting to CSS.** Choose once in
|
|
73
|
+
Phase 3 based on whether the project has Sass, and stay consistent. The Web Components Sass
|
|
74
|
+
API is `@use 'igniteui-theming'` with individual `palette()`, `typography()`, `elevations()`,
|
|
75
|
+
and `spacing()` mixins — the Angular `core()` / `theme()` mixins do not exist here.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Global Palette Mapping
|
|
80
|
+
|
|
81
|
+
### Primary Color
|
|
82
|
+
|
|
83
|
+
| Figma Variable Pattern | Theming Input | Notes |
|
|
84
|
+
| ---------------------- | ----------------------------- | --------------------------------------- |
|
|
85
|
+
| `color/primary` | `primary` in `create_palette` | Use the resolved hex value |
|
|
86
|
+
| `primary/500` | `primary` | The 500 shade is the seed color |
|
|
87
|
+
| `Primary/Default` | `primary` | Alternative naming in some kit versions |
|
|
88
|
+
| `palette/primary/500` | `primary` | Prefixed naming pattern |
|
|
89
|
+
|
|
90
|
+
> **Parameter names differ between tools.** `create_palette` takes `primary`, `secondary`,
|
|
91
|
+
> `surface`, `gray`, `info`, `success`, `warn`, `error`. `create_theme` takes
|
|
92
|
+
> `primaryColor`, `secondaryColor`, `surfaceColor`. Do not mix them up.
|
|
93
|
+
|
|
94
|
+
### Secondary / Accent Color
|
|
95
|
+
|
|
96
|
+
| Figma Variable Pattern | Theming Input | Notes |
|
|
97
|
+
| ---------------------- | ------------------------------- | ---------------------------------- |
|
|
98
|
+
| `color/secondary` | `secondary` in `create_palette` | — |
|
|
99
|
+
| `secondary/500` | `secondary` | — |
|
|
100
|
+
| `Secondary/Default` | `secondary` | — |
|
|
101
|
+
| `color/accent` | `secondary` | Some kit variants call it "accent" |
|
|
102
|
+
|
|
103
|
+
### Surface / Background Color
|
|
104
|
+
|
|
105
|
+
| Figma Variable Pattern | Theming Input | Notes |
|
|
106
|
+
| ---------------------- | ----------------------------- | ------------------- |
|
|
107
|
+
| `color/surface` | `surface` in `create_palette` | The main background |
|
|
108
|
+
| `surface/default` | `surface` | — |
|
|
109
|
+
| `Surface` | `surface` | — |
|
|
110
|
+
| `color/background` | `surface` | Alternative naming |
|
|
111
|
+
|
|
112
|
+
### Gray / Neutral Palette
|
|
113
|
+
|
|
114
|
+
The gray scale is derived automatically from the surface color, and **gray is inverted
|
|
115
|
+
relative to surface** in dark themes. Do not pass gray unless the Figma grays clearly
|
|
116
|
+
diverge from the generated ones. Read `theming://guidance/colors/rules` before overriding.
|
|
117
|
+
|
|
118
|
+
### Semantic Status Colors
|
|
119
|
+
|
|
120
|
+
| Figma Variable Pattern | Theming Input | Notes |
|
|
121
|
+
| -------------------------------- | ------------- | -------- |
|
|
122
|
+
| `color/success` or `success/500` | `success` | Optional |
|
|
123
|
+
| `color/warning` or `warning/500` | `warn` | Optional — the parameter is `warn`, not `warning` |
|
|
124
|
+
| `color/error` or `error/500` | `error` | Optional |
|
|
125
|
+
| `color/info` or `info/500` | `info` | Optional |
|
|
126
|
+
|
|
127
|
+
### Multiple Surface Depths
|
|
128
|
+
|
|
129
|
+
Designs frequently use two or three surface depths (page, panel, card) that a single
|
|
130
|
+
generated `surface` cannot express. When that happens:
|
|
131
|
+
|
|
132
|
+
- use `create_custom_palette` for explicit per-shade control, or
|
|
133
|
+
- define semantic variables (`--surface-1`, `--surface-2`) alongside the palette and use
|
|
134
|
+
them in view CSS.
|
|
135
|
+
|
|
136
|
+
Never satisfy a second depth with a raw hex value in component styles.
|
|
137
|
+
|
|
138
|
+
### Resolving Colors Back Out
|
|
139
|
+
|
|
140
|
+
Use `get_color({ color, variant, contrast, opacity })` to turn a color intent into the
|
|
141
|
+
correct `var(--ig-<family>-<shade>)` reference — including contrast colors and
|
|
142
|
+
transparency — instead of hand-writing variable names.
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Typography Mapping
|
|
147
|
+
|
|
148
|
+
| Figma Variable Pattern | Theming Input | Notes |
|
|
149
|
+
| -------------------------------- | -------------------------------------- | ------------------------------------- |
|
|
150
|
+
| `typography/font-family` | `fontFamily` in `create_typography` | Primary font |
|
|
151
|
+
| `typography/body/font-family` | `fontFamily` | Body font family |
|
|
152
|
+
| `typography/heading/font-family` | `fontFamily` | Use if the heading font differs |
|
|
153
|
+
| `font/primary` | `fontFamily` | Alternative naming |
|
|
154
|
+
|
|
155
|
+
`create_typography` also accepts `designSystem` (which type scale to start from) and
|
|
156
|
+
`customScale` (per-style overrides of `fontSize`, `fontWeight`, `lineHeight`,
|
|
157
|
+
`letterSpacing`, `textTransform`, margins) — use `customScale` only when the design's type
|
|
158
|
+
ramp genuinely differs from the design system's.
|
|
159
|
+
|
|
160
|
+
In a CSS-only project, apply typography as plain CSS `font-family` / `font-size` /
|
|
161
|
+
`font-weight` rules, or the CSS output of `create_typography`. **Do not emit Sass
|
|
162
|
+
typography mixins into an app that has no Sass.**
|
|
163
|
+
|
|
164
|
+
Web fonts must be loaded by the app (a `<link>` to the font provider or a local `@font-face`);
|
|
165
|
+
setting a font family the browser cannot resolve silently falls back and fails Phase 5.
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## Spacing, Sizing, and Roundness — Do Not Map Directly
|
|
170
|
+
|
|
171
|
+
> **These tools are NOT equivalent to Figma spacing values.** Do not create a mapping
|
|
172
|
+
> between Figma pixel values and these tools.
|
|
173
|
+
|
|
174
|
+
`set_spacing` takes a **multiplier** (`1.0` = default, plus optional `inline` / `block`
|
|
175
|
+
multipliers). `set_roundness` takes a `radiusFactor` between **0 and 1**. `set_size` takes
|
|
176
|
+
a **density** (`small` / `medium` / `large`, or `1`–`3`). Passing a Figma `spacing/md = 16`
|
|
177
|
+
as `set_spacing({ spacing: 16 })` would produce a 1600% increase.
|
|
178
|
+
|
|
179
|
+
### When to touch these tools (sparingly)
|
|
180
|
+
|
|
181
|
+
| Tool | Use only when | Never because |
|
|
182
|
+
| ---------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- |
|
|
183
|
+
| `set_size` | The design consistently uses a noticeably tighter or looser component density than the design system default | A Figma spacing variable happens to be named "compact" |
|
|
184
|
+
| `set_spacing` | Explicitly requested, or required to match a specific density contract; start at the default | A Figma `spacing/*` pixel value looks like the multiplier number |
|
|
185
|
+
| `set_roundness` | The entire app has a clearly distinct border-radius language (fully squared vs fully rounded) | A Figma `border-radius/md = 8` maps numerically to a multiplier |
|
|
186
|
+
|
|
187
|
+
### The correct adjustment path
|
|
188
|
+
|
|
189
|
+
Scope `--ig-size` and `--ig-spacing` to the component that needs it — both tools take a
|
|
190
|
+
`component` parameter (and `scope` for a sub-component or container selector) that generates
|
|
191
|
+
exactly this:
|
|
192
|
+
|
|
193
|
+
```
|
|
194
|
+
set_size({ component: "calendar", size: "small", platform: "webcomponents" })
|
|
195
|
+
// → igc-calendar { --ig-size: var(--ig-size-small); }
|
|
196
|
+
|
|
197
|
+
set_spacing({ component: "calendar", spacing: 0.75, platform: "webcomponents" })
|
|
198
|
+
// → igc-calendar { --ig-spacing: 0.75; }
|
|
199
|
+
|
|
200
|
+
set_size({ scope: ".compact-toolbar", size: "small", platform: "webcomponents" })
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Or set the custom properties directly:
|
|
204
|
+
|
|
205
|
+
```css
|
|
206
|
+
igc-calendar {
|
|
207
|
+
--ig-size: var(--ig-size-small);
|
|
208
|
+
--ig-spacing: 0.75;
|
|
209
|
+
}
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
The Indigo.Design kit's component proportions are already calibrated per design system —
|
|
213
|
+
start from the defaults and adjust only when there is a clear visual reason.
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Light vs Dark Mode Detection
|
|
218
|
+
|
|
219
|
+
| Figma Signal | Action |
|
|
220
|
+
| -------------------------------------------------------- | ------------------------------------------------------------------------ |
|
|
221
|
+
| Dark artboard background (`#121212`, `#1a1a1a`, similar) | `variant: "dark"` + the dark theme CSS (`themes/dark/<ds>.css`) |
|
|
222
|
+
| Light artboard background (`#fff`, `#f5f5f5`, similar) | `variant: "light"` + the light theme CSS |
|
|
223
|
+
| Multiple artboards — one light, one dark | Generate both; switch with a class, `prefers-color-scheme`, or `configureTheme` |
|
|
224
|
+
| `color/mode` variable present | Its value (`light` or `dark`) is the authoritative signal |
|
|
225
|
+
|
|
226
|
+
Surface color must match the variant: a light surface with `variant: "dark"` produces
|
|
227
|
+
unreadable components and a luminance warning from the palette tools. Read the warnings.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Design System Detection from Figma
|
|
232
|
+
|
|
233
|
+
| Figma Visual Signal | Likely Design System | `designSystem` Value |
|
|
234
|
+
| ------------------------------------------------------------------ | -------------------------- | -------------------- |
|
|
235
|
+
| Three-layer `DROP_SHADOW` on elevation variables (`Shadow 01-03`) | Material Design | `"material"` |
|
|
236
|
+
| Prominent single-layer shadows, rounded cards, ripple effects | Material Design | `"material"` |
|
|
237
|
+
| Flat surfaces, sharp corners, Segoe/Inter font | Microsoft Fluent | `"fluent"` |
|
|
238
|
+
| Component borders, Bootstrap-like grid | Bootstrap | `"bootstrap"` |
|
|
239
|
+
| Purple/indigo accents, rounded corners, single shadow | Infragistics Indigo | `"indigo"` |
|
|
240
|
+
| `primary/500`, `primary/900` palette shade naming | Material (100–900 palette) | `"material"` |
|
|
241
|
+
|
|
242
|
+
`create_elevations` accepts only `"material"` or `"indigo"` as its `designSystem` — for a
|
|
243
|
+
Fluent or Bootstrap design, pick the closer of the two (usually `material`).
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## Per-Component Token Resolution
|
|
248
|
+
|
|
249
|
+
### Step 1: Use the right theme key
|
|
250
|
+
|
|
251
|
+
Theme keys are **not** tag names. Pass the key to `get_component_design_tokens` and
|
|
252
|
+
`create_component_theme`:
|
|
253
|
+
|
|
254
|
+
| Component in the design | Theme key | Selector it generates for |
|
|
255
|
+
| ----------------------- | ------------------- | --------------------------------- |
|
|
256
|
+
| Text input / any input | `input-group` | `igc-input` |
|
|
257
|
+
| Navigation drawer | `navdrawer` | `igc-nav-drawer` |
|
|
258
|
+
| Linear progress bar | `progress-linear` | `igc-linear-progress` |
|
|
259
|
+
| Circular progress | `progress-circular` | `igc-circular-progress` |
|
|
260
|
+
| Single-select combo | `simple-combo` | `igc-combo[single-select]` |
|
|
261
|
+
| Flat / contained / outlined button | `flat-button`, `contained-button`, `outlined-button` | `igc-button[variant="…"]` |
|
|
262
|
+
| Icon button variants | `flat-icon-button`, `contained-icon-button`, `outlined-icon-button` | `igc-icon-button[variant="…"]` |
|
|
263
|
+
| Premium grid | `grid` | `igc-grid` |
|
|
264
|
+
| Lightweight grid | `grid-lite` | `igc-grid-lite` |
|
|
265
|
+
| Dropdown menu | `drop-down` | `igc-dropdown` |
|
|
266
|
+
| App scrollbars | `scrollbar` | `.ig-scrollbar` |
|
|
267
|
+
|
|
268
|
+
Most other components use their obvious key (`card`, `list`, `navbar`, `chip`, `avatar`,
|
|
269
|
+
`badge`, `calendar`, `date-picker`, `select`, `combo`, `tabs`, `stepper`, `tree`, `dialog`,
|
|
270
|
+
`toast`, `snackbar`, `banner`, `tooltip`, `divider`, `rating`, `slider`, `switch`,
|
|
271
|
+
`checkbox`, `radio`, `carousel`, `chat`, `expansion-panel`, `accordion`, `splitter`,
|
|
272
|
+
`file-input`, `date-time-input`, `textarea`, `icon`, `ripple`, `highlight`).
|
|
273
|
+
|
|
274
|
+
**Keys with no Web Components equivalent** — do not call the theming tools for these:
|
|
275
|
+
`action-strip`, `bottom-nav`, `column-actions`, `overlay`, `query-builder`, `time-picker`,
|
|
276
|
+
`date-range-start`, `date-range-end`. Sub-part keys (`card-header`, `list-item`, `step`,
|
|
277
|
+
`tab-item`, `accordion-header`, `expansion-panel-header`, `drop-down-item`,
|
|
278
|
+
`nav-drawer-item`) have no standalone selector either — style them through the parent's
|
|
279
|
+
tokens, their documented `::part(...)`, or slotted content.
|
|
280
|
+
|
|
281
|
+
### Step 2: Discover the tokens
|
|
282
|
+
|
|
283
|
+
```
|
|
284
|
+
get_component_design_tokens({ component: "<theme key>" })
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
The result lists every token with name, type, and description — and, for compound
|
|
288
|
+
components, the **related themes** you must also theme.
|
|
289
|
+
|
|
290
|
+
### Step 3: Match Figma variables to token names
|
|
291
|
+
|
|
292
|
+
Kit component variables follow `<component>/<role>/<state>`:
|
|
293
|
+
|
|
294
|
+
- `button/background` → token `background`
|
|
295
|
+
- `button/foreground` → token `foreground-color`
|
|
296
|
+
- `chip/background/selected` → token `selected-chip-color`
|
|
297
|
+
- `grid/header-background` → token `header-background`
|
|
298
|
+
- `navbar/background` → token `background`
|
|
299
|
+
|
|
300
|
+
Lookup process: strip the component prefix, match the remainder against the token list, and
|
|
301
|
+
when there is no exact match pick the token whose description names the same visual role.
|
|
302
|
+
|
|
303
|
+
| Component | Figma Variable | Likely Token Name | Notes |
|
|
304
|
+
| --------- | -------------------------- | ----------------------- | ----------------------- |
|
|
305
|
+
| Button | `button/background` | `background` | Per variant key |
|
|
306
|
+
| Button | `button/foreground` | `foreground-color` | Text color |
|
|
307
|
+
| Button | `button/border` | `border-color` | Outlined variant |
|
|
308
|
+
| Chip | `chip/background` | `background` | Default state |
|
|
309
|
+
| Chip | `chip/selected-background` | `selected-chip-color` | — |
|
|
310
|
+
| Grid | `grid/header/background` | `header-background` | — |
|
|
311
|
+
| Grid | `grid/row/background` | `content-background` | — |
|
|
312
|
+
| Grid | `grid/row/hover` | `row-hover-background` | — |
|
|
313
|
+
| Navbar | `navbar/background` | `background` | — |
|
|
314
|
+
| Input | `input/background` | `box-background` | Filled appearance |
|
|
315
|
+
| Input | `input/border` | `border-color` | `outlined` appearance |
|
|
316
|
+
| Card | `card/background` | `background` | — |
|
|
317
|
+
| List | `list/item/background` | `item-background` | — |
|
|
318
|
+
| List | `list/item/hover` | `item-hover-background` | — |
|
|
319
|
+
| Dialog | `dialog/background` | `background` | — |
|
|
320
|
+
|
|
321
|
+
### Step 4: Generate the component theme
|
|
322
|
+
|
|
323
|
+
Pass **only tokens that differ from the global theme**, and express values as palette
|
|
324
|
+
references — never raw hex:
|
|
325
|
+
|
|
326
|
+
```
|
|
327
|
+
create_component_theme({
|
|
328
|
+
component: "<theme key>",
|
|
329
|
+
platform: "webcomponents",
|
|
330
|
+
designSystem: "<resolved>",
|
|
331
|
+
variant: "<light|dark>",
|
|
332
|
+
licensed: <true if @infragistics>,
|
|
333
|
+
tokens: {
|
|
334
|
+
"background": "var(--ig-surface-100)",
|
|
335
|
+
"foreground-color": "var(--ig-gray-900)"
|
|
336
|
+
},
|
|
337
|
+
selector: "<optional scope, e.g. .dashboard igc-card>",
|
|
338
|
+
output: "css"
|
|
339
|
+
})
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
Apply the generated block exactly as returned. Use `selector` to scope an override to one
|
|
343
|
+
region instead of every instance in the app.
|
|
344
|
+
|
|
345
|
+
### Step 5: Compound components
|
|
346
|
+
|
|
347
|
+
`combo`, `select`, `date-picker`, `date-range-picker`, `grid`, and `banner` render internal
|
|
348
|
+
children with their own themes. Theme each related theme returned in Step 1 using the
|
|
349
|
+
parent's selector as the wrapper. Styling only the parent leaves dropdown surfaces,
|
|
350
|
+
calendars, and action buttons off-theme — a guaranteed Phase 5 failure.
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
|
|
354
|
+
## Chart Colors
|
|
355
|
+
|
|
356
|
+
Charts have no design tokens. Take the series colors from the Figma design context and run
|
|
357
|
+
them through the theming MCP before use:
|
|
358
|
+
|
|
359
|
+
```
|
|
360
|
+
get_chart_series_colors({ chartType: "category-chart" }) // which properties accept a brush list
|
|
361
|
+
get_chart_series_colors({ customBrushes: ["#9DE772", "#6DB1FF"] }) // validate the Figma colors
|
|
362
|
+
get_chart_series_colors({ mode: "color-blind" }) // accessible alternative palette
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
Assign the result to the chart's `brushes` / `outlines` **properties** (arrays, not
|
|
366
|
+
attributes). Without an explicit assignment the chart uses its own default palette and will
|
|
367
|
+
not match the design.
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## Variable Resolution Priority
|
|
372
|
+
|
|
373
|
+
When multiple Figma variables could map to the same theming input:
|
|
374
|
+
|
|
375
|
+
1. **Component-scoped variable** (e.g. `button/background`) → per-component token
|
|
376
|
+
2. **Semantic role variable** (e.g. `color/primary`) → global palette input
|
|
377
|
+
3. **Primitive variable** (e.g. `primary/500`) → global palette seed color
|
|
378
|
+
4. **Raw hex/rgb value** (no variable) → extract directly from the design context
|
|
379
|
+
|
|
380
|
+
---
|
|
381
|
+
|
|
382
|
+
## What to Skip
|
|
383
|
+
|
|
384
|
+
Do **not** call theming tools for:
|
|
385
|
+
|
|
386
|
+
- Chart, gauge, and map components → configure via properties; series colors via
|
|
387
|
+
`get_chart_series_colors`
|
|
388
|
+
- Dock Manager → it exposes its own CSS custom properties
|
|
389
|
+
- Pure layout CSS (margins, grid columns, flex gaps) → write it directly in the view's styles
|
|
390
|
+
- Icon colors → set `color` on the `igc-icon` host or its parent
|
|
391
|
+
|
|
392
|
+
---
|
|
393
|
+
|
|
394
|
+
## Loading Reference Data
|
|
395
|
+
|
|
396
|
+
| URI | Content |
|
|
397
|
+
| --- | --- |
|
|
398
|
+
| `theming://platforms/webcomponents` | Web Components platform specifics |
|
|
399
|
+
| `theming://guidance/colors/rules` | Surface/gray luminance rules for light and dark |
|
|
400
|
+
| `theming://guidance/colors/roles` | Which components use primary vs secondary vs surface |
|
|
401
|
+
| `theming://guidance/colors/usage` | Which shade for which purpose |
|
|
402
|
+
| `theming://guidance/colors/charts` | Chart color guidance |
|
|
403
|
+
| `theming://presets/palettes` | Preset palette colors |
|
|
404
|
+
| `theming://presets/typography` | Typography presets |
|
|
405
|
+
| `theming://presets/elevations` | Elevation shadow presets |
|
|
406
|
+
|
|
407
|
+
Read them with `read_resource({ uri: "<uri>" })`.
|