UNPKG

one

Version:

One is a React framework for web, iOS, and Android apps.

188 lines (185 loc) • 8.27 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var composeFamilyValidation_exports = {}; __export(composeFamilyValidation_exports, { composeRangeDay: () => composeRangeDay, validateComposeFamily: () => validateComposeFamily }); module.exports = __toCommonJS(composeFamilyValidation_exports); var import_syncStore = require("./syncStore.native.js"); var import_composeValidation = require("./composeValidation.native.js"); function composeRangeDay(date) { return Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()); } function localRangeDay(date) { return new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()); } function validateComposeFamily(kind, props) { var fail = function fail2(key5) { throw new Error(`Compose ${kind} invalid ${key5}`); }; var number = function number2(key5) { var minimum = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, maximum = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Infinity; var value2 = props[key5]; if (value2 !== void 0 && (typeof value2 !== "number" || !Number.isFinite(value2) || value2 < minimum || value2 > maximum)) fail(key5); }; var boolean = function boolean2(key5) { if (props[key5] !== void 0 && typeof props[key5] !== "boolean") fail(key5); }; var callback = function callback2(key5) { if (props[key5] !== void 0 && typeof props[key5] !== "function") fail(key5); }; if (kind.endsWith("carousel")) { for (var _i = 0, _iter = [ "maxItemWidth", "preferredItemWidth", "itemWidth", "minSmallItemWidth", "maxSmallItemWidth" ]; _i < _iter.length; _i++) { var key = _iter[_i]; number(key, Number.MIN_VALUE); } number("itemSpacing"); boolean("userScrollEnabled"); if (kind === "multibrowsecarousel" && props.preferredItemWidth === void 0) fail("preferredItemWidth"); if (kind === "uncontainedcarousel" && props.itemWidth === void 0) fail("itemWidth"); if (props.minSmallItemWidth !== void 0 && props.maxSmallItemWidth !== void 0 && props.minSmallItemWidth > props.maxSmallItemWidth) fail("small item widths"); if (props.flingBehavior !== void 0 && !["singleAdvance", "noSnap"].includes(props.flingBehavior)) fail("flingBehavior"); if (typeof props.contentPadding === "number") { if (!Number.isFinite(props.contentPadding) || props.contentPadding < 0) fail("contentPadding"); } else if (props.contentPadding !== void 0) { if (!props.contentPadding || typeof props.contentPadding !== "object") fail("contentPadding"); var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0; try { for (var _iterator = Object.values(props.contentPadding)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var value = _step.value; if (typeof value !== "number" || !Number.isFinite(value) || value < 0) fail("contentPadding"); } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return != null) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } } else if (kind === "shape") { for (var _i1 = 0, _iter1 = [ "smoothing", "cornerRounding", "innerRadius", "radius" ]; _i1 < _iter1.length; _i1++) { var key1 = _iter1[_i1]; number(key1, 0, 1); } number("verticesCount", 3); if (props.verticesCount !== void 0 && !Number.isInteger(props.verticesCount)) fail("verticesCount"); for (var _i2 = 0, _iter2 = [ "topStart", "topEnd", "bottomStart", "bottomEnd" ]; _i2 < _iter2.length; _i2++) { var key2 = _iter2[_i2]; number(key2); } } else if (kind === "dialog") { callback("onDismissRequest"); if (props.properties !== void 0) { if (!props.properties || typeof props.properties !== "object") fail("properties"); var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0; try { for (var _iterator1 = Object.entries(props.properties)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) { var [key3, value1] = _step1.value; if (![ "dismissOnBackPress", "dismissOnClickOutside", "usePlatformDefaultWidth", "decorFitsSystemWindows" ].includes(key3) || typeof value1 !== "boolean") fail(key3); } } catch (err) { _didIteratorError1 = true; _iteratorError1 = err; } finally { try { if (!_iteratorNormalCompletion1 && _iterator1.return != null) { _iterator1.return(); } } finally { if (_didIteratorError1) { throw _iteratorError1; } } } } } else if (kind === "toolbar") { if (props.variant !== void 0 && !["standard", "vibrant"].includes(props.variant)) fail("variant"); } else if (kind === "syncswitch") { if (!(0, import_syncStore.isSyncState)(props.isOn) || typeof props.isOn.value !== "boolean") fail("isOn (requires NativeState<boolean>)"); boolean("enabled"); } else if (kind === "range") { var _ref, _ref1; var _props_selectableDates, _props_selectableDates1, _props_selectableDates2, _props_selectableDates3, _props_selectableDates4, _props_selectableDates5; var date = function date2(key5) { var value2 = props[key5]; if (value2 == null) return void 0; if (typeof value2 !== "string" || !Number.isFinite(new Date(value2).getTime())) fail(key5); return new Date(value2); }; var start = date("initialStartDate"); var end = date("initialEndDate"); if (end && (!start || composeRangeDay(end) < composeRangeDay(start))) fail("initialEndDate"); callback("onDateRangeSelected"); for (var _i3 = 0, _iter3 = [ "showTitle", "showHeadline", "showVariantToggle" ]; _i3 < _iter3.length; _i3++) { var key4 = _iter3[_i3]; boolean(key4); } (0, import_composeValidation.validateDatePickerProps)({ selection: localRangeDay((_ref = (_ref1 = start !== null && start !== void 0 ? start : (_props_selectableDates = props.selectableDates) === null || _props_selectableDates === void 0 ? void 0 : _props_selectableDates.start) !== null && _ref1 !== void 0 ? _ref1 : (_props_selectableDates1 = props.selectableDates) === null || _props_selectableDates1 === void 0 ? void 0 : _props_selectableDates1.end) !== null && _ref !== void 0 ? _ref : /* @__PURE__ */ new Date()), minimumDate: ((_props_selectableDates2 = props.selectableDates) === null || _props_selectableDates2 === void 0 ? void 0 : _props_selectableDates2.start) && localRangeDay(props.selectableDates.start), maximumDate: ((_props_selectableDates3 = props.selectableDates) === null || _props_selectableDates3 === void 0 ? void 0 : _props_selectableDates3.end) && localRangeDay(props.selectableDates.end), variant: props.variant, colors: props.elementColors, color: props.color }); if (end) (0, import_composeValidation.validateDatePickerProps)({ selection: localRangeDay(end), minimumDate: ((_props_selectableDates4 = props.selectableDates) === null || _props_selectableDates4 === void 0 ? void 0 : _props_selectableDates4.start) && localRangeDay(props.selectableDates.start), maximumDate: ((_props_selectableDates5 = props.selectableDates) === null || _props_selectableDates5 === void 0 ? void 0 : _props_selectableDates5.end) && localRangeDay(props.selectableDates.end) }); } } //# sourceMappingURL=composeFamilyValidation.native.js.map