antd-mobile
Version:
<div align="center">
1,425 lines • 996 kB
JavaScript
(function(global2, factory) {
typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("react"), require("react-dom")) : typeof define === "function" && define.amd ? define(["exports", "react", "react-dom"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2.antdMobile = {}, global2.React, global2.ReactDOM));
})(this, function(exports2, React$4, ReactDOM) {
"use strict";
const _interopDefaultLegacy = (e2) => e2 && typeof e2 === "object" && "default" in e2 ? e2 : { default: e2 };
function _interopNamespace(e2) {
if (e2 && e2.__esModule)
return e2;
const n2 = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
if (e2) {
for (const k in e2) {
if (k !== "default") {
const d = Object.getOwnPropertyDescriptor(e2, k);
Object.defineProperty(n2, k, d.get ? d : {
enumerable: true,
get: () => e2[k]
});
}
}
}
n2.default = e2;
return Object.freeze(n2);
}
const React__default = /* @__PURE__ */ _interopDefaultLegacy(React$4);
const React__namespace = /* @__PURE__ */ _interopNamespace(React$4);
const ReactDOM__namespace = /* @__PURE__ */ _interopNamespace(ReactDOM);
const global$2 = "";
const canUseDom$2 = !!(typeof window !== "undefined" && typeof document !== "undefined" && window.document && window.document.createElement);
if (canUseDom$2) {
document.addEventListener("touchstart", () => {
}, true);
}
var __assign = function() {
__assign = Object.assign || function __assign2(t) {
for (var s, i2 = 1, n2 = arguments.length; i2 < n2; i2++) {
s = arguments[i2];
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function __rest(s, e2) {
var t = {};
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p) && e2.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i2 = 0, p = Object.getOwnPropertySymbols(s); i2 < p.length; i2++) {
if (e2.indexOf(p[i2]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i2]))
t[p[i2]] = s[p[i2]];
}
return t;
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
});
}
return new (P || (P = Promise))(function(resolve, reject) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e2) {
reject(e2);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e2) {
reject(e2);
}
}
function step(result2) {
result2.done ? resolve(result2.value) : adopt(result2.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() {
if (t[0] & 1)
throw t[1];
return t[1];
}, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
return this;
}), g;
function verb(n2) {
return function(v) {
return step([n2, v]);
};
}
function step(op) {
if (f)
throw new TypeError("Generator is already executing.");
while (g && (g = 0, op[0] && (_ = 0)), _)
try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
return t;
if (y = 0, t)
op = [op[0] & 2, t.value];
switch (op[0]) {
case 0:
case 1:
t = op;
break;
case 4:
_.label++;
return { value: op[1], done: false };
case 5:
_.label++;
y = op[1];
op = [0];
continue;
case 7:
op = _.ops.pop();
_.trys.pop();
continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_ = 0;
continue;
}
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
_.label = op[1];
break;
}
if (op[0] === 6 && _.label < t[1]) {
_.label = t[1];
t = op;
break;
}
if (t && _.label < t[2]) {
_.label = t[2];
_.ops.push(op);
break;
}
if (t[2])
_.ops.pop();
_.trys.pop();
continue;
}
op = body.call(thisArg, _);
} catch (e2) {
op = [6, e2];
y = 0;
} finally {
f = t = 0;
}
if (op[0] & 5)
throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i2 = 0;
if (m)
return m.call(o);
if (o && typeof o.length === "number")
return {
next: function() {
if (o && i2 >= o.length)
o = void 0;
return { value: o && o[i2++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n2) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m)
return o;
var i2 = m.call(o), r, ar = [], e2;
try {
while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done)
ar.push(r.value);
} catch (error) {
e2 = { error };
} finally {
try {
if (r && !r.done && (m = i2["return"]))
m.call(i2);
} finally {
if (e2)
throw e2.error;
}
}
return ar;
}
function __spreadArray(to2, from, pack) {
if (pack || arguments.length === 2)
for (var i2 = 0, l = from.length, ar; i2 < l; i2++) {
if (ar || !(i2 in from)) {
if (!ar)
ar = Array.prototype.slice.call(from, 0, i2);
ar[i2] = from[i2];
}
}
return to2.concat(ar || Array.prototype.slice.call(from));
}
typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
var e2 = new Error(message);
return e2.name = "SuppressedError", e2.error = error, e2.suppressed = suppressed, e2;
};
function mergeLocale(base2, patch) {
function merge2(a, b) {
if (typeof a !== "object" || typeof b !== "object" || Array.isArray(a) || Array.isArray(b)) {
return b !== void 0 ? b : a;
}
const result2 = {};
for (const key in a) {
if (a.hasOwnProperty(key)) {
result2[key] = merge2(a[key], b[key]);
}
}
return result2;
}
return merge2(base2, patch);
}
const typeTemplate$2 = "${label} is not a valid ${type}";
const base = {
locale: "en",
common: {
confirm: "Confirm",
cancel: "Cancel",
loading: "Loading",
close: "Close"
},
Calendar: {
title: "Date selection",
confirm: "Confirm",
start: "start",
end: "end",
today: "today",
markItems: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
yearAndMonth: "${year}/${month}"
},
Cascader: {
placeholder: "Selecting"
},
Dialog: {
ok: "OK"
},
DatePicker: {
tillNow: "Till Now"
},
ErrorBlock: {
default: {
title: "Oops, something went wrong",
description: "Please wait a minute and try again"
},
busy: {
title: "Oops, not loading",
description: "Try to refresh the page"
},
disconnected: {
title: "Network is busy",
description: "Try to refresh the page"
},
empty: {
title: "Hmm, couldn't find that...",
description: "Want to try a new search?"
}
},
Form: {
required: "Required",
optional: "Optional",
defaultValidateMessages: {
default: "Field validation error for ${label}",
required: "Please enter ${label}",
enum: "${label} must be one of [${enum}]",
whitespace: "${label} cannot be a blank character",
date: {
format: "${label} date format is invalid",
parse: "${label} cannot be converted to a date",
invalid: "${label} is an invalid date"
},
types: {
string: typeTemplate$2,
method: typeTemplate$2,
array: typeTemplate$2,
object: typeTemplate$2,
number: typeTemplate$2,
date: typeTemplate$2,
boolean: typeTemplate$2,
integer: typeTemplate$2,
float: typeTemplate$2,
regexp: typeTemplate$2,
email: typeTemplate$2,
url: typeTemplate$2,
hex: typeTemplate$2
},
string: {
len: "${label} must be ${len} characters",
min: "${label} must be at least ${min} characters",
max: "${label} must be up to ${max} characters",
range: "${label} must be between ${min}-${max} characters"
},
number: {
len: "${label} must be equal to ${len}",
min: "${label} must be minimum ${min}",
max: "${label} must be maximum ${max}",
range: "${label} must be between ${min}-${max}"
},
array: {
len: "Must be ${len} ${label}",
min: "At least ${min} ${label}",
max: "At most ${max} ${label}",
range: "The amount of ${label} must be between ${min}-${max}"
},
pattern: {
mismatch: "${label} does not match the pattern ${pattern}"
}
}
},
ImageUploader: {
uploading: "Uploading...",
upload: "Upload"
},
InfiniteScroll: {
noMore: "No more",
failedToLoad: "Failed to load",
retry: "Retry"
},
Input: {
clear: "clear"
},
Mask: {
name: "Mask"
},
Modal: {
ok: "OK"
},
PasscodeInput: {
name: "Passcode Input"
},
PullToRefresh: {
pulling: "Scroll down to refresh",
canRelease: "Release to refresh immediately",
complete: "Refresh successful"
},
SearchBar: {
name: "Search Bar"
},
Slider: {
name: "Slider"
},
Stepper: {
decrease: "decrease",
increase: "increase"
},
Switch: {
name: "Switch"
},
Selector: {
name: "Selector"
}
};
const typeTemplate$1 = "${label}\u4E0D\u662F\u4E00\u4E2A\u6709\u6548\u7684${type}";
const zhCN = mergeLocale(base, {
locale: "zh-CH",
common: {
confirm: "\u786E\u5B9A",
cancel: "\u53D6\u6D88",
loading: "\u52A0\u8F7D\u4E2D",
close: "\u5173\u95ED"
},
Calendar: {
title: "\u65E5\u671F\u9009\u62E9",
confirm: "\u786E\u8BA4",
start: "\u5F00\u59CB",
end: "\u7ED3\u675F",
today: "\u4ECA\u65E5",
markItems: ["\u4E00", "\u4E8C", "\u4E09", "\u56DB", "\u4E94", "\u516D", "\u65E5"],
yearAndMonth: "${year}\u5E74${month}\u6708"
},
Cascader: {
placeholder: "\u8BF7\u9009\u62E9"
},
Dialog: {
ok: "\u6211\u77E5\u9053\u4E86"
},
DatePicker: {
tillNow: "\u81F3\u4ECA"
},
ErrorBlock: {
default: {
title: "\u9875\u9762\u9047\u5230\u4E00\u4E9B\u5C0F\u95EE\u9898",
description: "\u5F85\u4F1A\u6765\u8BD5\u8BD5"
},
busy: {
title: "\u524D\u65B9\u62E5\u5835",
description: "\u5237\u65B0\u8BD5\u8BD5"
},
disconnected: {
title: "\u7F51\u7EDC\u6709\u70B9\u5FD9",
description: "\u52A8\u52A8\u624B\u6307\u5E2E\u5FD9\u4FEE\u590D"
},
empty: {
title: "\u6CA1\u6709\u627E\u5230\u4F60\u9700\u8981\u7684\u4E1C\u897F",
description: "\u627E\u627E\u5176\u4ED6\u7684\u5427"
}
},
Form: {
required: "\u5FC5\u586B",
optional: "\u9009\u586B",
defaultValidateMessages: {
default: "\u5B57\u6BB5\u9A8C\u8BC1\u9519\u8BEF${label}",
required: "\u8BF7\u8F93\u5165${label}",
enum: "${label}\u5FC5\u987B\u662F\u5176\u4E2D\u4E00\u4E2A[${enum}]",
whitespace: "${label}\u4E0D\u80FD\u4E3A\u7A7A\u5B57\u7B26",
date: {
format: "${label}\u65E5\u671F\u683C\u5F0F\u65E0\u6548",
parse: "${label}\u4E0D\u80FD\u8F6C\u6362\u4E3A\u65E5\u671F",
invalid: "${label}\u662F\u4E00\u4E2A\u65E0\u6548\u65E5\u671F"
},
types: {
string: typeTemplate$1,
method: typeTemplate$1,
array: typeTemplate$1,
object: typeTemplate$1,
number: typeTemplate$1,
date: typeTemplate$1,
boolean: typeTemplate$1,
integer: typeTemplate$1,
float: typeTemplate$1,
regexp: typeTemplate$1,
email: typeTemplate$1,
url: typeTemplate$1,
hex: typeTemplate$1
},
string: {
len: "${label}\u987B\u4E3A${len}\u4E2A\u5B57\u7B26",
min: "${label}\u6700\u5C11${min}\u4E2A\u5B57\u7B26",
max: "${label}\u6700\u591A${max}\u4E2A\u5B57\u7B26",
range: "${label}\u987B\u5728${min}-${max}\u5B57\u7B26\u4E4B\u95F4"
},
number: {
len: "${label}\u5FC5\u987B\u7B49\u4E8E${len}",
min: "${label}\u6700\u5C0F\u503C\u4E3A${min}",
max: "${label}\u6700\u5927\u503C\u4E3A${max}",
range: "${label}\u987B\u5728${min}-${max}\u4E4B\u95F4"
},
array: {
len: "\u987B\u4E3A${len}\u4E2A${label}",
min: "\u6700\u5C11${min}\u4E2A${label}",
max: "\u6700\u591A${max}\u4E2A${label}",
range: "${label}\u6570\u91CF\u987B\u5728${min}-${max}\u4E4B\u95F4"
},
pattern: {
mismatch: "${label}\u4E0E\u6A21\u5F0F\u4E0D\u5339\u914D${pattern}"
}
}
},
ImageUploader: {
uploading: "\u4E0A\u4F20\u4E2D...",
upload: "\u4E0A\u4F20"
},
InfiniteScroll: {
noMore: "\u6CA1\u6709\u66F4\u591A\u4E86",
failedToLoad: "\u52A0\u8F7D\u5931\u8D25",
retry: "\u91CD\u65B0\u52A0\u8F7D"
},
Input: {
clear: "\u6E05\u9664"
},
Mask: {
name: "\u80CC\u666F\u8499\u5C42"
},
Modal: {
ok: "\u6211\u77E5\u9053\u4E86"
},
PasscodeInput: {
name: "\u5BC6\u7801\u8F93\u5165\u6846"
},
PullToRefresh: {
pulling: "\u4E0B\u62C9\u5237\u65B0",
canRelease: "\u91CA\u653E\u7ACB\u5373\u5237\u65B0",
complete: "\u5237\u65B0\u6210\u529F"
},
SearchBar: {
name: "\u641C\u7D22\u6846"
},
Slider: {
name: "\u6ED1\u52A8\u8F93\u5165\u6761"
},
Stepper: {
decrease: "\u51CF\u5C11",
increase: "\u589E\u52A0"
},
Switch: {
name: "\u5F00\u5173"
},
Selector: {
name: "\u9009\u62E9\u7EC4"
}
});
const zhCN$1 = zhCN;
const defaultConfigRef = {
current: {
locale: zhCN$1
}
};
function setDefaultConfig(config2) {
defaultConfigRef.current = config2;
}
function getDefaultConfig() {
return defaultConfigRef.current;
}
const ConfigContext = React__default.default.createContext(null);
const ConfigProvider$1 = (props) => {
const {
children
} = props, config2 = __rest(props, ["children"]);
const parentConfig = useConfig();
return React__default.default.createElement(ConfigContext.Provider, {
value: Object.assign(Object.assign({}, parentConfig), config2)
}, children);
};
function useConfig() {
var _a;
return (_a = React$4.useContext(ConfigContext)) !== null && _a !== void 0 ? _a : getDefaultConfig();
}
const ConfigProvider = ConfigProvider$1;
const actionSheet = "";
function attachPropertiesToComponent(component, properties) {
const ret = component;
for (const key in properties) {
if (properties.hasOwnProperty(key)) {
ret[key] = properties[key];
}
}
return ret;
}
var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
var classnames = { exports: {} };
/*!
Copyright (c) 2018 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*/
(function(module2) {
(function() {
var hasOwn = {}.hasOwnProperty;
function classNames2() {
var classes = [];
for (var i2 = 0; i2 < arguments.length; i2++) {
var arg = arguments[i2];
if (!arg)
continue;
var argType = typeof arg;
if (argType === "string" || argType === "number") {
classes.push(arg);
} else if (Array.isArray(arg)) {
if (arg.length) {
var inner = classNames2.apply(null, arg);
if (inner) {
classes.push(inner);
}
}
} else if (argType === "object") {
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
classes.push(arg.toString());
continue;
}
for (var key in arg) {
if (hasOwn.call(arg, key) && arg[key]) {
classes.push(key);
}
}
}
}
return classes.join(" ");
}
if (module2.exports) {
classNames2.default = classNames2;
module2.exports = classNames2;
} else {
window.classNames = classNames2;
}
})();
})(classnames);
const classNames = classnames.exports;
function withNativeProps(props, element) {
const p = Object.assign({}, element.props);
if (props.className) {
p.className = classNames(element.props.className, props.className);
}
if (props.style) {
p.style = Object.assign(Object.assign({}, p.style), props.style);
}
if (props.tabIndex !== void 0) {
p.tabIndex = props.tabIndex;
}
for (const key in props) {
if (!props.hasOwnProperty(key))
continue;
if (key.startsWith("data-") || key.startsWith("aria-")) {
p[key] = props[key];
}
}
return React__default.default.cloneElement(element, p);
}
var freeGlobal$1 = typeof commonjsGlobal == "object" && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
var _freeGlobal = freeGlobal$1;
var freeGlobal = _freeGlobal;
var freeSelf = typeof self == "object" && self && self.Object === Object && self;
var root$9 = freeGlobal || freeSelf || Function("return this")();
var _root = root$9;
var root$8 = _root;
var Symbol$4 = root$8.Symbol;
var _Symbol = Symbol$4;
var Symbol$3 = _Symbol;
var objectProto$e = Object.prototype;
var hasOwnProperty$b = objectProto$e.hasOwnProperty;
var nativeObjectToString$1 = objectProto$e.toString;
var symToStringTag$1 = Symbol$3 ? Symbol$3.toStringTag : void 0;
function getRawTag$1(value) {
var isOwn = hasOwnProperty$b.call(value, symToStringTag$1), tag2 = value[symToStringTag$1];
try {
value[symToStringTag$1] = void 0;
var unmasked = true;
} catch (e2) {
}
var result2 = nativeObjectToString$1.call(value);
if (unmasked) {
if (isOwn) {
value[symToStringTag$1] = tag2;
} else {
delete value[symToStringTag$1];
}
}
return result2;
}
var _getRawTag = getRawTag$1;
var objectProto$d = Object.prototype;
var nativeObjectToString = objectProto$d.toString;
function objectToString$1(value) {
return nativeObjectToString.call(value);
}
var _objectToString = objectToString$1;
var Symbol$2 = _Symbol, getRawTag = _getRawTag, objectToString = _objectToString;
var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
var symToStringTag = Symbol$2 ? Symbol$2.toStringTag : void 0;
function baseGetTag$6(value) {
if (value == null) {
return value === void 0 ? undefinedTag : nullTag;
}
return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
}
var _baseGetTag = baseGetTag$6;
function isObject$b(value) {
var type2 = typeof value;
return value != null && (type2 == "object" || type2 == "function");
}
var isObject_1 = isObject$b;
var baseGetTag$5 = _baseGetTag, isObject$a = isObject_1;
var asyncTag = "[object AsyncFunction]", funcTag$1 = "[object Function]", genTag = "[object GeneratorFunction]", proxyTag = "[object Proxy]";
function isFunction$4(value) {
if (!isObject$a(value)) {
return false;
}
var tag2 = baseGetTag$5(value);
return tag2 == funcTag$1 || tag2 == genTag || tag2 == asyncTag || tag2 == proxyTag;
}
var isFunction_1 = isFunction$4;
var root$7 = _root;
var coreJsData$1 = root$7["__core-js_shared__"];
var _coreJsData = coreJsData$1;
var coreJsData = _coreJsData;
var maskSrcKey = function() {
var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || "");
return uid ? "Symbol(src)_1." + uid : "";
}();
function isMasked$1(func) {
return !!maskSrcKey && maskSrcKey in func;
}
var _isMasked = isMasked$1;
var funcProto$2 = Function.prototype;
var funcToString$2 = funcProto$2.toString;
function toSource$2(func) {
if (func != null) {
try {
return funcToString$2.call(func);
} catch (e2) {
}
try {
return func + "";
} catch (e2) {
}
}
return "";
}
var _toSource = toSource$2;
var isFunction$3 = isFunction_1, isMasked = _isMasked, isObject$9 = isObject_1, toSource$1 = _toSource;
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
var reIsHostCtor = /^\[object .+?Constructor\]$/;
var funcProto$1 = Function.prototype, objectProto$c = Object.prototype;
var funcToString$1 = funcProto$1.toString;
var hasOwnProperty$a = objectProto$c.hasOwnProperty;
var reIsNative = RegExp(
"^" + funcToString$1.call(hasOwnProperty$a).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
);
function baseIsNative$1(value) {
if (!isObject$9(value) || isMasked(value)) {
return false;
}
var pattern2 = isFunction$3(value) ? reIsNative : reIsHostCtor;
return pattern2.test(toSource$1(value));
}
var _baseIsNative = baseIsNative$1;
function getValue$3(object2, key) {
return object2 == null ? void 0 : object2[key];
}
var _getValue = getValue$3;
var baseIsNative = _baseIsNative, getValue$2 = _getValue;
function getNative$7(object2, key) {
var value = getValue$2(object2, key);
return baseIsNative(value) ? value : void 0;
}
var _getNative = getNative$7;
var getNative$6 = _getNative;
var defineProperty$2 = function() {
try {
var func = getNative$6(Object, "defineProperty");
func({}, "", {});
return func;
} catch (e2) {
}
}();
var _defineProperty$2 = defineProperty$2;
var defineProperty$1 = _defineProperty$2;
function baseAssignValue$3(object2, key, value) {
if (key == "__proto__" && defineProperty$1) {
defineProperty$1(object2, key, {
"configurable": true,
"enumerable": true,
"value": value,
"writable": true
});
} else {
object2[key] = value;
}
}
var _baseAssignValue = baseAssignValue$3;
function eq$5(value, other) {
return value === other || value !== value && other !== other;
}
var eq_1 = eq$5;
var baseAssignValue$2 = _baseAssignValue, eq$4 = eq_1;
var objectProto$b = Object.prototype;
var hasOwnProperty$9 = objectProto$b.hasOwnProperty;
function assignValue$1(object2, key, value) {
var objValue = object2[key];
if (!(hasOwnProperty$9.call(object2, key) && eq$4(objValue, value)) || value === void 0 && !(key in object2)) {
baseAssignValue$2(object2, key, value);
}
}
var _assignValue = assignValue$1;
var assignValue = _assignValue, baseAssignValue$1 = _baseAssignValue;
function copyObject$2(source, props, object2, customizer) {
var isNew = !object2;
object2 || (object2 = {});
var index2 = -1, length = props.length;
while (++index2 < length) {
var key = props[index2];
var newValue = customizer ? customizer(object2[key], source[key], key, object2, source) : void 0;
if (newValue === void 0) {
newValue = source[key];
}
if (isNew) {
baseAssignValue$1(object2, key, newValue);
} else {
assignValue(object2, key, newValue);
}
}
return object2;
}
var _copyObject = copyObject$2;
function identity$3(value) {
return value;
}
var identity_1 = identity$3;
function apply$2(func, thisArg, args) {
switch (args.length) {
case 0:
return func.call(thisArg);
case 1:
return func.call(thisArg, args[0]);
case 2:
return func.call(thisArg, args[0], args[1]);
case 3:
return func.call(thisArg, args[0], args[1], args[2]);
}
return func.apply(thisArg, args);
}
var _apply = apply$2;
var apply$1 = _apply;
var nativeMax$1 = Math.max;
function overRest$1(func, start2, transform) {
start2 = nativeMax$1(start2 === void 0 ? func.length - 1 : start2, 0);
return function() {
var args = arguments, index2 = -1, length = nativeMax$1(args.length - start2, 0), array2 = Array(length);
while (++index2 < length) {
array2[index2] = args[start2 + index2];
}
index2 = -1;
var otherArgs = Array(start2 + 1);
while (++index2 < start2) {
otherArgs[index2] = args[index2];
}
otherArgs[start2] = transform(array2);
return apply$1(func, this, otherArgs);
};
}
var _overRest = overRest$1;
function constant$1(value) {
return function() {
return value;
};
}
var constant_1 = constant$1;
var constant = constant_1, defineProperty = _defineProperty$2, identity$2 = identity_1;
var baseSetToString$1 = !defineProperty ? identity$2 : function(func, string2) {
return defineProperty(func, "toString", {
"configurable": true,
"enumerable": false,
"value": constant(string2),
"writable": true
});
};
var _baseSetToString = baseSetToString$1;
var HOT_COUNT = 800, HOT_SPAN = 16;
var nativeNow = Date.now;
function shortOut$1(func) {
var count = 0, lastCalled = 0;
return function() {
var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled);
lastCalled = stamp;
if (remaining > 0) {
if (++count >= HOT_COUNT) {
return arguments[0];
}
} else {
count = 0;
}
return func.apply(void 0, arguments);
};
}
var _shortOut = shortOut$1;
var baseSetToString = _baseSetToString, shortOut = _shortOut;
var setToString$1 = shortOut(baseSetToString);
var _setToString = setToString$1;
var identity$1 = identity_1, overRest = _overRest, setToString = _setToString;
function baseRest$1(func, start2) {
return setToString(overRest(func, start2, identity$1), func + "");
}
var _baseRest = baseRest$1;
var MAX_SAFE_INTEGER$1 = 9007199254740991;
function isLength$2(value) {
return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER$1;
}
var isLength_1 = isLength$2;
var isFunction$2 = isFunction_1, isLength$1 = isLength_1;
function isArrayLike$4(value) {
return value != null && isLength$1(value.length) && !isFunction$2(value);
}
var isArrayLike_1 = isArrayLike$4;
var MAX_SAFE_INTEGER = 9007199254740991;
var reIsUint = /^(?:0|[1-9]\d*)$/;
function isIndex$2(value, length) {
var type2 = typeof value;
length = length == null ? MAX_SAFE_INTEGER : length;
return !!length && (type2 == "number" || type2 != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length);
}
var _isIndex = isIndex$2;
var eq$3 = eq_1, isArrayLike$3 = isArrayLike_1, isIndex$1 = _isIndex, isObject$8 = isObject_1;
function isIterateeCall$1(value, index2, object2) {
if (!isObject$8(object2)) {
return false;
}
var type2 = typeof index2;
if (type2 == "number" ? isArrayLike$3(object2) && isIndex$1(index2, object2.length) : type2 == "string" && index2 in object2) {
return eq$3(object2[index2], value);
}
return false;
}
var _isIterateeCall = isIterateeCall$1;
var baseRest = _baseRest, isIterateeCall = _isIterateeCall;
function createAssigner$2(assigner) {
return baseRest(function(object2, sources) {
var index2 = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : void 0, guard = length > 2 ? sources[2] : void 0;
customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : void 0;
if (guard && isIterateeCall(sources[0], sources[1], guard)) {
customizer = length < 3 ? void 0 : customizer;
length = 1;
}
object2 = Object(object2);
while (++index2 < length) {
var source = sources[index2];
if (source) {
assigner(object2, source, index2, customizer);
}
}
return object2;
});
}
var _createAssigner = createAssigner$2;
function baseTimes$1(n2, iteratee) {
var index2 = -1, result2 = Array(n2);
while (++index2 < n2) {
result2[index2] = iteratee(index2);
}
return result2;
}
var _baseTimes = baseTimes$1;
function isObjectLike$7(value) {
return value != null && typeof value == "object";
}
var isObjectLike_1 = isObjectLike$7;
var baseGetTag$4 = _baseGetTag, isObjectLike$6 = isObjectLike_1;
var argsTag$2 = "[object Arguments]";
function baseIsArguments$1(value) {
return isObjectLike$6(value) && baseGetTag$4(value) == argsTag$2;
}
var _baseIsArguments = baseIsArguments$1;
var baseIsArguments = _baseIsArguments, isObjectLike$5 = isObjectLike_1;
var objectProto$a = Object.prototype;
var hasOwnProperty$8 = objectProto$a.hasOwnProperty;
var propertyIsEnumerable$1 = objectProto$a.propertyIsEnumerable;
var isArguments$2 = baseIsArguments(function() {
return arguments;
}()) ? baseIsArguments : function(value) {
return isObjectLike$5(value) && hasOwnProperty$8.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
};
var isArguments_1 = isArguments$2;
var isArray$4 = Array.isArray;
var isArray_1 = isArray$4;
var isBuffer$3 = { exports: {} };
function stubFalse() {
return false;
}
var stubFalse_1 = stubFalse;
(function(module2, exports3) {
var root2 = _root, stubFalse2 = stubFalse_1;
var freeExports = exports3 && !exports3.nodeType && exports3;
var freeModule = freeExports && true && module2 && !module2.nodeType && module2;
var moduleExports = freeModule && freeModule.exports === freeExports;
var Buffer = moduleExports ? root2.Buffer : void 0;
var nativeIsBuffer = Buffer ? Buffer.isBuffer : void 0;
var isBuffer2 = nativeIsBuffer || stubFalse2;
module2.exports = isBuffer2;
})(isBuffer$3, isBuffer$3.exports);
var baseGetTag$3 = _baseGetTag, isLength = isLength_1, isObjectLike$4 = isObjectLike_1;
var argsTag$1 = "[object Arguments]", arrayTag$1 = "[object Array]", boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", errorTag$1 = "[object Error]", funcTag = "[object Function]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", objectTag$3 = "[object Object]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", weakMapTag$1 = "[object WeakMap]";
var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$2 = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
var typedArrayTags = {};
typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true;
typedArrayTags[argsTag$1] = typedArrayTags[arrayTag$1] = typedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] = typedArrayTags[dataViewTag$2] = typedArrayTags[dateTag$1] = typedArrayTags[errorTag$1] = typedArrayTags[funcTag] = typedArrayTags[mapTag$2] = typedArrayTags[numberTag$1] = typedArrayTags[objectTag$3] = typedArrayTags[regexpTag$1] = typedArrayTags[setTag$2] = typedArrayTags[stringTag$1] = typedArrayTags[weakMapTag$1] = false;
function baseIsTypedArray$1(value) {
return isObjectLike$4(value) && isLength(value.length) && !!typedArrayTags[baseGetTag$3(value)];
}
var _baseIsTypedArray = baseIsTypedArray$1;
function baseUnary$1(func) {
return function(value) {
return func(value);
};
}
var _baseUnary = baseUnary$1;
var _nodeUtil = { exports: {} };
(function(module2, exports3) {
var freeGlobal2 = _freeGlobal;
var freeExports = exports3 && !exports3.nodeType && exports3;
var freeModule = freeExports && true && module2 && !module2.nodeType && module2;
var moduleExports = freeModule && freeModule.exports === freeExports;
var freeProcess = moduleExports && freeGlobal2.process;
var nodeUtil2 = function() {
try {
var types2 = freeModule && freeModule.require && freeModule.require("util").types;
if (types2) {
return types2;
}
return freeProcess && freeProcess.binding && freeProcess.binding("util");
} catch (e2) {
}
}();
module2.exports = nodeUtil2;
})(_nodeUtil, _nodeUtil.exports);
var baseIsTypedArray = _baseIsTypedArray, baseUnary = _baseUnary, nodeUtil = _nodeUtil.exports;
var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
var isTypedArray$3 = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
var isTypedArray_1 = isTypedArray$3;
var baseTimes = _baseTimes, isArguments$1 = isArguments_1, isArray$3 = isArray_1, isBuffer$2 = isBuffer$3.exports, isIndex = _isIndex, isTypedArray$2 = isTypedArray_1;
var objectProto$9 = Object.prototype;
var hasOwnProperty$7 = objectProto$9.hasOwnProperty;
function arrayLikeKeys$2(value, inherited) {
var isArr = isArray$3(value), isArg = !isArr && isArguments$1(value), isBuff = !isArr && !isArg && isBuffer$2(value), isType = !isArr && !isArg && !isBuff && isTypedArray$2(value), skipIndexes = isArr || isArg || isBuff || isType, result2 = skipIndexes ? baseTimes(value.length, String) : [], length = result2.length;
for (var key in value) {
if ((inherited || hasOwnProperty$7.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) {
result2.push(key);
}
}
return result2;
}
var _arrayLikeKeys = arrayLikeKeys$2;
var objectProto$8 = Object.prototype;
function isPrototype$3(value) {
var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto$8;
return value === proto;
}
var _isPrototype = isPrototype$3;
function overArg$2(func, transform) {
return function(arg) {
return func(transform(arg));
};
}
var _overArg = overArg$2;
var overArg$1 = _overArg;
var nativeKeys$1 = overArg$1(Object.keys, Object);
var _nativeKeys = nativeKeys$1;
var isPrototype$2 = _isPrototype, nativeKeys = _nativeKeys;
var objectProto$7 = Object.prototype;
var hasOwnProperty$6 = objectProto$7.hasOwnProperty;
function baseKeys$1(object2) {
if (!isPrototype$2(object2)) {
return nativeKeys(object2);
}
var result2 = [];
for (var key in Object(object2)) {
if (hasOwnProperty$6.call(object2, key) && key != "constructor") {
result2.push(key);
}
}
return result2;
}
var _baseKeys = baseKeys$1;
var arrayLikeKeys$1 = _arrayLikeKeys, baseKeys = _baseKeys, isArrayLike$2 = isArrayLike_1;
function keys$2(object2) {
return isArrayLike$2(object2) ? arrayLikeKeys$1(object2) : baseKeys(object2);
}
var keys_1 = keys$2;
var copyObject$1 = _copyObject, createAssigner$1 = _createAssigner, keys$1 = keys_1;
var assignWith = createAssigner$1(function(object2, source, srcIndex, customizer) {
copyObject$1(source, keys$1(source), object2, customizer);
});
var assignWith_1 = assignWith;
function mergeProps(...items) {
function customizer(objValue, srcValue) {
return srcValue === void 0 ? objValue : srcValue;
}
let ret = Object.assign({}, items[0]);
for (let i2 = 1; i2 < items.length; i2++) {
ret = assignWith_1(ret, items[i2], customizer);
}
return ret;
}
const popup = "";
var createUpdateEffect = function(hook) {
return function(effect, deps) {
var isMounted = React$4.useRef(false);
hook(function() {
return function() {
isMounted.current = false;
};
}, []);
hook(function() {
if (!isMounted.current) {
isMounted.current = true;
} else {
return effect();
}
}, deps);
};
};
var isFunction$1 = function(value) {
return typeof value === "function";
};
var isNumber = function(value) {
return typeof value === "number";
};
var isDev$1 = true;
const isDev$2 = isDev$1;
function useMemoizedFn(fn) {
if (isDev$2) {
if (!isFunction$1(fn)) {
console.error("useMemoizedFn expected parameter is a function, got ".concat(typeof fn));
}
}
var fnRef = React$4.useRef(fn);
fnRef.current = React$4.useMemo(function() {
return fn;
}, [fn]);
var memoizedFn = React$4.useRef();
if (!memoizedFn.current) {
memoizedFn.current = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return fnRef.current.apply(this, args);
};
}
return memoizedFn.current;
}
const useUpdateEffect = createUpdateEffect(React$4.useEffect);
function depsAreSame(oldDeps, deps) {
if (oldDeps === deps)
return true;
for (var i2 = 0; i2 < oldDeps.length; i2++) {
if (!Object.is(oldDeps[i2], deps[i2]))
return false;
}
return true;
}
function useLatest(value) {
var ref = React$4.useRef(value);
ref.current = value;
return ref;
}
var useUnmount = function(fn) {
if (isDev$2) {
if (!isFunction$1(fn)) {
console.error("useUnmount expected parameter is a function, got ".concat(typeof fn));
}
}
var fnRef = useLatest(fn);
React$4.useEffect(function() {
return function() {
fnRef.current();
};
}, []);
};
const useUnmount$1 = useUnmount;
var root$6 = _root;
var now$1 = function() {
return root$6.Date.now();
};
var now_1 = now$1;
var reWhitespace = /\s/;
function trimmedEndIndex$1(string2) {
var index2 = string2.length;
while (index2-- && reWhitespace.test(string2.charAt(index2))) {
}
return index2;
}
var _trimmedEndIndex = trimmedEndIndex$1;
var trimmedEndIndex = _trimmedEndIndex;
var reTrimStart = /^\s+/;
function baseTrim$1(string2) {
return string2 ? string2.slice(0, trimmedEndIndex(string2) + 1).replace(reTrimStart, "") : string2;
}
var _baseTrim = baseTrim$1;
var baseGetTag$2 = _baseGetTag, isObjectLike$3 = isObjectLike_1;
var symbolTag$1 = "[object Symbol]";
function isSymbol$1(value) {
return typeof value == "symbol" || isObjectLike$3(value) && baseGetTag$2(value) == symbolTag$1;
}
var isSymbol_1 = isSymbol$1;
var baseTrim = _baseTrim, isObject$7 = isObject_1, isSymbol = isSymbol_1;
var NAN = 0 / 0;
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
var reIsBinary = /^0b[01]+$/i;
var reIsOctal = /^0o[0-7]+$/i;
var freeParseInt = parseInt;
function toNumber$1(value) {
if (typeof value == "number") {
return value;
}
if (isSymbol(value)) {
return NAN;
}
if (isObject$7(value)) {
var other = typeof value.valueOf == "function" ? value.valueOf() : value;
value = isObject$7(other) ? other + "" : other;
}
if (typeof value != "string") {
return value === 0 ? value : +value;
}
value = baseTrim(value);
var isBinary = reIsBinary.test(value);
return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
}
var toNumber_1 = toNumber$1;
var isObject$6 = isObject_1, now = now_1, toNumber = toNumber_1;
var FUNC_ERROR_TEXT$2 = "Expected a function";
var nativeMax = Math.max, nativeMin = Math.min;
function debounce$1(func, wait, options) {
var lastArgs, lastThis, maxWait, result2, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
if (typeof func != "function") {
throw new TypeError(FUNC_ERROR_TEXT$2);
}
wait = toNumber(wait) || 0;
if (isObject$6(options)) {
leading = !!options.leading;
maxing = "maxWait" in options;
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
trailing = "trailing" in options ? !!options.trailing : trailing;
}
function invokeFunc(time) {
var args = lastArgs, thisArg = lastThis;
lastArgs = lastThis = void 0;
lastInvokeTime = time;
result2 = func.apply(thisArg, args);
return result2;
}
function leadingEdge(time) {
lastInvokeTime = time;
timerId = setTimeout(timerExpired, wait);
return leading ? invokeFunc(time) : result2;
}
function remainingWait(time) {
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
}
function shouldInvoke(time) {
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
}
function timerExpired() {
var time = now();
if (shouldInvoke(time)) {
return trailingEdge(time);
}
timerId = setTimeout(timerExpired, remainingWait(time));
}
function trailingEdge(time) {
timerId = void 0;
if (trailing && lastArgs) {
return invokeFunc(time);
}
lastArgs = lastThis = void 0;
return result2;
}
function cancel() {
if (timerId !== void 0) {
clearTimeout(timerId);
}
lastInvokeTime = 0;
lastArgs = lastCallTime = lastThis = timerId = void 0;
}
function flush2() {
return timerId === void 0 ? result2 : trailingEdge(now());
}
function debounced() {
var time = now(), isInvoking = shouldInvoke(time);
lastArgs = arguments;
lastThis = this;
lastCallTime = time;
if (isInvoking) {
if (timerId === void 0) {
return leadingEdge(lastCallTime);
}
if (maxing) {
clearTimeout(timerId);
timerId = setTimeout(timerExpired, wait);
return invokeFunc(lastCallTime);
}
}
if (timerId === void 0) {
timerId = setTimeout(timerExpired, wait);
}
return result2;
}
debounced.cancel = cancel;
debounced.flush = flush2;
return debounced;
}
var debounce_1 = debounce$1;
var isBrowser$2 = !!(typeof window !== "undefined" && window.document && window.document.createElement);
const isBrowser$3 = isBrowser$2;
var debounce = debounce_1, isObject$5 = isObject_1;
var FUNC_ERROR_TEXT$1 = "Expected a function";
function throttle$1(func, wait, options) {
var leading = true, trailing = true;
if (typeof func != "function") {
throw new TypeError(FUNC_ERROR_TEXT$1);
}
if (isObject$5(options)) {
leading = "leading" in options ? !!options.leading : leading;
trailing = "trailing" in options ? !!options.trailing : trailing;
}
return debounce(func, wait, {
"leading": leading,
"maxWait": wait,
"trailing": trailing
});
}
var throttle_1 = throttle$1;
var useMount = function(fn) {
if (isDev$2) {
if (!isFunction$1(fn)) {
console.error('useMount: parameter `fn` expected to be a function, but got "'.concat(typeof fn, '".'));
}
}
React$4.useEffect(function() {
fn === null || fn === void 0 ? void 0 : fn();
}, []);
};
const useMount$1 = useMount;
var useUpdate = function() {
var _a = __read(React$4.useState({}), 2), setState = _a[1];
return React$4.useCallback(function() {
return setState({});
}, []);
};
const useUpdate$1 = useUpdate;
function getTargetElement(target, defaultElement) {
if (!isBrowser$3) {
return void 0;
}
if (!target) {
return defaultElement;
}
var targetElement;
if (isFunction$1(target)) {
targetElement = target();
} else if ("current" in target) {
targetElement = target.current;
} else {
targetElement = target;
}
return targetElement;
}
var checkIfAllInShadow = function(targets) {
return targets.every(function(item) {
var targetElement = getTargetElement(item);
if (!targetElement)
return false;
if (targetElement.getRootNode() instanceof ShadowRoot)
return true;
});
};
var getShadow = function(node) {
if (!node) {
return document;
}
return node.getRootNode();
};
var getDocumentOrShadow = function(target) {
if (!target || !document.getRootNode) {
return document;
}
var targets = Array.isArray(target) ? target : [target];
if (checkIfAllInShadow(targets)) {
return getShadow(getTargetElement(targets[0]));
}
return document;
};
const getDocumentOrShadow$1 = getDocumentOrShadow;
var createEffectWithTarget = function(useEffectType) {
var useEffectWithTarget2 = function(effect, deps, target) {
var hasInitRef = React$4.useRef(false);
var lastElementRef = React$4.useRef([]);
var lastDepsRef = React$4.useRef([]);
var unLoadRef = React$4.useRef();
useEffectType(function() {
var _a;
var targets = Array.isArray(target) ? target : [target];
var els = targets.map(function(item) {
return getTargetElement(item);
});
if (!hasInitRef.current) {
hasInitRef.current = true;
lastElementRef.current = els;
lastDepsRef.current = deps;
unLoadRef.current = effect();
return;
}
if (els.length !== lastElementRef.current.length || !depsAreSame(els, lastElementRef.current) || !depsAreSame(deps, lastDepsRef.current)) {
(_a = unLoadRef.current) === null || _a === void 0 ? void 0 : _a.call(unLoadRef);
lastElementRef.current = els;
lastDepsRef.current = deps;
unLoadRef.current = effect();
}
});
useUnmount$1(function() {
var _a;
(_a = unLoadRef.current) === null || _a === void 0 ? void 0 : _a.call(unLoadRef);
hasInitRef.current = false;
});
};
return useEffectWithTarget2;
};
const createEffectWithTarget$1 = createEffectWithTarget;
var useEffectWithTarget$1 = createEffectWithTarget$1(React$4.useEffect);
const useEffectWithTarget$2 = useEffectWithTarget$1;
function useClickAway(onClickAway, target, eventName) {
if (eventName === void 0) {
eventName = "click";
}
var onClickAwayRef = useLatest(onClickAway);
useEffectWithTarget$2(function() {
var handler = function(event) {
var targets = Array.isArray(target) ? target : [target];
if (targets.some(function(item) {
var targetElement = getTargetElement(item);
return !targetElement || targetElement.contains(event.target);
})) {
return;
}
onClickAwayRef.current(event);
};
var documentOrShadow = getDocumentOrShadow$1(target);
var eventNames = Array.isArray(eventName) ? eventName : [eventName];
eventNames.forEach(function(event) {
return documentOrShadow.addEventListener(event, handler);
});
return function() {
eventNames.forEach(function(event) {
return documentOrShadow.removeEventListener(event, handler);
});
};
}, Array.isArray(eventName) ? eventName : [eventName], target);
}
var dayjs_min = { exports: {} };
(function(module2, exports3) {
!function(t, e2) {
module2.exports = e2();
}(commonjsGlobal, function() {
var t = 1e3, e2 = 6e4, n2 = 36e5, r = "millisecond", i2 = "second", s = "minute", u = "hour", a = "day", o = "week", c = "month", f = "quarter", h = "year", d = "date", l = "Invalid Date", $ = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, y = /\[([^\]]+)]|Y{1,4}