@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.
@@ -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==
@@ -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImQ6XFxQcm9qZWN0c1xcR05XZWJTb2Z0LlVJXFxwYWNrYWdlc1xcdWlcXGRpc3RcXGNodW5rLUdIVzc3V0lNLmNqcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBLFNBQVMsWUFBWSxDQUFDLEtBQUssRUFBRTtBQUM3QixFQUFFLE9BQU8sT0FBTyxNQUFNLElBQUksU0FBUyxHQUFHLE1BQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxNQUFNLFdBQVcsUUFBUSxDQUFDO0FBQzdHO0FBQ0EsU0FBUyxXQUFXLENBQUMsS0FBSyxFQUFFO0FBQzVCLEVBQUUsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztBQUM3QjtBQUNBLFNBQVMsVUFBVSxDQUFDLEtBQUssRUFBRTtBQUMzQixFQUFFLE9BQU8sTUFBTSxXQUFXLFFBQVE7QUFDbEM7QUFDQSxTQUFTLGFBQWEsQ0FBQyxLQUFLLEVBQUU7QUFDOUIsRUFBRSxPQUFPLFlBQVksQ0FBQyxLQUFLLEVBQUUsR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztBQUN2RTtBQUNBO0FBQ0E7QUFDQSxTQUFTLGtCQUFrQixDQUFDLEtBQUssRUFBRTtBQUNuQyxFQUFFLE9BQU8sT0FBTyxNQUFNLElBQUksU0FBUyxHQUFHLE1BQU0sSUFBSSxLQUFLLEdBQUcsU0FBUyxHQUFHLE1BQU0sR0FBRyxPQUFPLEtBQUssQ0FBQyxPQUFPLElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxHQUFHLFFBQVEsR0FBRyxLQUFLLENBQUMsTUFBTTtBQUNqSztBQUNBLFNBQVMsbUJBQW1CLENBQUMsS0FBSyxFQUFFO0FBQ3BDLEVBQUUsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7QUFDbEM7QUFDQSxTQUFTLGlCQUFpQixDQUFDLEtBQUssRUFBRTtBQUNsQyxFQUFFLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxFQUFFLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO0FBQ2hFO0FBQ0EsU0FBUyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFO0FBQ3hELEVBQUUsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxFQUFFO0FBQ3ZDLElBQUksT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUs7QUFDcEMsRUFBRTtBQUNGLEVBQUUsR0FBRyxDQUFDLE9BQU8sYUFBYSxJQUFJLFNBQVMsR0FBRyxhQUFhLElBQUksS0FBSyxHQUFHLFNBQVMsR0FBRyxhQUFhLEdBQUcsT0FBTyxZQUFZLENBQUMsT0FBTyxJQUFJLFNBQVMsR0FBRyxZQUFZLENBQUMsT0FBTyxJQUFJLEtBQUssR0FBRyxRQUFRLEdBQUcsWUFBWSxDQUFDLE1BQU0sRUFBRTtBQUMxTSxJQUFJLE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLO0FBQ3BDLEVBQUU7QUFDRixFQUFFLHdCQUFPLFlBQWEsVUFBRyxlQUFhO0FBQ3RDO0FBQ0EsU0FBUyx5QkFBeUIsQ0FBQyxFQUFFO0FBQ3JDLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsR0FBRztBQUN4QyxJQUFJLEdBQUcsQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLEVBQUU7QUFDaEMsTUFBTSxPQUFPLFdBQVc7QUFDeEIsSUFBSTtBQUNKLElBQUksT0FBTyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7QUFDMUMsRUFBRSxDQUFDO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsU0FBUyxLQUFLLENBQUMsS0FBSyxFQUFFO0FBQ3RCLEVBQUUsT0FBTyxLQUFLO0FBQ2Q7QUFDQSxTQUFTLFNBQVMsQ0FBQyxHQUFHLEVBQUU7QUFDeEIsRUFBRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO0FBQ3pCO0FBQ0EsU0FBUyxZQUFZLENBQUMsR0FBRyxFQUFFO0FBQzNCLEVBQUUsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztBQUM1QjtBQUNBLFNBQVMsV0FBVyxDQUFDLEdBQUcsRUFBRTtBQUMxQixFQUFFLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7QUFDM0I7QUFDQTtBQUNBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRiw4Z0JBQUMiLCJmaWxlIjoiRDpcXFByb2plY3RzXFxHTldlYlNvZnQuVUlcXHBhY2thZ2VzXFx1aVxcZGlzdFxcY2h1bmstR0hXNzdXSU0uY2pzIiwic291cmNlc0NvbnRlbnQiOltudWxsXX0=
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