@hitachivantara/uikit-react-lab 3.51.7 → 3.52.1

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.
Files changed (70) hide show
  1. package/dist/QueryBuilder/Context.js +2 -1
  2. package/dist/QueryBuilder/Context.js.map +1 -1
  3. package/dist/QueryBuilder/QueryBuilder.d.ts +4 -0
  4. package/dist/QueryBuilder/QueryBuilder.js +11 -3
  5. package/dist/QueryBuilder/QueryBuilder.js.map +1 -1
  6. package/dist/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
  7. package/dist/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
  8. package/dist/QueryBuilder/Rule/Operator/Operator.js +3 -1
  9. package/dist/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
  10. package/dist/QueryBuilder/Rule/Rule.js +9 -5
  11. package/dist/QueryBuilder/Rule/Rule.js.map +1 -1
  12. package/dist/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
  13. package/dist/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
  14. package/dist/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
  15. package/dist/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
  16. package/dist/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
  17. package/dist/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
  18. package/dist/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
  19. package/dist/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
  20. package/dist/QueryBuilder/RuleGroup/RuleGroup.js +30 -12
  21. package/dist/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  22. package/dist/QueryBuilder/RuleGroup/styles.js +3 -0
  23. package/dist/QueryBuilder/RuleGroup/styles.js.map +1 -1
  24. package/dist/legacy/QueryBuilder/Context.js +2 -1
  25. package/dist/legacy/QueryBuilder/Context.js.map +1 -1
  26. package/dist/legacy/QueryBuilder/QueryBuilder.d.ts +4 -0
  27. package/dist/legacy/QueryBuilder/QueryBuilder.js +11 -3
  28. package/dist/legacy/QueryBuilder/QueryBuilder.js.map +1 -1
  29. package/dist/legacy/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
  30. package/dist/legacy/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
  31. package/dist/legacy/QueryBuilder/Rule/Operator/Operator.js +3 -1
  32. package/dist/legacy/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
  33. package/dist/legacy/QueryBuilder/Rule/Rule.js +9 -5
  34. package/dist/legacy/QueryBuilder/Rule/Rule.js.map +1 -1
  35. package/dist/legacy/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
  36. package/dist/legacy/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
  37. package/dist/legacy/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
  38. package/dist/legacy/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
  39. package/dist/legacy/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
  40. package/dist/legacy/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
  41. package/dist/legacy/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
  42. package/dist/legacy/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
  43. package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js +28 -10
  44. package/dist/legacy/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  45. package/dist/legacy/QueryBuilder/RuleGroup/styles.js +3 -0
  46. package/dist/legacy/QueryBuilder/RuleGroup/styles.js.map +1 -1
  47. package/dist/modern/QueryBuilder/Context.js +2 -1
  48. package/dist/modern/QueryBuilder/Context.js.map +1 -1
  49. package/dist/modern/QueryBuilder/QueryBuilder.d.ts +4 -0
  50. package/dist/modern/QueryBuilder/QueryBuilder.js +10 -3
  51. package/dist/modern/QueryBuilder/QueryBuilder.js.map +1 -1
  52. package/dist/modern/QueryBuilder/Rule/Attribute/Attribute.js +3 -1
  53. package/dist/modern/QueryBuilder/Rule/Attribute/Attribute.js.map +1 -1
  54. package/dist/modern/QueryBuilder/Rule/Operator/Operator.js +3 -1
  55. package/dist/modern/QueryBuilder/Rule/Operator/Operator.js.map +1 -1
  56. package/dist/modern/QueryBuilder/Rule/Rule.js +9 -5
  57. package/dist/modern/QueryBuilder/Rule/Rule.js.map +1 -1
  58. package/dist/modern/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js +3 -1
  59. package/dist/modern/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js.map +1 -1
  60. package/dist/modern/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js +10 -5
  61. package/dist/modern/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js.map +1 -1
  62. package/dist/modern/QueryBuilder/Rule/Value/NumericValue/NumericValue.js +8 -4
  63. package/dist/modern/QueryBuilder/Rule/Value/NumericValue/NumericValue.js.map +1 -1
  64. package/dist/modern/QueryBuilder/Rule/Value/TextValue/TextValue.js +4 -2
  65. package/dist/modern/QueryBuilder/Rule/Value/TextValue/TextValue.js.map +1 -1
  66. package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js +28 -10
  67. package/dist/modern/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  68. package/dist/modern/QueryBuilder/RuleGroup/styles.js +3 -0
  69. package/dist/modern/QueryBuilder/RuleGroup/styles.js.map +1 -1
  70. package/package.json +3 -3
@@ -287,7 +287,8 @@ var _default = /*#__PURE__*/(0, _react.createContext)({
287
287
  combinators: defaultCombinators,
288
288
  maxDepth: 1,
289
289
  labels: defaultLabels,
290
- initialTouched: false
290
+ initialTouched: false,
291
+ readOnly: false
291
292
  });
292
293
 
