@hitachivantara/uikit-react-lab 3.51.8 → 3.52.0
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/dist/QueryBuilder/Context.js +2 -1
- package/dist/QueryBuilder/Context.js.map +1 -1
- package/dist/QueryBuilder/QueryBuilder.d.ts +4 -0
- package/dist/QueryBuilder/QueryBuilder.js +11 -3
- package/dist/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
- package/dist/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
- package/dist/QueryBuilder/Rule/Operator/Operator.js +3 -1
- package/dist/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
- package/dist/QueryBuilder/Rule/Rule.js +9 -5
- package/dist/QueryBuilder/Rule/Rule.js.map +1 -1
- package/dist/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
- package/dist/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
- package/dist/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
- package/dist/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
- package/dist/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
- package/dist/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
- package/dist/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
- package/dist/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
- package/dist/QueryBuilder/RuleGroup/RuleGroup.js +30 -12
- package/dist/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
- package/dist/QueryBuilder/RuleGroup/styles.js +3 -0
- package/dist/QueryBuilder/RuleGroup/styles.js.map +1 -1
- package/dist/legacy/QueryBuilder/Context.js +2 -1
- package/dist/legacy/QueryBuilder/Context.js.map +1 -1
- package/dist/legacy/QueryBuilder/QueryBuilder.d.ts +4 -0
- package/dist/legacy/QueryBuilder/QueryBuilder.js +11 -3
- package/dist/legacy/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
- package/dist/legacy/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Operator/Operator.js +3 -1
- package/dist/legacy/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Rule.js +9 -5
- package/dist/legacy/QueryBuilder/Rule/Rule.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
- package/dist/legacy/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
- package/dist/legacy/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
- package/dist/legacy/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
- package/dist/legacy/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
- package/dist/legacy/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
- package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js +28 -10
- package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
- package/dist/legacy/QueryBuilder/RuleGroup/styles.js +3 -0
- package/dist/legacy/QueryBuilder/RuleGroup/styles.js.map +1 -1
- package/dist/modern/QueryBuilder/Context.js +2 -1
- package/dist/modern/QueryBuilder/Context.js.map +1 -1
- package/dist/modern/QueryBuilder/QueryBuilder.d.ts +4 -0
- package/dist/modern/QueryBuilder/QueryBuilder.js +10 -3
- package/dist/modern/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
- package/dist/modern/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Operator/Operator.js +3 -1
- package/dist/modern/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Rule.js +9 -5
- package/dist/modern/QueryBuilder/Rule/Rule.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
- package/dist/modern/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
- package/dist/modern/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
- package/dist/modern/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
- package/dist/modern/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
- package/dist/modern/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
- package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js +28 -10
- package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
- package/dist/modern/QueryBuilder/RuleGroup/styles.js +3 -0
- package/dist/modern/QueryBuilder/RuleGroup/styles.js.map +1 -1
- package/package.json +3 -3
|
@@ -59,7 +59,8 @@ var NumericValue = function NumericValue(_ref) {
|
|
|
59
59
|
var context = _react.default.useContext(_Context.default);
|
|
60
60
|
|
|
61
61
|
var labels = context.labels,
|
|
62
|
-
dispatchAction = context.dispatchAction
|
|
62
|
+
dispatchAction = context.dispatchAction,
|
|
63
|
+
readOnly = context.readOnly;
|
|
63
64
|
var onSingleValueChange = (0, _react.useCallback)(function (evt, data) {
|
|
64
65
|
var numericData = (0, _isEmpty.default)(data) ? null : Number(data);
|
|
65
66
|
dispatchAction({
|
|
@@ -173,7 +174,8 @@ var NumericValue = function NumericValue(_ref) {
|
|
|
173
174
|
inputProps: {
|
|
174
175
|
autoComplete: "off"
|
|
175
176
|
},
|
|
176
|
-
placeholder: labels.rule.value.numeric.placeholder
|
|
177
|
+
placeholder: labels.rule.value.numeric.placeholder,
|
|
178
|
+
readOnly: readOnly
|
|
177
179
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
178
180
|
className: classes.inputContainer
|
|
179
181
|
}, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvInput, {
|
|
@@ -199,7 +201,8 @@ var NumericValue = function NumericValue(_ref) {
|
|
|
199
201
|
inputProps: {
|
|
200
202
|
autoComplete: "off"
|
|
201
203
|
},
|
|
202
|
-
placeholder: labels.rule.value.numeric.placeholder
|
|
204
|
+
placeholder: labels.rule.value.numeric.placeholder,
|
|
205
|
+
readOnly: readOnly
|
|
203
206
|
})));
|
|
204
207
|
};
|
|
205
208
|
|
|
@@ -228,7 +231,8 @@ var NumericValue = function NumericValue(_ref) {
|
|
|
228
231
|
autoComplete: "off"
|
|
229
232
|
},
|
|
230
233
|
placeholder: labels.rule.value.numeric.placeholder,
|
|
231
|
-
statusMessage: labels.rule.value.numeric.validation[numericValidation] || ""
|
|
234
|
+
statusMessage: labels.rule.value.numeric.validation[numericValidation] || "",
|
|
235
|
+
readOnly: readOnly
|
|
232
236
|
})));
|
|
233
237
|
};
|
|
234
238
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumericValue.js","names":["NumericValue","id","value","operator","initialTouched","classes","useStyles","isRange","context","React","useContext","Context","labels","dispatchAction","onSingleValueChange","useCallback","evt","data","numericData","isEmpty","Number","type","isNaN","onRangeValueChange","from","currentValue","numericRange","to","useState","touchedNumeric","setTouchedNumeric","touchedNumericTo","setTouchedNumericTo","elementId","uniqueId","numericValidation","rightValidation","undefined","toString","rangeValue","numericStatus","rightStatus","renderRangeInputs","rangeContainer","inputContainer","rule","numeric","range","leftLabel","input","event","e","key","preventDefault","validation","autoComplete","placeholder","rightLabel","root","label","propTypes","PropTypes","number","any","string","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/NumericValue/NumericValue.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport uniqueId from \"lodash/uniqueId\";\nimport isEmpty from \"lodash/isEmpty\";\n\nimport { HvInput } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport useStyles from \"./styles\";\n\nconst NumericValue = ({ id, value, operator, initialTouched = false }) => {\n const classes = useStyles();\n const isRange = operator === \"range\";\n const context = React.useContext(Context);\n const { labels, dispatchAction } = context;\n\n const onSingleValueChange = useCallback(\n (evt, data) => {\n const numericData = isEmpty(data) ? null : Number(data);\n dispatchAction({\n type: \"set-value\",\n id,\n value: Number.isNaN(numericData) ? data : numericData,\n });\n },\n [dispatchAction, id]\n );\n\n const onRangeValueChange = useCallback(\n (evt, data, from = true) => {\n const numericData = isEmpty(data) ? null : Number(data);\n const currentValue = value;\n const numericRange = {\n from: currentValue?.from,\n to: currentValue?.to,\n };\n if (from) {\n numericRange.from = Number.isNaN(numericData) ? data : numericData;\n } else {\n numericRange.to = Number.isNaN(numericData) ? data : numericData;\n }\n dispatchAction({\n type: \"set-value\",\n id,\n value: numericRange,\n });\n },\n [dispatchAction, id, value]\n );\n\n const [touchedNumeric, setTouchedNumeric] = useState(initialTouched);\n const [touchedNumericTo, setTouchedNumericTo] = useState(initialTouched);\n\n const elementId = uniqueId(\"numeric\");\n\n let numericValidation = null;\n let rightValidation = null;\n\n if (touchedNumeric || touchedNumericTo) {\n if (value === undefined || value?.toString() === \"\") {\n if (touchedNumeric) {\n numericValidation = \"required\";\n }\n if (touchedNumericTo) {\n rightValidation = \"required\";\n }\n } else if (!isRange) {\n if (Number.isNaN(Number(value))) {\n numericValidation = \"invalid\";\n }\n } else if (isRange) {\n const rangeValue = value;\n if (rangeValue?.from === undefined || rangeValue?.from?.toString() === \"\") {\n numericValidation = \"required\";\n } else if (Number.isNaN(Number(rangeValue?.from))) {\n numericValidation = \"invalid\";\n }\n\n if (rangeValue?.to === undefined || rangeValue?.to?.toString() === \"\") {\n rightValidation = \"required\";\n } else if (Number.isNaN(Number(rangeValue?.to))) {\n rightValidation = \"invalid\";\n } else if (Number(rangeValue?.from) > Number(rangeValue?.to)) {\n rightValidation = \"greaterThan\";\n } else if (Number(rangeValue?.from) === Number(rangeValue?.to)) {\n rightValidation = \"equal\";\n }\n }\n }\n\n const numericStatus = numericValidation != null ? \"invalid\" : \"valid\";\n const rightStatus = rightValidation != null ? \"invalid\" : \"valid\";\n\n const renderRangeInputs = (rangeValue) => (\n <div className={classes.rangeContainer}>\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.range.leftLabel}\n className={classes.input}\n id={`${elementId}-numeric-from`}\n name={`${elementId}-numeric-from`}\n value={rangeValue?.from?.toString() || \"\"}\n onChange={(event, data) => onRangeValueChange(event, data)}\n onBlur={() => {\n setTouchedNumeric(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumeric ? \"standBy\" : numericStatus}\n statusMessage={labels.rule.value.numeric.validation[numericValidation] || \"\"}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n />\n </div>\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.range.rightLabel}\n className={classes.input}\n id={`${elementId}-numeric-to`}\n name={`${elementId}-numeric-to`}\n value={rangeValue?.to?.toString() || \"\"}\n onChange={(event, data) => onRangeValueChange(event, data, false)}\n onBlur={() => {\n setTouchedNumericTo(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumericTo ? \"standBy\" : rightStatus}\n statusMessage={labels.rule.value.numeric.validation[rightValidation] || \"\"}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n />\n </div>\n </div>\n );\n\n return (\n <div className={classes.root}>\n {isRange && renderRangeInputs(value || {})}\n {!isRange && (\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.label}\n className={classes.input}\n id={`${elementId}-numeric`}\n name={`${elementId}-numeric`}\n value={value ? value.toString() : \"\"}\n onChange={onSingleValueChange}\n onBlur={() => {\n setTouchedNumeric(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumeric ? \"standBy\" : numericStatus}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n statusMessage={labels.rule.value.numeric.validation[numericValidation] || \"\"}\n />\n </div>\n )}\n </div>\n );\n};\n\nNumericValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.any,\n operator: PropTypes.string,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(NumericValue);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NumericValue.js","names":["NumericValue","id","value","operator","initialTouched","classes","useStyles","isRange","context","React","useContext","Context","labels","dispatchAction","readOnly","onSingleValueChange","useCallback","evt","data","numericData","isEmpty","Number","type","isNaN","onRangeValueChange","from","currentValue","numericRange","to","useState","touchedNumeric","setTouchedNumeric","touchedNumericTo","setTouchedNumericTo","elementId","uniqueId","numericValidation","rightValidation","undefined","toString","rangeValue","numericStatus","rightStatus","renderRangeInputs","rangeContainer","inputContainer","rule","numeric","range","leftLabel","input","event","e","key","preventDefault","validation","autoComplete","placeholder","rightLabel","root","label","propTypes","PropTypes","number","any","string","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/NumericValue/NumericValue.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport uniqueId from \"lodash/uniqueId\";\nimport isEmpty from \"lodash/isEmpty\";\n\nimport { HvInput } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport useStyles from \"./styles\";\n\nconst NumericValue = ({ id, value, operator, initialTouched = false }) => {\n const classes = useStyles();\n const isRange = operator === \"range\";\n const context = React.useContext(Context);\n const { labels, dispatchAction, readOnly } = context;\n\n const onSingleValueChange = useCallback(\n (evt, data) => {\n const numericData = isEmpty(data) ? null : Number(data);\n dispatchAction({\n type: \"set-value\",\n id,\n value: Number.isNaN(numericData) ? data : numericData,\n });\n },\n [dispatchAction, id]\n );\n\n const onRangeValueChange = useCallback(\n (evt, data, from = true) => {\n const numericData = isEmpty(data) ? null : Number(data);\n const currentValue = value;\n const numericRange = {\n from: currentValue?.from,\n to: currentValue?.to,\n };\n if (from) {\n numericRange.from = Number.isNaN(numericData) ? data : numericData;\n } else {\n numericRange.to = Number.isNaN(numericData) ? data : numericData;\n }\n dispatchAction({\n type: \"set-value\",\n id,\n value: numericRange,\n });\n },\n [dispatchAction, id, value]\n );\n\n const [touchedNumeric, setTouchedNumeric] = useState(initialTouched);\n const [touchedNumericTo, setTouchedNumericTo] = useState(initialTouched);\n\n const elementId = uniqueId(\"numeric\");\n\n let numericValidation = null;\n let rightValidation = null;\n\n if (touchedNumeric || touchedNumericTo) {\n if (value === undefined || value?.toString() === \"\") {\n if (touchedNumeric) {\n numericValidation = \"required\";\n }\n if (touchedNumericTo) {\n rightValidation = \"required\";\n }\n } else if (!isRange) {\n if (Number.isNaN(Number(value))) {\n numericValidation = \"invalid\";\n }\n } else if (isRange) {\n const rangeValue = value;\n if (rangeValue?.from === undefined || rangeValue?.from?.toString() === \"\") {\n numericValidation = \"required\";\n } else if (Number.isNaN(Number(rangeValue?.from))) {\n numericValidation = \"invalid\";\n }\n\n if (rangeValue?.to === undefined || rangeValue?.to?.toString() === \"\") {\n rightValidation = \"required\";\n } else if (Number.isNaN(Number(rangeValue?.to))) {\n rightValidation = \"invalid\";\n } else if (Number(rangeValue?.from) > Number(rangeValue?.to)) {\n rightValidation = \"greaterThan\";\n } else if (Number(rangeValue?.from) === Number(rangeValue?.to)) {\n rightValidation = \"equal\";\n }\n }\n }\n\n const numericStatus = numericValidation != null ? \"invalid\" : \"valid\";\n const rightStatus = rightValidation != null ? \"invalid\" : \"valid\";\n\n const renderRangeInputs = (rangeValue) => (\n <div className={classes.rangeContainer}>\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.range.leftLabel}\n className={classes.input}\n id={`${elementId}-numeric-from`}\n name={`${elementId}-numeric-from`}\n value={rangeValue?.from?.toString() || \"\"}\n onChange={(event, data) => onRangeValueChange(event, data)}\n onBlur={() => {\n setTouchedNumeric(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumeric ? \"standBy\" : numericStatus}\n statusMessage={labels.rule.value.numeric.validation[numericValidation] || \"\"}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n readOnly={readOnly}\n />\n </div>\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.range.rightLabel}\n className={classes.input}\n id={`${elementId}-numeric-to`}\n name={`${elementId}-numeric-to`}\n value={rangeValue?.to?.toString() || \"\"}\n onChange={(event, data) => onRangeValueChange(event, data, false)}\n onBlur={() => {\n setTouchedNumericTo(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumericTo ? \"standBy\" : rightStatus}\n statusMessage={labels.rule.value.numeric.validation[rightValidation] || \"\"}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n readOnly={readOnly}\n />\n </div>\n </div>\n );\n\n return (\n <div className={classes.root}>\n {isRange && renderRangeInputs(value || {})}\n {!isRange && (\n <div className={classes.inputContainer}>\n <HvInput\n label={labels.rule.value.numeric.label}\n className={classes.input}\n id={`${elementId}-numeric`}\n name={`${elementId}-numeric`}\n value={value ? value.toString() : \"\"}\n onChange={onSingleValueChange}\n onBlur={() => {\n setTouchedNumeric(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n status={!touchedNumeric ? \"standBy\" : numericStatus}\n required\n inputProps={{\n autoComplete: \"off\",\n }}\n placeholder={labels.rule.value.numeric.placeholder}\n statusMessage={labels.rule.value.numeric.validation[numericValidation] || \"\"}\n readOnly={readOnly}\n />\n </div>\n )}\n </div>\n );\n};\n\nNumericValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.any,\n operator: PropTypes.string,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(NumericValue);\n"],"mappings":"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"}
|
|
@@ -52,7 +52,8 @@ var TextValue = function TextValue(_ref) {
|
|
|
52
52
|
var context = _react.default.useContext(_Context.default);
|
|
53
53
|
|
|
54
54
|
var labels = context.labels,
|
|
55
|
-
dispatchAction = context.dispatchAction
|
|
55
|
+
dispatchAction = context.dispatchAction,
|
|
56
|
+
readOnly = context.readOnly;
|
|
56
57
|
|
|
57
58
|
var _useState = (0, _react.useState)(initialTouched),
|
|
58
59
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
@@ -87,7 +88,8 @@ var TextValue = function TextValue(_ref) {
|
|
|
87
88
|
e.preventDefault();
|
|
88
89
|
}
|
|
89
90
|
},
|
|
90
|
-
placeholder: "\u2014"
|
|
91
|
+
placeholder: "\u2014",
|
|
92
|
+
readOnly: readOnly
|
|
91
93
|
});
|
|
92
94
|
};
|
|
93
95
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextValue.js","names":["TextValue","id","value","initialTouched","classes","useStyles","context","React","useContext","Context","labels","dispatchAction","useState","touched","setTouched","isValid","toString","trim","status","location","rule","text","label","validation","required","autoComplete","t","v","type","e","key","preventDefault","propTypes","PropTypes","number","any","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/TextValue/TextValue.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvInput } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport useStyles from \"./styles\";\n\nconst TextValue = ({ id, value = \"\", initialTouched = false }) => {\n const classes = useStyles();\n const context = React.useContext(Context);\n const { labels, dispatchAction } = context;\n const [touched, setTouched] = useState(initialTouched);\n const isValid = value != null && value.toString().trim() !== \"\";\n\n let status = isValid ? \"valid\" : \"invalid\";\n status = !touched ? \"standBy\" : status;\n\n return (\n <HvInput\n className={classes.location}\n label={labels.rule.value.text.label}\n required\n status={status}\n statusMessage={labels.rule.value.text.validation.required}\n value={value}\n inputProps={{\n autoComplete: \"off\",\n }}\n onChange={(t, v) => {\n dispatchAction({\n type: \"set-value\",\n id,\n value: v,\n });\n }}\n onBlur={() => {\n setTouched(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n placeholder=\"—\"\n />\n );\n};\n\nTextValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.any,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(TextValue);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAAgD;EAAA,IAA7CC,EAA6C,QAA7CA,EAA6C;EAAA,sBAAzCC,KAAyC;EAAA,IAAzCA,KAAyC,2BAAjC,EAAiC;EAAA,+BAA7BC,cAA6B;EAAA,IAA7BA,cAA6B,oCAAZ,KAAY;EAChE,IAAMC,OAAO,GAAG,IAAAC,eAAA,GAAhB;;EACA,IAAMC,OAAO,GAAGC,cAAA,CAAMC,UAAN,CAAiBC,gBAAjB,CAAhB;;EACA,IAAQC,MAAR,
|
|
1
|
+
{"version":3,"file":"TextValue.js","names":["TextValue","id","value","initialTouched","classes","useStyles","context","React","useContext","Context","labels","dispatchAction","readOnly","useState","touched","setTouched","isValid","toString","trim","status","location","rule","text","label","validation","required","autoComplete","t","v","type","e","key","preventDefault","propTypes","PropTypes","number","any","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/TextValue/TextValue.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvInput } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport useStyles from \"./styles\";\n\nconst TextValue = ({ id, value = \"\", initialTouched = false }) => {\n const classes = useStyles();\n const context = React.useContext(Context);\n const { labels, dispatchAction, readOnly } = context;\n const [touched, setTouched] = useState(initialTouched);\n const isValid = value != null && value.toString().trim() !== \"\";\n\n let status = isValid ? \"valid\" : \"invalid\";\n status = !touched ? \"standBy\" : status;\n\n return (\n <HvInput\n className={classes.location}\n label={labels.rule.value.text.label}\n required\n status={status}\n statusMessage={labels.rule.value.text.validation.required}\n value={value}\n inputProps={{\n autoComplete: \"off\",\n }}\n onChange={(t, v) => {\n dispatchAction({\n type: \"set-value\",\n id,\n value: v,\n });\n }}\n onBlur={() => {\n setTouched(true);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n }\n }}\n placeholder=\"—\"\n readOnly={readOnly}\n />\n );\n};\n\nTextValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.any,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(TextValue);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAAgD;EAAA,IAA7CC,EAA6C,QAA7CA,EAA6C;EAAA,sBAAzCC,KAAyC;EAAA,IAAzCA,KAAyC,2BAAjC,EAAiC;EAAA,+BAA7BC,cAA6B;EAAA,IAA7BA,cAA6B,oCAAZ,KAAY;EAChE,IAAMC,OAAO,GAAG,IAAAC,eAAA,GAAhB;;EACA,IAAMC,OAAO,GAAGC,cAAA,CAAMC,UAAN,CAAiBC,gBAAjB,CAAhB;;EACA,IAAQC,MAAR,GAA6CJ,OAA7C,CAAQI,MAAR;EAAA,IAAgBC,cAAhB,GAA6CL,OAA7C,CAAgBK,cAAhB;EAAA,IAAgCC,QAAhC,GAA6CN,OAA7C,CAAgCM,QAAhC;;EACA,gBAA8B,IAAAC,eAAA,EAASV,cAAT,CAA9B;EAAA;EAAA,IAAOW,OAAP;EAAA,IAAgBC,UAAhB;;EACA,IAAMC,OAAO,GAAGd,KAAK,IAAI,IAAT,IAAiBA,KAAK,CAACe,QAAN,GAAiBC,IAAjB,OAA4B,EAA7D;EAEA,IAAIC,MAAM,GAAGH,OAAO,GAAG,OAAH,GAAa,SAAjC;EACAG,MAAM,GAAG,CAACL,OAAD,GAAW,SAAX,GAAuBK,MAAhC;EAEA,oBACE,6BAAC,uBAAD;IACE,SAAS,EAAEf,OAAO,CAACgB,QADrB;IAEE,KAAK,EAAEV,MAAM,CAACW,IAAP,CAAYnB,KAAZ,CAAkBoB,IAAlB,CAAuBC,KAFhC;IAGE,QAAQ,MAHV;IAIE,MAAM,EAAEJ,MAJV;IAKE,aAAa,EAAET,MAAM,CAACW,IAAP,CAAYnB,KAAZ,CAAkBoB,IAAlB,CAAuBE,UAAvB,CAAkCC,QALnD;IAME,KAAK,EAAEvB,KANT;IAOE,UAAU,EAAE;MACVwB,YAAY,EAAE;IADJ,CAPd;IAUE,QAAQ,EAAE,kBAACC,CAAD,EAAIC,CAAJ,EAAU;MAClBjB,cAAc,CAAC;QACbkB,IAAI,EAAE,WADO;QAEb5B,EAAE,EAAFA,EAFa;QAGbC,KAAK,EAAE0B;MAHM,CAAD,CAAd;IAKD,CAhBH;IAiBE,MAAM,EAAE,kBAAM;MACZb,UAAU,CAAC,IAAD,CAAV;IACD,CAnBH;IAoBE,SAAS,EAAE,mBAACe,CAAD,EAAO;MAChB,IAAIA,CAAC,CAACC,GAAF,KAAU,OAAd,EAAuB;QACrBD,CAAC,CAACE,cAAF;MACD;IACF,CAxBH;IAyBE,WAAW,EAAC,QAzBd;IA0BE,QAAQ,EAAEpB;EA1BZ,EADF;AA8BD,CAxCD;;AA0CA,wCAAAZ,SAAS,CAACiC,SAAV,GAAsB;EACpBhC,EAAE,EAAEiC,kBAAA,CAAUC,MADM;EAEpBjC,KAAK,EAAEgC,kBAAA,CAAUE,GAFG;EAGpBjC,cAAc,EAAE+B,kBAAA,CAAUG;AAHN,CAAtB;;4BAMe9B,cAAA,CAAM+B,IAAN,CAAWtC,SAAX,C"}
|
|
@@ -19,12 +19,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
19
19
|
});
|
|
20
20
|
exports.default = void 0;
|
|
21
21
|
|
|
22
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
23
|
+
|
|
22
24
|
require("core-js/modules/es.array.map.js");
|
|
23
25
|
|
|
24
26
|
require("core-js/modules/es.object.to-string.js");
|
|
25
27
|
|
|
26
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
27
|
-
|
|
28
28
|
var _react = _interopRequireWildcard(require("react"));
|
|
29
29
|
|
|
30
30
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
@@ -43,7 +43,7 @@ var _Rule = _interopRequireDefault(require("../Rule"));
|
|
|
43
43
|
|
|
44
44
|
var _styles = _interopRequireDefault(require("./styles"));
|
|
45
45
|
|
|
46
|
-
var
|
|
46
|
+
var _Info;
|
|
47
47
|
|
|
48
48
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
49
49
|
|
|
@@ -65,7 +65,8 @@ var RuleGroup = function RuleGroup(_ref) {
|
|
|
65
65
|
askAction = context.askAction,
|
|
66
66
|
maxDepth = context.maxDepth,
|
|
67
67
|
combinators = context.combinators,
|
|
68
|
-
labels = context.labels
|
|
68
|
+
labels = context.labels,
|
|
69
|
+
readOnly = context.readOnly;
|
|
69
70
|
var normalizedMaxDepth = maxDepth - 1;
|
|
70
71
|
|
|
71
72
|
var actionButtons = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvButton, {
|
|
@@ -75,19 +76,28 @@ var RuleGroup = function RuleGroup(_ref) {
|
|
|
75
76
|
type: "add-rule",
|
|
76
77
|
id: id
|
|
77
78
|
});
|
|
78
|
-
}
|
|
79
|
-
|
|
79
|
+
},
|
|
80
|
+
disabled: readOnly
|
|
81
|
+
}, /*#__PURE__*/_react.default.createElement(_uikitReactIcons.Add, {
|
|
82
|
+
disabled: readOnly
|
|
83
|
+
}), level === 0 && ((_labels$query = labels.query) === null || _labels$query === void 0 ? void 0 : (_labels$query$addRule = _labels$query.addRule) === null || _labels$query$addRule === void 0 ? void 0 : _labels$query$addRule.label) != null ? (_labels$query2 = labels.query) === null || _labels$query2 === void 0 ? void 0 : (_labels$query2$addRul = _labels$query2.addRule) === null || _labels$query2$addRul === void 0 ? void 0 : _labels$query2$addRul.label : labels.group.addRule.label), level <= normalizedMaxDepth && /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvButton, {
|
|
80
84
|
category: "secondary",
|
|
81
85
|
onClick: function onClick() {
|
|
82
86
|
dispatchAction({
|
|
83
87
|
type: "add-group",
|
|
84
88
|
id: id
|
|
85
89
|
});
|
|
86
|
-
}
|
|
87
|
-
|
|
90
|
+
},
|
|
91
|
+
disabled: readOnly
|
|
92
|
+
}, /*#__PURE__*/_react.default.createElement(_uikitReactIcons.Add, {
|
|
93
|
+
disabled: readOnly
|
|
94
|
+
}), level === 0 && ((_labels$query3 = labels.query) === null || _labels$query3 === void 0 ? void 0 : (_labels$query3$addGro = _labels$query3.addGroup) === null || _labels$query3$addGro === void 0 ? void 0 : _labels$query3$addGro.label) != null ? (_labels$query4 = labels.query) === null || _labels$query4 === void 0 ? void 0 : (_labels$query4$addGro = _labels$query4.addGroup) === null || _labels$query4$addGro === void 0 ? void 0 : _labels$query4$addGro.label : labels.group.addGroup.label));
|
|
88
95
|
|
|
89
96
|
var DeleteIcon = (0, _uikitReactCore.withTooltip)(function () {
|
|
90
|
-
return
|
|
97
|
+
return /*#__PURE__*/_react.default.createElement(_uikitReactIcons.Delete, {
|
|
98
|
+
className: readOnly ? classes.topRemoveButtonDisabled : "",
|
|
99
|
+
disabled: readOnly
|
|
100
|
+
});
|
|
91
101
|
}, level === 0 && (_labels$query5 = labels.query) !== null && _labels$query5 !== void 0 && (_labels$query5$delete = _labels$query5.delete) !== null && _labels$query5$delete !== void 0 && _labels$query5$delete.tooltip ? (_labels$query6 = labels.query) === null || _labels$query6 === void 0 ? void 0 : (_labels$query6$delete = _labels$query6.delete) === null || _labels$query6$delete === void 0 ? void 0 : _labels$query6$delete.tooltip : labels.group.delete.tooltip, "top");
|
|
92
102
|
var onClickCombinator = (0, _react.useCallback)(function (item) {
|
|
93
103
|
dispatchAction({
|
|
@@ -103,7 +113,8 @@ var RuleGroup = function RuleGroup(_ref) {
|
|
|
103
113
|
}, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvGrid, {
|
|
104
114
|
item: true
|
|
105
115
|
}, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvMultiButton, {
|
|
106
|
-
className: (0, _clsx.default)(classes.combinator, classes.topCombinator)
|
|
116
|
+
className: (0, _clsx.default)(classes.combinator, classes.topCombinator),
|
|
117
|
+
disabled: readOnly
|
|
107
118
|
}, combinators.map(function (item) {
|
|
108
119
|
return /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvButton, {
|
|
109
120
|
key: item.operand,
|
|
@@ -111,7 +122,8 @@ var RuleGroup = function RuleGroup(_ref) {
|
|
|
111
122
|
selected: item.operand === combinator,
|
|
112
123
|
onClick: function onClick() {
|
|
113
124
|
return item.operand && onClickCombinator(item);
|
|
114
|
-
}
|
|
125
|
+
},
|
|
126
|
+
disabled: readOnly
|
|
115
127
|
}, item.label);
|
|
116
128
|
}))), /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvGrid, {
|
|
117
129
|
item: true
|
|
@@ -129,7 +141,8 @@ var RuleGroup = function RuleGroup(_ref) {
|
|
|
129
141
|
dialog: level === 0 && ((_labels$query7 = labels.query) === null || _labels$query7 === void 0 ? void 0 : _labels$query7.delete) != null ? labels.query.delete : labels.group.delete
|
|
130
142
|
});
|
|
131
143
|
},
|
|
132
|
-
"aria-label": level === 0 && (_labels$query8 = labels.query) !== null && _labels$query8 !== void 0 && (_labels$query8$delete = _labels$query8.delete) !== null && _labels$query8$delete !== void 0 && _labels$query8$delete.ariaLabel ? (_labels$query9 = labels.query) === null || _labels$query9 === void 0 ? void 0 : (_labels$query9$delete = _labels$query9.delete) === null || _labels$query9$delete === void 0 ? void 0 : _labels$query9$delete.ariaLabel : labels.group.delete.ariaLabel
|
|
144
|
+
"aria-label": level === 0 && (_labels$query8 = labels.query) !== null && _labels$query8 !== void 0 && (_labels$query8$delete = _labels$query8.delete) !== null && _labels$query8$delete !== void 0 && _labels$query8$delete.ariaLabel ? (_labels$query9 = labels.query) === null || _labels$query9 === void 0 ? void 0 : (_labels$query9$delete = _labels$query9.delete) === null || _labels$query9$delete === void 0 ? void 0 : _labels$query9$delete.ariaLabel : labels.group.delete.ariaLabel,
|
|
145
|
+
disabled: readOnly
|
|
133
146
|
}, /*#__PURE__*/_react.default.createElement(DeleteIcon, null)))), (rules === null || rules === void 0 ? void 0 : rules.length) > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
134
147
|
className: (0, _clsx.default)(classes.rulesContainer, level > 0 && classes.subRulesContainer, level === 0 && "topRulesContainer")
|
|
135
148
|
}, rules.map(function (rule, index) {
|
|
@@ -247,6 +260,11 @@ process.env.NODE_ENV !== "production" ? RuleGroup.propTypes = {
|
|
|
247
260
|
*/
|
|
248
261
|
topRemoveButton: _propTypes.default.string,
|
|
249
262
|
|
|
263
|
+
/**
|
|
264
|
+
* Styles applied to the remove button on the top group when disabled.
|
|
265
|
+
*/
|
|
266
|
+
topRemoveButtonDisabled: _propTypes.default.string,
|
|
267
|
+
|
|
250
268
|
/**
|
|
251
269
|
* Styles applied to the rules container.
|
|
252
270
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RuleGroup.js","names":["RuleGroup","level","id","combinator","rules","classes","context","useContext","Context","dispatchAction","askAction","maxDepth","combinators","labels","normalizedMaxDepth","actionButtons","type","query","addRule","label","group","addGroup","DeleteIcon","withTooltip","delete","tooltip","onClickCombinator","useCallback","item","operand","clsx","root","topGroup","subGroup","topCombinator","map","combinatorButton","removeButton","topRemoveButton","actions","dialog","ariaLabel","length","rulesContainer","subRulesContainer","rule","index","isInvalid","some","r","i","attribute","empty","title","cursor","textDecoration","createCondition","spacer","createGroup","actionButtonContainer","topActionButtonContainer","propTypes","PropTypes","shape","string","number","array","withStyles","styles","name"],"sources":["../../../src/QueryBuilder/RuleGroup/RuleGroup.js"],"sourcesContent":["import React, { useCallback, useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport PropTypes from \"prop-types\";\nimport {\n HvGrid,\n HvMultiButton,\n HvButton,\n HvEmptyState,\n HvTypography,\n withTooltip,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Add, Delete, Info } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Rule from \"../Rule\";\nimport styles from \"./styles\";\n\nconst RuleGroup = ({ level = 0, id, combinator = \"and\", rules = [], classes }) => {\n const context = useContext(Context);\n\n const { dispatchAction, askAction, maxDepth, combinators, labels } = context;\n const normalizedMaxDepth = maxDepth - 1;\n\n const actionButtons = (\n <>\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addRule?.label != null\n ? labels.query?.addRule?.label\n : labels.group.addRule.label}\n </HvButton>\n {level <= normalizedMaxDepth && (\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n >\n <Add />\n {level === 0 && labels.query?.addGroup?.label != null\n ? labels.query?.addGroup?.label\n : labels.group.addGroup.label}\n </HvButton>\n )}\n </>\n );\n\n const DeleteIcon = withTooltip(\n () => <Delete />,\n level === 0 && labels.query?.delete?.tooltip\n ? labels.query?.delete?.tooltip\n : labels.group.delete.tooltip,\n \"top\"\n );\n\n const onClickCombinator = useCallback(\n (item) => {\n dispatchAction({\n type: \"set-combinator\",\n id,\n combinator: item.operand,\n });\n },\n [dispatchAction, id]\n );\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.topGroup]: level === 0,\n [classes.subGroup]: level !== 0,\n })}\n >\n <HvGrid container>\n <HvGrid item>\n <HvMultiButton className={clsx(classes.combinator, classes.topCombinator)}>\n {combinators.map((item) => (\n <HvButton\n key={item.operand}\n className={classes.combinatorButton}\n selected={item.operand === combinator}\n onClick={() => item.operand && onClickCombinator(item)}\n >\n {item.label}\n </HvButton>\n ))}\n </HvMultiButton>\n </HvGrid>\n <HvGrid item>\n <HvButton\n icon\n className={clsx(classes.removeButton, classes.topRemoveButton)}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog:\n level === 0 && labels.query?.delete != null\n ? labels.query.delete\n : labels.group.delete,\n });\n }}\n aria-label={\n level === 0 && labels.query?.delete?.ariaLabel\n ? labels.query?.delete?.ariaLabel\n : labels.group.delete.ariaLabel\n }\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n {rules?.length > 0 && (\n <div\n className={clsx(classes.rulesContainer, {\n [classes.subRulesContainer]: level > 0,\n topRulesContainer: level === 0,\n })}\n >\n {rules.map((rule, index) => {\n if (\"combinator\" in rule) {\n return (\n <RuleGroup\n key={rule.id ?? index}\n level={level + 1}\n {...rule}\n id={rule.id}\n classes={classes}\n />\n );\n }\n\n const isInvalid =\n combinator === \"and\" &&\n rules.some((r, i) => {\n if (\"attribute\" in r) {\n if (r.attribute === rule.attribute && r.id !== rule.id && i < index) {\n return true;\n }\n }\n return false;\n });\n\n return (\n <Rule\n key={rule.id ?? index}\n {...rule}\n isInvalid={isInvalid}\n id={rule.id}\n combinator={combinator}\n />\n );\n })}\n </div>\n )}\n {rules?.length === 0 && (\n <HvEmptyState\n title={labels.empty?.title}\n message={\n <>\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createCondition}`}\n </HvTypography>\n {level <= normalizedMaxDepth && (\n <>\n {`${labels.empty?.spacer}`}\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createGroup}`}\n </HvTypography>\n </>\n )}\n </>\n }\n icon={<Info />}\n />\n )}\n <HvGrid container>\n <HvGrid\n item\n className={clsx(classes.actionButtonContainer, classes.topActionButtonContainer)}\n >\n {actionButtons}\n </HvGrid>\n </HvGrid>\n </div>\n );\n};\n\nRuleGroup.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n id: PropTypes.number,\n level: PropTypes.number,\n combinator: PropTypes.string,\n rules: PropTypes.array,\n};\n\nexport default withStyles(styles, { name: \"RuleGroup\" })(RuleGroup);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAQA;;AAEA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAAgE;EAAA;;EAAA,sBAA7DC,KAA6D;EAAA,IAA7DA,KAA6D,2BAArD,CAAqD;EAAA,IAAlDC,EAAkD,QAAlDA,EAAkD;EAAA,2BAA9CC,UAA8C;EAAA,IAA9CA,UAA8C,gCAAjC,KAAiC;EAAA,sBAA1BC,KAA0B;EAAA,IAA1BA,KAA0B,2BAAlB,EAAkB;EAAA,IAAdC,OAAc,QAAdA,OAAc;EAChF,IAAMC,OAAO,GAAG,IAAAC,iBAAA,EAAWC,gBAAX,CAAhB;EAEA,IAAQC,cAAR,GAAqEH,OAArE,CAAQG,cAAR;EAAA,IAAwBC,SAAxB,GAAqEJ,OAArE,CAAwBI,SAAxB;EAAA,IAAmCC,QAAnC,GAAqEL,OAArE,CAAmCK,QAAnC;EAAA,IAA6CC,WAA7C,GAAqEN,OAArE,CAA6CM,WAA7C;EAAA,IAA0DC,MAA1D,GAAqEP,OAArE,CAA0DO,MAA1D;EACA,IAAMC,kBAAkB,GAAGH,QAAQ,GAAG,CAAtC;;EAEA,IAAMI,aAAa,gBACjB,yEACE,6BAAC,wBAAD;IACE,QAAQ,EAAC,WADX;IAEE,OAAO,EAAE,mBAAM;MACbN,cAAc,CAAC;QAAEO,IAAI,EAAE,UAAR;QAAoBd,EAAE,EAAFA;MAApB,CAAD,CAAd;IACD;EAJH,gCAME,6BAAC,oBAAD,OANF,GAOGD,KAAK,KAAK,CAAV,IAAe,kBAAAY,MAAM,CAACI,KAAP,yFAAcC,OAAd,gFAAuBC,KAAvB,KAAgC,IAA/C,qBACGN,MAAM,CAACI,KADV,4EACG,eAAcC,OADjB,0DACG,sBAAuBC,KAD1B,GAEGN,MAAM,CAACO,KAAP,CAAaF,OAAb,CAAqBC,KAT3B,CADF,EAYGlB,KAAK,IAAIa,kBAAT,iBACC,6BAAC,wBAAD;IACE,QAAQ,EAAC,WADX;IAEE,OAAO,EAAE,mBAAM;MACbL,cAAc,CAAC;QAAEO,IAAI,EAAE,WAAR;QAAqBd,EAAE,EAAFA;MAArB,CAAD,CAAd;IACD;EAJH,kCAME,6BAAC,oBAAD,OANF,GAOGD,KAAK,KAAK,CAAV,IAAe,mBAAAY,MAAM,CAACI,KAAP,2FAAcI,QAAd,gFAAwBF,KAAxB,KAAiC,IAAhD,qBACGN,MAAM,CAACI,KADV,4EACG,eAAcI,QADjB,0DACG,sBAAwBF,KAD3B,GAEGN,MAAM,CAACO,KAAP,CAAaC,QAAb,CAAsBF,KAT5B,CAbJ,CADF;;EA6BA,IAAMG,UAAU,GAAG,IAAAC,2BAAA,EACjB;IAAA,0CAAM,6BAAC,uBAAD,OAAN;EAAA,CADiB,EAEjBtB,KAAK,KAAK,CAAV,sBAAeY,MAAM,CAACI,KAAtB,oEAAe,eAAcO,MAA7B,kDAAe,sBAAsBC,OAArC,qBACIZ,MAAM,CAACI,KADX,4EACI,eAAcO,MADlB,0DACI,sBAAsBC,OAD1B,GAEIZ,MAAM,CAACO,KAAP,CAAaI,MAAb,CAAoBC,OAJP,EAKjB,KALiB,CAAnB;EAQA,IAAMC,iBAAiB,GAAG,IAAAC,kBAAA,EACxB,UAACC,IAAD,EAAU;IACRnB,cAAc,CAAC;MACbO,IAAI,EAAE,gBADO;MAEbd,EAAE,EAAFA,EAFa;MAGbC,UAAU,EAAEyB,IAAI,CAACC;IAHJ,CAAD,CAAd;EAKD,CAPuB,EAQxB,CAACpB,cAAD,EAAiBP,EAAjB,CARwB,CAA1B;EAWA,oBACE;IACE,SAAS,EAAE,IAAA4B,aAAA,EAAKzB,OAAO,CAAC0B,IAAb,EACW9B,KAAK,KAAK,CADrB,GACRI,OAAO,CAAC2B,QADA,GAER3B,OAAO,CAAC4B,QAFA;EADb,gBAME,6BAAC,sBAAD;IAAQ,SAAS;EAAjB,gBACE,6BAAC,sBAAD;IAAQ,IAAI;EAAZ,gBACE,6BAAC,6BAAD;IAAe,SAAS,EAAE,IAAAH,aAAA,EAAKzB,OAAO,CAACF,UAAb,EAAyBE,OAAO,CAAC6B,aAAjC;EAA1B,GACGtB,WAAW,CAACuB,GAAZ,CAAgB,UAACP,IAAD;IAAA,oBACf,6BAAC,wBAAD;MACE,GAAG,EAAEA,IAAI,CAACC,OADZ;MAEE,SAAS,EAAExB,OAAO,CAAC+B,gBAFrB;MAGE,QAAQ,EAAER,IAAI,CAACC,OAAL,KAAiB1B,UAH7B;MAIE,OAAO,EAAE;QAAA,OAAMyB,IAAI,CAACC,OAAL,IAAgBH,iBAAiB,CAACE,IAAD,CAAvC;MAAA;IAJX,GAMGA,IAAI,CAACT,KANR,CADe;EAAA,CAAhB,CADH,CADF,CADF,eAeE,6BAAC,sBAAD;IAAQ,IAAI;EAAZ,gBACE,6BAAC,wBAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAE,IAAAW,aAAA,EAAKzB,OAAO,CAACgC,YAAb,EAA2BhC,OAAO,CAACiC,eAAnC,CAFb;IAGE,OAAO,EAAE,mBAAM;MAAA;;MACb5B,SAAS,CAAC;QACR6B,OAAO,EAAE,CAAC;UAAEvB,IAAI,EAAE,aAAR;UAAuBd,EAAE,EAAFA;QAAvB,CAAD,CADD;QAERsC,MAAM,EACJvC,KAAK,KAAK,CAAV,IAAe,mBAAAY,MAAM,CAACI,KAAP,kEAAcO,MAAd,KAAwB,IAAvC,GACIX,MAAM,CAACI,KAAP,CAAaO,MADjB,GAEIX,MAAM,CAACO,KAAP,CAAaI;MALX,CAAD,CAAT;IAOD,CAXH;IAYE,cACEvB,KAAK,KAAK,CAAV,sBAAeY,MAAM,CAACI,KAAtB,oEAAe,eAAcO,MAA7B,kDAAe,sBAAsBiB,SAArC,qBACI5B,MAAM,CAACI,KADX,4EACI,eAAcO,MADlB,0DACI,sBAAsBiB,SAD1B,GAEI5B,MAAM,CAACO,KAAP,CAAaI,MAAb,CAAoBiB;EAf5B,gBAkBE,6BAAC,UAAD,OAlBF,CADF,CAfF,CANF,EA4CG,CAAArC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEsC,MAAP,IAAgB,CAAhB,iBACC;IACE,SAAS,EAAE,IAAAZ,aAAA,EAAKzB,OAAO,CAACsC,cAAb,EACoB1C,KAAK,GAAG,CAD5B,IACRI,OAAO,CAACuC,iBADA,EAEU3C,KAAK,KAAK,CAFpB;EADb,GAMGG,KAAK,CAAC+B,GAAN,CAAU,UAACU,IAAD,EAAOC,KAAP,EAAiB;IAAA;;IAC1B,IAAI,gBAAgBD,IAApB,EAA0B;MAAA;;MACxB,oBACE,6BAAC,SAAD;QACE,GAAG,cAAEA,IAAI,CAAC3C,EAAP,+CAAa4C,KADlB;QAEE,KAAK,EAAE7C,KAAK,GAAG;MAFjB,GAGM4C,IAHN;QAIE,EAAE,EAAEA,IAAI,CAAC3C,EAJX;QAKE,OAAO,EAAEG;MALX,GADF;IASD;;IAED,IAAM0C,SAAS,GACb5C,UAAU,KAAK,KAAf,IACAC,KAAK,CAAC4C,IAAN,CAAW,UAACC,CAAD,EAAIC,CAAJ,EAAU;MACnB,IAAI,eAAeD,CAAnB,EAAsB;QACpB,IAAIA,CAAC,CAACE,SAAF,KAAgBN,IAAI,CAACM,SAArB,IAAkCF,CAAC,CAAC/C,EAAF,KAAS2C,IAAI,CAAC3C,EAAhD,IAAsDgD,CAAC,GAAGJ,KAA9D,EAAqE;UACnE,OAAO,IAAP;QACD;MACF;;MACD,OAAO,KAAP;IACD,CAPD,CAFF;IAWA,oBACE,6BAAC,aAAD;MACE,GAAG,eAAED,IAAI,CAAC3C,EAAP,iDAAa4C;IADlB,GAEMD,IAFN;MAGE,SAAS,EAAEE,SAHb;MAIE,EAAE,EAAEF,IAAI,CAAC3C,EAJX;MAKE,UAAU,EAAEC;IALd,GADF;EASD,CAjCA,CANH,CA7CJ,EAuFG,CAAAC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEsC,MAAP,MAAkB,CAAlB,iBACC,6BAAC,4BAAD;IACE,KAAK,mBAAE7B,MAAM,CAACuC,KAAT,kDAAE,cAAcC,KADvB;IAEE,OAAO,eACL,yEACE,6BAAC,4BAAD;MACE,OAAO,EAAC,MADV;MAEE,SAAS,EAAC,GAFZ;MAGE,OAAO,EAAE,mBAAM;QACb5C,cAAc,CAAC;UAAEO,IAAI,EAAE,UAAR;UAAoBd,EAAE,EAAFA;QAApB,CAAD,CAAd;MACD,CALH;MAME,KAAK,EAAE;QAAEoD,MAAM,EAAE,SAAV;QAAqBC,cAAc,EAAE;MAArC;IANT,+BAQM1C,MAAM,CAACuC,KARb,mDAQM,eAAcI,eARpB,EADF,EAWGvD,KAAK,IAAIa,kBAAT,iBACC,wFACMD,MAAM,CAACuC,KADb,mDACM,eAAcK,MADpB,gBAEE,6BAAC,4BAAD;MACE,OAAO,EAAC,MADV;MAEE,SAAS,EAAC,GAFZ;MAGE,OAAO,EAAE,mBAAM;QACbhD,cAAc,CAAC;UAAEO,IAAI,EAAE,WAAR;UAAqBd,EAAE,EAAFA;QAArB,CAAD,CAAd;MACD,CALH;MAME,KAAK,EAAE;QAAEoD,MAAM,EAAE,SAAV;QAAqBC,cAAc,EAAE;MAArC;IANT,+BAQM1C,MAAM,CAACuC,KARb,mDAQM,eAAcM,WARpB,EAFF,CAZJ,CAHJ;IA+BE,IAAI,iCAAE,6BAAC,qBAAD,OAAF;EA/BN,EAxFJ,eA0HE,6BAAC,sBAAD;IAAQ,SAAS;EAAjB,gBACE,6BAAC,sBAAD;IACE,IAAI,MADN;IAEE,SAAS,EAAE,IAAA5B,aAAA,EAAKzB,OAAO,CAACsD,qBAAb,EAAoCtD,OAAO,CAACuD,wBAA5C;EAFb,GAIG7C,aAJH,CADF,CA1HF,CADF;AAqID,CA3LD;;AA6LA,wCAAAf,SAAS,CAAC6D,SAAV,GAAsB;EACpB;AACF;AACA;AACA;EACExD,OAAO,EAAEyD,kBAAA,CAAUC,KAAV,CAAgB;IACvB;AACJ;AACA;IACIhC,IAAI,EAAE+B,kBAAA,CAAUE,MAJO;;IAKvB;AACJ;AACA;IACIhC,QAAQ,EAAE8B,kBAAA,CAAUE,MARG;;IASvB;AACJ;AACA;IACI/B,QAAQ,EAAE6B,kBAAA,CAAUE,MAZG;;IAavB;AACJ;AACA;IACI7D,UAAU,EAAE2D,kBAAA,CAAUE,MAhBC;;IAiBvB;AACJ;AACA;IACI9B,aAAa,EAAE4B,kBAAA,CAAUE,MApBF;;IAqBvB;AACJ;AACA;IACI5B,gBAAgB,EAAE0B,kBAAA,CAAUE,MAxBL;;IAyBvB;AACJ;AACA;IACI3B,YAAY,EAAEyB,kBAAA,CAAUE,MA5BD;;IA6BvB;AACJ;AACA;IACI1B,eAAe,EAAEwB,kBAAA,CAAUE,MAhCJ;;IAiCvB;AACJ;AACA;IACIrB,cAAc,EAAEmB,kBAAA,CAAUE,MApCH;;IAqCvB;AACJ;AACA;IACIpB,iBAAiB,EAAEkB,kBAAA,CAAUE,MAxCN;;IAyCvB;AACJ;AACA;IACIL,qBAAqB,EAAEG,kBAAA,CAAUE,MA5CV;;IA6CvB;AACJ;AACA;IACIJ,wBAAwB,EAAEE,kBAAA,CAAUE;EAhDb,CAAhB,CALW;EAuDpB9D,EAAE,EAAE4D,kBAAA,CAAUG,MAvDM;EAwDpBhE,KAAK,EAAE6D,kBAAA,CAAUG,MAxDG;EAyDpB9D,UAAU,EAAE2D,kBAAA,CAAUE,MAzDF;EA0DpB5D,KAAK,EAAE0D,kBAAA,CAAUI;AA1DG,CAAtB;;eA6De,IAAAC,gBAAA,EAAWC,eAAX,EAAmB;EAAEC,IAAI,EAAE;AAAR,CAAnB,EAA0CrE,SAA1C,C"}
|
|
1
|
+
{"version":3,"file":"RuleGroup.js","names":["RuleGroup","level","id","combinator","rules","classes","context","useContext","Context","dispatchAction","askAction","maxDepth","combinators","labels","readOnly","normalizedMaxDepth","actionButtons","type","query","addRule","label","group","addGroup","DeleteIcon","withTooltip","topRemoveButtonDisabled","delete","tooltip","onClickCombinator","useCallback","item","operand","clsx","root","topGroup","subGroup","topCombinator","map","combinatorButton","removeButton","topRemoveButton","actions","dialog","ariaLabel","length","rulesContainer","subRulesContainer","rule","index","isInvalid","some","r","i","attribute","empty","title","cursor","textDecoration","createCondition","spacer","createGroup","actionButtonContainer","topActionButtonContainer","propTypes","PropTypes","shape","string","number","array","withStyles","styles","name"],"sources":["../../../src/QueryBuilder/RuleGroup/RuleGroup.js"],"sourcesContent":["import React, { useCallback, useContext } from \"react\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport PropTypes from \"prop-types\";\nimport {\n HvGrid,\n HvMultiButton,\n HvButton,\n HvEmptyState,\n HvTypography,\n withTooltip,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Add, Delete, Info } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Rule from \"../Rule\";\nimport styles from \"./styles\";\n\nconst RuleGroup = ({ level = 0, id, combinator = \"and\", rules = [], classes }) => {\n const context = useContext(Context);\n\n const { dispatchAction, askAction, maxDepth, combinators, labels, readOnly } = context;\n const normalizedMaxDepth = maxDepth - 1;\n\n const actionButtons = (\n <>\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n disabled={readOnly}\n >\n <Add disabled={readOnly} />\n {level === 0 && labels.query?.addRule?.label != null\n ? labels.query?.addRule?.label\n : labels.group.addRule.label}\n </HvButton>\n {level <= normalizedMaxDepth && (\n <HvButton\n category=\"secondary\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n disabled={readOnly}\n >\n <Add disabled={readOnly} />\n {level === 0 && labels.query?.addGroup?.label != null\n ? labels.query?.addGroup?.label\n : labels.group.addGroup.label}\n </HvButton>\n )}\n </>\n );\n\n const DeleteIcon = withTooltip(\n () => (\n <Delete className={readOnly ? classes.topRemoveButtonDisabled : \"\"} disabled={readOnly} />\n ),\n level === 0 && labels.query?.delete?.tooltip\n ? labels.query?.delete?.tooltip\n : labels.group.delete.tooltip,\n \"top\"\n );\n\n const onClickCombinator = useCallback(\n (item) => {\n dispatchAction({\n type: \"set-combinator\",\n id,\n combinator: item.operand,\n });\n },\n [dispatchAction, id]\n );\n\n return (\n <div\n className={clsx(classes.root, {\n [classes.topGroup]: level === 0,\n [classes.subGroup]: level !== 0,\n })}\n >\n <HvGrid container>\n <HvGrid item>\n <HvMultiButton\n className={clsx(classes.combinator, classes.topCombinator)}\n disabled={readOnly}\n >\n {combinators.map((item) => (\n <HvButton\n key={item.operand}\n className={classes.combinatorButton}\n selected={item.operand === combinator}\n onClick={() => item.operand && onClickCombinator(item)}\n disabled={readOnly}\n >\n {item.label}\n </HvButton>\n ))}\n </HvMultiButton>\n </HvGrid>\n <HvGrid item>\n <HvButton\n icon\n className={clsx(classes.removeButton, classes.topRemoveButton)}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog:\n level === 0 && labels.query?.delete != null\n ? labels.query.delete\n : labels.group.delete,\n });\n }}\n aria-label={\n level === 0 && labels.query?.delete?.ariaLabel\n ? labels.query?.delete?.ariaLabel\n : labels.group.delete.ariaLabel\n }\n disabled={readOnly}\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n {rules?.length > 0 && (\n <div\n className={clsx(classes.rulesContainer, {\n [classes.subRulesContainer]: level > 0,\n topRulesContainer: level === 0,\n })}\n >\n {rules.map((rule, index) => {\n if (\"combinator\" in rule) {\n return (\n <RuleGroup\n key={rule.id ?? index}\n level={level + 1}\n {...rule}\n id={rule.id}\n classes={classes}\n />\n );\n }\n\n const isInvalid =\n combinator === \"and\" &&\n rules.some((r, i) => {\n if (\"attribute\" in r) {\n if (r.attribute === rule.attribute && r.id !== rule.id && i < index) {\n return true;\n }\n }\n return false;\n });\n\n return (\n <Rule\n key={rule.id ?? index}\n {...rule}\n isInvalid={isInvalid}\n id={rule.id}\n combinator={combinator}\n />\n );\n })}\n </div>\n )}\n {rules?.length === 0 && (\n <HvEmptyState\n title={labels.empty?.title}\n message={\n <>\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-rule\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createCondition}`}\n </HvTypography>\n {level <= normalizedMaxDepth && (\n <>\n {`${labels.empty?.spacer}`}\n <HvTypography\n variant=\"link\"\n component=\"a\"\n onClick={() => {\n dispatchAction({ type: \"add-group\", id });\n }}\n style={{ cursor: \"pointer\", textDecoration: \"underline\" }}\n >\n {`${labels.empty?.createGroup}`}\n </HvTypography>\n </>\n )}\n </>\n }\n icon={<Info />}\n />\n )}\n <HvGrid container>\n <HvGrid\n item\n className={clsx(classes.actionButtonContainer, classes.topActionButtonContainer)}\n >\n {actionButtons}\n </HvGrid>\n </HvGrid>\n </div>\n );\n};\n\nRuleGroup.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group when disabled.\n */\n topRemoveButtonDisabled: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n id: PropTypes.number,\n level: PropTypes.number,\n combinator: PropTypes.string,\n rules: PropTypes.array,\n};\n\nexport default withStyles(styles, { name: \"RuleGroup\" })(RuleGroup);\n"],"mappings":"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"}
|
|
@@ -74,6 +74,9 @@ var styles = function styles(theme) {
|
|
|
74
74
|
right: -16,
|
|
75
75
|
backgroundColor: theme.hv.palette.atmosphere.atmo2
|
|
76
76
|
},
|
|
77
|
+
topRemoveButtonDisabled: {
|
|
78
|
+
backgroundColor: theme.hv.palette.atmosphere.atmo2
|
|
79
|
+
},
|
|
77
80
|
rulesContainer: {},
|
|
78
81
|
subRulesContainer: {
|
|
79
82
|
borderLeft: "1px solid ".concat(theme.hv.palette.atmosphere.atmo4),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","names":["styles","theme","root","position","padding","hv","spacing","sm","marginTop","marginBottom","border","palette","atmosphere","atmo4","subGroup","margin","minHeight","paddingBottom","content","zIndex","width","height","borderBottom","borderLeft","top","left","topGroup","backgroundColor","maxWidth","minWidth","combinator","topCombinator","combinatorButton","actionButtonContainer","marginLeft","topActionButtonContainer","bottom","md","right","removeButton","topRemoveButton","atmo2","rulesContainer","subRulesContainer","paddingLeft","paddingTop"],"sources":["../../../src/QueryBuilder/RuleGroup/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n position: \"relative\",\n padding: theme.hv.spacing.sm,\n\n marginTop: 12,\n marginBottom: 32,\n\n border: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n },\n subGroup: {\n margin: \"40px 14px 32px 20px\",\n minHeight: 120,\n paddingBottom: 60,\n\n \"&::before\": {\n content: '\"\"',\n position: \"absolute\",\n zIndex: 2,\n\n width: 21,\n height: 36,\n\n borderBottom: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n top: -38,\n left: -42,\n },\n \":not(.topRulesContainer)>&:last-child::after\": {\n content: '\"\"',\n position: \"absolute\",\n zIndex: 1,\n\n width: 32,\n height: \"100%\",\n\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n top: 0,\n left: -22,\n },\n },\n topGroup: {\n margin: theme.hv.spacing.sm,\n backgroundColor: \"transparent\",\n maxWidth: \"100%\",\n minWidth: 740,\n\n paddingBottom: theme.hv.spacing.sm * 3,\n },\n\n combinator: {\n minWidth: 80,\n },\n topCombinator: {\n position: \"absolute\",\n top: -theme.hv.spacing.sm,\n left: -theme.hv.spacing.sm,\n },\n\n combinatorButton: {},\n\n actionButtonContainer: {\n marginLeft: \"auto\",\n\n \"&>*\": {\n marginLeft: theme.hv.spacing.sm,\n },\n },\n topActionButtonContainer: {\n position: \"absolute\",\n bottom: -theme.hv.spacing.md,\n right: theme.hv.spacing.sm,\n },\n\n removeButton: {},\n topRemoveButton: {\n position: \"absolute\",\n top: -16,\n right: -16,\n backgroundColor: theme.hv.palette.atmosphere.atmo2,\n },\n\n rulesContainer: {},\n\n subRulesContainer: {\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n marginLeft: theme.hv.spacing.sm,\n marginBottom: theme.hv.spacing.md,\n paddingLeft: theme.hv.spacing.sm,\n\n paddingTop: 7,\n\n position: \"relative\",\n left: -41,\n\n width: \"100%\",\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,QAAQ,EAAE,UADN;MAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;MAIJC,SAAS,EAAE,EAJP;MAKJC,YAAY,EAAE,EALV;MAOJC,MAAM,sBAAeT,KAAK,CAACI,EAAN,CAASM,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C;IAPF,CADmB;IAUzBC,QAAQ,EAAE;MACRC,MAAM,EAAE,qBADA;MAERC,SAAS,EAAE,GAFH;MAGRC,aAAa,EAAE,EAHP;MAKR,aAAa;QACXC,OAAO,EAAE,IADE;QAEXf,QAAQ,EAAE,UAFC;QAGXgB,MAAM,EAAE,CAHG;QAKXC,KAAK,EAAE,EALI;QAMXC,MAAM,EAAE,EANG;QAQXC,YAAY,sBAAerB,KAAK,CAACI,EAAN,CAASM,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C,CARD;QASXU,UAAU,sBAAetB,KAAK,CAACI,EAAN,CAASM,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C,CATC;QAWXW,GAAG,EAAE,CAAC,EAXK;QAYXC,IAAI,EAAE,CAAC;MAZI,CALL;MAmBR,gDAAgD;QAC9CP,OAAO,EAAE,IADqC;QAE9Cf,QAAQ,EAAE,UAFoC;QAG9CgB,MAAM,EAAE,CAHsC;QAK9CC,KAAK,EAAE,EALuC;QAM9CC,MAAM,EAAE,MANsC;QAQ9CE,UAAU,sBAAetB,KAAK,CAACI,EAAN,CAASM,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C,CARoC;QAU9CW,GAAG,EAAE,CAVyC;QAW9CC,IAAI,EAAE,CAAC;MAXuC;IAnBxC,CAVe;IA2CzBC,QAAQ,EAAE;MACRX,MAAM,EAAEd,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EADjB;MAERoB,eAAe,EAAE,aAFT;MAGRC,QAAQ,EAAE,MAHF;MAIRC,QAAQ,EAAE,GAJF;MAMRZ,aAAa,EAAEhB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAAjB,GAAsB;IAN7B,CA3Ce;IAoDzBuB,UAAU,EAAE;MACVD,QAAQ,EAAE;IADA,CApDa;IAuDzBE,aAAa,EAAE;MACb5B,QAAQ,EAAE,UADG;MAEbqB,GAAG,EAAE,CAACvB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFV;MAGbkB,IAAI,EAAE,CAACxB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC;IAHX,CAvDU;IA6DzByB,gBAAgB,EAAE,EA7DO;IA+DzBC,qBAAqB,EAAE;MACrBC,UAAU,EAAE,MADS;MAGrB,OAAO;QACLA,UAAU,EAAEjC,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC;MADxB;IAHc,CA/DE;IAsEzB4B,wBAAwB,EAAE;MACxBhC,QAAQ,EAAE,UADc;MAExBiC,MAAM,EAAE,CAACnC,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiB+B,EAFF;MAGxBC,KAAK,EAAErC,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC;IAHA,CAtED;IA4EzBgC,YAAY,EAAE,EA5EW;IA6EzBC,eAAe,EAAE;MACfrC,QAAQ,EAAE,UADK;MAEfqB,GAAG,EAAE,CAAC,EAFS;MAGfc,KAAK,EAAE,CAAC,EAHO;MAIfX,eAAe,EAAE1B,KAAK,CAACI,EAAN,CAASM,OAAT,CAAiBC,UAAjB,CAA4B6B;IAJ9B,CA7EQ;IAoFzBC,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"styles.js","names":["styles","theme","root","position","padding","hv","spacing","sm","marginTop","marginBottom","border","palette","atmosphere","atmo4","subGroup","margin","minHeight","paddingBottom","content","zIndex","width","height","borderBottom","borderLeft","top","left","topGroup","backgroundColor","maxWidth","minWidth","combinator","topCombinator","combinatorButton","actionButtonContainer","marginLeft","topActionButtonContainer","bottom","md","right","removeButton","topRemoveButton","atmo2","topRemoveButtonDisabled","rulesContainer","subRulesContainer","paddingLeft","paddingTop"],"sources":["../../../src/QueryBuilder/RuleGroup/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n position: \"relative\",\n padding: theme.hv.spacing.sm,\n\n marginTop: 12,\n marginBottom: 32,\n\n border: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n },\n subGroup: {\n margin: \"40px 14px 32px 20px\",\n minHeight: 120,\n paddingBottom: 60,\n\n \"&::before\": {\n content: '\"\"',\n position: \"absolute\",\n zIndex: 2,\n\n width: 21,\n height: 36,\n\n borderBottom: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n top: -38,\n left: -42,\n },\n \":not(.topRulesContainer)>&:last-child::after\": {\n content: '\"\"',\n position: \"absolute\",\n zIndex: 1,\n\n width: 32,\n height: \"100%\",\n\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n top: 0,\n left: -22,\n },\n },\n topGroup: {\n margin: theme.hv.spacing.sm,\n backgroundColor: \"transparent\",\n maxWidth: \"100%\",\n minWidth: 740,\n\n paddingBottom: theme.hv.spacing.sm * 3,\n },\n\n combinator: {\n minWidth: 80,\n },\n topCombinator: {\n position: \"absolute\",\n top: -theme.hv.spacing.sm,\n left: -theme.hv.spacing.sm,\n },\n\n combinatorButton: {},\n\n actionButtonContainer: {\n marginLeft: \"auto\",\n\n \"&>*\": {\n marginLeft: theme.hv.spacing.sm,\n },\n },\n topActionButtonContainer: {\n position: \"absolute\",\n bottom: -theme.hv.spacing.md,\n right: theme.hv.spacing.sm,\n },\n\n removeButton: {},\n topRemoveButton: {\n position: \"absolute\",\n top: -16,\n right: -16,\n backgroundColor: theme.hv.palette.atmosphere.atmo2,\n },\n\n topRemoveButtonDisabled: {\n backgroundColor: theme.hv.palette.atmosphere.atmo2,\n },\n\n rulesContainer: {},\n\n subRulesContainer: {\n borderLeft: `1px solid ${theme.hv.palette.atmosphere.atmo4}`,\n\n marginLeft: theme.hv.spacing.sm,\n marginBottom: theme.hv.spacing.md,\n paddingLeft: theme.hv.spacing.sm,\n\n paddingTop: 7,\n\n position: \"relative\",\n left: -41,\n\n width: \"100%\",\n },\n});\n\nexport default styles;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.js","names":["createContext","defaultOperators","numeric","operator","label","combinators","text","textarea","boolean","dateandtime","defaultCombinators","operand","defaultLabels","query","delete","ariaLabel","tooltip","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","rule","attribute","placeholder","exists","value","distance","connectorText","button","validation","required","invalid","options","true","false","equal","greaterThan","range","leftLabel","rightLabel","datetime","dateLabel","datePlaceholder","timeLabel","timePlaceholder","startDateLabel","startDatePlaceholder","startTimeLabel","startTimePlaceholder","endDateLabel","endDatePlaceholder","endTimeLabel","endTimePlaceholder","invalidInterval","group","reset","addRule","addGroup","empty","title","createCondition","createGroup","spacer","dispatchAction","askAction","selectLocation","attributes","operators","maxDepth","labels","initialTouched"],"sources":["../../../src/QueryBuilder/Context.js"],"sourcesContent":["import { createContext } from \"react\";\n\nexport const defaultOperators = {\n numeric: [\n {\n operator: \"greaterThan\",\n label: \"Greater than (>)\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThan\",\n label: \"Less than (<)\",\n combinators: [\"and\"],\n },\n {\n operator: \"equalsTo\",\n label: \"Equal to (=)\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"greaterThanEq\",\n label: \"Greater than or equal to (>=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThanEq\",\n label: \"Less than or equal to (<=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"notEqual\",\n label: \"Not equal to (!=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"range\",\n label: \"Range\",\n combinators: [\"and\"],\n },\n ],\n text: [\n {\n operator: \"equals\",\n label: \"Equals\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"equalsIgnoreCase\",\n label: \"Equals Ignore Case\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"Contains\",\n label: \"Contains\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"StartsWith\",\n label: \"A string begins with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"EndsWith\",\n label: \"A string ends with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"IsNotEmpty\",\n label: \"Is Not empty\",\n combinators: [\"and\"],\n },\n {\n operator: \"IsNot\",\n label: \"Is Not\",\n combinators: [\"and\"],\n },\n {\n operator: \"Empty\",\n label: \"Empty\",\n combinators: [\"and\"],\n },\n ],\n textarea: [\n {\n operator: \"equals\",\n label: \"Equals\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"equalsIgnoreCase\",\n label: \"Equals Ignore Case\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"Contains\",\n label: \"Contains\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"StartsWith\",\n label: \"A string begins with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"EndsWith\",\n label: \"A string ends with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"IsNotEmpty\",\n label: \"Is Not empty\",\n combinators: [\"and\"],\n },\n {\n operator: \"IsNot\",\n label: \"Is Not\",\n combinators: [\"and\"],\n },\n {\n operator: \"Empty\",\n label: \"Empty\",\n combinators: [\"and\"],\n },\n ],\n boolean: [\n {\n operator: \"equalsTo\",\n label: \"=\",\n combinators: [\"and\", \"or\"],\n },\n ],\n dateandtime: [\n {\n operator: \"greaterThan\",\n label: \"Greater than\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThan\",\n label: \"Less than\",\n combinators: [\"and\"],\n },\n {\n operator: \"equalsTo\",\n label: \"Equal to\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"greaterThanEq\",\n label: \"Greater than or equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThanEq\",\n label: \"Less than or equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"notEqual\",\n label: \"Not equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"range\",\n label: \"Range\",\n combinators: [\"and\"],\n },\n ],\n};\n\nexport const defaultCombinators = [\n { operand: \"and\", label: \"AND\" },\n { operand: \"or\", label: \"OR\" },\n];\n\nexport const defaultLabels = {\n query: {\n delete: {\n ariaLabel: \"Reset query\",\n tooltip: \"Reset query\",\n dialogTitle: \"Remove all conditions?\",\n dialogMessage:\n \"Are you sure you want to remove all the conditions? They will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n },\n rule: {\n attribute: {\n label: \"Attribute\",\n placeholder: \"Select attribute...\",\n exists: \"Attribute already exists.\",\n },\n operator: {\n label: \"Operator\",\n placeholder: \"Select operator...\",\n },\n value: {\n distance: {\n label: \"Value\",\n connectorText: \"radius miles from\",\n button: \"Select location\",\n validation: {\n required: \"The value is required.\",\n invalid: \"Value must be a positive number.\",\n },\n },\n text: {\n label: \"Value\",\n placeholder: \"Enter value...\",\n validation: {\n required: \"The value is required.\",\n },\n },\n boolean: {\n label: \"Value\",\n placeholder: \"Enter value\",\n options: {\n true: \"True\",\n false: \"False\",\n },\n },\n numeric: {\n label: \"Value\",\n placeholder: \"Enter value\",\n validation: {\n required: \"The value is required.\",\n invalid: \"Value must be a number.\",\n equal: \"Cannot be equal.\",\n greaterThan: \"Needs to be greater.\",\n },\n range: {\n leftLabel: \"From\",\n rightLabel: \"To\",\n },\n },\n datetime: {\n dateLabel: \"Date\",\n datePlaceholder: \"Select Date\",\n timeLabel: \"Time\",\n timePlaceholder: \"Select Time\",\n startDateLabel: \"Start Date\",\n startDatePlaceholder: \"Select Start Date\",\n startTimeLabel: \"Start Time\",\n startTimePlaceholder: \"Select Start Time\",\n endDateLabel: \"End Date\",\n endDatePlaceholder: \"Select End Date\",\n endTimeLabel: \"End Time\",\n endTimePlaceholder: \"Select End Time\",\n validation: {\n required: \"The value is required.\",\n invalidInterval: \"End date and time must be after start date and time.\",\n },\n },\n },\n delete: {\n ariaLabel: \"Remove condition\",\n tooltip: \"Remove condition\",\n dialogTitle: \"Remove condition?\",\n dialogMessage:\n \"Are you sure you want to remove the condition? It will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n },\n group: {\n delete: {\n ariaLabel: \"Remove group\",\n tooltip: \"Remove group\",\n dialogTitle: \"Remove group?\",\n dialogMessage: \"Are you sure you want to remove the group? It will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n reset: {\n ariaLabel: \"Change operator\",\n tooltip: \"Change operator query\",\n dialogTitle: \"Change conditional operator?\",\n dialogMessage:\n \"Do you want to change conditional operator? You won't be able to undo this operation. Conditions and/or groups will be removed.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n addRule: {\n label: \"Add condition\",\n },\n addGroup: {\n label: \"Add group\",\n },\n },\n empty: {\n title: \"No conditions created yet\",\n createCondition: \"Create a condition\",\n createGroup: \"condition group\",\n spacer: \" or a \",\n },\n};\n\nexport default createContext({\n dispatchAction: () => ({}),\n askAction: () => ({}),\n selectLocation: () => ({}),\n attributes: {},\n operators: defaultOperators,\n combinators: defaultCombinators,\n maxDepth: 1,\n labels: defaultLabels,\n initialTouched: false,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Context.js","names":["createContext","defaultOperators","numeric","operator","label","combinators","text","textarea","boolean","dateandtime","defaultCombinators","operand","defaultLabels","query","delete","ariaLabel","tooltip","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","rule","attribute","placeholder","exists","value","distance","connectorText","button","validation","required","invalid","options","true","false","equal","greaterThan","range","leftLabel","rightLabel","datetime","dateLabel","datePlaceholder","timeLabel","timePlaceholder","startDateLabel","startDatePlaceholder","startTimeLabel","startTimePlaceholder","endDateLabel","endDatePlaceholder","endTimeLabel","endTimePlaceholder","invalidInterval","group","reset","addRule","addGroup","empty","title","createCondition","createGroup","spacer","dispatchAction","askAction","selectLocation","attributes","operators","maxDepth","labels","initialTouched","readOnly"],"sources":["../../../src/QueryBuilder/Context.js"],"sourcesContent":["import { createContext } from \"react\";\n\nexport const defaultOperators = {\n numeric: [\n {\n operator: \"greaterThan\",\n label: \"Greater than (>)\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThan\",\n label: \"Less than (<)\",\n combinators: [\"and\"],\n },\n {\n operator: \"equalsTo\",\n label: \"Equal to (=)\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"greaterThanEq\",\n label: \"Greater than or equal to (>=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThanEq\",\n label: \"Less than or equal to (<=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"notEqual\",\n label: \"Not equal to (!=)\",\n combinators: [\"and\"],\n },\n {\n operator: \"range\",\n label: \"Range\",\n combinators: [\"and\"],\n },\n ],\n text: [\n {\n operator: \"equals\",\n label: \"Equals\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"equalsIgnoreCase\",\n label: \"Equals Ignore Case\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"Contains\",\n label: \"Contains\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"StartsWith\",\n label: \"A string begins with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"EndsWith\",\n label: \"A string ends with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"IsNotEmpty\",\n label: \"Is Not empty\",\n combinators: [\"and\"],\n },\n {\n operator: \"IsNot\",\n label: \"Is Not\",\n combinators: [\"and\"],\n },\n {\n operator: \"Empty\",\n label: \"Empty\",\n combinators: [\"and\"],\n },\n ],\n textarea: [\n {\n operator: \"equals\",\n label: \"Equals\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"equalsIgnoreCase\",\n label: \"Equals Ignore Case\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"Contains\",\n label: \"Contains\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"StartsWith\",\n label: \"A string begins with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"EndsWith\",\n label: \"A string ends with\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"IsNotEmpty\",\n label: \"Is Not empty\",\n combinators: [\"and\"],\n },\n {\n operator: \"IsNot\",\n label: \"Is Not\",\n combinators: [\"and\"],\n },\n {\n operator: \"Empty\",\n label: \"Empty\",\n combinators: [\"and\"],\n },\n ],\n boolean: [\n {\n operator: \"equalsTo\",\n label: \"=\",\n combinators: [\"and\", \"or\"],\n },\n ],\n dateandtime: [\n {\n operator: \"greaterThan\",\n label: \"Greater than\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThan\",\n label: \"Less than\",\n combinators: [\"and\"],\n },\n {\n operator: \"equalsTo\",\n label: \"Equal to\",\n combinators: [\"and\", \"or\"],\n },\n {\n operator: \"greaterThanEq\",\n label: \"Greater than or equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"lessThanEq\",\n label: \"Less than or equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"notEqual\",\n label: \"Not equal to\",\n combinators: [\"and\"],\n },\n {\n operator: \"range\",\n label: \"Range\",\n combinators: [\"and\"],\n },\n ],\n};\n\nexport const defaultCombinators = [\n { operand: \"and\", label: \"AND\" },\n { operand: \"or\", label: \"OR\" },\n];\n\nexport const defaultLabels = {\n query: {\n delete: {\n ariaLabel: \"Reset query\",\n tooltip: \"Reset query\",\n dialogTitle: \"Remove all conditions?\",\n dialogMessage:\n \"Are you sure you want to remove all the conditions? They will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n },\n rule: {\n attribute: {\n label: \"Attribute\",\n placeholder: \"Select attribute...\",\n exists: \"Attribute already exists.\",\n },\n operator: {\n label: \"Operator\",\n placeholder: \"Select operator...\",\n },\n value: {\n distance: {\n label: \"Value\",\n connectorText: \"radius miles from\",\n button: \"Select location\",\n validation: {\n required: \"The value is required.\",\n invalid: \"Value must be a positive number.\",\n },\n },\n text: {\n label: \"Value\",\n placeholder: \"Enter value...\",\n validation: {\n required: \"The value is required.\",\n },\n },\n boolean: {\n label: \"Value\",\n placeholder: \"Enter value\",\n options: {\n true: \"True\",\n false: \"False\",\n },\n },\n numeric: {\n label: \"Value\",\n placeholder: \"Enter value\",\n validation: {\n required: \"The value is required.\",\n invalid: \"Value must be a number.\",\n equal: \"Cannot be equal.\",\n greaterThan: \"Needs to be greater.\",\n },\n range: {\n leftLabel: \"From\",\n rightLabel: \"To\",\n },\n },\n datetime: {\n dateLabel: \"Date\",\n datePlaceholder: \"Select Date\",\n timeLabel: \"Time\",\n timePlaceholder: \"Select Time\",\n startDateLabel: \"Start Date\",\n startDatePlaceholder: \"Select Start Date\",\n startTimeLabel: \"Start Time\",\n startTimePlaceholder: \"Select Start Time\",\n endDateLabel: \"End Date\",\n endDatePlaceholder: \"Select End Date\",\n endTimeLabel: \"End Time\",\n endTimePlaceholder: \"Select End Time\",\n validation: {\n required: \"The value is required.\",\n invalidInterval: \"End date and time must be after start date and time.\",\n },\n },\n },\n delete: {\n ariaLabel: \"Remove condition\",\n tooltip: \"Remove condition\",\n dialogTitle: \"Remove condition?\",\n dialogMessage:\n \"Are you sure you want to remove the condition? It will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n },\n group: {\n delete: {\n ariaLabel: \"Remove group\",\n tooltip: \"Remove group\",\n dialogTitle: \"Remove group?\",\n dialogMessage: \"Are you sure you want to remove the group? It will be removed permanently.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n reset: {\n ariaLabel: \"Change operator\",\n tooltip: \"Change operator query\",\n dialogTitle: \"Change conditional operator?\",\n dialogMessage:\n \"Do you want to change conditional operator? You won't be able to undo this operation. Conditions and/or groups will be removed.\",\n dialogConfirm: \"Yes\",\n dialogCancel: \"No\",\n dialogCloseTooltip: \"Close\",\n },\n addRule: {\n label: \"Add condition\",\n },\n addGroup: {\n label: \"Add group\",\n },\n },\n empty: {\n title: \"No conditions created yet\",\n createCondition: \"Create a condition\",\n createGroup: \"condition group\",\n spacer: \" or a \",\n },\n};\n\nexport default createContext({\n dispatchAction: () => ({}),\n askAction: () => ({}),\n selectLocation: () => ({}),\n attributes: {},\n operators: defaultOperators,\n combinators: defaultCombinators,\n maxDepth: 1,\n labels: defaultLabels,\n initialTouched: false,\n readOnly: false,\n});\n"],"mappings":"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"}
|
|
@@ -48,6 +48,10 @@ export interface HvQueryBuilderProps
|
|
|
48
48
|
* An object containing all the labels.
|
|
49
49
|
*/
|
|
50
50
|
labels?: QueryBuilderLabels;
|
|
51
|
+
/**
|
|
52
|
+
* A flag indicating if the Query Builder is in read only mode.
|
|
53
|
+
*/
|
|
54
|
+
readOnly?: boolean;
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
export default function HvQueryBuilder(props: HvQueryBuilderProps): JSX.Element | null;
|
|
@@ -29,6 +29,8 @@ var HvQueryBuilder = function HvQueryBuilder(_ref) {
|
|
|
29
29
|
_ref$maxDepth = _ref.maxDepth,
|
|
30
30
|
maxDepth = _ref$maxDepth === void 0 ? 1 : _ref$maxDepth,
|
|
31
31
|
labels = _ref.labels,
|
|
32
|
+
_ref$readOnly = _ref.readOnly,
|
|
33
|
+
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
|
32
34
|
classes = _ref.classes;
|
|
33
35
|
|
|
34
36
|
var _useState = useState(),
|
|
@@ -62,9 +64,10 @@ var HvQueryBuilder = function HvQueryBuilder(_ref) {
|
|
|
62
64
|
combinators: combinators !== null && combinators !== void 0 ? combinators : defaultcontext.combinators,
|
|
63
65
|
maxDepth: maxDepth !== null && maxDepth !== void 0 ? maxDepth : defaultcontext.maxDepth,
|
|
64
66
|
labels: labels !== null && labels !== void 0 ? labels : defaultcontext.labels,
|
|
65
|
-
initialTouched: initialState
|
|
67
|
+
initialTouched: initialState,
|
|
68
|
+
readOnly: readOnly
|
|
66
69
|
};
|
|
67
|
-
}, [attributes, operators, defaultcontext.operators, defaultcontext.combinators, defaultcontext.maxDepth, defaultcontext.labels, combinators, maxDepth, labels, initialState]);
|
|
70
|
+
}, [attributes, operators, defaultcontext.operators, defaultcontext.combinators, defaultcontext.maxDepth, defaultcontext.labels, combinators, maxDepth, labels, readOnly, initialState]);
|
|
68
71
|
useEffect(function () {
|
|
69
72
|
if (currentAttributes.current == null) {
|
|
70
73
|
// first run, nothing to do
|
|
@@ -240,7 +243,12 @@ process.env.NODE_ENV !== "production" ? HvQueryBuilder.propTypes = {
|
|
|
240
243
|
/**
|
|
241
244
|
* An object containing all the labels.
|
|
242
245
|
*/
|
|
243
|
-
labels: PropTypes.instanceOf(Object)
|
|
246
|
+
labels: PropTypes.instanceOf(Object),
|
|
247
|
+
|
|
248
|
+
/**
|
|
249
|
+
* A flag indicating if the Query Builder is in read only mode.
|
|
250
|
+
*/
|
|
251
|
+
readOnly: PropTypes.bool
|
|
244
252
|
} : void 0;
|
|
245
253
|
export default withStyles(styles, {
|
|
246
254
|
name: "HvQueryBuilder"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryBuilder.js","names":["React","useEffect","useMemo","useReducer","useRef","useState","useContext","PropTypes","isEqual","cloneDeep","withStyles","Context","RuleGroup","ConfirmationDialog","emptyGroup","clearNodeIds","reducer","styles","HvQueryBuilder","attributes","query","onChange","operators","combinators","maxDepth","labels","classes","pendingAction","askAction","currentAttributes","initialState","state","dispatchAction","prevState","setPrevState","defaultcontext","context","initialTouched","current","type","onConfirmHandler","undefined","actions","forEach","action","onCancelHandler","id","combinator","rules","dialog","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","propTypes","shape","root","string","topGroup","subGroup","topCombinator","combinatorButton","removeButton","topRemoveButton","rulesContainer","subRulesContainer","actionButtonContainer","topActionButtonContainer","key","number","label","isRequired","value","any","order","arrayOf","operator","operand","attribute","func","instanceOf","Object","name"],"sources":["../../../src/QueryBuilder/QueryBuilder.js"],"sourcesContent":["import React, { useEffect, useMemo, useReducer, useRef, useState, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isEqual from \"lodash/isEqual\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport Context from \"./Context\";\nimport RuleGroup from \"./RuleGroup\";\nimport ConfirmationDialog from \"./ConfirmationDialog\";\nimport { emptyGroup, clearNodeIds } from \"./utils\";\nimport reducer from \"./utils/reducer\";\nimport styles from \"./styles\";\n\n/**\n * **HvQueryBuilder** component allows you to create conditions and group them using logical operators.\n * It outputs a structured set of rules which can be easily parsed to create SQL/NoSQL/whatever queries.\n *\n * **PLEASE NOTE**: This component implementation is still a WIP. There might be breaking changes.\n */\nconst HvQueryBuilder = ({\n attributes = [],\n query,\n onChange,\n operators,\n combinators,\n maxDepth = 1,\n labels,\n classes,\n}) => {\n const [pendingAction, askAction] = useState();\n const currentAttributes = useRef();\n const [state, dispatchAction] = useReducer(\n reducer,\n query,\n (initialState) => initialState || emptyGroup()\n );\n\n const initialState = query === state;\n const [prevState, setPrevState] = useState();\n\n const defaultcontext = useContext(Context);\n\n const context = useMemo(\n () => ({\n dispatchAction,\n askAction,\n attributes,\n operators: operators ?? defaultcontext.operators,\n combinators: combinators ?? defaultcontext.combinators,\n maxDepth: maxDepth ?? defaultcontext.maxDepth,\n labels: labels ?? defaultcontext.labels,\n initialTouched: initialState,\n }),\n [\n attributes,\n operators,\n defaultcontext.operators,\n defaultcontext.combinators,\n defaultcontext.maxDepth,\n defaultcontext.labels,\n combinators,\n maxDepth,\n labels,\n initialState,\n ]\n );\n\n useEffect(() => {\n if (currentAttributes.current == null) {\n // first run, nothing to do\n currentAttributes.current = attributes;\n } else if (currentAttributes.current !== attributes) {\n // attributes changed, the existing query is almost certain invalid, so reset it\n currentAttributes.current = attributes;\n dispatchAction({ type: \"reset-query\" });\n }\n }, [attributes]);\n\n // Propagate the change if the query is modified.\n useEffect(() => {\n if (!initialState && !isEqual(state, prevState)) {\n onChange?.(clearNodeIds(state));\n setPrevState(cloneDeep(state));\n }\n }, [state, prevState, initialState, onChange]);\n\n const onConfirmHandler = () => {\n if (pendingAction) {\n askAction(undefined);\n pendingAction.actions.forEach((action) => dispatchAction(action));\n }\n };\n\n const onCancelHandler = () => {\n askAction(undefined);\n };\n\n return (\n <Context.Provider value={context}>\n <RuleGroup\n level={0}\n id={state.id}\n combinator={state.combinator}\n rules={state.rules}\n classes={classes}\n />\n <ConfirmationDialog\n isOpen={pendingAction != null}\n onConfirm={onConfirmHandler}\n onCancel={onCancelHandler}\n title={pendingAction?.dialog.dialogTitle || \"\"}\n message={pendingAction?.dialog.dialogMessage || \"\"}\n confirmButtonLabel={pendingAction?.dialog.dialogConfirm || \"\"}\n cancelButtonLabel={pendingAction?.dialog.dialogCancel || \"\"}\n closeButtonTooltip={pendingAction?.dialog.dialogCloseTooltip || \"\"}\n />\n </Context.Provider>\n );\n};\n\nHvQueryBuilder.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n attributes: PropTypes.shape({\n key: PropTypes.shape({\n id: PropTypes.number,\n label: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.any,\n order: PropTypes.number,\n }),\n }).isRequired,\n /**\n * The query rules operators by attribute type and combinator.\n */\n operators: PropTypes.shape({\n type: PropTypes.arrayOf(\n PropTypes.shape({\n operator: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n combinators: PropTypes.arrayOf(PropTypes.string).isRequired,\n })\n ),\n }),\n /**\n * The query combinators operands.\n */\n combinators: PropTypes.arrayOf(\n PropTypes.shape({\n operand: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n })\n ),\n /**\n * The initial query representation.\n */\n query: PropTypes.shape({\n id: PropTypes.number,\n combinator: PropTypes.string.isRequired,\n rules: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.number,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n })\n ).isRequired,\n }),\n /**\n * Callback fired when query changes.\n */\n onChange: PropTypes.func,\n /**\n * Max depth of nested query groups.\n */\n maxDepth: PropTypes.number,\n /**\n * An object containing all the labels.\n */\n labels: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvQueryBuilder\" })(HvQueryBuilder);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"QueryBuilder.js","names":["React","useEffect","useMemo","useReducer","useRef","useState","useContext","PropTypes","isEqual","cloneDeep","withStyles","Context","RuleGroup","ConfirmationDialog","emptyGroup","clearNodeIds","reducer","styles","HvQueryBuilder","attributes","query","onChange","operators","combinators","maxDepth","labels","readOnly","classes","pendingAction","askAction","currentAttributes","initialState","state","dispatchAction","prevState","setPrevState","defaultcontext","context","initialTouched","current","type","onConfirmHandler","undefined","actions","forEach","action","onCancelHandler","id","combinator","rules","dialog","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","propTypes","shape","root","string","topGroup","subGroup","topCombinator","combinatorButton","removeButton","topRemoveButton","rulesContainer","subRulesContainer","actionButtonContainer","topActionButtonContainer","key","number","label","isRequired","value","any","order","arrayOf","operator","operand","attribute","func","instanceOf","Object","bool","name"],"sources":["../../../src/QueryBuilder/QueryBuilder.js"],"sourcesContent":["import React, { useEffect, useMemo, useReducer, useRef, useState, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isEqual from \"lodash/isEqual\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport Context from \"./Context\";\nimport RuleGroup from \"./RuleGroup\";\nimport ConfirmationDialog from \"./ConfirmationDialog\";\nimport { emptyGroup, clearNodeIds } from \"./utils\";\nimport reducer from \"./utils/reducer\";\nimport styles from \"./styles\";\n\n/**\n * **HvQueryBuilder** component allows you to create conditions and group them using logical operators.\n * It outputs a structured set of rules which can be easily parsed to create SQL/NoSQL/whatever queries.\n *\n * **PLEASE NOTE**: This component implementation is still a WIP. There might be breaking changes.\n */\nconst HvQueryBuilder = ({\n attributes = [],\n query,\n onChange,\n operators,\n combinators,\n maxDepth = 1,\n labels,\n readOnly = false,\n classes,\n}) => {\n const [pendingAction, askAction] = useState();\n const currentAttributes = useRef();\n const [state, dispatchAction] = useReducer(\n reducer,\n query,\n (initialState) => initialState || emptyGroup()\n );\n\n const initialState = query === state;\n const [prevState, setPrevState] = useState();\n\n const defaultcontext = useContext(Context);\n\n const context = useMemo(\n () => ({\n dispatchAction,\n askAction,\n attributes,\n operators: operators ?? defaultcontext.operators,\n combinators: combinators ?? defaultcontext.combinators,\n maxDepth: maxDepth ?? defaultcontext.maxDepth,\n labels: labels ?? defaultcontext.labels,\n initialTouched: initialState,\n readOnly,\n }),\n [\n attributes,\n operators,\n defaultcontext.operators,\n defaultcontext.combinators,\n defaultcontext.maxDepth,\n defaultcontext.labels,\n combinators,\n maxDepth,\n labels,\n readOnly,\n initialState,\n ]\n );\n\n useEffect(() => {\n if (currentAttributes.current == null) {\n // first run, nothing to do\n currentAttributes.current = attributes;\n } else if (currentAttributes.current !== attributes) {\n // attributes changed, the existing query is almost certain invalid, so reset it\n currentAttributes.current = attributes;\n dispatchAction({ type: \"reset-query\" });\n }\n }, [attributes]);\n\n // Propagate the change if the query is modified.\n useEffect(() => {\n if (!initialState && !isEqual(state, prevState)) {\n onChange?.(clearNodeIds(state));\n setPrevState(cloneDeep(state));\n }\n }, [state, prevState, initialState, onChange]);\n\n const onConfirmHandler = () => {\n if (pendingAction) {\n askAction(undefined);\n pendingAction.actions.forEach((action) => dispatchAction(action));\n }\n };\n\n const onCancelHandler = () => {\n askAction(undefined);\n };\n\n return (\n <Context.Provider value={context}>\n <RuleGroup\n level={0}\n id={state.id}\n combinator={state.combinator}\n rules={state.rules}\n classes={classes}\n />\n <ConfirmationDialog\n isOpen={pendingAction != null}\n onConfirm={onConfirmHandler}\n onCancel={onCancelHandler}\n title={pendingAction?.dialog.dialogTitle || \"\"}\n message={pendingAction?.dialog.dialogMessage || \"\"}\n confirmButtonLabel={pendingAction?.dialog.dialogConfirm || \"\"}\n cancelButtonLabel={pendingAction?.dialog.dialogCancel || \"\"}\n closeButtonTooltip={pendingAction?.dialog.dialogCloseTooltip || \"\"}\n />\n </Context.Provider>\n );\n};\n\nHvQueryBuilder.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See CSS API tab for more details.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the top group container.\n */\n topGroup: PropTypes.string,\n /**\n * Styles applied to the sub group containers.\n */\n subGroup: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container.\n */\n combinator: PropTypes.string,\n /**\n * Styles applied to the multi-button combinator container on the top group.\n */\n topCombinator: PropTypes.string,\n /**\n * Styles applied to each combinator button.\n */\n combinatorButton: PropTypes.string,\n /**\n * Styles applied to the remove button.\n */\n removeButton: PropTypes.string,\n /**\n * Styles applied to the remove button on the top group.\n */\n topRemoveButton: PropTypes.string,\n /**\n * Styles applied to the rules container.\n */\n rulesContainer: PropTypes.string,\n /**\n * Styles applied to the sub rules container.\n */\n subRulesContainer: PropTypes.string,\n /**\n * Styles applied to the action button container.\n */\n actionButtonContainer: PropTypes.string,\n /**\n * Styles applied to the top action button container.\n */\n topActionButtonContainer: PropTypes.string,\n }),\n attributes: PropTypes.shape({\n key: PropTypes.shape({\n id: PropTypes.number,\n label: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.any,\n order: PropTypes.number,\n }),\n }).isRequired,\n /**\n * The query rules operators by attribute type and combinator.\n */\n operators: PropTypes.shape({\n type: PropTypes.arrayOf(\n PropTypes.shape({\n operator: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n combinators: PropTypes.arrayOf(PropTypes.string).isRequired,\n })\n ),\n }),\n /**\n * The query combinators operands.\n */\n combinators: PropTypes.arrayOf(\n PropTypes.shape({\n operand: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n })\n ),\n /**\n * The initial query representation.\n */\n query: PropTypes.shape({\n id: PropTypes.number,\n combinator: PropTypes.string.isRequired,\n rules: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.number,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n })\n ).isRequired,\n }),\n /**\n * Callback fired when query changes.\n */\n onChange: PropTypes.func,\n /**\n * Max depth of nested query groups.\n */\n maxDepth: PropTypes.number,\n /**\n * An object containing all the labels.\n */\n labels: PropTypes.instanceOf(Object),\n /**\n * A flag indicating if the Query Builder is in read only mode.\n */\n readOnly: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvQueryBuilder\" })(HvQueryBuilder);\n"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,OAA3B,EAAoCC,UAApC,EAAgDC,MAAhD,EAAwDC,QAAxD,EAAkEC,UAAlE,QAAoF,OAApF;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,OAAOC,SAAP,MAAsB,kBAAtB;AACA,SAASC,UAAT,QAA2B,mBAA3B;AAEA,OAAOC,OAAP,MAAoB,WAApB;AACA,OAAOC,SAAP,MAAsB,aAAtB;AACA,OAAOC,kBAAP,MAA+B,sBAA/B;AACA,SAASC,UAAT,EAAqBC,YAArB,QAAyC,SAAzC;AACA,OAAOC,OAAP,MAAoB,iBAApB;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA;AACA;AACA;AACA;AACA;AACA;;AACA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,OAUjB;EAAA,2BATJC,UASI;EAAA,IATJA,UASI,gCATS,EAST;EAAA,IARJC,KAQI,QARJA,KAQI;EAAA,IAPJC,QAOI,QAPJA,QAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,WAKI,QALJA,WAKI;EAAA,yBAJJC,QAII;EAAA,IAJJA,QAII,8BAJO,CAIP;EAAA,IAHJC,MAGI,QAHJA,MAGI;EAAA,yBAFJC,QAEI;EAAA,IAFJA,QAEI,8BAFO,KAEP;EAAA,IADJC,OACI,QADJA,OACI;;EACJ,gBAAmCtB,QAAQ,EAA3C;EAAA;EAAA,IAAOuB,aAAP;EAAA,IAAsBC,SAAtB;;EACA,IAAMC,iBAAiB,GAAG1B,MAAM,EAAhC;;EACA,kBAAgCD,UAAU,CACxCa,OADwC,EAExCI,KAFwC,EAGxC,UAACW,YAAD;IAAA,OAAkBA,YAAY,IAAIjB,UAAU,EAA5C;EAAA,CAHwC,CAA1C;EAAA;EAAA,IAAOkB,KAAP;EAAA,IAAcC,cAAd;;EAMA,IAAMF,YAAY,GAAGX,KAAK,KAAKY,KAA/B;;EACA,iBAAkC3B,QAAQ,EAA1C;EAAA;EAAA,IAAO6B,SAAP;EAAA,IAAkBC,YAAlB;;EAEA,IAAMC,cAAc,GAAG9B,UAAU,CAACK,OAAD,CAAjC;EAEA,IAAM0B,OAAO,GAAGnC,OAAO,CACrB;IAAA,OAAO;MACL+B,cAAc,EAAdA,cADK;MAELJ,SAAS,EAATA,SAFK;MAGLV,UAAU,EAAVA,UAHK;MAILG,SAAS,EAAEA,SAAF,aAAEA,SAAF,cAAEA,SAAF,GAAec,cAAc,CAACd,SAJlC;MAKLC,WAAW,EAAEA,WAAF,aAAEA,WAAF,cAAEA,WAAF,GAAiBa,cAAc,CAACb,WALtC;MAMLC,QAAQ,EAAEA,QAAF,aAAEA,QAAF,cAAEA,QAAF,GAAcY,cAAc,CAACZ,QANhC;MAOLC,MAAM,EAAEA,MAAF,aAAEA,MAAF,cAAEA,MAAF,GAAYW,cAAc,CAACX,MAP5B;MAQLa,cAAc,EAAEP,YARX;MASLL,QAAQ,EAARA;IATK,CAAP;EAAA,CADqB,EAYrB,CACEP,UADF,EAEEG,SAFF,EAGEc,cAAc,CAACd,SAHjB,EAIEc,cAAc,CAACb,WAJjB,EAKEa,cAAc,CAACZ,QALjB,EAMEY,cAAc,CAACX,MANjB,EAOEF,WAPF,EAQEC,QARF,EASEC,MATF,EAUEC,QAVF,EAWEK,YAXF,CAZqB,CAAvB;EA2BA9B,SAAS,CAAC,YAAM;IACd,IAAI6B,iBAAiB,CAACS,OAAlB,IAA6B,IAAjC,EAAuC;MACrC;MACAT,iBAAiB,CAACS,OAAlB,GAA4BpB,UAA5B;IACD,CAHD,MAGO,IAAIW,iBAAiB,CAACS,OAAlB,KAA8BpB,UAAlC,EAA8C;MACnD;MACAW,iBAAiB,CAACS,OAAlB,GAA4BpB,UAA5B;MACAc,cAAc,CAAC;QAAEO,IAAI,EAAE;MAAR,CAAD,CAAd;IACD;EACF,CATQ,EASN,CAACrB,UAAD,CATM,CAAT,CAzCI,CAoDJ;;EACAlB,SAAS,CAAC,YAAM;IACd,IAAI,CAAC8B,YAAD,IAAiB,CAACvB,OAAO,CAACwB,KAAD,EAAQE,SAAR,CAA7B,EAAiD;MAC/Cb,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAGN,YAAY,CAACiB,KAAD,CAAf,CAAR;MACAG,YAAY,CAAC1B,SAAS,CAACuB,KAAD,CAAV,CAAZ;IACD;EACF,CALQ,EAKN,CAACA,KAAD,EAAQE,SAAR,EAAmBH,YAAnB,EAAiCV,QAAjC,CALM,CAAT;;EAOA,IAAMoB,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;IAC7B,IAAIb,aAAJ,EAAmB;MACjBC,SAAS,CAACa,SAAD,CAAT;MACAd,aAAa,CAACe,OAAd,CAAsBC,OAAtB,CAA8B,UAACC,MAAD;QAAA,OAAYZ,cAAc,CAACY,MAAD,CAA1B;MAAA,CAA9B;IACD;EACF,CALD;;EAOA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;IAC5BjB,SAAS,CAACa,SAAD,CAAT;EACD,CAFD;;EAIA,oBACE,oBAAC,OAAD,CAAS,QAAT;IAAkB,KAAK,EAAEL;EAAzB,gBACE,oBAAC,SAAD;IACE,KAAK,EAAE,CADT;IAEE,EAAE,EAAEL,KAAK,CAACe,EAFZ;IAGE,UAAU,EAAEf,KAAK,CAACgB,UAHpB;IAIE,KAAK,EAAEhB,KAAK,CAACiB,KAJf;IAKE,OAAO,EAAEtB;EALX,EADF,eAQE,oBAAC,kBAAD;IACE,MAAM,EAAEC,aAAa,IAAI,IAD3B;IAEE,SAAS,EAAEa,gBAFb;IAGE,QAAQ,EAAEK,eAHZ;IAIE,KAAK,EAAE,CAAAlB,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEsB,MAAf,CAAsBC,WAAtB,KAAqC,EAJ9C;IAKE,OAAO,EAAE,CAAAvB,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEsB,MAAf,CAAsBE,aAAtB,KAAuC,EALlD;IAME,kBAAkB,EAAE,CAAAxB,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEsB,MAAf,CAAsBG,aAAtB,KAAuC,EAN7D;IAOE,iBAAiB,EAAE,CAAAzB,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEsB,MAAf,CAAsBI,YAAtB,KAAsC,EAP3D;IAQE,kBAAkB,EAAE,CAAA1B,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEsB,MAAf,CAAsBK,kBAAtB,KAA4C;EARlE,EARF,CADF;AAqBD,CAtGD;;AAwGA,wCAAArC,cAAc,CAACsC,SAAf,GAA2B;EACzB;AACF;AACA;AACA;EACE7B,OAAO,EAAEpB,SAAS,CAACkD,KAAV,CAAgB;IACvB;AACJ;AACA;IACIC,IAAI,EAAEnD,SAAS,CAACoD,MAJO;;IAKvB;AACJ;AACA;IACIC,QAAQ,EAAErD,SAAS,CAACoD,MARG;;IASvB;AACJ;AACA;IACIE,QAAQ,EAAEtD,SAAS,CAACoD,MAZG;;IAavB;AACJ;AACA;IACIX,UAAU,EAAEzC,SAAS,CAACoD,MAhBC;;IAiBvB;AACJ;AACA;IACIG,aAAa,EAAEvD,SAAS,CAACoD,MApBF;;IAqBvB;AACJ;AACA;IACII,gBAAgB,EAAExD,SAAS,CAACoD,MAxBL;;IAyBvB;AACJ;AACA;IACIK,YAAY,EAAEzD,SAAS,CAACoD,MA5BD;;IA6BvB;AACJ;AACA;IACIM,eAAe,EAAE1D,SAAS,CAACoD,MAhCJ;;IAiCvB;AACJ;AACA;IACIO,cAAc,EAAE3D,SAAS,CAACoD,MApCH;;IAqCvB;AACJ;AACA;IACIQ,iBAAiB,EAAE5D,SAAS,CAACoD,MAxCN;;IAyCvB;AACJ;AACA;IACIS,qBAAqB,EAAE7D,SAAS,CAACoD,MA5CV;;IA6CvB;AACJ;AACA;IACIU,wBAAwB,EAAE9D,SAAS,CAACoD;EAhDb,CAAhB,CALgB;EAuDzBxC,UAAU,EAAEZ,SAAS,CAACkD,KAAV,CAAgB;IAC1Ba,GAAG,EAAE/D,SAAS,CAACkD,KAAV,CAAgB;MACnBV,EAAE,EAAExC,SAAS,CAACgE,MADK;MAEnBC,KAAK,EAAEjE,SAAS,CAACoD,MAAV,CAAiBc,UAFL;MAGnBjC,IAAI,EAAEjC,SAAS,CAACoD,MAAV,CAAiBc,UAHJ;MAInBC,KAAK,EAAEnE,SAAS,CAACoE,GAJE;MAKnBC,KAAK,EAAErE,SAAS,CAACgE;IALE,CAAhB;EADqB,CAAhB,EAQTE,UA/DsB;;EAgEzB;AACF;AACA;EACEnD,SAAS,EAAEf,SAAS,CAACkD,KAAV,CAAgB;IACzBjB,IAAI,EAAEjC,SAAS,CAACsE,OAAV,CACJtE,SAAS,CAACkD,KAAV,CAAgB;MACdqB,QAAQ,EAAEvE,SAAS,CAACoD,MAAV,CAAiBc,UADb;MAEdD,KAAK,EAAEjE,SAAS,CAACoD,MAAV,CAAiBc,UAFV;MAGdlD,WAAW,EAAEhB,SAAS,CAACsE,OAAV,CAAkBtE,SAAS,CAACoD,MAA5B,EAAoCc;IAHnC,CAAhB,CADI;EADmB,CAAhB,CAnEc;;EA4EzB;AACF;AACA;EACElD,WAAW,EAAEhB,SAAS,CAACsE,OAAV,CACXtE,SAAS,CAACkD,KAAV,CAAgB;IACdsB,OAAO,EAAExE,SAAS,CAACoD,MAAV,CAAiBc,UADZ;IAEdD,KAAK,EAAEjE,SAAS,CAACoD,MAAV,CAAiBc;EAFV,CAAhB,CADW,CA/EY;;EAqFzB;AACF;AACA;EACErD,KAAK,EAAEb,SAAS,CAACkD,KAAV,CAAgB;IACrBV,EAAE,EAAExC,SAAS,CAACgE,MADO;IAErBvB,UAAU,EAAEzC,SAAS,CAACoD,MAAV,CAAiBc,UAFR;IAGrBxB,KAAK,EAAE1C,SAAS,CAACsE,OAAV,CACLtE,SAAS,CAACkD,KAAV,CAAgB;MACdV,EAAE,EAAExC,SAAS,CAACgE,MADA;MAEdS,SAAS,EAAEzE,SAAS,CAACoD,MAFP;MAGdmB,QAAQ,EAAEvE,SAAS,CAACoD,MAHN;MAIde,KAAK,EAAEnE,SAAS,CAACoE;IAJH,CAAhB,CADK,EAOLF;EAVmB,CAAhB,CAxFkB;;EAoGzB;AACF;AACA;EACEpD,QAAQ,EAAEd,SAAS,CAAC0E,IAvGK;;EAwGzB;AACF;AACA;EACEzD,QAAQ,EAAEjB,SAAS,CAACgE,MA3GK;;EA4GzB;AACF;AACA;EACE9C,MAAM,EAAElB,SAAS,CAAC2E,UAAV,CAAqBC,MAArB,CA/GiB;;EAgHzB;AACF;AACA;EACEzD,QAAQ,EAAEnB,SAAS,CAAC6E;AAnHK,CAA3B;AAsHA,eAAe1E,UAAU,CAACO,MAAD,EAAS;EAAEoE,IAAI,EAAE;AAAR,CAAT,CAAV,CAA+CnE,cAA/C,CAAf"}
|