@mieweb/ui 0.3.0-dev.73 → 0.3.0-dev.74

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.
Files changed (135) hide show
  1. package/dist/ag-grid.cjs +31 -21
  2. package/dist/ag-grid.cjs.map +1 -1
  3. package/dist/ag-grid.js +31 -21
  4. package/dist/ag-grid.js.map +1 -1
  5. package/dist/brands/bluehive.css +5 -5
  6. package/dist/brands/mieweb.css +5 -5
  7. package/dist/brands/ozwell.css +5 -5
  8. package/dist/brands/webchart.css +5 -5
  9. package/dist/{chunk-N2YMRZ7P.cjs → chunk-2EPJ5SMX.cjs} +5 -5
  10. package/dist/{chunk-N2YMRZ7P.cjs.map → chunk-2EPJ5SMX.cjs.map} +1 -1
  11. package/dist/{chunk-QDGZBDBI.cjs → chunk-2LF7PSSX.cjs} +3 -3
  12. package/dist/{chunk-QDGZBDBI.cjs.map → chunk-2LF7PSSX.cjs.map} +1 -1
  13. package/dist/{chunk-O43QBXRX.js → chunk-43GBCUSQ.js} +3 -3
  14. package/dist/{chunk-O43QBXRX.js.map → chunk-43GBCUSQ.js.map} +1 -1
  15. package/dist/{chunk-MOULJE34.js → chunk-4DMZAVB2.js} +6 -6
  16. package/dist/chunk-4DMZAVB2.js.map +1 -0
  17. package/dist/{chunk-OJ64Q3A5.js → chunk-5PUEQH2L.js} +3 -3
  18. package/dist/{chunk-OJ64Q3A5.js.map → chunk-5PUEQH2L.js.map} +1 -1
  19. package/dist/{chunk-VKTQQOUH.js → chunk-5U7IIMKH.js} +4 -4
  20. package/dist/{chunk-VKTQQOUH.js.map → chunk-5U7IIMKH.js.map} +1 -1
  21. package/dist/{chunk-TSZRR2ZK.cjs → chunk-67QT2WYS.cjs} +3 -3
  22. package/dist/{chunk-TSZRR2ZK.cjs.map → chunk-67QT2WYS.cjs.map} +1 -1
  23. package/dist/{chunk-LXHPW2ZF.cjs → chunk-7BARESXI.cjs} +3 -3
  24. package/dist/{chunk-LXHPW2ZF.cjs.map → chunk-7BARESXI.cjs.map} +1 -1
  25. package/dist/{chunk-BBQZNIB4.js → chunk-AL6ASCL6.js} +9 -9
  26. package/dist/{chunk-BBQZNIB4.js.map → chunk-AL6ASCL6.js.map} +1 -1
  27. package/dist/{chunk-AUXHRAID.cjs → chunk-CHMMHFOW.cjs} +9 -9
  28. package/dist/{chunk-AUXHRAID.cjs.map → chunk-CHMMHFOW.cjs.map} +1 -1
  29. package/dist/{chunk-JDI45GEY.js → chunk-CWDQ7OPJ.js} +3 -3
  30. package/dist/{chunk-JDI45GEY.js.map → chunk-CWDQ7OPJ.js.map} +1 -1
  31. package/dist/{chunk-Z4HZ35KX.cjs → chunk-DEZ7XSTG.cjs} +3 -3
  32. package/dist/{chunk-Z4HZ35KX.cjs.map → chunk-DEZ7XSTG.cjs.map} +1 -1
  33. package/dist/{chunk-GPBQCGKA.cjs → chunk-DT4CHRTJ.cjs} +382 -380
  34. package/dist/chunk-DT4CHRTJ.cjs.map +1 -0
  35. package/dist/{chunk-QMQE4PDD.cjs → chunk-E3GBBYAO.cjs} +6 -6
  36. package/dist/{chunk-QMQE4PDD.cjs.map → chunk-E3GBBYAO.cjs.map} +1 -1
  37. package/dist/{chunk-IMNLYVXJ.cjs → chunk-EUUQVDXX.cjs} +6 -6
  38. package/dist/{chunk-IMNLYVXJ.cjs.map → chunk-EUUQVDXX.cjs.map} +1 -1
  39. package/dist/{chunk-TF5OZDFU.js → chunk-FMGX2AM2.js} +6 -6
  40. package/dist/{chunk-TF5OZDFU.js.map → chunk-FMGX2AM2.js.map} +1 -1
  41. package/dist/{chunk-5NSURWMM.js → chunk-FYEK4RZ3.js} +4 -4
  42. package/dist/{chunk-5NSURWMM.js.map → chunk-FYEK4RZ3.js.map} +1 -1
  43. package/dist/{chunk-DLLVXNAQ.js → chunk-G7P5X2F4.js} +5 -5
  44. package/dist/{chunk-DLLVXNAQ.js.map → chunk-G7P5X2F4.js.map} +1 -1
  45. package/dist/{chunk-QEAIFTUL.cjs → chunk-HT3SXDFF.cjs} +5 -5
  46. package/dist/{chunk-QEAIFTUL.cjs.map → chunk-HT3SXDFF.cjs.map} +1 -1
  47. package/dist/{chunk-DCDXOT3A.js → chunk-IEVAVY43.js} +3 -3
  48. package/dist/{chunk-DCDXOT3A.js.map → chunk-IEVAVY43.js.map} +1 -1
  49. package/dist/{chunk-EMMQPDOY.cjs → chunk-KLLGX5O3.cjs} +4 -4
  50. package/dist/{chunk-EMMQPDOY.cjs.map → chunk-KLLGX5O3.cjs.map} +1 -1
  51. package/dist/{chunk-ND75VHB7.cjs → chunk-MIGLLTTD.cjs} +4 -4
  52. package/dist/{chunk-ND75VHB7.cjs.map → chunk-MIGLLTTD.cjs.map} +1 -1
  53. package/dist/{chunk-3DM6LMZG.js → chunk-MUYTGWGE.js} +4 -3
  54. package/dist/chunk-MUYTGWGE.js.map +1 -0
  55. package/dist/{chunk-VQW36LLX.cjs → chunk-NVHAQOHH.cjs} +3 -3
  56. package/dist/{chunk-VQW36LLX.cjs.map → chunk-NVHAQOHH.cjs.map} +1 -1
  57. package/dist/{chunk-4ASPCSWT.js → chunk-PU6ZC4GI.js} +3 -3
  58. package/dist/{chunk-4ASPCSWT.js.map → chunk-PU6ZC4GI.js.map} +1 -1
  59. package/dist/{chunk-JE4AH2TZ.cjs → chunk-Q2EWNXIB.cjs} +6 -6
  60. package/dist/chunk-Q2EWNXIB.cjs.map +1 -0
  61. package/dist/{chunk-PLIK3DN6.cjs → chunk-QASIWBXU.cjs} +4 -3
  62. package/dist/chunk-QASIWBXU.cjs.map +1 -0
  63. package/dist/{chunk-V2O636JO.js → chunk-QBFNONJD.js} +5 -5
  64. package/dist/{chunk-V2O636JO.js.map → chunk-QBFNONJD.js.map} +1 -1
  65. package/dist/{chunk-YR365F2H.cjs → chunk-QG7CJH4O.cjs} +3 -3
  66. package/dist/{chunk-YR365F2H.cjs.map → chunk-QG7CJH4O.cjs.map} +1 -1
  67. package/dist/{chunk-ZGSPFVGL.cjs → chunk-QNTUYH6G.cjs} +4 -4
  68. package/dist/{chunk-ZGSPFVGL.cjs.map → chunk-QNTUYH6G.cjs.map} +1 -1
  69. package/dist/{chunk-YN3ZIUYC.js → chunk-TRZXK57D.js} +6 -6
  70. package/dist/{chunk-YN3ZIUYC.js.map → chunk-TRZXK57D.js.map} +1 -1
  71. package/dist/{chunk-NDHW3ZRF.js → chunk-VCO2IZOG.js} +3 -3
  72. package/dist/{chunk-NDHW3ZRF.js.map → chunk-VCO2IZOG.js.map} +1 -1
  73. package/dist/{chunk-7XWPUWSL.js → chunk-WFS6R2F5.js} +3 -3
  74. package/dist/{chunk-7XWPUWSL.js.map → chunk-WFS6R2F5.js.map} +1 -1
  75. package/dist/{chunk-JCHVLSXS.js → chunk-WORZLEUZ.js} +382 -380
  76. package/dist/chunk-WORZLEUZ.js.map +1 -0
  77. package/dist/{chunk-RCMF6KZA.js → chunk-YTZPVEIO.js} +3 -3
  78. package/dist/{chunk-RCMF6KZA.js.map → chunk-YTZPVEIO.js.map} +1 -1
  79. package/dist/{chunk-6EN6ZIW3.js → chunk-YY23MK3V.js} +4 -4
  80. package/dist/{chunk-6EN6ZIW3.js.map → chunk-YY23MK3V.js.map} +1 -1
  81. package/dist/{chunk-QXJMKJJV.cjs → chunk-ZKFVGYBK.cjs} +3 -3
  82. package/dist/{chunk-QXJMKJJV.cjs.map → chunk-ZKFVGYBK.cjs.map} +1 -1
  83. package/dist/{chunk-Z2ABQA5Z.cjs → chunk-ZRI6OXQD.cjs} +3 -3
  84. package/dist/{chunk-Z2ABQA5Z.cjs.map → chunk-ZRI6OXQD.cjs.map} +1 -1
  85. package/dist/components/AudioPlayer/index.cjs +6 -6
  86. package/dist/components/AudioPlayer/index.js +1 -1
  87. package/dist/components/AudioRecorder/index.cjs +6 -6
  88. package/dist/components/AudioRecorder/index.js +1 -1
  89. package/dist/components/Card/index.cjs +15 -15
  90. package/dist/components/Card/index.js +1 -1
  91. package/dist/components/Checkbox/index.cjs +4 -4
  92. package/dist/components/Checkbox/index.js +1 -1
  93. package/dist/components/CountryCodeDropdown/index.cjs +4 -4
  94. package/dist/components/CountryCodeDropdown/index.js +1 -1
  95. package/dist/components/DateInput/index.cjs +2 -2
  96. package/dist/components/DateInput/index.js +1 -1
  97. package/dist/components/Dropdown/index.cjs +7 -7
  98. package/dist/components/Dropdown/index.js +1 -1
  99. package/dist/components/Pagination/index.cjs +4 -4
  100. package/dist/components/Pagination/index.js +1 -1
  101. package/dist/components/PhoneInput/index.cjs +3 -3
  102. package/dist/components/PhoneInput/index.js +1 -1
  103. package/dist/components/Progress/index.cjs +6 -6
  104. package/dist/components/Progress/index.js +1 -1
  105. package/dist/components/QuickAction/index.cjs +6 -6
  106. package/dist/components/QuickAction/index.js +1 -1
  107. package/dist/components/Radio/index.cjs +4 -4
  108. package/dist/components/Radio/index.js +1 -1
  109. package/dist/components/SchedulePicker/index.cjs +10 -10
  110. package/dist/components/SchedulePicker/index.js +1 -1
  111. package/dist/components/Select/index.cjs +3 -3
  112. package/dist/components/Select/index.js +1 -1
  113. package/dist/components/Slider/index.cjs +5 -5
  114. package/dist/components/Slider/index.js +1 -1
  115. package/dist/components/Spinner/index.cjs +5 -5
  116. package/dist/components/Spinner/index.js +1 -1
  117. package/dist/components/Switch/index.cjs +4 -4
  118. package/dist/components/Switch/index.js +1 -1
  119. package/dist/components/Tabs/index.cjs +7 -7
  120. package/dist/components/Tabs/index.js +1 -1
  121. package/dist/components/Text/index.cjs +4 -4
  122. package/dist/components/Text/index.js +1 -1
  123. package/dist/index.cjs +737 -766
  124. package/dist/index.cjs.map +1 -1
  125. package/dist/index.js +453 -482
  126. package/dist/index.js.map +1 -1
  127. package/dist/styles/init.css +24 -11
  128. package/dist/styles.css +1 -1
  129. package/package.json +1 -1
  130. package/dist/chunk-3DM6LMZG.js.map +0 -1
  131. package/dist/chunk-GPBQCGKA.cjs.map +0 -1
  132. package/dist/chunk-JCHVLSXS.js.map +0 -1
  133. package/dist/chunk-JE4AH2TZ.cjs.map +0 -1
  134. package/dist/chunk-MOULJE34.js.map +0 -1
  135. package/dist/chunk-PLIK3DN6.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/Spinner/Spinner.tsx"],"names":["cva","jsx","cn","jsxs"],"mappings":"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","file":"chunk-Z4HZ35KX.cjs","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\n\nconst spinnerVariants = cva(\n ['animate-spin rounded-full border-2 border-current border-t-transparent'],\n {\n variants: {\n size: {\n xs: 'h-3 w-3',\n sm: 'h-4 w-4',\n md: 'h-6 w-6',\n lg: 'h-8 w-8',\n xl: 'h-12 w-12',\n },\n variant: {\n default: 'text-primary-500',\n muted: 'text-muted-foreground',\n white: 'text-white',\n },\n },\n defaultVariants: {\n size: 'md',\n variant: 'default',\n },\n }\n);\n\nexport interface SpinnerProps\n extends\n React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof spinnerVariants> {\n /** Accessible label for the spinner */\n label?: string;\n}\n\n/**\n * A loading spinner component.\n *\n * @example\n * ```tsx\n * <Spinner />\n * <Spinner size=\"lg\" label=\"Loading data...\" />\n * <Spinner variant=\"white\" /> // For use on dark backgrounds\n * ```\n */\nfunction Spinner({\n className,\n size,\n variant,\n label = 'Loading',\n ...props\n}: SpinnerProps) {\n return (\n <div\n data-slot=\"spinner\"\n role=\"status\"\n aria-label={label}\n className={cn(spinnerVariants({ size, variant }), className)}\n {...props}\n >\n <span className=\"sr-only\">{label}</span>\n </div>\n );\n}\n\nSpinner.displayName = 'Spinner';\n\n// ============================================================================\n// Spinner with Label\n// ============================================================================\n\nexport interface SpinnerWithLabelProps extends SpinnerProps {\n /** Label text to display */\n label: string;\n /** Position of the label */\n labelPosition?: 'top' | 'bottom' | 'left' | 'right';\n}\n\n/**\n * A spinner with a visible label.\n *\n * @example\n * ```tsx\n * <SpinnerWithLabel label=\"Loading...\" />\n * <SpinnerWithLabel label=\"Processing\" labelPosition=\"right\" />\n * ```\n */\nfunction SpinnerWithLabel({\n label,\n labelPosition = 'bottom',\n size,\n variant,\n className,\n ...props\n}: SpinnerWithLabelProps) {\n const positionClasses = {\n top: 'flex-col-reverse',\n bottom: 'flex-col',\n left: 'flex-row-reverse',\n right: 'flex-row',\n };\n\n return (\n <div\n data-slot=\"spinner-with-label\"\n role=\"status\"\n aria-label={label}\n className={cn(\n 'inline-flex items-center justify-center gap-2',\n positionClasses[labelPosition],\n className\n )}\n {...props}\n >\n <div\n data-slot=\"spinner\"\n className={cn(spinnerVariants({ size, variant }))}\n aria-hidden=\"true\"\n />\n <span data-slot=\"spinner-label\" className=\"text-muted-foreground text-sm\">\n {label}\n </span>\n </div>\n );\n}\n\nSpinnerWithLabel.displayName = 'SpinnerWithLabel';\n\n// ============================================================================\n// Full Page Spinner\n// ============================================================================\n\nexport interface FullPageSpinnerProps extends SpinnerProps {\n /** Whether to show a backdrop */\n backdrop?: boolean;\n /** Text to display below the spinner */\n text?: string;\n}\n\n/**\n * A full-page loading spinner with optional backdrop.\n *\n * @example\n * ```tsx\n * <FullPageSpinner />\n * <FullPageSpinner backdrop text=\"Loading your data...\" />\n * ```\n */\nfunction FullPageSpinner({\n backdrop = true,\n text,\n size = 'xl',\n ...props\n}: FullPageSpinnerProps) {\n return (\n <div\n data-slot=\"full-page-spinner\"\n className={cn(\n 'fixed inset-0 z-50 flex flex-col items-center justify-center gap-4',\n backdrop && 'bg-background/80 backdrop-blur-sm'\n )}\n >\n <Spinner size={size} {...props} />\n {text && (\n <p data-slot=\"spinner-label\" className=\"text-muted-foreground text-sm\">\n {text}\n </p>\n )}\n </div>\n );\n}\n\nFullPageSpinner.displayName = 'FullPageSpinner';\n\nexport { Spinner, SpinnerWithLabel, FullPageSpinner, spinnerVariants };\n"]}
1
+ {"version":3,"sources":["../src/components/Spinner/Spinner.tsx"],"names":["cva","jsx","cn","jsxs"],"mappings":"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","file":"chunk-DEZ7XSTG.cjs","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\n\nconst spinnerVariants = cva(\n ['animate-spin rounded-full border-2 border-current border-t-transparent'],\n {\n variants: {\n size: {\n xs: 'h-3 w-3',\n sm: 'h-4 w-4',\n md: 'h-6 w-6',\n lg: 'h-8 w-8',\n xl: 'h-12 w-12',\n },\n variant: {\n default: 'text-primary-800',\n muted: 'text-muted-foreground',\n white: 'text-white',\n },\n },\n defaultVariants: {\n size: 'md',\n variant: 'default',\n },\n }\n);\n\nexport interface SpinnerProps\n extends\n React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof spinnerVariants> {\n /** Accessible label for the spinner */\n label?: string;\n}\n\n/**\n * A loading spinner component.\n *\n * @example\n * ```tsx\n * <Spinner />\n * <Spinner size=\"lg\" label=\"Loading data...\" />\n * <Spinner variant=\"white\" /> // For use on dark backgrounds\n * ```\n */\nfunction Spinner({\n className,\n size,\n variant,\n label = 'Loading',\n ...props\n}: SpinnerProps) {\n return (\n <div\n data-slot=\"spinner\"\n role=\"status\"\n aria-label={label}\n className={cn(spinnerVariants({ size, variant }), className)}\n {...props}\n >\n <span className=\"sr-only\">{label}</span>\n </div>\n );\n}\n\nSpinner.displayName = 'Spinner';\n\n// ============================================================================\n// Spinner with Label\n// ============================================================================\n\nexport interface SpinnerWithLabelProps extends SpinnerProps {\n /** Label text to display */\n label: string;\n /** Position of the label */\n labelPosition?: 'top' | 'bottom' | 'left' | 'right';\n}\n\n/**\n * A spinner with a visible label.\n *\n * @example\n * ```tsx\n * <SpinnerWithLabel label=\"Loading...\" />\n * <SpinnerWithLabel label=\"Processing\" labelPosition=\"right\" />\n * ```\n */\nfunction SpinnerWithLabel({\n label,\n labelPosition = 'bottom',\n size,\n variant,\n className,\n ...props\n}: SpinnerWithLabelProps) {\n const positionClasses = {\n top: 'flex-col-reverse',\n bottom: 'flex-col',\n left: 'flex-row-reverse',\n right: 'flex-row',\n };\n\n return (\n <div\n data-slot=\"spinner-with-label\"\n role=\"status\"\n aria-label={label}\n className={cn(\n 'inline-flex items-center justify-center gap-2',\n positionClasses[labelPosition],\n className\n )}\n {...props}\n >\n <div\n data-slot=\"spinner\"\n className={cn(spinnerVariants({ size, variant }))}\n aria-hidden=\"true\"\n />\n <span data-slot=\"spinner-label\" className=\"text-muted-foreground text-sm\">\n {label}\n </span>\n </div>\n );\n}\n\nSpinnerWithLabel.displayName = 'SpinnerWithLabel';\n\n// ============================================================================\n// Full Page Spinner\n// ============================================================================\n\nexport interface FullPageSpinnerProps extends SpinnerProps {\n /** Whether to show a backdrop */\n backdrop?: boolean;\n /** Text to display below the spinner */\n text?: string;\n}\n\n/**\n * A full-page loading spinner with optional backdrop.\n *\n * @example\n * ```tsx\n * <FullPageSpinner />\n * <FullPageSpinner backdrop text=\"Loading your data...\" />\n * ```\n */\nfunction FullPageSpinner({\n backdrop = true,\n text,\n size = 'xl',\n ...props\n}: FullPageSpinnerProps) {\n return (\n <div\n data-slot=\"full-page-spinner\"\n className={cn(\n 'fixed inset-0 z-50 flex flex-col items-center justify-center gap-4',\n backdrop && 'bg-background/80 backdrop-blur-sm'\n )}\n >\n <Spinner size={size} {...props} />\n {text && (\n <p data-slot=\"spinner-label\" className=\"text-muted-foreground text-sm\">\n {text}\n </p>\n )}\n </div>\n );\n}\n\nFullPageSpinner.displayName = 'FullPageSpinner';\n\nexport { Spinner, SpinnerWithLabel, FullPageSpinner, spinnerVariants };\n"]}