devextreme-react
Version: 
DevExtreme React UI and Visualization Components
444 lines (442 loc) • 15 kB
JavaScript
/*!
 * devextreme-react
 * Version: 25.1.6
 * Build date: Mon Oct 13 2025
 *
 * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
 *
 * This software may be modified and distributed under the terms
 * of the MIT license. See the LICENSE file in the root of the project for details.
 *
 * https://github.com/DevExpress/devextreme-react
 */
"use client";
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Width = exports.ValueIndicator = exports.Tooltip = exports.Title = exports.Tick = exports.Text = exports.SubvalueIndicator = exports.Subtitle = exports.Size = exports.Shadow = exports.Scale = exports.RangeContainer = exports.Range = exports.MinorTick = exports.Margin = exports.LoadingIndicator = exports.Label = exports.Geometry = exports.Format = exports.Font = exports.Export = exports.Color = exports.Border = exports.BackgroundColor = exports.Animation = exports.LinearGauge = void 0;
const React = __importStar(require("react"));
const react_1 = require("react");
const linear_gauge_1 = __importDefault(require("devextreme/viz/linear_gauge"));
const component_1 = require("./core/component");
const nested_option_1 = __importDefault(require("./core/nested-option"));
const LinearGauge = (0, react_1.memo)((0, react_1.forwardRef)((props, ref) => {
    const baseRef = (0, react_1.useRef)(null);
    (0, react_1.useImperativeHandle)(ref, () => ({
        instance() {
            return baseRef.current?.getInstance();
        }
    }), []);
    const subscribableOptions = (0, react_1.useMemo)(() => (["loadingIndicator", "loadingIndicator.show", "subvalues", "value"]), []);
    const independentEvents = (0, react_1.useMemo)(() => (["onDisposing", "onDrawn", "onExported", "onExporting", "onFileSaving", "onIncidentOccurred", "onInitialized", "onTooltipHidden", "onTooltipShown"]), []);
    const defaults = (0, react_1.useMemo)(() => ({
        defaultLoadingIndicator: "loadingIndicator",
        defaultSubvalues: "subvalues",
        defaultValue: "value",
    }), []);
    const expectedChildren = (0, react_1.useMemo)(() => ({
        animation: { optionName: "animation", isCollectionItem: false },
        export: { optionName: "export", isCollectionItem: false },
        geometry: { optionName: "geometry", isCollectionItem: false },
        loadingIndicator: { optionName: "loadingIndicator", isCollectionItem: false },
        margin: { optionName: "margin", isCollectionItem: false },
        rangeContainer: { optionName: "rangeContainer", isCollectionItem: false },
        scale: { optionName: "scale", isCollectionItem: false },
        size: { optionName: "size", isCollectionItem: false },
        subvalueIndicator: { optionName: "subvalueIndicator", isCollectionItem: false },
        title: { optionName: "title", isCollectionItem: false },
        tooltip: { optionName: "tooltip", isCollectionItem: false },
        valueIndicator: { optionName: "valueIndicator", isCollectionItem: false }
    }), []);
    return (React.createElement((component_1.Component), {
        WidgetClass: linear_gauge_1.default,
        ref: baseRef,
        subscribableOptions,
        independentEvents,
        defaults,
        expectedChildren,
        ...props,
    }));
}));
exports.LinearGauge = LinearGauge;
const _componentAnimation = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "animation",
        },
    });
};
const Animation = Object.assign(_componentAnimation, {
    componentType: "option",
});
exports.Animation = Animation;
const _componentBackgroundColor = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "backgroundColor",
        },
    });
};
const BackgroundColor = Object.assign(_componentBackgroundColor, {
    componentType: "option",
});
exports.BackgroundColor = BackgroundColor;
const _componentBorder = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "border",
        },
    });
};
const Border = Object.assign(_componentBorder, {
    componentType: "option",
});
exports.Border = Border;
const _componentColor = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "color",
        },
    });
};
const Color = Object.assign(_componentColor, {
    componentType: "option",
});
exports.Color = Color;
const _componentExport = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "export",
        },
    });
};
const Export = Object.assign(_componentExport, {
    componentType: "option",
});
exports.Export = Export;
const _componentFont = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "font",
        },
    });
};
const Font = Object.assign(_componentFont, {
    componentType: "option",
});
exports.Font = Font;
const _componentFormat = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "format",
        },
    });
};
const Format = Object.assign(_componentFormat, {
    componentType: "option",
});
exports.Format = Format;
const _componentGeometry = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "geometry",
        },
    });
};
const Geometry = Object.assign(_componentGeometry, {
    componentType: "option",
});
exports.Geometry = Geometry;
const _componentLabel = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "label",
            ExpectedChildren: {
                font: { optionName: "font", isCollectionItem: false },
                format: { optionName: "format", isCollectionItem: false }
            },
        },
    });
};
const Label = Object.assign(_componentLabel, {
    componentType: "option",
});
exports.Label = Label;
const _componentLoadingIndicator = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "loadingIndicator",
            DefaultsProps: {
                defaultShow: "show"
            },
            ExpectedChildren: {
                font: { optionName: "font", isCollectionItem: false }
            },
        },
    });
};
const LoadingIndicator = Object.assign(_componentLoadingIndicator, {
    componentType: "option",
});
exports.LoadingIndicator = LoadingIndicator;
const _componentMargin = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "margin",
        },
    });
};
const Margin = Object.assign(_componentMargin, {
    componentType: "option",
});
exports.Margin = Margin;
const _componentMinorTick = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "minorTick",
        },
    });
};
const MinorTick = Object.assign(_componentMinorTick, {
    componentType: "option",
});
exports.MinorTick = MinorTick;
const _componentRange = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "ranges",
            IsCollectionItem: true,
            ExpectedChildren: {
                color: { optionName: "color", isCollectionItem: false }
            },
        },
    });
};
const Range = Object.assign(_componentRange, {
    componentType: "option",
});
exports.Range = Range;
const _componentRangeContainer = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "rangeContainer",
            ExpectedChildren: {
                backgroundColor: { optionName: "backgroundColor", isCollectionItem: false },
                range: { optionName: "ranges", isCollectionItem: true },
                width: { optionName: "width", isCollectionItem: false }
            },
        },
    });
};
const RangeContainer = Object.assign(_componentRangeContainer, {
    componentType: "option",
});
exports.RangeContainer = RangeContainer;
const _componentScale = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "scale",
            ExpectedChildren: {
                label: { optionName: "label", isCollectionItem: false },
                minorTick: { optionName: "minorTick", isCollectionItem: false },
                tick: { optionName: "tick", isCollectionItem: false }
            },
        },
    });
};
const Scale = Object.assign(_componentScale, {
    componentType: "option",
});
exports.Scale = Scale;
const _componentShadow = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "shadow",
        },
    });
};
const Shadow = Object.assign(_componentShadow, {
    componentType: "option",
});
exports.Shadow = Shadow;
const _componentSize = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "size",
        },
    });
};
const Size = Object.assign(_componentSize, {
    componentType: "option",
});
exports.Size = Size;
const _componentSubtitle = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "subtitle",
            ExpectedChildren: {
                font: { optionName: "font", isCollectionItem: false }
            },
        },
    });
};
const Subtitle = Object.assign(_componentSubtitle, {
    componentType: "option",
});
exports.Subtitle = Subtitle;
const _componentSubvalueIndicator = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "subvalueIndicator",
            ExpectedChildren: {
                color: { optionName: "color", isCollectionItem: false },
                text: { optionName: "text", isCollectionItem: false }
            },
        },
    });
};
const SubvalueIndicator = Object.assign(_componentSubvalueIndicator, {
    componentType: "option",
});
exports.SubvalueIndicator = SubvalueIndicator;
const _componentText = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "text",
            ExpectedChildren: {
                font: { optionName: "font", isCollectionItem: false },
                format: { optionName: "format", isCollectionItem: false }
            },
        },
    });
};
const Text = Object.assign(_componentText, {
    componentType: "option",
});
exports.Text = Text;
const _componentTick = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "tick",
        },
    });
};
const Tick = Object.assign(_componentTick, {
    componentType: "option",
});
exports.Tick = Tick;
const _componentTitle = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "title",
            ExpectedChildren: {
                font: { optionName: "font", isCollectionItem: false },
                margin: { optionName: "margin", isCollectionItem: false },
                subtitle: { optionName: "subtitle", isCollectionItem: false }
            },
        },
    });
};
const Title = Object.assign(_componentTitle, {
    componentType: "option",
});
exports.Title = Title;
const _componentTooltip = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "tooltip",
            ExpectedChildren: {
                border: { optionName: "border", isCollectionItem: false },
                font: { optionName: "font", isCollectionItem: false },
                format: { optionName: "format", isCollectionItem: false },
                shadow: { optionName: "shadow", isCollectionItem: false }
            },
            TemplateProps: [{
                    tmplOption: "contentTemplate",
                    render: "contentRender",
                    component: "contentComponent"
                }],
        },
    });
};
const Tooltip = Object.assign(_componentTooltip, {
    componentType: "option",
});
exports.Tooltip = Tooltip;
const _componentValueIndicator = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "valueIndicator",
            ExpectedChildren: {
                color: { optionName: "color", isCollectionItem: false },
                text: { optionName: "text", isCollectionItem: false }
            },
        },
    });
};
const ValueIndicator = Object.assign(_componentValueIndicator, {
    componentType: "option",
});
exports.ValueIndicator = ValueIndicator;
const _componentWidth = (props) => {
    return React.createElement((nested_option_1.default), {
        ...props,
        elementDescriptor: {
            OptionName: "width",
        },
    });
};
const Width = Object.assign(_componentWidth, {
    componentType: "option",
});
exports.Width = Width;
exports.default = LinearGauge;