293
294
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","names":["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","createContext","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":["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","createContext","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;
@@ -67,6 +67,8 @@ var HvQueryBuilder = function HvQueryBuilder(_ref) {
67
67
  _ref$maxDepth = _ref.maxDepth,
68
68
  maxDepth = _ref$maxDepth === void 0 ? 1 : _ref$maxDepth,
69
69
  labels = _ref.labels,
70
+ _ref$readOnly = _ref.readOnly,
71
+ readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
70
72
  classes = _ref.classes;
71
73
 
72
74
  var _useState = (0, _react.useState)(),
@@ -100,9 +102,10 @@ var HvQueryBuilder = function HvQueryBuilder(_ref) {
100
102
  combinators: combinators !== null && combinators !== void 0 ? combinators : defaultcontext.combinators,
101
103
  maxDepth: maxDepth !== null && maxDepth !== void 0 ? maxDepth : defaultcontext.maxDepth,
102
104
  labels: labels !== null && labels !== void 0 ? labels : defaultcontext.labels,
103
- initialTouched: initialState
105
+ initialTouched: initialState,
106
+ readOnly: readOnly
104
107
  };
105
- }, [attributes, operators, defaultcontext.operators, defaultcontext.combinators, defaultcontext.maxDepth, defaultcontext.labels, combinators, maxDepth, labels, initialState]);
108
+ }, [attributes, operators, defaultcontext.operators, defaultcontext.combinators, defaultcontext.maxDepth, defaultcontext.labels, combinators, maxDepth, labels, readOnly, initialState]);
106
109
  (0, _react.useEffect)(function () {
107
110
  if (currentAttributes.current == null) {
108
111
  // first run, nothing to do
@@ -278,7 +281,12 @@ process.env.NODE_ENV !== "production" ? HvQueryBuilder.propTypes = {
278
281
  /**
279
282
  * An object containing all the labels.
280
283
  */
281
- labels: _propTypes.default.instanceOf(Object)
284
+ labels: _propTypes.default.instanceOf(Object),
285
+
286
+ /**
287
+ * A flag indicating if the Query Builder is in read only mode.
288
+ */
289
+ readOnly: _propTypes.default.bool
282
290
  } : void 0;
283
291
 
284
292
  var _default = (0, _core.withStyles)(_styles.default, {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilder.js","names":["HvQueryBuilder","attributes","query","onChange","operators","combinators","maxDepth","labels","classes","useState","pendingAction","askAction","currentAttributes","useRef","useReducer","reducer","initialState","emptyGroup","state","dispatchAction","prevState","setPrevState","defaultcontext","useContext","Context","context","useMemo","initialTouched","useEffect","current","type","isEqual","clearNodeIds","cloneDeep","onConfirmHandler","undefined","actions","forEach","action","onCancelHandler","id","combinator","rules","dialog","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","propTypes","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","withStyles","styles","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":["HvQueryBuilder","attributes","query","onChange","operators","combinators","maxDepth","labels","readOnly","classes","useState","pendingAction","askAction","currentAttributes","useRef","useReducer","reducer","initialState","emptyGroup","state","dispatchAction","prevState","setPrevState","defaultcontext","useContext","Context","context","useMemo","initialTouched","useEffect","current","type","isEqual","clearNodeIds","cloneDeep","onConfirmHandler","undefined","actions","forEach","action","onCancelHandler","id","combinator","rules","dialog","dialogTitle","dialogMessage","dialogConfirm","dialogCancel","dialogCloseTooltip","propTypes","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","withStyles","styles","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;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,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,gBAAmC,IAAAC,eAAA,GAAnC;EAAA;EAAA,IAAOC,aAAP;EAAA,IAAsBC,SAAtB;;EACA,IAAMC,iBAAiB,GAAG,IAAAC,aAAA,GAA1B;;EACA,kBAAgC,IAAAC,iBAAA,EAC9BC,gBAD8B,EAE9Bd,KAF8B,EAG9B,UAACe,YAAD;IAAA,OAAkBA,YAAY,IAAI,IAAAC,iBAAA,GAAlC;EAAA,CAH8B,CAAhC;EAAA;EAAA,IAAOC,KAAP;EAAA,IAAcC,cAAd;;EAMA,IAAMH,YAAY,GAAGf,KAAK,KAAKiB,KAA/B;;EACA,iBAAkC,IAAAT,eAAA,GAAlC;EAAA;EAAA,IAAOW,SAAP;EAAA,IAAkBC,YAAlB;;EAEA,IAAMC,cAAc,GAAG,IAAAC,iBAAA,EAAWC,gBAAX,CAAvB;EAEA,IAAMC,OAAO,GAAG,IAAAC,cAAA,EACd;IAAA,OAAO;MACLP,cAAc,EAAdA,cADK;MAELR,SAAS,EAATA,SAFK;MAGLX,UAAU,EAAVA,UAHK;MAILG,SAAS,EAAEA,SAAF,aAAEA,SAAF,cAAEA,SAAF,GAAemB,cAAc,CAACnB,SAJlC;MAKLC,WAAW,EAAEA,WAAF,aAAEA,WAAF,cAAEA,WAAF,GAAiBkB,cAAc,CAAClB,WALtC;MAMLC,QAAQ,EAAEA,QAAF,aAAEA,QAAF,cAAEA,QAAF,GAAciB,cAAc,CAACjB,QANhC;MAOLC,MAAM,EAAEA,MAAF,aAAEA,MAAF,cAAEA,MAAF,GAAYgB,cAAc,CAAChB,MAP5B;MAQLqB,cAAc,EAAEX,YARX;MASLT,QAAQ,EAARA;IATK,CAAP;EAAA,CADc,EAYd,CACEP,UADF,EAEEG,SAFF,EAGEmB,cAAc,CAACnB,SAHjB,EAIEmB,cAAc,CAAClB,WAJjB,EAKEkB,cAAc,CAACjB,QALjB,EAMEiB,cAAc,CAAChB,MANjB,EAOEF,WAPF,EAQEC,QARF,EASEC,MATF,EAUEC,QAVF,EAWES,YAXF,CAZc,CAAhB;EA2BA,IAAAY,gBAAA,EAAU,YAAM;IACd,IAAIhB,iBAAiB,CAACiB,OAAlB,IAA6B,IAAjC,EAAuC;MACrC;MACAjB,iBAAiB,CAACiB,OAAlB,GAA4B7B,UAA5B;IACD,CAHD,MAGO,IAAIY,iBAAiB,CAACiB,OAAlB,KAA8B7B,UAAlC,EAA8C;MACnD;MACAY,iBAAiB,CAACiB,OAAlB,GAA4B7B,UAA5B;MACAmB,cAAc,CAAC;QAAEW,IAAI,EAAE;MAAR,CAAD,CAAd;IACD;EACF,CATD,EASG,CAAC9B,UAAD,CATH,EAzCI,CAoDJ;;EACA,IAAA4B,gBAAA,EAAU,YAAM;IACd,IAAI,CAACZ,YAAD,IAAiB,CAAC,IAAAe,gBAAA,EAAQb,KAAR,EAAeE,SAAf,CAAtB,EAAiD;MAC/ClB,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAG,IAAA8B,mBAAA,EAAad,KAAb,CAAH,CAAR;MACAG,YAAY,CAAC,IAAAY,kBAAA,EAAUf,KAAV,CAAD,CAAZ;IACD;EACF,CALD,EAKG,CAACA,KAAD,EAAQE,SAAR,EAAmBJ,YAAnB,EAAiCd,QAAjC,CALH;;EAOA,IAAMgC,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;IAC7B,IAAIxB,aAAJ,EAAmB;MACjBC,SAAS,CAACwB,SAAD,CAAT;MACAzB,aAAa,CAAC0B,OAAd,CAAsBC,OAAtB,CAA8B,UAACC,MAAD;QAAA,OAAYnB,cAAc,CAACmB,MAAD,CAA1B;MAAA,CAA9B;IACD;EACF,CALD;;EAOA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;IAC5B5B,SAAS,CAACwB,SAAD,CAAT;EACD,CAFD;;EAIA,oBACE,6BAAC,gBAAD,CAAS,QAAT;IAAkB,KAAK,EAAEV;EAAzB,gBACE,6BAAC,kBAAD;IACE,KAAK,EAAE,CADT;IAEE,EAAE,EAAEP,KAAK,CAACsB,EAFZ;IAGE,UAAU,EAAEtB,KAAK,CAACuB,UAHpB;IAIE,KAAK,EAAEvB,KAAK,CAACwB,KAJf;IAKE,OAAO,EAAElC;EALX,EADF,eAQE,6BAAC,2BAAD;IACE,MAAM,EAAEE,aAAa,IAAI,IAD3B;IAEE,SAAS,EAAEwB,gBAFb;IAGE,QAAQ,EAAEK,eAHZ;IAIE,KAAK,EAAE,CAAA7B,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEiC,MAAf,CAAsBC,WAAtB,KAAqC,EAJ9C;IAKE,OAAO,EAAE,CAAAlC,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEiC,MAAf,CAAsBE,aAAtB,KAAuC,EALlD;IAME,kBAAkB,EAAE,CAAAnC,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEiC,MAAf,CAAsBG,aAAtB,KAAuC,EAN7D;IAOE,iBAAiB,EAAE,CAAApC,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEiC,MAAf,CAAsBI,YAAtB,KAAsC,EAP3D;IAQE,kBAAkB,EAAE,CAAArC,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEiC,MAAf,CAAsBK,kBAAtB,KAA4C;EARlE,EARF,CADF;AAqBD,CAtGD;;AAwGA,wCAAAjD,cAAc,CAACkD,SAAf,GAA2B;EACzB;AACF;AACA;AACA;EACEzC,OAAO,EAAE0C,kBAAA,CAAUC,KAAV,CAAgB;IACvB;AACJ;AACA;IACIC,IAAI,EAAEF,kBAAA,CAAUG,MAJO;;IAKvB;AACJ;AACA;IACIC,QAAQ,EAAEJ,kBAAA,CAAUG,MARG;;IASvB;AACJ;AACA;IACIE,QAAQ,EAAEL,kBAAA,CAAUG,MAZG;;IAavB;AACJ;AACA;IACIZ,UAAU,EAAES,kBAAA,CAAUG,MAhBC;;IAiBvB;AACJ;AACA;IACIG,aAAa,EAAEN,kBAAA,CAAUG,MApBF;;IAqBvB;AACJ;AACA;IACII,gBAAgB,EAAEP,kBAAA,CAAUG,MAxBL;;IAyBvB;AACJ;AACA;IACIK,YAAY,EAAER,kBAAA,CAAUG,MA5BD;;IA6BvB;AACJ;AACA;IACIM,eAAe,EAAET,kBAAA,CAAUG,MAhCJ;;IAiCvB;AACJ;AACA;IACIO,cAAc,EAAEV,kBAAA,CAAUG,MApCH;;IAqCvB;AACJ;AACA;IACIQ,iBAAiB,EAAEX,kBAAA,CAAUG,MAxCN;;IAyCvB;AACJ;AACA;IACIS,qBAAqB,EAAEZ,kBAAA,CAAUG,MA5CV;;IA6CvB;AACJ;AACA;IACIU,wBAAwB,EAAEb,kBAAA,CAAUG;EAhDb,CAAhB,CALgB;EAuDzBrD,UAAU,EAAEkD,kBAAA,CAAUC,KAAV,CAAgB;IAC1Ba,GAAG,EAAEd,kBAAA,CAAUC,KAAV,CAAgB;MACnBX,EAAE,EAAEU,kBAAA,CAAUe,MADK;MAEnBC,KAAK,EAAEhB,kBAAA,CAAUG,MAAV,CAAiBc,UAFL;MAGnBrC,IAAI,EAAEoB,kBAAA,CAAUG,MAAV,CAAiBc,UAHJ;MAInBC,KAAK,EAAElB,kBAAA,CAAUmB,GAJE;MAKnBC,KAAK,EAAEpB,kBAAA,CAAUe;IALE,CAAhB;EADqB,CAAhB,EAQTE,UA/DsB;;EAgEzB;AACF;AACA;EACEhE,SAAS,EAAE+C,kBAAA,CAAUC,KAAV,CAAgB;IACzBrB,IAAI,EAAEoB,kBAAA,CAAUqB,OAAV,CACJrB,kBAAA,CAAUC,KAAV,CAAgB;MACdqB,QAAQ,EAAEtB,kBAAA,CAAUG,MAAV,CAAiBc,UADb;MAEdD,KAAK,EAAEhB,kBAAA,CAAUG,MAAV,CAAiBc,UAFV;MAGd/D,WAAW,EAAE8C,kBAAA,CAAUqB,OAAV,CAAkBrB,kBAAA,CAAUG,MAA5B,EAAoCc;IAHnC,CAAhB,CADI;EADmB,CAAhB,CAnEc;;EA4EzB;AACF;AACA;EACE/D,WAAW,EAAE8C,kBAAA,CAAUqB,OAAV,CACXrB,kBAAA,CAAUC,KAAV,CAAgB;IACdsB,OAAO,EAAEvB,kBAAA,CAAUG,MAAV,CAAiBc,UADZ;IAEdD,KAAK,EAAEhB,kBAAA,CAAUG,MAAV,CAAiBc;EAFV,CAAhB,CADW,CA/EY;;EAqFzB;AACF;AACA;EACElE,KAAK,EAAEiD,kBAAA,CAAUC,KAAV,CAAgB;IACrBX,EAAE,EAAEU,kBAAA,CAAUe,MADO;IAErBxB,UAAU,EAAES,kBAAA,CAAUG,MAAV,CAAiBc,UAFR;IAGrBzB,KAAK,EAAEQ,kBAAA,CAAUqB,OAAV,CACLrB,kBAAA,CAAUC,KAAV,CAAgB;MACdX,EAAE,EAAEU,kBAAA,CAAUe,MADA;MAEdS,SAAS,EAAExB,kBAAA,CAAUG,MAFP;MAGdmB,QAAQ,EAAEtB,kBAAA,CAAUG,MAHN;MAIde,KAAK,EAAElB,kBAAA,CAAUmB;IAJH,CAAhB,CADK,EAOLF;EAVmB,CAAhB,CAxFkB;;EAoGzB;AACF;AACA;EACEjE,QAAQ,EAAEgD,kBAAA,CAAUyB,IAvGK;;EAwGzB;AACF;AACA;EACEtE,QAAQ,EAAE6C,kBAAA,CAAUe,MA3GK;;EA4GzB;AACF;AACA;EACE3D,MAAM,EAAE4C,kBAAA,CAAU0B,UAAV,CAAqBC,MAArB,CA/GiB;;EAgHzB;AACF;AACA;EACEtE,QAAQ,EAAE2C,kBAAA,CAAU4B;AAnHK,CAA3B;;eAsHe,IAAAC,gBAAA,EAAWC,eAAX,EAAmB;EAAEC,IAAI,EAAE;AAAR,CAAnB,EAA+ClF,cAA/C,C"}
@@ -52,7 +52,8 @@ var Attribute = function Attribute(_ref) {
52
52
  var dispatchAction = context.dispatchAction,
53
53
  attributes = context.attributes,
54
54
  operators = context.operators,
55
- labels = context.labels;
55
+ labels = context.labels,
56
+ readOnly = context.readOnly;
56
57
  var values = (0, _react.useMemo)(function () {
57
58
  return Object.keys(attributes).map(function (key) {
58
59
  return {
@@ -69,6 +70,7 @@ var Attribute = function Attribute(_ref) {
69
70
  placeholder: labels.rule.attribute.placeholder,
70
71
  values: values,
71
72
  disabled: disabled,
73
+ readOnly: readOnly,
72
74
  status: isInvalid ? "invalid" : "valid",
73
75
  statusMessage: labels.rule.attribute.exists,
74
76
  onChange: function onChange(selected) {
@@ -1 +1 @@
1
- {"version":3,"file":"Attribute.js","names":["Attribute","id","attribute","disabled","isInvalid","context","useContext","Context","dispatchAction","attributes","operators","labels","values","useMemo","Object","keys","map","key","label","selected","currentType","type","rule","placeholder","exists","Array","isArray","attributeId","typeOperators","operator","undefined","length","value","isBigList","virtualized","height","propTypes","PropTypes","number","string","bool","React","memo"],"sources":["../../../../src/QueryBuilder/Rule/Attribute/Attribute.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../Context\";\nimport { isBigList } from \"../../utils\";\n\nconst Attribute = ({ id, attribute, disabled, isInvalid }) => {\n const context = useContext(Context);\n const { dispatchAction, attributes, operators, labels } = context;\n\n const values = useMemo(\n () =>\n Object.keys(attributes).map((key) => ({\n id: key,\n label: attributes[key].label,\n selected: key === attribute,\n })),\n [attributes, attribute]\n );\n\n const currentType = attribute != null ? attributes[attribute]?.type : null;\n\n return (\n <HvDropdown\n singleSelectionToggle={false}\n label={labels.rule.attribute.label}\n placeholder={labels.rule.attribute.placeholder}\n values={values}\n disabled={disabled}\n status={isInvalid ? \"invalid\" : \"valid\"}\n statusMessage={labels.rule.attribute.exists}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected)) {\n const attributeId = selected.id;\n\n const { type } = attributes[attributeId];\n const typeOperators = operators[type];\n\n let operator;\n if (currentType === type) {\n operator = undefined;\n } else if (typeOperators?.length === 1) {\n operator = typeOperators[0].operator;\n } else {\n operator = null;\n }\n\n // default boolean attributes to true\n const value = type === \"boolean\" ? true : undefined;\n\n dispatchAction({\n type: \"set-attribute\",\n id,\n attribute: attributeId,\n operator,\n value,\n });\n } else {\n dispatchAction({ type: \"set-attribute\", id, attribute: null });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nAttribute.propTypes = {\n id: PropTypes.number,\n attribute: PropTypes.string,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default React.memo(Attribute);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Attribute.js","names":["Attribute","id","attribute","disabled","isInvalid","context","useContext","Context","dispatchAction","attributes","operators","labels","readOnly","values","useMemo","Object","keys","map","key","label","selected","currentType","type","rule","placeholder","exists","Array","isArray","attributeId","typeOperators","operator","undefined","length","value","isBigList","virtualized","height","propTypes","PropTypes","number","string","bool","React","memo"],"sources":["../../../../src/QueryBuilder/Rule/Attribute/Attribute.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../Context\";\nimport { isBigList } from \"../../utils\";\n\nconst Attribute = ({ id, attribute, disabled, isInvalid }) => {\n const context = useContext(Context);\n const { dispatchAction, attributes, operators, labels, readOnly } = context;\n\n const values = useMemo(\n () =>\n Object.keys(attributes).map((key) => ({\n id: key,\n label: attributes[key].label,\n selected: key === attribute,\n })),\n [attributes, attribute]\n );\n\n const currentType = attribute != null ? attributes[attribute]?.type : null;\n\n return (\n <HvDropdown\n singleSelectionToggle={false}\n label={labels.rule.attribute.label}\n placeholder={labels.rule.attribute.placeholder}\n values={values}\n disabled={disabled}\n readOnly={readOnly}\n status={isInvalid ? \"invalid\" : \"valid\"}\n statusMessage={labels.rule.attribute.exists}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected)) {\n const attributeId = selected.id;\n\n const { type } = attributes[attributeId];\n const typeOperators = operators[type];\n\n let operator;\n if (currentType === type) {\n operator = undefined;\n } else if (typeOperators?.length === 1) {\n operator = typeOperators[0].operator;\n } else {\n operator = null;\n }\n\n // default boolean attributes to true\n const value = type === \"boolean\" ? true : undefined;\n\n dispatchAction({\n type: \"set-attribute\",\n id,\n attribute: attributeId,\n operator,\n value,\n });\n } else {\n dispatchAction({ type: \"set-attribute\", id, attribute: null });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nAttribute.propTypes = {\n id: PropTypes.number,\n attribute: PropTypes.string,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default React.memo(Attribute);\n"],"mappings":"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"}
@@ -56,7 +56,8 @@ var Operator = function Operator(_ref) {
56
56
  var dispatchAction = context.dispatchAction,
57
57
  attributes = context.attributes,
58
58
  operators = context.operators,
59
- labels = context.labels;
59
+ labels = context.labels,
60
+ readOnly = context.readOnly;
60
61
  var value = operator !== null && operator !== void 0 ? operator : null;
61
62
  var values = (0, _react.useMemo)(function () {
62
63
  var _operators$attributeS;
@@ -81,6 +82,7 @@ var Operator = function Operator(_ref) {
81
82
  placeholder: labels.rule.operator.placeholder,
82
83
  values: values,
83
84
  disabled: values.length === 0,
85
+ readOnly: readOnly,
84
86
  onChange: function onChange(selected) {
85
87
  if (selected && !Array.isArray(selected) && selected.id) {
86
88
  dispatchAction({
@@ -1 +1 @@
1
- {"version":3,"file":"Operator.js","names":["Operator","id","combinator","attribute","operator","context","React","useContext","Context","dispatchAction","attributes","operators","labels","value","values","useMemo","attributeSpec","options","type","filter","o","combinators","includes","map","key","label","selected","rule","placeholder","length","Array","isArray","undefined","isBigList","virtualized","height","propTypes","PropTypes","number","string","memo"],"sources":["../../../../src/QueryBuilder/Rule/Operator/Operator.js"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../Context\";\nimport { isBigList } from \"../../utils\";\n\nconst Operator = ({ id, combinator, attribute, operator }) => {\n const context = React.useContext(Context);\n\n const { dispatchAction, attributes, operators, labels } = context;\n\n const value = operator ?? null;\n\n const values = useMemo(() => {\n const attributeSpec = attribute ? attributes[attribute] : null;\n const options = attributeSpec\n ? operators[attributeSpec.type].filter((o) => o.combinators.includes(combinator)) ?? []\n : [];\n return options.map((key) => ({\n id: key.operator,\n label: key.label,\n selected: key.operator === value,\n }));\n }, [attribute, attributes, operators, combinator, value]);\n\n return (\n <HvDropdown\n required\n status=\"valid\"\n singleSelectionToggle={false}\n label={labels.rule.operator.label}\n placeholder={labels.rule.operator.placeholder}\n values={values}\n disabled={values.length === 0}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected) && selected.id) {\n dispatchAction({\n type: \"set-operator\",\n id,\n operator: selected.id,\n value: value === \"range\" || selected.id === \"range\" ? null : undefined,\n });\n } else {\n dispatchAction({\n type: \"set-operator\",\n id,\n operator: null,\n value: null,\n });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nOperator.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n};\n\nexport default React.memo(Operator);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Operator.js","names":["Operator","id","combinator","attribute","operator","context","React","useContext","Context","dispatchAction","attributes","operators","labels","readOnly","value","values","useMemo","attributeSpec","options","type","filter","o","combinators","includes","map","key","label","selected","rule","placeholder","length","Array","isArray","undefined","isBigList","virtualized","height","propTypes","PropTypes","number","string","memo"],"sources":["../../../../src/QueryBuilder/Rule/Operator/Operator.js"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../Context\";\nimport { isBigList } from \"../../utils\";\n\nconst Operator = ({ id, combinator, attribute, operator }) => {\n const context = React.useContext(Context);\n\n const { dispatchAction, attributes, operators, labels, readOnly } = context;\n\n const value = operator ?? null;\n\n const values = useMemo(() => {\n const attributeSpec = attribute ? attributes[attribute] : null;\n const options = attributeSpec\n ? operators[attributeSpec.type].filter((o) => o.combinators.includes(combinator)) ?? []\n : [];\n return options.map((key) => ({\n id: key.operator,\n label: key.label,\n selected: key.operator === value,\n }));\n }, [attribute, attributes, operators, combinator, value]);\n\n return (\n <HvDropdown\n required\n status=\"valid\"\n singleSelectionToggle={false}\n label={labels.rule.operator.label}\n placeholder={labels.rule.operator.placeholder}\n values={values}\n disabled={values.length === 0}\n readOnly={readOnly}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected) && selected.id) {\n dispatchAction({\n type: \"set-operator\",\n id,\n operator: selected.id,\n value: value === \"range\" || selected.id === \"range\" ? null : undefined,\n });\n } else {\n dispatchAction({\n type: \"set-operator\",\n id,\n operator: null,\n value: null,\n });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nOperator.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n};\n\nexport default React.memo(Operator);\n"],"mappings":"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"}
@@ -43,13 +43,13 @@ var _Value = _interopRequireDefault(require("./Value"));
43
43
 
44
44
  var _styles = _interopRequireDefault(require("./styles"));
45
45
 
46
- var _Delete;
47
-
48
46
  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
47
 
50
48
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
51
49
 
52
50
  var Rule = function Rule(_ref) {
51
+ var _Delete;
52
+
53
53
  var id = _ref.id,
54
54
  combinator = _ref.combinator,
55
55
  attribute = _ref.attribute,
@@ -62,7 +62,8 @@ var Rule = function Rule(_ref) {
62
62
  var askAction = context.askAction,
63
63
  attributes = context.attributes,
64
64
  operators = context.operators,
65
- labels = context.labels;
65
+ labels = context.labels,
66
+ readOnly = context.readOnly;
66
67
  var availableOperators = (0, _react.useMemo)(function () {
67
68
  var attributeSpec = attribute != null ? attributes[attribute] : null;
68
69
 
@@ -80,7 +81,9 @@ var Rule = function Rule(_ref) {
80
81
  }, [attribute, attributes, combinator, operators]);
81
82
  var shouldShowValueInput = operator !== "Empty" && operator !== "IsNotEmpty";
82
83
  var DeleteIcon = (0, _uikitReactCore.withTooltip)(function () {
83
- return _Delete || (_Delete = /*#__PURE__*/_react.default.createElement(_uikitReactIcons.Delete, null));
84
+ return _Delete || (_Delete = /*#__PURE__*/_react.default.createElement(_uikitReactIcons.Delete, {
85
+ disabled: readOnly
86
+ }));
84
87
  }, labels.rule.delete.tooltip, "bottom");
85
88
  return /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvGrid, {
86
89
  container: true,
@@ -127,7 +130,8 @@ var Rule = function Rule(_ref) {
127
130
  }],
128
131
  dialog: labels.rule.delete
129
132
  });
130
- }
133
+ },
134
+ disabled: readOnly
131
135
  }, /*#__PURE__*/_react.default.createElement(DeleteIcon, null))));
132
136
  };
133
137
 
@@ -1 +1 @@
1
- {"version":3,"file":"Rule.js","names":["Rule","id","combinator","attribute","operator","value","disabled","isInvalid","classes","useStyles","context","useContext","Context","askAction","attributes","operators","labels","availableOperators","useMemo","attributeSpec","typeOperators","type","reduce","count","item","combinators","includes","shouldShowValueInput","DeleteIcon","withTooltip","rule","delete","tooltip","root","actionsContainer","ariaLabel","actions","dialog","propTypes","PropTypes","number","string","any","bool"],"sources":["../../../src/QueryBuilder/Rule/Rule.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { HvGrid, HvButton, withTooltip } from \"@hitachivantara/uikit-react-core\";\nimport { Delete } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Attribute from \"./Attribute\";\nimport Operator from \"./Operator\";\nimport Value from \"./Value\";\nimport useStyles from \"./styles\";\n\nconst Rule = ({ id, combinator, attribute, operator, value, disabled, isInvalid }) => {\n const classes = useStyles();\n const context = useContext(Context);\n\n const { askAction, attributes, operators, labels } = context;\n\n const availableOperators = useMemo(() => {\n const attributeSpec = attribute != null ? attributes[attribute] : null;\n if (attributeSpec != null) {\n const typeOperators = operators[attributeSpec.type];\n if (typeOperators != null) {\n return typeOperators.reduce(\n (count, item) => count + (item.combinators.includes(combinator) ? 1 : 0),\n 0\n );\n }\n }\n\n return -1;\n }, [attribute, attributes, combinator, operators]);\n\n const shouldShowValueInput = operator !== \"Empty\" && operator !== \"IsNotEmpty\";\n\n const DeleteIcon = withTooltip(() => <Delete />, labels.rule.delete.tooltip, \"bottom\");\n\n return (\n <HvGrid container className={classes.root} spacing={0} wrap=\"nowrap\">\n <HvGrid item xs={2} lg={3}>\n <Attribute attribute={attribute} id={id} disabled={disabled} isInvalid={isInvalid} />\n </HvGrid>\n {attribute != null && availableOperators > 0 && (\n <HvGrid item xs={2} lg={3}>\n <Operator id={id} combinator={combinator} attribute={attribute} operator={operator} />\n </HvGrid>\n )}\n {attribute != null && (operator != null || availableOperators === 0) && (\n <HvGrid item xs>\n {shouldShowValueInput && (\n <Value attribute={attribute} id={id} operator={operator} value={value} />\n )}\n </HvGrid>\n )}\n <HvGrid item className={classes.actionsContainer}>\n <HvButton\n icon\n aria-label={labels.rule.delete.ariaLabel}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog: labels.rule.delete,\n });\n }}\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n );\n};\n\nRule.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default Rule;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rule.js","names":["Rule","id","combinator","attribute","operator","value","disabled","isInvalid","classes","useStyles","context","useContext","Context","askAction","attributes","operators","labels","readOnly","availableOperators","useMemo","attributeSpec","typeOperators","type","reduce","count","item","combinators","includes","shouldShowValueInput","DeleteIcon","withTooltip","rule","delete","tooltip","root","actionsContainer","ariaLabel","actions","dialog","propTypes","PropTypes","number","string","any","bool"],"sources":["../../../src/QueryBuilder/Rule/Rule.js"],"sourcesContent":["import React, { useMemo, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { HvGrid, HvButton, withTooltip } from \"@hitachivantara/uikit-react-core\";\nimport { Delete } from \"@hitachivantara/uikit-react-icons\";\n\nimport Context from \"../Context\";\nimport Attribute from \"./Attribute\";\nimport Operator from \"./Operator\";\nimport Value from \"./Value\";\nimport useStyles from \"./styles\";\n\nconst Rule = ({ id, combinator, attribute, operator, value, disabled, isInvalid }) => {\n const classes = useStyles();\n const context = useContext(Context);\n\n const { askAction, attributes, operators, labels, readOnly } = context;\n\n const availableOperators = useMemo(() => {\n const attributeSpec = attribute != null ? attributes[attribute] : null;\n if (attributeSpec != null) {\n const typeOperators = operators[attributeSpec.type];\n if (typeOperators != null) {\n return typeOperators.reduce(\n (count, item) => count + (item.combinators.includes(combinator) ? 1 : 0),\n 0\n );\n }\n }\n\n return -1;\n }, [attribute, attributes, combinator, operators]);\n\n const shouldShowValueInput = operator !== \"Empty\" && operator !== \"IsNotEmpty\";\n\n const DeleteIcon = withTooltip(\n () => <Delete disabled={readOnly} />,\n labels.rule.delete.tooltip,\n \"bottom\"\n );\n\n return (\n <HvGrid container className={classes.root} spacing={0} wrap=\"nowrap\">\n <HvGrid item xs={2} lg={3}>\n <Attribute attribute={attribute} id={id} disabled={disabled} isInvalid={isInvalid} />\n </HvGrid>\n {attribute != null && availableOperators > 0 && (\n <HvGrid item xs={2} lg={3}>\n <Operator id={id} combinator={combinator} attribute={attribute} operator={operator} />\n </HvGrid>\n )}\n {attribute != null && (operator != null || availableOperators === 0) && (\n <HvGrid item xs>\n {shouldShowValueInput && (\n <Value attribute={attribute} id={id} operator={operator} value={value} />\n )}\n </HvGrid>\n )}\n <HvGrid item className={classes.actionsContainer}>\n <HvButton\n icon\n aria-label={labels.rule.delete.ariaLabel}\n onClick={() => {\n askAction({\n actions: [{ type: \"remove-node\", id }],\n dialog: labels.rule.delete,\n });\n }}\n disabled={readOnly}\n >\n <DeleteIcon />\n </HvButton>\n </HvGrid>\n </HvGrid>\n );\n};\n\nRule.propTypes = {\n id: PropTypes.number,\n combinator: PropTypes.string,\n attribute: PropTypes.string,\n operator: PropTypes.string,\n value: PropTypes.any,\n disabled: PropTypes.bool,\n isInvalid: PropTypes.bool,\n};\n\nexport default Rule;\n"],"mappings":"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"}
@@ -29,7 +29,8 @@ var BooleanValue = function BooleanValue(_ref) {
29
29
  var context = _react.default.useContext(_Context.default);
30
30
 
31
31
  var labels = context.labels,
32
- dispatchAction = context.dispatchAction;
32
+ dispatchAction = context.dispatchAction,
33
+ readOnly = context.readOnly;
33
34
  var values = ["true", "false"].map(function (v) {
34
35
  return {
35
36
  id: v,
@@ -44,6 +45,7 @@ var BooleanValue = function BooleanValue(_ref) {
44
45
  label: labels.rule.value.boolean.label,
45
46
  placeholder: labels.rule.value.boolean.placeholder,
46
47
  values: values,
48
+ readOnly: readOnly,
47
49
  onChange: function onChange(selected) {
48
50
  if (selected && !Array.isArray(selected) && selected.id) {
49
51
  dispatchAction({
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanValue.js","names":["BooleanValue","id","value","context","React","useContext","Context","labels","dispatchAction","values","map","v","label","rule","boolean","options","selected","placeholder","Array","isArray","type","isBigList","virtualized","height","propTypes","PropTypes","number","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport { isBigList } from \"../../../utils\";\n\nconst BooleanValue = ({ id, value = true }) => {\n const context = React.useContext(Context);\n const { labels, dispatchAction } = context;\n\n const values = [\"true\", \"false\"].map((v) => ({\n id: v,\n label: labels.rule.value.boolean.options[v],\n selected: value === (v === \"true\"),\n }));\n\n return (\n <HvDropdown\n required\n status=\"valid\"\n singleSelectionToggle={false}\n label={labels.rule.value.boolean.label}\n placeholder={labels.rule.value.boolean.placeholder}\n values={values}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected) && selected.id) {\n dispatchAction({\n type: \"set-value\",\n id,\n value: selected.id === \"true\",\n });\n } else {\n dispatchAction({ type: \"set-value\", id, value: null });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nBooleanValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.bool,\n};\n\nexport default React.memo(BooleanValue);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAA0B;EAAA,IAAvBC,EAAuB,QAAvBA,EAAuB;EAAA,sBAAnBC,KAAmB;EAAA,IAAnBA,KAAmB,2BAAX,IAAW;;EAC7C,IAAMC,OAAO,GAAGC,cAAA,CAAMC,UAAN,CAAiBC,gBAAjB,CAAhB;;EACA,IAAQC,MAAR,GAAmCJ,OAAnC,CAAQI,MAAR;EAAA,IAAgBC,cAAhB,GAAmCL,OAAnC,CAAgBK,cAAhB;EAEA,IAAMC,MAAM,GAAG,CAAC,MAAD,EAAS,OAAT,EAAkBC,GAAlB,CAAsB,UAACC,CAAD;IAAA,OAAQ;MAC3CV,EAAE,EAAEU,CADuC;MAE3CC,KAAK,EAAEL,MAAM,CAACM,IAAP,CAAYX,KAAZ,CAAkBY,OAAlB,CAA0BC,OAA1B,CAAkCJ,CAAlC,CAFoC;MAG3CK,QAAQ,EAAEd,KAAK,MAAMS,CAAC,KAAK,MAAZ;IAH4B,CAAR;EAAA,CAAtB,CAAf;EAMA,oBACE,6BAAC,0BAAD;IACE,QAAQ,MADV;IAEE,MAAM,EAAC,OAFT;IAGE,qBAAqB,EAAE,KAHzB;IAIE,KAAK,EAAEJ,MAAM,CAACM,IAAP,CAAYX,KAAZ,CAAkBY,OAAlB,CAA0BF,KAJnC;IAKE,WAAW,EAAEL,MAAM,CAACM,IAAP,CAAYX,KAAZ,CAAkBY,OAAlB,CAA0BG,WALzC;IAME,MAAM,EAAER,MANV;IAOE,QAAQ,EAAE,kBAACO,QAAD,EAAc;MACtB,IAAIA,QAAQ,IAAI,CAACE,KAAK,CAACC,OAAN,CAAcH,QAAd,CAAb,IAAwCA,QAAQ,CAACf,EAArD,EAAyD;QACvDO,cAAc,CAAC;UACbY,IAAI,EAAE,WADO;UAEbnB,EAAE,EAAFA,EAFa;UAGbC,KAAK,EAAEc,QAAQ,CAACf,EAAT,KAAgB;QAHV,CAAD,CAAd;MAKD,CAND,MAMO;QACLO,cAAc,CAAC;UAAEY,IAAI,EAAE,WAAR;UAAqBnB,EAAE,EAAFA,EAArB;UAAyBC,KAAK,EAAE;QAAhC,CAAD,CAAd;MACD;IACF,CAjBH;IAkBE,UAAU,EAAE,IAAAmB,gBAAA,EAAUZ,MAAV;EAlBd,GAmBO,IAAAY,gBAAA,EAAUZ,MAAV,KAAqB;IAAEa,WAAW,EAAE,IAAf;IAAqBC,MAAM,EAAE;EAA7B,CAnB5B,EADF;AAuBD,CAjCD;;AAmCA,wCAAAvB,YAAY,CAACwB,SAAb,GAAyB;EACvBvB,EAAE,EAAEwB,kBAAA,CAAUC,MADS;EAEvBxB,KAAK,EAAEuB,kBAAA,CAAUE;AAFM,CAAzB;;4BAKevB,cAAA,CAAMwB,IAAN,CAAW5B,YAAX,C"}
1
+ {"version":3,"file":"BooleanValue.js","names":["BooleanValue","id","value","context","React","useContext","Context","labels","dispatchAction","readOnly","values","map","v","label","rule","boolean","options","selected","placeholder","Array","isArray","type","isBigList","virtualized","height","propTypes","PropTypes","number","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/BooleanValue/BooleanValue.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { HvDropdown } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport { isBigList } from \"../../../utils\";\n\nconst BooleanValue = ({ id, value = true }) => {\n const context = React.useContext(Context);\n const { labels, dispatchAction, readOnly } = context;\n\n const values = [\"true\", \"false\"].map((v) => ({\n id: v,\n label: labels.rule.value.boolean.options[v],\n selected: value === (v === \"true\"),\n }));\n\n return (\n <HvDropdown\n required\n status=\"valid\"\n singleSelectionToggle={false}\n label={labels.rule.value.boolean.label}\n placeholder={labels.rule.value.boolean.placeholder}\n values={values}\n readOnly={readOnly}\n onChange={(selected) => {\n if (selected && !Array.isArray(selected) && selected.id) {\n dispatchAction({\n type: \"set-value\",\n id,\n value: selected.id === \"true\",\n });\n } else {\n dispatchAction({ type: \"set-value\", id, value: null });\n }\n }}\n showSearch={isBigList(values)}\n {...(isBigList(values) && { virtualized: true, height: 300 })}\n />\n );\n};\n\nBooleanValue.propTypes = {\n id: PropTypes.number,\n value: PropTypes.bool,\n};\n\nexport default React.memo(BooleanValue);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,OAA0B;EAAA,IAAvBC,EAAuB,QAAvBA,EAAuB;EAAA,sBAAnBC,KAAmB;EAAA,IAAnBA,KAAmB,2BAAX,IAAW;;EAC7C,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;EAEA,IAAMC,MAAM,GAAG,CAAC,MAAD,EAAS,OAAT,EAAkBC,GAAlB,CAAsB,UAACC,CAAD;IAAA,OAAQ;MAC3CX,EAAE,EAAEW,CADuC;MAE3CC,KAAK,EAAEN,MAAM,CAACO,IAAP,CAAYZ,KAAZ,CAAkBa,OAAlB,CAA0BC,OAA1B,CAAkCJ,CAAlC,CAFoC;MAG3CK,QAAQ,EAAEf,KAAK,MAAMU,CAAC,KAAK,MAAZ;IAH4B,CAAR;EAAA,CAAtB,CAAf;EAMA,oBACE,6BAAC,0BAAD;IACE,QAAQ,MADV;IAEE,MAAM,EAAC,OAFT;IAGE,qBAAqB,EAAE,KAHzB;IAIE,KAAK,EAAEL,MAAM,CAACO,IAAP,CAAYZ,KAAZ,CAAkBa,OAAlB,CAA0BF,KAJnC;IAKE,WAAW,EAAEN,MAAM,CAACO,IAAP,CAAYZ,KAAZ,CAAkBa,OAAlB,CAA0BG,WALzC;IAME,MAAM,EAAER,MANV;IAOE,QAAQ,EAAED,QAPZ;IAQE,QAAQ,EAAE,kBAACQ,QAAD,EAAc;MACtB,IAAIA,QAAQ,IAAI,CAACE,KAAK,CAACC,OAAN,CAAcH,QAAd,CAAb,IAAwCA,QAAQ,CAAChB,EAArD,EAAyD;QACvDO,cAAc,CAAC;UACba,IAAI,EAAE,WADO;UAEbpB,EAAE,EAAFA,EAFa;UAGbC,KAAK,EAAEe,QAAQ,CAAChB,EAAT,KAAgB;QAHV,CAAD,CAAd;MAKD,CAND,MAMO;QACLO,cAAc,CAAC;UAAEa,IAAI,EAAE,WAAR;UAAqBpB,EAAE,EAAFA,EAArB;UAAyBC,KAAK,EAAE;QAAhC,CAAD,CAAd;MACD;IACF,CAlBH;IAmBE,UAAU,EAAE,IAAAoB,gBAAA,EAAUZ,MAAV;EAnBd,GAoBO,IAAAY,gBAAA,EAAUZ,MAAV,KAAqB;IAAEa,WAAW,EAAE,IAAf;IAAqBC,MAAM,EAAE;EAA7B,CApB5B,EADF;AAwBD,CAlCD;;AAoCA,wCAAAxB,YAAY,CAACyB,SAAb,GAAyB;EACvBxB,EAAE,EAAEyB,kBAAA,CAAUC,MADS;EAEvBzB,KAAK,EAAEwB,kBAAA,CAAUE;AAFM,CAAzB;;4BAKexB,cAAA,CAAMyB,IAAN,CAAW7B,YAAX,C"}
@@ -66,7 +66,8 @@ var DateTimeValue = function DateTimeValue(_ref) {
66
66
  var context = _react.default.useContext(_Context.default);
67
67
 
68
68
  var labels = context.labels,
69
- dispatchAction = context.dispatchAction;
69
+ dispatchAction = context.dispatchAction,
70
+ readOnly = context.readOnly;
70
71
  var elementId = (0, _uniqueId.default)("datetime".concat(id));
71
72
 
72
73
  var _useState = (0, _react.useState)(initialTouched),
@@ -261,7 +262,8 @@ var DateTimeValue = function DateTimeValue(_ref) {
261
262
  label: isRange ? labels.rule.value.datetime.startDateLabel : labels.rule.value.datetime.dateLabel,
262
263
  placeholder: isRange ? labels.rule.value.datetime.startDatePlaceholder : labels.rule.value.datetime.datePlaceholder,
263
264
  value: datePickerValue,
264
- onChange: onDateChange
265
+ onChange: onDateChange,
266
+ readOnly: readOnly
265
267
  }), /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvTimePicker, {
266
268
  className: classes.timePicker,
267
269
  timeFormat: "24",
@@ -278,7 +280,8 @@ var DateTimeValue = function DateTimeValue(_ref) {
278
280
  if (!open && !touchedTime) {
279
281
  setTouchedTime(true);
280
282
  }
281
- }
283
+ },
284
+ readOnly: readOnly
282
285
  })), isRange && /*#__PURE__*/_react.default.createElement("div", {
283
286
  className: (0, _clsx.default)(classes.row, classes.vertical)
284
287
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -293,7 +296,8 @@ var DateTimeValue = function DateTimeValue(_ref) {
293
296
  label: labels.rule.value.datetime.endDateLabel,
294
297
  placeholder: labels.rule.value.datetime.endDatePlaceholder,
295
298
  value: endDatePickerValue,
296
- onChange: onEndDateChange
299
+ onChange: onEndDateChange,
300
+ readOnly: readOnly
297
301
  }), /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvTimePicker, {
298
302
  className: classes.timePicker,
299
303
  timeFormat: "24",
@@ -311,7 +315,8 @@ var DateTimeValue = function DateTimeValue(_ref) {
311
315
  if (!open && !touchedEndTime) {
312
316
  setTouchedEndTime(true);
313
317
  }
314
- }
318
+ },
319
+ readOnly: readOnly
315
320
  })), /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvWarningText, {
316
321
  disableBorder: true,
317
322
  id: "".concat(elementId, "-combined-error"),
@@ -1 +1 @@
1
- {"version":3,"file":"DateTimeValue.js","names":["valueIsRange","operator","DateTimeValue","id","value","valueProp","initialTouched","classes","useStyles","isRange","context","React","useContext","Context","labels","dispatchAction","elementId","uniqueId","useState","touchedDate","setTouchedDate","touchedTime","setTouchedTime","touchedEndDate","setTouchedEndDate","touchedEndTime","setTouchedEndTime","onDateChange","useCallback","data","date","dayjs","format","oldValue","start","time","end","type","onTimeChange","padTime","hours","minutes","seconds","onEndDateChange","onEndTimeChange","startDate","datePickerValue","useMemo","parseDate","datePickerStatus","startTime","timePickerValue","parseTime","timePickerStatus","endDate","endDatePickerValue","endTime","endTimePickerValue","dateStatus","timeStatus","endDateIsBefore","endTimeIsBeforeOrSame","endDateTimeIsBefore","endDatePickerStatus","endDateStatus","endTimePickerStatus","endTimeStatus","root","clsx","row","horizontal","datePicker","rule","datetime","validation","required","startDateLabel","dateLabel","startDatePlaceholder","datePlaceholder","timePicker","startTimeLabel","timeLabel","startTimePlaceholder","timePlaceholder","_evt","open","vertical","undefined","endDateLabel","endDatePlaceholder","endTimeLabel","endTimePlaceholder","invalidInterval","propTypes","PropTypes","number","string","any","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport uniqueId from \"lodash/uniqueId\";\nimport dayjs from \"dayjs\";\nimport clsx from \"clsx\";\n\nimport { HvDatePicker, HvWarningText, HvTimePicker } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport { padTime, parseDate, parseTime } from \"./utils\";\n\nimport useStyles from \"./styles\";\n\nfunction valueIsRange(operator) {\n return operator === \"range\";\n}\n\nconst DateTimeValue = ({ id, operator, value: valueProp = {}, initialTouched = false }) => {\n const classes = useStyles();\n\n const isRange = valueIsRange(operator, valueProp);\n\n const context = React.useContext(Context);\n const { labels, dispatchAction } = context;\n\n const elementId = uniqueId(`datetime${id}`);\n\n const [touchedDate, setTouchedDate] = useState(initialTouched);\n const [touchedTime, setTouchedTime] = useState(initialTouched);\n const [touchedEndDate, setTouchedEndDate] = useState(initialTouched);\n const [touchedEndTime, setTouchedEndTime] = useState(initialTouched);\n\n const onDateChange = useCallback(\n (data) => {\n setTouchedDate(true);\n\n let date;\n if (data != null) {\n date = dayjs(data).format(\"YYYY-MM-DD\");\n }\n\n const oldValue = !isRange ? valueProp?.date : valueProp?.start?.date;\n\n if (date !== oldValue) {\n let value;\n if (!isRange) {\n value = {\n date,\n time: valueProp?.time,\n };\n } else {\n value = {\n start: {\n date,\n time: valueProp?.start?.time,\n },\n end: valueProp?.end,\n };\n }\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, isRange, valueProp]\n );\n\n const onTimeChange = useCallback(\n (data) => {\n setTouchedTime(true);\n\n let time;\n if (data != null) {\n time = `${padTime(data.hours)}:${padTime(data.minutes)}:${padTime(data.seconds)}`;\n }\n\n const oldValue = !isRange ? valueProp?.time : valueProp?.start?.time;\n\n if (time !== oldValue) {\n let value;\n if (!isRange) {\n value = {\n date: valueProp?.date,\n time,\n };\n } else {\n value = {\n start: {\n date: valueProp?.start?.date,\n time,\n },\n end: valueProp?.end,\n };\n }\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, isRange, valueProp]\n );\n\n const onEndDateChange = useCallback(\n (data) => {\n setTouchedEndDate(true);\n\n let date;\n if (data != null) {\n date = dayjs(data).format(\"YYYY-MM-DD\");\n }\n\n if (date !== valueProp?.end?.date) {\n const value = {\n start: valueProp?.start,\n end: {\n date,\n time: valueProp?.end?.time,\n },\n };\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, valueProp]\n );\n\n const onEndTimeChange = useCallback(\n (data) => {\n setTouchedEndTime(true);\n\n let time;\n if (data != null) {\n time = `${padTime(data.hours)}:${padTime(data.minutes)}:${padTime(data.seconds)}`;\n }\n\n if (time !== valueProp?.end?.time) {\n const value = {\n start: valueProp?.start,\n end: {\n date: valueProp?.end?.date,\n time,\n },\n };\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, valueProp]\n );\n\n const startDate = isRange ? valueProp?.start?.date : valueProp?.date;\n const datePickerValue = useMemo(() => parseDate(startDate), [startDate]);\n const datePickerStatus = datePickerValue != null ? \"valid\" : \"invalid\";\n\n const startTime = (isRange ? valueProp?.start?.time : valueProp?.time) ?? \"\";\n const timePickerValue = useMemo(() => parseTime(startTime), [startTime]);\n const timePickerStatus = timePickerValue != null ? \"valid\" : \"invalid\";\n\n const endDate = isRange ? valueProp?.end?.date : null;\n const endDatePickerValue = useMemo(() => parseDate(endDate), [endDate]);\n\n const endTime = isRange ? valueProp?.end?.time : null;\n const endTimePickerValue = useMemo(() => parseTime(endTime), [endTime]);\n\n const dateStatus = !touchedDate ? \"standBy\" : datePickerStatus;\n const timeStatus = !touchedTime ? \"standBy\" : timePickerStatus;\n\n const endDateIsBefore = startDate != null && endDate != null && endDate < startDate;\n\n const endTimeIsBeforeOrSame =\n startDate != null &&\n endDate != null &&\n endDate === startDate &&\n startTime != null &&\n endTime != null &&\n endTime <= startTime;\n\n const endDateTimeIsBefore = endDateIsBefore || endTimeIsBeforeOrSame;\n\n const endDatePickerStatus =\n endDatePickerValue == null || endDateTimeIsBefore ? \"invalid\" : \"valid\";\n const endDateStatus = !touchedEndDate ? \"standBy\" : endDatePickerStatus;\n\n const endTimePickerStatus =\n endTimePickerValue == null || endDateTimeIsBefore ? \"invalid\" : \"valid\";\n const endTimeStatus = !touchedEndTime ? \"standBy\" : endTimePickerStatus;\n\n return (\n <div className={classes.root}>\n <div className={clsx(classes.row, classes.horizontal)}>\n <HvDatePicker\n className={classes.datePicker}\n name={`${elementId}-date`}\n required\n status={dateStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n label={\n isRange\n ? labels.rule.value.datetime.startDateLabel\n : labels.rule.value.datetime.dateLabel\n }\n placeholder={\n isRange\n ? labels.rule.value.datetime.startDatePlaceholder\n : labels.rule.value.datetime.datePlaceholder\n }\n value={datePickerValue}\n onChange={onDateChange}\n />\n <HvTimePicker\n className={classes.timePicker}\n timeFormat=\"24\"\n name={`${elementId}-time`}\n disableDefaultValue\n required\n status={timeStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n label={\n isRange\n ? labels.rule.value.datetime.startTimeLabel\n : labels.rule.value.datetime.timeLabel\n }\n placeholder={\n isRange\n ? labels.rule.value.datetime.startTimePlaceholder\n : labels.rule.value.datetime.timePlaceholder\n }\n value={timePickerValue}\n onChange={onTimeChange}\n onToggle={(_evt, open) => {\n if (!open && !touchedTime) {\n setTouchedTime(true);\n }\n }}\n />\n </div>\n {isRange && (\n <div className={clsx(classes.row, classes.vertical)}>\n <div className={classes.horizontal}>\n <HvDatePicker\n className={classes.datePicker}\n name={`${elementId}-endDate`}\n required\n status={endDateStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n aria-errormessage={endDateTimeIsBefore ? `${elementId}-combined-error` : undefined}\n label={labels.rule.value.datetime.endDateLabel}\n placeholder={labels.rule.value.datetime.endDatePlaceholder}\n value={endDatePickerValue}\n onChange={onEndDateChange}\n />\n <HvTimePicker\n className={classes.timePicker}\n timeFormat=\"24\"\n name={`${elementId}-endTime`}\n disableDefaultValue\n required\n status={endTimeStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n aria-errormessage={endDateTimeIsBefore ? `${elementId}-combined-error` : undefined}\n label={labels.rule.value.datetime.endTimeLabel}\n placeholder={labels.rule.value.datetime.endTimePlaceholder}\n value={endTimePickerValue}\n onChange={onEndTimeChange}\n onToggle={(_evt, open) => {\n if (!open && !touchedEndTime) {\n setTouchedEndTime(true);\n }\n }}\n />\n </div>\n <HvWarningText\n disableBorder\n id={`${elementId}-combined-error`}\n isVisible={endDateTimeIsBefore}\n >\n {labels.rule.value.datetime.validation.invalidInterval}\n </HvWarningText>\n </div>\n )}\n </div>\n );\n};\n\nDateTimeValue.propTypes = {\n id: PropTypes.number,\n operator: PropTypes.string,\n value: PropTypes.any,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(DateTimeValue);\n"],"mappings":"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"}
1
+ {"version":3,"file":"DateTimeValue.js","names":["valueIsRange","operator","DateTimeValue","id","value","valueProp","initialTouched","classes","useStyles","isRange","context","React","useContext","Context","labels","dispatchAction","readOnly","elementId","uniqueId","useState","touchedDate","setTouchedDate","touchedTime","setTouchedTime","touchedEndDate","setTouchedEndDate","touchedEndTime","setTouchedEndTime","onDateChange","useCallback","data","date","dayjs","format","oldValue","start","time","end","type","onTimeChange","padTime","hours","minutes","seconds","onEndDateChange","onEndTimeChange","startDate","datePickerValue","useMemo","parseDate","datePickerStatus","startTime","timePickerValue","parseTime","timePickerStatus","endDate","endDatePickerValue","endTime","endTimePickerValue","dateStatus","timeStatus","endDateIsBefore","endTimeIsBeforeOrSame","endDateTimeIsBefore","endDatePickerStatus","endDateStatus","endTimePickerStatus","endTimeStatus","root","clsx","row","horizontal","datePicker","rule","datetime","validation","required","startDateLabel","dateLabel","startDatePlaceholder","datePlaceholder","timePicker","startTimeLabel","timeLabel","startTimePlaceholder","timePlaceholder","_evt","open","vertical","undefined","endDateLabel","endDatePlaceholder","endTimeLabel","endTimePlaceholder","invalidInterval","propTypes","PropTypes","number","string","any","bool","memo"],"sources":["../../../../../src/QueryBuilder/Rule/Value/DateTimeValue/DateTimeValue.js"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport uniqueId from \"lodash/uniqueId\";\nimport dayjs from \"dayjs\";\nimport clsx from \"clsx\";\n\nimport { HvDatePicker, HvWarningText, HvTimePicker } from \"@hitachivantara/uikit-react-core\";\n\nimport Context from \"../../../Context\";\nimport { padTime, parseDate, parseTime } from \"./utils\";\n\nimport useStyles from \"./styles\";\n\nfunction valueIsRange(operator) {\n return operator === \"range\";\n}\n\nconst DateTimeValue = ({ id, operator, value: valueProp = {}, initialTouched = false }) => {\n const classes = useStyles();\n\n const isRange = valueIsRange(operator, valueProp);\n\n const context = React.useContext(Context);\n const { labels, dispatchAction, readOnly } = context;\n\n const elementId = uniqueId(`datetime${id}`);\n\n const [touchedDate, setTouchedDate] = useState(initialTouched);\n const [touchedTime, setTouchedTime] = useState(initialTouched);\n const [touchedEndDate, setTouchedEndDate] = useState(initialTouched);\n const [touchedEndTime, setTouchedEndTime] = useState(initialTouched);\n\n const onDateChange = useCallback(\n (data) => {\n setTouchedDate(true);\n\n let date;\n if (data != null) {\n date = dayjs(data).format(\"YYYY-MM-DD\");\n }\n\n const oldValue = !isRange ? valueProp?.date : valueProp?.start?.date;\n\n if (date !== oldValue) {\n let value;\n if (!isRange) {\n value = {\n date,\n time: valueProp?.time,\n };\n } else {\n value = {\n start: {\n date,\n time: valueProp?.start?.time,\n },\n end: valueProp?.end,\n };\n }\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, isRange, valueProp]\n );\n\n const onTimeChange = useCallback(\n (data) => {\n setTouchedTime(true);\n\n let time;\n if (data != null) {\n time = `${padTime(data.hours)}:${padTime(data.minutes)}:${padTime(data.seconds)}`;\n }\n\n const oldValue = !isRange ? valueProp?.time : valueProp?.start?.time;\n\n if (time !== oldValue) {\n let value;\n if (!isRange) {\n value = {\n date: valueProp?.date,\n time,\n };\n } else {\n value = {\n start: {\n date: valueProp?.start?.date,\n time,\n },\n end: valueProp?.end,\n };\n }\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, isRange, valueProp]\n );\n\n const onEndDateChange = useCallback(\n (data) => {\n setTouchedEndDate(true);\n\n let date;\n if (data != null) {\n date = dayjs(data).format(\"YYYY-MM-DD\");\n }\n\n if (date !== valueProp?.end?.date) {\n const value = {\n start: valueProp?.start,\n end: {\n date,\n time: valueProp?.end?.time,\n },\n };\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, valueProp]\n );\n\n const onEndTimeChange = useCallback(\n (data) => {\n setTouchedEndTime(true);\n\n let time;\n if (data != null) {\n time = `${padTime(data.hours)}:${padTime(data.minutes)}:${padTime(data.seconds)}`;\n }\n\n if (time !== valueProp?.end?.time) {\n const value = {\n start: valueProp?.start,\n end: {\n date: valueProp?.end?.date,\n time,\n },\n };\n\n dispatchAction({\n type: \"set-value\",\n id,\n value,\n });\n }\n },\n [dispatchAction, id, valueProp]\n );\n\n const startDate = isRange ? valueProp?.start?.date : valueProp?.date;\n const datePickerValue = useMemo(() => parseDate(startDate), [startDate]);\n const datePickerStatus = datePickerValue != null ? \"valid\" : \"invalid\";\n\n const startTime = (isRange ? valueProp?.start?.time : valueProp?.time) ?? \"\";\n const timePickerValue = useMemo(() => parseTime(startTime), [startTime]);\n const timePickerStatus = timePickerValue != null ? \"valid\" : \"invalid\";\n\n const endDate = isRange ? valueProp?.end?.date : null;\n const endDatePickerValue = useMemo(() => parseDate(endDate), [endDate]);\n\n const endTime = isRange ? valueProp?.end?.time : null;\n const endTimePickerValue = useMemo(() => parseTime(endTime), [endTime]);\n\n const dateStatus = !touchedDate ? \"standBy\" : datePickerStatus;\n const timeStatus = !touchedTime ? \"standBy\" : timePickerStatus;\n\n const endDateIsBefore = startDate != null && endDate != null && endDate < startDate;\n\n const endTimeIsBeforeOrSame =\n startDate != null &&\n endDate != null &&\n endDate === startDate &&\n startTime != null &&\n endTime != null &&\n endTime <= startTime;\n\n const endDateTimeIsBefore = endDateIsBefore || endTimeIsBeforeOrSame;\n\n const endDatePickerStatus =\n endDatePickerValue == null || endDateTimeIsBefore ? \"invalid\" : \"valid\";\n const endDateStatus = !touchedEndDate ? \"standBy\" : endDatePickerStatus;\n\n const endTimePickerStatus =\n endTimePickerValue == null || endDateTimeIsBefore ? \"invalid\" : \"valid\";\n const endTimeStatus = !touchedEndTime ? \"standBy\" : endTimePickerStatus;\n\n return (\n <div className={classes.root}>\n <div className={clsx(classes.row, classes.horizontal)}>\n <HvDatePicker\n className={classes.datePicker}\n name={`${elementId}-date`}\n required\n status={dateStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n label={\n isRange\n ? labels.rule.value.datetime.startDateLabel\n : labels.rule.value.datetime.dateLabel\n }\n placeholder={\n isRange\n ? labels.rule.value.datetime.startDatePlaceholder\n : labels.rule.value.datetime.datePlaceholder\n }\n value={datePickerValue}\n onChange={onDateChange}\n readOnly={readOnly}\n />\n <HvTimePicker\n className={classes.timePicker}\n timeFormat=\"24\"\n name={`${elementId}-time`}\n disableDefaultValue\n required\n status={timeStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n label={\n isRange\n ? labels.rule.value.datetime.startTimeLabel\n : labels.rule.value.datetime.timeLabel\n }\n placeholder={\n isRange\n ? labels.rule.value.datetime.startTimePlaceholder\n : labels.rule.value.datetime.timePlaceholder\n }\n value={timePickerValue}\n onChange={onTimeChange}\n onToggle={(_evt, open) => {\n if (!open && !touchedTime) {\n setTouchedTime(true);\n }\n }}\n readOnly={readOnly}\n />\n </div>\n {isRange && (\n <div className={clsx(classes.row, classes.vertical)}>\n <div className={classes.horizontal}>\n <HvDatePicker\n className={classes.datePicker}\n name={`${elementId}-endDate`}\n required\n status={endDateStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n aria-errormessage={endDateTimeIsBefore ? `${elementId}-combined-error` : undefined}\n label={labels.rule.value.datetime.endDateLabel}\n placeholder={labels.rule.value.datetime.endDatePlaceholder}\n value={endDatePickerValue}\n onChange={onEndDateChange}\n readOnly={readOnly}\n />\n <HvTimePicker\n className={classes.timePicker}\n timeFormat=\"24\"\n name={`${elementId}-endTime`}\n disableDefaultValue\n required\n status={endTimeStatus}\n statusMessage={labels.rule.value.datetime.validation.required}\n aria-errormessage={endDateTimeIsBefore ? `${elementId}-combined-error` : undefined}\n label={labels.rule.value.datetime.endTimeLabel}\n placeholder={labels.rule.value.datetime.endTimePlaceholder}\n value={endTimePickerValue}\n onChange={onEndTimeChange}\n onToggle={(_evt, open) => {\n if (!open && !touchedEndTime) {\n setTouchedEndTime(true);\n }\n }}\n readOnly={readOnly}\n />\n </div>\n <HvWarningText\n disableBorder\n id={`${elementId}-combined-error`}\n isVisible={endDateTimeIsBefore}\n >\n {labels.rule.value.datetime.validation.invalidInterval}\n </HvWarningText>\n </div>\n )}\n </div>\n );\n};\n\nDateTimeValue.propTypes = {\n id: PropTypes.number,\n operator: PropTypes.string,\n value: PropTypes.any,\n initialTouched: PropTypes.bool,\n};\n\nexport default React.memo(DateTimeValue);\n"],"mappings":"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"}