From 71fbeae06530f92080eb233265e179c24302779f Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 6 Apr 2024 16:42:41 +0200 Subject: [PATCH 001/151] fix(CPopover, CTooltip): prevent setting the wrong component position on the initial transition --- .../src/components/popover/CPopover.tsx | 117 ++++++++---------- .../src/components/tooltip/CTooltip.tsx | 115 ++++++++--------- packages/coreui-react/src/hooks/usePopper.ts | 20 ++- 3 files changed, 116 insertions(+), 136 deletions(-) diff --git a/packages/coreui-react/src/components/popover/CPopover.tsx b/packages/coreui-react/src/components/popover/CPopover.tsx index 36b93afe..3f239a8b 100644 --- a/packages/coreui-react/src/components/popover/CPopover.tsx +++ b/packages/coreui-react/src/components/popover/CPopover.tsx @@ -1,13 +1,12 @@ import React, { forwardRef, HTMLAttributes, ReactNode, useRef, useEffect, useState } from 'react' import classNames from 'classnames' import PropTypes from 'prop-types' -import { Transition } from 'react-transition-group' import { CConditionalPortal } from '../conditional-portal' import { useForkedRef, usePopper } from '../../hooks' import { fallbackPlacementsPropType, triggerPropType } from '../../props' import type { Placements, Triggers } from '../../types' -import { getRTLPlacement, getTransitionDurationFromElement } from '../../utils' +import { executeAfterTransition, getRTLPlacement } from '../../utils' export interface CPopoverProps extends Omit, 'title' | 'content'> { /** @@ -101,6 +100,7 @@ export const CPopover = forwardRef( const uID = useRef(`popover${Math.floor(Math.random() * 1_000_000)}`) const { initPopper, destroyPopper } = usePopper() + const [mounted, setMounted] = useState(false) const [_visible, setVisible] = useState(visible) const _delay = typeof delay === 'number' ? { show: delay, hide: delay } : delay @@ -133,14 +133,39 @@ export const CPopover = forwardRef( setVisible(visible) }, [visible]) - const toggleVisible = (visible: boolean) => { - if (visible) { - setTimeout(() => setVisible(true), _delay.show) - return + useEffect(() => { + if (_visible) { + setMounted(true) + + if (popoverRef.current) { + popoverRef.current.classList.remove('fade', 'show') + destroyPopper() + } + + setTimeout(() => { + if (togglerRef.current && popoverRef.current) { + if (animation) { + popoverRef.current.classList.add('fade') + } + + initPopper(togglerRef.current, popoverRef.current, popperConfig) + popoverRef.current.classList.add('show') + onShow && onShow() + } + }, _delay.show) } - setTimeout(() => setVisible(false), _delay.hide) - } + return () => { + if (popoverRef.current) { + popoverRef.current.classList.remove('show') + onHide && onHide() + executeAfterTransition(() => { + destroyPopper() + setMounted(false) + }, popoverRef.current) + } + } + }, [_visible]) return ( <> @@ -150,71 +175,31 @@ export const CPopover = forwardRef( }), ref: togglerRef, ...((trigger === 'click' || trigger.includes('click')) && { - onClick: () => toggleVisible(!_visible), + onClick: () => setVisible(!_visible), }), ...((trigger === 'focus' || trigger.includes('focus')) && { - onFocus: () => toggleVisible(true), - onBlur: () => toggleVisible(false), + onFocus: () => setVisible(true), + onBlur: () => setVisible(false), }), ...((trigger === 'hover' || trigger.includes('hover')) && { - onMouseEnter: () => toggleVisible(true), - onMouseLeave: () => toggleVisible(false), + onMouseEnter: () => setVisible(true), + onMouseLeave: () => setVisible(false), }), })} - { - if (togglerRef.current && popoverRef.current) { - initPopper(togglerRef.current, popoverRef.current, popperConfig) - } - - onShow - }} - onEntering={() => { - if (togglerRef.current && popoverRef.current) { - popoverRef.current.style.display = 'initial' - } - }} - onExit={onHide} - onExited={() => { - destroyPopper() - }} - timeout={{ - enter: 0, - exit: popoverRef.current - ? getTransitionDurationFromElement(popoverRef.current) + 50 - : 200, - }} - unmountOnExit - > - {(state) => ( - - )} - + {mounted && ( + + )} ) diff --git a/packages/coreui-react/src/components/tooltip/CTooltip.tsx b/packages/coreui-react/src/components/tooltip/CTooltip.tsx index 07d88af6..b85c4961 100644 --- a/packages/coreui-react/src/components/tooltip/CTooltip.tsx +++ b/packages/coreui-react/src/components/tooltip/CTooltip.tsx @@ -1,13 +1,12 @@ import React, { forwardRef, HTMLAttributes, ReactNode, useRef, useEffect, useState } from 'react' import classNames from 'classnames' import PropTypes from 'prop-types' -import { Transition } from 'react-transition-group' import { CConditionalPortal } from '../conditional-portal' import { useForkedRef, usePopper } from '../../hooks' import { fallbackPlacementsPropType, triggerPropType } from '../../props' import type { Placements, Triggers } from '../../types' -import { getRTLPlacement, getTransitionDurationFromElement } from '../../utils' +import { executeAfterTransition, getRTLPlacement } from '../../utils' export interface CTooltipProps extends Omit, 'content'> { /** @@ -96,6 +95,7 @@ export const CTooltip = forwardRef( const uID = useRef(`tooltip${Math.floor(Math.random() * 1_000_000)}`) const { initPopper, destroyPopper } = usePopper() + const [mounted, setMounted] = useState(false) const [_visible, setVisible] = useState(visible) const _delay = typeof delay === 'number' ? { show: delay, hide: delay } : delay @@ -128,14 +128,39 @@ export const CTooltip = forwardRef( setVisible(visible) }, [visible]) - const toggleVisible = (visible: boolean) => { - if (visible) { - setTimeout(() => setVisible(true), _delay.show) - return + useEffect(() => { + if (_visible) { + setMounted(true) + + if (tooltipRef.current) { + tooltipRef.current.classList.remove('fade', 'show') + destroyPopper() + } + + setTimeout(() => { + if (togglerRef.current && tooltipRef.current) { + if (animation) { + tooltipRef.current.classList.add('fade') + } + + initPopper(togglerRef.current, tooltipRef.current, popperConfig) + tooltipRef.current.classList.add('show') + onShow && onShow() + } + }, _delay.show) } - setTimeout(() => setVisible(false), _delay.hide) - } + return () => { + if (tooltipRef.current) { + tooltipRef.current.classList.remove('show') + onHide && onHide() + executeAfterTransition(() => { + destroyPopper() + setMounted(false) + }, tooltipRef.current) + } + } + }, [_visible]) return ( <> @@ -145,70 +170,30 @@ export const CTooltip = forwardRef( }), ref: togglerRef, ...((trigger === 'click' || trigger.includes('click')) && { - onClick: () => toggleVisible(!_visible), + onClick: () => setVisible(!_visible), }), ...((trigger === 'focus' || trigger.includes('focus')) && { - onFocus: () => toggleVisible(true), - onBlur: () => toggleVisible(false), + onFocus: () => setVisible(true), + onBlur: () => setVisible(false), }), ...((trigger === 'hover' || trigger.includes('hover')) && { - onMouseEnter: () => toggleVisible(true), - onMouseLeave: () => toggleVisible(false), + onMouseEnter: () => setVisible(true), + onMouseLeave: () => setVisible(false), }), })} - { - if (togglerRef.current && tooltipRef.current) { - initPopper(togglerRef.current, tooltipRef.current, popperConfig) - } - - onShow - }} - onEntering={() => { - if (togglerRef.current && tooltipRef.current) { - tooltipRef.current.style.display = 'initial' - } - }} - onExit={onHide} - onExited={() => { - destroyPopper() - }} - timeout={{ - enter: 0, - exit: tooltipRef.current - ? getTransitionDurationFromElement(tooltipRef.current) + 50 - : 200, - }} - unmountOnExit - > - {(state) => ( - - )} - + {mounted && ( + + )} ) diff --git a/packages/coreui-react/src/hooks/usePopper.ts b/packages/coreui-react/src/hooks/usePopper.ts index 898a402e..26815ca3 100644 --- a/packages/coreui-react/src/hooks/usePopper.ts +++ b/packages/coreui-react/src/hooks/usePopper.ts @@ -2,12 +2,11 @@ import { useRef } from 'react' import { createPopper } from '@popperjs/core' import type { Instance, Options } from '@popperjs/core' -import { executeAfterTransition } from '../utils' - interface UsePopperOutput { popper: Instance | undefined initPopper: (reference: HTMLElement, popper: HTMLElement, options: Partial) => void destroyPopper: () => void + updatePopper: (options?: Partial) => void } export const usePopper = (): UsePopperOutput => { @@ -23,17 +22,28 @@ export const usePopper = (): UsePopperOutput => { const popperInstance = _popper.current if (popperInstance && el.current) { - executeAfterTransition(() => { - popperInstance.destroy() - }, el.current) + popperInstance.destroy() } _popper.current = undefined } + const updatePopper = (options?: Partial) => { + const popperInstance = _popper.current + + if (popperInstance && options) { + popperInstance.setOptions(options) + } + + if (popperInstance) { + popperInstance.update() + } + } + return { popper: _popper.current, initPopper, destroyPopper, + updatePopper, } } From e9e34e1d98510608c29540ceefe582a860e27ef3 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 6 Apr 2024 17:03:33 +0200 Subject: [PATCH 002/151] refactor(CTooltip): update the popper when content is changed --- packages/coreui-react/src/components/tooltip/CTooltip.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/coreui-react/src/components/tooltip/CTooltip.tsx b/packages/coreui-react/src/components/tooltip/CTooltip.tsx index b85c4961..18d0629f 100644 --- a/packages/coreui-react/src/components/tooltip/CTooltip.tsx +++ b/packages/coreui-react/src/components/tooltip/CTooltip.tsx @@ -94,7 +94,7 @@ export const CTooltip = forwardRef( const forkedRef = useForkedRef(ref, tooltipRef) const uID = useRef(`tooltip${Math.floor(Math.random() * 1_000_000)}`) - const { initPopper, destroyPopper } = usePopper() + const { initPopper, destroyPopper, updatePopper } = usePopper() const [mounted, setMounted] = useState(false) const [_visible, setVisible] = useState(visible) @@ -162,6 +162,10 @@ export const CTooltip = forwardRef( } }, [_visible]) + useEffect(() => { + updatePopper() + }, [content]) + return ( <> {React.cloneElement(children as React.ReactElement, { From bf0eafb5459787ce756924096ac4674dd8d46403 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sun, 5 May 2024 17:30:58 +0200 Subject: [PATCH 003/151] fix: wrong schema markup --- packages/docs/src/components/Seo.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/docs/src/components/Seo.tsx b/packages/docs/src/components/Seo.tsx index 72a162f0..d09b930a 100644 --- a/packages/docs/src/components/Seo.tsx +++ b/packages/docs/src/components/Seo.tsx @@ -61,7 +61,7 @@ const SEO = ({ title, description, name, image, article }: SEOProps) => { {seo.name && ( )} From c038629442d9c3171b9a1aba0dfd97a6cbdf355a Mon Sep 17 00:00:00 2001 From: mrholek Date: Sun, 19 May 2024 22:24:22 +0200 Subject: [PATCH 004/151] chore: clean-up --- packages/docs/content/components/modal.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/docs/content/components/modal.mdx b/packages/docs/content/components/modal.mdx index 15760787..21f212d4 100644 --- a/packages/docs/content/components/modal.mdx +++ b/packages/docs/content/components/modal.mdx @@ -105,7 +105,7 @@ return ( onClose={() => setVisible(false)} aria-labelledby="LiveDemoExampleLabel" > - setVisible(false)}> + Modal title From 1f424df63c2bf0e050a94aa3003a7e188bf7c088 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 25 May 2024 11:59:25 +0200 Subject: [PATCH 005/151] chore: update dependencies and devDependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @coreui/coreui ^5.0.0 → ^5.0.1 @mdx-js/mdx ^2.3.0 → ^3.0.1 @mdx-js/react ^2.3.0 → ^3.0.1 @rollup/plugin-commonjs ^25.0.7 → ^25.0.8 @testing-library/jest-dom ^6.4.2 → ^6.4.5 @testing-library/react ^14.2.2 → ^14.3.1 @types/react 18.2.73 → 18.3.3 @types/react-dom ^18.2.22 → ^18.3.0 @typescript-eslint/eslint-plugin ^7.4.0 → ^7.10.0 @typescript-eslint/parser ^7.4.0 → ^7.10.0 eslint-plugin-react-hooks ^4.6.0 → ^4.6.2 gatsby ^5.13.3 → ^5.13.5 gatsby-plugin-offline ^6.13.1 → ^6.13.2 lerna ^8.1.2 → ^8.1.3 react ^18.2.0 → ^18.3.1 react-dom ^18.2.0 → ^18.3.1 react-imask ^7.5.0 → ^7.6.1 rimraf ^5.0.5 → ^5.0.7 rollup ^4.13.1 → ^4.18.0 sass ^1.72.0 → ^1.77.2 ts-jest ^29.1.2 → ^29.1.3 typescript ^5.4.3 → ^5.4.5 --- package.json | 8 ++++---- packages/coreui-react/package.json | 22 +++++++++++----------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 00387841..109914f1 100644 --- a/package.json +++ b/package.json @@ -22,15 +22,15 @@ "test:update": "npm-run-all charts:test:update icons:test:update lib:test:update" }, "devDependencies": { - "@typescript-eslint/eslint-plugin": "^7.4.0", - "@typescript-eslint/parser": "^7.4.0", + "@typescript-eslint/eslint-plugin": "^7.10.0", + "@typescript-eslint/parser": "^7.10.0", "eslint": "8.57.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "^7.34.1", - "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-hooks": "^4.6.2", "eslint-plugin-unicorn": "^51.0.1", - "lerna": "^8.1.2", + "lerna": "^8.1.3", "npm-run-all": "^4.1.5", "prettier": "^3.2.5" }, diff --git a/packages/coreui-react/package.json b/packages/coreui-react/package.json index 90f90185..e66f90bf 100644 --- a/packages/coreui-react/package.json +++ b/packages/coreui-react/package.json @@ -41,31 +41,31 @@ "test:update": "jest --coverage --updateSnapshot" }, "dependencies": { - "@coreui/coreui": "^5.0.0", + "@coreui/coreui": "^5.0.1", "@popperjs/core": "^2.11.8", "prop-types": "^15.8.1" }, "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-commonjs": "^25.0.8", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-typescript": "^11.1.6", - "@testing-library/jest-dom": "^6.4.2", - "@testing-library/react": "^14.2.2", + "@testing-library/jest-dom": "^6.4.5", + "@testing-library/react": "^14.3.1", "@types/jest": "^29.5.12", - "@types/react": "18.2.73", - "@types/react-dom": "^18.2.22", + "@types/react": "18.3.3", + "@types/react-dom": "^18.3.0", "@types/react-transition-group": "^4.4.10", "classnames": "^2.5.1", "cross-env": "^7.0.3", "jest": "^29.7.0", "jest-environment-jsdom": "^29.7.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-transition-group": "^4.4.5", - "rollup": "^4.13.1", - "ts-jest": "^29.1.2", + "rollup": "^4.18.0", + "ts-jest": "^29.1.3", "tslib": "^2.6.2", - "typescript": "^5.4.3" + "typescript": "^5.4.5" }, "peerDependencies": { "react": ">=17", From 5633f3c25e56c289c9c025af05f7a33e8704d59c Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 25 May 2024 12:02:03 +0200 Subject: [PATCH 006/151] feat(CTabPane): add the `transition` property to enable control of fade animation on panels --- .../coreui-react/src/components/tabs/CTabPane.tsx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/coreui-react/src/components/tabs/CTabPane.tsx b/packages/coreui-react/src/components/tabs/CTabPane.tsx index 7d66be7f..9cc2e15b 100644 --- a/packages/coreui-react/src/components/tabs/CTabPane.tsx +++ b/packages/coreui-react/src/components/tabs/CTabPane.tsx @@ -18,6 +18,12 @@ export interface CTabPaneProps extends HTMLAttributes { * Callback fired when the component requests to be shown. */ onShow?: () => void + /** + * Enable fade in and fade out transition. + * + * @since 5.1.0 + */ + transition?: boolean /** * Toggle the visibility of component. */ @@ -25,7 +31,7 @@ export interface CTabPaneProps extends HTMLAttributes { } export const CTabPane = forwardRef( - ({ children, className, onHide, onShow, visible, ...rest }, ref) => { + ({ children, className, onHide, onShow, transition = true, visible, ...rest }, ref) => { const tabPaneRef = useRef() const forkedRef = useForkedRef(ref, tabPaneRef) @@ -35,9 +41,9 @@ export const CTabPane = forwardRef(
Date: Sat, 25 May 2024 19:34:06 +0200 Subject: [PATCH 007/151] feat(CTabs): the initial release of the new react tabs component --- .../src/components/dropdown/CDropdown.tsx | 4 +- .../src/components/dropdown/utils.ts | 22 -- .../coreui-react/src/components/tabs/CTab.tsx | 56 +++ .../src/components/tabs/CTabList.tsx | 92 +++++ .../src/components/tabs/CTabPanel.tsx | 98 +++++ .../src/components/tabs/CTabs.tsx | 54 +++ .../coreui-react/src/components/tabs/index.ts | 6 +- .../src/utils/getNextActiveElement.ts | 23 ++ packages/coreui-react/src/utils/index.ts | 2 + packages/docs/content/api/CTab.api.mdx | 11 + packages/docs/content/api/CTabList.api.mdx | 12 + packages/docs/content/api/CTabPane.api.mdx | 1 + packages/docs/content/api/CTabPanel.api.mdx | 15 + packages/docs/content/api/CTabs.api.mdx | 12 + .../docs/content/api/CTabsContext.api.mdx | 10 + packages/docs/content/components/tabs.mdx | 347 ++++++++++++++++++ packages/docs/src/nav.tsx | 8 + 17 files changed, 748 insertions(+), 25 deletions(-) create mode 100644 packages/coreui-react/src/components/tabs/CTab.tsx create mode 100644 packages/coreui-react/src/components/tabs/CTabList.tsx create mode 100644 packages/coreui-react/src/components/tabs/CTabPanel.tsx create mode 100644 packages/coreui-react/src/components/tabs/CTabs.tsx create mode 100644 packages/coreui-react/src/utils/getNextActiveElement.ts create mode 100644 packages/docs/content/api/CTab.api.mdx create mode 100644 packages/docs/content/api/CTabList.api.mdx create mode 100644 packages/docs/content/api/CTabPanel.api.mdx create mode 100644 packages/docs/content/api/CTabs.api.mdx create mode 100644 packages/docs/content/api/CTabsContext.api.mdx create mode 100644 packages/docs/content/components/tabs.mdx diff --git a/packages/coreui-react/src/components/dropdown/CDropdown.tsx b/packages/coreui-react/src/components/dropdown/CDropdown.tsx index 303a793a..65101efc 100644 --- a/packages/coreui-react/src/components/dropdown/CDropdown.tsx +++ b/packages/coreui-react/src/components/dropdown/CDropdown.tsx @@ -15,10 +15,10 @@ import { PolymorphicRefForwardingComponent } from '../../helpers' import { useForkedRef, usePopper } from '../../hooks' import { placementPropType } from '../../props' import type { Placements } from '../../types' -import { isRTL } from '../../utils' +import { getNextActiveElement, isRTL } from '../../utils' import type { Alignments, Directions } from './types' -import { getNextActiveElement, getPlacement } from './utils' +import { getPlacement } from './utils' export interface CDropdownProps extends HTMLAttributes { /** diff --git a/packages/coreui-react/src/components/dropdown/utils.ts b/packages/coreui-react/src/components/dropdown/utils.ts index edddb0db..c9659636 100644 --- a/packages/coreui-react/src/components/dropdown/utils.ts +++ b/packages/coreui-react/src/components/dropdown/utils.ts @@ -19,28 +19,6 @@ export const getAlignmentClassNames = (alignment: Alignments) => { return classNames } -export const getNextActiveElement = ( - list: HTMLElement[], - activeElement: HTMLElement, - shouldGetNext: boolean, - isCycleAllowed: boolean, -) => { - const listLength = list.length - let index = list.indexOf(activeElement) - - if (index === -1) { - return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0] - } - - index += shouldGetNext ? 1 : -1 - - if (isCycleAllowed) { - index = (index + listLength) % listLength - } - - return list[Math.max(0, Math.min(index, listLength - 1))] -} - export const getPlacement = ( placement: Placement, direction: string | undefined, diff --git a/packages/coreui-react/src/components/tabs/CTab.tsx b/packages/coreui-react/src/components/tabs/CTab.tsx new file mode 100644 index 00000000..a2485297 --- /dev/null +++ b/packages/coreui-react/src/components/tabs/CTab.tsx @@ -0,0 +1,56 @@ +import React, { forwardRef, HTMLAttributes, useContext } from 'react' +import PropTypes from 'prop-types' +import classNames from 'classnames' + +import { TabsContext } from './CTabs' + +export interface CTabProps extends HTMLAttributes { + /** + * A string of all className you want applied to the base component. + */ + className?: string + /** + * Item key. + */ + itemKey?: number | string +} + +export const CTab = forwardRef( + ({ children, className, itemKey, ...rest }, ref) => { + const { _activeItemKey, setActiveKey, id } = useContext(TabsContext) + + const isActive = () => itemKey === _activeItemKey + + return ( + + ) + }, +) + +CTab.propTypes = { + children: PropTypes.node, + className: PropTypes.string, + itemKey: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), +} + +CTab.displayName = 'CTab' diff --git a/packages/coreui-react/src/components/tabs/CTabList.tsx b/packages/coreui-react/src/components/tabs/CTabList.tsx new file mode 100644 index 00000000..7f70938c --- /dev/null +++ b/packages/coreui-react/src/components/tabs/CTabList.tsx @@ -0,0 +1,92 @@ +import React, { forwardRef, HTMLAttributes, KeyboardEvent, useRef } from 'react' +import PropTypes from 'prop-types' +import classNames from 'classnames' + +import { useForkedRef } from '../../hooks' +import { getNextActiveElement } from '../../utils' + +export interface CTabListProps extends HTMLAttributes { + /** + * A string of all className you want applied to the base component. + */ + className?: string + /** + * Specify a layout type for component. + */ + layout?: 'fill' | 'justified' + /** + * Set the nav variant to tabs or pills. + */ + variant?: 'pills' | 'tabs' | 'underline' | 'underline-border' +} + +export const CTabList = forwardRef( + ({ children, className, layout, variant, ...rest }, ref) => { + const tabsRef = useRef(null) + const forkedRef = useForkedRef(ref, tabsRef) + + const handleKeydown = (event: KeyboardEvent) => { + if ( + tabsRef.current !== null && + (event.key === 'ArrowDown' || + event.key === 'ArrowUp' || + event.key === 'ArrowLeft' || + event.key === 'ArrowRight' || + event.key === 'Home' || + event.key === 'End') + ) { + event.preventDefault() + const target = event.target as HTMLElement + // eslint-disable-next-line unicorn/prefer-spread + const items: HTMLElement[] = Array.from( + tabsRef.current.querySelectorAll('.nav-link:not(.disabled):not(:disabled)'), + ) + + let nextActiveElement + + if (event.key === 'Home' || event.key === 'End') { + nextActiveElement = event.key === 'End' ? items.at(-1) : items[0] + } else { + nextActiveElement = getNextActiveElement( + items, + target, + event.key === 'ArrowDown' || event.key === 'ArrowRight', + true, + ) + } + + if (nextActiveElement) { + nextActiveElement.focus({ preventScroll: true }) + } + } + } + + return ( +
+ {children} +
+ ) + }, +) + +CTabList.propTypes = { + children: PropTypes.node, + className: PropTypes.string, + layout: PropTypes.oneOf(['fill', 'justified']), + variant: PropTypes.oneOf(['pills', 'tabs', 'underline', 'underline-border']), +} + +CTabList.displayName = 'CTabList' diff --git a/packages/coreui-react/src/components/tabs/CTabPanel.tsx b/packages/coreui-react/src/components/tabs/CTabPanel.tsx new file mode 100644 index 00000000..6a6d703e --- /dev/null +++ b/packages/coreui-react/src/components/tabs/CTabPanel.tsx @@ -0,0 +1,98 @@ +import React, { HTMLAttributes, forwardRef, useContext, useEffect, useRef, useState } from 'react' +import PropTypes from 'prop-types' +import classNames from 'classnames' +import { Transition } from 'react-transition-group' + +import { TabsContext } from './CTabs' +import { useForkedRef } from '../../hooks' +import { getTransitionDurationFromElement } from '../../utils' + +export interface CTabPanelProps extends HTMLAttributes { + /** + * A string of all className you want applied to the base component. + */ + className?: string + /** + * Item key. + */ + itemKey?: number | string + /** + * Callback fired when the component requests to be hidden. + */ + onHide?: () => void + /** + * Callback fired when the component requests to be shown. + */ + onShow?: () => void + /** + * Enable fade in and fade out transition. + */ + transition?: boolean + /** + * Toggle the visibility of component. + */ + visible?: boolean +} + +export const CTabPanel = forwardRef( + ({ children, className, itemKey, onHide, onShow, transition = true, visible, ...rest }, ref) => { + const { _activeItemKey, id } = useContext(TabsContext) + + const tabPaneRef = useRef() + const forkedRef = useForkedRef(ref, tabPaneRef) + + const [_visible, setVisible] = useState(visible || _activeItemKey === itemKey) + + useEffect(() => { + visible !== undefined && setVisible(visible) + }, [visible]) + + useEffect(() => { + setVisible(_activeItemKey === itemKey) + }, [_activeItemKey]) + + return ( + + {(state) => ( +
+ {children} +
+ )} +
+ ) + }, +) + +CTabPanel.propTypes = { + children: PropTypes.node, + className: PropTypes.string, + itemKey: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), + onHide: PropTypes.func, + onShow: PropTypes.func, + transition: PropTypes.bool, + visible: PropTypes.bool, +} + +CTabPanel.displayName = 'CTabPanel' diff --git a/packages/coreui-react/src/components/tabs/CTabs.tsx b/packages/coreui-react/src/components/tabs/CTabs.tsx new file mode 100644 index 00000000..8740e109 --- /dev/null +++ b/packages/coreui-react/src/components/tabs/CTabs.tsx @@ -0,0 +1,54 @@ +import React, { createContext, forwardRef, HTMLAttributes, useEffect, useId, useState } from 'react' +import PropTypes from 'prop-types' +import classNames from 'classnames' + +export interface CTabsProps extends Omit, 'onChange'> { + /** + * The active item key. + */ + activeItemKey?: number | string + /** + * A string of all className you want applied to the base component. + */ + className?: string + /** + * The callback is fired when the active tab changes. + */ + onChange?: (value: number | string) => void +} + +export interface TabsContextProps { + _activeItemKey?: number | string + setActiveKey: React.Dispatch> + id?: string +} + +export const TabsContext = createContext({} as TabsContextProps) + +export const CTabs = forwardRef( + ({ children, activeItemKey, className, onChange }, ref) => { + const id = useId() + const [_activeItemKey, setActiveKey] = useState(activeItemKey) + + useEffect(() => { + _activeItemKey && onChange && onChange(_activeItemKey) + }, [_activeItemKey]) + + return ( + +
+ {children} +
+
+ ) + }, +) + +CTabs.propTypes = { + activeItemKey: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), + children: PropTypes.node, + className: PropTypes.string, + onChange: PropTypes.func, +} + +CTabs.displayName = 'CTabs' diff --git a/packages/coreui-react/src/components/tabs/index.ts b/packages/coreui-react/src/components/tabs/index.ts index 1962780c..0d2c6e06 100644 --- a/packages/coreui-react/src/components/tabs/index.ts +++ b/packages/coreui-react/src/components/tabs/index.ts @@ -1,4 +1,8 @@ +import { CTab } from './CTab' import { CTabContent } from './CTabContent' import { CTabPane } from './CTabPane' +import { CTabPanel } from './CTabPanel' +import { CTabList } from './CTabList' +import { CTabs } from './CTabs' -export { CTabContent, CTabPane } +export { CTab, CTabContent, CTabList, CTabPane, CTabPanel, CTabs } diff --git a/packages/coreui-react/src/utils/getNextActiveElement.ts b/packages/coreui-react/src/utils/getNextActiveElement.ts new file mode 100644 index 00000000..a80293ca --- /dev/null +++ b/packages/coreui-react/src/utils/getNextActiveElement.ts @@ -0,0 +1,23 @@ +const getNextActiveElement = ( + list: HTMLElement[], + activeElement: HTMLElement, + shouldGetNext: boolean, + isCycleAllowed: boolean, +) => { + const listLength = list.length + let index = list.indexOf(activeElement) + + if (index === -1) { + return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0] + } + + index += shouldGetNext ? 1 : -1 + + if (isCycleAllowed) { + index = (index + listLength) % listLength + } + + return list[Math.max(0, Math.min(index, listLength - 1))] +} + +export default getNextActiveElement diff --git a/packages/coreui-react/src/utils/index.ts b/packages/coreui-react/src/utils/index.ts index 10dbd154..bcdb558e 100644 --- a/packages/coreui-react/src/utils/index.ts +++ b/packages/coreui-react/src/utils/index.ts @@ -1,4 +1,5 @@ import executeAfterTransition from './executeAfterTransition' +import getNextActiveElement from './getNextActiveElement' import getRTLPlacement from './getRTLPlacement' import getTransitionDurationFromElement from './getTransitionDurationFromElement' import isInViewport from './isInViewport' @@ -6,6 +7,7 @@ import isRTL from './isRTL' export { executeAfterTransition, + getNextActiveElement, getRTLPlacement, getTransitionDurationFromElement, isInViewport, diff --git a/packages/docs/content/api/CTab.api.mdx b/packages/docs/content/api/CTab.api.mdx new file mode 100644 index 00000000..f0ba1fe6 --- /dev/null +++ b/packages/docs/content/api/CTab.api.mdx @@ -0,0 +1,11 @@ + +```jsx +import { CTab } from '@coreui/react' +// or +import CTab from '@coreui/react/src/components/tabs/CTab' +``` + +| Property | Description | Type | Default | +| --- | --- | --- | --- | +| **className** | A string of all className you want applied to the base component. | `string` | - | +| **itemKey** | Item key. | `string` \| `number` | - | diff --git a/packages/docs/content/api/CTabList.api.mdx b/packages/docs/content/api/CTabList.api.mdx new file mode 100644 index 00000000..0625b962 --- /dev/null +++ b/packages/docs/content/api/CTabList.api.mdx @@ -0,0 +1,12 @@ + +```jsx +import { CTabList } from '@coreui/react' +// or +import CTabList from '@coreui/react/src/components/tabs/CTabList' +``` + +| Property | Description | Type | Default | +| --- | --- | --- | --- | +| **className** | A string of all className you want applied to the base component. | `string` | - | +| **layout** | Specify a layout type for component. | `'fill'` \| `'justified'` | - | +| **variant** | Set the nav variant to tabs or pills. | `'pills'` \| `'tabs'` \| `'underline'` \| `'underline-border'` | - | diff --git a/packages/docs/content/api/CTabPane.api.mdx b/packages/docs/content/api/CTabPane.api.mdx index 9b2755bc..e37cc210 100644 --- a/packages/docs/content/api/CTabPane.api.mdx +++ b/packages/docs/content/api/CTabPane.api.mdx @@ -10,4 +10,5 @@ import CTabPane from '@coreui/react/src/components/tabs/CTabPane' | **className** | A string of all className you want applied to the base component. | `string` | - | | **onHide** | Callback fired when the component requests to be hidden. | `() => void` | - | | **onShow** | Callback fired when the component requests to be shown. | `() => void` | - | +| **transition** **_5.1.0+_** | Enable fade in and fade out transition. | `boolean` | true | | **visible** | Toggle the visibility of component. | `boolean` | - | diff --git a/packages/docs/content/api/CTabPanel.api.mdx b/packages/docs/content/api/CTabPanel.api.mdx new file mode 100644 index 00000000..02745245 --- /dev/null +++ b/packages/docs/content/api/CTabPanel.api.mdx @@ -0,0 +1,15 @@ + +```jsx +import { CTabPanel } from '@coreui/react' +// or +import CTabPanel from '@coreui/react/src/components/tabs/CTabPanel' +``` + +| Property | Description | Type | Default | +| --- | --- | --- | --- | +| **className** | A string of all className you want applied to the base component. | `string` | - | +| **itemKey** | Item key. | `string` \| `number` | - | +| **onHide** | Callback fired when the component requests to be hidden. | `() => void` | - | +| **onShow** | Callback fired when the component requests to be shown. | `() => void` | - | +| **transition** | Enable fade in and fade out transition. | `boolean` | true | +| **visible** | Toggle the visibility of component. | `boolean` | - | diff --git a/packages/docs/content/api/CTabs.api.mdx b/packages/docs/content/api/CTabs.api.mdx new file mode 100644 index 00000000..3a31ef16 --- /dev/null +++ b/packages/docs/content/api/CTabs.api.mdx @@ -0,0 +1,12 @@ + +```jsx +import { CTabs } from '@coreui/react' +// or +import CTabs from '@coreui/react/src/components/tabs/CTabs' +``` + +| Property | Description | Type | Default | +| --- | --- | --- | --- | +| **activeItemKey** | The active item key. | `string` \| `number` | - | +| **className** | A string of all className you want applied to the base component. | `string` | - | +| **onChange** | The callback is fired when the active tab changes. | `(value: string` \| `number) => void` | - | diff --git a/packages/docs/content/api/CTabsContext.api.mdx b/packages/docs/content/api/CTabsContext.api.mdx new file mode 100644 index 00000000..fc799c7c --- /dev/null +++ b/packages/docs/content/api/CTabsContext.api.mdx @@ -0,0 +1,10 @@ + +```jsx +import { CTabsContext } from '@coreui/react' +// or +import CTabsContext from '@coreui/react/src/components/tabs/CTabsContext' +``` + +| Property | Description | Type | Default | +| --- | --- | --- | --- | +| **activeItemKey** | The active item key. | `string` \| `number` | - | diff --git a/packages/docs/content/components/tabs.mdx b/packages/docs/content/components/tabs.mdx new file mode 100644 index 00000000..03fd7a76 --- /dev/null +++ b/packages/docs/content/components/tabs.mdx @@ -0,0 +1,347 @@ +--- +title: React Tabs Components +name: Tabs +description: The CoreUI React Tabs component provides a flexible and accessible way to create tabbed navigation in your application. It supports various styles and configurations to meet different design requirements. +menu: Components +route: /components/tabs +since: 5.1.0 +--- + +import { useState } from 'react' + +import { + CTab, + CTabContent, + CTabList, + CTabPanel, + CTabs, +} from '@coreui/react/src/index' + +## Example + +The basic React tabs example uses the `variant="tabs"` props to generate a tabbed interface. + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +## Available styles + +Change the style of ``'s component with modifiers and utilities. Mix and match as needed, or build your own. + +### Unstyled + +If you don’t provide the `variant` prop, the component will default to a basic style. + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +### Pills + +Take that same code, but use `variant="pills"` instead: + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +### Underline + +Take that same code, but use `variant="underline"` instead: + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +### Underline border + +Take that same code, but use `variant="underline-border"` instead: + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +### Fill and justify + +Force your ``'s contents to extend the full available width one of two modifier classes. To proportionately fill all available space use `layout="fill"`. Notice that all horizontal space is occupied, but not every nav item has the same width. + +```jsx preview + + + Home + Profile tab with longer content + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +For equal-width elements, use `layout="justified"`. All horizontal space will be occupied by nav links, but unlike the `layout="fill"` above, every nav item will be the same width. + +```jsx preview + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +## Accessibility + +Dynamic tabbed interfaces, as described in the [WAI ARIA Authoring Practices](https://www.w3.org/TR/wai-aria-practices/#tabpanel), require `role="tablist"`, `role="tab"`, `role="tabpanel"`, and additional `aria-` attributes in order to convey their structure, functionality and current state to users of assistive technologies (such as screen readers). + +### WAI-ARIA Roles + +- The element that serves as the container for the set of tabs has the role `tablist`. +- Each element that serves as a tab has the role `tab` and is contained within the element with the role `tablist`. +- Each element that contains the content panel for a tab has the role `tabpanel`. +- If the tab list has a visible label, the element with the role `tablist` has `aria-labelledby` set to a value that refers to the labeling element. Otherwise, the `tablist` element has a label provided by `aria-label`. +- Each element with the role `tab` has the property `aria-controls` referring to its associated `tabpanel` element. +- The active tab element has the state `aria-selected` set to `true`, and all other tab elements have it set to `false`. +- Each element with the role `tabpanel` has the property `aria-labelledby` referring to its associated `tab` element. + +Our React Tabs component automatically manages all `role="..."` and `aria-` attributes for accessibility. It also handles the selected state by adding `aria-selected="true"` to the active tab. Additionally, you have the flexibility to manually set these attributes, as shown in the example below: + +```jsx + + + Home + Profile + Contact + Disabled + + + + Home tab content + + + Profile tab content + + + Contact tab content + + + Disabled tab content + + + +``` + +This example demonstrates how to manually set `aria-selected`, `aria-controls`, and `aria-labelledby` attributes on your ``'s and ``'s. + +### Keyboard Interaction + +**When focus enters the tab list:** + +Tab: It places focus on the active `tab` element. + +**When focus is on a tab element:** + +Tab: Moves focus to the next element in the tab sequence, typically the tabpanel unless the first focusable element inside the tabpanel is found earlier. + +Left Arrow: Moves focus to the previous tab. If on the first tab, it wraps around to the last tab. + +Right Arrow: Moves focus to the next tab. If on the last tab, it wraps around to the first tab. + +Home: Moves focus to the first tab. + +End: Moves focus to the last tab. + +## Customizing + +### CSS variables + +React tabs use local CSS variables on `.nav`, `.nav-tabs`, `.nav-pills`, `.nav-underline` and `.nav-underline-border` for enhanced real-time customization. Values for the CSS variables are set via Sass, so Sass customization is still supported, too. + +On the `.nav` base class: + + + +On the `.nav-tabs` modifier class: + + + +On the `.nav-pills` modifier class: + + + +On the `.nav-underline` modifier class: + + + +On the `.nav-underline-border` modifier class: + + + +#### How to use CSS variables + +```jsx +const vars = { + '--my-css-var': 10, + '--my-another-css-var': "red" +} +return ... +``` + +### SASS variables + + + +## API + +### CTab + +`markdown:CTab.api.mdx` + +### CTabContent + +`markdown:CTabContent.api.mdx` + +### CTabList + +`markdown:CTabList.api.mdx` + +### CTabPanel + +`markdown:CTabPanel.api.mdx` + +### CTabs + +`markdown:CTabs.api.mdx` + diff --git a/packages/docs/src/nav.tsx b/packages/docs/src/nav.tsx index 2b3a062e..6aebda1d 100644 --- a/packages/docs/src/nav.tsx +++ b/packages/docs/src/nav.tsx @@ -293,6 +293,14 @@ const nav = [ name: 'Table', to: '/components/table/', }, + { + name: 'Tabs', + to: '/components/tabs/', + badge: { + color: 'success', + text: 'New', + }, + }, { name: 'Toast', to: '/components/toast/', From 8dc985366bd318966e44dd2befad457a3598f284 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 25 May 2024 19:38:49 +0200 Subject: [PATCH 008/151] chore: update dependencies and devDependencies --- packages/docs/package.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/docs/package.json b/packages/docs/package.json index e8b587d9..ab551842 100644 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -25,21 +25,21 @@ }, "dependencies": { "@coreui/chartjs": "^4.0.0", - "@coreui/coreui": "^5.0.0", + "@coreui/coreui": "^5.0.1", "@coreui/icons": "^3.0.1", "@coreui/icons-react": "^2.2.1", "@coreui/react-chartjs": "^3.0.0", "@coreui/utils": "^2.0.2", "@docsearch/css": "^3.6.0", - "@mdx-js/mdx": "^2.3.0", - "@mdx-js/react": "^2.3.0", + "@mdx-js/mdx": "^3.0.1", + "@mdx-js/react": "^3.0.1", "@types/react-helmet": "^6.1.11", - "gatsby": "^5.13.3", + "gatsby": "^5.13.5", "gatsby-plugin-google-tagmanager": "^5.13.1", "gatsby-plugin-image": "^3.13.1", "gatsby-plugin-manifest": "^5.13.1", "gatsby-plugin-mdx": "^5.13.1", - "gatsby-plugin-offline": "^6.13.1", + "gatsby-plugin-offline": "^6.13.2", "gatsby-plugin-react-helmet": "^6.13.1", "gatsby-plugin-sass": "^6.13.1", "gatsby-plugin-sharp": "^5.13.1", @@ -53,13 +53,13 @@ "prism-react-renderer": "^2.3.1", "prismjs": "^1.29.0", "prop-types": "^15.8.1", - "react": "^18.2.0", + "react": "^18.3.1", "react-docgen-typescript": "^2.2.2", - "react-dom": "^18.2.0", + "react-dom": "^18.3.1", "react-helmet": "^6.1.0", - "react-imask": "^7.5.0", - "rimraf": "^5.0.5", - "sass": "^1.72.0" + "react-imask": "^7.6.1", + "rimraf": "^5.0.7", + "sass": "^1.77.2" }, "devDependencies": { "npm-run-all": "^4.1.5" From 4617f9d8b1c39b1e559c0d6c20ec0e2f7d5038e2 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 25 May 2024 19:45:20 +0200 Subject: [PATCH 009/151] docs: improve layout, add tabs support to mdx files --- .../{gatsby-browser.js => gatsby-browser.tsx} | 0 .../{gatsby-config.js => gatsby-config.mjs} | 17 +- .../docs/{gatsby-node.js => gatsby-node.mjs} | 19 +- .../docs/{gatsby-ssr.js => gatsby-ssr.tsx} | 0 packages/docs/src/components/ScssDocs.tsx | 2 +- packages/docs/src/components/Toc.tsx | 68 +++-- .../docs/src/styles/_component-examples.scss | 15 +- packages/docs/src/styles/_layout.scss | 48 ++++ packages/docs/src/styles/_toc.scss | 47 +++- packages/docs/src/templates/DefaultLayout.tsx | 18 +- packages/docs/src/templates/DocsLayout.tsx | 91 ++++--- packages/remark-code-tabs/index.js | 244 ++++++++++++++++++ packages/remark-code-tabs/package.json | 19 ++ 13 files changed, 498 insertions(+), 90 deletions(-) rename packages/docs/{gatsby-browser.js => gatsby-browser.tsx} (100%) rename packages/docs/{gatsby-config.js => gatsby-config.mjs} (88%) rename packages/docs/{gatsby-node.js => gatsby-node.mjs} (73%) rename packages/docs/{gatsby-ssr.js => gatsby-ssr.tsx} (100%) create mode 100755 packages/remark-code-tabs/index.js create mode 100644 packages/remark-code-tabs/package.json diff --git a/packages/docs/gatsby-browser.js b/packages/docs/gatsby-browser.tsx similarity index 100% rename from packages/docs/gatsby-browser.js rename to packages/docs/gatsby-browser.tsx diff --git a/packages/docs/gatsby-config.js b/packages/docs/gatsby-config.mjs similarity index 88% rename from packages/docs/gatsby-config.js rename to packages/docs/gatsby-config.mjs index 5af7a215..93254870 100644 --- a/packages/docs/gatsby-config.js +++ b/packages/docs/gatsby-config.mjs @@ -1,4 +1,12 @@ -module.exports = { +import remarkGfm from 'remark-gfm' +import remarkCodeTabs from 'remark-code-tabs' + +import { dirname } from 'node:path' +import { fileURLToPath } from 'node:url' + +const __dirname = dirname(fileURLToPath(import.meta.url)) + +const config = { siteMetadata: { title: `CoreUI for React.js`, titleTemplate: `%s · React UI Components · CoreUI `, @@ -52,10 +60,7 @@ module.exports = { resolve: `gatsby-plugin-mdx`, options: { mdxOptions: { - remarkPlugins: [ - // Add GitHub Flavored Markdown (GFM) support - require(`remark-gfm`), - ], + remarkPlugins: [remarkGfm, remarkCodeTabs], }, gatsbyRemarkPlugins: [ { @@ -99,3 +104,5 @@ module.exports = { }, ], } + +export default config diff --git a/packages/docs/gatsby-node.js b/packages/docs/gatsby-node.mjs similarity index 73% rename from packages/docs/gatsby-node.js rename to packages/docs/gatsby-node.mjs index a93ffd30..97f4a8e1 100644 --- a/packages/docs/gatsby-node.js +++ b/packages/docs/gatsby-node.mjs @@ -1,7 +1,12 @@ -const path = require('node:path') -const { createFilePath } = require('gatsby-source-filesystem') +import { resolve } from 'node:path' +import { createFilePath } from 'gatsby-source-filesystem' -exports.onCreateNode = async ({ node, loadNodeContent, actions: { createNodeField }, getNode }) => { +export const onCreateNode = async ({ + node, + loadNodeContent, + actions: { createNodeField }, + getNode, +}) => { if (node.internal.type === 'Mdx') { const slug = createFilePath({ node, getNode }) @@ -22,7 +27,11 @@ exports.onCreateNode = async ({ node, loadNodeContent, actions: { createNodeFiel } } -exports.createPages = async ({ graphql, actions: { createPage, createRedirect }, reporter }) => { +export const createPages = async ({ + graphql, + actions: { createPage, createRedirect }, + reporter, +}) => { const result = await graphql(` query { allMdx { @@ -50,7 +59,7 @@ exports.createPages = async ({ graphql, actions: { createPage, createRedirect }, posts.forEach((node) => { createPage({ path: node.fields.slug, - component: `${path.resolve(`./src/templates/MdxLayout.tsx`)}?__contentFilePath=${ + component: `${resolve(`./src/templates/MdxLayout.tsx`)}?__contentFilePath=${ node.internal.contentFilePath }`, context: { id: node.id }, diff --git a/packages/docs/gatsby-ssr.js b/packages/docs/gatsby-ssr.tsx similarity index 100% rename from packages/docs/gatsby-ssr.js rename to packages/docs/gatsby-ssr.tsx diff --git a/packages/docs/src/components/ScssDocs.tsx b/packages/docs/src/components/ScssDocs.tsx index 45d649db..53c36b9f 100644 --- a/packages/docs/src/components/ScssDocs.tsx +++ b/packages/docs/src/components/ScssDocs.tsx @@ -43,7 +43,7 @@ const ScssDocs = ({ file, capture }: ScssDocsProps) => { return ( code && ( -
+
= ({ items }) => { - const toc = (items: TocItem[]) => { - return ( - items && - items.map((item, index) => { - if (Array.isArray(item.items)) { - return ( -
  • - {item.title} -
      {toc(item.items)}
    -
  • - ) - } +const toc = (items: TocItem[]) => { + return ( + items && + items.map((item, index) => { + if (Array.isArray(item.items)) { return (
  • {item.title} +
      {toc(item.items)}
  • ) - }) - ) - } + } + return ( +
  • + {item.title} +
  • + ) + }) + ) +} +const Toc: FC = ({ items }) => { + const [visible, setVisible] = useState(false) return (
    - On this page - -
      {toc(items)}
    -
    + + On this page + + +
      {toc(items)}
    +
    +
    ) } diff --git a/packages/docs/src/styles/_component-examples.scss b/packages/docs/src/styles/_component-examples.scss index ed1b36f2..3fe0496c 100644 --- a/packages/docs/src/styles/_component-examples.scss +++ b/packages/docs/src/styles/_component-examples.scss @@ -2,6 +2,14 @@ // Docs examples // +.tab-content .tab-pane { + @include border-top-radius(0); + + .highlight { + @include border-top-radius(0); + } +} + .docs-example-snippet { border: solid var(--cui-border-color); border-width: 1px 0; @@ -373,19 +381,20 @@ .highlight { position: relative; padding: .75rem ($cd-gutter-x * .5); - margin-bottom: 1rem; + margin: 0 ($cd-gutter-x * -.5) 1rem ($cd-gutter-x * -.5) ; border: 1px solid var(--cui-border-color); background-color: var(--cd-pre-bg); @include media-breakpoint-up(md) { padding: .75rem 1.25rem; + margin-right: 0; + margin-left: 0; @include border-radius(var(--cui-border-radius)); } pre { padding: .25rem 0 .875rem; margin-top: .8125rem; - margin-right: 1.875rem; margin-bottom: 0; overflow: overlay; white-space: pre; @@ -404,7 +413,7 @@ margin: 0 ($cd-gutter-x * -.5) $spacer; .highlight { - margin-bottom: 0; + margin: 0; } .docs-example ~ .highlight { diff --git a/packages/docs/src/styles/_layout.scss b/packages/docs/src/styles/_layout.scss index 38bfe8c4..2ee63995 100644 --- a/packages/docs/src/styles/_layout.scss +++ b/packages/docs/src/styles/_layout.scss @@ -3,4 +3,52 @@ @include ltr-rtl("padding-left", var(--cui-sidebar-occupy-start, 0)); will-change: auto; @include transition(padding .15s); + + > .container-lg { + --cui-gutter-x: 3rem; + } +} + +.docs-sidebar { + grid-area: sidebar; +} + +.docs-main { + grid-area: main; + + @include media-breakpoint-down(lg) { + max-width: 760px; + margin-inline: auto; + } + + @include media-breakpoint-up(md) { + display: grid; + grid-template-areas: + "intro" + "toc" + "content"; + grid-template-rows: auto auto 1fr; + gap: $grid-gutter-width; + } + + @include media-breakpoint-up(lg) { + grid-template-areas: + "intro toc" + "content toc"; + grid-template-rows: auto 1fr; + grid-template-columns: 4fr 1fr; + } +} + +.docs-intro { + grid-area: intro; +} + +.docs-toc { + grid-area: toc; +} + +.docs-content { + grid-area: content; + min-width: 1px; // Fix width when bd-content contains a `
    ` https://github.com/twbs/bootstrap/issues/25410
     }
    diff --git a/packages/docs/src/styles/_toc.scss b/packages/docs/src/styles/_toc.scss
    index 6178d193..8f6dc04d 100644
    --- a/packages/docs/src/styles/_toc.scss
    +++ b/packages/docs/src/styles/_toc.scss
    @@ -39,4 +39,49 @@
           }
         }
       }
    -}
    \ No newline at end of file
    +}
    +
    +.docs-toc-toggle {
    +  display: flex;
    +  align-items: center;
    +
    +  @include media-breakpoint-down(sm) {
    +    justify-content: space-between;
    +    width: 100%;
    +  }
    +
    +  @include media-breakpoint-down(md) {
    +    color: var(--cui-body-color);
    +    border: 1px solid var(--cui-border-color);
    +    @include border-radius(var(--cui-border-radius));
    +
    +    &:hover,
    +    &:focus,
    +    &:active,
    +    &[aria-expanded="true"] {
    +      color: var(--cui-primary);
    +      background-color: var(--cui-body-bg);
    +      border-color: var(--cui-primary);
    +    }
    +
    +    &:focus,
    +    &[aria-expanded="true"] {
    +      box-shadow: 0 0 0 3px rgba(var(--cui-primary-rgb), .25);
    +    }
    +  }
    +}
    +
    +.docs-toc-collapse {
    +  @include media-breakpoint-down(md) {
    +    nav {
    +      padding: 1.25rem 1.25rem 1.25rem 1rem;
    +      background-color: var(--cui-tertiary-bg);
    +      border: 1px solid var(--cui-border-color);
    +      @include border-radius(var(--cui-border-radius));
    +    }
    +  }
    +
    +  @include media-breakpoint-up(md) {
    +    display: block !important; // stylelint-disable-line declaration-no-important
    +  }
    +}
    diff --git a/packages/docs/src/templates/DefaultLayout.tsx b/packages/docs/src/templates/DefaultLayout.tsx
    index 2065aa0e..83c5fd99 100644
    --- a/packages/docs/src/templates/DefaultLayout.tsx
    +++ b/packages/docs/src/templates/DefaultLayout.tsx
    @@ -29,17 +29,15 @@ const DefaultLayout: FC = ({ children, data, pageContext, pa
         >
           
           
    -      
    +
    -
    - {path === '/404/' ? ( - {children} - ) : ( - - {children} - - )} -
    + {path === '/404/' ? ( + {children} + ) : ( + + {children} + + )}
    )} - + ) } diff --git a/packages/docs/src/templates/DefaultLayout.tsx b/packages/docs/src/templates/DefaultLayout.tsx index 007145cd..73022b43 100644 --- a/packages/docs/src/templates/DefaultLayout.tsx +++ b/packages/docs/src/templates/DefaultLayout.tsx @@ -1,10 +1,9 @@ import React, { FC, useState } from 'react' -import { Footer, Header, Sidebar, Seo } from '../components' +import { Footer, Header, Sidebar } from '../components' import { CContainer } from '@coreui/react/src/' import DocsLayout from './DocsLayout' import { AppContext } from '../AppContext' -import { Script } from 'gatsby' interface DefaultLayoutProps { children: any // eslint-disable-line @typescript-eslint/no-explicit-any @@ -16,11 +15,6 @@ interface DefaultLayoutProps { const DefaultLayout: FC = ({ children, data, location, pageContext, path }) => { const [sidebarVisible, setSidebarVisible] = useState() - - const title = pageContext.frontmatter ? pageContext.frontmatter.title : '' - const description = pageContext.frontmatter ? pageContext.frontmatter.description : '' - const name = pageContext.frontmatter ? pageContext.frontmatter.name : '' - return ( = ({ children, data, location, pageC setSidebarVisible, }} > -
    @@ -41,29 +34,6 @@ const DefaultLayout: FC = ({ children, data, location, pageC )}
    -
    ) } diff --git a/packages/docs/src/templates/MdxLayout.tsx b/packages/docs/src/templates/MdxLayout.tsx index b1d55b4c..52f43b0a 100644 --- a/packages/docs/src/templates/MdxLayout.tsx +++ b/packages/docs/src/templates/MdxLayout.tsx @@ -6,9 +6,10 @@ import { CodeBlock, ClassNamesDocs, Example, - JSXDocs, ExampleSnippet, + JSXDocs, ScssDocs, + Seo, } from '../components' import { CalloutProps } from '../components/Callout' @@ -34,6 +35,14 @@ interface DataProps { } } +interface PageContextType { + frontmatter: { + title: string + description: string + name: string + } +} + interface Toc { items: TocItem[] } @@ -85,6 +94,21 @@ MdxLayout.displayName = 'MdxLayout' export default MdxLayout +export const Head = ({ pageContext }: { pageContext: PageContextType }) => { + const { frontmatter } = pageContext + + const title = frontmatter?.title || '' + const description = frontmatter?.description || '' + const name = frontmatter?.name || '' + + return ( + <> + + + + ) +} + export const pageQuery = graphql` query PageQuery($id: String, $regex: String) { mdx(id: { eq: $id }) { From e5c44d88d2ba4cf285acb6e7c515018a77a8c603 Mon Sep 17 00:00:00 2001 From: mrholek Date: Tue, 17 Dec 2024 13:23:10 +0100 Subject: [PATCH 076/151] build: add bundle analyzer --- packages/docs/gatsby-config.mjs | 4 +++- packages/docs/package.json | 7 +++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/docs/gatsby-config.mjs b/packages/docs/gatsby-config.mjs index 93254870..c7a17ef7 100644 --- a/packages/docs/gatsby-config.mjs +++ b/packages/docs/gatsby-config.mjs @@ -19,7 +19,6 @@ const config = { }, pathPrefix: `react/docs/`, plugins: [ - `gatsby-plugin-react-helmet`, `gatsby-plugin-image`, { resolve: `gatsby-source-filesystem`, @@ -102,6 +101,9 @@ const config = { id: `GTM-KX4JH47`, }, }, + { + resolve: `gatsby-plugin-webpack-bundle-analyser-v2`, + }, ], } diff --git a/packages/docs/package.json b/packages/docs/package.json index bd396108..85c8dac6 100644 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -30,21 +30,21 @@ "@coreui/icons-react": "^2.3.0", "@coreui/react-chartjs": "^3.0.0", "@coreui/utils": "^2.0.2", - "@docsearch/css": "^3.6.2", + "@docsearch/css": "^3.8.1", + "@docsearch/react": "^3.8.1", "@mdx-js/mdx": "^3.1.0", "@mdx-js/react": "^3.1.0", "@stackblitz/sdk": "^1.11.0", - "@types/react-helmet": "^6.1.11", "gatsby": "^5.13.7", "gatsby-plugin-google-tagmanager": "^5.13.1", "gatsby-plugin-image": "^3.13.1", "gatsby-plugin-manifest": "^5.13.1", "gatsby-plugin-mdx": "^5.13.1", "gatsby-plugin-offline": "^6.13.3", - "gatsby-plugin-react-helmet": "^6.13.1", "gatsby-plugin-sass": "^6.13.1", "gatsby-plugin-sharp": "^5.13.1", "gatsby-plugin-sitemap": "^6.13.1", + "gatsby-plugin-webpack-bundle-analyser-v2": "^1.1.32", "gatsby-remark-autolink-headers": "^6.13.1", "gatsby-remark-external-links": "^0.0.4", "gatsby-source-filesystem": "^5.13.1", @@ -56,7 +56,6 @@ "react": "^18.3.1", "react-docgen-typescript": "^2.2.2", "react-dom": "^18.3.1", - "react-helmet": "^6.1.0", "react-imask": "^7.6.1", "react-markdown": "^9.0.1", "rimraf": "^6.0.1", From f140536689bc20cbc34b3595306c7a49f4b17284 Mon Sep 17 00:00:00 2001 From: mrholek Date: Tue, 17 Dec 2024 14:42:53 +0100 Subject: [PATCH 077/151] build: update API generator --- packages/docs/build/api.mjs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/docs/build/api.mjs b/packages/docs/build/api.mjs index 01045b9c..a1118348 100644 --- a/packages/docs/build/api.mjs +++ b/packages/docs/build/api.mjs @@ -294,7 +294,7 @@ const createMdx = async (file, component) => { .map((_type) => `\`${_type.trim()}\``) .join(', ') - const id = `${component.displayName.toLowerCase()}-${propName}` + const id = `${component.displayName.toLowerCase()}-${propName.replaceAll(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()}` const anchor = `#` content += ` \n` @@ -340,22 +340,22 @@ const main = async () => { try { const files = await globby(GLOB_PATTERNS, GLOBBY_OPTIONS) - await Promise.all( - files.map(async (file) => { - console.log(`Processing file: ${file}`) - let components - try { - components = parse(file, DOCGEN_OPTIONS) - } catch (parseError) { - console.error(`Failed to parse ${file}:`, parseError) - return - } + for (const file of files) { + console.log(`Processing file: ${file}`) + let components + try { + components = parse(file, DOCGEN_OPTIONS) + } catch (parseError) { + console.error(`Failed to parse ${file}:`, parseError) + continue // Skip to the next file + } - if (components && components.length > 0) { - await Promise.all(components.map((component) => createMdx(file, component))) + if (components && components.length > 0) { + for (const component of components) { + await createMdx(file, component) // Sequentially create MDX files } - }), - ) + } + } } catch (error) { console.error('An error occurred:', error) process.exit(1) From 720b173ff4b8f8608625fb128171b4affad7e167 Mon Sep 17 00:00:00 2001 From: mrholek Date: Tue, 17 Dec 2024 14:46:02 +0100 Subject: [PATCH 078/151] docs: update API documentation --- packages/docs/content/api/CAccordion.api.mdx | 49 +++++-------------- .../docs/content/api/CAccordionBody.api.mdx | 28 ++--------- .../docs/content/api/CAccordionButton.api.mdx | 25 ++-------- .../docs/content/api/CAccordionHeader.api.mdx | 25 +--------- .../docs/content/api/CAccordionItem.api.mdx | 27 ++-------- packages/docs/content/api/CAlert.api.mdx | 8 +-- .../docs/content/api/CAlertHeading.api.mdx | 4 +- packages/docs/content/api/CAlertLink.api.mdx | 4 +- packages/docs/content/api/CAvatar.api.mdx | 8 +-- packages/docs/content/api/CBackdrop.api.mdx | 4 +- packages/docs/content/api/CBadge.api.mdx | 12 ++--- packages/docs/content/api/CBreadcrumb.api.mdx | 4 +- .../docs/content/api/CBreadcrumbItem.api.mdx | 4 +- packages/docs/content/api/CButton.api.mdx | 4 +- .../docs/content/api/CButtonGroup.api.mdx | 4 +- .../docs/content/api/CButtonToolbar.api.mdx | 4 +- packages/docs/content/api/CCallout.api.mdx | 4 +- packages/docs/content/api/CCard.api.mdx | 12 ++--- packages/docs/content/api/CCardBody.api.mdx | 4 +- packages/docs/content/api/CCardFooter.api.mdx | 4 +- packages/docs/content/api/CCardGroup.api.mdx | 4 +- packages/docs/content/api/CCardHeader.api.mdx | 4 +- packages/docs/content/api/CCardImage.api.mdx | 4 +- .../content/api/CCardImageOverlay.api.mdx | 4 +- packages/docs/content/api/CCardLink.api.mdx | 4 +- .../docs/content/api/CCardSubtitle.api.mdx | 4 +- packages/docs/content/api/CCardText.api.mdx | 4 +- packages/docs/content/api/CCardTitle.api.mdx | 4 +- packages/docs/content/api/CCarousel.api.mdx | 16 +++--- .../docs/content/api/CCarouselCaption.api.mdx | 4 +- .../docs/content/api/CCarouselItem.api.mdx | 4 +- packages/docs/content/api/CChart.api.mdx | 24 ++++----- packages/docs/content/api/CCharts.api.mdx | 24 ++++----- .../docs/content/api/CCloseButton.api.mdx | 4 +- packages/docs/content/api/CCol.api.mdx | 4 +- packages/docs/content/api/CCollapse.api.mdx | 12 ++--- packages/docs/content/api/CContainer.api.mdx | 4 +- packages/docs/content/api/CDropdown.api.mdx | 16 +++--- .../docs/content/api/CDropdownDivider.api.mdx | 4 +- .../docs/content/api/CDropdownHeader.api.mdx | 4 +- .../docs/content/api/CDropdownItem.api.mdx | 4 +- .../content/api/CDropdownItemPlain.api.mdx | 4 +- .../docs/content/api/CDropdownMenu.api.mdx | 4 +- .../docs/content/api/CDropdownToggle.api.mdx | 8 +-- packages/docs/content/api/CFooter.api.mdx | 4 +- packages/docs/content/api/CForm.api.mdx | 4 +- packages/docs/content/api/CFormCheck.api.mdx | 24 ++++----- .../api/CFormControlValidation.api.mdx | 16 +++--- .../content/api/CFormControlWrapper.api.mdx | 20 ++++---- .../docs/content/api/CFormFeedback.api.mdx | 4 +- .../docs/content/api/CFormFloating.api.mdx | 4 +- packages/docs/content/api/CFormInput.api.mdx | 36 +++++++------- packages/docs/content/api/CFormLabel.api.mdx | 8 +-- packages/docs/content/api/CFormRange.api.mdx | 12 ++--- packages/docs/content/api/CFormSelect.api.mdx | 32 ++++++------ packages/docs/content/api/CFormSwitch.api.mdx | 4 +- packages/docs/content/api/CFormText.api.mdx | 4 +- .../docs/content/api/CFormTextarea.api.mdx | 36 +++++++------- packages/docs/content/api/CHeader.api.mdx | 4 +- .../docs/content/api/CHeaderBrand.api.mdx | 4 +- .../docs/content/api/CHeaderDivider.api.mdx | 4 +- packages/docs/content/api/CHeaderNav.api.mdx | 4 +- packages/docs/content/api/CHeaderText.api.mdx | 4 +- .../docs/content/api/CHeaderToggler.api.mdx | 4 +- packages/docs/content/api/CIcon.api.mdx | 16 +++--- packages/docs/content/api/CIconSvg.api.mdx | 10 ++-- packages/docs/content/api/CImage.api.mdx | 4 +- packages/docs/content/api/CInputGroup.api.mdx | 4 +- .../docs/content/api/CInputGroupText.api.mdx | 4 +- packages/docs/content/api/CLink.api.mdx | 4 +- packages/docs/content/api/CListGroup.api.mdx | 4 +- .../docs/content/api/CListGroupItem.api.mdx | 4 +- packages/docs/content/api/CModal.api.mdx | 20 ++++---- packages/docs/content/api/CModalBody.api.mdx | 4 +- .../docs/content/api/CModalContent.api.mdx | 4 +- .../docs/content/api/CModalDialog.api.mdx | 4 +- .../docs/content/api/CModalFooter.api.mdx | 4 +- .../docs/content/api/CModalHeader.api.mdx | 8 +-- packages/docs/content/api/CModalTitle.api.mdx | 4 +- packages/docs/content/api/CNav.api.mdx | 4 +- packages/docs/content/api/CNavGroup.api.mdx | 4 +- .../docs/content/api/CNavGroupItems.api.mdx | 4 +- packages/docs/content/api/CNavItem.api.mdx | 4 +- packages/docs/content/api/CNavLink.api.mdx | 4 +- packages/docs/content/api/CNavTitle.api.mdx | 4 +- packages/docs/content/api/CNavbar.api.mdx | 8 +-- .../docs/content/api/CNavbarBrand.api.mdx | 4 +- packages/docs/content/api/CNavbarNav.api.mdx | 4 +- packages/docs/content/api/CNavbarText.api.mdx | 4 +- .../docs/content/api/CNavbarToggler.api.mdx | 4 +- packages/docs/content/api/COffcanvas.api.mdx | 12 ++--- .../docs/content/api/COffcanvasBody.api.mdx | 4 +- .../docs/content/api/COffcanvasHeader.api.mdx | 4 +- .../docs/content/api/COffcanvasTitle.api.mdx | 4 +- packages/docs/content/api/CPagination.api.mdx | 4 +- .../docs/content/api/CPlaceholder.api.mdx | 4 +- packages/docs/content/api/CPopover.api.mdx | 16 +++--- packages/docs/content/api/CProgress.api.mdx | 8 +-- .../docs/content/api/CProgressBar.api.mdx | 4 +- .../docs/content/api/CProgressStacked.api.mdx | 4 +- packages/docs/content/api/CRow.api.mdx | 4 +- packages/docs/content/api/CSidebar.api.mdx | 20 ++++---- .../docs/content/api/CSidebarBrand.api.mdx | 4 +- .../docs/content/api/CSidebarFooter.api.mdx | 4 +- .../docs/content/api/CSidebarHeader.api.mdx | 4 +- packages/docs/content/api/CSidebarNav.api.mdx | 4 +- .../docs/content/api/CSidebarToggler.api.mdx | 4 +- packages/docs/content/api/CSpinner.api.mdx | 8 +-- packages/docs/content/api/CTab.api.mdx | 8 +-- packages/docs/content/api/CTabContent.api.mdx | 4 +- packages/docs/content/api/CTabList.api.mdx | 4 +- packages/docs/content/api/CTabPane.api.mdx | 12 ++--- packages/docs/content/api/CTabPanel.api.mdx | 16 +++--- packages/docs/content/api/CTable.api.mdx | 24 ++++----- packages/docs/content/api/CTableBody.api.mdx | 4 +- .../docs/content/api/CTableDataCell.api.mdx | 4 +- packages/docs/content/api/CTableFoot.api.mdx | 4 +- packages/docs/content/api/CTableHead.api.mdx | 4 +- .../docs/content/api/CTableHeaderCell.api.mdx | 4 +- packages/docs/content/api/CTableRow.api.mdx | 4 +- packages/docs/content/api/CTabs.api.mdx | 12 ++--- packages/docs/content/api/CToast.api.mdx | 12 ++--- packages/docs/content/api/CToastBody.api.mdx | 4 +- packages/docs/content/api/CToastClose.api.mdx | 4 +- .../docs/content/api/CToastHeader.api.mdx | 8 +-- packages/docs/content/api/CToaster.api.mdx | 4 +- packages/docs/content/api/CTooltip.api.mdx | 16 +++--- .../docs/content/api/CWidgetStatsA.api.mdx | 4 +- .../docs/content/api/CWidgetStatsB.api.mdx | 4 +- .../docs/content/api/CWidgetStatsC.api.mdx | 4 +- .../docs/content/api/CWidgetStatsD.api.mdx | 4 +- .../docs/content/api/CWidgetStatsE.api.mdx | 4 +- .../docs/content/api/CWidgetStatsF.api.mdx | 4 +- .../docs/content/api/CoreUIProvider.api.mdx | 7 --- 134 files changed, 485 insertions(+), 602 deletions(-) delete mode 100644 packages/docs/content/api/CoreUIProvider.api.mdx diff --git a/packages/docs/content/api/CAccordion.api.mdx b/packages/docs/content/api/CAccordion.api.mdx index 97e88506..971761dd 100644 --- a/packages/docs/content/api/CAccordion.api.mdx +++ b/packages/docs/content/api/CAccordion.api.mdx @@ -15,71 +15,44 @@ import CAccordion from '@coreui/react/src/components/accordion/CAccordion' - - activeItemKey# + + activeItemKey# undefined {`string`}, {`number`} -

    Determines which accordion item is currently active (expanded) by default.
    -Accepts a number or string corresponding to the {`itemKey`} of the desired accordion item.

    - ...`} /> +

    The active item key.

    - - alwaysOpen# + + alwaysOpen# {`false`} {`boolean`} -

    When set to {`true`}, multiple accordion items within the React Accordion can be open simultaneously.
    -This is ideal for scenarios where users need to view multiple sections at once without collapsing others.

    - ...`} /> +

    Make accordion items stay open when another item is opened

    - - className# + + className# undefined {`string`} -

    Allows you to apply custom CSS classes to the React Accordion for enhanced styling and theming.

    - ...`} /> - - - - customClassNames# - undefined - {`Partial\<{ ACCORDION: string; ACCORDION_FLUSH: string; }>`} - - - -

    Allows overriding or extending the default CSS class names used in the component.

    -
      -
    • {`ACCORDION`}: Base class for the accordion component.
    • -
    • {`ACCORDION_FLUSH`}: Class applied when the {`flush`} prop is set to true, ensuring an edge-to-edge layout.
    • -
    -

    Use this prop to customize the styles of specific parts of the accordion.

    - ...`} /> +

    A string of all className you want applied to the base component.

    flush# - {`false`} + undefined {`boolean`} -

    When {`flush`} is set to {`true`}, the React Accordion renders edge-to-edge with its parent container,
    -creating a seamless and modern look ideal for minimalist designs.

    - ...`} /> +

    Removes the default background-color, some borders, and some rounded corners to render accordions edge-to-edge with their parent container.

    diff --git a/packages/docs/content/api/CAccordionBody.api.mdx b/packages/docs/content/api/CAccordionBody.api.mdx index b6eb9609..566d4aec 100644 --- a/packages/docs/content/api/CAccordionBody.api.mdx +++ b/packages/docs/content/api/CAccordionBody.api.mdx @@ -15,36 +15,14 @@ import CAccordionBody from '@coreui/react/src/components/accordion/CAccordionBod - - className# + + className# undefined {`string`} -

    Allows you to apply custom CSS classes to the React Accordion Body for enhanced styling and theming.

    - ...`} /> - - - - customClassNames# - undefined - {`Partial\<{ ACCORDION_COLLAPSE: string; ACCORDION_BODY: string; }>`} - - - -

    Allows overriding or extending the default CSS class names used in the accordion body component.
    -Accepts a partial object matching the shape of {`ACCORDION_BODY_CLASS_NAMES`}, which includes:

    -
      -
    • {`ACCORDION_COLLAPSE`}: Base class for the collapse container in the accordion body.
    • -
    • {`ACCORDION_BODY`}: Base class for the main content container inside the accordion body.
    • -
    -

    Use this prop to customize the styles of specific parts of the accordion body.

    - ...`} /> +

    A string of all className you want applied to the base component.

    diff --git a/packages/docs/content/api/CAccordionButton.api.mdx b/packages/docs/content/api/CAccordionButton.api.mdx index b9cc8d5a..21461dd2 100644 --- a/packages/docs/content/api/CAccordionButton.api.mdx +++ b/packages/docs/content/api/CAccordionButton.api.mdx @@ -15,33 +15,14 @@ import CAccordionButton from '@coreui/react/src/components/accordion/CAccordionB - - className# + + className# undefined {`string`} -

    Styles the clickable element in the accordion header.

    - - - - customClassNames# - undefined - {`Partial\<{ ACCORDION_BUTTON: string; }>`} - - - -

    Allows overriding or extending the default CSS class names used in the accordion button component.
    -Accepts a partial object matching the shape of {`CLASS_NAMES`}, which includes:

    -
      -
    • {`ACCORDION_BUTTON`}: Base class for the accordion button.
    • -
    -

    Use this prop to customize the styles of the accordion button.

    - ...`} /> +

    A string of all className you want applied to the base component.

    diff --git a/packages/docs/content/api/CAccordionHeader.api.mdx b/packages/docs/content/api/CAccordionHeader.api.mdx index ad7cc0ed..e0ef9462 100644 --- a/packages/docs/content/api/CAccordionHeader.api.mdx +++ b/packages/docs/content/api/CAccordionHeader.api.mdx @@ -15,8 +15,8 @@ import CAccordionHeader from '@coreui/react/src/components/accordion/CAccordionH - - className# + + className# undefined {`string`} @@ -25,27 +25,6 @@ import CAccordionHeader from '@coreui/react/src/components/accordion/CAccordionH

    A string of all className you want applied to the base component.

    - - customClassNames# - undefined - {`Partial\<{ ACCORDION_HEADER: string; ACCORDION_BUTTON: string; }>`} - - - -

    Allows overriding or extending the default CSS class names used in the accordion header component.
    -Accepts a partial object matching the shape of {`ACCORDION_HEADER_CLASS_NAMES`}, which includes:

    -
      -
    • {`ACCORDION_HEADER`}: Base class for the accordion header container.
    • -
    • {`ACCORDION_BUTTON`}: Class applied to the button within the accordion header.
    • -
    -

    Use this prop to customize the styles of specific parts of the accordion header.

    - ...`} /> - -
    diff --git a/packages/docs/content/api/CAccordionItem.api.mdx b/packages/docs/content/api/CAccordionItem.api.mdx index 49049a00..f9adfbbc 100644 --- a/packages/docs/content/api/CAccordionItem.api.mdx +++ b/packages/docs/content/api/CAccordionItem.api.mdx @@ -15,8 +15,8 @@ import CAccordionItem from '@coreui/react/src/components/accordion/CAccordionIte - - className# + + className# undefined {`string`} @@ -25,27 +25,8 @@ import CAccordionItem from '@coreui/react/src/components/accordion/CAccordionIte

    A string of all className you want applied to the base component.

    - - customClassNames# - undefined - {`Partial\<{ ACCORDION_ITEM: string; }>`} - - - -

    Allows overriding or extending the default CSS class names used in the accordion item component.
    -Accepts a partial object matching the shape of {`ACCORDION_ITEM_CLASS_NAMES`}, which includes:

    -
      -
    • {`ACCORDION_ITEM`}: Base class for an individual accordion item.
    • -
    -

    Use this prop to customize the styles of specific parts of the accordion item.

    - ...`} /> - - - - itemKey# + + itemKey# undefined {`string`}, {`number`} diff --git a/packages/docs/content/api/CAlert.api.mdx b/packages/docs/content/api/CAlert.api.mdx index 85628676..01a98cb0 100644 --- a/packages/docs/content/api/CAlert.api.mdx +++ b/packages/docs/content/api/CAlert.api.mdx @@ -15,8 +15,8 @@ import CAlert from '@coreui/react/src/components/alert/CAlert' - - className# + + className# undefined {`string`} @@ -45,8 +45,8 @@ import CAlert from '@coreui/react/src/components/alert/CAlert'

    Optionally add a close button to alert and allow it to self dismiss.

    - - onClose# + + onClose# undefined {`() => void`} diff --git a/packages/docs/content/api/CAlertHeading.api.mdx b/packages/docs/content/api/CAlertHeading.api.mdx index ff38b822..a6596378 100644 --- a/packages/docs/content/api/CAlertHeading.api.mdx +++ b/packages/docs/content/api/CAlertHeading.api.mdx @@ -25,8 +25,8 @@ import CAlertHeading from '@coreui/react/src/components/alert/CAlertHeading'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CAlertLink.api.mdx b/packages/docs/content/api/CAlertLink.api.mdx index b7a05875..bf1c8a5a 100644 --- a/packages/docs/content/api/CAlertLink.api.mdx +++ b/packages/docs/content/api/CAlertLink.api.mdx @@ -15,8 +15,8 @@ import CAlertLink from '@coreui/react/src/components/alert/CAlertLink' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CAvatar.api.mdx b/packages/docs/content/api/CAvatar.api.mdx index 92eaeec3..485f06c4 100644 --- a/packages/docs/content/api/CAvatar.api.mdx +++ b/packages/docs/content/api/CAvatar.api.mdx @@ -15,8 +15,8 @@ import CAvatar from '@coreui/react/src/components/avatar/CAvatar' - - className# + + className# undefined {`string`} @@ -75,8 +75,8 @@ import CAvatar from '@coreui/react/src/components/avatar/CAvatar'

    Sets the color context of the status indicator to one of CoreUI’s themed colors.

    - - textColor# + + textColor# undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`'primary-emphasis'`}, {`'secondary-emphasis'`}, {`'success-emphasis'`}, {`'danger-emphasis'`}, {`'warning-emphasis'`}, {`'info-emphasis'`}, {`'light-emphasis'`}, {`'body'`}, {`'body-emphasis'`}, {`'body-secondary'`}, {`'body-tertiary'`}, {`'black'`}, {`'black-50'`}, {`'white'`}, {`'white-50'`}, {`string`} diff --git a/packages/docs/content/api/CBackdrop.api.mdx b/packages/docs/content/api/CBackdrop.api.mdx index 468688cc..5e725a9d 100644 --- a/packages/docs/content/api/CBackdrop.api.mdx +++ b/packages/docs/content/api/CBackdrop.api.mdx @@ -15,8 +15,8 @@ import CBackdrop from '@coreui/react/src/components/backdrop/CBackdrop' - - className# + + className# {`modal-backdrop`} {`string`} diff --git a/packages/docs/content/api/CBadge.api.mdx b/packages/docs/content/api/CBadge.api.mdx index 68c20286..571d29ba 100644 --- a/packages/docs/content/api/CBadge.api.mdx +++ b/packages/docs/content/api/CBadge.api.mdx @@ -25,8 +25,8 @@ import CBadge from '@coreui/react/src/components/badge/CBadge'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} @@ -75,8 +75,8 @@ import CBadge from '@coreui/react/src/components/badge/CBadge'

    Size the component small.

    - - textBgColor#5.0.0+ + + textBgColor#5.0.0+ undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`string`} @@ -85,8 +85,8 @@ import CBadge from '@coreui/react/src/components/badge/CBadge'

    Sets the component's color scheme to one of CoreUI's themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.

    - - textColor# + + textColor# undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`'primary-emphasis'`}, {`'secondary-emphasis'`}, {`'success-emphasis'`}, {`'danger-emphasis'`}, {`'warning-emphasis'`}, {`'info-emphasis'`}, {`'light-emphasis'`}, {`'body'`}, {`'body-emphasis'`}, {`'body-secondary'`}, {`'body-tertiary'`}, {`'black'`}, {`'black-50'`}, {`'white'`}, {`'white-50'`}, {`string`} diff --git a/packages/docs/content/api/CBreadcrumb.api.mdx b/packages/docs/content/api/CBreadcrumb.api.mdx index 2734c4d1..053af3ca 100644 --- a/packages/docs/content/api/CBreadcrumb.api.mdx +++ b/packages/docs/content/api/CBreadcrumb.api.mdx @@ -15,8 +15,8 @@ import CBreadcrumb from '@coreui/react/src/components/breadcrumb/CBreadcrumb' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CBreadcrumbItem.api.mdx b/packages/docs/content/api/CBreadcrumbItem.api.mdx index 6da6d355..ac72b194 100644 --- a/packages/docs/content/api/CBreadcrumbItem.api.mdx +++ b/packages/docs/content/api/CBreadcrumbItem.api.mdx @@ -35,8 +35,8 @@ import CBreadcrumbItem from '@coreui/react/src/components/breadcrumb/CBreadcrumb

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CButton.api.mdx b/packages/docs/content/api/CButton.api.mdx index 008c290d..47774ac8 100644 --- a/packages/docs/content/api/CButton.api.mdx +++ b/packages/docs/content/api/CButton.api.mdx @@ -35,8 +35,8 @@ import CButton from '@coreui/react/src/components/button/CButton'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CButtonGroup.api.mdx b/packages/docs/content/api/CButtonGroup.api.mdx index 696910a8..89726cff 100644 --- a/packages/docs/content/api/CButtonGroup.api.mdx +++ b/packages/docs/content/api/CButtonGroup.api.mdx @@ -15,8 +15,8 @@ import CButtonGroup from '@coreui/react/src/components/button-group/CButtonGroup - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CButtonToolbar.api.mdx b/packages/docs/content/api/CButtonToolbar.api.mdx index c95ae1f3..07124772 100644 --- a/packages/docs/content/api/CButtonToolbar.api.mdx +++ b/packages/docs/content/api/CButtonToolbar.api.mdx @@ -15,8 +15,8 @@ import CButtonToolbar from '@coreui/react/src/components/button-group/CButtonToo - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCallout.api.mdx b/packages/docs/content/api/CCallout.api.mdx index c364fcdf..3300d21a 100644 --- a/packages/docs/content/api/CCallout.api.mdx +++ b/packages/docs/content/api/CCallout.api.mdx @@ -15,8 +15,8 @@ import CCallout from '@coreui/react/src/components/callout/CCallout' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCard.api.mdx b/packages/docs/content/api/CCard.api.mdx index 242fc436..4c47fb26 100644 --- a/packages/docs/content/api/CCard.api.mdx +++ b/packages/docs/content/api/CCard.api.mdx @@ -15,8 +15,8 @@ import CCard from '@coreui/react/src/components/card/CCard' - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CCard from '@coreui/react/src/components/card/CCard'

    Sets the color context of the component to one of CoreUI’s themed colors.

    - - textBgColor#5.0.0+ + + textBgColor#5.0.0+ undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`string`} @@ -45,8 +45,8 @@ import CCard from '@coreui/react/src/components/card/CCard'

    Sets the component's color scheme to one of CoreUI's themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.

    - - textColor# + + textColor# undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`'primary-emphasis'`}, {`'secondary-emphasis'`}, {`'success-emphasis'`}, {`'danger-emphasis'`}, {`'warning-emphasis'`}, {`'info-emphasis'`}, {`'light-emphasis'`}, {`'body'`}, {`'body-emphasis'`}, {`'body-secondary'`}, {`'body-tertiary'`}, {`'black'`}, {`'black-50'`}, {`'white'`}, {`'white-50'`}, {`string`} diff --git a/packages/docs/content/api/CCardBody.api.mdx b/packages/docs/content/api/CCardBody.api.mdx index a0ba3a0e..59f7b5c8 100644 --- a/packages/docs/content/api/CCardBody.api.mdx +++ b/packages/docs/content/api/CCardBody.api.mdx @@ -15,8 +15,8 @@ import CCardBody from '@coreui/react/src/components/card/CCardBody' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardFooter.api.mdx b/packages/docs/content/api/CCardFooter.api.mdx index e9fe9533..8c20dc0e 100644 --- a/packages/docs/content/api/CCardFooter.api.mdx +++ b/packages/docs/content/api/CCardFooter.api.mdx @@ -15,8 +15,8 @@ import CCardFooter from '@coreui/react/src/components/card/CCardFooter' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardGroup.api.mdx b/packages/docs/content/api/CCardGroup.api.mdx index 1e9e115b..df4db1db 100644 --- a/packages/docs/content/api/CCardGroup.api.mdx +++ b/packages/docs/content/api/CCardGroup.api.mdx @@ -15,8 +15,8 @@ import CCardGroup from '@coreui/react/src/components/card/CCardGroup' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardHeader.api.mdx b/packages/docs/content/api/CCardHeader.api.mdx index fc1e173b..b93f305c 100644 --- a/packages/docs/content/api/CCardHeader.api.mdx +++ b/packages/docs/content/api/CCardHeader.api.mdx @@ -25,8 +25,8 @@ import CCardHeader from '@coreui/react/src/components/card/CCardHeader'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardImage.api.mdx b/packages/docs/content/api/CCardImage.api.mdx index 80470cb5..153a3e9d 100644 --- a/packages/docs/content/api/CCardImage.api.mdx +++ b/packages/docs/content/api/CCardImage.api.mdx @@ -25,8 +25,8 @@ import CCardImage from '@coreui/react/src/components/card/CCardImage'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardImageOverlay.api.mdx b/packages/docs/content/api/CCardImageOverlay.api.mdx index 9b02e5a6..d65a2469 100644 --- a/packages/docs/content/api/CCardImageOverlay.api.mdx +++ b/packages/docs/content/api/CCardImageOverlay.api.mdx @@ -15,8 +15,8 @@ import CCardImageOverlay from '@coreui/react/src/components/card/CCardImageOverl - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardLink.api.mdx b/packages/docs/content/api/CCardLink.api.mdx index 2329b6c8..96f44171 100644 --- a/packages/docs/content/api/CCardLink.api.mdx +++ b/packages/docs/content/api/CCardLink.api.mdx @@ -15,8 +15,8 @@ import CCardLink from '@coreui/react/src/components/card/CCardLink' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardSubtitle.api.mdx b/packages/docs/content/api/CCardSubtitle.api.mdx index 17ef812e..be9c5b47 100644 --- a/packages/docs/content/api/CCardSubtitle.api.mdx +++ b/packages/docs/content/api/CCardSubtitle.api.mdx @@ -25,8 +25,8 @@ import CCardSubtitle from '@coreui/react/src/components/card/CCardSubtitle'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardText.api.mdx b/packages/docs/content/api/CCardText.api.mdx index cd7180de..ea0d07ef 100644 --- a/packages/docs/content/api/CCardText.api.mdx +++ b/packages/docs/content/api/CCardText.api.mdx @@ -25,8 +25,8 @@ import CCardText from '@coreui/react/src/components/card/CCardText'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCardTitle.api.mdx b/packages/docs/content/api/CCardTitle.api.mdx index d1bc0805..a37fd610 100644 --- a/packages/docs/content/api/CCardTitle.api.mdx +++ b/packages/docs/content/api/CCardTitle.api.mdx @@ -25,8 +25,8 @@ import CCardTitle from '@coreui/react/src/components/card/CCardTitle'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCarousel.api.mdx b/packages/docs/content/api/CCarousel.api.mdx index 9fc5f84d..c23deeaa 100644 --- a/packages/docs/content/api/CCarousel.api.mdx +++ b/packages/docs/content/api/CCarousel.api.mdx @@ -15,8 +15,8 @@ import CCarousel from '@coreui/react/src/components/carousel/CCarousel' - - activeIndex# + + activeIndex# {`0`} {`number`} @@ -25,8 +25,8 @@ import CCarousel from '@coreui/react/src/components/carousel/CCarousel'

    index of the active item.

    - - className# + + className# undefined {`string`} @@ -75,8 +75,8 @@ import CCarousel from '@coreui/react/src/components/carousel/CCarousel'

    The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.

    - - onSlid# + + onSlid# undefined {`(active: number, direction: string) => void`} @@ -85,8 +85,8 @@ import CCarousel from '@coreui/react/src/components/carousel/CCarousel'

    Callback fired when a slide transition end.

    - - onSlide# + + onSlide# undefined {`(active: number, direction: string) => void`} diff --git a/packages/docs/content/api/CCarouselCaption.api.mdx b/packages/docs/content/api/CCarouselCaption.api.mdx index a1fa0f31..9990fb72 100644 --- a/packages/docs/content/api/CCarouselCaption.api.mdx +++ b/packages/docs/content/api/CCarouselCaption.api.mdx @@ -15,8 +15,8 @@ import CCarouselCaption from '@coreui/react/src/components/carousel/CCarouselCap - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCarouselItem.api.mdx b/packages/docs/content/api/CCarouselItem.api.mdx index 75b5046c..062cad22 100644 --- a/packages/docs/content/api/CCarouselItem.api.mdx +++ b/packages/docs/content/api/CCarouselItem.api.mdx @@ -15,8 +15,8 @@ import CCarouselItem from '@coreui/react/src/components/carousel/CCarouselItem' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CChart.api.mdx b/packages/docs/content/api/CChart.api.mdx index c875f322..f19be174 100644 --- a/packages/docs/content/api/CChart.api.mdx +++ b/packages/docs/content/api/CChart.api.mdx @@ -15,8 +15,8 @@ import CChart from '@coreui/react-chartjs/src/CChart' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CChart from '@coreui/react-chartjs/src/CChart'

    A string of all className you want applied to the base component.

    - - customTooltips# + + customTooltips# {`true`} {`boolean`} @@ -45,8 +45,8 @@ import CChart from '@coreui/react-chartjs/src/CChart'

    The data object that is passed into the Chart.js chart (more info).

    - - fallbackContent# + + fallbackContent# undefined {`React.ReactNode`} @@ -55,8 +55,8 @@ import CChart from '@coreui/react-chartjs/src/CChart'

    A fallback for when the canvas cannot be rendered. Can be used for accessible chart descriptions.

    - - getDatasetAtEvent# + + getDatasetAtEvent# undefined {`(dataset: InteractionItem[], event: React.MouseEvent\) => void`} @@ -65,8 +65,8 @@ import CChart from '@coreui/react-chartjs/src/CChart'

    Proxy for Chart.js getDatasetAtEvent. Calls with dataset and triggering event.

    - - getElementAtEvent# + + getElementAtEvent# undefined {`(element: InteractionItem[], event: React.MouseEvent\) => void`} @@ -75,8 +75,8 @@ import CChart from '@coreui/react-chartjs/src/CChart'

    Proxy for Chart.js getElementAtEvent. Calls with single element array and triggering event.

    - - getElementsAtEvent# + + getElementsAtEvent# undefined {`(elements: InteractionItem[], event: React.MouseEvent\) => void`} diff --git a/packages/docs/content/api/CCharts.api.mdx b/packages/docs/content/api/CCharts.api.mdx index ef3bafe1..51f32ed4 100644 --- a/packages/docs/content/api/CCharts.api.mdx +++ b/packages/docs/content/api/CCharts.api.mdx @@ -15,8 +15,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts'

    A string of all className you want applied to the base component.

    - - customTooltips# + + customTooltips# {`true`} {`boolean`} @@ -45,8 +45,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts'

    The data object that is passed into the Chart.js chart (more info).

    - - fallbackContent# + + fallbackContent# undefined {`React.ReactNode`} @@ -55,8 +55,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts'

    A fallback for when the canvas cannot be rendered. Can be used for accessible chart descriptions.

    - - getDatasetAtEvent# + + getDatasetAtEvent# undefined {`(dataset: InteractionItem[], event: React.MouseEvent\) => void`} @@ -65,8 +65,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts'

    Proxy for Chart.js getDatasetAtEvent. Calls with dataset and triggering event.

    - - getElementAtEvent# + + getElementAtEvent# undefined {`(element: InteractionItem[], event: React.MouseEvent\) => void`} @@ -75,8 +75,8 @@ import CChartBar from '@coreui/react-chartjs/src/CCharts'

    Proxy for Chart.js getElementAtEvent. Calls with single element array and triggering event.

    - - getElementsAtEvent# + + getElementsAtEvent# undefined {`(elements: InteractionItem[], event: React.MouseEvent\) => void`} diff --git a/packages/docs/content/api/CCloseButton.api.mdx b/packages/docs/content/api/CCloseButton.api.mdx index fba3e552..c6d34b32 100644 --- a/packages/docs/content/api/CCloseButton.api.mdx +++ b/packages/docs/content/api/CCloseButton.api.mdx @@ -15,8 +15,8 @@ import CCloseButton from '@coreui/react/src/components/close-button/CCloseButton - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCol.api.mdx b/packages/docs/content/api/CCol.api.mdx index 90cba258..f9e0847f 100644 --- a/packages/docs/content/api/CCol.api.mdx +++ b/packages/docs/content/api/CCol.api.mdx @@ -15,8 +15,8 @@ import CCol from '@coreui/react/src/components/grid/CCol' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CCollapse.api.mdx b/packages/docs/content/api/CCollapse.api.mdx index 997d55fd..08d54233 100644 --- a/packages/docs/content/api/CCollapse.api.mdx +++ b/packages/docs/content/api/CCollapse.api.mdx @@ -15,8 +15,8 @@ import CCollapse from '@coreui/react/src/components/collapse/CCollapse' - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CCollapse from '@coreui/react/src/components/collapse/CCollapse'

    Set horizontal collapsing to transition the width instead of height.

    - - onHide# + + onHide# undefined {`() => void`} @@ -45,8 +45,8 @@ import CCollapse from '@coreui/react/src/components/collapse/CCollapse'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CContainer.api.mdx b/packages/docs/content/api/CContainer.api.mdx index d98c8ead..48cafc0c 100644 --- a/packages/docs/content/api/CContainer.api.mdx +++ b/packages/docs/content/api/CContainer.api.mdx @@ -15,8 +15,8 @@ import CContainer from '@coreui/react/src/components/grid/CContainer' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdown.api.mdx b/packages/docs/content/api/CDropdown.api.mdx index 5262dcc9..e5393293 100644 --- a/packages/docs/content/api/CDropdown.api.mdx +++ b/packages/docs/content/api/CDropdown.api.mdx @@ -35,8 +35,8 @@ import CDropdown from '@coreui/react/src/components/dropdown/CDropdown'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - autoClose# + + autoClose# {`true`} {`boolean`}, {`"inside"`}, {`"outside"`} @@ -51,8 +51,8 @@ import CDropdown from '@coreui/react/src/components/dropdown/CDropdown' - - className# + + className# undefined {`string`} @@ -101,8 +101,8 @@ import CDropdown from '@coreui/react/src/components/dropdown/CDropdown'

    Offset of the dropdown menu relative to its target.

    - - onHide#4.9.0+ + + onHide#4.9.0+ undefined {`() => void`} @@ -111,8 +111,8 @@ import CDropdown from '@coreui/react/src/components/dropdown/CDropdown'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CDropdownDivider.api.mdx b/packages/docs/content/api/CDropdownDivider.api.mdx index aaab8e37..dc8842ea 100644 --- a/packages/docs/content/api/CDropdownDivider.api.mdx +++ b/packages/docs/content/api/CDropdownDivider.api.mdx @@ -15,8 +15,8 @@ import CDropdownDivider from '@coreui/react/src/components/dropdown/CDropdownDiv - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdownHeader.api.mdx b/packages/docs/content/api/CDropdownHeader.api.mdx index 7652f974..f4793433 100644 --- a/packages/docs/content/api/CDropdownHeader.api.mdx +++ b/packages/docs/content/api/CDropdownHeader.api.mdx @@ -25,8 +25,8 @@ import CDropdownHeader from '@coreui/react/src/components/dropdown/CDropdownHead

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdownItem.api.mdx b/packages/docs/content/api/CDropdownItem.api.mdx index 7bc03b89..c427f418 100644 --- a/packages/docs/content/api/CDropdownItem.api.mdx +++ b/packages/docs/content/api/CDropdownItem.api.mdx @@ -35,8 +35,8 @@ import CDropdownItem from '@coreui/react/src/components/dropdown/CDropdownItem'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdownItemPlain.api.mdx b/packages/docs/content/api/CDropdownItemPlain.api.mdx index 074f67b0..a8be60ec 100644 --- a/packages/docs/content/api/CDropdownItemPlain.api.mdx +++ b/packages/docs/content/api/CDropdownItemPlain.api.mdx @@ -25,8 +25,8 @@ import CDropdownItemPlain from '@coreui/react/src/components/dropdown/CDropdownI

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdownMenu.api.mdx b/packages/docs/content/api/CDropdownMenu.api.mdx index cef37751..30989ae0 100644 --- a/packages/docs/content/api/CDropdownMenu.api.mdx +++ b/packages/docs/content/api/CDropdownMenu.api.mdx @@ -25,8 +25,8 @@ import CDropdownMenu from '@coreui/react/src/components/dropdown/CDropdownMenu'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CDropdownToggle.api.mdx b/packages/docs/content/api/CDropdownToggle.api.mdx index cd887421..9cb992f8 100644 --- a/packages/docs/content/api/CDropdownToggle.api.mdx +++ b/packages/docs/content/api/CDropdownToggle.api.mdx @@ -45,8 +45,8 @@ import CDropdownToggle from '@coreui/react/src/components/dropdown/CDropdownTogg

    Enables pseudo element caret on toggler.

    - - className# + + className# undefined {`string`} @@ -95,8 +95,8 @@ import CDropdownToggle from '@coreui/react/src/components/dropdown/CDropdownTogg

    The href attribute specifies the URL of the page the link goes to.

    - - navLink#5.0.0+ + + navLink#5.0.0+ {`true`} {`boolean`} diff --git a/packages/docs/content/api/CFooter.api.mdx b/packages/docs/content/api/CFooter.api.mdx index d58c8223..f54439f0 100644 --- a/packages/docs/content/api/CFooter.api.mdx +++ b/packages/docs/content/api/CFooter.api.mdx @@ -15,8 +15,8 @@ import CFooter from '@coreui/react/src/components/footer/CFooter' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CForm.api.mdx b/packages/docs/content/api/CForm.api.mdx index 076a0e96..5c6b86dc 100644 --- a/packages/docs/content/api/CForm.api.mdx +++ b/packages/docs/content/api/CForm.api.mdx @@ -15,8 +15,8 @@ import CForm from '@coreui/react/src/components/form/CForm' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CFormCheck.api.mdx b/packages/docs/content/api/CFormCheck.api.mdx index 9427f66f..2798a834 100644 --- a/packages/docs/content/api/CFormCheck.api.mdx +++ b/packages/docs/content/api/CFormCheck.api.mdx @@ -25,8 +25,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Create button-like checkboxes and radio buttons.

    - - className# + + className# undefined {`string`} @@ -45,8 +45,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -55,8 +55,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -65,8 +65,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -75,8 +75,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - hitArea# + + hitArea# undefined {`"full"`} @@ -145,8 +145,8 @@ import CFormCheck from '@coreui/react/src/components/form/CFormCheck'

    Put checkboxes or radios on the opposite side.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CFormControlValidation.api.mdx b/packages/docs/content/api/CFormControlValidation.api.mdx index e2fdfe60..49863167 100644 --- a/packages/docs/content/api/CFormControlValidation.api.mdx +++ b/packages/docs/content/api/CFormControlValidation.api.mdx @@ -25,8 +25,8 @@ import CFormControlValidation from '@coreui/react/src/components/form/CFormContr

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -35,8 +35,8 @@ import CFormControlValidation from '@coreui/react/src/components/form/CFormContr

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -45,8 +45,8 @@ import CFormControlValidation from '@coreui/react/src/components/form/CFormContr

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -65,8 +65,8 @@ import CFormControlValidation from '@coreui/react/src/components/form/CFormContr

    Set component validation state to invalid.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CFormControlWrapper.api.mdx b/packages/docs/content/api/CFormControlWrapper.api.mdx index f0a44eaa..24b0d2ec 100644 --- a/packages/docs/content/api/CFormControlWrapper.api.mdx +++ b/packages/docs/content/api/CFormControlWrapper.api.mdx @@ -25,8 +25,8 @@ import CFormControlWrapper from '@coreui/react/src/components/form/CFormControlW

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -35,8 +35,8 @@ import CFormControlWrapper from '@coreui/react/src/components/form/CFormControlW

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -45,8 +45,8 @@ import CFormControlWrapper from '@coreui/react/src/components/form/CFormControlW

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingClassName#4.5.0+ + + floatingClassName#4.5.0+ undefined {`string`} @@ -55,8 +55,8 @@ import CFormControlWrapper from '@coreui/react/src/components/form/CFormControlW

    A string of all className you want applied to the floating label wrapper.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -95,8 +95,8 @@ import CFormControlWrapper from '@coreui/react/src/components/form/CFormControlW

    Add helper text to the component.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CFormFeedback.api.mdx b/packages/docs/content/api/CFormFeedback.api.mdx index 845d95e2..db5b54fe 100644 --- a/packages/docs/content/api/CFormFeedback.api.mdx +++ b/packages/docs/content/api/CFormFeedback.api.mdx @@ -25,8 +25,8 @@ import CFormFeedback from '@coreui/react/src/components/form/CFormFeedback'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CFormFloating.api.mdx b/packages/docs/content/api/CFormFloating.api.mdx index c4539363..5f456c6c 100644 --- a/packages/docs/content/api/CFormFloating.api.mdx +++ b/packages/docs/content/api/CFormFloating.api.mdx @@ -15,8 +15,8 @@ import CFormFloating from '@coreui/react/src/components/form/CFormFloating' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CFormInput.api.mdx b/packages/docs/content/api/CFormInput.api.mdx index b3ed91a0..c1e48174 100644 --- a/packages/docs/content/api/CFormInput.api.mdx +++ b/packages/docs/content/api/CFormInput.api.mdx @@ -15,8 +15,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput' - - className# + + className# undefined {`string`} @@ -55,8 +55,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -65,8 +65,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -75,8 +75,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingClassName#4.5.0+ + + floatingClassName#4.5.0+ undefined {`string`} @@ -85,8 +85,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    A string of all className you want applied to the floating label wrapper.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -115,8 +115,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Add a caption for a component.

    - - onChange# + + onChange# undefined {`ChangeEventHandler\`} @@ -125,8 +125,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Method called immediately after the {`value`} prop changes.

    - - plainText# + + plainText# undefined {`boolean`} @@ -135,8 +135,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.

    - - readOnly# + + readOnly# undefined {`boolean`} @@ -165,8 +165,8 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'

    Add helper text to the component.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CFormLabel.api.mdx b/packages/docs/content/api/CFormLabel.api.mdx index fe2e2470..1f30c9e1 100644 --- a/packages/docs/content/api/CFormLabel.api.mdx +++ b/packages/docs/content/api/CFormLabel.api.mdx @@ -15,8 +15,8 @@ import CFormLabel from '@coreui/react/src/components/form/CFormLabel' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CFormLabel from '@coreui/react/src/components/form/CFormLabel'

    A string of all className you want applied to the component.

    - - customClassName# + + customClassName# undefined {`string`} diff --git a/packages/docs/content/api/CFormRange.api.mdx b/packages/docs/content/api/CFormRange.api.mdx index b16951cb..ef1a9732 100644 --- a/packages/docs/content/api/CFormRange.api.mdx +++ b/packages/docs/content/api/CFormRange.api.mdx @@ -15,8 +15,8 @@ import CFormRange from '@coreui/react/src/components/form/CFormRange' - - className# + + className# undefined {`string`} @@ -65,8 +65,8 @@ import CFormRange from '@coreui/react/src/components/form/CFormRange'

    Specifies the minimum value for the component.

    - - onChange# + + onChange# undefined {`ChangeEventHandler\`} @@ -75,8 +75,8 @@ import CFormRange from '@coreui/react/src/components/form/CFormRange'

    Method called immediately after the {`value`} prop changes.

    - - readOnly# + + readOnly# undefined {`boolean`} diff --git a/packages/docs/content/api/CFormSelect.api.mdx b/packages/docs/content/api/CFormSelect.api.mdx index 45a1295f..90343476 100644 --- a/packages/docs/content/api/CFormSelect.api.mdx +++ b/packages/docs/content/api/CFormSelect.api.mdx @@ -15,8 +15,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect' - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -45,8 +45,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -55,8 +55,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingClassName#4.5.0+ + + floatingClassName#4.5.0+ undefined {`string`} @@ -65,8 +65,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    A string of all className you want applied to the floating label wrapper.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -75,8 +75,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - htmlSize# + + htmlSize# undefined {`number`} @@ -105,8 +105,8 @@ import CFormSelect from '@coreui/react/src/components/form/CFormSelect'

    Add a caption for a component.

    - - onChange# + + onChange# undefined {`ChangeEventHandler\`} @@ -150,8 +150,8 @@ Examples:

    Add helper text to the component.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CFormSwitch.api.mdx b/packages/docs/content/api/CFormSwitch.api.mdx index 3dfe443d..415810d4 100644 --- a/packages/docs/content/api/CFormSwitch.api.mdx +++ b/packages/docs/content/api/CFormSwitch.api.mdx @@ -15,8 +15,8 @@ import CFormSwitch from '@coreui/react/src/components/form/CFormSwitch' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CFormText.api.mdx b/packages/docs/content/api/CFormText.api.mdx index 25e307a4..d029eefb 100644 --- a/packages/docs/content/api/CFormText.api.mdx +++ b/packages/docs/content/api/CFormText.api.mdx @@ -25,8 +25,8 @@ import CFormText from '@coreui/react/src/components/form/CFormText'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CFormTextarea.api.mdx b/packages/docs/content/api/CFormTextarea.api.mdx index 010175d7..8618fcb7 100644 --- a/packages/docs/content/api/CFormTextarea.api.mdx +++ b/packages/docs/content/api/CFormTextarea.api.mdx @@ -15,8 +15,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea' - - className# + + className# undefined {`string`} @@ -45,8 +45,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Provide valuable, actionable feedback.

    - - feedbackInvalid#4.2.0+ + + feedbackInvalid#4.2.0+ undefined {`ReactNode`} @@ -55,8 +55,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Provide valuable, actionable feedback.

    - - feedbackValid#4.2.0+ + + feedbackValid#4.2.0+ undefined {`ReactNode`} @@ -65,8 +65,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.

    - - floatingClassName#4.5.0+ + + floatingClassName#4.5.0+ undefined {`string`} @@ -75,8 +75,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    A string of all className you want applied to the floating label wrapper.

    - - floatingLabel#4.2.0+ + + floatingLabel#4.2.0+ undefined {`ReactNode`} @@ -105,8 +105,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Add a caption for a component.

    - - onChange# + + onChange# undefined {`ChangeEventHandler\`} @@ -115,8 +115,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Method called immediately after the {`value`} prop changes.

    - - plainText# + + plainText# undefined {`boolean`} @@ -125,8 +125,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.

    - - readOnly# + + readOnly# undefined {`boolean`} @@ -145,8 +145,8 @@ import CFormTextarea from '@coreui/react/src/components/form/CFormTextarea'

    Add helper text to the component.

    - - tooltipFeedback#4.2.0+ + + tooltipFeedback#4.2.0+ undefined {`boolean`} diff --git a/packages/docs/content/api/CHeader.api.mdx b/packages/docs/content/api/CHeader.api.mdx index 7670d5b2..2b225673 100644 --- a/packages/docs/content/api/CHeader.api.mdx +++ b/packages/docs/content/api/CHeader.api.mdx @@ -15,8 +15,8 @@ import CHeader from '@coreui/react/src/components/header/CHeader' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CHeaderBrand.api.mdx b/packages/docs/content/api/CHeaderBrand.api.mdx index bd517329..abfd6005 100644 --- a/packages/docs/content/api/CHeaderBrand.api.mdx +++ b/packages/docs/content/api/CHeaderBrand.api.mdx @@ -25,8 +25,8 @@ import CHeaderBrand from '@coreui/react/src/components/header/CHeaderBrand'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CHeaderDivider.api.mdx b/packages/docs/content/api/CHeaderDivider.api.mdx index 6916f36a..78046399 100644 --- a/packages/docs/content/api/CHeaderDivider.api.mdx +++ b/packages/docs/content/api/CHeaderDivider.api.mdx @@ -15,8 +15,8 @@ import CHeaderDivider from '@coreui/react/src/components/header/CHeaderDivider' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CHeaderNav.api.mdx b/packages/docs/content/api/CHeaderNav.api.mdx index e7592905..6ce66614 100644 --- a/packages/docs/content/api/CHeaderNav.api.mdx +++ b/packages/docs/content/api/CHeaderNav.api.mdx @@ -25,8 +25,8 @@ import CHeaderNav from '@coreui/react/src/components/header/CHeaderNav'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CHeaderText.api.mdx b/packages/docs/content/api/CHeaderText.api.mdx index 51fa4f6d..e4bed1f7 100644 --- a/packages/docs/content/api/CHeaderText.api.mdx +++ b/packages/docs/content/api/CHeaderText.api.mdx @@ -15,8 +15,8 @@ import CHeaderText from '@coreui/react/src/components/header/CHeaderText' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CHeaderToggler.api.mdx b/packages/docs/content/api/CHeaderToggler.api.mdx index b6318096..9294a16c 100644 --- a/packages/docs/content/api/CHeaderToggler.api.mdx +++ b/packages/docs/content/api/CHeaderToggler.api.mdx @@ -15,8 +15,8 @@ import CHeaderToggler from '@coreui/react/src/components/header/CHeaderToggler' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CIcon.api.mdx b/packages/docs/content/api/CIcon.api.mdx index 3b6f21b5..9555a4ff 100644 --- a/packages/docs/content/api/CIcon.api.mdx +++ b/packages/docs/content/api/CIcon.api.mdx @@ -1,8 +1,8 @@ ```jsx -import { CIcon } from '@coreui/..' +import { CIcon } from '@coreui/icons-react' // or -import CIcon from '@coreui/../node_modules/@coreui/icons-react/src/CIcon' +import CIcon from '@coreui/icons-react/src/CIcon' ```
    @@ -15,8 +15,8 @@ import CIcon from '@coreui/../node_modules/@coreui/icons-react/src/CIcon' - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CIcon from '@coreui/../node_modules/@coreui/icons-react/src/CIcon'

    Use {`icon={...}`} instead of

    - - customClassName# + + customClassName# undefined {`string`}, {`string[]`} @@ -105,8 +105,8 @@ import CIcon from '@coreui/../node_modules/@coreui/icons-react/src/CIcon'

    If defined component will be rendered using 'use' tag.

    - - viewBox# + + viewBox# undefined {`string`} diff --git a/packages/docs/content/api/CIconSvg.api.mdx b/packages/docs/content/api/CIconSvg.api.mdx index 6b19c7ea..cbbc7a1c 100644 --- a/packages/docs/content/api/CIconSvg.api.mdx +++ b/packages/docs/content/api/CIconSvg.api.mdx @@ -15,8 +15,8 @@ import CIconSvg from '@coreui/icons-react/src/CIconSvg' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CIconSvg from '@coreui/icons-react/src/CIconSvg'

    A string of all className you want applied to the component.

    - - customClassName# + + customClassName# undefined {`string`}, {`string[]`} @@ -78,5 +78,3 @@ import CIconSvg from '@coreui/icons-react/src/CIconSvg'
    -/table> -
    diff --git a/packages/docs/content/api/CImage.api.mdx b/packages/docs/content/api/CImage.api.mdx index ea5c6c03..67bd9ae3 100644 --- a/packages/docs/content/api/CImage.api.mdx +++ b/packages/docs/content/api/CImage.api.mdx @@ -25,8 +25,8 @@ import CImage from '@coreui/react/src/components/image/CImage'

    Set the horizontal aligment.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CInputGroup.api.mdx b/packages/docs/content/api/CInputGroup.api.mdx index 2e7fc300..44487540 100644 --- a/packages/docs/content/api/CInputGroup.api.mdx +++ b/packages/docs/content/api/CInputGroup.api.mdx @@ -15,8 +15,8 @@ import CInputGroup from '@coreui/react/src/components/form/CInputGroup' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CInputGroupText.api.mdx b/packages/docs/content/api/CInputGroupText.api.mdx index 5064e0c8..49bcb81e 100644 --- a/packages/docs/content/api/CInputGroupText.api.mdx +++ b/packages/docs/content/api/CInputGroupText.api.mdx @@ -25,8 +25,8 @@ import CInputGroupText from '@coreui/react/src/components/form/CInputGroupText'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CLink.api.mdx b/packages/docs/content/api/CLink.api.mdx index 621c917b..765d243f 100644 --- a/packages/docs/content/api/CLink.api.mdx +++ b/packages/docs/content/api/CLink.api.mdx @@ -35,8 +35,8 @@ import CLink from '@coreui/react/src/components/link/CLink'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CListGroup.api.mdx b/packages/docs/content/api/CListGroup.api.mdx index a43d46e4..9651e1c3 100644 --- a/packages/docs/content/api/CListGroup.api.mdx +++ b/packages/docs/content/api/CListGroup.api.mdx @@ -25,8 +25,8 @@ import CListGroup from '@coreui/react/src/components/list-group/CListGroup'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CListGroupItem.api.mdx b/packages/docs/content/api/CListGroupItem.api.mdx index 84b91e1d..b80d7ab2 100644 --- a/packages/docs/content/api/CListGroupItem.api.mdx +++ b/packages/docs/content/api/CListGroupItem.api.mdx @@ -35,8 +35,8 @@ import CListGroupItem from '@coreui/react/src/components/list-group/CListGroupIt

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CModal.api.mdx b/packages/docs/content/api/CModal.api.mdx index 0e9608a9..5431acb5 100644 --- a/packages/docs/content/api/CModal.api.mdx +++ b/packages/docs/content/api/CModal.api.mdx @@ -35,8 +35,8 @@ import CModal from '@coreui/react/src/components/modal/CModal'

    Apply a backdrop on body while modal is open.

    - - className# + + className# undefined {`string`} @@ -85,8 +85,8 @@ import CModal from '@coreui/react/src/components/modal/CModal'

    Closes the modal when escape key is pressed.

    - - onClose# + + onClose# undefined {`() => void`} @@ -95,8 +95,8 @@ import CModal from '@coreui/react/src/components/modal/CModal'

    Callback fired when the component requests to be closed.

    - - onClosePrevented# + + onClosePrevented# undefined {`() => void`} @@ -105,8 +105,8 @@ import CModal from '@coreui/react/src/components/modal/CModal'

    Callback fired when the component requests to be closed.

    - - onShow# + + onShow# undefined {`() => void`} @@ -155,8 +155,8 @@ import CModal from '@coreui/react/src/components/modal/CModal'

    Remove animation to create modal that simply appear rather than fade in to view.

    - - unmountOnClose# + + unmountOnClose# {`true`} {`boolean`} diff --git a/packages/docs/content/api/CModalBody.api.mdx b/packages/docs/content/api/CModalBody.api.mdx index 42c701f2..4f47fab6 100644 --- a/packages/docs/content/api/CModalBody.api.mdx +++ b/packages/docs/content/api/CModalBody.api.mdx @@ -15,8 +15,8 @@ import CModalBody from '@coreui/react/src/components/modal/CModalBody' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CModalContent.api.mdx b/packages/docs/content/api/CModalContent.api.mdx index 9b19d13b..45fc3002 100644 --- a/packages/docs/content/api/CModalContent.api.mdx +++ b/packages/docs/content/api/CModalContent.api.mdx @@ -15,8 +15,8 @@ import CModalContent from '@coreui/react/src/components/modal/CModalContent' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CModalDialog.api.mdx b/packages/docs/content/api/CModalDialog.api.mdx index 768c38ca..a0486d4e 100644 --- a/packages/docs/content/api/CModalDialog.api.mdx +++ b/packages/docs/content/api/CModalDialog.api.mdx @@ -25,8 +25,8 @@ import CModalDialog from '@coreui/react/src/components/modal/CModalDialog'

    Align the modal in the center or top of the screen.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CModalFooter.api.mdx b/packages/docs/content/api/CModalFooter.api.mdx index f413e986..73ee5ccd 100644 --- a/packages/docs/content/api/CModalFooter.api.mdx +++ b/packages/docs/content/api/CModalFooter.api.mdx @@ -15,8 +15,8 @@ import CModalFooter from '@coreui/react/src/components/modal/CModalFooter' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CModalHeader.api.mdx b/packages/docs/content/api/CModalHeader.api.mdx index ca5db296..0dddfa96 100644 --- a/packages/docs/content/api/CModalHeader.api.mdx +++ b/packages/docs/content/api/CModalHeader.api.mdx @@ -15,8 +15,8 @@ import CModalHeader from '@coreui/react/src/components/modal/CModalHeader' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CModalHeader from '@coreui/react/src/components/modal/CModalHeader'

    A string of all className you want applied to the base component.

    - - closeButton# + + closeButton# {`true`} {`boolean`} diff --git a/packages/docs/content/api/CModalTitle.api.mdx b/packages/docs/content/api/CModalTitle.api.mdx index 7876d479..9b14bbb1 100644 --- a/packages/docs/content/api/CModalTitle.api.mdx +++ b/packages/docs/content/api/CModalTitle.api.mdx @@ -25,8 +25,8 @@ import CModalTitle from '@coreui/react/src/components/modal/CModalTitle'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNav.api.mdx b/packages/docs/content/api/CNav.api.mdx index 2d6cafd2..f87d8e1e 100644 --- a/packages/docs/content/api/CNav.api.mdx +++ b/packages/docs/content/api/CNav.api.mdx @@ -25,8 +25,8 @@ import CNav from '@coreui/react/src/components/nav/CNav'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavGroup.api.mdx b/packages/docs/content/api/CNavGroup.api.mdx index 0e0714d6..59506032 100644 --- a/packages/docs/content/api/CNavGroup.api.mdx +++ b/packages/docs/content/api/CNavGroup.api.mdx @@ -25,8 +25,8 @@ import CNavGroup from '@coreui/react/src/components/nav/CNavGroup'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavGroupItems.api.mdx b/packages/docs/content/api/CNavGroupItems.api.mdx index 3b0df119..eaca90f5 100644 --- a/packages/docs/content/api/CNavGroupItems.api.mdx +++ b/packages/docs/content/api/CNavGroupItems.api.mdx @@ -25,8 +25,8 @@ import CNavGroupItems from '@coreui/react/src/components/nav/CNavGroupItems'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavItem.api.mdx b/packages/docs/content/api/CNavItem.api.mdx index 4e260edb..e635d32c 100644 --- a/packages/docs/content/api/CNavItem.api.mdx +++ b/packages/docs/content/api/CNavItem.api.mdx @@ -35,8 +35,8 @@ import CNavItem from '@coreui/react/src/components/nav/CNavItem'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavLink.api.mdx b/packages/docs/content/api/CNavLink.api.mdx index 7e3c45c9..d6f838e3 100644 --- a/packages/docs/content/api/CNavLink.api.mdx +++ b/packages/docs/content/api/CNavLink.api.mdx @@ -35,8 +35,8 @@ import CNavLink from '@coreui/react/src/components/nav/CNavLink'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavTitle.api.mdx b/packages/docs/content/api/CNavTitle.api.mdx index bab5f5f9..f9489cb0 100644 --- a/packages/docs/content/api/CNavTitle.api.mdx +++ b/packages/docs/content/api/CNavTitle.api.mdx @@ -25,8 +25,8 @@ import CNavTitle from '@coreui/react/src/components/nav/CNavTitle'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavbar.api.mdx b/packages/docs/content/api/CNavbar.api.mdx index 1aaa1c87..662d80c2 100644 --- a/packages/docs/content/api/CNavbar.api.mdx +++ b/packages/docs/content/api/CNavbar.api.mdx @@ -25,8 +25,8 @@ import CNavbar from '@coreui/react/src/components/navbar/CNavbar'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} @@ -45,8 +45,8 @@ import CNavbar from '@coreui/react/src/components/navbar/CNavbar'

    Sets the color context of the component to one of CoreUI’s themed colors.

    - - colorScheme# + + colorScheme# undefined {`"dark"`}, {`"light"`} diff --git a/packages/docs/content/api/CNavbarBrand.api.mdx b/packages/docs/content/api/CNavbarBrand.api.mdx index cbb61ccf..bdd3e6f7 100644 --- a/packages/docs/content/api/CNavbarBrand.api.mdx +++ b/packages/docs/content/api/CNavbarBrand.api.mdx @@ -25,8 +25,8 @@ import CNavbarBrand from '@coreui/react/src/components/navbar/CNavbarBrand'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavbarNav.api.mdx b/packages/docs/content/api/CNavbarNav.api.mdx index 577e403a..f7e05623 100644 --- a/packages/docs/content/api/CNavbarNav.api.mdx +++ b/packages/docs/content/api/CNavbarNav.api.mdx @@ -25,8 +25,8 @@ import CNavbarNav from '@coreui/react/src/components/navbar/CNavbarNav'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavbarText.api.mdx b/packages/docs/content/api/CNavbarText.api.mdx index 158f710f..17ce32d4 100644 --- a/packages/docs/content/api/CNavbarText.api.mdx +++ b/packages/docs/content/api/CNavbarText.api.mdx @@ -15,8 +15,8 @@ import CNavbarText from '@coreui/react/src/components/navbar/CNavbarText' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CNavbarToggler.api.mdx b/packages/docs/content/api/CNavbarToggler.api.mdx index 38e4b19a..7470ace3 100644 --- a/packages/docs/content/api/CNavbarToggler.api.mdx +++ b/packages/docs/content/api/CNavbarToggler.api.mdx @@ -15,8 +15,8 @@ import CNavbarToggler from '@coreui/react/src/components/navbar/CNavbarToggler' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/COffcanvas.api.mdx b/packages/docs/content/api/COffcanvas.api.mdx index 2b50ddc3..e2377df9 100644 --- a/packages/docs/content/api/COffcanvas.api.mdx +++ b/packages/docs/content/api/COffcanvas.api.mdx @@ -25,8 +25,8 @@ import COffcanvas from '@coreui/react/src/components/offcanvas/COffcanvas'

    Apply a backdrop on body while offcanvas is open.

    - - className# + + className# undefined {`string`} @@ -55,8 +55,8 @@ import COffcanvas from '@coreui/react/src/components/offcanvas/COffcanvas'

    Closes the offcanvas when escape key is pressed.

    - - onHide# + + onHide# undefined {`() => void`} @@ -65,8 +65,8 @@ import COffcanvas from '@coreui/react/src/components/offcanvas/COffcanvas'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/COffcanvasBody.api.mdx b/packages/docs/content/api/COffcanvasBody.api.mdx index a68dc896..29c8479a 100644 --- a/packages/docs/content/api/COffcanvasBody.api.mdx +++ b/packages/docs/content/api/COffcanvasBody.api.mdx @@ -15,8 +15,8 @@ import COffcanvasBody from '@coreui/react/src/components/offcanvas/COffcanvasBod - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/COffcanvasHeader.api.mdx b/packages/docs/content/api/COffcanvasHeader.api.mdx index a505a208..c896e1b1 100644 --- a/packages/docs/content/api/COffcanvasHeader.api.mdx +++ b/packages/docs/content/api/COffcanvasHeader.api.mdx @@ -15,8 +15,8 @@ import COffcanvasHeader from '@coreui/react/src/components/offcanvas/COffcanvasH - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/COffcanvasTitle.api.mdx b/packages/docs/content/api/COffcanvasTitle.api.mdx index 06c1ac6a..b22e4b6c 100644 --- a/packages/docs/content/api/COffcanvasTitle.api.mdx +++ b/packages/docs/content/api/COffcanvasTitle.api.mdx @@ -25,8 +25,8 @@ import COffcanvasTitle from '@coreui/react/src/components/offcanvas/COffcanvasTi

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CPagination.api.mdx b/packages/docs/content/api/CPagination.api.mdx index a0dfe5af..d969c7f0 100644 --- a/packages/docs/content/api/CPagination.api.mdx +++ b/packages/docs/content/api/CPagination.api.mdx @@ -25,8 +25,8 @@ import CPagination from '@coreui/react/src/components/pagination/CPagination'

    Set the alignment of pagination components.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CPlaceholder.api.mdx b/packages/docs/content/api/CPlaceholder.api.mdx index 7ad82151..83565b12 100644 --- a/packages/docs/content/api/CPlaceholder.api.mdx +++ b/packages/docs/content/api/CPlaceholder.api.mdx @@ -35,8 +35,8 @@ import CPlaceholder from '@coreui/react/src/components/placeholder/CPlaceholder'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CPopover.api.mdx b/packages/docs/content/api/CPopover.api.mdx index bfc98bd5..752bc171 100644 --- a/packages/docs/content/api/CPopover.api.mdx +++ b/packages/docs/content/api/CPopover.api.mdx @@ -25,8 +25,8 @@ import CPopover from '@coreui/react/src/components/popover/CPopover'

    Apply a CSS fade transition to the popover.

    - - className# + + className# undefined {`string`} @@ -65,8 +65,8 @@ import CPopover from '@coreui/react/src/components/popover/CPopover'

    The delay for displaying and hiding the popover (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: {`{ 'show': 500, 'hide': 100 }`}.

    - - fallbackPlacements#4.9.0+ + + fallbackPlacements#4.9.0+ {`['top', 'right', 'bottom', 'left']`} {`Placements`}, {`Placements[]`} @@ -85,8 +85,8 @@ import CPopover from '@coreui/react/src/components/popover/CPopover'

    Offset of the popover relative to its target.

    - - onHide# + + onHide# undefined {`() => void`} @@ -95,8 +95,8 @@ import CPopover from '@coreui/react/src/components/popover/CPopover'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CProgress.api.mdx b/packages/docs/content/api/CProgress.api.mdx index 47bc6fe7..3012a109 100644 --- a/packages/docs/content/api/CProgress.api.mdx +++ b/packages/docs/content/api/CProgress.api.mdx @@ -25,8 +25,8 @@ import CProgress from '@coreui/react/src/components/progress/CProgress'

    Use to animate the stripes right to left via CSS3 animations.

    - - className# + + className# undefined {`string`} @@ -55,8 +55,8 @@ import CProgress from '@coreui/react/src/components/progress/CProgress'

    Sets the height of the component. If you set that value the inner {``} will automatically resize accordingly.

    - - progressBarClassName#4.9.0+ + + progressBarClassName#4.9.0+ undefined {`string`} diff --git a/packages/docs/content/api/CProgressBar.api.mdx b/packages/docs/content/api/CProgressBar.api.mdx index 56197cb6..8a5e99f7 100644 --- a/packages/docs/content/api/CProgressBar.api.mdx +++ b/packages/docs/content/api/CProgressBar.api.mdx @@ -25,8 +25,8 @@ import CProgressBar from '@coreui/react/src/components/progress/CProgressBar'

    Use to animate the stripes right to left via CSS3 animations.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CProgressStacked.api.mdx b/packages/docs/content/api/CProgressStacked.api.mdx index ce482129..81f146f0 100644 --- a/packages/docs/content/api/CProgressStacked.api.mdx +++ b/packages/docs/content/api/CProgressStacked.api.mdx @@ -15,8 +15,8 @@ import CProgressStacked from '@coreui/react/src/components/progress/CProgressSta - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CRow.api.mdx b/packages/docs/content/api/CRow.api.mdx index f8f3b137..46a6b5b6 100644 --- a/packages/docs/content/api/CRow.api.mdx +++ b/packages/docs/content/api/CRow.api.mdx @@ -15,8 +15,8 @@ import CRow from '@coreui/react/src/components/grid/CRow' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSidebar.api.mdx b/packages/docs/content/api/CSidebar.api.mdx index 7d7dd7d4..a0ae96ee 100644 --- a/packages/docs/content/api/CSidebar.api.mdx +++ b/packages/docs/content/api/CSidebar.api.mdx @@ -15,8 +15,8 @@ import CSidebar from '@coreui/react/src/components/sidebar/CSidebar' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CSidebar from '@coreui/react/src/components/sidebar/CSidebar'

    A string of all className you want applied to the component.

    - - colorScheme# + + colorScheme# undefined {`'dark'`}, {`'light'`} @@ -45,8 +45,8 @@ import CSidebar from '@coreui/react/src/components/sidebar/CSidebar'

    Make sidebar narrow.

    - - onHide# + + onHide# undefined {`() => void`} @@ -55,8 +55,8 @@ import CSidebar from '@coreui/react/src/components/sidebar/CSidebar'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} @@ -65,8 +65,8 @@ import CSidebar from '@coreui/react/src/components/sidebar/CSidebar'

    Callback fired when the component requests to be shown.

    - - onVisibleChange# + + onVisibleChange# undefined {`(visible: boolean) => void`} diff --git a/packages/docs/content/api/CSidebarBrand.api.mdx b/packages/docs/content/api/CSidebarBrand.api.mdx index 55a39332..3494b5d8 100644 --- a/packages/docs/content/api/CSidebarBrand.api.mdx +++ b/packages/docs/content/api/CSidebarBrand.api.mdx @@ -25,8 +25,8 @@ import CSidebarBrand from '@coreui/react/src/components/sidebar/CSidebarBrand'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSidebarFooter.api.mdx b/packages/docs/content/api/CSidebarFooter.api.mdx index d3f357b2..745c2f6c 100644 --- a/packages/docs/content/api/CSidebarFooter.api.mdx +++ b/packages/docs/content/api/CSidebarFooter.api.mdx @@ -15,8 +15,8 @@ import CSidebarFooter from '@coreui/react/src/components/sidebar/CSidebarFooter' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSidebarHeader.api.mdx b/packages/docs/content/api/CSidebarHeader.api.mdx index ea6eaf7f..4379c56f 100644 --- a/packages/docs/content/api/CSidebarHeader.api.mdx +++ b/packages/docs/content/api/CSidebarHeader.api.mdx @@ -15,8 +15,8 @@ import CSidebarHeader from '@coreui/react/src/components/sidebar/CSidebarHeader' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSidebarNav.api.mdx b/packages/docs/content/api/CSidebarNav.api.mdx index dbc289a6..7bcb30df 100644 --- a/packages/docs/content/api/CSidebarNav.api.mdx +++ b/packages/docs/content/api/CSidebarNav.api.mdx @@ -25,8 +25,8 @@ import CSidebarNav from '@coreui/react/src/components/sidebar/CSidebarNav'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSidebarToggler.api.mdx b/packages/docs/content/api/CSidebarToggler.api.mdx index 4c39a565..59755018 100644 --- a/packages/docs/content/api/CSidebarToggler.api.mdx +++ b/packages/docs/content/api/CSidebarToggler.api.mdx @@ -15,8 +15,8 @@ import CSidebarToggler from '@coreui/react/src/components/sidebar/CSidebarToggle - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CSpinner.api.mdx b/packages/docs/content/api/CSpinner.api.mdx index c072502a..159c58a9 100644 --- a/packages/docs/content/api/CSpinner.api.mdx +++ b/packages/docs/content/api/CSpinner.api.mdx @@ -25,8 +25,8 @@ import CSpinner from '@coreui/react/src/components/spinner/CSpinner'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} @@ -65,8 +65,8 @@ import CSpinner from '@coreui/react/src/components/spinner/CSpinner'

    Set the button variant to an outlined button or a ghost button.

    - - visuallyHiddenLabel# + + visuallyHiddenLabel# {`Loading...`} {`string`} diff --git a/packages/docs/content/api/CTab.api.mdx b/packages/docs/content/api/CTab.api.mdx index 1d298ded..138639d0 100644 --- a/packages/docs/content/api/CTab.api.mdx +++ b/packages/docs/content/api/CTab.api.mdx @@ -15,8 +15,8 @@ import CTab from '@coreui/react/src/components/tabs/CTab' - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CTab from '@coreui/react/src/components/tabs/CTab'

    Toggle the disabled state for the component.

    - - itemKey# + + itemKey# undefined {`string`}, {`number`} diff --git a/packages/docs/content/api/CTabContent.api.mdx b/packages/docs/content/api/CTabContent.api.mdx index c57cbae0..467a7d97 100644 --- a/packages/docs/content/api/CTabContent.api.mdx +++ b/packages/docs/content/api/CTabContent.api.mdx @@ -15,8 +15,8 @@ import CTabContent from '@coreui/react/src/components/tabs/CTabContent' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTabList.api.mdx b/packages/docs/content/api/CTabList.api.mdx index 176e4fb7..2be37d8c 100644 --- a/packages/docs/content/api/CTabList.api.mdx +++ b/packages/docs/content/api/CTabList.api.mdx @@ -15,8 +15,8 @@ import CTabList from '@coreui/react/src/components/tabs/CTabList' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTabPane.api.mdx b/packages/docs/content/api/CTabPane.api.mdx index 4d401d33..197dc805 100644 --- a/packages/docs/content/api/CTabPane.api.mdx +++ b/packages/docs/content/api/CTabPane.api.mdx @@ -15,8 +15,8 @@ import CTabPane from '@coreui/react/src/components/tabs/CTabPane' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CTabPane from '@coreui/react/src/components/tabs/CTabPane'

    A string of all className you want applied to the base component.

    - - onHide# + + onHide# undefined {`() => void`} @@ -35,8 +35,8 @@ import CTabPane from '@coreui/react/src/components/tabs/CTabPane'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CTabPanel.api.mdx b/packages/docs/content/api/CTabPanel.api.mdx index f8f092dd..3b6f9bd6 100644 --- a/packages/docs/content/api/CTabPanel.api.mdx +++ b/packages/docs/content/api/CTabPanel.api.mdx @@ -15,8 +15,8 @@ import CTabPanel from '@coreui/react/src/components/tabs/CTabPanel' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CTabPanel from '@coreui/react/src/components/tabs/CTabPanel'

    A string of all className you want applied to the base component.

    - - itemKey# + + itemKey# undefined {`string`}, {`number`} @@ -35,8 +35,8 @@ import CTabPanel from '@coreui/react/src/components/tabs/CTabPanel'

    Item key.

    - - onHide# + + onHide# undefined {`() => void`} @@ -45,8 +45,8 @@ import CTabPanel from '@coreui/react/src/components/tabs/CTabPanel'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CTable.api.mdx b/packages/docs/content/api/CTable.api.mdx index e8d0598b..75db1ece 100644 --- a/packages/docs/content/api/CTable.api.mdx +++ b/packages/docs/content/api/CTable.api.mdx @@ -25,8 +25,8 @@ import CTable from '@coreui/react/src/components/table/CTable'

    Set the vertical aligment.

    - - borderColor# + + borderColor# undefined {`'primary'`}, {`'secondary'`}, {`'success'`}, {`'danger'`}, {`'warning'`}, {`'info'`}, {`'dark'`}, {`'light'`}, {`string`} @@ -65,8 +65,8 @@ import CTable from '@coreui/react/src/components/table/CTable'

    Put the caption on the top if you set {`caption="top"`} of the table or set the text of the table caption.

    - - captionTop#4.3.0+ + + captionTop#4.3.0+ undefined {`string`} @@ -75,8 +75,8 @@ import CTable from '@coreui/react/src/components/table/CTable'

    Set the text of the table caption and the caption on the top of the table.

    - - className# + + className# undefined {`string`} @@ -180,8 +180,8 @@ or

    Add zebra-striping to any table row within the {``}.

    - - stripedColumns#4.3.0+ + + stripedColumns#4.3.0+ undefined {`boolean`} @@ -190,8 +190,8 @@ or

    Add zebra-striping to any table column.

    - - tableFootProps#4.3.0+ + + tableFootProps#4.3.0+ undefined {`CTableFootProps`} @@ -200,8 +200,8 @@ or

    Properties that will be passed to the table footer component.

    - - tableHeadProps#4.3.0+ + + tableHeadProps#4.3.0+ undefined {`CTableHeadProps`} diff --git a/packages/docs/content/api/CTableBody.api.mdx b/packages/docs/content/api/CTableBody.api.mdx index fa015ba9..c056b40d 100644 --- a/packages/docs/content/api/CTableBody.api.mdx +++ b/packages/docs/content/api/CTableBody.api.mdx @@ -15,8 +15,8 @@ import CTableBody from '@coreui/react/src/components/table/CTableBody' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTableDataCell.api.mdx b/packages/docs/content/api/CTableDataCell.api.mdx index 5c133fbd..7dcc4370 100644 --- a/packages/docs/content/api/CTableDataCell.api.mdx +++ b/packages/docs/content/api/CTableDataCell.api.mdx @@ -35,8 +35,8 @@ import CTableDataCell from '@coreui/react/src/components/table/CTableDataCell'

    Set the vertical aligment.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTableFoot.api.mdx b/packages/docs/content/api/CTableFoot.api.mdx index 005b256f..02c7a033 100644 --- a/packages/docs/content/api/CTableFoot.api.mdx +++ b/packages/docs/content/api/CTableFoot.api.mdx @@ -15,8 +15,8 @@ import CTableFoot from '@coreui/react/src/components/table/CTableFoot' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTableHead.api.mdx b/packages/docs/content/api/CTableHead.api.mdx index 2d4fdffb..b1473088 100644 --- a/packages/docs/content/api/CTableHead.api.mdx +++ b/packages/docs/content/api/CTableHead.api.mdx @@ -15,8 +15,8 @@ import CTableHead from '@coreui/react/src/components/table/CTableHead' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTableHeaderCell.api.mdx b/packages/docs/content/api/CTableHeaderCell.api.mdx index 8e4a1175..ec1078ab 100644 --- a/packages/docs/content/api/CTableHeaderCell.api.mdx +++ b/packages/docs/content/api/CTableHeaderCell.api.mdx @@ -15,8 +15,8 @@ import CTableHeaderCell from '@coreui/react/src/components/table/CTableHeaderCel - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTableRow.api.mdx b/packages/docs/content/api/CTableRow.api.mdx index 7bd30762..21c4cc31 100644 --- a/packages/docs/content/api/CTableRow.api.mdx +++ b/packages/docs/content/api/CTableRow.api.mdx @@ -35,8 +35,8 @@ import CTableRow from '@coreui/react/src/components/table/CTableRow'

    Set the vertical aligment.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTabs.api.mdx b/packages/docs/content/api/CTabs.api.mdx index edade324..7a3a0d19 100644 --- a/packages/docs/content/api/CTabs.api.mdx +++ b/packages/docs/content/api/CTabs.api.mdx @@ -15,8 +15,8 @@ import CTabs from '@coreui/react/src/components/tabs/CTabs' - - activeItemKey# + + activeItemKey# undefined {`string`}, {`number`} @@ -25,8 +25,8 @@ import CTabs from '@coreui/react/src/components/tabs/CTabs'

    The active item key.

    - - className# + + className# undefined {`string`} @@ -35,8 +35,8 @@ import CTabs from '@coreui/react/src/components/tabs/CTabs'

    A string of all className you want applied to the base component.

    - - onChange# + + onChange# undefined {`(value: string | number) => void`} diff --git a/packages/docs/content/api/CToast.api.mdx b/packages/docs/content/api/CToast.api.mdx index ab94a25f..e05ba87d 100644 --- a/packages/docs/content/api/CToast.api.mdx +++ b/packages/docs/content/api/CToast.api.mdx @@ -35,8 +35,8 @@ import CToast from '@coreui/react/src/components/toast/CToast'

    Auto hide the toast.

    - - className# + + className# undefined {`string`} @@ -65,8 +65,8 @@ import CToast from '@coreui/react/src/components/toast/CToast'

    Delay hiding the toast (ms).

    - - onClose# + + onClose# undefined {`(index: number) => void`} @@ -75,8 +75,8 @@ import CToast from '@coreui/react/src/components/toast/CToast'

    Callback fired when the component requests to be closed.

    - - onShow# + + onShow# undefined {`(index: number) => void`} diff --git a/packages/docs/content/api/CToastBody.api.mdx b/packages/docs/content/api/CToastBody.api.mdx index 22ec20e3..467c581a 100644 --- a/packages/docs/content/api/CToastBody.api.mdx +++ b/packages/docs/content/api/CToastBody.api.mdx @@ -15,8 +15,8 @@ import CToastBody from '@coreui/react/src/components/toast/CToastBody' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CToastClose.api.mdx b/packages/docs/content/api/CToastClose.api.mdx index 6b7e855e..6b865f4b 100644 --- a/packages/docs/content/api/CToastClose.api.mdx +++ b/packages/docs/content/api/CToastClose.api.mdx @@ -35,8 +35,8 @@ import CToastClose from '@coreui/react/src/components/toast/CToastClose'

    Component used for the root node. Either a string to use a HTML element or a component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CToastHeader.api.mdx b/packages/docs/content/api/CToastHeader.api.mdx index 370dabac..c0c261fc 100644 --- a/packages/docs/content/api/CToastHeader.api.mdx +++ b/packages/docs/content/api/CToastHeader.api.mdx @@ -15,8 +15,8 @@ import CToastHeader from '@coreui/react/src/components/toast/CToastHeader' - - className# + + className# undefined {`string`} @@ -25,8 +25,8 @@ import CToastHeader from '@coreui/react/src/components/toast/CToastHeader'

    A string of all className you want applied to the base component.

    - - closeButton# + + closeButton# undefined {`boolean`} diff --git a/packages/docs/content/api/CToaster.api.mdx b/packages/docs/content/api/CToaster.api.mdx index 4550a356..3a86393c 100644 --- a/packages/docs/content/api/CToaster.api.mdx +++ b/packages/docs/content/api/CToaster.api.mdx @@ -15,8 +15,8 @@ import CToaster from '@coreui/react/src/components/toast/CToaster' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CTooltip.api.mdx b/packages/docs/content/api/CTooltip.api.mdx index b6815ffa..335bf4d1 100644 --- a/packages/docs/content/api/CTooltip.api.mdx +++ b/packages/docs/content/api/CTooltip.api.mdx @@ -25,8 +25,8 @@ import CTooltip from '@coreui/react/src/components/tooltip/CTooltip'

    Apply a CSS fade transition to the tooltip.

    - - className# + + className# undefined {`string`} @@ -65,8 +65,8 @@ import CTooltip from '@coreui/react/src/components/tooltip/CTooltip'

    The delay for displaying and hiding the tooltip (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: {`{ 'show': 500, 'hide': 100 }`}.

    - - fallbackPlacements#4.9.0+ + + fallbackPlacements#4.9.0+ {`['top', 'right', 'bottom', 'left']`} {`Placements`}, {`Placements[]`} @@ -85,8 +85,8 @@ import CTooltip from '@coreui/react/src/components/tooltip/CTooltip'

    Offset of the tooltip relative to its target.

    - - onHide# + + onHide# undefined {`() => void`} @@ -95,8 +95,8 @@ import CTooltip from '@coreui/react/src/components/tooltip/CTooltip'

    Callback fired when the component requests to be hidden.

    - - onShow# + + onShow# undefined {`() => void`} diff --git a/packages/docs/content/api/CWidgetStatsA.api.mdx b/packages/docs/content/api/CWidgetStatsA.api.mdx index 5f070ae2..f0eb8778 100644 --- a/packages/docs/content/api/CWidgetStatsA.api.mdx +++ b/packages/docs/content/api/CWidgetStatsA.api.mdx @@ -35,8 +35,8 @@ import CWidgetStatsA from '@coreui/react/src/components/widgets/CWidgetStatsA'

    Chart node for your component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CWidgetStatsB.api.mdx b/packages/docs/content/api/CWidgetStatsB.api.mdx index 95930531..36e042e0 100644 --- a/packages/docs/content/api/CWidgetStatsB.api.mdx +++ b/packages/docs/content/api/CWidgetStatsB.api.mdx @@ -15,8 +15,8 @@ import CWidgetCWidgetStatsB from '@coreui/react/src/components/widgets/CWidgetSt - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CWidgetStatsC.api.mdx b/packages/docs/content/api/CWidgetStatsC.api.mdx index 47c6e1ad..9485d07f 100644 --- a/packages/docs/content/api/CWidgetStatsC.api.mdx +++ b/packages/docs/content/api/CWidgetStatsC.api.mdx @@ -15,8 +15,8 @@ import CWidgetStatsCWidgetStatsC from '@coreui/react/src/components/widgets/CWid - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CWidgetStatsD.api.mdx b/packages/docs/content/api/CWidgetStatsD.api.mdx index 5680f8eb..9875979b 100644 --- a/packages/docs/content/api/CWidgetStatsD.api.mdx +++ b/packages/docs/content/api/CWidgetStatsD.api.mdx @@ -25,8 +25,8 @@ import CWidgetStatsD from '@coreui/react/src/components/widgets/CWidgetStatsD'

    Chart node for your component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CWidgetStatsE.api.mdx b/packages/docs/content/api/CWidgetStatsE.api.mdx index bd22c4ce..1af5918c 100644 --- a/packages/docs/content/api/CWidgetStatsE.api.mdx +++ b/packages/docs/content/api/CWidgetStatsE.api.mdx @@ -25,8 +25,8 @@ import CWidgetStatsE from '@coreui/react/src/components/widgets/CWidgetStatsE'

    Chart node for your component.

    - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CWidgetStatsF.api.mdx b/packages/docs/content/api/CWidgetStatsF.api.mdx index 146bd5d7..b3076836 100644 --- a/packages/docs/content/api/CWidgetStatsF.api.mdx +++ b/packages/docs/content/api/CWidgetStatsF.api.mdx @@ -15,8 +15,8 @@ import CWidgetStatsF from '@coreui/react/src/components/widgets/CWidgetStatsF' - - className# + + className# undefined {`string`} diff --git a/packages/docs/content/api/CoreUIProvider.api.mdx b/packages/docs/content/api/CoreUIProvider.api.mdx deleted file mode 100644 index 17f75a27..00000000 --- a/packages/docs/content/api/CoreUIProvider.api.mdx +++ /dev/null @@ -1,7 +0,0 @@ - -```jsx -import { CoreUIProvider } from '@coreui/src' -// or -import CoreUIProvider from '@coreuireact/src/api/coreuivider/CoreUIProvider' -``` - From 7ad6008230d72a9ddc40e0e39ed20968a96858ba Mon Sep 17 00:00:00 2001 From: mrholek Date: Wed, 18 Dec 2024 13:53:35 +0100 Subject: [PATCH 079/151] docs: update layout --- packages/docs/gatsby-browser.tsx | 11 +- packages/docs/gatsby-ssr.tsx | 11 +- packages/docs/src/components/Seo.tsx | 11 -- packages/docs/src/components/Sidebar.tsx | 4 +- packages/docs/src/templates/DefaultLayout.tsx | 27 +--- packages/docs/src/templates/DocsLayout.tsx | 118 ++++++++++-------- packages/docs/src/templates/MdxLayout.tsx | 78 ++++++------ 7 files changed, 125 insertions(+), 135 deletions(-) diff --git a/packages/docs/gatsby-browser.tsx b/packages/docs/gatsby-browser.tsx index 4791853e..9850d388 100644 --- a/packages/docs/gatsby-browser.tsx +++ b/packages/docs/gatsby-browser.tsx @@ -1,8 +1,13 @@ -import React from 'react' +import React, { ReactNode } from 'react' import '@docsearch/css' import DefaultLayout from './src/templates/DefaultLayout' +import DocsLayout from './src/templates/DocsLayout' import './src/styles/styles.scss' -export const wrapPageElement = ({ element, props }) => { - return {element} +export const wrapRootElement = ({ element }: { element: ReactNode }) => { + return {element} +} + +export const wrapPageElement = ({ element, props }: { element: ReactNode; props: any }) => { + return {element} } diff --git a/packages/docs/gatsby-ssr.tsx b/packages/docs/gatsby-ssr.tsx index 4791853e..9850d388 100644 --- a/packages/docs/gatsby-ssr.tsx +++ b/packages/docs/gatsby-ssr.tsx @@ -1,8 +1,13 @@ -import React from 'react' +import React, { ReactNode } from 'react' import '@docsearch/css' import DefaultLayout from './src/templates/DefaultLayout' +import DocsLayout from './src/templates/DocsLayout' import './src/styles/styles.scss' -export const wrapPageElement = ({ element, props }) => { - return {element} +export const wrapRootElement = ({ element }: { element: ReactNode }) => { + return {element} +} + +export const wrapPageElement = ({ element, props }: { element: ReactNode; props: any }) => { + return {element} } diff --git a/packages/docs/src/components/Seo.tsx b/packages/docs/src/components/Seo.tsx index 62f081b8..26cd82d0 100644 --- a/packages/docs/src/components/Seo.tsx +++ b/packages/docs/src/components/Seo.tsx @@ -40,27 +40,16 @@ const SEO = ({ title, description, name, image, article }: SEOProps) => { {formattedTitle} - {seo.url && } - {(article ? true : null) && } - {seo.title && } - {seo.description && } - {seo.image && } - - {twitterUsername && } - {seo.title && } - {seo.description && } - {seo.image && } - {seo.name && ( - )} + {seo.name && } ) } diff --git a/packages/docs/src/templates/MdxLayout.tsx b/packages/docs/src/templates/MdxLayout.tsx index 00aa6f11..4fddc174 100644 --- a/packages/docs/src/templates/MdxLayout.tsx +++ b/packages/docs/src/templates/MdxLayout.tsx @@ -98,11 +98,12 @@ export const Head = ({ pageContext }: { pageContext: PageContextType }) => { const title = frontmatter?.title || '' const description = frontmatter?.description || '' const name = frontmatter?.name || '' + const pro = frontmatter?.pro_component || false return ( <> - + ) } From fd20117f2642f255ae2dc09399c0177fb2aa4153 Mon Sep 17 00:00:00 2001 From: mrholek Date: Mon, 14 Jul 2025 16:30:15 +0200 Subject: [PATCH 150/151] chore: remove spaces --- packages/docs/src/components/Seo.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/docs/src/components/Seo.tsx b/packages/docs/src/components/Seo.tsx index cbb99f62..2af0c1a2 100644 --- a/packages/docs/src/components/Seo.tsx +++ b/packages/docs/src/components/Seo.tsx @@ -94,7 +94,7 @@ const SEO = ({ title, description, name, image, article, pro }: SEOProps) => { return 'Complete guide to CoreUI React migration. Track and review changes to the CoreUI for React.js components to help you migrate to the latest version.' } - return 'Complete guide to CoreUI for React.js components and implementation.' + return 'Complete guide to CoreUI for React.js components and implementation.' } const schema = [ @@ -127,7 +127,7 @@ const SEO = ({ title, description, name, image, article, pro }: SEOProps) => { '@context': 'https://schema.org', '@type': 'TechArticle', headline: `${seo.title} documentation`, - description: getDynamicDescription(seo.url, name,), + description: getDynamicDescription(seo.url, name), author: { '@type': 'Organization', name: 'CoreUI Team', From 80a58fcce390c7be865a1de9fa28494fe9781788 Mon Sep 17 00:00:00 2001 From: mrholek Date: Sat, 9 Aug 2025 14:44:26 +0200 Subject: [PATCH 151/151] docs: update the list of available components --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 96d149a2..34eede89 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,7 @@ import "bootstrap/dist/css/bootstrap.min.css"; - [React Accordion](https://coreui.io/react/docs/components/accordion/) - [React Alert](https://coreui.io/react/docs/components/alert/) +- [React Autocomplete](https://coreui.io/react/docs/forms/autocomplete/) **PRO** - [React Avatar](https://coreui.io/react/docs/components/avatar/) - [React Badge](https://coreui.io/react/docs/components/badge/) - [React Breadcrumb](https://coreui.io/react/docs/components/breadcrumb/) @@ -134,7 +135,8 @@ import "bootstrap/dist/css/bootstrap.min.css"; - [React Progress](https://coreui.io/react/docs/components/progress/) - [React Radio](https://coreui.io/react/docs/forms/radio/) - [React Range](https://coreui.io/react/docs/forms/range/) -- [React Rating](https://coreui.io/react/docs/forms/rating/) +- [React Range Slider](https://coreui.io/react/docs/forms/range-slider/) **PRO** +- [React Rating](https://coreui.io/react/docs/forms/rating/) **PRO** - [React Select](https://coreui.io/react/docs/forms/select/) - [React Sidebar](https://coreui.io/react/docs/components/sidebar/) - [React Smart Pagination](https://coreui.io/react/docs/components/smart-pagination/) **PRO** pFad - Phonifier reborn

    Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

    Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy