Spaces:
Build error
Build error
| "use client"; | |
| // src/progress.tsx | |
| import * as React from "react"; | |
| import { createContextScope } from "@radix-ui/react-context"; | |
| import { Primitive } from "@radix-ui/react-primitive"; | |
| import { jsx } from "react/jsx-runtime"; | |
| var PROGRESS_NAME = "Progress"; | |
| var DEFAULT_MAX = 100; | |
| var [createProgressContext, createProgressScope] = createContextScope(PROGRESS_NAME); | |
| var [ProgressProvider, useProgressContext] = createProgressContext(PROGRESS_NAME); | |
| var Progress = React.forwardRef( | |
| (props, forwardedRef) => { | |
| const { | |
| __scopeProgress, | |
| value: valueProp = null, | |
| max: maxProp, | |
| getValueLabel = defaultGetValueLabel, | |
| ...progressProps | |
| } = props; | |
| if ((maxProp || maxProp === 0) && !isValidMaxNumber(maxProp)) { | |
| console.error(getInvalidMaxError(`${maxProp}`, "Progress")); | |
| } | |
| const max = isValidMaxNumber(maxProp) ? maxProp : DEFAULT_MAX; | |
| if (valueProp !== null && !isValidValueNumber(valueProp, max)) { | |
| console.error(getInvalidValueError(`${valueProp}`, "Progress")); | |
| } | |
| const value = isValidValueNumber(valueProp, max) ? valueProp : null; | |
| const valueLabel = isNumber(value) ? getValueLabel(value, max) : void 0; | |
| return /* @__PURE__ */ jsx(ProgressProvider, { scope: __scopeProgress, value, max, children: /* @__PURE__ */ jsx( | |
| Primitive.div, | |
| { | |
| "aria-valuemax": max, | |
| "aria-valuemin": 0, | |
| "aria-valuenow": isNumber(value) ? value : void 0, | |
| "aria-valuetext": valueLabel, | |
| role: "progressbar", | |
| "data-state": getProgressState(value, max), | |
| "data-value": value ?? void 0, | |
| "data-max": max, | |
| ...progressProps, | |
| ref: forwardedRef | |
| } | |
| ) }); | |
| } | |
| ); | |
| Progress.displayName = PROGRESS_NAME; | |
| var INDICATOR_NAME = "ProgressIndicator"; | |
| var ProgressIndicator = React.forwardRef( | |
| (props, forwardedRef) => { | |
| const { __scopeProgress, ...indicatorProps } = props; | |
| const context = useProgressContext(INDICATOR_NAME, __scopeProgress); | |
| return /* @__PURE__ */ jsx( | |
| Primitive.div, | |
| { | |
| "data-state": getProgressState(context.value, context.max), | |
| "data-value": context.value ?? void 0, | |
| "data-max": context.max, | |
| ...indicatorProps, | |
| ref: forwardedRef | |
| } | |
| ); | |
| } | |
| ); | |
| ProgressIndicator.displayName = INDICATOR_NAME; | |
| function defaultGetValueLabel(value, max) { | |
| return `${Math.round(value / max * 100)}%`; | |
| } | |
| function getProgressState(value, maxValue) { | |
| return value == null ? "indeterminate" : value === maxValue ? "complete" : "loading"; | |
| } | |
| function isNumber(value) { | |
| return typeof value === "number"; | |
| } | |
| function isValidMaxNumber(max) { | |
| return isNumber(max) && !isNaN(max) && max > 0; | |
| } | |
| function isValidValueNumber(value, max) { | |
| return isNumber(value) && !isNaN(value) && value <= max && value >= 0; | |
| } | |
| function getInvalidMaxError(propValue, componentName) { | |
| return `Invalid prop \`max\` of value \`${propValue}\` supplied to \`${componentName}\`. Only numbers greater than 0 are valid max values. Defaulting to \`${DEFAULT_MAX}\`.`; | |
| } | |
| function getInvalidValueError(propValue, componentName) { | |
| return `Invalid prop \`value\` of value \`${propValue}\` supplied to \`${componentName}\`. The \`value\` prop must be: | |
| - a positive number | |
| - less than the value passed to \`max\` (or ${DEFAULT_MAX} if no \`max\` prop is set) | |
| - \`null\` or \`undefined\` if the progress is indeterminate. | |
| Defaulting to \`null\`.`; | |
| } | |
| var Root = Progress; | |
| var Indicator = ProgressIndicator; | |
| export { | |
| Indicator, | |
| Progress, | |
| ProgressIndicator, | |
| Root, | |
| createProgressScope | |
| }; | |
| //# sourceMappingURL=index.mjs.map | |