@gnwebsoft/ui 4.0.1 → 4.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +98 -74
- package/dist/chunk-BXWPG6VW.js +108 -0
- package/dist/chunk-DKD73ADK.cjs +2281 -0
- package/dist/{chunk-YUVXLOSA.cjs → chunk-DS524L7W.cjs} +3 -15
- package/dist/chunk-EOUSOGZ6.js +2281 -0
- package/dist/chunk-EYXPJMEF.cjs +108 -0
- package/dist/chunk-FYU2OIMD.js +15 -0
- package/dist/chunk-GHW77WIM.cjs +1 -1
- package/dist/chunk-GVWCGJ3F.js +140 -0
- package/dist/chunk-LUW7V5GI.cjs +15 -0
- package/dist/chunk-M3NVOZ7L.cjs +2512 -0
- package/dist/chunk-MVPLBJRK.cjs +1 -1
- package/dist/chunk-PUQIPRL2.js +467 -0
- package/dist/chunk-Y3QTSDLJ.cjs +140 -0
- package/dist/chunk-YAYXHYKC.js +2512 -0
- package/dist/core/index.cjs +3 -3
- package/dist/core/index.js +3 -3
- package/dist/hooks/index.cjs +3 -3
- package/dist/hooks/index.js +1 -1
- package/dist/i18n/index.cjs +21 -0
- package/dist/i18n/index.js +21 -0
- package/dist/index.cjs +28 -6
- package/dist/index.js +31 -9
- package/dist/types/index.cjs +1 -1
- package/dist/utils/index.cjs +5 -3
- package/dist/utils/index.js +4 -2
- package/dist/wrappers/index.cjs +8 -4
- package/dist/wrappers/index.js +8 -4
- package/package.json +7 -1
- package/dist/chunk-246MYJX6.js +0 -479
- package/dist/chunk-CE4CSA36.cjs +0 -2262
- package/dist/chunk-DJSMLHFO.js +0 -140
- package/dist/chunk-L3QQX3BK.js +0 -1596
- package/dist/chunk-NC3JINIM.cjs +0 -1596
- package/dist/chunk-R45OPW5A.js +0 -2262
- package/dist/chunk-UEBN47RB.cjs +0 -140
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// src/i18n/I18nContext.tsx
|
|
2
|
+
var _react = require('react');
|
|
3
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
4
|
+
var I18nContext = _react.createContext.call(void 0, null);
|
|
5
|
+
I18nContext.displayName = "I18nContext";
|
|
6
|
+
var NamespaceContext = _react.createContext.call(void 0,
|
|
7
|
+
null
|
|
8
|
+
);
|
|
9
|
+
NamespaceContext.displayName = "NamespaceContext";
|
|
10
|
+
function I18nProvider({
|
|
11
|
+
t,
|
|
12
|
+
currentLanguage,
|
|
13
|
+
children
|
|
14
|
+
}) {
|
|
15
|
+
const value = _react.useMemo.call(void 0,
|
|
16
|
+
() => ({
|
|
17
|
+
t,
|
|
18
|
+
currentLanguage
|
|
19
|
+
}),
|
|
20
|
+
[t, currentLanguage]
|
|
21
|
+
);
|
|
22
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, I18nContext.Provider, { value, children });
|
|
23
|
+
}
|
|
24
|
+
I18nProvider.displayName = "I18nProvider";
|
|
25
|
+
function TranslationNamespace({
|
|
26
|
+
namespace,
|
|
27
|
+
children
|
|
28
|
+
}) {
|
|
29
|
+
const parentContext = _react.useContext.call(void 0, NamespaceContext);
|
|
30
|
+
const value = _react.useMemo.call(void 0, () => {
|
|
31
|
+
const fullNamespace = parentContext ? `${parentContext.namespace}.${namespace}` : namespace;
|
|
32
|
+
return { namespace: fullNamespace };
|
|
33
|
+
}, [namespace, parentContext]);
|
|
34
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, NamespaceContext.Provider, { value, children });
|
|
35
|
+
}
|
|
36
|
+
TranslationNamespace.displayName = "TranslationNamespace";
|
|
37
|
+
function useNamespace() {
|
|
38
|
+
const context = _react.useContext.call(void 0, NamespaceContext);
|
|
39
|
+
return _optionalChain([context, 'optionalAccess', _ => _.namespace]);
|
|
40
|
+
}
|
|
41
|
+
function useI18n(namespaceOverride) {
|
|
42
|
+
const i18nContext = _react.useContext.call(void 0, I18nContext);
|
|
43
|
+
const namespaceContext = _react.useContext.call(void 0, NamespaceContext);
|
|
44
|
+
const namespace = _nullishCoalesce(namespaceOverride, () => ( _optionalChain([namespaceContext, 'optionalAccess', _2 => _2.namespace])));
|
|
45
|
+
if (!i18nContext) {
|
|
46
|
+
return {
|
|
47
|
+
t: (key) => {
|
|
48
|
+
return namespace ? `${namespace}.${key}` : key;
|
|
49
|
+
},
|
|
50
|
+
currentLanguage: void 0
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
if (namespace) {
|
|
54
|
+
return {
|
|
55
|
+
...i18nContext,
|
|
56
|
+
t: (key, options) => {
|
|
57
|
+
const prefixedKey = `${namespace}.${key}`;
|
|
58
|
+
return i18nContext.t(prefixedKey, options);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return i18nContext;
|
|
63
|
+
}
|
|
64
|
+
function resolveLabel(t, label, labelKey, namespace, contextNamespace, options) {
|
|
65
|
+
if (label !== void 0) {
|
|
66
|
+
return label;
|
|
67
|
+
}
|
|
68
|
+
if (labelKey) {
|
|
69
|
+
const effectiveNamespace = _nullishCoalesce(namespace, () => ( contextNamespace));
|
|
70
|
+
const fullKey = effectiveNamespace ? `${effectiveNamespace}.${labelKey}` : labelKey;
|
|
71
|
+
return t(fullKey, options);
|
|
72
|
+
}
|
|
73
|
+
return void 0;
|
|
74
|
+
}
|
|
75
|
+
function useFormI18n() {
|
|
76
|
+
const i18nContext = _react.useContext.call(void 0, I18nContext);
|
|
77
|
+
const namespaceContext = _react.useContext.call(void 0, NamespaceContext);
|
|
78
|
+
const contextNamespace = _optionalChain([namespaceContext, 'optionalAccess', _3 => _3.namespace]);
|
|
79
|
+
const t = _nullishCoalesce(_optionalChain([i18nContext, 'optionalAccess', _4 => _4.t]), () => ( ((key) => key)));
|
|
80
|
+
const resolve = (label, labelKey, namespaceOverride, options) => {
|
|
81
|
+
return resolveLabel(
|
|
82
|
+
t,
|
|
83
|
+
label,
|
|
84
|
+
labelKey,
|
|
85
|
+
namespaceOverride,
|
|
86
|
+
contextNamespace,
|
|
87
|
+
options
|
|
88
|
+
);
|
|
89
|
+
};
|
|
90
|
+
return {
|
|
91
|
+
t,
|
|
92
|
+
currentLanguage: _optionalChain([i18nContext, 'optionalAccess', _5 => _5.currentLanguage]),
|
|
93
|
+
namespace: contextNamespace,
|
|
94
|
+
resolveLabel: resolve
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
exports.I18nContext = I18nContext; exports.NamespaceContext = NamespaceContext; exports.I18nProvider = I18nProvider; exports.TranslationNamespace = TranslationNamespace; exports.useNamespace = useNamespace; exports.useI18n = useI18n; exports.resolveLabel = resolveLabel; exports.useFormI18n = useFormI18n;
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay1FWVhQSk1FRi5janMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSw4QkFBMEQ7QUFDMUQsK0NBQXVDO0FBQ3ZDLElBQUksWUFBWSxFQUFFLGtDQUFhLElBQUssQ0FBQztBQUNyQyxXQUFXLENBQUMsWUFBWSxFQUFFLGFBQWE7QUFDdkMsSUFBSSxpQkFBaUIsRUFBRSxrQ0FBYTtBQUNwQyxFQUFFO0FBQ0YsQ0FBQztBQUNELGdCQUFnQixDQUFDLFlBQVksRUFBRSxrQkFBa0I7QUFDakQsU0FBUyxZQUFZLENBQUM7QUFDdEIsRUFBRSxDQUFDO0FBQ0gsRUFBRSxlQUFlO0FBQ2pCLEVBQUU7QUFDRixDQUFDLEVBQUU7QUFDSCxFQUFFLE1BQU0sTUFBTSxFQUFFLDRCQUFPO0FBQ3ZCLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQztBQUNYLE1BQU0sQ0FBQztBQUNQLE1BQU07QUFDTixJQUFJLENBQUMsQ0FBQztBQUNOLElBQUksQ0FBQyxDQUFDLEVBQUUsZUFBZTtBQUN2QixFQUFFLENBQUM7QUFDSCxFQUFFLHVCQUF1Qiw2QkFBRyxXQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3ZFO0FBQ0EsWUFBWSxDQUFDLFlBQVksRUFBRSxjQUFjO0FBQ3pDLFNBQVMsb0JBQW9CLENBQUM7QUFDOUIsRUFBRSxTQUFTO0FBQ1gsRUFBRTtBQUNGLENBQUMsRUFBRTtBQUNILEVBQUUsTUFBTSxjQUFjLEVBQUUsK0JBQVUsZ0JBQWlCLENBQUM7QUFDcEQsRUFBRSxNQUFNLE1BQU0sRUFBRSw0QkFBTyxDQUFFLEVBQUUsR0FBRztBQUM5QixJQUFJLE1BQU0sY0FBYyxFQUFFLGNBQWMsRUFBRSxDQUFDLEVBQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBO0FBQ0E7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxRQUFBO0FBQ0EsTUFBQTtBQUNBLE1BQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxJQUFBO0FBQ0EsTUFBQTtBQUNBLE1BQUE7QUFDQSxRQUFBO0FBQ0EsUUFBQTtBQUNBLE1BQUE7QUFDQSxJQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQTtBQUNBO0FBQ0EsRUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBLEVBQUE7QUFDQSxFQUFBO0FBQ0EsSUFBQTtBQUNBLE1BQUE7QUFDQSxNQUFBO0FBQ0EsTUFBQTtBQUNBLE1BQUE7QUFDQSxNQUFBO0FBQ0EsTUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0EsRUFBQTtBQUNBLElBQUE7QUFDQSxJQUFBO0FBQ0EsSUFBQTtBQUNBLElBQUE7QUFDQSxFQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6IkM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay1FWVhQSk1FRi5janMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// src/utils/readValueAsDate.ts
|
|
2
|
+
function readValueAsDate(adapter, value) {
|
|
3
|
+
if (typeof value === "string") {
|
|
4
|
+
if (value === "") {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
return adapter.utils.date(value);
|
|
8
|
+
}
|
|
9
|
+
return value;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export {
|
|
13
|
+
readValueAsDate
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3V0aWxzL3JlYWRWYWx1ZUFzRGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBQaWNrZXJWYWxpZERhdGUgfSBmcm9tIFwiQG11aS94LWRhdGUtcGlja2Vyc1wiO1xuaW1wb3J0IHR5cGUgeyB1c2VMb2NhbGl6YXRpb25Db250ZXh0IH0gZnJvbSBcIkBtdWkveC1kYXRlLXBpY2tlcnMvaW50ZXJuYWxzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkVmFsdWVBc0RhdGU8VERhdGUgZXh0ZW5kcyBQaWNrZXJWYWxpZERhdGU+KFxuICBhZGFwdGVyOiBSZXR1cm5UeXBlPHR5cGVvZiB1c2VMb2NhbGl6YXRpb25Db250ZXh0PixcbiAgdmFsdWU6IHN0cmluZyB8IG51bGwgfCBURGF0ZVxuKTogVERhdGUgfCBudWxsIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuICAgIGlmICh2YWx1ZSA9PT0gXCJcIikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFkYXB0ZXIudXRpbHMuZGF0ZSh2YWx1ZSkgYXMgVERhdGU7XG4gIH1cblxuICByZXR1cm4gdmFsdWU7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBR08sU0FBUyxnQkFDZCxTQUNBLE9BQ2M7QUFDZCxNQUFJLE9BQU8sVUFBVSxVQUFVO0FBQzdCLFFBQUksVUFBVSxJQUFJO0FBQ2hCLGFBQU87QUFBQSxJQUNUO0FBRUEsV0FBTyxRQUFRLE1BQU0sS0FBSyxLQUFLO0FBQUEsRUFDakM7QUFFQSxTQUFPO0FBQ1Q7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
package/dist/chunk-GHW77WIM.cjs
CHANGED
|
@@ -69,4 +69,4 @@ function typedValues(obj) {
|
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
exports.isJsonObject = isJsonObject; exports.isJsonArray = isJsonArray; exports.isFormData = isFormData; exports.isRequestBody = isRequestBody; exports.isInputChangeEvent = isInputChangeEvent; exports.isSelectChangeEvent = isSelectChangeEvent; exports.isFormChangeEvent = isFormChangeEvent; exports.extractEventValue = extractEventValue; exports.createEventValueExtractor = createEventValueExtractor; exports.brand = brand; exports.typedKeys = typedKeys; exports.typedEntries = typedEntries; exports.typedValues = typedValues;
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay1HSFc3N1dJTS5janMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxTQUFTLFlBQVksQ0FBQyxLQUFLLEVBQUU7QUFDN0IsRUFBRSxPQUFPLE9BQU8sTUFBTSxJQUFJLFNBQVMsR0FBRyxNQUFNLElBQUksS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxXQUFXLFFBQVEsQ0FBQztBQUM3RztBQUNBLFNBQVMsV0FBVyxDQUFDLEtBQUssRUFBRTtBQUM1QixFQUFFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7QUFDN0I7QUFDQSxTQUFTLFVBQVUsQ0FBQyxLQUFLLEVBQUU7QUFDM0IsRUFBRSxPQUFPLE1BQU0sV0FBVyxRQUFRO0FBQ2xDO0FBQ0EsU0FBUyxhQUFhLENBQUMsS0FBSyxFQUFFO0FBQzlCLEVBQUUsT0FBTyxZQUFZLENBQUMsS0FBSyxFQUFFLEdBQUcsV0FBVyxDQUFDLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7QUFDdkU7QUFDQTtBQUNBO0FBQ0EsU0FBUyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUU7QUFDbkMsRUFBRSxPQUFPLE9BQU8sTUFBTSxJQUFJLFNBQVMsR0FBRyxNQUFNLElBQUksS0FBSyxHQUFHLFNBQVMsR0FBRyxNQUFNLEdBQUcsT0FBTyxLQUFLLENBQUMsT0FBTyxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssR0FBRyxRQUFRLEdBQUcsS0FBSyxDQUFDLE1BQU07QUFDaks7QUFDQSxTQUFTLG1CQUFtQixDQUFDLEtBQUssRUFBRTtBQUNwQyxFQUFFLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDO0FBQ2xDO0FBQ0EsU0FBUyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUU7QUFDbEMsRUFBRSxPQUFPLGtCQUFrQixDQUFDLEtBQUssRUFBRSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztBQUNoRTtBQUNBLFNBQVMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRTtBQUN4RCxFQUFFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsRUFBRTtBQUN2QyxJQUFJLE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLO0FBQ3BDLEVBQUU7QUFDRixFQUFFLEdBQUcsQ0FBQyxPQUFPLGFBQWEsSUFBSSxTQUFTLEdBQUcsYUFBYSxJQUFJLEtBQUssR0FBRyxTQUFTLEdBQUcsYUFBYSxHQUFHLE9BQU8sWUFBWSxDQUFDLE9BQU8sSUFBSSxTQUFTLEdBQUcsWUFBWSxDQUFDLE9BQU8sSUFBSSxLQUFLLEdBQUcsUUFBUSxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUU7QUFDMU0sSUFBSSxPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSztBQUNwQyxFQUFFO0FBQ0YsRUFBRSx3QkFBTyxZQUFhLFVBQUcsZUFBYTtBQUN0QztBQUNBLFNBQVMseUJBQXlCLENBQUMsRUFBRTtBQUNyQyxFQUFFLE9BQU8sQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLEdBQUc7QUFDeEMsSUFBSSxHQUFHLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQyxFQUFFO0FBQ2hDLE1BQU0sT0FBTyxXQUFXO0FBQ3hCLElBQUk7QUFDSixJQUFJLE9BQU8saUJBQWlCLENBQUMsWUFBWSxDQUFDO0FBQzFDLEVBQUUsQ0FBQztBQUNIO0FBQ0E7QUFDQTtBQUNBLFNBQVMsS0FBSyxDQUFDLEtBQUssRUFBRTtBQUN0QixFQUFFLE9BQU8sS0FBSztBQUNkO0FBQ0EsU0FBUyxTQUFTLENBQUMsR0FBRyxFQUFFO0FBQ3hCLEVBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztBQUN6QjtBQUNBLFNBQVMsWUFBWSxDQUFDLEdBQUcsRUFBRTtBQUMzQixFQUFFLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7QUFDNUI7QUFDQSxTQUFTLFdBQVcsQ0FBQyxHQUFHLEVBQUU7QUFDMUIsRUFBRSxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0FBQzNCO0FBQ0E7QUFDQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0YsOGdCQUFDIiwiZmlsZSI6IkM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay1HSFc3N1dJTS5janMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdfQ==
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
// src/hooks/useTransform/index.ts
|
|
2
|
+
function useTransform(options) {
|
|
3
|
+
const value = typeof options.transform?.input === "function" ? options.transform.input(options.value) : options.value;
|
|
4
|
+
const onChange = (eventOrValue, value2) => {
|
|
5
|
+
if (typeof options.transform?.output === "function") {
|
|
6
|
+
options.onChange(options.transform.output(eventOrValue, value2));
|
|
7
|
+
} else {
|
|
8
|
+
options.onChange(eventOrValue);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
return {
|
|
12
|
+
value,
|
|
13
|
+
onChange
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// src/hooks/useTransform/enhanced.ts
|
|
18
|
+
import { useCallback, useMemo } from "react";
|
|
19
|
+
var transformFactories = {
|
|
20
|
+
number: () => ({
|
|
21
|
+
input: (value) => {
|
|
22
|
+
if (value == null) return "";
|
|
23
|
+
return String(value);
|
|
24
|
+
},
|
|
25
|
+
output: (eventOrValue, _value) => {
|
|
26
|
+
let rawValue;
|
|
27
|
+
if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
|
|
28
|
+
rawValue = String(eventOrValue.target.value);
|
|
29
|
+
} else {
|
|
30
|
+
rawValue = String(eventOrValue);
|
|
31
|
+
}
|
|
32
|
+
if (rawValue === "") return null;
|
|
33
|
+
const numValue = Number(rawValue);
|
|
34
|
+
return isNaN(numValue) ? null : numValue;
|
|
35
|
+
}
|
|
36
|
+
}),
|
|
37
|
+
text: () => ({
|
|
38
|
+
input: (value) => {
|
|
39
|
+
return value ?? "";
|
|
40
|
+
},
|
|
41
|
+
output: (eventOrValue, _value) => {
|
|
42
|
+
if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
|
|
43
|
+
return eventOrValue.target.value;
|
|
44
|
+
}
|
|
45
|
+
return eventOrValue;
|
|
46
|
+
}
|
|
47
|
+
}),
|
|
48
|
+
select: () => ({
|
|
49
|
+
input: (value) => {
|
|
50
|
+
return value ?? "";
|
|
51
|
+
},
|
|
52
|
+
output: (eventOrValue, value) => {
|
|
53
|
+
if (value !== void 0) {
|
|
54
|
+
return value;
|
|
55
|
+
}
|
|
56
|
+
if (typeof eventOrValue === "object" && eventOrValue !== null && "target" in eventOrValue && typeof eventOrValue.target === "object" && eventOrValue.target !== null && "value" in eventOrValue.target) {
|
|
57
|
+
return eventOrValue.target.value;
|
|
58
|
+
}
|
|
59
|
+
return eventOrValue;
|
|
60
|
+
}
|
|
61
|
+
})
|
|
62
|
+
};
|
|
63
|
+
function getBuiltInTransform(fieldType) {
|
|
64
|
+
switch (fieldType) {
|
|
65
|
+
case "number":
|
|
66
|
+
return transformFactories.number();
|
|
67
|
+
case "text":
|
|
68
|
+
return transformFactories.text();
|
|
69
|
+
case "select":
|
|
70
|
+
case "radio":
|
|
71
|
+
return transformFactories.select();
|
|
72
|
+
default:
|
|
73
|
+
return void 0;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function useEnhancedTransform(options) {
|
|
77
|
+
const {
|
|
78
|
+
value: fieldValue,
|
|
79
|
+
onChange: fieldOnChange,
|
|
80
|
+
transform,
|
|
81
|
+
fieldType,
|
|
82
|
+
defaultValue,
|
|
83
|
+
enableWarnings
|
|
84
|
+
} = options;
|
|
85
|
+
const builtInTransform = useMemo(
|
|
86
|
+
() => fieldType ? getBuiltInTransform(fieldType) : void 0,
|
|
87
|
+
[fieldType]
|
|
88
|
+
);
|
|
89
|
+
if (enableWarnings && process.env.NODE_ENV === "development") {
|
|
90
|
+
if (transform && fieldType) {
|
|
91
|
+
console.warn(
|
|
92
|
+
"useEnhancedTransform: Both custom transform and fieldType provided. Custom transform will take precedence."
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
const transformedValue = useMemo(() => {
|
|
97
|
+
const inputTransform = transform?.input || builtInTransform?.input;
|
|
98
|
+
if (typeof inputTransform === "function") {
|
|
99
|
+
return inputTransform(fieldValue);
|
|
100
|
+
}
|
|
101
|
+
if (fieldValue == null && defaultValue !== void 0) {
|
|
102
|
+
return defaultValue;
|
|
103
|
+
}
|
|
104
|
+
return fieldValue;
|
|
105
|
+
}, [fieldValue, transform?.input, builtInTransform?.input, defaultValue]);
|
|
106
|
+
const enhancedOnChange = useCallback(
|
|
107
|
+
(eventOrValue, value) => {
|
|
108
|
+
const outputTransform = transform?.output || builtInTransform?.output;
|
|
109
|
+
if (typeof outputTransform === "function") {
|
|
110
|
+
try {
|
|
111
|
+
const transformedValue2 = outputTransform(eventOrValue, value);
|
|
112
|
+
fieldOnChange(transformedValue2);
|
|
113
|
+
} catch (error) {
|
|
114
|
+
if (enableWarnings && process.env.NODE_ENV === "development") {
|
|
115
|
+
console.error("useEnhancedTransform: Error in output transformation:", error);
|
|
116
|
+
}
|
|
117
|
+
fieldOnChange(
|
|
118
|
+
value !== void 0 ? value : eventOrValue
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
} else {
|
|
122
|
+
fieldOnChange(
|
|
123
|
+
value !== void 0 ? value : eventOrValue
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
[fieldOnChange, transform?.output, builtInTransform?.output, enableWarnings]
|
|
128
|
+
);
|
|
129
|
+
return {
|
|
130
|
+
value: transformedValue,
|
|
131
|
+
onChange: enhancedOnChange
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export {
|
|
136
|
+
useTransform,
|
|
137
|
+
transformFactories,
|
|
138
|
+
useEnhancedTransform
|
|
139
|
+
};
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2hvb2tzL3VzZVRyYW5zZm9ybS9pbmRleC50cyIsICIuLi9zcmMvaG9va3MvdXNlVHJhbnNmb3JtL2VuaGFuY2VkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgdHlwZSB7XG4gIEZpZWxkUGF0aCxcbiAgRmllbGRWYWx1ZXMsXG4gIFBhdGhWYWx1ZSxcbiAgVXNlQ29udHJvbGxlclJldHVybixcbn0gZnJvbSBcInJlYWN0LWhvb2stZm9ybVwiO1xuXG5pbXBvcnQgdHlwZSB7IEV2ZW50T3JWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlcy9ldmVudHNcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciB0aGUgdXNlVHJhbnNmb3JtIGhvb2suXG4gKlxuICogQHRlbXBsYXRlIFRGaWVsZFZhbHVlcyAtIFRoZSBmb3JtIHZhbHVlcyB0eXBlXG4gKiBAdGVtcGxhdGUgVE5hbWUgLSBUaGUgZmllbGQgbmFtZSB0eXBlXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXNlVHJhbnNmb3JtT3B0aW9uczxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSB1bmtub3duLFxuPiB7XG4gIC8qKiBUaGUgY3VycmVudCBmaWVsZCB2YWx1ZSBmcm9tIHJlYWN0LWhvb2stZm9ybSAqL1xuICB2YWx1ZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1widmFsdWVcIl07XG4gIC8qKiBUaGUgb25DaGFuZ2UgaGFuZGxlciBmcm9tIHJlYWN0LWhvb2stZm9ybSAqL1xuICBvbkNoYW5nZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1wib25DaGFuZ2VcIl07XG4gIC8qKiBPcHRpb25hbCB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbnMgKi9cbiAgdHJhbnNmb3JtPzoge1xuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybSB0aGUgZmllbGQgdmFsdWUgZm9yIGRpc3BsYXkgaW4gdGhlIGlucHV0XG4gICAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGN1cnJlbnQgZmllbGQgdmFsdWVcbiAgICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheVxuICAgICAqL1xuICAgIGlucHV0PzogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IFRWYWx1ZTtcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gdGhlIGlucHV0IGV2ZW50IGJhY2sgdG8gdGhlIGZpZWxkIHZhbHVlXG4gICAgICogQHBhcmFtIGV2ZW50IC0gVGhlIGlucHV0IGV2ZW50IHBhcmFtZXRlcnNcbiAgICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gc3RvcmUgaW4gdGhlIGZvcm1cbiAgICAgKi9cbiAgICBvdXRwdXQ/OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXR1cm4gdHlwZSBmb3IgdGhlIHVzZVRyYW5zZm9ybSBob29rLlxuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZVxuICogQHRlbXBsYXRlIFRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0eXBlXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFVzZVRyYW5zZm9ybVJldHVybjxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSB1bmtub3duLFxuPiB7XG4gIC8qKiBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheSBpbiB0aGUgaW5wdXQgKi9cbiAgdmFsdWU6IFRWYWx1ZTtcbiAgLyoqIFRoZSBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyIHdpdGggdHJhbnNmb3JtYXRpb24gYXBwbGllZCAqL1xuICBvbkNoYW5nZTogVXNlQ29udHJvbGxlclJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lPltcImZpZWxkXCJdW1wib25DaGFuZ2VcIl07XG59XG5cbi8qKlxuICogQSBob29rIGZvciB0cmFuc2Zvcm1pbmcgZm9ybSBmaWVsZCB2YWx1ZXMgYmV0d2VlbiBkaXNwbGF5IGFuZCBzdG9yYWdlIGZvcm1hdHMuXG4gKlxuICogVGhpcyBob29rIHByb3ZpZGVzIGEgd2F5IHRvIHRyYW5zZm9ybSB2YWx1ZXMgYXMgdGhleSBmbG93IGJldHdlZW4gdGhlIGZvcm0gZmllbGRcbiAqIGFuZCB0aGUgZGlzcGxheSBjb21wb25lbnQuIEl0J3MgcGFydGljdWxhcmx5IHVzZWZ1bCBmb3IgZm9ybWF0dGluZyBkYXRhIGZvciBkaXNwbGF5XG4gKiAobGlrZSBkYXRlcywgbnVtYmVycywgb3IgY29tcGxleCBvYmplY3RzKSB3aGlsZSBtYWludGFpbmluZyBhIGRpZmZlcmVudCBpbnRlcm5hbFxuICogcmVwcmVzZW50YXRpb24gaW4gdGhlIGZvcm0gc3RhdGUuXG4gKlxuICogQGV4YW1wbGVcbiAqIFRyYW5zZm9ybSBhIGRhdGUgZm9yIGRpc3BsYXk6XG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgdmFsdWUsIG9uQ2hhbmdlIH0gPSB1c2VUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6IChkYXRlKSA9PiBkYXRlID8gZm9ybWF0KGRhdGUsICd5eXl5LU1NLWRkJykgOiAnJyxcbiAqICAgICBvdXRwdXQ6IChldmVudCkgPT4gbmV3IERhdGUoZXZlbnQudGFyZ2V0LnZhbHVlKVxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBUcmFuc2Zvcm0gbnVtYmVycyB3aXRoIGZvcm1hdHRpbmc6XG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgdmFsdWUsIG9uQ2hhbmdlIH0gPSB1c2VUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6IChudW0pID0+IG51bSA/IG51bS50b0xvY2FsZVN0cmluZygpIDogJycsXG4gKiAgICAgb3V0cHV0OiAoZXZlbnQpID0+IHBhcnNlRmxvYXQoZXZlbnQudGFyZ2V0LnZhbHVlLnJlcGxhY2UoLywvZywgJycpKVxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZVxuICogQHRlbXBsYXRlIFRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0eXBlXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIHZhbHVlLCBvbkNoYW5nZSwgYW5kIHRyYW5zZm9ybSBmdW5jdGlvbnNcbiAqIEByZXR1cm5zIE9iamVjdCB3aXRoIHRyYW5zZm9ybWVkIHZhbHVlIGFuZCBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlVHJhbnNmb3JtPFxuICBURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcyA9IEZpZWxkVmFsdWVzLFxuICBUTmFtZSBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+ID0gRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4gIFRWYWx1ZSA9IHVua25vd24sXG4+KFxuICBvcHRpb25zOiBVc2VUcmFuc2Zvcm1PcHRpb25zPFRGaWVsZFZhbHVlcywgVE5hbWUsIFRWYWx1ZT5cbik6IFVzZVRyYW5zZm9ybVJldHVybjxURmllbGRWYWx1ZXMsIFROYW1lLCBUVmFsdWU+IHtcbiAgY29uc3QgdmFsdWUgPVxuICAgIHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybT8uaW5wdXQgPT09IFwiZnVuY3Rpb25cIlxuICAgICAgPyBvcHRpb25zLnRyYW5zZm9ybS5pbnB1dChvcHRpb25zLnZhbHVlKVxuICAgICAgOiBvcHRpb25zLnZhbHVlO1xuXG4gIGNvbnN0IG9uQ2hhbmdlID0gKFxuICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgKTogdm9pZCA9PiB7XG4gICAgaWYgKHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybT8ub3V0cHV0ID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIG9wdGlvbnMub25DaGFuZ2Uob3B0aW9ucy50cmFuc2Zvcm0ub3V0cHV0KGV2ZW50T3JWYWx1ZSwgdmFsdWUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUGFzcyB0aHJvdWdoIHRoZSBldmVudCBvciB2YWx1ZSBkaXJlY3RseVxuICAgICAgb3B0aW9ucy5vbkNoYW5nZShldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZSxcbiAgICBvbkNoYW5nZSxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlVHJhbnNmb3JtO1xuIiwgImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VNZW1vIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgdHlwZSB7XG4gIEZpZWxkUGF0aCxcbiAgRmllbGRWYWx1ZXMsXG4gIFBhdGhWYWx1ZSxcbiAgVXNlQ29udHJvbGxlclJldHVybixcbn0gZnJvbSBcInJlYWN0LWhvb2stZm9ybVwiO1xuXG5pbXBvcnQgdHlwZSB7IEV2ZW50T3JWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlcy9ldmVudHNcIjtcblxuLyoqXG4gKiBGaWVsZCB0eXBlcyBmb3IgYnVpbHQtaW4gdHJhbnNmb3JtYXRpb24gcGF0dGVybnNcbiAqL1xuZXhwb3J0IHR5cGUgRmllbGRUeXBlID0gJ3RleHQnIHwgJ251bWJlcicgfCAnZGF0ZScgfCAndGltZScgfCAnc2VsZWN0JyB8ICdyYWRpbyc7XG5cbi8qKlxuICogRW5oYW5jZWQgb3B0aW9ucyBmb3IgdGhlIHVzZVRyYW5zZm9ybSBob29rIHdpdGggcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uc1xuICogYW5kIGJ1aWx0LWluIGZpZWxkIHR5cGUgaGFuZGxpbmcuXG4gKlxuICogQHRlbXBsYXRlIFRGaWVsZFZhbHVlcyAtIFRoZSBmb3JtIHZhbHVlcyB0eXBlXG4gKiBAdGVtcGxhdGUgVE5hbWUgLSBUaGUgZmllbGQgbmFtZSB0eXBlXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5oYW5jZWRVc2VUcmFuc2Zvcm1PcHRpb25zPFxuICBURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcyA9IEZpZWxkVmFsdWVzLFxuICBUTmFtZSBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+ID0gRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4gIFRWYWx1ZSA9IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPixcbj4ge1xuICAvKiogVGhlIGN1cnJlbnQgZmllbGQgdmFsdWUgZnJvbSByZWFjdC1ob29rLWZvcm0gKi9cbiAgdmFsdWU6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcInZhbHVlXCJdO1xuICAvKiogVGhlIG9uQ2hhbmdlIGhhbmRsZXIgZnJvbSByZWFjdC1ob29rLWZvcm0gKi9cbiAgb25DaGFuZ2U6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcIm9uQ2hhbmdlXCJdO1xuICAvKiogT3B0aW9uYWwgdHJhbnNmb3JtYXRpb24gZnVuY3Rpb25zICovXG4gIHRyYW5zZm9ybT86IHtcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gdGhlIGZpZWxkIHZhbHVlIGZvciBkaXNwbGF5IGluIHRoZSBpbnB1dFxuICAgICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBjdXJyZW50IGZpZWxkIHZhbHVlXG4gICAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHRvIGRpc3BsYXlcbiAgICAgKi9cbiAgICBpbnB1dD86ICh2YWx1ZTogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KSA9PiBUVmFsdWU7XG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtIHRoZSBpbnB1dCBldmVudCBiYWNrIHRvIHRoZSBmaWVsZCB2YWx1ZVxuICAgICAqIEBwYXJhbSBldmVudCAtIFRoZSBpbnB1dCBldmVudCBvciB2YWx1ZVxuICAgICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSB0byBzdG9yZSBpbiB0aGUgZm9ybVxuICAgICAqL1xuICAgIG91dHB1dD86IChcbiAgICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgICB2YWx1ZT86IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPlxuICAgICkgPT4gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICB9O1xuICAvKiogQnVpbHQtaW4gZmllbGQgdHlwZSBmb3IgYXV0b21hdGljIHRyYW5zZm9ybWF0aW9uICovXG4gIGZpZWxkVHlwZT86IEZpZWxkVHlwZTtcbiAgLyoqIERlZmF1bHQgdmFsdWUgdG8gdXNlIHdoZW4gZmllbGQgdmFsdWUgaXMgbnVsbC91bmRlZmluZWQgKi9cbiAgZGVmYXVsdFZhbHVlPzogVFZhbHVlO1xuICAvKiogRW5hYmxlIGRldmVsb3BtZW50IHdhcm5pbmdzIGZvciBkZWJ1Z2dpbmcgKi9cbiAgZW5hYmxlV2FybmluZ3M/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVuaGFuY2VkIHJldHVybiB0eXBlIGZvciB0aGUgdXNlVHJhbnNmb3JtIGhvb2sgd2l0aCBzdGFibGUgcmVmZXJlbmNlc1xuICpcbiAqIEB0ZW1wbGF0ZSBURmllbGRWYWx1ZXMgLSBUaGUgZm9ybSB2YWx1ZXMgdHlwZVxuICogQHRlbXBsYXRlIFROYW1lIC0gVGhlIGZpZWxkIG5hbWUgdHlwZSAgXG4gKiBAdGVtcGxhdGUgVFZhbHVlIC0gVGhlIHRyYW5zZm9ybWVkIHZhbHVlIHR5cGVcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5oYW5jZWRVc2VUcmFuc2Zvcm1SZXR1cm48XG4gIFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzID0gRmllbGRWYWx1ZXMsXG4gIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4gPSBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPixcbiAgVFZhbHVlID0gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+LFxuPiB7XG4gIC8qKiBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdG8gZGlzcGxheSBpbiB0aGUgaW5wdXQgKG1lbW9pemVkKSAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKiogVGhlIGVuaGFuY2VkIG9uQ2hhbmdlIGhhbmRsZXIgd2l0aCB0cmFuc2Zvcm1hdGlvbiBhcHBsaWVkIChtZW1vaXplZCkgKi9cbiAgb25DaGFuZ2U6IFVzZUNvbnRyb2xsZXJSZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZT5bXCJmaWVsZFwiXVtcIm9uQ2hhbmdlXCJdO1xufVxuXG4vKipcbiAqIFRyYW5zZm9ybSBmYWN0b3JpZXMgZm9yIGNvbW1vbiBmaWVsZCB0eXBlc1xuICovXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtRmFjdG9yaWVzID0ge1xuICBudW1iZXI6IDxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcywgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPj4oKSA9PiAoe1xuICAgIGlucHV0OiAodmFsdWU6IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPikgPT4ge1xuICAgICAgaWYgKHZhbHVlID09IG51bGwpIHJldHVybiBcIlwiIGFzIHN0cmluZztcblxuICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgfSxcbiAgICBvdXRwdXQ6IChcbiAgICAgIGV2ZW50T3JWYWx1ZTogRXZlbnRPclZhbHVlPFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPj4sXG4gICAgICBfdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIGxldCByYXdWYWx1ZTogc3RyaW5nO1xuICAgICAgXG4gICAgICAvLyBFeHRyYWN0IHN0cmluZyB2YWx1ZSBmcm9tIGV2ZW50IG9yIGRpcmVjdCB2YWx1ZVxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgZXZlbnRPclZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgJ3RhcmdldCcgaW4gZXZlbnRPclZhbHVlICYmXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUudGFyZ2V0ID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUudGFyZ2V0ICE9PSBudWxsICYmXG4gICAgICAgICd2YWx1ZScgaW4gZXZlbnRPclZhbHVlLnRhcmdldFxuICAgICAgKSB7XG4gICAgICAgIHJhd1ZhbHVlID0gU3RyaW5nKChldmVudE9yVmFsdWUudGFyZ2V0IGFzIHVua25vd24gYXMgeyB2YWx1ZTogdW5rbm93biB9KS52YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByYXdWYWx1ZSA9IFN0cmluZyhldmVudE9yVmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAocmF3VmFsdWUgPT09IFwiXCIpIHJldHVybiBudWxsIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgICAgIGNvbnN0IG51bVZhbHVlID0gTnVtYmVyKHJhd1ZhbHVlKTtcblxuICAgICAgcmV0dXJuIChpc05hTihudW1WYWx1ZSkgPyBudWxsIDogbnVtVmFsdWUpIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPjtcbiAgICB9LFxuICB9KSxcblxuICB0ZXh0OiA8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4+KCkgPT4gKHtcbiAgICBpbnB1dDogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IHtcbiAgICAgIHJldHVybiAodmFsdWUgPz8gXCJcIikgYXMgc3RyaW5nO1xuICAgIH0sXG4gICAgb3V0cHV0OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgX3ZhbHVlPzogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+XG4gICAgKSA9PiB7XG4gICAgICAvLyBFeHRyYWN0IHN0cmluZyB2YWx1ZSBmcm9tIGV2ZW50IG9yIGRpcmVjdCB2YWx1ZVxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgZXZlbnRPclZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgJ3RhcmdldCcgaW4gZXZlbnRPclZhbHVlICYmXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUudGFyZ2V0ID09PSAnb2JqZWN0JyAmJlxuICAgICAgICBldmVudE9yVmFsdWUudGFyZ2V0ICE9PSBudWxsICYmXG4gICAgICAgICd2YWx1ZScgaW4gZXZlbnRPclZhbHVlLnRhcmdldFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiAoZXZlbnRPclZhbHVlLnRhcmdldCBhcyB1bmtub3duIGFzIHsgdmFsdWU6IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPiB9KS52YWx1ZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgcmV0dXJuIGV2ZW50T3JWYWx1ZSBhcyBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT47XG4gICAgfSxcbiAgfSksXG5cbiAgc2VsZWN0OiA8VEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4+KCkgPT4gKHtcbiAgICBpbnB1dDogKHZhbHVlOiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4pID0+IHtcbiAgICAgIHJldHVybiB2YWx1ZSA/PyAoXCJcIiBhcyBzdHJpbmcpO1xuICAgIH0sXG4gICAgb3V0cHV0OiAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIC8vIE1VSSBwYXR0ZXJuOiAoZXZlbnQsIHZhbHVlKSB3aGVyZSB2YWx1ZSBpcyB0aGUgYWN0dWFsIHNlbGVjdGVkIHZhbHVlXG4gICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gdmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBTdGFuZGFyZCBldmVudCBwYXR0ZXJuOiBleHRyYWN0IGZyb20gZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBldmVudE9yVmFsdWUgPT09ICdvYmplY3QnICYmXG4gICAgICAgIGV2ZW50T3JWYWx1ZSAhPT0gbnVsbCAmJlxuICAgICAgICAndGFyZ2V0JyBpbiBldmVudE9yVmFsdWUgJiZcbiAgICAgICAgdHlwZW9mIGV2ZW50T3JWYWx1ZS50YXJnZXQgPT09ICdvYmplY3QnICYmXG4gICAgICAgIGV2ZW50T3JWYWx1ZS50YXJnZXQgIT09IG51bGwgJiZcbiAgICAgICAgJ3ZhbHVlJyBpbiBldmVudE9yVmFsdWUudGFyZ2V0XG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIChldmVudE9yVmFsdWUudGFyZ2V0IGFzIHVua25vd24gYXMgeyB2YWx1ZTogUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+IH0pLnZhbHVlO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBEaXJlY3QgdmFsdWVcbiAgICAgIHJldHVybiBldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+O1xuICAgIH0sXG4gIH0pLFxufSBhcyBjb25zdDs7XG5cbi8qKlxuICogR2V0IGJ1aWx0LWluIHRyYW5zZm9ybWF0aW9uIGZvciBhIGZpZWxkIHR5cGVcbiAqL1xuZnVuY3Rpb24gZ2V0QnVpbHRJblRyYW5zZm9ybTxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsXG4gIFROYW1lIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz4sXG4+KGZpZWxkVHlwZT86IEZpZWxkVHlwZSkge1xuICBzd2l0Y2ggKGZpZWxkVHlwZSkge1xuICAgIGNhc2UgJ251bWJlcic6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtRmFjdG9yaWVzLm51bWJlcjxURmllbGRWYWx1ZXMsIFROYW1lPigpO1xuICAgIGNhc2UgJ3RleHQnOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZhY3Rvcmllcy50ZXh0PFRGaWVsZFZhbHVlcywgVE5hbWU+KCk7XG4gICAgY2FzZSAnc2VsZWN0JzpcbiAgICBjYXNlICdyYWRpbyc6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtRmFjdG9yaWVzLnNlbGVjdDxURmllbGRWYWx1ZXMsIFROYW1lPigpO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbi8qKlxuICogQW4gZW5oYW5jZWQgaG9vayBmb3IgdHJhbnNmb3JtaW5nIGZvcm0gZmllbGQgdmFsdWVzIHdpdGggcGVyZm9ybWFuY2Ugb3B0aW1pemF0aW9uc1xuICogYW5kIGJ1aWx0LWluIGZpZWxkIHR5cGUgaGFuZGxpbmcuXG4gKlxuICogVGhpcyBlbmhhbmNlZCB2ZXJzaW9uIHByb3ZpZGVzOlxuICogLSBQZXJmb3JtYW5jZSBvcHRpbWl6YXRpb25zIHdpdGggdXNlTWVtbyBhbmQgdXNlQ2FsbGJhY2tcbiAqIC0gQnVpbHQtaW4gdHJhbnNmb3JtYXRpb25zIGZvciBjb21tb24gZmllbGQgdHlwZXNcbiAqIC0gQmV0dGVyIFR5cGVTY3JpcHQgaW5mZXJlbmNlXG4gKiAtIERldmVsb3BtZW50IHdhcm5pbmdzXG4gKiAtIFN0YWJsZSByZWZlcmVuY2VzIHRvIHByZXZlbnQgdW5uZWNlc3NhcnkgcmUtcmVuZGVyc1xuICpcbiAqIEBleGFtcGxlXG4gKiBCYXNpYyB1c2FnZSB3aXRoIGJ1aWx0LWluIG51bWJlciBoYW5kbGluZzpcbiAqIGBgYHRzeFxuICogY29uc3QgeyB2YWx1ZSwgb25DaGFuZ2UgfSA9IHVzZUVuaGFuY2VkVHJhbnNmb3JtKHtcbiAqICAgdmFsdWU6IGZpZWxkLnZhbHVlLFxuICogICBvbkNoYW5nZTogZmllbGQub25DaGFuZ2UsXG4gKiAgIGZpZWxkVHlwZTogJ251bWJlcidcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQGV4YW1wbGVcbiAqIEN1c3RvbSB0cmFuc2Zvcm1hdGlvbnMgKHNhbWUgYXMgb3JpZ2luYWwpOlxuICogYGBgdHN4XG4gKiBjb25zdCB7IHZhbHVlLCBvbkNoYW5nZSB9ID0gdXNlRW5oYW5jZWRUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgdHJhbnNmb3JtOiB7XG4gKiAgICAgaW5wdXQ6ICh2YWx1ZSkgPT4gdmFsdWU/LnRvU3RyaW5nKCkgfHwgJycsXG4gKiAgICAgb3V0cHV0OiAoZXZlbnQpID0+IHBhcnNlSW50KGV2ZW50LnRhcmdldC52YWx1ZSkgfHwgbnVsbFxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlXG4gKiBXaXRoIGRlZmF1bHQgdmFsdWUgYW5kIHdhcm5pbmdzOlxuICogYGBgdHN4XG4gKiBjb25zdCB7IHZhbHVlLCBvbkNoYW5nZSB9ID0gdXNlRW5oYW5jZWRUcmFuc2Zvcm0oe1xuICogICB2YWx1ZTogZmllbGQudmFsdWUsXG4gKiAgIG9uQ2hhbmdlOiBmaWVsZC5vbkNoYW5nZSxcbiAqICAgZmllbGRUeXBlOiAndGV4dCcsXG4gKiAgIGRlZmF1bHRWYWx1ZTogJycsXG4gKiAgIGVuYWJsZVdhcm5pbmdzOiBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50J1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBAdGVtcGxhdGUgVEZpZWxkVmFsdWVzIC0gVGhlIGZvcm0gdmFsdWVzIHR5cGVcbiAqIEB0ZW1wbGF0ZSBUTmFtZSAtIFRoZSBmaWVsZCBuYW1lIHR5cGVcbiAqIEB0ZW1wbGF0ZSBUVmFsdWUgLSBUaGUgdHJhbnNmb3JtZWQgdmFsdWUgdHlwZVxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gQ29uZmlndXJhdGlvbiBvcHRpb25zIGluY2x1ZGluZyB2YWx1ZSwgb25DaGFuZ2UsIGFuZCB0cmFuc2Zvcm0gZnVuY3Rpb25zXG4gKiBAcmV0dXJucyBPYmplY3Qgd2l0aCB0cmFuc2Zvcm1lZCB2YWx1ZSBhbmQgZW5oYW5jZWQgb25DaGFuZ2UgaGFuZGxlciAoYm90aCBtZW1vaXplZClcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VFbmhhbmNlZFRyYW5zZm9ybTxcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMgPSBGaWVsZFZhbHVlcyxcbiAgVE5hbWUgZXh0ZW5kcyBGaWVsZFBhdGg8VEZpZWxkVmFsdWVzPiA9IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+LFxuICBUVmFsdWUgPSBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4sXG4+KFxuICBvcHRpb25zOiBFbmhhbmNlZFVzZVRyYW5zZm9ybU9wdGlvbnM8VEZpZWxkVmFsdWVzLCBUTmFtZSwgVFZhbHVlPlxuKTogRW5oYW5jZWRVc2VUcmFuc2Zvcm1SZXR1cm48VEZpZWxkVmFsdWVzLCBUTmFtZSwgVFZhbHVlPiB7XG4gIGNvbnN0IHsgXG4gICAgdmFsdWU6IGZpZWxkVmFsdWUsIFxuICAgIG9uQ2hhbmdlOiBmaWVsZE9uQ2hhbmdlLCBcbiAgICB0cmFuc2Zvcm0sIFxuICAgIGZpZWxkVHlwZSwgXG4gICAgZGVmYXVsdFZhbHVlLFxuICAgIGVuYWJsZVdhcm5pbmdzIFxuICB9ID0gb3B0aW9ucztcblxuICAvLyBHZXQgYnVpbHQtaW4gdHJhbnNmb3JtIGlmIGZpZWxkVHlwZSBpcyBzcGVjaWZpZWRcbiAgY29uc3QgYnVpbHRJblRyYW5zZm9ybSA9IHVzZU1lbW8oKCkgPT4gXG4gICAgZmllbGRUeXBlID8gZ2V0QnVpbHRJblRyYW5zZm9ybTxURmllbGRWYWx1ZXMsIFROYW1lPihmaWVsZFR5cGUpIDogdW5kZWZpbmVkLCBcbiAgICBbZmllbGRUeXBlXVxuICApO1xuXG4gIC8vIERldmVsb3BtZW50IHdhcm5pbmdzXG4gIGlmIChlbmFibGVXYXJuaW5ncyAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgIGlmICh0cmFuc2Zvcm0gJiYgZmllbGRUeXBlKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAndXNlRW5oYW5jZWRUcmFuc2Zvcm06IEJvdGggY3VzdG9tIHRyYW5zZm9ybSBhbmQgZmllbGRUeXBlIHByb3ZpZGVkLiBDdXN0b20gdHJhbnNmb3JtIHdpbGwgdGFrZSBwcmVjZWRlbmNlLidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWVtb2l6ZSB0aGUgdHJhbnNmb3JtZWQgZGlzcGxheSB2YWx1ZVxuICBjb25zdCB0cmFuc2Zvcm1lZFZhbHVlID0gdXNlTWVtbygoKTogVFZhbHVlID0+IHtcbiAgICBjb25zdCBpbnB1dFRyYW5zZm9ybSA9IHRyYW5zZm9ybT8uaW5wdXQgfHwgYnVpbHRJblRyYW5zZm9ybT8uaW5wdXQ7XG4gICAgXG4gICAgaWYgKHR5cGVvZiBpbnB1dFRyYW5zZm9ybSA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICByZXR1cm4gaW5wdXRUcmFuc2Zvcm0oZmllbGRWYWx1ZSkgYXMgVFZhbHVlO1xuICAgIH1cbiAgICBcbiAgICAvLyBGYWxsYmFjayB3aXRoIGRlZmF1bHQgdmFsdWUgc3VwcG9ydFxuICAgIGlmIChmaWVsZFZhbHVlID09IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBmaWVsZFZhbHVlIGFzIFRWYWx1ZTtcbiAgfSwgW2ZpZWxkVmFsdWUsIHRyYW5zZm9ybT8uaW5wdXQsIGJ1aWx0SW5UcmFuc2Zvcm0/LmlucHV0LCBkZWZhdWx0VmFsdWVdKTtcblxuICAvLyBNZW1vaXplIHRoZSBlbmhhbmNlZCBvbkNoYW5nZSBoYW5kbGVyXG4gIGNvbnN0IGVuaGFuY2VkT25DaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICBldmVudE9yVmFsdWU6IEV2ZW50T3JWYWx1ZTxQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT4+LFxuICAgICAgdmFsdWU/OiBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBUTmFtZT5cbiAgICApID0+IHtcbiAgICAgIGNvbnN0IG91dHB1dFRyYW5zZm9ybSA9IHRyYW5zZm9ybT8ub3V0cHV0IHx8IGJ1aWx0SW5UcmFuc2Zvcm0/Lm91dHB1dDtcbiAgICAgIFxuICAgICAgaWYgKHR5cGVvZiBvdXRwdXRUcmFuc2Zvcm0gPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIEhhbmRsZSBib3RoIHNpZ25hdHVyZXM6IG9sZCAoZXZlbnQgb25seSkgYW5kIG5ldyAoZXZlbnQsIHZhbHVlKVxuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybWVkVmFsdWUgPSAob3V0cHV0VHJhbnNmb3JtIGFzIChlOiBFdmVudE9yVmFsdWU8UGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+Piwgdj86IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPikgPT4gUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+KShldmVudE9yVmFsdWUsIHZhbHVlKTtcblxuICAgICAgICAgIGZpZWxkT25DaGFuZ2UodHJhbnNmb3JtZWRWYWx1ZSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgaWYgKGVuYWJsZVdhcm5pbmdzICYmIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgY29uc29sZS5lcnJvcigndXNlRW5oYW5jZWRUcmFuc2Zvcm06IEVycm9yIGluIG91dHB1dCB0cmFuc2Zvcm1hdGlvbjonLCBlcnJvcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gRmFsbGJhY2sgdG8gZGlyZWN0IHZhbHVlIG9yIGZpcnN0IGFyZ3VtZW50XG4gICAgICAgICAgZmllbGRPbkNoYW5nZShcbiAgICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQgXG4gICAgICAgICAgICAgID8gdmFsdWUgXG4gICAgICAgICAgICAgIDogZXZlbnRPclZhbHVlIGFzIFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFROYW1lPlxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE5vIHRyYW5zZm9ybSwgcGFzcyB0aHJvdWdoIHRoZSB2YWx1ZSBvciBldmVudFxuICAgICAgICBmaWVsZE9uQ2hhbmdlKFxuICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQgXG4gICAgICAgICAgICA/IHZhbHVlIFxuICAgICAgICAgICAgOiBldmVudE9yVmFsdWUgYXMgUGF0aFZhbHVlPFRGaWVsZFZhbHVlcywgVE5hbWU+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbZmllbGRPbkNoYW5nZSwgdHJhbnNmb3JtPy5vdXRwdXQsIGJ1aWx0SW5UcmFuc2Zvcm0/Lm91dHB1dCwgZW5hYmxlV2FybmluZ3NdXG4gICk7XG5cbiAgcmV0dXJuIHtcbiAgICB2YWx1ZTogdHJhbnNmb3JtZWRWYWx1ZSxcbiAgICBvbkNoYW5nZTogZW5oYW5jZWRPbkNoYW5nZSxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlRW5oYW5jZWRUcmFuc2Zvcm07Il0sCiAgIm1hcHBpbmdzIjogIjtBQThHTyxTQUFTLGFBS2QsU0FDaUQ7QUFDakQsUUFBTSxRQUNKLE9BQU8sUUFBUSxXQUFXLFVBQVUsYUFDaEMsUUFBUSxVQUFVLE1BQU0sUUFBUSxLQUFLLElBQ3JDLFFBQVE7QUFFZCxRQUFNLFdBQVcsQ0FDZixjQUNBQSxXQUNTO0FBQ1QsUUFBSSxPQUFPLFFBQVEsV0FBVyxXQUFXLFlBQVk7QUFDbkQsY0FBUSxTQUFTLFFBQVEsVUFBVSxPQUFPLGNBQWNB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
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/utils/readValueAsDate.ts
|
|
2
|
+
function readValueAsDate(adapter, value) {
|
|
3
|
+
if (typeof value === "string") {
|
|
4
|
+
if (value === "") {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
return adapter.utils.date(value);
|
|
8
|
+
}
|
|
9
|
+
return value;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
exports.readValueAsDate = readValueAsDate;
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImM6XFxVdHRhbVxcUHJvamVjdHNcXEdOV2ViU29mdC5VSVxccGFja2FnZXNcXHVpXFxkaXN0XFxjaHVuay1MVVc3VjVHSS5janMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxTQUFTLGVBQWUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFO0FBQ3pDLEVBQUUsR0FBRyxDQUFDLE9BQU8sTUFBTSxJQUFJLFFBQVEsRUFBRTtBQUNqQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFO0FBQ3RCLE1BQU0sT0FBTyxJQUFJO0FBQ2pCLElBQUk7QUFDSixJQUFJLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0FBQ3BDLEVBQUU7QUFDRixFQUFFLE9BQU8sS0FBSztBQUNkO0FBQ0E7QUFDQTtBQUNFO0FBQ0YsMENBQUMiLCJmaWxlIjoiQzpcXFV0dGFtXFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXGNodW5rLUxVVzdWNUdJLmNqcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF19
|