@vkzstudio/muza-ui 1.0.48 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +173 -171
- package/dist/Muza_BP_logo.svg +26 -26
- package/dist/components/Alert/Alert.d.ts +3 -1
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/Alert.js +28 -24
- package/dist/components/Button/Button.stories.d.ts.map +1 -1
- package/dist/components/Calendar/Calendar.js +10 -11
- package/dist/components/Card/Card.stories.d.ts.map +1 -1
- package/dist/components/Carousel/Carousel.d.ts +30 -3
- package/dist/components/Carousel/Carousel.d.ts.map +1 -1
- package/dist/components/Carousel/Carousel.js +112 -92
- package/dist/components/Carousel/Carousel.stories.d.ts.map +1 -1
- package/dist/components/DataTable/DataTable.stories.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.stories.d.ts +1 -0
- package/dist/components/DatePicker/DatePicker.stories.d.ts.map +1 -1
- package/dist/components/DatePickerButton/DatePickerButton.stories.d.ts.map +1 -1
- package/dist/components/Dialog/Dialog.stories.d.ts +1 -0
- package/dist/components/Dialog/Dialog.stories.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.stories.d.ts +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.stories.d.ts.map +1 -1
- package/dist/components/Icons/CustomBadges.d.ts +5 -0
- package/dist/components/Icons/CustomBadges.d.ts.map +1 -1
- package/dist/components/Icons/CustomBadges.js +216 -13
- package/dist/components/Input/Input.js +22 -32
- package/dist/components/LanguageSwitcher/LanguageSwitcher.stories.d.ts +1 -0
- package/dist/components/LanguageSwitcher/LanguageSwitcher.stories.d.ts.map +1 -1
- package/dist/components/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/components/Lightbox/Lightbox.js +70 -54
- package/dist/components/Lightbox/Lightbox.stories.d.ts +1 -0
- package/dist/components/Lightbox/Lightbox.stories.d.ts.map +1 -1
- package/dist/components/Lightbox/LightboxOverrides.css +5 -5
- package/dist/components/LoginScreen/LoginScreen.d.ts +11 -1
- package/dist/components/LoginScreen/LoginScreen.d.ts.map +1 -1
- package/dist/components/LoginScreen/LoginScreen.js +27 -27
- package/dist/components/LoginScreen/LoginScreen.stories.d.ts +2 -2
- package/dist/components/LoginScreen/LoginScreen.stories.d.ts.map +1 -1
- package/dist/components/LoginScreen/LoginScreen3D/LoginScreen3DModel.js +10 -9
- package/dist/components/LoginScreen/LoginScreen3D/LoginScreen3DScene.js +21 -22
- package/dist/components/LoginScreen/LoginScreenItem.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.stories.d.ts +1 -0
- package/dist/components/MultiSelect/MultiSelect.stories.d.ts.map +1 -1
- package/dist/components/Pagination/Pagination.stories.d.ts.map +1 -1
- package/dist/components/Popover/Popover.stories.d.ts +1 -0
- package/dist/components/Popover/Popover.stories.d.ts.map +1 -1
- package/dist/components/Reorderable/Reorderable.js +74 -78
- package/dist/components/Reorderable/Reorderable.stories.d.ts.map +1 -1
- package/dist/components/ReorderableTable/ReorderableTable.js +1 -1
- package/dist/components/Select/Select.stories.d.ts +1 -0
- package/dist/components/Select/Select.stories.d.ts.map +1 -1
- package/dist/components/Sheet/Sheet.stories.d.ts +1 -0
- package/dist/components/Sheet/Sheet.stories.d.ts.map +1 -1
- package/dist/components/SwipeButton/SwipeButton.js +37 -42
- package/dist/components/Tag/Tag.js +1 -1
- package/dist/components/TextEditor/LinkBubbleMenu.js +2 -2
- package/dist/components/TextEditor/TextEditor.js +5 -5
- package/dist/components/Toast/Toast.stories.d.ts +1 -0
- package/dist/components/Toast/Toast.stories.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.stories.d.ts +1 -0
- package/dist/components/Tooltip/Tooltip.stories.d.ts.map +1 -1
- package/dist/components/TypographyLink/TypographyLink.stories.d.ts.map +1 -1
- package/dist/fonts/Objectivity/OFL.txt +92 -92
- package/dist/globals.css +12 -12
- package/dist/index.js +194 -193
- package/dist/muza-ui.css +1 -1
- package/dist/styles/3rd-parties.css +5 -5
- package/dist/styles/animations.css +21 -21
- package/dist/styles/breakpoints.css +4 -4
- package/dist/styles/primitives.css +163 -163
- package/dist/styles/token-colors.css +1445 -1445
- package/dist/styles/token-sizes.css +1553 -1553
- package/dist/styles/typography.css +113 -113
- package/dist/styles/utilities.css +66 -66
- package/dist/styles/white-label.css +26 -26
- package/dist/translations/TranslationContext.js +22 -24
- package/dist/translations/locales/cs.d.ts.map +1 -1
- package/dist/translations/locales/cs.js +3 -0
- package/dist/translations/locales/en.d.ts.map +1 -1
- package/dist/translations/locales/en.js +3 -0
- package/dist/translations/locales/sk.d.ts.map +1 -1
- package/dist/translations/locales/sk.js +3 -0
- package/dist/translations/types.d.ts +8 -0
- package/dist/translations/types.d.ts.map +1 -1
- package/llms-full.md +584 -584
- package/llms.txt +37 -37
- package/package.json +165 -171
- package/dist/_virtual/_commonjsHelpers.js +0 -6
- package/dist/_virtual/constants.js +0 -5
- package/dist/_virtual/constants2.js +0 -4
- package/dist/_virtual/index.js +0 -7
- package/dist/_virtual/index2.js +0 -4
- package/dist/_virtual/index3.js +0 -4
- package/dist/_virtual/index4.js +0 -7
- package/dist/_virtual/index5.js +0 -5
- package/dist/_virtual/index6.js +0 -4
- package/dist/_virtual/index7.js +0 -4
- package/dist/_virtual/react-dom-server-legacy.browser.development.js +0 -4
- package/dist/_virtual/react-dom-server-legacy.browser.production.min.js +0 -4
- package/dist/_virtual/react-dom-server.browser.development.js +0 -4
- package/dist/_virtual/react-dom-server.browser.production.min.js +0 -4
- package/dist/_virtual/react-is.development.js +0 -4
- package/dist/_virtual/react-is.production.min.js +0 -4
- package/dist/_virtual/react-reconciler-constants.development.js +0 -4
- package/dist/_virtual/react-reconciler-constants.production.min.js +0 -4
- package/dist/_virtual/react-reconciler.development.js +0 -4
- package/dist/_virtual/scheduler.development.js +0 -4
- package/dist/_virtual/scheduler.production.min.js +0 -4
- package/dist/_virtual/server.browser.js +0 -5
- package/dist/_virtual/server.browser2.js +0 -4
- package/dist/node_modules/@date-fns/tz/date/index.js +0 -61
- package/dist/node_modules/@date-fns/tz/date/mini.js +0 -69
- package/dist/node_modules/@date-fns/tz/tzName/index.js +0 -11
- package/dist/node_modules/@date-fns/tz/tzOffset/index.js +0 -22
- package/dist/node_modules/@popperjs/core/lib/createPopper.js +0 -122
- package/dist/node_modules/@popperjs/core/lib/dom-utils/contains.js +0 -18
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js +0 -23
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js +0 -37
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js +0 -32
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js +0 -7
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js +0 -10
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js +0 -17
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js +0 -9
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js +0 -13
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getNodeName.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js +0 -10
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js +0 -35
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getParentNode.js +0 -18
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js +0 -10
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js +0 -21
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getWindow.js +0 -12
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js +0 -11
- package/dist/node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js +0 -9
- package/dist/node_modules/@popperjs/core/lib/dom-utils/instanceOf.js +0 -20
- package/dist/node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js +0 -7
- package/dist/node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js +0 -8
- package/dist/node_modules/@popperjs/core/lib/dom-utils/isTableElement.js +0 -7
- package/dist/node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js +0 -16
- package/dist/node_modules/@popperjs/core/lib/enums.js +0 -31
- package/dist/node_modules/@popperjs/core/lib/modifiers/applyStyles.js +0 -47
- package/dist/node_modules/@popperjs/core/lib/modifiers/arrow.js +0 -37
- package/dist/node_modules/@popperjs/core/lib/modifiers/computeStyles.js +0 -99
- package/dist/node_modules/@popperjs/core/lib/modifiers/eventListeners.js +0 -26
- package/dist/node_modules/@popperjs/core/lib/modifiers/flip.js +0 -74
- package/dist/node_modules/@popperjs/core/lib/modifiers/hide.js +0 -44
- package/dist/node_modules/@popperjs/core/lib/modifiers/offset.js +0 -31
- package/dist/node_modules/@popperjs/core/lib/modifiers/popperOffsets.js +0 -19
- package/dist/node_modules/@popperjs/core/lib/modifiers/preventOverflow.js +0 -54
- package/dist/node_modules/@popperjs/core/lib/popper.js +0 -27
- package/dist/node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js +0 -27
- package/dist/node_modules/@popperjs/core/lib/utils/computeOffsets.js +0 -54
- package/dist/node_modules/@popperjs/core/lib/utils/debounce.js +0 -13
- package/dist/node_modules/@popperjs/core/lib/utils/detectOverflow.js +0 -33
- package/dist/node_modules/@popperjs/core/lib/utils/expandToHashMap.js +0 -8
- package/dist/node_modules/@popperjs/core/lib/utils/getAltAxis.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/utils/getBasePlacement.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/utils/getFreshSideObject.js +0 -11
- package/dist/node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/utils/getOppositePlacement.js +0 -14
- package/dist/node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js +0 -12
- package/dist/node_modules/@popperjs/core/lib/utils/getVariation.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/utils/math.js +0 -6
- package/dist/node_modules/@popperjs/core/lib/utils/mergeByName.js +0 -15
- package/dist/node_modules/@popperjs/core/lib/utils/mergePaddingObject.js +0 -7
- package/dist/node_modules/@popperjs/core/lib/utils/orderModifiers.js +0 -31
- package/dist/node_modules/@popperjs/core/lib/utils/rectToClientRect.js +0 -11
- package/dist/node_modules/@popperjs/core/lib/utils/userAgent.js +0 -9
- package/dist/node_modules/@popperjs/core/lib/utils/within.js +0 -12
- package/dist/node_modules/@react-three/drei/core/useAnimations.js +0 -34
- package/dist/node_modules/@react-three/drei/core/useGLTF.js +0 -18
- package/dist/node_modules/@react-three/fiber/dist/events-776716bd.esm.js +0 -1311
- package/dist/node_modules/@react-three/fiber/dist/react-three-fiber.esm.js +0 -145
- package/dist/node_modules/@react-three/fiber/node_modules/suspend-react/index.js +0 -47
- package/dist/node_modules/@tiptap/core/dist/index.js +0 -2857
- package/dist/node_modules/@tiptap/extension-blockquote/dist/index.js +0 -45
- package/dist/node_modules/@tiptap/extension-bold/dist/index.js +0 -76
- package/dist/node_modules/@tiptap/extension-bubble-menu/dist/index.js +0 -129
- package/dist/node_modules/@tiptap/extension-bullet-list/dist/index.js +0 -55
- package/dist/node_modules/@tiptap/extension-character-count/dist/index.js +0 -73
- package/dist/node_modules/@tiptap/extension-code/dist/index.js +0 -54
- package/dist/node_modules/@tiptap/extension-code-block/dist/index.js +0 -136
- package/dist/node_modules/@tiptap/extension-document/dist/index.js +0 -10
- package/dist/node_modules/@tiptap/extension-dropcursor/dist/index.js +0 -21
- package/dist/node_modules/@tiptap/extension-gapcursor/dist/index.js +0 -25
- package/dist/node_modules/@tiptap/extension-hard-break/dist/index.js +0 -56
- package/dist/node_modules/@tiptap/extension-heading/dist/index.js +0 -55
- package/dist/node_modules/@tiptap/extension-history/dist/index.js +0 -36
- package/dist/node_modules/@tiptap/extension-horizontal-rule/dist/index.js +0 -59
- package/dist/node_modules/@tiptap/extension-italic/dist/index.js +0 -75
- package/dist/node_modules/@tiptap/extension-link/dist/index.js +0 -272
- package/dist/node_modules/@tiptap/extension-list-item/dist/index.js +0 -34
- package/dist/node_modules/@tiptap/extension-ordered-list/dist/index.js +0 -73
- package/dist/node_modules/@tiptap/extension-paragraph/dist/index.js +0 -34
- package/dist/node_modules/@tiptap/extension-placeholder/dist/index.js +0 -53
- package/dist/node_modules/@tiptap/extension-strike/dist/index.js +0 -64
- package/dist/node_modules/@tiptap/extension-text/dist/index.js +0 -9
- package/dist/node_modules/@tiptap/react/dist/index.js +0 -709
- package/dist/node_modules/@tiptap/starter-kit/dist/index.js +0 -30
- package/dist/node_modules/color/index.js +0 -262
- package/dist/node_modules/color/node_modules/color-convert/conversions.js +0 -421
- package/dist/node_modules/color/node_modules/color-convert/index.js +0 -35
- package/dist/node_modules/color/node_modules/color-convert/route.js +0 -46
- package/dist/node_modules/color/node_modules/color-name/index.js +0 -153
- package/dist/node_modules/color-string/index.js +0 -105
- package/dist/node_modules/color-string/node_modules/color-name/index.js +0 -153
- package/dist/node_modules/date-fns/_lib/defaultOptions.js +0 -7
- package/dist/node_modules/date-fns/_lib/normalizeDates.js +0 -11
- package/dist/node_modules/date-fns/constants.js +0 -4
- package/dist/node_modules/date-fns/constructFrom.js +0 -8
- package/dist/node_modules/date-fns/isSameWeek.js +0 -14
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +0 -9
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +0 -18
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +0 -31
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +0 -15
- package/dist/node_modules/date-fns/locale/cs/_lib/formatDistance.js +0 -275
- package/dist/node_modules/date-fns/locale/cs/_lib/formatLong.js +0 -33
- package/dist/node_modules/date-fns/locale/cs/_lib/formatRelative.js +0 -25
- package/dist/node_modules/date-fns/locale/cs/_lib/localize.js +0 -167
- package/dist/node_modules/date-fns/locale/cs/_lib/match.js +0 -109
- package/dist/node_modules/date-fns/locale/cs.js +0 -21
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +0 -70
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +0 -33
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +0 -11
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +0 -155
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +0 -110
- package/dist/node_modules/date-fns/locale/en-US.js +0 -21
- package/dist/node_modules/date-fns/locale/sk/_lib/formatDistance.js +0 -158
- package/dist/node_modules/date-fns/locale/sk/_lib/formatLong.js +0 -33
- package/dist/node_modules/date-fns/locale/sk/_lib/formatRelative.js +0 -60
- package/dist/node_modules/date-fns/locale/sk/_lib/localize.js +0 -175
- package/dist/node_modules/date-fns/locale/sk/_lib/match.js +0 -111
- package/dist/node_modules/date-fns/locale/sk.js +0 -21
- package/dist/node_modules/date-fns/startOfWeek.js +0 -11
- package/dist/node_modules/date-fns/toDate.js +0 -8
- package/dist/node_modules/framer-motion/dist/es/animation/animate/index.js +0 -25
- package/dist/node_modules/framer-motion/dist/es/animation/animate/resolve-subjects.js +0 -8
- package/dist/node_modules/framer-motion/dist/es/animation/animate/sequence.js +0 -12
- package/dist/node_modules/framer-motion/dist/es/animation/animate/subject.js +0 -32
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/create.js +0 -128
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-repeat-duration.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.js +0 -22
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/utils/normalize-times.js +0 -7
- package/dist/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.js +0 -40
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.js +0 -59
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.js +0 -34
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.js +0 -47
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.js +0 -17
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.js +0 -12
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/Group.js +0 -46
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/Item.js +0 -34
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/utils/auto-scroll.js +0 -64
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/utils/check-reorder.js +0 -17
- package/dist/node_modules/framer-motion/dist/es/context/LayoutGroupContext.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/context/LazyContext.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/context/MotionConfigContext.js +0 -9
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/create.js +0 -13
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/index.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/utils.js +0 -15
- package/dist/node_modules/framer-motion/dist/es/context/PresenceContext.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/context/ReorderContext.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.js +0 -5
- package/dist/node_modules/framer-motion/dist/es/events/add-pointer-event.js +0 -8
- package/dist/node_modules/framer-motion/dist/es/events/event-info.js +0 -14
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.js +0 -277
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/index.js +0 -22
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.js +0 -70
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.js +0 -67
- package/dist/node_modules/framer-motion/dist/es/gestures/focus.js +0 -28
- package/dist/node_modules/framer-motion/dist/es/gestures/hover.js +0 -21
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/PanSession.js +0 -131
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.js +0 -43
- package/dist/node_modules/framer-motion/dist/es/gestures/press.js +0 -23
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.js +0 -27
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/index.js +0 -34
- package/dist/node_modules/framer-motion/dist/es/motion/features/animations.js +0 -13
- package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.js +0 -39
- package/dist/node_modules/framer-motion/dist/es/motion/features/drag.js +0 -17
- package/dist/node_modules/framer-motion/dist/es/motion/features/gestures.js +0 -21
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.js +0 -60
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout.js +0 -11
- package/dist/node_modules/framer-motion/dist/es/motion/features/load-features.js +0 -14
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.js +0 -44
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/observers.js +0 -21
- package/dist/node_modules/framer-motion/dist/es/motion/index.js +0 -63
- package/dist/node_modules/framer-motion/dist/es/motion/utils/symbol.js +0 -4
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.js +0 -22
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.js +0 -65
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.js +0 -52
- package/dist/node_modules/framer-motion/dist/es/motion/utils/valid-prop.js +0 -38
- package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.js +0 -18
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/feature-bundle.js +0 -13
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/proxy.js +0 -7
- package/dist/node_modules/framer-motion/dist/es/render/dom/create-visual-element.js +0 -10
- package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.js +0 -16
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.js +0 -20
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.js +0 -24
- package/dist/node_modules/framer-motion/dist/es/render/html/use-html-visual-state.js +0 -10
- package/dist/node_modules/framer-motion/dist/es/render/html/use-props.js +0 -27
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.js +0 -9
- package/dist/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.js +0 -30
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.js +0 -22
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-svg-visual-state.js +0 -10
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.js +0 -8
- package/dist/node_modules/framer-motion/dist/es/utils/distance.js +0 -9
- package/dist/node_modules/framer-motion/dist/es/utils/get-context-window.js +0 -4
- package/dist/node_modules/framer-motion/dist/es/utils/is-browser.js +0 -4
- package/dist/node_modules/framer-motion/dist/es/utils/is-ref-object.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/utils/use-composed-ref.js +0 -28
- package/dist/node_modules/framer-motion/dist/es/utils/use-constant.js +0 -8
- package/dist/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.js +0 -6
- package/dist/node_modules/framer-motion/dist/es/utils/use-motion-value-event.js +0 -7
- package/dist/node_modules/framer-motion/dist/es/value/use-combine-values.js +0 -15
- package/dist/node_modules/framer-motion/dist/es/value/use-computed.js +0 -10
- package/dist/node_modules/framer-motion/dist/es/value/use-motion-value.js +0 -15
- package/dist/node_modules/framer-motion/dist/es/value/use-transform.js +0 -31
- package/dist/node_modules/imask/esm/controls/html-contenteditable-mask-element.js +0 -34
- package/dist/node_modules/imask/esm/controls/html-input-mask-element.js +0 -31
- package/dist/node_modules/imask/esm/controls/html-mask-element.js +0 -48
- package/dist/node_modules/imask/esm/controls/input-history.js +0 -30
- package/dist/node_modules/imask/esm/controls/input.js +0 -222
- package/dist/node_modules/imask/esm/controls/mask-element.js +0 -43
- package/dist/node_modules/imask/esm/core/action-details.js +0 -51
- package/dist/node_modules/imask/esm/core/change-details.js +0 -36
- package/dist/node_modules/imask/esm/core/continuous-tail-details.js +0 -42
- package/dist/node_modules/imask/esm/core/holder.js +0 -6
- package/dist/node_modules/imask/esm/core/utils.js +0 -67
- package/dist/node_modules/imask/esm/index.js +0 -50
- package/dist/node_modules/imask/esm/masked/base.js +0 -252
- package/dist/node_modules/imask/esm/masked/date.js +0 -117
- package/dist/node_modules/imask/esm/masked/dynamic.js +0 -222
- package/dist/node_modules/imask/esm/masked/enum.js +0 -69
- package/dist/node_modules/imask/esm/masked/factory.js +0 -46
- package/dist/node_modules/imask/esm/masked/function.js +0 -23
- package/dist/node_modules/imask/esm/masked/number.js +0 -212
- package/dist/node_modules/imask/esm/masked/pattern/chunk-tail-details.js +0 -103
- package/dist/node_modules/imask/esm/masked/pattern/cursor.js +0 -100
- package/dist/node_modules/imask/esm/masked/pattern/fixed-definition.js +0 -102
- package/dist/node_modules/imask/esm/masked/pattern/input-definition.js +0 -133
- package/dist/node_modules/imask/esm/masked/pattern.js +0 -322
- package/dist/node_modules/imask/esm/masked/pipe.js +0 -23
- package/dist/node_modules/imask/esm/masked/range.js +0 -78
- package/dist/node_modules/imask/esm/masked/regexp.js +0 -21
- package/dist/node_modules/imask/esm/masked/repeat.js +0 -104
- package/dist/node_modules/its-fine/dist/index.js +0 -116
- package/dist/node_modules/linkifyjs/dist/linkify.js +0 -707
- package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.js +0 -106
- package/dist/node_modules/motion-dom/dist/es/animation/GroupAnimation.js +0 -76
- package/dist/node_modules/motion-dom/dist/es/animation/GroupAnimationWithThen.js +0 -10
- package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.js +0 -133
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimation.js +0 -108
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimationExtended.js +0 -37
- package/dist/node_modules/motion-dom/dist/es/animation/animate/single-value.js +0 -10
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/frame.js +0 -17
- package/dist/node_modules/motion-dom/dist/es/animation/generators/inertia.js +0 -37
- package/dist/node_modules/motion-dom/dist/es/animation/generators/keyframes.js +0 -30
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/defaults.js +0 -32
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/find.js +0 -52
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/index.js +0 -98
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/calc-duration.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/create-generator-easing.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/is-generator.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/velocity.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.js +0 -46
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.js +0 -46
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.js +0 -30
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element.js +0 -22
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.js +0 -69
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.js +0 -75
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/get-final.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/default.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/fill.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/fill-wildcards.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/is-none.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/make-none-animatable.js +0 -16
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.js +0 -31
- package/dist/node_modules/motion-dom/dist/es/animation/optimized-appear/data-id.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/optimized-appear/get-appear-id.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.js +0 -27
- package/dist/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/animation/utils/can-animate.js +0 -23
- package/dist/node_modules/motion-dom/dist/es/animation/utils/css-variables-conversion.js +0 -31
- package/dist/node_modules/motion-dom/dist/es/animation/utils/default-transitions.js +0 -22
- package/dist/node_modules/motion-dom/dist/es/animation/utils/get-final-keyframe.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/animation/utils/get-value-transition.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-animatable.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-css-variable.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-transition-defined.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/utils/make-animation-instant.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/animation/utils/replace-transition-type.js +0 -16
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/cubic-bezier.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/supported.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/start-waapi-animation.js +0 -21
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.js +0 -24
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/apply-generator.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/linear.js +0 -10
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/unsupported-easing.js +0 -17
- package/dist/node_modules/motion-dom/dist/es/events/add-dom-event.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.js +0 -27
- package/dist/node_modules/motion-dom/dist/es/frameloop/frame.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/frameloop/microtask.js +0 -5
- package/dist/node_modules/motion-dom/dist/es/frameloop/order.js +0 -21
- package/dist/node_modules/motion-dom/dist/es/frameloop/render-step.js +0 -41
- package/dist/node_modules/motion-dom/dist/es/frameloop/sync-time.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/is-active.js +0 -11
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/set-active.js +0 -11
- package/dist/node_modules/motion-dom/dist/es/gestures/hover.js +0 -24
- package/dist/node_modules/motion-dom/dist/es/gestures/press/index.js +0 -33
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/is-keyboard-accessible.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.js +0 -27
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/state.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-node-or-child.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-primary-pointer.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/setup.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/projection/animation/mix-values.js +0 -27
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/conversion.js +0 -25
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/copy.js +0 -14
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-apply.js +0 -52
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.js +0 -36
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-remove.js +0 -25
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/models.js +0 -18
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/utils.js +0 -34
- package/dist/node_modules/motion-dom/dist/es/projection/node/DocumentProjectionNode.js +0 -16
- package/dist/node_modules/motion-dom/dist/es/projection/node/HTMLProjectionNode.js +0 -25
- package/dist/node_modules/motion-dom/dist/es/projection/node/create-projection-node.js +0 -623
- package/dist/node_modules/motion-dom/dist/es/projection/node/state.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/projection/shared/stack.js +0 -60
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-border-radius.js +0 -21
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.js +0 -16
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-correction.js +0 -21
- package/dist/node_modules/motion-dom/dist/es/projection/styles/transform.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/projection/utils/compare-by-depth.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/projection/utils/each-axis.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/projection/utils/flat-tree.js +0 -19
- package/dist/node_modules/motion-dom/dist/es/projection/utils/has-transform.js +0 -20
- package/dist/node_modules/motion-dom/dist/es/projection/utils/measure.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/render/Feature.js +0 -10
- package/dist/node_modules/motion-dom/dist/es/render/VisualElement.js +0 -247
- package/dist/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.js +0 -28
- package/dist/node_modules/motion-dom/dist/es/render/dom/is-css-var.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/render/dom/parse-transform.js +0 -65
- package/dist/node_modules/motion-dom/dist/es/render/dom/style-set.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/render/dom/utils/camel-to-dash.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.js +0 -38
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-styles.js +0 -29
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-transform.js +0 -37
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/render.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/scrape-motion-values.js +0 -14
- package/dist/node_modules/motion-dom/dist/es/render/object/ObjectVisualElement.js +0 -37
- package/dist/node_modules/motion-dom/dist/es/render/store.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/render/svg/SVGVisualElement.js +0 -40
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/build-attrs.js +0 -32
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/camel-case-attrs.js +0 -28
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/is-svg-tag.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/path.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/render.js +0 -11
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/scrape-motion-values.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/render/utils/animation-state.js +0 -141
- package/dist/node_modules/motion-dom/dist/es/render/utils/get-variant-context.js +0 -20
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-animation-controls.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-forced-motion-value.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-keyframes-target.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-variant-label.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-position.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-transform.js +0 -23
- package/dist/node_modules/motion-dom/dist/es/render/utils/motion-values.js +0 -25
- package/dist/node_modules/motion-dom/dist/es/render/utils/reduced-motion/index.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/render/utils/reduced-motion/state.js +0 -5
- package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-dynamic-variants.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-variants.js +0 -20
- package/dist/node_modules/motion-dom/dist/es/render/utils/setters.js +0 -21
- package/dist/node_modules/motion-dom/dist/es/render/utils/shallow-compare.js +0 -14
- package/dist/node_modules/motion-dom/dist/es/render/utils/variant-props.js +0 -13
- package/dist/node_modules/motion-dom/dist/es/utils/delay.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/utils/interpolate.js +0 -42
- package/dist/node_modules/motion-dom/dist/es/utils/is-html-element.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-element.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-svg-element.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/utils/mix/color.js +0 -29
- package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.js +0 -51
- package/dist/node_modules/motion-dom/dist/es/utils/mix/immediate.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/utils/mix/index.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/utils/mix/number.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/utils/mix/visibility.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/utils/supports/flags.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/utils/supports/linear-easing.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/utils/supports/memo.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.js +0 -5
- package/dist/node_modules/motion-dom/dist/es/utils/transform.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/value/index.js +0 -218
- package/dist/node_modules/motion-dom/dist/es/value/types/auto.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hex.js +0 -19
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla-to-rgba.js +0 -22
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla.js +0 -12
- package/dist/node_modules/motion-dom/dist/es/value/types/color/index.js +0 -15
- package/dist/node_modules/motion-dom/dist/es/value/types/color/rgba.js +0 -16
- package/dist/node_modules/motion-dom/dist/es/value/types/color/utils.js +0 -18
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/filter.js +0 -24
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.js +0 -49
- package/dist/node_modules/motion-dom/dist/es/value/types/dimensions.js +0 -9
- package/dist/node_modules/motion-dom/dist/es/value/types/int.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/defaults.js +0 -24
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/number.js +0 -70
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/transform.js +0 -31
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/index.js +0 -17
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/units.js +0 -17
- package/dist/node_modules/motion-dom/dist/es/value/types/test.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/animatable-none.js +0 -10
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/color-regex.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/find.js +0 -8
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/float-regex.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/get-as-type.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/is-nullish.js +0 -6
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/sanitize.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/single-color-regex.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/utils/is-motion-value.js +0 -4
- package/dist/node_modules/motion-dom/dist/es/value/utils/resolve-motion-value.js +0 -7
- package/dist/node_modules/motion-dom/dist/es/value/will-change/add-will-change.js +0 -14
- package/dist/node_modules/motion-dom/dist/es/value/will-change/is.js +0 -7
- package/dist/node_modules/motion-utils/dist/es/array.js +0 -20
- package/dist/node_modules/motion-utils/dist/es/clamp.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/easing/anticipate.js +0 -5
- package/dist/node_modules/motion-utils/dist/es/easing/back.js +0 -9
- package/dist/node_modules/motion-utils/dist/es/easing/circ.js +0 -8
- package/dist/node_modules/motion-utils/dist/es/easing/cubic-bezier.js +0 -18
- package/dist/node_modules/motion-utils/dist/es/easing/ease.js +0 -7
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/mirror.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/reverse.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/easing/utils/get-easing-for-segment.js +0 -8
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-bezier-definition.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-easing-array.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/easing/utils/map.js +0 -32
- package/dist/node_modules/motion-utils/dist/es/errors.js +0 -15
- package/dist/node_modules/motion-utils/dist/es/format-error-message.js +0 -6
- package/dist/node_modules/motion-utils/dist/es/global-config.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/is-numerical-string.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/is-object.js +0 -6
- package/dist/node_modules/motion-utils/dist/es/is-zero-value-string.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/memo.js +0 -8
- package/dist/node_modules/motion-utils/dist/es/noop.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/pipe.js +0 -4
- package/dist/node_modules/motion-utils/dist/es/progress.js +0 -7
- package/dist/node_modules/motion-utils/dist/es/subscription-manager.js +0 -29
- package/dist/node_modules/motion-utils/dist/es/time-conversion.js +0 -5
- package/dist/node_modules/motion-utils/dist/es/velocity-per-second.js +0 -6
- package/dist/node_modules/motion-utils/dist/es/warn-once.js +0 -8
- package/dist/node_modules/motion-utils/dist/es/wrap.js +0 -7
- package/dist/node_modules/object-assign/index.js +0 -54
- package/dist/node_modules/orderedmap/dist/index.js +0 -103
- package/dist/node_modules/photoswipe/dist/photoswipe.esm.js +0 -2956
- package/dist/node_modules/prop-types/checkPropTypes.js +0 -54
- package/dist/node_modules/prop-types/factoryWithThrowingShims.js +0 -52
- package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +0 -329
- package/dist/node_modules/prop-types/index.js +0 -17
- package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +0 -10
- package/dist/node_modules/prop-types/lib/has.js +0 -7
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -95
- package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -78
- package/dist/node_modules/prop-types/node_modules/react-is/index.js +0 -10
- package/dist/node_modules/prosemirror-commands/dist/index.js +0 -388
- package/dist/node_modules/prosemirror-dropcursor/dist/index.js +0 -86
- package/dist/node_modules/prosemirror-gapcursor/dist/index.js +0 -204
- package/dist/node_modules/prosemirror-history/dist/index.js +0 -248
- package/dist/node_modules/prosemirror-keymap/dist/index.js +0 -62
- package/dist/node_modules/prosemirror-model/dist/index.js +0 -2733
- package/dist/node_modules/prosemirror-schema-list/dist/index.js +0 -88
- package/dist/node_modules/prosemirror-state/dist/index.js +0 -822
- package/dist/node_modules/prosemirror-transform/dist/index.js +0 -1520
- package/dist/node_modules/prosemirror-view/dist/index.js +0 -3794
- package/dist/node_modules/react-day-picker/dist/esm/DayPicker.js +0 -229
- package/dist/node_modules/react-day-picker/dist/esm/UI.js +0 -22
- package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarDay.js +0 -19
- package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarMonth.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarWeek.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/classes/DateLib.js +0 -222
- package/dist/node_modules/react-day-picker/dist/esm/components/Button.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/CaptionLabel.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Chevron.js +0 -18
- package/dist/node_modules/react-day-picker/dist/esm/components/Day.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/DayButton.js +0 -11
- package/dist/node_modules/react-day-picker/dist/esm/components/Dropdown.js +0 -19
- package/dist/node_modules/react-day-picker/dist/esm/components/DropdownNav.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Footer.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Month.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/MonthCaption.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/MonthGrid.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Months.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/MonthsDropdown.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/components/Nav.js +0 -27
- package/dist/node_modules/react-day-picker/dist/esm/components/NextMonthButton.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/components/Option.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/PreviousMonthButton.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/components/Root.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/Select.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Week.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/WeekNumber.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/components/WeekNumberHeader.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Weekday.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/Weekdays.js +0 -11
- package/dist/node_modules/react-day-picker/dist/esm/components/Weeks.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/components/YearsDropdown.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/components/custom-components.js +0 -54
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatDay.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatMonthDropdown.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumber.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumberHeader.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekdayName.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/formatters/formatYearDropdown.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/formatters/index.js +0 -18
- package/dist/node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js +0 -19
- package/dist/node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.js +0 -42
- package/dist/node_modules/react-day-picker/dist/esm/helpers/endOfBroadcastWeek.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getBroadcastWeeksInMonth.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getClassNamesForModifiers.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getComponents.js +0 -10
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getDataAttributes.js +0 -16
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getDates.js +0 -21
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getDays.js +0 -10
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getDefaultClassNames.js +0 -16
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getDisplayMonths.js +0 -13
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getFocusableDate.js +0 -15
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getFormatters.js +0 -10
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getInitialMonth.js +0 -13
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js +0 -13
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getMonths.js +0 -24
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getNavMonth.js +0 -13
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js +0 -12
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getNextMonth.js +0 -12
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.js +0 -12
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js +0 -13
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js +0 -11
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getWeeks.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js +0 -16
- package/dist/node_modules/react-day-picker/dist/esm/helpers/startOfBroadcastWeek.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/labels/index.js +0 -26
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelDayButton.js +0 -10
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelGrid.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelGridcell.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelMonthDropdown.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelNav.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelNext.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelPrevious.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekNumber.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekNumberHeader.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekday.js +0 -7
- package/dist/node_modules/react-day-picker/dist/esm/labels/labelYearDropdown.js +0 -6
- package/dist/node_modules/react-day-picker/dist/esm/selection/useMulti.js +0 -21
- package/dist/node_modules/react-day-picker/dist/esm/selection/useRange.js +0 -18
- package/dist/node_modules/react-day-picker/dist/esm/selection/useSingle.js +0 -15
- package/dist/node_modules/react-day-picker/dist/esm/useAnimation.js +0 -56
- package/dist/node_modules/react-day-picker/dist/esm/useCalendar.js +0 -44
- package/dist/node_modules/react-day-picker/dist/esm/useDayPicker.js +0 -12
- package/dist/node_modules/react-day-picker/dist/esm/useFocus.js +0 -23
- package/dist/node_modules/react-day-picker/dist/esm/useSelection.js +0 -19
- package/dist/node_modules/react-day-picker/dist/esm/utils/addToRange.js +0 -32
- package/dist/node_modules/react-day-picker/dist/esm/utils/dateMatchModifiers.js +0 -26
- package/dist/node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.js +0 -15
- package/dist/node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.js +0 -28
- package/dist/node_modules/react-day-picker/dist/esm/utils/rangeIncludesDate.js +0 -9
- package/dist/node_modules/react-day-picker/dist/esm/utils/rangeOverlaps.js +0 -8
- package/dist/node_modules/react-day-picker/dist/esm/utils/typeguards.js +0 -26
- package/dist/node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js +0 -3621
- package/dist/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js +0 -1234
- package/dist/node_modules/react-dom/cjs/react-dom-server.browser.development.js +0 -3600
- package/dist/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js +0 -1255
- package/dist/node_modules/react-dom/server.browser.js +0 -15
- package/dist/node_modules/react-imask/esm/hook.js +0 -75
- package/dist/node_modules/react-imask/esm/input.js +0 -23
- package/dist/node_modules/react-imask/esm/mixin.js +0 -131
- package/dist/node_modules/react-photoswipe-gallery/dist/context.js +0 -17
- package/dist/node_modules/react-photoswipe-gallery/dist/gallery.js +0 -216
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/ensure-ref-passed.js +0 -10
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/entry-item-ref-is-element.js +0 -4
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-base-url.js +0 -6
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-hash-value.js +0 -6
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-hash-without-gid-and-pid.js +0 -9
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-initial-active-slide-index.js +0 -6
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-slides-and-index-from-data-source.js +0 -39
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/get-slides-and-index-from-items-refs.js +0 -31
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/hash-includes-navigation-query-params.js +0 -8
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/hash-to-object.js +0 -9
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/item-to-slide.js +0 -37
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/object-to-hash.js +0 -6
- package/dist/node_modules/react-photoswipe-gallery/dist/helpers/sort-nodes.js +0 -6
- package/dist/node_modules/react-photoswipe-gallery/dist/hooks.js +0 -22
- package/dist/node_modules/react-photoswipe-gallery/dist/item.js +0 -54
- package/dist/node_modules/react-photoswipe-gallery/dist/lightbox-stub.js +0 -8
- package/dist/node_modules/react-photoswipe-gallery/dist/no-ref-error.js +0 -14
- package/dist/node_modules/react-photoswipe-gallery/dist/no-source-id-error.js +0 -18
- package/dist/node_modules/react-reconciler/cjs/react-reconciler-constants.development.js +0 -32
- package/dist/node_modules/react-reconciler/cjs/react-reconciler-constants.production.min.js +0 -17
- package/dist/node_modules/react-reconciler/cjs/react-reconciler.development.js +0 -9139
- package/dist/node_modules/react-reconciler/cjs/react-reconciler.production.min.js +0 -3778
- package/dist/node_modules/react-reconciler/constants.js +0 -10
- package/dist/node_modules/react-reconciler/index.js +0 -10
- package/dist/node_modules/react-use-measure/dist/index.js +0 -60
- package/dist/node_modules/rope-sequence/dist/index.js +0 -100
- package/dist/node_modules/scheduler/cjs/scheduler.development.js +0 -277
- package/dist/node_modules/scheduler/cjs/scheduler.production.min.js +0 -213
- package/dist/node_modules/scheduler/index.js +0 -10
- package/dist/node_modules/three/build/three.module.js +0 -20599
- package/dist/node_modules/three-stdlib/_polyfill/LoaderUtils.js +0 -15
- package/dist/node_modules/three-stdlib/_polyfill/constants.js +0 -5
- package/dist/node_modules/three-stdlib/libs/MeshoptDecoder.js +0 -201
- package/dist/node_modules/three-stdlib/loaders/DRACOLoader.js +0 -246
- package/dist/node_modules/three-stdlib/loaders/GLTFLoader.js +0 -1670
- package/dist/node_modules/three-stdlib/utils/BufferGeometryUtils.js +0 -34
- package/dist/node_modules/tippy.js/dist/tippy.esm.js +0 -813
- package/dist/node_modules/w3c-keyname/index.js +0 -93
- package/dist/node_modules/zustand/esm/index.js +0 -61
package/llms-full.md
CHANGED
|
@@ -1,584 +1,584 @@
|
|
|
1
|
-
# Muza UI Library Integration
|
|
2
|
-
|
|
3
|
-
This project uses the `@vkzstudio/muza-ui` component library. Follow these guidelines when working with Muza UI components.
|
|
4
|
-
|
|
5
|
-
## Quick Reference
|
|
6
|
-
|
|
7
|
-
```tsx
|
|
8
|
-
// Import styles (required - should already be in main entry file)
|
|
9
|
-
// Alternative: import '@vkzstudio/muza-ui/dist/muza-ui.css'
|
|
10
|
-
// Import components
|
|
11
|
-
import { Alert, Button, Input, Select } from '@vkzstudio/muza-ui'
|
|
12
|
-
import '@vkzstudio/muza-ui/styles'
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## MuzaUIProvider
|
|
16
|
-
|
|
17
|
-
**Required.** Wrap your app root with `MuzaUIProvider` for the library to work correctly. It bundles every context provider the library depends on so you never have to nest them yourself.
|
|
18
|
-
|
|
19
|
-
```tsx
|
|
20
|
-
import { MuzaUIProvider } from '@vkzstudio/muza-ui'
|
|
21
|
-
|
|
22
|
-
;<MuzaUIProvider
|
|
23
|
-
translationConfig={{ locale: 'en' }} // 'en' | 'cs' | 'sk'
|
|
24
|
-
color="#14645a" // optional white-label brand color
|
|
25
|
-
>
|
|
26
|
-
<App />
|
|
27
|
-
</MuzaUIProvider>
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
**Bundled providers (do NOT add these again inside your app):**
|
|
31
|
-
|
|
32
|
-
- `TranslationProvider` — powers locale + translations for DatePicker, Select, Calendar, etc. Configure via `translationConfig`.
|
|
33
|
-
- `TooltipProvider` — already wraps the tree, so `<Tooltip>` works without its own `<TooltipProvider>`. Configure via `tooltipConfig`.
|
|
34
|
-
- `ToastContainer` — mounted automatically, so `toast()` works anywhere with no extra setup. Configure via `toastConfig`.
|
|
35
|
-
- `ThemeProvider` — applies white-label theming when you pass a `color` hex (sets `--brand-*` CSS variables on `:root`).
|
|
36
|
-
|
|
37
|
-
Components like DatePicker, Select, and Calendar use translated strings automatically. You can override any text via component props.
|
|
38
|
-
|
|
39
|
-
## Component Usage Rules
|
|
40
|
-
|
|
41
|
-
### 1. Always Use Library Components
|
|
42
|
-
|
|
43
|
-
NEVER create new UI components that duplicate Muza UI functionality. Check available components first:
|
|
44
|
-
|
|
45
|
-
**Complete Component List (57 components)**
|
|
46
|
-
|
|
47
|
-
**Form & Input (17)**:
|
|
48
|
-
Button, ButtonArrow, Input, PasswordInput, Textarea, Checkbox, Radio, Switch, Toggle, ToggleCheckButton, ToggleGroup, Select, MultiSelect, Searchbar, FileUpload, TextEditor, Slider
|
|
49
|
-
|
|
50
|
-
**Layout & Structure (7)**:
|
|
51
|
-
Accordion, Card, Flex, Sheet, Typography, Dialog, Skeleton
|
|
52
|
-
|
|
53
|
-
**Data Display (5)**:
|
|
54
|
-
DataTable, ExpandableTable, Reorderable, ReorderableTable, ResponsiveLayoutTable
|
|
55
|
-
|
|
56
|
-
**Feedback & Status (9)**:
|
|
57
|
-
Alert, Chip, Tag, Loader, EmptyState, Toast, PinIndicator, SliderIndicators, Progress
|
|
58
|
-
|
|
59
|
-
**Navigation (9)**:
|
|
60
|
-
Breadcrumb, DropdownMenu, Pagination, SegmentedControl, SegmentedIconControl, Stepper, SwipeButton, EdgeButton, LanguageSwitcher
|
|
61
|
-
|
|
62
|
-
**Media & Display (4)**:
|
|
63
|
-
Avatar, Carousel, Lightbox, Tooltip
|
|
64
|
-
|
|
65
|
-
**Date & Time (3)**:
|
|
66
|
-
Calendar, DatePicker, TimePicker
|
|
67
|
-
|
|
68
|
-
**Specialized (3)**:
|
|
69
|
-
Popover, LoginScreen, Icons
|
|
70
|
-
|
|
71
|
-
### 2. Component Variants
|
|
72
|
-
|
|
73
|
-
Use consistent variants across the app:
|
|
74
|
-
|
|
75
|
-
```tsx
|
|
76
|
-
// Button variants
|
|
77
|
-
variant: "primary" | "secondary" | "tertiary" | "invert" | "dashed" | "link" | "linkInvert"
|
|
78
|
-
size: "xs" | "sm" | "md" | "lg"
|
|
79
|
-
|
|
80
|
-
// Button modifiers (can combine with any variant)
|
|
81
|
-
ghost: boolean // Ghost styling overlay
|
|
82
|
-
danger: boolean // Danger styling overlay
|
|
83
|
-
|
|
84
|
-
// Examples of combinations
|
|
85
|
-
<Button variant="primary" ghost>Ghost Primary</Button>
|
|
86
|
-
<Button variant="secondary" danger>Danger Secondary</Button>
|
|
87
|
-
<Button variant="tertiary" ghost danger>Ghost Danger Tertiary</Button>
|
|
88
|
-
|
|
89
|
-
// Other Button props
|
|
90
|
-
loading, fullWidth, icon, iconPosition
|
|
91
|
-
|
|
92
|
-
// Input states
|
|
93
|
-
<Input error={hasError} disabled={isDisabled} />
|
|
94
|
-
<Input mask="(000) 000-0000" placeholder="Phone" /> // With masking
|
|
95
|
-
|
|
96
|
-
// Alert types (use 'type' not 'variant')
|
|
97
|
-
<Alert type="info" | "success" | "warning" | "error" />
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
### 3. Design Tokens (Spacing)
|
|
101
|
-
|
|
102
|
-
Spacing tokens used by Flex `gap`, `p`, `m` props and throughout the library:
|
|
103
|
-
|
|
104
|
-
| Token | Value | Token | Value |
|
|
105
|
-
| ------ | ----- | ----- | ----- |
|
|
106
|
-
| `none` | 0px | `lg` | 16px |
|
|
107
|
-
| `3xs` | 2px | `xl` | 20px |
|
|
108
|
-
| `2xs` | 4px | `2xl` | 24px |
|
|
109
|
-
| `xs` | 6px | `3xl` | 32px |
|
|
110
|
-
| `sm` | 8px | `4xl` | 40px |
|
|
111
|
-
| `md` | 12px | `5xl` | 48px |
|
|
112
|
-
|
|
113
|
-
```tsx
|
|
114
|
-
// Flex with spacing tokens
|
|
115
|
-
<Flex gap="md" direction="column"> {/* gap = 12px */}
|
|
116
|
-
<Flex gap="lg" p="xl"> {/* gap = 16px, padding = 20px */}
|
|
117
|
-
<Flex gapX="sm" gapY="md"> {/* horizontal gap = 8px, vertical gap = 12px */}
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### 4. Compound Components
|
|
121
|
-
|
|
122
|
-
These components require specific sub-component composition:
|
|
123
|
-
|
|
124
|
-
#### Dialog (38 uses)
|
|
125
|
-
|
|
126
|
-
```tsx
|
|
127
|
-
import {
|
|
128
|
-
Dialog,
|
|
129
|
-
DialogClose,
|
|
130
|
-
DialogContent,
|
|
131
|
-
DialogDescription,
|
|
132
|
-
DialogTitle,
|
|
133
|
-
DialogTrigger,
|
|
134
|
-
} from '@vkzstudio/muza-ui'
|
|
135
|
-
|
|
136
|
-
;<Dialog>
|
|
137
|
-
<DialogTrigger asChild>
|
|
138
|
-
<Button>Open Dialog</Button>
|
|
139
|
-
</DialogTrigger>
|
|
140
|
-
<DialogContent size="medium">
|
|
141
|
-
<DialogTitle>Dialog Title</DialogTitle>
|
|
142
|
-
<DialogDescription>Optional description text.</DialogDescription>
|
|
143
|
-
{/* Content here */}
|
|
144
|
-
<DialogClose asChild>
|
|
145
|
-
<Button variant="secondary">Cancel</Button>
|
|
146
|
-
</DialogClose>
|
|
147
|
-
</DialogContent>
|
|
148
|
-
</Dialog>
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
Sub-components: `Dialog`, `DialogTrigger`, `DialogContent`, `DialogHeader`, `DialogFooter`, `DialogTitle`, `DialogDescription`, `DialogClose`, `DialogOverlay`, `DialogPortal`
|
|
152
|
-
|
|
153
|
-
#### DropdownMenu (19 uses)
|
|
154
|
-
|
|
155
|
-
```tsx
|
|
156
|
-
import {
|
|
157
|
-
DropdownMenu,
|
|
158
|
-
DropdownMenuContent,
|
|
159
|
-
DropdownMenuItem,
|
|
160
|
-
DropdownMenuSeparator,
|
|
161
|
-
DropdownMenuTrigger,
|
|
162
|
-
} from '@vkzstudio/muza-ui'
|
|
163
|
-
|
|
164
|
-
;<DropdownMenu>
|
|
165
|
-
<DropdownMenuTrigger asChild>
|
|
166
|
-
<Button>Menu</Button>
|
|
167
|
-
</DropdownMenuTrigger>
|
|
168
|
-
<DropdownMenuContent>
|
|
169
|
-
<DropdownMenuItem>Edit</DropdownMenuItem>
|
|
170
|
-
<DropdownMenuItem>Duplicate</DropdownMenuItem>
|
|
171
|
-
<DropdownMenuSeparator />
|
|
172
|
-
<DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
|
|
173
|
-
</DropdownMenuContent>
|
|
174
|
-
</DropdownMenu>
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
Sub-components: `DropdownMenu`, `DropdownMenuTrigger`, `DropdownMenuPortal`, `DropdownMenuContent`, `DropdownMenuItem`, `DropdownMenuCheckboxItem`, `DropdownMenuRadioGroup`, `DropdownMenuRadioItem`, `DropdownMenuSeparator`, `DropdownMenuButtonItem`
|
|
178
|
-
|
|
179
|
-
#### Accordion
|
|
180
|
-
|
|
181
|
-
```tsx
|
|
182
|
-
import {
|
|
183
|
-
Accordion,
|
|
184
|
-
AccordionContent,
|
|
185
|
-
AccordionHeader,
|
|
186
|
-
AccordionItem,
|
|
187
|
-
} from '@vkzstudio/muza-ui'
|
|
188
|
-
|
|
189
|
-
;<Accordion type="single" collapsible>
|
|
190
|
-
<AccordionItem value="item-1">
|
|
191
|
-
<AccordionHeader>Section 1</AccordionHeader>
|
|
192
|
-
<AccordionContent>Content for section 1</AccordionContent>
|
|
193
|
-
</AccordionItem>
|
|
194
|
-
</Accordion>
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
#### Tooltip
|
|
198
|
-
|
|
199
|
-
`TooltipProvider` is already supplied by `MuzaUIProvider` — do not wrap it again.
|
|
200
|
-
|
|
201
|
-
```tsx
|
|
202
|
-
import { Tooltip, TooltipContent, TooltipTrigger } from '@vkzstudio/muza-ui'
|
|
203
|
-
|
|
204
|
-
;<Tooltip>
|
|
205
|
-
<TooltipTrigger asChild>
|
|
206
|
-
<Button>Hover me</Button>
|
|
207
|
-
</TooltipTrigger>
|
|
208
|
-
<TooltipContent>Tooltip text</TooltipContent>
|
|
209
|
-
</Tooltip>
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
#### Popover
|
|
213
|
-
|
|
214
|
-
```tsx
|
|
215
|
-
import { Popover, PopoverContent, PopoverTrigger } from '@vkzstudio/muza-ui'
|
|
216
|
-
|
|
217
|
-
;<Popover>
|
|
218
|
-
<PopoverTrigger asChild>
|
|
219
|
-
<Button>Open</Button>
|
|
220
|
-
</PopoverTrigger>
|
|
221
|
-
<PopoverContent>Popover content</PopoverContent>
|
|
222
|
-
</Popover>
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
### 5. Complex Component APIs
|
|
226
|
-
|
|
227
|
-
#### DatePicker
|
|
228
|
-
|
|
229
|
-
DatePicker uses `mode` to determine value/onChange types:
|
|
230
|
-
|
|
231
|
-
```tsx
|
|
232
|
-
import { DatePicker } from '@vkzstudio/muza-ui'
|
|
233
|
-
import type { DateRange } from 'react-day-picker'
|
|
234
|
-
|
|
235
|
-
// Single date mode
|
|
236
|
-
const [date, setDate] = useState<Date | undefined>()
|
|
237
|
-
<DatePicker mode="single" value={date} onChange={setDate} />
|
|
238
|
-
|
|
239
|
-
// Date range mode
|
|
240
|
-
const [dateRange, setDateRange] = useState<DateRange | undefined>()
|
|
241
|
-
<DatePicker mode="range" value={dateRange} onChange={setDateRange} />
|
|
242
|
-
|
|
243
|
-
// With presets (range mode only)
|
|
244
|
-
<DatePicker
|
|
245
|
-
mode="range"
|
|
246
|
-
value={dateRange}
|
|
247
|
-
onChange={setDateRange}
|
|
248
|
-
allowedPresets={[
|
|
249
|
-
{ name: 'Last 7 days', type: 'Last 7 days' },
|
|
250
|
-
{ name: 'This month', type: 'This month' },
|
|
251
|
-
{ name: 'Last 30 days', type: 'Last 30 days' },
|
|
252
|
-
]}
|
|
253
|
-
/>
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
#### Select
|
|
257
|
-
|
|
258
|
-
```tsx
|
|
259
|
-
import { Select } from '@vkzstudio/muza-ui'
|
|
260
|
-
|
|
261
|
-
;<Select
|
|
262
|
-
label="Country"
|
|
263
|
-
options={[
|
|
264
|
-
{ value: 'cz', label: 'Czech Republic' },
|
|
265
|
-
{ value: 'sk', label: 'Slovakia' },
|
|
266
|
-
{ value: 'de', label: 'Germany', disabled: true },
|
|
267
|
-
{ value: 'at', label: 'Austria', icon: <FlagIcon /> },
|
|
268
|
-
]}
|
|
269
|
-
value={selectedCountry}
|
|
270
|
-
onChange={setSelectedCountry}
|
|
271
|
-
placeholder="Select a country"
|
|
272
|
-
error={!!errors.country}
|
|
273
|
-
hint={errors.country?.message}
|
|
274
|
-
/>
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
#### toast() (imperative API)
|
|
278
|
-
|
|
279
|
-
Toast uses an imperative function, not a declarative component:
|
|
280
|
-
|
|
281
|
-
```tsx
|
|
282
|
-
import { toast } from '@vkzstudio/muza-ui'
|
|
283
|
-
|
|
284
|
-
// Usage anywhere in your app
|
|
285
|
-
toast({ variant: 'success', text: 'Saved successfully!' })
|
|
286
|
-
toast({ variant: 'error', text: 'Failed to save', closable: true })
|
|
287
|
-
toast({ variant: 'warning', text: 'Unsaved changes', autoDismiss: 5000 })
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
**Note:** `MuzaUIProvider` already mounts `ToastContainer` — do not add it again. Use `toastConfig` on the provider to customize position/duration. If you are NOT using `MuzaUIProvider` (not recommended), add `<ToastContainer position="top-right" />` to your app root manually.
|
|
291
|
-
|
|
292
|
-
#### FileUpload
|
|
293
|
-
|
|
294
|
-
```tsx
|
|
295
|
-
import { FileUpload } from '@vkzstudio/muza-ui'
|
|
296
|
-
|
|
297
|
-
;<FileUpload
|
|
298
|
-
onDrop={(acceptedFiles) => handleFiles(acceptedFiles)}
|
|
299
|
-
accept="image/*"
|
|
300
|
-
maxSize={5 * 1024 * 1024} // 5MB
|
|
301
|
-
maxFiles={3}
|
|
302
|
-
error={!!errors.files}
|
|
303
|
-
disabled={isSubmitting}
|
|
304
|
-
/>
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
#### Skeleton
|
|
308
|
-
|
|
309
|
-
```tsx
|
|
310
|
-
import { Skeleton } from '@vkzstudio/muza-ui'
|
|
311
|
-
|
|
312
|
-
// Basic skeleton
|
|
313
|
-
<Skeleton className="h-12 w-full" />
|
|
314
|
-
<Skeleton className="h-4 w-3/4" />
|
|
315
|
-
|
|
316
|
-
// Use color="light" on white backgrounds
|
|
317
|
-
<Skeleton className="h-8 w-32" color="light" />
|
|
318
|
-
|
|
319
|
-
// ExpandableTable skeleton (static property)
|
|
320
|
-
<Skeleton.ExpandableTable rows={5} />
|
|
321
|
-
```
|
|
322
|
-
|
|
323
|
-
**Skeleton Loading Pattern:** Attach skeletons as static properties on your components:
|
|
324
|
-
|
|
325
|
-
```tsx
|
|
326
|
-
const MyComponent = ({ data }: Props) => {
|
|
327
|
-
return <div>{/* component content */}</div>
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
const MyComponentSkeleton = () => {
|
|
331
|
-
return (
|
|
332
|
-
<Flex gap="md">
|
|
333
|
-
<Skeleton className="h-12 w-12 rounded-full" />
|
|
334
|
-
<Skeleton className="h-4 w-3/4" />
|
|
335
|
-
</Flex>
|
|
336
|
-
)
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
MyComponent.Skeleton = MyComponentSkeleton
|
|
340
|
-
export { MyComponent }
|
|
341
|
-
|
|
342
|
-
// Usage
|
|
343
|
-
{
|
|
344
|
-
isLoading ? <MyComponent.Skeleton /> : <MyComponent data={data} />
|
|
345
|
-
}
|
|
346
|
-
```
|
|
347
|
-
|
|
348
|
-
Update skeletons when changing component layout structure, dimensions, or spacing.
|
|
349
|
-
|
|
350
|
-
### 6. react-hook-form Integration
|
|
351
|
-
|
|
352
|
-
Most form components integrate with react-hook-form:
|
|
353
|
-
|
|
354
|
-
```tsx
|
|
355
|
-
import { useForm, Controller } from 'react-hook-form'
|
|
356
|
-
import { Input, Select, DatePicker, Checkbox } from '@vkzstudio/muza-ui'
|
|
357
|
-
|
|
358
|
-
const { register, control, formState: { errors } } = useForm()
|
|
359
|
-
|
|
360
|
-
// Input - works with register directly
|
|
361
|
-
<Input
|
|
362
|
-
{...register('email', { required: 'Email is required' })}
|
|
363
|
-
label="Email"
|
|
364
|
-
error={!!errors.email}
|
|
365
|
-
hint={errors.email?.message as string}
|
|
366
|
-
/>
|
|
367
|
-
|
|
368
|
-
// Select - use Controller
|
|
369
|
-
<Controller
|
|
370
|
-
name="country"
|
|
371
|
-
control={control}
|
|
372
|
-
rules={{ required: 'Country is required' }}
|
|
373
|
-
render={({ field }) => (
|
|
374
|
-
<Select
|
|
375
|
-
label="Country"
|
|
376
|
-
options={countries}
|
|
377
|
-
value={field.value}
|
|
378
|
-
onChange={field.onChange}
|
|
379
|
-
error={!!errors.country}
|
|
380
|
-
hint={errors.country?.message as string}
|
|
381
|
-
/>
|
|
382
|
-
)}
|
|
383
|
-
/>
|
|
384
|
-
|
|
385
|
-
// DatePicker - use Controller
|
|
386
|
-
<Controller
|
|
387
|
-
name="startDate"
|
|
388
|
-
control={control}
|
|
389
|
-
render={({ field }) => (
|
|
390
|
-
<DatePicker
|
|
391
|
-
mode="single"
|
|
392
|
-
label="Start Date"
|
|
393
|
-
value={field.value}
|
|
394
|
-
onChange={field.onChange}
|
|
395
|
-
error={!!errors.startDate}
|
|
396
|
-
/>
|
|
397
|
-
)}
|
|
398
|
-
/>
|
|
399
|
-
|
|
400
|
-
// Checkbox - use Controller for controlled state
|
|
401
|
-
<Controller
|
|
402
|
-
name="terms"
|
|
403
|
-
control={control}
|
|
404
|
-
rules={{ required: 'You must accept the terms' }}
|
|
405
|
-
render={({ field }) => (
|
|
406
|
-
<Checkbox
|
|
407
|
-
checked={field.value}
|
|
408
|
-
onCheckedChange={field.onChange}
|
|
409
|
-
label="I accept the terms"
|
|
410
|
-
/>
|
|
411
|
-
)}
|
|
412
|
-
/>
|
|
413
|
-
```
|
|
414
|
-
|
|
415
|
-
### 7. Styling Guidelines
|
|
416
|
-
|
|
417
|
-
- **DO NOT** recreate Muza UI components with custom CSS
|
|
418
|
-
- **DO** use the `className` prop to add utility classes when needed
|
|
419
|
-
- **DO** use design tokens for custom components that extend Muza UI
|
|
420
|
-
|
|
421
|
-
```tsx
|
|
422
|
-
// Good - extending with utilities
|
|
423
|
-
<Button className="w-full mt-4" variant="primary">
|
|
424
|
-
Submit
|
|
425
|
-
</Button>
|
|
426
|
-
|
|
427
|
-
// Bad - recreating component styles
|
|
428
|
-
<button className="bg-purple-500 hover:bg-purple-600 px-4 py-2 rounded">
|
|
429
|
-
Submit
|
|
430
|
-
</button>
|
|
431
|
-
```
|
|
432
|
-
|
|
433
|
-
### 8. Form Patterns
|
|
434
|
-
|
|
435
|
-
Always use Muza UI form components:
|
|
436
|
-
|
|
437
|
-
```tsx
|
|
438
|
-
// Good - using library components
|
|
439
|
-
import { Input, Button, Checkbox, Radio } from '@vkzstudio/muza-ui'
|
|
440
|
-
|
|
441
|
-
function Form() {
|
|
442
|
-
return (
|
|
443
|
-
<form>
|
|
444
|
-
<Input name="email" type="email" required />
|
|
445
|
-
<Checkbox id="terms" label="I agree to terms" />
|
|
446
|
-
<Radio value="option1" label="Option 1" />
|
|
447
|
-
<Button type="submit" variant="primary">
|
|
448
|
-
Submit
|
|
449
|
-
</Button>
|
|
450
|
-
</form>
|
|
451
|
-
)
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
// Bad - using native HTML elements
|
|
455
|
-
function Form() {
|
|
456
|
-
return (
|
|
457
|
-
<form>
|
|
458
|
-
<input type="email" />
|
|
459
|
-
<input type="checkbox" />
|
|
460
|
-
<button>Submit</button>
|
|
461
|
-
</form>
|
|
462
|
-
)
|
|
463
|
-
}
|
|
464
|
-
```
|
|
465
|
-
|
|
466
|
-
### 9. Icons
|
|
467
|
-
|
|
468
|
-
Import icons from Muza UI's Icons component (re-exports from `@solar-icons/react-perf`):
|
|
469
|
-
|
|
470
|
-
```tsx
|
|
471
|
-
import { Button, SearchOutline, TrashBinOutline } from '@vkzstudio/muza-ui'
|
|
472
|
-
|
|
473
|
-
<Button icon={<SearchOutline />} iconPosition="start">
|
|
474
|
-
Search
|
|
475
|
-
</Button>
|
|
476
|
-
|
|
477
|
-
<Button icon={<TrashBinOutline />} danger>
|
|
478
|
-
Delete
|
|
479
|
-
</Button>
|
|
480
|
-
```
|
|
481
|
-
|
|
482
|
-
The library also includes custom icons not in Solar Icons (e.g., `XClose`, `ChevronDown`). Check `Icons/CustomIcons` for the full list.
|
|
483
|
-
|
|
484
|
-
### 10. Accessibility
|
|
485
|
-
|
|
486
|
-
All Muza UI components include proper ARIA attributes. Maintain accessibility when extending:
|
|
487
|
-
|
|
488
|
-
```tsx
|
|
489
|
-
<Button aria-label="Save document" aria-busy={isLoading} disabled={isLoading}>
|
|
490
|
-
{isLoading ? 'Saving...' : 'Save'}
|
|
491
|
-
</Button>
|
|
492
|
-
```
|
|
493
|
-
|
|
494
|
-
## TypeScript Integration
|
|
495
|
-
|
|
496
|
-
The library is fully typed. Use the exported types:
|
|
497
|
-
|
|
498
|
-
```tsx
|
|
499
|
-
import type { ButtonProps, ISelectProps, InputProps } from '@vkzstudio/muza-ui'
|
|
500
|
-
|
|
501
|
-
interface CustomButtonProps extends ButtonProps {
|
|
502
|
-
customProp?: boolean
|
|
503
|
-
}
|
|
504
|
-
```
|
|
505
|
-
|
|
506
|
-
## Performance Guidelines
|
|
507
|
-
|
|
508
|
-
1. **Import only needed components** - Tree shaking is supported
|
|
509
|
-
2. **Use lazy loading for large components** like Calendar or DatePicker
|
|
510
|
-
3. **Memoize complex forms** when using many Muza UI inputs
|
|
511
|
-
|
|
512
|
-
## DO NOT
|
|
513
|
-
|
|
514
|
-
- Create custom Button, Input, or other basic components
|
|
515
|
-
- Use native HTML form elements when Muza UI equivalents exist
|
|
516
|
-
- Override core component styles with !important
|
|
517
|
-
- Mix different UI libraries (Material-UI, Ant Design, etc.) with Muza UI
|
|
518
|
-
- Create custom toast/notification systems
|
|
519
|
-
- Use `<Alert variant="error">` - use `<Alert type="error">` instead
|
|
520
|
-
|
|
521
|
-
## DO
|
|
522
|
-
|
|
523
|
-
- Use Muza UI components consistently throughout the app
|
|
524
|
-
- Extend components with className for spacing/layout
|
|
525
|
-
- Follow the established variant patterns
|
|
526
|
-
- Maintain accessibility standards
|
|
527
|
-
- Use Controller from react-hook-form for Select, DatePicker, Checkbox
|
|
528
|
-
- Report any missing components or features needed
|
|
529
|
-
|
|
530
|
-
## Package Exports
|
|
531
|
-
|
|
532
|
-
The library supports multiple export paths for flexibility:
|
|
533
|
-
|
|
534
|
-
```tsx
|
|
535
|
-
// Main components export
|
|
536
|
-
import { Button, Input } from '@vkzstudio/muza-ui'
|
|
537
|
-
|
|
538
|
-
// Styles
|
|
539
|
-
import '@vkzstudio/muza-ui/styles'
|
|
540
|
-
|
|
541
|
-
// Individual component exports (tree-shaking friendly)
|
|
542
|
-
import { Button } from '@vkzstudio/muza-ui/components/Button'
|
|
543
|
-
|
|
544
|
-
// Utilities
|
|
545
|
-
import { cn } from '@vkzstudio/muza-ui/utils'
|
|
546
|
-
|
|
547
|
-
// Global styles
|
|
548
|
-
import '@vkzstudio/muza-ui/globals.css'
|
|
549
|
-
|
|
550
|
-
// Third-party library styles (required for components like Lightbox)
|
|
551
|
-
import '@vkzstudio/muza-ui/3rd-parties.css'
|
|
552
|
-
|
|
553
|
-
// 3D Models (for LoginScreen)
|
|
554
|
-
import modelPath from '@vkzstudio/muza-ui/models/Login3D.glb'
|
|
555
|
-
|
|
556
|
-
// Individual style tokens (granular imports)
|
|
557
|
-
import '@vkzstudio/muza-ui/styles/token-colors.css'
|
|
558
|
-
import '@vkzstudio/muza-ui/styles/typography.css'
|
|
559
|
-
```
|
|
560
|
-
|
|
561
|
-
## Troubleshooting
|
|
562
|
-
|
|
563
|
-
If a component isn't rendering:
|
|
564
|
-
|
|
565
|
-
1. Check that `@vkzstudio/muza-ui/styles` is imported in your entry file
|
|
566
|
-
2. Verify React 18+ is installed
|
|
567
|
-
3. Ensure all required peer dependencies are installed (see package.json)
|
|
568
|
-
4. Verify the component is properly imported
|
|
569
|
-
5. Check browser console for errors
|
|
570
|
-
6. Ensure Tailwind CSS is properly configured if using custom utilities
|
|
571
|
-
|
|
572
|
-
**For LoginScreen 3D issues:**
|
|
573
|
-
|
|
574
|
-
- Ensure the GLB file is copied to `public/models/Login3D.glb`
|
|
575
|
-
- Check that `@react-three/fiber`, `@react-three/drei`, and `three` are installed
|
|
576
|
-
- The 3D scene only renders on desktop (screen width > 1024px)
|
|
577
|
-
|
|
578
|
-
**For Lightbox image gallery issues:**
|
|
579
|
-
|
|
580
|
-
- **REQUIRED:** Import third-party styles: `import '@vkzstudio/muza-ui/3rd-parties.css'` in your entry file
|
|
581
|
-
- Check that `photoswipe` and `react-photoswipe-gallery` peer dependencies are installed
|
|
582
|
-
- Ensure images have proper `width` and `height` props for the lightbox to display correctly
|
|
583
|
-
|
|
584
|
-
Remember: The goal is consistency. Use Muza UI components as designed to maintain a unified design system across the application.
|
|
1
|
+
# Muza UI Library Integration
|
|
2
|
+
|
|
3
|
+
This project uses the `@vkzstudio/muza-ui` component library. Follow these guidelines when working with Muza UI components.
|
|
4
|
+
|
|
5
|
+
## Quick Reference
|
|
6
|
+
|
|
7
|
+
```tsx
|
|
8
|
+
// Import styles (required - should already be in main entry file)
|
|
9
|
+
// Alternative: import '@vkzstudio/muza-ui/dist/muza-ui.css'
|
|
10
|
+
// Import components
|
|
11
|
+
import { Alert, Button, Input, Select } from '@vkzstudio/muza-ui'
|
|
12
|
+
import '@vkzstudio/muza-ui/styles'
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## MuzaUIProvider
|
|
16
|
+
|
|
17
|
+
**Required.** Wrap your app root with `MuzaUIProvider` for the library to work correctly. It bundles every context provider the library depends on so you never have to nest them yourself.
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
import { MuzaUIProvider } from '@vkzstudio/muza-ui'
|
|
21
|
+
|
|
22
|
+
;<MuzaUIProvider
|
|
23
|
+
translationConfig={{ locale: 'en' }} // 'en' | 'cs' | 'sk'
|
|
24
|
+
color="#14645a" // optional white-label brand color
|
|
25
|
+
>
|
|
26
|
+
<App />
|
|
27
|
+
</MuzaUIProvider>
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**Bundled providers (do NOT add these again inside your app):**
|
|
31
|
+
|
|
32
|
+
- `TranslationProvider` — powers locale + translations for DatePicker, Select, Calendar, etc. Configure via `translationConfig`.
|
|
33
|
+
- `TooltipProvider` — already wraps the tree, so `<Tooltip>` works without its own `<TooltipProvider>`. Configure via `tooltipConfig`.
|
|
34
|
+
- `ToastContainer` — mounted automatically, so `toast()` works anywhere with no extra setup. Configure via `toastConfig`.
|
|
35
|
+
- `ThemeProvider` — applies white-label theming when you pass a `color` hex (sets `--brand-*` CSS variables on `:root`).
|
|
36
|
+
|
|
37
|
+
Components like DatePicker, Select, and Calendar use translated strings automatically. You can override any text via component props.
|
|
38
|
+
|
|
39
|
+
## Component Usage Rules
|
|
40
|
+
|
|
41
|
+
### 1. Always Use Library Components
|
|
42
|
+
|
|
43
|
+
NEVER create new UI components that duplicate Muza UI functionality. Check available components first:
|
|
44
|
+
|
|
45
|
+
**Complete Component List (57 components)**
|
|
46
|
+
|
|
47
|
+
**Form & Input (17)**:
|
|
48
|
+
Button, ButtonArrow, Input, PasswordInput, Textarea, Checkbox, Radio, Switch, Toggle, ToggleCheckButton, ToggleGroup, Select, MultiSelect, Searchbar, FileUpload, TextEditor, Slider
|
|
49
|
+
|
|
50
|
+
**Layout & Structure (7)**:
|
|
51
|
+
Accordion, Card, Flex, Sheet, Typography, Dialog, Skeleton
|
|
52
|
+
|
|
53
|
+
**Data Display (5)**:
|
|
54
|
+
DataTable, ExpandableTable, Reorderable, ReorderableTable, ResponsiveLayoutTable
|
|
55
|
+
|
|
56
|
+
**Feedback & Status (9)**:
|
|
57
|
+
Alert, Chip, Tag, Loader, EmptyState, Toast, PinIndicator, SliderIndicators, Progress
|
|
58
|
+
|
|
59
|
+
**Navigation (9)**:
|
|
60
|
+
Breadcrumb, DropdownMenu, Pagination, SegmentedControl, SegmentedIconControl, Stepper, SwipeButton, EdgeButton, LanguageSwitcher
|
|
61
|
+
|
|
62
|
+
**Media & Display (4)**:
|
|
63
|
+
Avatar, Carousel, Lightbox, Tooltip
|
|
64
|
+
|
|
65
|
+
**Date & Time (3)**:
|
|
66
|
+
Calendar, DatePicker, TimePicker
|
|
67
|
+
|
|
68
|
+
**Specialized (3)**:
|
|
69
|
+
Popover, LoginScreen, Icons
|
|
70
|
+
|
|
71
|
+
### 2. Component Variants
|
|
72
|
+
|
|
73
|
+
Use consistent variants across the app:
|
|
74
|
+
|
|
75
|
+
```tsx
|
|
76
|
+
// Button variants
|
|
77
|
+
variant: "primary" | "secondary" | "tertiary" | "invert" | "dashed" | "link" | "linkInvert"
|
|
78
|
+
size: "xs" | "sm" | "md" | "lg"
|
|
79
|
+
|
|
80
|
+
// Button modifiers (can combine with any variant)
|
|
81
|
+
ghost: boolean // Ghost styling overlay
|
|
82
|
+
danger: boolean // Danger styling overlay
|
|
83
|
+
|
|
84
|
+
// Examples of combinations
|
|
85
|
+
<Button variant="primary" ghost>Ghost Primary</Button>
|
|
86
|
+
<Button variant="secondary" danger>Danger Secondary</Button>
|
|
87
|
+
<Button variant="tertiary" ghost danger>Ghost Danger Tertiary</Button>
|
|
88
|
+
|
|
89
|
+
// Other Button props
|
|
90
|
+
loading, fullWidth, icon, iconPosition
|
|
91
|
+
|
|
92
|
+
// Input states
|
|
93
|
+
<Input error={hasError} disabled={isDisabled} />
|
|
94
|
+
<Input mask="(000) 000-0000" placeholder="Phone" /> // With masking
|
|
95
|
+
|
|
96
|
+
// Alert types (use 'type' not 'variant')
|
|
97
|
+
<Alert type="info" | "success" | "warning" | "error" />
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### 3. Design Tokens (Spacing)
|
|
101
|
+
|
|
102
|
+
Spacing tokens used by Flex `gap`, `p`, `m` props and throughout the library:
|
|
103
|
+
|
|
104
|
+
| Token | Value | Token | Value |
|
|
105
|
+
| ------ | ----- | ----- | ----- |
|
|
106
|
+
| `none` | 0px | `lg` | 16px |
|
|
107
|
+
| `3xs` | 2px | `xl` | 20px |
|
|
108
|
+
| `2xs` | 4px | `2xl` | 24px |
|
|
109
|
+
| `xs` | 6px | `3xl` | 32px |
|
|
110
|
+
| `sm` | 8px | `4xl` | 40px |
|
|
111
|
+
| `md` | 12px | `5xl` | 48px |
|
|
112
|
+
|
|
113
|
+
```tsx
|
|
114
|
+
// Flex with spacing tokens
|
|
115
|
+
<Flex gap="md" direction="column"> {/* gap = 12px */}
|
|
116
|
+
<Flex gap="lg" p="xl"> {/* gap = 16px, padding = 20px */}
|
|
117
|
+
<Flex gapX="sm" gapY="md"> {/* horizontal gap = 8px, vertical gap = 12px */}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### 4. Compound Components
|
|
121
|
+
|
|
122
|
+
These components require specific sub-component composition:
|
|
123
|
+
|
|
124
|
+
#### Dialog (38 uses)
|
|
125
|
+
|
|
126
|
+
```tsx
|
|
127
|
+
import {
|
|
128
|
+
Dialog,
|
|
129
|
+
DialogClose,
|
|
130
|
+
DialogContent,
|
|
131
|
+
DialogDescription,
|
|
132
|
+
DialogTitle,
|
|
133
|
+
DialogTrigger,
|
|
134
|
+
} from '@vkzstudio/muza-ui'
|
|
135
|
+
|
|
136
|
+
;<Dialog>
|
|
137
|
+
<DialogTrigger asChild>
|
|
138
|
+
<Button>Open Dialog</Button>
|
|
139
|
+
</DialogTrigger>
|
|
140
|
+
<DialogContent size="medium">
|
|
141
|
+
<DialogTitle>Dialog Title</DialogTitle>
|
|
142
|
+
<DialogDescription>Optional description text.</DialogDescription>
|
|
143
|
+
{/* Content here */}
|
|
144
|
+
<DialogClose asChild>
|
|
145
|
+
<Button variant="secondary">Cancel</Button>
|
|
146
|
+
</DialogClose>
|
|
147
|
+
</DialogContent>
|
|
148
|
+
</Dialog>
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Sub-components: `Dialog`, `DialogTrigger`, `DialogContent`, `DialogHeader`, `DialogFooter`, `DialogTitle`, `DialogDescription`, `DialogClose`, `DialogOverlay`, `DialogPortal`
|
|
152
|
+
|
|
153
|
+
#### DropdownMenu (19 uses)
|
|
154
|
+
|
|
155
|
+
```tsx
|
|
156
|
+
import {
|
|
157
|
+
DropdownMenu,
|
|
158
|
+
DropdownMenuContent,
|
|
159
|
+
DropdownMenuItem,
|
|
160
|
+
DropdownMenuSeparator,
|
|
161
|
+
DropdownMenuTrigger,
|
|
162
|
+
} from '@vkzstudio/muza-ui'
|
|
163
|
+
|
|
164
|
+
;<DropdownMenu>
|
|
165
|
+
<DropdownMenuTrigger asChild>
|
|
166
|
+
<Button>Menu</Button>
|
|
167
|
+
</DropdownMenuTrigger>
|
|
168
|
+
<DropdownMenuContent>
|
|
169
|
+
<DropdownMenuItem>Edit</DropdownMenuItem>
|
|
170
|
+
<DropdownMenuItem>Duplicate</DropdownMenuItem>
|
|
171
|
+
<DropdownMenuSeparator />
|
|
172
|
+
<DropdownMenuItem variant="destructive">Delete</DropdownMenuItem>
|
|
173
|
+
</DropdownMenuContent>
|
|
174
|
+
</DropdownMenu>
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
Sub-components: `DropdownMenu`, `DropdownMenuTrigger`, `DropdownMenuPortal`, `DropdownMenuContent`, `DropdownMenuItem`, `DropdownMenuCheckboxItem`, `DropdownMenuRadioGroup`, `DropdownMenuRadioItem`, `DropdownMenuSeparator`, `DropdownMenuButtonItem`
|
|
178
|
+
|
|
179
|
+
#### Accordion
|
|
180
|
+
|
|
181
|
+
```tsx
|
|
182
|
+
import {
|
|
183
|
+
Accordion,
|
|
184
|
+
AccordionContent,
|
|
185
|
+
AccordionHeader,
|
|
186
|
+
AccordionItem,
|
|
187
|
+
} from '@vkzstudio/muza-ui'
|
|
188
|
+
|
|
189
|
+
;<Accordion type="single" collapsible>
|
|
190
|
+
<AccordionItem value="item-1">
|
|
191
|
+
<AccordionHeader>Section 1</AccordionHeader>
|
|
192
|
+
<AccordionContent>Content for section 1</AccordionContent>
|
|
193
|
+
</AccordionItem>
|
|
194
|
+
</Accordion>
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
#### Tooltip
|
|
198
|
+
|
|
199
|
+
`TooltipProvider` is already supplied by `MuzaUIProvider` — do not wrap it again.
|
|
200
|
+
|
|
201
|
+
```tsx
|
|
202
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from '@vkzstudio/muza-ui'
|
|
203
|
+
|
|
204
|
+
;<Tooltip>
|
|
205
|
+
<TooltipTrigger asChild>
|
|
206
|
+
<Button>Hover me</Button>
|
|
207
|
+
</TooltipTrigger>
|
|
208
|
+
<TooltipContent>Tooltip text</TooltipContent>
|
|
209
|
+
</Tooltip>
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
#### Popover
|
|
213
|
+
|
|
214
|
+
```tsx
|
|
215
|
+
import { Popover, PopoverContent, PopoverTrigger } from '@vkzstudio/muza-ui'
|
|
216
|
+
|
|
217
|
+
;<Popover>
|
|
218
|
+
<PopoverTrigger asChild>
|
|
219
|
+
<Button>Open</Button>
|
|
220
|
+
</PopoverTrigger>
|
|
221
|
+
<PopoverContent>Popover content</PopoverContent>
|
|
222
|
+
</Popover>
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### 5. Complex Component APIs
|
|
226
|
+
|
|
227
|
+
#### DatePicker
|
|
228
|
+
|
|
229
|
+
DatePicker uses `mode` to determine value/onChange types:
|
|
230
|
+
|
|
231
|
+
```tsx
|
|
232
|
+
import { DatePicker } from '@vkzstudio/muza-ui'
|
|
233
|
+
import type { DateRange } from 'react-day-picker'
|
|
234
|
+
|
|
235
|
+
// Single date mode
|
|
236
|
+
const [date, setDate] = useState<Date | undefined>()
|
|
237
|
+
<DatePicker mode="single" value={date} onChange={setDate} />
|
|
238
|
+
|
|
239
|
+
// Date range mode
|
|
240
|
+
const [dateRange, setDateRange] = useState<DateRange | undefined>()
|
|
241
|
+
<DatePicker mode="range" value={dateRange} onChange={setDateRange} />
|
|
242
|
+
|
|
243
|
+
// With presets (range mode only)
|
|
244
|
+
<DatePicker
|
|
245
|
+
mode="range"
|
|
246
|
+
value={dateRange}
|
|
247
|
+
onChange={setDateRange}
|
|
248
|
+
allowedPresets={[
|
|
249
|
+
{ name: 'Last 7 days', type: 'Last 7 days' },
|
|
250
|
+
{ name: 'This month', type: 'This month' },
|
|
251
|
+
{ name: 'Last 30 days', type: 'Last 30 days' },
|
|
252
|
+
]}
|
|
253
|
+
/>
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
#### Select
|
|
257
|
+
|
|
258
|
+
```tsx
|
|
259
|
+
import { Select } from '@vkzstudio/muza-ui'
|
|
260
|
+
|
|
261
|
+
;<Select
|
|
262
|
+
label="Country"
|
|
263
|
+
options={[
|
|
264
|
+
{ value: 'cz', label: 'Czech Republic' },
|
|
265
|
+
{ value: 'sk', label: 'Slovakia' },
|
|
266
|
+
{ value: 'de', label: 'Germany', disabled: true },
|
|
267
|
+
{ value: 'at', label: 'Austria', icon: <FlagIcon /> },
|
|
268
|
+
]}
|
|
269
|
+
value={selectedCountry}
|
|
270
|
+
onChange={setSelectedCountry}
|
|
271
|
+
placeholder="Select a country"
|
|
272
|
+
error={!!errors.country}
|
|
273
|
+
hint={errors.country?.message}
|
|
274
|
+
/>
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
#### toast() (imperative API)
|
|
278
|
+
|
|
279
|
+
Toast uses an imperative function, not a declarative component:
|
|
280
|
+
|
|
281
|
+
```tsx
|
|
282
|
+
import { toast } from '@vkzstudio/muza-ui'
|
|
283
|
+
|
|
284
|
+
// Usage anywhere in your app
|
|
285
|
+
toast({ variant: 'success', text: 'Saved successfully!' })
|
|
286
|
+
toast({ variant: 'error', text: 'Failed to save', closable: true })
|
|
287
|
+
toast({ variant: 'warning', text: 'Unsaved changes', autoDismiss: 5000 })
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
**Note:** `MuzaUIProvider` already mounts `ToastContainer` — do not add it again. Use `toastConfig` on the provider to customize position/duration. If you are NOT using `MuzaUIProvider` (not recommended), add `<ToastContainer position="top-right" />` to your app root manually.
|
|
291
|
+
|
|
292
|
+
#### FileUpload
|
|
293
|
+
|
|
294
|
+
```tsx
|
|
295
|
+
import { FileUpload } from '@vkzstudio/muza-ui'
|
|
296
|
+
|
|
297
|
+
;<FileUpload
|
|
298
|
+
onDrop={(acceptedFiles) => handleFiles(acceptedFiles)}
|
|
299
|
+
accept="image/*"
|
|
300
|
+
maxSize={5 * 1024 * 1024} // 5MB
|
|
301
|
+
maxFiles={3}
|
|
302
|
+
error={!!errors.files}
|
|
303
|
+
disabled={isSubmitting}
|
|
304
|
+
/>
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
#### Skeleton
|
|
308
|
+
|
|
309
|
+
```tsx
|
|
310
|
+
import { Skeleton } from '@vkzstudio/muza-ui'
|
|
311
|
+
|
|
312
|
+
// Basic skeleton
|
|
313
|
+
<Skeleton className="h-12 w-full" />
|
|
314
|
+
<Skeleton className="h-4 w-3/4" />
|
|
315
|
+
|
|
316
|
+
// Use color="light" on white backgrounds
|
|
317
|
+
<Skeleton className="h-8 w-32" color="light" />
|
|
318
|
+
|
|
319
|
+
// ExpandableTable skeleton (static property)
|
|
320
|
+
<Skeleton.ExpandableTable rows={5} />
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
**Skeleton Loading Pattern:** Attach skeletons as static properties on your components:
|
|
324
|
+
|
|
325
|
+
```tsx
|
|
326
|
+
const MyComponent = ({ data }: Props) => {
|
|
327
|
+
return <div>{/* component content */}</div>
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
const MyComponentSkeleton = () => {
|
|
331
|
+
return (
|
|
332
|
+
<Flex gap="md">
|
|
333
|
+
<Skeleton className="h-12 w-12 rounded-full" />
|
|
334
|
+
<Skeleton className="h-4 w-3/4" />
|
|
335
|
+
</Flex>
|
|
336
|
+
)
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
MyComponent.Skeleton = MyComponentSkeleton
|
|
340
|
+
export { MyComponent }
|
|
341
|
+
|
|
342
|
+
// Usage
|
|
343
|
+
{
|
|
344
|
+
isLoading ? <MyComponent.Skeleton /> : <MyComponent data={data} />
|
|
345
|
+
}
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
Update skeletons when changing component layout structure, dimensions, or spacing.
|
|
349
|
+
|
|
350
|
+
### 6. react-hook-form Integration
|
|
351
|
+
|
|
352
|
+
Most form components integrate with react-hook-form:
|
|
353
|
+
|
|
354
|
+
```tsx
|
|
355
|
+
import { useForm, Controller } from 'react-hook-form'
|
|
356
|
+
import { Input, Select, DatePicker, Checkbox } from '@vkzstudio/muza-ui'
|
|
357
|
+
|
|
358
|
+
const { register, control, formState: { errors } } = useForm()
|
|
359
|
+
|
|
360
|
+
// Input - works with register directly
|
|
361
|
+
<Input
|
|
362
|
+
{...register('email', { required: 'Email is required' })}
|
|
363
|
+
label="Email"
|
|
364
|
+
error={!!errors.email}
|
|
365
|
+
hint={errors.email?.message as string}
|
|
366
|
+
/>
|
|
367
|
+
|
|
368
|
+
// Select - use Controller
|
|
369
|
+
<Controller
|
|
370
|
+
name="country"
|
|
371
|
+
control={control}
|
|
372
|
+
rules={{ required: 'Country is required' }}
|
|
373
|
+
render={({ field }) => (
|
|
374
|
+
<Select
|
|
375
|
+
label="Country"
|
|
376
|
+
options={countries}
|
|
377
|
+
value={field.value}
|
|
378
|
+
onChange={field.onChange}
|
|
379
|
+
error={!!errors.country}
|
|
380
|
+
hint={errors.country?.message as string}
|
|
381
|
+
/>
|
|
382
|
+
)}
|
|
383
|
+
/>
|
|
384
|
+
|
|
385
|
+
// DatePicker - use Controller
|
|
386
|
+
<Controller
|
|
387
|
+
name="startDate"
|
|
388
|
+
control={control}
|
|
389
|
+
render={({ field }) => (
|
|
390
|
+
<DatePicker
|
|
391
|
+
mode="single"
|
|
392
|
+
label="Start Date"
|
|
393
|
+
value={field.value}
|
|
394
|
+
onChange={field.onChange}
|
|
395
|
+
error={!!errors.startDate}
|
|
396
|
+
/>
|
|
397
|
+
)}
|
|
398
|
+
/>
|
|
399
|
+
|
|
400
|
+
// Checkbox - use Controller for controlled state
|
|
401
|
+
<Controller
|
|
402
|
+
name="terms"
|
|
403
|
+
control={control}
|
|
404
|
+
rules={{ required: 'You must accept the terms' }}
|
|
405
|
+
render={({ field }) => (
|
|
406
|
+
<Checkbox
|
|
407
|
+
checked={field.value}
|
|
408
|
+
onCheckedChange={field.onChange}
|
|
409
|
+
label="I accept the terms"
|
|
410
|
+
/>
|
|
411
|
+
)}
|
|
412
|
+
/>
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
### 7. Styling Guidelines
|
|
416
|
+
|
|
417
|
+
- **DO NOT** recreate Muza UI components with custom CSS
|
|
418
|
+
- **DO** use the `className` prop to add utility classes when needed
|
|
419
|
+
- **DO** use design tokens for custom components that extend Muza UI
|
|
420
|
+
|
|
421
|
+
```tsx
|
|
422
|
+
// Good - extending with utilities
|
|
423
|
+
<Button className="w-full mt-4" variant="primary">
|
|
424
|
+
Submit
|
|
425
|
+
</Button>
|
|
426
|
+
|
|
427
|
+
// Bad - recreating component styles
|
|
428
|
+
<button className="bg-purple-500 hover:bg-purple-600 px-4 py-2 rounded">
|
|
429
|
+
Submit
|
|
430
|
+
</button>
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
### 8. Form Patterns
|
|
434
|
+
|
|
435
|
+
Always use Muza UI form components:
|
|
436
|
+
|
|
437
|
+
```tsx
|
|
438
|
+
// Good - using library components
|
|
439
|
+
import { Input, Button, Checkbox, Radio } from '@vkzstudio/muza-ui'
|
|
440
|
+
|
|
441
|
+
function Form() {
|
|
442
|
+
return (
|
|
443
|
+
<form>
|
|
444
|
+
<Input name="email" type="email" required />
|
|
445
|
+
<Checkbox id="terms" label="I agree to terms" />
|
|
446
|
+
<Radio value="option1" label="Option 1" />
|
|
447
|
+
<Button type="submit" variant="primary">
|
|
448
|
+
Submit
|
|
449
|
+
</Button>
|
|
450
|
+
</form>
|
|
451
|
+
)
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
// Bad - using native HTML elements
|
|
455
|
+
function Form() {
|
|
456
|
+
return (
|
|
457
|
+
<form>
|
|
458
|
+
<input type="email" />
|
|
459
|
+
<input type="checkbox" />
|
|
460
|
+
<button>Submit</button>
|
|
461
|
+
</form>
|
|
462
|
+
)
|
|
463
|
+
}
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
### 9. Icons
|
|
467
|
+
|
|
468
|
+
Import icons from Muza UI's Icons component (re-exports from `@solar-icons/react-perf`):
|
|
469
|
+
|
|
470
|
+
```tsx
|
|
471
|
+
import { Button, SearchOutline, TrashBinOutline } from '@vkzstudio/muza-ui'
|
|
472
|
+
|
|
473
|
+
<Button icon={<SearchOutline />} iconPosition="start">
|
|
474
|
+
Search
|
|
475
|
+
</Button>
|
|
476
|
+
|
|
477
|
+
<Button icon={<TrashBinOutline />} danger>
|
|
478
|
+
Delete
|
|
479
|
+
</Button>
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
The library also includes custom icons not in Solar Icons (e.g., `XClose`, `ChevronDown`). Check `Icons/CustomIcons` for the full list.
|
|
483
|
+
|
|
484
|
+
### 10. Accessibility
|
|
485
|
+
|
|
486
|
+
All Muza UI components include proper ARIA attributes. Maintain accessibility when extending:
|
|
487
|
+
|
|
488
|
+
```tsx
|
|
489
|
+
<Button aria-label="Save document" aria-busy={isLoading} disabled={isLoading}>
|
|
490
|
+
{isLoading ? 'Saving...' : 'Save'}
|
|
491
|
+
</Button>
|
|
492
|
+
```
|
|
493
|
+
|
|
494
|
+
## TypeScript Integration
|
|
495
|
+
|
|
496
|
+
The library is fully typed. Use the exported types:
|
|
497
|
+
|
|
498
|
+
```tsx
|
|
499
|
+
import type { ButtonProps, ISelectProps, InputProps } from '@vkzstudio/muza-ui'
|
|
500
|
+
|
|
501
|
+
interface CustomButtonProps extends ButtonProps {
|
|
502
|
+
customProp?: boolean
|
|
503
|
+
}
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
## Performance Guidelines
|
|
507
|
+
|
|
508
|
+
1. **Import only needed components** - Tree shaking is supported
|
|
509
|
+
2. **Use lazy loading for large components** like Calendar or DatePicker
|
|
510
|
+
3. **Memoize complex forms** when using many Muza UI inputs
|
|
511
|
+
|
|
512
|
+
## DO NOT
|
|
513
|
+
|
|
514
|
+
- Create custom Button, Input, or other basic components
|
|
515
|
+
- Use native HTML form elements when Muza UI equivalents exist
|
|
516
|
+
- Override core component styles with !important
|
|
517
|
+
- Mix different UI libraries (Material-UI, Ant Design, etc.) with Muza UI
|
|
518
|
+
- Create custom toast/notification systems
|
|
519
|
+
- Use `<Alert variant="error">` - use `<Alert type="error">` instead
|
|
520
|
+
|
|
521
|
+
## DO
|
|
522
|
+
|
|
523
|
+
- Use Muza UI components consistently throughout the app
|
|
524
|
+
- Extend components with className for spacing/layout
|
|
525
|
+
- Follow the established variant patterns
|
|
526
|
+
- Maintain accessibility standards
|
|
527
|
+
- Use Controller from react-hook-form for Select, DatePicker, Checkbox
|
|
528
|
+
- Report any missing components or features needed
|
|
529
|
+
|
|
530
|
+
## Package Exports
|
|
531
|
+
|
|
532
|
+
The library supports multiple export paths for flexibility:
|
|
533
|
+
|
|
534
|
+
```tsx
|
|
535
|
+
// Main components export
|
|
536
|
+
import { Button, Input } from '@vkzstudio/muza-ui'
|
|
537
|
+
|
|
538
|
+
// Styles
|
|
539
|
+
import '@vkzstudio/muza-ui/styles'
|
|
540
|
+
|
|
541
|
+
// Individual component exports (tree-shaking friendly)
|
|
542
|
+
import { Button } from '@vkzstudio/muza-ui/components/Button'
|
|
543
|
+
|
|
544
|
+
// Utilities
|
|
545
|
+
import { cn } from '@vkzstudio/muza-ui/utils'
|
|
546
|
+
|
|
547
|
+
// Global styles
|
|
548
|
+
import '@vkzstudio/muza-ui/globals.css'
|
|
549
|
+
|
|
550
|
+
// Third-party library styles (required for components like Lightbox)
|
|
551
|
+
import '@vkzstudio/muza-ui/3rd-parties.css'
|
|
552
|
+
|
|
553
|
+
// 3D Models (for LoginScreen)
|
|
554
|
+
import modelPath from '@vkzstudio/muza-ui/models/Login3D.glb'
|
|
555
|
+
|
|
556
|
+
// Individual style tokens (granular imports)
|
|
557
|
+
import '@vkzstudio/muza-ui/styles/token-colors.css'
|
|
558
|
+
import '@vkzstudio/muza-ui/styles/typography.css'
|
|
559
|
+
```
|
|
560
|
+
|
|
561
|
+
## Troubleshooting
|
|
562
|
+
|
|
563
|
+
If a component isn't rendering:
|
|
564
|
+
|
|
565
|
+
1. Check that `@vkzstudio/muza-ui/styles` is imported in your entry file
|
|
566
|
+
2. Verify React 18+ is installed
|
|
567
|
+
3. Ensure all required peer dependencies are installed (see package.json)
|
|
568
|
+
4. Verify the component is properly imported
|
|
569
|
+
5. Check browser console for errors
|
|
570
|
+
6. Ensure Tailwind CSS is properly configured if using custom utilities
|
|
571
|
+
|
|
572
|
+
**For LoginScreen 3D issues:**
|
|
573
|
+
|
|
574
|
+
- Ensure the GLB file is copied to `public/models/Login3D.glb`
|
|
575
|
+
- Check that `@react-three/fiber`, `@react-three/drei`, and `three` are installed
|
|
576
|
+
- The 3D scene only renders on desktop (screen width > 1024px)
|
|
577
|
+
|
|
578
|
+
**For Lightbox image gallery issues:**
|
|
579
|
+
|
|
580
|
+
- **REQUIRED:** Import third-party styles: `import '@vkzstudio/muza-ui/3rd-parties.css'` in your entry file
|
|
581
|
+
- Check that `photoswipe` and `react-photoswipe-gallery` peer dependencies are installed
|
|
582
|
+
- Ensure images have proper `width` and `height` props for the lightbox to display correctly
|
|
583
|
+
|
|
584
|
+
Remember: The goal is consistency. Use Muza UI components as designed to maintain a unified design system across the application.
|