@trimble-oss/modus-mcp-server
Version:
An MCP server providing information about Modus React form and UI components
2,960 lines • 91.8 kB
JSON
{
"ModusWcAccordion": {
"description": "A customizable accordion component used for showing and hiding related groups of content.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div. It is given as attribute.",
"default": "''"
}
],
"events": [
{
"name": "expandedChange",
"description": "When a collapse expanded state is changed, this event outputs the relevant index and state",
"emits": "CustomEvent<{ expanded: boolean; index: number; }>"
}
],
"dependencies": {
"usedBy": [],
"uses": []
},
"Key_Notes": "Some changes by CustomCSS class are not overridden for that you need to use !important.",
"componentName": "ModusWcAccordion"
},
"ModusWcAlert": {
"description": "A customizable alert component used to inform the user about important events",
"properties": [
{
"name": "alertDescription",
"type": "string | undefined",
"description": "The description of the alert.",
"default": "undefined"
},
{
"name": "alertTitle",
"type": "string",
"description": "The title of the alert.",
"default": "undefined"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the outer div element.",
"default": "''"
},
{
"name": "dismissible",
"type": "boolean | undefined",
"description": "Whether the alert has a dismiss button. This is to dissmiss the alert",
"default": "false"
},
{
"name": "icon",
"type": "string | undefined",
"description": "The Modus icon to render. If we want to have any icon in front of the alert",
"default": "undefined"
},
{
"name": "role",
"type": "\"alert\" | \"log\" | \"marquee\" | \"status\" | \"timer\"",
"description": "Role taken by the alert. Defaults to 'status'",
"default": "'status'"
},
{
"name": "variant",
"type": "\"error\" | \"info\" | \"success\" | \"warning\" | undefined",
"description": "The variant of the alert. Different variants have different colors and icons.",
"default": "'info'"
}
],
"events": [
{
"name": "dismissClick",
"description": "An event that fires when the alert is dismissed",
"emits": "CustomEvent<any>"
}
],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-icon",
"modus-wc-button"
]
},
"componentName": "ModusWcAlert"
},
"ModusWcAutocomplete": {
"description": "A customizable autocomplete component used to create searchable text inputs.",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the autocomplete should have a border.",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to host element.",
"default": "''"
},
{
"name": "debounceMs",
"type": "number | undefined",
"description": "The debounce timeout in milliseconds. Set to 0 to disable debouncing.",
"default": "300"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled.",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation (typically with the Tab key).",
"default": "undefined"
},
{
"name": "items",
"type": "IAutocompleteItem[] | undefined",
"description": "The items to display in the menu. Creating a new array of items will ensure proper component re-render.",
"default": "[]"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "leaveMenuOpen",
"type": "boolean | undefined",
"description": "Whether the menu should remain open after an item is selected.",
"default": "false"
},
{
"name": "minChars",
"type": "number",
"description": "The minimum number of characters required to render the menu.",
"default": "0"
},
{
"name": "multiSelect",
"type": "boolean | undefined",
"description": "Whether the input allows multiple items to be selected.",
"default": "false"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "noResults",
"type": "IAutocompleteNoResults | undefined",
"description": "The content to display when no results are found.",
"default": "{ ariaLabel: 'No results found', label: 'No results found', subLabel: 'Check spelling or try a different keyword' }"
},
{
"name": "placeholder",
"type": "string | undefined",
"description": "Text that appears in the form control when it has no value set.",
"default": "''"
},
{
"name": "readOnly",
"type": "boolean | undefined",
"description": "Whether the value is editable.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "showSpinner",
"type": "boolean | undefined",
"description": "A spinner that appears when set to true",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the autocomplete (input and menu).",
"default": "'md'"
},
{
"name": "value",
"type": "string",
"description": "The value of the control.",
"default": "''"
}
],
"events": [
{
"name": "chipRemove",
"description": "Event emitted when a selected item chip is removed.",
"emits": "CustomEvent<IAutocompleteItem>"
},
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes. This event is debounced based on the debounceMs prop.",
"emits": "CustomEvent<Event>"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "itemSelect",
"description": "Event emitted when a menu item is selected.",
"emits": "CustomEvent<IAutocompleteItem>"
}
],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-chip",
"modus-wc-text-input",
"modus-wc-loader",
"modus-wc-menu-item",
"modus-wc-input-label",
"modus-wc-menu"
]
},
"componentName": "ModusWcAutocomplete"
},
"ModusWcAvatar": {
"description": "A customizable avatar component used to create avatars with different images.",
"properties": [
{
"name": "alt",
"type": "string",
"description": "The image alt attribute for accessibility.",
"default": "undefined",
"required": true
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "imgSrc",
"type": "string",
"description": "The location of the image.",
"default": "''"
},
{
"name": "shape",
"type": "\"circle\" | \"square\" | undefined",
"description": "The shape of the avatar.",
"default": "'circle'"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | \"xs\" | undefined",
"description": "The size of the avatar.",
"default": "'md'"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-navbar"
]
},
"componentName": "ModusWcAvatar"
},
"ModusWcBadge": {
"description": "A customizable badge component used to create badges with different sizes, types, and colors.",
"properties": [
{
"name": "color",
"type": "\"danger\" | \"high-contrast\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\"",
"description": "The color variant of the badge.",
"default": "'primary'"
},
{
"name": "customClass",
"type": "string",
"description": "Custom CSS class to apply to the span element.",
"default": "''"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\"",
"description": "The size of the badge.",
"default": "'md'"
},
{
"name": "variant",
"type": "\"counter\" | \"filled\" | \"text\"",
"description": "The variant of the badge.",
"default": "'filled'"
}
],
"events": [],
"dependencies": {},
"componentName": "ModusWcBadge"
},
"ModusWcBreadcrumbs": {
"description": "A customizable breadcrumbs component used to help users navigate through a website.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "items",
"type": "IBreadcrumb[]",
"description": "The breadcrumbs to render.",
"default": "[]"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the breadcrumbs.",
"default": "'md'"
}
],
"events": [
{
"name": "breadcrumbClick",
"description": "Event emitted when a breadcrumb is clicked.",
"emits": "CustomEvent<IBreadcrumb>"
}
],
"dependencies": {},
"componentName": "ModusWcBreadcrumbs"
},
"ModusWcButton": {
"description": "A customizable button component used to create buttons with different sizes, variants, and types.",
"properties": [
{
"name": "color",
"type": "\"danger\" | \"primary\" | \"secondary\" | \"tertiary\" | \"warning\"",
"description": "The color variant of the button.",
"default": "'primary'"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the button element.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "If true, the button will be disabled.",
"default": "false"
},
{
"name": "fullWidth",
"type": "boolean | undefined",
"description": "If true, the button will take the full width of its container.",
"default": "false"
},
{
"name": "pressed",
"type": "boolean | undefined",
"description": "If true, the button will be in a pressed state (for toggle buttons).",
"default": "false"
},
{
"name": "shape",
"type": "\"circle\" | \"rectangle\" | \"square\"",
"description": "The shape of the button.",
"default": "'rectangle'"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | \"xs\"",
"description": "The size of the button.",
"default": "'md'"
},
{
"name": "type",
"type": "\"button\" | \"reset\" | \"submit\"",
"description": "The type of the button.",
"default": "'button'"
},
{
"name": "variant",
"type": "\"borderless\" | \"filled\" | \"outlined\"",
"description": "The variant of the button.",
"default": "'filled'"
}
],
"events": [
{
"name": "buttonClick",
"description": "Event emitted when the button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-alert",
"modus-wc-modal",
"modus-wc-navbar"
]
},
"componentName": "ModusWcButton"
},
"ModusWcCard": {
"description": "A customizable card component used to group and display content in a way that is easily readable",
"properties": [
{
"name": "backgroundFigure",
"type": "boolean | undefined",
"description": "Makes any <figure> in the 'header' slot cover the background",
"default": "false"
},
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Adds a hard border to the card",
"default": "false"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply",
"default": "''"
},
{
"name": "layout",
"type": "\"horizontal\" | \"vertical\" | undefined",
"description": "Determines how the card is laid out",
"default": "'vertical'"
},
{
"name": "padding",
"type": "\"compact\" | \"normal\" | undefined",
"description": "Determines if the interior padding is compact or not",
"default": "'normal'"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-navbar"
]
},
"componentName": "ModusWcCard"
},
"ModusWcCheckbox": {
"description": "A customizable checkbox component",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the checkbox.",
"default": "false"
},
{
"name": "indeterminate",
"type": "boolean",
"description": "The indeterminate state of the checkbox.",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "The tabindex of the input.",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "''"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "'md'"
},
{
"name": "value",
"type": "boolean",
"description": "The value of the checkbox.",
"default": "false"
}
],
"events": [
{
"name": "inputBlur",
"description": "Emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Emitted when the input value changes.",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-table"
],
"uses": [
"modus-wc-input-label"
]
},
"componentName": "ModusWcCheckbox"
},
"ModusWcChip": {
"description": "A customizable chip component used to display information in a compact area",
"properties": [
{
"name": "active",
"type": "boolean | undefined",
"description": "Active state of chip.",
"default": "false"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the chip is disabled.",
"default": "false"
},
{
"name": "hasError",
"type": "boolean | undefined",
"description": "Whether the chip has an error.",
"default": "false"
},
{
"name": "label",
"type": "string | undefined",
"description": "The label to display in the chip.",
"default": "''"
},
{
"name": "showRemove",
"type": "boolean | undefined",
"description": "Whether to show the close icon on right side of the chip.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the chip.",
"default": "'md'"
},
{
"name": "variant",
"type": "\"filled\" | \"outline\" | undefined",
"description": "The variant of the chip.",
"default": "'filled'"
}
],
"events": [
{
"name": "chipClick",
"description": "Event emitted when the chip is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "chipRemove",
"description": "Event emitted when the close chip icon button is clicked.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-autocomplete"
]
},
"componentName": "ModusWcChip"
},
"ModusWcCollapse": {
"description": "A customizable collapse component used for showing and hiding content.",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the component should have a border.",
"default": "false"
},
{
"name": "collapseId",
"type": "string | undefined",
"description": "A unique identifier used to set the id attributes of various elements.",
"default": "undefined"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the outer div.",
"default": "''"
},
{
"name": "expanded",
"type": "boolean | undefined",
"description": "Controls whether the collapse is expanded or not.",
"default": "false"
},
{
"name": "options",
"type": "ICollapseOptions | undefined",
"description": "Configuration options for rendering the pre-laid out collapse component. Do not set this prop if you intend to use the 'header' slot.",
"default": "undefined"
}
],
"events": [
{
"name": "expandedChange",
"description": "Event emitted when the expanded prop is internally changed.",
"emits": "{ expanded: boolean; }"
}
],
"dependencies": {
"uses": [
"modus-wc-icon"
],
"usedBy": []
},
"componentName": "ModusWcCollapse"
},
"ModusWcDate": {
"description": "A customizable date picker component used to create date inputs. Adheres to WCAG 2.2 standards.",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border.",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the input.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled.",
"default": "false"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input.",
"default": "undefined"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation (typically with the Tab key).",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "max",
"type": "string | undefined",
"description": "Maximum date value.",
"default": "undefined"
},
{
"name": "min",
"type": "string | undefined",
"description": "Minimum date value.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "readOnly",
"type": "boolean | undefined",
"description": "Whether the value is editable.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required or must be checked for the form to be submittable.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "'md'"
},
{
"name": "value",
"type": "string",
"description": "The value of the control (yyyy-mm-dd).",
"default": "''"
}
],
"events": [
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus.",
"emits": "FocusEvent"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes.",
"emits": "InputEvent"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus.",
"emits": "FocusEvent"
}
],
"dependencies": {
"uses": [
"modus-wc-input-label",
"modus-wc-input-feedback"
],
"usedBy": []
},
"componentName": "ModusWcDate"
},
"ModusWcDivider": {
"description": "A customizable divider component used to separate content horizontally or vertically",
"properties": [
{
"name": "color",
"type": "\"danger\" | \"high-contrast\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\" | undefined",
"description": "The color of the divider line.",
"default": "'tertiary'"
},
{
"name": "content",
"type": "string | undefined",
"description": "The content to display in the divider.",
"default": "''"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the divider element.",
"default": "''"
},
{
"name": "orientation",
"type": "\"horizontal\" | \"vertical\" | undefined",
"description": "The orientation of the divider. This is in reference to how content will be rendered around the divider.",
"default": "'vertical'"
},
{
"name": "position",
"type": "\"center\" | \"end\" | \"start\" | undefined",
"description": "The position of the divider.",
"default": "'center'"
},
{
"name": "responsive",
"type": "boolean | undefined",
"description": "Whether the divider is responsive or not.",
"default": "true"
}
],
"events": [],
"dependencies": {
"uses": [],
"usedBy": []
},
"componentName": "ModusWcDivider"
},
"ModusWcIcon": {
"description": "A customizable icon component used to render Modus icons. This component requires Modus icons to be installed in the host application.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the i element.",
"default": "''"
},
{
"name": "decorative",
"type": "boolean | undefined",
"description": "Indicates that the icon is decorative. When true, sets aria-hidden to hide the icon from screen readers.",
"default": "true"
},
{
"name": "name",
"type": "string",
"description": "The icon name, should match the CSS class in the icon font.",
"default": "undefined"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | \"xs\" | undefined",
"description": "The icon size, can be \"sm\", \"md\", \"lg\" (a custom size can be specified in CSS). This adjusts the font size for the icon.",
"default": "'md'"
}
],
"events": [],
"dependencies": {
"uses": [],
"usedBy": [
"modus-wc-alert",
"modus-wc-collapse",
"modus-wc-input-feedback",
"modus-wc-menu-item",
"modus-wc-table",
"modus-wc-tabs"
]
},
"componentName": "ModusWcIcon"
},
"ModusWcInputFeedback": {
"description": "A customizable feedback component used to provide additional context related to form input interactions.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the outer div element.",
"default": "''"
},
{
"name": "icon",
"type": "string | undefined",
"description": "The Modus icon to use instead of the pre-defined icons.",
"default": "''"
},
{
"name": "level",
"type": "\"error\" | \"info\" | \"success\" | \"warning\"",
"description": "The level informs which icon and color that will be rendered.",
"default": "undefined"
},
{
"name": "message",
"type": "string | undefined",
"description": "The message.",
"default": "''"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the feedback component.",
"default": "'md'"
}
],
"events": [],
"dependencies": {
"uses": [
"modus-wc-icon"
],
"usedBy": [
"modus-wc-date",
"modus-wc-number-input",
"modus-wc-select",
"modus-wc-text-input",
"modus-wc-textarea",
"modus-wc-time-input"
]
},
"componentName": "ModusWcInputFeedback"
},
"ModusWcInputLabel": {
"description": "A customizable input label component. It supports a slot for injecting additional custom content inside the label, such as icons or formatted text.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Additional classes for custom styling.",
"default": "''"
},
{
"name": "forId",
"type": "string | undefined",
"description": "The `for` attribute of the label, matching the `id` of the associated input.",
"default": "undefined"
},
{
"name": "labelText",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "Whether the label indicates a required field.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the label.",
"default": "'md'"
},
{
"name": "subLabelText",
"type": "string | undefined",
"description": "The text rendered beneath the label.",
"default": "undefined"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-autocomplete",
"modus-wc-checkbox",
"modus-wc-date",
"modus-wc-number-input",
"modus-wc-progress",
"modus-wc-radio",
"modus-wc-select",
"modus-wc-slider",
"modus-wc-switch"
]
},
"componentName": "ModusWcInputLabel"
},
"ModusWcLoader": {
"description": "A customizable loader component used to indicate the loading of content",
"properties": [
{
"name": "color",
"type": "\"accent\" | \"error\" | \"info\" | \"neutral\" | \"primary\" | \"secondary\" | \"success\" | \"warning\"",
"description": "The color of the loader.",
"default": "'primary'"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the loader element.",
"default": "''"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | \"xs\"",
"description": "The size of the loader.",
"default": "'md'"
},
{
"name": "variant",
"type": "\"ball\" | \"bars\" | \"dots\" | \"infinity\" | \"ring\" | \"spinner\"",
"description": "The variant of the loader.",
"default": "'spinner'"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-autocomplete"
]
},
"componentName": "ModusWcLoader"
},
"ModusWcMenu": {
"description": "A customizable menu component used to display a list of li elements vertically or horizontally. The component supports a slot for injecting custom li elements inside the ul.",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the menu should have a border.",
"default": "undefined"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the ul element.",
"default": "''"
},
{
"name": "orientation",
"type": "\"horizontal\" | \"vertical\" | undefined",
"description": "The orientation of the menu.",
"default": "'vertical'"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the menu.",
"default": "'md'"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-autocomplete",
"modus-wc-navbar"
]
},
"componentName": "ModusWcMenu"
},
"ModusWcMenuItem": {
"description": "A customizable menu item component used to display the item portion of a menu",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates if the menu item should have a border.",
"default": "undefined"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the li element.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the menu item.",
"default": "undefined"
},
{
"name": "focused",
"type": "boolean | undefined",
"description": "The focused state of the menu item.",
"default": "undefined"
},
{
"name": "label",
"type": "string",
"description": "The text rendered in the menu item.",
"default": "''"
},
{
"name": "selected",
"type": "boolean | undefined",
"description": "The selected state of the menu item.",
"default": "undefined"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the menu item.",
"default": "'md'"
},
{
"name": "startIcon",
"type": "string | undefined",
"description": "The modus icon name to render on the start of the menu item.",
"default": "undefined"
},
{
"name": "subLabel",
"type": "string | undefined",
"description": "The text rendered beneath the label.",
"default": "undefined"
},
{
"name": "value",
"type": "string",
"description": "The unique identifying value of the menu item.",
"default": "''"
}
],
"events": [
{
"name": "itemSelect",
"description": "Event emitted when a menu item is selected.",
"emits": "CustomEvent<{ value: string; }>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-autocomplete",
"modus-wc-navbar"
],
"uses": [
"modus-wc-icon"
]
},
"componentName": "ModusWcMenuItem"
},
"ModusWcModal": {
"description": "A customizable modal component used to display content in a dialog. The component supports 'header', 'content', and 'footer' slots for injecting custom HTML.",
"properties": [
{
"name": "backdrop",
"type": "\"default\" | \"static\" | undefined",
"description": "The modal's backdrop. Specify 'static' for a backdrop that doesn't close the modal when clicked outside the modal content.",
"default": "'default'"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply",
"default": "''"
},
{
"name": "fullscreen",
"type": "boolean | undefined",
"description": "Specifies whether the modal should be displayed full-screen",
"default": "false"
},
{
"name": "modalId",
"type": "string",
"description": "The ID of the inner dialog element",
"default": "undefined"
},
{
"name": "position",
"type": "\"bottom\" | \"center\" | \"top\" | undefined",
"description": "Specifies the position of the modal",
"default": "'center'"
},
{
"name": "showClose",
"type": "boolean | undefined",
"description": "Specifies whether to show the close icon button at the top right of modal",
"default": "true"
},
{
"name": "showFullscreenToggle",
"type": "boolean | undefined",
"description": "Specifies whether to show the fullscreen toggle icon button",
"default": "false"
}
],
"events": [],
"dependencies": {
"uses": [
"modus-wc-button"
]
},
"componentName": "ModusWcModal"
},
"ModusWcNavbar": {
"description": "A customizable navbar component used for top level navigation of all Trimble applications. The component supports 'main-menu', 'notifications', and 'apps' slots for injecting custom HTML menus. It also supports 'start', 'center', and 'end' slots for injecting additional custom HTML.",
"properties": [
{
"name": "appsMenuOpen",
"type": "boolean | undefined",
"description": "The open state of the apps menu.",
"default": "false"
},
{
"name": "condensed",
"type": "boolean | undefined",
"description": "Applies condensed layout and styling.",
"default": "false"
},
{
"name": "condensedMenuOpen",
"type": "boolean | undefined",
"description": "The open state of the condensed menu.",
"default": "false"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the host element.",
"default": "''"
},
{
"name": "mainMenuOpen",
"type": "boolean | undefined",
"description": "The open state of the main menu.",
"default": "false"
},
{
"name": "notificationsMenuOpen",
"type": "boolean | undefined",
"description": "The open state of the notifications menu.",
"default": "false"
},
{
"name": "searchDebounceMs",
"type": "number | undefined",
"description": "Debounce time in milliseconds for search input changes. Default is 300ms.",
"default": "300"
},
{
"name": "searchInputOpen",
"type": "boolean | undefined",
"description": "The open state of the search input.",
"default": "false"
},
{
"name": "textOverrides",
"type": "INavbarTextOverrides | undefined",
"description": "Text replacements for the navbar.",
"default": "undefined"
},
{
"name": "userCard",
"type": "INavbarUserCard",
"description": "User information used to render the user card.",
"default": "undefined"
},
{
"name": "userMenuOpen",
"type": "boolean | undefined",
"description": "The open state of the user menu.",
"default": "false"
},
{
"name": "visibility",
"type": "INavbarVisibility | undefined",
"description": "The visibility of individual navbar buttons. Default is user profile visible, others hidden.",
"default": "{ ai: false, apps: false, help: false, mainMenu: false, notifications: false, search: false, searchInput: false, user: true }"
}
],
"events": [
{
"name": "aiClick",
"description": "Event emitted when the AI button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "appsClick",
"description": "Event emitted when the apps button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "appsMenuOpenChange",
"description": "Event emitted when the apps menu open state changes.",
"emits": "CustomEvent<boolean>"
},
{
"name": "condensedMenuOpenChange",
"description": "Event emitted when the condensed menu open state changes.",
"emits": "CustomEvent<boolean>"
},
{
"name": "helpClick",
"description": "Event emitted when the help button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "mainMenuOpenChange",
"description": "Event emitted when the main menu open state changes.",
"emits": "CustomEvent<boolean>"
},
{
"name": "myTrimbleClick",
"description": "Event emitted when the user profile Access MyTrimble button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "notificationsClick",
"description": "Event emitted when the notifications button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "notificationsMenuOpenChange",
"description": "Event emitted when the notifications menu open state changes.",
"emits": "CustomEvent<boolean>"
},
{
"name": "searchChange",
"description": "Event emitted when the search input value is changed.",
"emits": "CustomEvent<{ value: string; }>"
},
{
"name": "searchClick",
"description": "Event emitted when the search button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "searchInputOpenChange",
"description": "Event emitted when the search input open state changes.",
"emits": "CustomEvent<boolean>"
},
{
"name": "signOutClick",
"description": "Event emitted when the user profile sign out button is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "trimbleLogoClick",
"description": "Event emitted when the Trimble logo is clicked or activated via keyboard.",
"emits": "CustomEvent<KeyboardEvent | MouseEvent>"
},
{
"name": "userMenuOpenChange",
"description": "Event emitted when the user menu open state changes.",
"emits": "CustomEvent<boolean>"
}
],
"dependencies": {
"uses": [
"modus-wc-toolbar",
"modus-wc-button",
"modus-wc-menu",
"modus-wc-menu-item",
"modus-wc-text-input",
"modus-wc-avatar",
"modus-wc-card"
]
},
"componentName": "ModusWcNavbar"
},
"ModusWcNumberInput": {
"description": "A customizable input component used to create number inputs with types",
"properties": [
{
"name": "autoComplete",
"type": "\"off\" | \"on\" | undefined",
"description": "Hint for form autofill feature.",
"default": "undefined"
},
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border.",
"default": "true"
},
{
"name": "currencySymbol",
"type": "string | undefined",
"description": "The currency symbol to display.",
"default": "''"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the input.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled.",
"default": "false"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input.",
"default": "undefined"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputMode",
"type": "\"decimal\" | \"none\" | \"numeric\"",
"description": "Hints at the type of data that might be entered by the user while editing the element or its contents. This allows a browser to display an appropriate virtual keyboard.",
"default": "'numeric'"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation (typically with the Tab key).",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "max",
"type": "number | undefined",
"description": "The input's maximum value.",
"default": "undefined"
},
{
"name": "min",
"type": "number | undefined",
"description": "The input's minimum value.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "placeholder",
"type": "string | undefined",
"description": "Text that appears in the form control when it has no value set.",
"default": "''"
},
{
"name": "readOnly",
"type": "boolean | undefined",
"description": "Whether the value is editable.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "'md'"
},
{
"name": "step",
"type": "number | undefined",
"description": "The granularity that the value adheres to.",
"default": "undefined"
},
{
"name": "type",
"type": "\"number\" | \"range\" | undefined",
"description": "Type of form control.",
"default": "'number'"
},
{
"name": "value",
"type": "string",
"description": "The value of the control.",
"default": "''"
}
],
"events": [
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes.",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-input-label",
"modus-wc-input-feedback"
]
},
"componentName": "ModusWcNumberInput"
},
"ModusWcPagination": {
"description": "Pagination component to navigate through pages of content",
"properties": [
{
"name": "ariaLabelValues",
"type": "IAriaLabelValues | undefined",
"description": "Aria label values for pagination buttons",
"default": "undefined"
},
{
"name": "count",
"type": "number",
"description": "Total number of pages",
"default": "1"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply",
"default": "''"
},
{
"name": "nextButtonText",
"type": "string | undefined",
"description": "The next page button text. If not set, an icon control will be used.",
"default": "undefined"
},
{
"name": "page",
"type": "number",
"description": "The current page number",
"default": "1"
},
{
"name": "prevButtonText",
"type": "string | undefined",
"description": "The previous page button text. If not set, an icon control will be used.",
"default": "undefined"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\"",
"description": "Size of the pagination buttons",
"default": "'md'"
}
],
"events": [
{
"name": "pageChange",
"description": "Event emitted when page changes",
"emits": "CustomEvent<IPageChange>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-table"
],
"uses": []
},
"componentName": "ModusWcPagination"
},
"ModusWcProgress": {
"description": "A customizable progress component used to show the progress of a task or show the passing of time.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the progress element.",
"default": "''"
},
{
"name": "indeterminate",
"type": "boolean",
"description": "The indeterminate state of the progress component.",
"default": "false"
},
{
"name": "label",
"type": "string | undefined",
"description": "A text label to render within the progress bar",
"default": "undefined"
},
{
"name": "max",
"type": "number | undefined",
"description": "The progress component's maximum value.",
"default": "100"
},
{
"name": "value",
"type": "number",
"description": "The value of the progress component.",
"default": "0"
},
{
"name": "variant",
"type": "\"default\" | \"radial\" | undefined",
"description": "The variant of the progress component.",
"default": "'default'"
}
],
"events": [],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-input-label"
]
},
"componentName": "ModusWcProgress"
},
"ModusWcRadio": {
"description": "A customizable radio component",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the radio.",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "The tabindex of the input.",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "''"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "'md'"
},
{
"name": "value",
"type": "boolean",
"description": "The value of the radio.",
"default": "false"
}
],
"events": [
{
"name": "inputBlur",
"description": "Emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Emitted when the input value changes.",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-input-label"
]
},
"componentName": "ModusWcRadio"
},
"ModusWcRating": {
"description": "A rating component that allows users to choose a rating from predefined options",
"properties": [
{
"name": "allowHalf",
"type": "boolean | undefined",
"description": "Whether to allow half-ratings. Only applies to star and heart variants.",
"default": "false"
},
{
"name": "count",
"type": "number",
"description": "The number of rating items to display",
"default": "5"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the rating component is disabled",
"default": "false"
},
{
"name": "getAriaLabelText",
"type": "((ratingValue: number) => string) | undefined",
"description": "Function to provide aria-label text for a given rating-item index",
"default": "(ratingValue) => `Rating item ${ratingValue}`"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the rating component",
"default": "'md'"
},
{
"name": "value",
"type": "number",
"description": "The current value of the rating",
"default": "0"
},
{
"name": "variant",
"type": "\"heart\" | \"smiley\" | \"star\" | \"thumb\"",
"description": "The variant of the rating scale",
"default": "'smiley'"
}
],
"events": [
{
"name": "ratingChange",
"description": "Event emitted when the rating changes",
"emits": "CustomEvent<IRatingChange>"
}
],
"dependencies": {
"usedBy": [],
"uses": []
},
"componentName": "ModusWcRating"
},
"ModusWcSlider": {
"description": "A customizable slider component for numeric input using a sliding interaction",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the slider",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "The tabindex of the input",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label",
"default": "undefined"
},
{
"name": "max",
"type": "number | undefined",
"description": "The maximum slider value",
"default": "undefined"
},
{
"name": "min",
"type": "number | undefined",
"description": "The minimum slider value",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair",
"default": "''"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input",
"default": "'md'"
},
{
"name": "step",
"type": "number | undefined",
"description": "The increment of the slider",
"default": "undefined"
},
{
"name": "value",
"type": "number",
"description": "The value of the slider",
"default": "0"
}
],
"events": [
{
"name": "inputBlur",
"description": "Emitted when the input loses focus",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Emitted when the input value changes",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Emitted when the input gains focus",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"uses": [
"modus-wc-input-label"
]
},
"componentName": "ModusWcSlider"
},
"ModusWcStepper": {
"description": "A customizable stepper component used to show a list of steps in a process",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the steps element",
"default": "''"
},
{
"name": "orientation",
"type": "\"horizontal\" | \"vertical\" | undefined",
"description": "The orientation of the steps",
"default": "undefined"
},
{
"name": "steps",
"type": "IStepperItem[]",
"description": "The steps to display",
"default": "[]"
}
],
"events": [],
"dependencies": {},
"componentName": "ModusWcStepper"
},
"ModusWcSwitch": {
"description": "A customizable switch component used as a visual toggle between two mutually exclusive states",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the switch",
"default": "false"
},
{
"name": "indeterminate",
"type": "boolean",
"description": "The indeterminate state of the switch",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "The tabindex of the input",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair",
"default": "''"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input",
"default": "'md'"
},
{
"name": "value",
"type": "boolean",
"description": "The value of the switch",
"default": "false"
}
],
"events": [
{
"name": "inputBlur",
"description": "Emitted when the input loses focus",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Emitted when the input value changes",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Emitted when the input gains focus",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"uses": [
"modus-wc-input-label"
]
},
"componentName": "ModusWcSwitch"
},
"ModusWcTable": {
"description": "A versatile table component supporting pagination, sorting, selection, and inline editing capabilities",
"properties": [
{
"name": "columns",
"type": "ITableColumn[]",
"description": "An array of column definitions.",
"default": "undefined",
"required": true
},
{
"name": "data",
"type": "Record<string, unknown>[]",
"description": "An array of data objects.",
"default": "undefined",
"required": true
},
{
"name": "currentPage",
"type": "number",
"description": "The current page number in pagination (1-based index).",
"default": "1"
},
{
"name": "customClass",
"type": "string",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "density",
"type": "\"comfortable\" | \"compact\" | \"relaxed\"",
"description": "The density of the table, used to save space or increase readability.",
"default": "'comfortable'"
},
{
"name": "editable",
"type": "((row: Record<string, unknown>) => boolean) | boolean",
"description": "Enable cell editing. Either a boolean (all rows) or a predicate per row.",
"default": "false"
},
{
"name": "hover",
"type": "boolean",
"description": "Enable hover effect on table rows.",
"default": "true"
},
{
"name": "pageSizeOptions",
"type": "number[]",
"description": "Available options for the number of rows per page.",
"default": "[5, 10, 15]"
},
{
"name": "paginated",
"type": "boolean",
"description": "Enable pagination for the table.",
"default": "false"
},
{
"name": "selectable",
"type": "\"multi\" | \"none\" | \"single\"",
"description": "Row selection mode: 'none' for no selection, 'single' for single row, 'multi' for multiple rows.",
"default": "'none'"
},
{
"name": "selectedRowIds",
"type": "string[]",
"description": "Array of selected row IDs. Used for controlled selection state.",
"default": "undefined"
},
{
"name": "showPageSizeSelector",
"type": "boolean",
"description": "Show/hide the page size selector in pagination.",
"default": "true"
},
{
"name": "sortable",
"type": "boolean",
"description": "Enable sorting functionality for sortable columns.",
"default": "true"
},
{
"name": "zebra",
"type": "boolean",
"description": "Zebra striped tables differentiate rows by styling them in an alternating fashion.",
"default": "false"
}
],
"events": [
{
"name": "cellEditCommit",
"description": "Emits when cell editing is committed with the new value.",
"emits": "CustomEvent<{ rowIndex: number; colId: string; newValue: unknown; updatedRow: Record<string, unknown>; }>"
},
{
"name": "cellEditStart",
"description": "Emits when cell editing starts.",
"emits": "CustomEvent<{ rowIndex: number; colId: string; }>"
},
{
"name": "paginationChange",
"description": "Emits when pagination changes with the new pagination state.",
"emits": "CustomEvent<IPaginationChangeEventDetail>"
},
{
"name": "rowClick",
"description": "Emits when a row is clicked.",
"emits": "CustomEvent<{ row: Record<string, unknown>; index: number; }>"
},
{
"name": "rowSelectionChange",
"description": "Emits when row selection changes with the selected rows and their IDs.",
"emits": "CustomEvent<{ selectedRows: Record<string, unknown>[]; selectedRowIds: string[]; }>"
},
{
"name": "sortChange",
"description": "Emits when sorting changes with the new sorting state.",
"emits": "CustomEvent<ColumnSort[]>"
}
],
"dependencies": {
"uses": [
"modus-wc-select",
"modus-wc-checkbox",
"modus-wc-icon",
"modus-wc-pagination"
]
},
"componentName": "ModusWcTable"
},
"ModusWcTabs": {
"description": "A customizable tabs component used to create groups of tabs.",
"properties": [
{
"name": "activeTabIndex",
"type": "number",
"description": "The current active tab",
"default": "0"
},
{
"name": "customClass",
"type": "string",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\"",
"description": "The size of the tabs.",
"default": "'md'"
},
{
"name": "tabStyle",
"type": "\"bordered\" | \"boxed\" | \"lifted\" | \"none\"",
"description": "Additional styling for the tabs.",
"default": "'bordered'"
},
{
"name": "tabs",
"type": "ITab[]",
"description": "The tabs to display.",
"default": "[]"
}
],
"events": [
{
"name": "tabChange",
"description": "When a tab is switched to, this event outputs the relevant indices",
"emits": "CustomEvent<{ previousTab: number; newTab: number; }>"
}
],
"dependencies": {
"uses": [
"modus-wc-icon"
]
},
"componentName": "ModusWcTabs"
},
"ModusWcTextInput": {
"description": "A customizable input component used to create text inputs with various types. Supports auto-complete, validation, and feedback. Can be used as a standard text input, password field, search box, or other input types.",
"properties": [
{
"name": "autoCapitalize",
"type": "\"characters\" | \"none\" | \"off\" | \"on\" | \"sentences\" | \"words\" | undefined",
"description": "Controls automatic capitalization in inputted text.",
"default": "undefined"
},
{
"name": "autoComplete",
"type": "AutocompleteTypes | undefined",
"description": "Hint for form autofill feature.",
"default": "undefined"
},
{
"name": "autoCorrect",
"type": "\"off\" | \"on\" | undefined",
"description": "Controls automatic correction in inputted text. Support by browser varies.",
"default": "undefined"
},
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border.",
"default": "true"
},
{
"name": "clearAriaLabel",
"type": "string | undefined",
"description": "Aria label for the clear icon button.",
"default": "Clear text"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the input.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled.",
"default": "false"
},
{
"name": "enterkeyhint",
"type": "\"done\" | \"enter\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
"description": "A hint to the browser for which enter key to display.",
"default": "undefined"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input.",
"default": "undefined"
},
{
"name": "includeClear",
"type": "boolean | undefined",
"description": "Show the clear button within the input field.",
"default": "false"
},
{
"name": "includeSearch",
"type": "boolean | undefined",
"description": "Show the search icon within the input field.",
"default": "false"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputMode",
"type": "\"decimal\" | \"email\" | \"none\" | \"numeric\" | \"search\" | \"tel\" | \"text\" | \"url\"",
"description": "Hints at the type of data that might be entered by the user while editing the element or its contents. This allows a browser to display an appropriate virtual keyboard.",
"default": "text"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation (typically with the Tab key).",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "maxLength",
"type": "number | undefined",
"description": "Maximum length (number of characters) of value.",
"default": "undefined"
},
{
"name": "minLength",
"type": "number | undefined",
"description": "Minimum length (number of characters) of value.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "pattern",
"type": "string | undefined",
"description": "Pattern the value must match to be valid",
"default": "undefined"
},
{
"name": "placeholder",
"type": "string | undefined",
"description": "Text that appears in the form control when it has no value set.",
"default": "''"
},
{
"name": "readOnly",
"type": "boolean | undefined",
"description": "Whether the value is editable.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "md"
},
{
"name": "type",
"type": "\"date\" | \"datetime-local\" | \"email\" | \"month\" | \"number\" | \"password\" | \"search\" | \"tel\" | \"text\" | \"time\" | \"url\" | \"week\" | undefined",
"description": "Type of form control.",
"default": "text"
},
{
"name": "value",
"type": "string",
"description": "The value of the control.",
"default": "''"
}
],
"events": [
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes.",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"dependsOn": [
"modus-wc-input-label",
"modus-wc-input-feedback"
],
"usedBy": [
"modus-wc-autocomplete",
"modus-wc-navbar"
]
},
"componentName": "ModusWcTextInput"
},
"ModusWcTextarea": {
"description": "A customizable textarea component used for multi-line text input. Supports common form features like validation and feedback.",
"properties": [
{
"name": "autoCorrect",
"type": "\"off\" | \"on\" | undefined",
"description": "Controls automatic correction in inputted text. Support by browser varies.",
"default": "undefined"
},
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border.",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the textarea (supports DaisyUI).",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "The disabled state of the textarea.",
"default": "false"
},
{
"name": "enterkeyhint",
"type": "\"done\" | \"enter\" | \"go\" | \"next\" | \"previous\" | \"search\" | \"send\" | undefined",
"description": "A hint to the browser for which enter key to display.",
"default": "undefined"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input.",
"default": "undefined"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "The tabindex of the input.",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "maxLength",
"type": "number | undefined",
"description": "The maximum number of characters allowed in the textarea.",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "placeholder",
"type": "string | undefined",
"description": "The placeholder text for the textarea.",
"default": "''"
},
{
"name": "readonly",
"type": "boolean | undefined",
"description": "The readonly state of the textarea.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "rows",
"type": "number | undefined",
"description": "The number of visible text lines for the textarea.",
"default": "undefined"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "md"
},
{
"name": "value",
"type": "string",
"description": "The value of the textarea.",
"default": "''"
}
],
"events": [
{
"name": "inputBlur",
"description": "Emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Emitted when the input value changes.",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"dependsOn": [
"modus-wc-input-label",
"modus-wc-input-feedback"
]
},
"componentName": "ModusWcTextarea"
},
"ModusWcThemeSwitcher": {
"description": "A theme switcher component used to toggle the application theme and/or mode. Allows consumers to set the initial theme (Modus Classic, Modus Modern, etc.) and end-users to toggle modes (Light, Dark).",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the theme switcher element.",
"default": "''"
}
],
"events": [
{
"name": "themeChange",
"description": "An event that fires when the theme is changed.",
"emits": "CustomEvent<IThemeConfig>"
}
],
"dependencies": {},
"componentName": "ModusWcThemeSwitcher"
},
"ModusWcTimeInput": {
"description": "A customizable input component used to create time inputs. Provides functionality for time selection with options for hours and minutes, with optional seconds support.",
"properties": [
{
"name": "autoComplete",
"type": "\"off\" | \"on\" | undefined",
"description": "Hint for form autofill feature.",
"default": "undefined"
},
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border.",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the input.",
"default": "''"
},
{
"name": "datalistId",
"type": "string | undefined",
"description": "ID of a `<datalist>` element that contains pre-defined time options. The value must be the ID of a `<datalist>` element in the same document.",
"default": "undefined"
},
{
"name": "datalistOptions",
"type": "string[]",
"description": "The options to display in the time input dropdown. Options must be in `HH:mm` or `HH:mm:ss` format.",
"default": "[]"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled.",
"default": "false"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input.",
"default": "undefined"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element.",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation (typically with the Tab key).",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label.",
"default": "undefined"
},
{
"name": "max",
"type": "string | undefined",
"description": "Maximum value. Format: `HH:mm`, `HH:mm:ss`.",
"default": "undefined"
},
{
"name": "min",
"type": "string | undefined",
"description": "Minimum value. Format: `HH:mm`, `HH:mm:ss.`",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair.",
"default": "undefined"
},
{
"name": "readOnly",
"type": "boolean | undefined",
"description": "Whether the value is editable.",
"default": "false"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable.",
"default": "false"
},
{
"name": "showSeconds",
"type": "boolean | undefined",
"description": "Displays the time input format as `HH:mm:ss` if `true`. Internally sets the `step` to 1 second. If a `step` value is provided, it will override this attribute.",
"default": "false"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | undefined",
"description": "The size of the input.",
"default": "'md'"
},
{
"name": "step",
"type": "number | undefined",
"description": "Specifies the granularity that the `value` must adhere to. Value of step given in seconds. Default value is 60 seconds. Overrides the `seconds` attribute if both are provided.",
"default": "undefined"
},
{
"name": "value",
"type": "string",
"description": "The value of the time input. Always in 24-hour format that includes leading zeros: `HH:mm` or `HH:mm:ss`, regardless of input format which is likely to be selected based on user's locale (or by the user agent). If time includes seconds the format is always `HH:mm:ss`.",
"default": "''"
}
],
"events": [
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus.",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes.",
"emits": "CustomEvent<Event>"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus.",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"uses": [
"modus-wc-input-label",
"modus-wc-input-feedback"
]
},
"componentName": "ModusWcTimeInput"
},
"ModusWcToast": {
"description": "A customizable toast component used to stack elements, positioned on the corner of a page. Supports additional custom content via slot.",
"properties": [
{
"name": "customClass",
"type": "string",
"description": "Additional classes for custom styling.",
"default": ""
},
{
"name": "delay",
"type": "number",
"description": "Time taken to dismiss the toast in milliseconds",
"default": "undefined"
},
{
"name": "position",
"type": "\"bottom-center\" | \"bottom-end\" | \"bottom-start\" | \"middle-center\" | \"middle-end\" | \"middle-start\" | \"top-center\" | \"top-end\" | \"top-start\"",
"description": "The position of the toast in the parent container.",
"default": "top-end"
},
{
"name": "dismissible",
"type": "boolean",
"description": "Whether the toast is dismissible",
"default": "false"
},
{
"name": "retainElement",
"type": "boolean",
"description": "Whether to retain the toast's element in the DOM after it is dismissed",
"default": "false"
},
{
"name": "showIcon",
"type": "boolean",
"description": "Whether to show an icon matching the toast type",
"default": "false"
},
{
"name": "type",
"type": "\"danger\" | \"primary\" | \"secondary\" | \"success\"",
"description": "The toast's type, determines styling and icon",
"default": "primary"
}
],
"events": [
{
"name": "toastDismissed",
"description": "Event emitted when the toast is dismissed",
"emits": "CustomEvent<any>"
}
],
"dependencies": {
"usedBy": [],
"uses": [
"modus-wc-icon"
]
},
"componentName": "ModusWcToast"
},
"ModusWcToolbar": {
"description": "A customizable toolbar component used to organize content across the entire page.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the outer div.",
"default": "''"
}
],
"events": [],
"dependencies": {
"usedBy": [
"modus-wc-navbar"
]
},
"componentName": "ModusWcToolbar"
},
"ModusWcTooltip": {
"description": "A customizable tooltip component used to create tooltips with different content.",
"properties": [
{
"name": "content",
"type": "string",
"description": "The text content of the tooltip.",
"default": "''"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Disables displaying the tooltip on hover",
"default": "false"
},
{
"name": "forceOpen",
"type": "boolean | undefined",
"description": "Use this attribute to force the tooltip to remain open.",
"default": "undefined"
},
{
"name": "position",
"type": "\"auto\" | \"bottom\" | \"left\" | \"right\" | \"top\" | undefined",
"description": "The position that the tooltip will render in relation to the element.",
"default": "'auto'"
},
{
"name": "tooltipId",
"type": "string | undefined",
"description": "The ID of the tooltip element, useful for setting the \"aria-describedby\" attribute of related elements.",
"default": "undefined"
}
],
"events": [],
"dependencies": {},
"componentName": "ModusWcTooltip"
},
"ModusWcTypography": {
"description": "A customizable typography component used to render text with different sizes, variants, and weights.",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the typography element.",
"default": "''"
},
{
"name": "size",
"type": "\"lg\" | \"md\" | \"sm\" | \"xs\" | undefined",
"description": "The size of the font.",
"default": "'md'"
},
{
"name": "variant",
"type": "\"body\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\"",
"description": "The variant of the typography component.",
"default": "'p'"
},
{
"name": "weight",
"type": "\"bold\" | \"light\" | \"normal\" | \"semibold\" | undefined",
"description": "The weight of the text.",
"default": "'normal'"
}
],
"events": [],
"dependencies": {},
"componentName": "ModusWcTypography"
},
"ModusWcSelect": {
"description": "A customizable select component used to pick a value from a list of options",
"properties": [
{
"name": "bordered",
"type": "boolean | undefined",
"description": "Indicates that the input should have a border",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div",
"default": "''"
},
{
"name": "disabled",
"type": "boolean | undefined",
"description": "Whether the form control is disabled",
"default": "false"
},
{
"name": "feedback",
"type": "IInputFeedbackProp | undefined",
"description": "Feedback to render below the input",
"default": "undefined"
},
{
"name": "inputId",
"type": "string | undefined",
"description": "The ID of the input element",
"default": "undefined"
},
{
"name": "inputTabIndex",
"type": "number | undefined",
"description": "Determine the control's relative ordering for sequential focus navigation",
"default": "undefined"
},
{
"name": "label",
"type": "string | undefined",
"description": "The text to display within the label",
"default": "undefined"
},
{
"name": "name",
"type": "string | undefined",
"description": "Name of the form control. Submitted with the form as part of a name/value pair",
"default": "undefined"
},
{
"name": "options",
"type": "ISelectOption[]",
"description": "The options to display in the select dropdown",
"default": "[]"
},
{
"name": "required",
"type": "boolean | undefined",
"description": "A value is required for the form to be submittable",
"default": "false"
}
],
"events": [
{
"name": "inputBlur",
"description": "Event emitted when the input loses focus",
"emits": "CustomEvent<FocusEvent>"
},
{
"name": "inputChange",
"description": "Event emitted when the input value changes",
"emits": "CustomEvent<InputEvent>"
},
{
"name": "inputFocus",
"description": "Event emitted when the input gains focus",
"emits": "CustomEvent<FocusEvent>"
}
],
"dependencies": {
"usedBy": [
"modus-wc-table"
],
"uses": [
"modus-wc-input-label",
"modus-wc-input-feedback"
]
},
"componentName": "ModusWcSelect"
},
"ModusWcSkeleton": {
"description": "A customizable skeleton component used to create skeletons of various sizes and shapes",
"properties": [
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div",
"default": "''"
},
{
"name": "height",
"type": "string",
"description": "The height of the skeleton",
"default": "var(--modus-wc-line-height-md)"
},
{
"name": "shape",
"type": "\"circle\" | \"rectangle\" | undefined",
"description": "The shape of the skeleton",
"default": "'rectangle'"
},
{
"name": "width",
"type": "string",
"description": "The width of the skeleton",
"default": "'100%'"
}
],
"events": [],
"dependencies": {
"usedBy": [],
"uses": []
},
"componentName": "ModusWcSkeleton"
},
"ModusWcSideNavigation": {
"description": "A customizable side navigation component for organizing primary navigation and content areas in an application.",
"properties": [
{
"name": "collapseOnClickOutside",
"type": "boolean",
"description": "Whether the side navigation should collapse when clicking outside of it.",
"default": "true"
},
{
"name": "customClass",
"type": "string | undefined",
"description": "Custom CSS class to apply to the inner div.",
"default": "''"
},
{
"name": "expanded",
"type": "boolean",
"description": "Whether the side navigation is expanded.",
"default": "false"
},
{
"name": "maxWidth",
"type": "string",
"description": "Maximum width of the side navigation panel in an expanded state.",
"default": "'256px'"
}
],
"events": [],
"dependencies": {
"usedBy": [],
"uses": []
},
"componentName": "ModusWcSideNavigation"
}
}