/**
 * DevExtreme (renovation/ui/scroll_view/scrollable_props.js)
 * Version: 21.1.0 (build 21016-0316)
 * Build date: Sat Jan 16 2021
 *
 * Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED
 * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
 */
"use strict";
exports.ScrollablePropsType = exports.ScrollableInternalPropsType = exports.ScrollableProps = exports.ScrollableInternalProps = void 0;
var _base_props = _interopRequireDefault(require("../../utils/base_props"));

function _interopRequireDefault(obj) {
    return obj && obj.__esModule ? obj : {
        default: obj
    }
}

function ownKeys(object, enumerableOnly) {
    var keys = Object.keys(object);
    if (Object.getOwnPropertySymbols) {
        var symbols = Object.getOwnPropertySymbols(object);
        if (enumerableOnly) {
            symbols = symbols.filter((function(sym) {
                return Object.getOwnPropertyDescriptor(object, sym).enumerable
            }))
        }
        keys.push.apply(keys, symbols)
    }
    return keys
}

function _objectSpread(target) {
    for (var i = 1; i < arguments.length; i++) {
        var source = null != arguments[i] ? arguments[i] : {};
        if (i % 2) {
            ownKeys(Object(source), true).forEach((function(key) {
                _defineProperty(target, key, source[key])
            }))
        } else if (Object.getOwnPropertyDescriptors) {
            Object.defineProperties(target, Object.getOwnPropertyDescriptors(source))
        } else {
            ownKeys(Object(source)).forEach((function(key) {
                Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key))
            }))
        }
    }
    return target
}

function _defineProperty(obj, key, value) {
    if (key in obj) {
        Object.defineProperty(obj, key, {
            value: value,
            enumerable: true,
            configurable: true,
            writable: true
        })
    } else {
        obj[key] = value
    }
    return obj
}
var ScrollableInternalProps = {
    direction: "vertical",
    showScrollbar: "onScroll",
    scrollByThumb: false,
    useSimulatedScrollbar: false,
    pushBackValue: 0,
    bounceEnabled: true,
    scrollByContent: true,
    inertiaEnabled: true,
    updateManually: false,
    useKeyboard: true,
    forceGeneratePockets: false,
    needScrollViewContentWrapper: false
};
exports.ScrollableInternalProps = ScrollableInternalProps;
var ScrollableProps = _objectSpread(_objectSpread({}, ScrollableInternalProps), {}, {
    useNative: true
});
exports.ScrollableProps = ScrollableProps;
var ScrollableInternalPropsType = {
    direction: ScrollableInternalProps.direction,
    showScrollbar: ScrollableInternalProps.showScrollbar,
    scrollByThumb: ScrollableInternalProps.scrollByThumb,
    useSimulatedScrollbar: ScrollableInternalProps.useSimulatedScrollbar,
    pushBackValue: ScrollableInternalProps.pushBackValue,
    bounceEnabled: ScrollableInternalProps.bounceEnabled,
    scrollByContent: ScrollableInternalProps.scrollByContent,
    inertiaEnabled: ScrollableInternalProps.inertiaEnabled,
    updateManually: ScrollableInternalProps.updateManually,
    useKeyboard: ScrollableInternalProps.useKeyboard,
    forceGeneratePockets: ScrollableInternalProps.forceGeneratePockets,
    needScrollViewContentWrapper: ScrollableInternalProps.needScrollViewContentWrapper,
    disabled: _base_props.default.disabled
};
exports.ScrollableInternalPropsType = ScrollableInternalPropsType;
var ScrollablePropsType = {
    useNative: ScrollableProps.useNative,
    direction: ScrollableProps.direction,
    showScrollbar: ScrollableProps.showScrollbar,
    scrollByThumb: ScrollableProps.scrollByThumb,
    useSimulatedScrollbar: ScrollableProps.useSimulatedScrollbar,
    pushBackValue: ScrollableProps.pushBackValue,
    bounceEnabled: ScrollableProps.bounceEnabled,
    scrollByContent: ScrollableProps.scrollByContent,
    inertiaEnabled: ScrollableProps.inertiaEnabled,
    updateManually: ScrollableProps.updateManually,
    useKeyboard: ScrollableProps.useKeyboard,
    forceGeneratePockets: ScrollableProps.forceGeneratePockets,
    needScrollViewContentWrapper: ScrollableProps.needScrollViewContentWrapper,
    disabled: _base_props.default.disabled
};
exports.ScrollablePropsType = ScrollablePropsType;
