@truedat/qx 7.13.6 → 7.13.8

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 (74) hide show
  1. package/package.json +3 -3
  2. package/src/components/QxRoutes.js +8 -6
  3. package/src/components/common/ResourceSelector.js +25 -6
  4. package/src/components/common/TypeSelector.js +14 -9
  5. package/src/components/common/__tests__/__snapshots__/ResourceSelector.spec.js.snap +269 -241
  6. package/src/components/common/__tests__/__snapshots__/TypeSelector.spec.js.snap +198 -190
  7. package/src/components/common/expressions/Clauses.js +19 -11
  8. package/src/components/common/expressions/Condition.js +32 -31
  9. package/src/components/common/expressions/FieldSelector.js +30 -16
  10. package/src/components/common/expressions/FunctionSelector.js +38 -23
  11. package/src/components/common/expressions/ShapeSelector.js +6 -5
  12. package/src/components/common/expressions/__tests__/ShapeSelector.spec.js +1 -1
  13. package/src/components/common/expressions/__tests__/__snapshots__/Clauses.spec.js.snap +36 -12
  14. package/src/components/common/expressions/__tests__/__snapshots__/Condition.spec.js.snap +87 -75
  15. package/src/components/common/expressions/__tests__/__snapshots__/ConstantSelector.spec.js.snap +99 -97
  16. package/src/components/common/expressions/__tests__/__snapshots__/Expression.spec.js.snap +236 -216
  17. package/src/components/common/expressions/__tests__/__snapshots__/FunctionArgs.spec.js.snap +97 -89
  18. package/src/components/common/expressions/__tests__/__snapshots__/FunctionSelector.spec.js.snap +373 -345
  19. package/src/components/common/expressions/constantInputs/AnySelector.js +2 -1
  20. package/src/components/common/expressions/constantInputs/BooleanSelector.js +20 -15
  21. package/src/components/common/expressions/constantInputs/DefaultSelector.js +0 -1
  22. package/src/components/common/expressions/constantInputs/__tests__/__snapshots__/AnySelector.spec.js.snap +189 -182
  23. package/src/components/common/expressions/constantInputs/__tests__/__snapshots__/BooleanSelector.spec.js.snap +74 -66
  24. package/src/components/common/expressions/constantInputs/__tests__/__snapshots__/DefaultSelector.spec.js.snap +2 -4
  25. package/src/components/common/resourceSelectors/DataStructureSelector.js +5 -4
  26. package/src/components/common/resourceSelectors/DataViewSelector.js +4 -3
  27. package/src/components/common/resourceSelectors/ReferenceDatasetSelector.js +4 -3
  28. package/src/components/common/resourceSelectors/__tests__/__snapshots__/DataStructureSelector.spec.js.snap +65 -61
  29. package/src/components/common/resourceSelectors/__tests__/__snapshots__/DataViewSelector.spec.js.snap +38 -34
  30. package/src/components/common/resourceSelectors/__tests__/__snapshots__/ReferenceDatasetSelector.spec.js.snap +38 -34
  31. package/src/components/dataViews/BreadCrumb.js +20 -0
  32. package/src/components/dataViews/DataViewEditor.js +169 -178
  33. package/src/components/dataViews/DataViews.js +113 -135
  34. package/src/components/dataViews/__tests__/AdvancedDataViewEditor.spec.js +260 -0
  35. package/src/components/dataViews/__tests__/DataViewEditor.spec.js +173 -239
  36. package/src/components/dataViews/__tests__/DataViewSelect.spec.js +1 -1
  37. package/src/components/dataViews/__tests__/DataViews.spec.js +124 -51
  38. package/src/components/dataViews/__tests__/Queryable.spec.js +1 -1
  39. package/src/components/dataViews/__tests__/Queryables.spec.js +1 -1
  40. package/src/components/dataViews/__tests__/SimpleDataViewEditor.spec.js +164 -0
  41. package/src/components/dataViews/__tests__/__snapshots__/{DataViewEditor.spec.js.snap → AdvancedDataViewEditor.spec.js.snap} +230 -200
  42. package/src/components/dataViews/__tests__/__snapshots__/DataViews.spec.js.snap +141 -29
  43. package/src/components/dataViews/__tests__/__snapshots__/Queryable.spec.js.snap +184 -141
  44. package/src/components/dataViews/__tests__/__snapshots__/Queryables.spec.js.snap +126 -91
  45. package/src/components/dataViews/actions/CancelButton.js +33 -0
  46. package/src/components/dataViews/actions/DeleteButton.js +33 -0
  47. package/src/components/dataViews/advancedForm/AdvancedDataViewEditor.js +159 -0
  48. package/src/components/dataViews/{DataViewSelect.js → advancedForm/DataViewSelect.js} +2 -2
  49. package/src/components/dataViews/{Queryable.js → advancedForm/Queryable.js} +2 -2
  50. package/src/components/dataViews/queryableFunctions.js +7 -0
  51. package/src/components/dataViews/queryableProperties/GroupBy.js +23 -27
  52. package/src/components/dataViews/queryableProperties/Join.js +0 -3
  53. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/From.spec.js.snap +30 -26
  54. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/GroupBy.spec.js.snap +130 -102
  55. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/Join.spec.js.snap +42 -31
  56. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/Select.spec.js.snap +81 -69
  57. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/SelectField.spec.js.snap +62 -54
  58. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/Where.spec.js.snap +12 -4
  59. package/src/components/dataViews/simpleForm/AggregationForm.js +179 -0
  60. package/src/components/dataViews/simpleForm/DatasetForm.js +199 -0
  61. package/src/components/dataViews/simpleForm/FormQueryable.js +114 -0
  62. package/src/components/dataViews/simpleForm/InformationForm.js +107 -0
  63. package/src/components/dataViews/simpleForm/SelectionForm.js +50 -0
  64. package/src/components/dataViews/simpleForm/SimpleDataViewEditor.js +265 -0
  65. package/src/components/functions/__tests__/__snapshots__/FunctionEditor.spec.js.snap +663 -631
  66. package/src/components/functions/__tests__/__snapshots__/FunctionParams.spec.js.snap +113 -109
  67. package/src/components/qualityControls/__tests__/__snapshots__/ControlProperties.spec.js.snap +92 -76
  68. package/src/components/qualityControls/__tests__/__snapshots__/EditQualityControl.spec.js.snap +108 -80
  69. package/src/components/qualityControls/__tests__/__snapshots__/NewDraftQualityControl.spec.js.snap +108 -80
  70. package/src/components/qualityControls/__tests__/__snapshots__/QualityControlEditor.spec.js.snap +108 -80
  71. package/src/components/qualityControls/controlProperties/__tests__/__snapshots__/Count.spec.js.snap +40 -36
  72. package/src/components/qualityControls/controlProperties/__tests__/__snapshots__/Ratio.spec.js.snap +92 -76
  73. package/src/hooks/useDataViews.js +7 -0
  74. /package/src/components/dataViews/{Queryables.js → advancedForm/Queryables.js} +0 -0
@@ -675,68 +675,76 @@ exports[`<QualityControlEditor /> matches the latest snapshot for edition 1`] =
675
675
  Dataset
676
676
  </label>
677
677
  <div
678
- aria-expanded="false"
679
- class="ui selection dropdown"
680
- role="listbox"
681
- tabindex="0"
678
+ class="field"
682
679
  >
683
680
  <div
684
- aria-atomic="true"
685
- aria-live="polite"
686
- class="divider text"
687
- role="alert"
688
- >
689
- Data structures
690
- </div>
691
- <i
692
- aria-hidden="true"
693
- class="dropdown icon"
694
- />
695
- <div
696
- class="menu transition"
681
+ aria-expanded="false"
682
+ class="ui selection dropdown"
683
+ role="listbox"
684
+ tabindex="0"
697
685
  >
698
686
  <div
699
- aria-checked="true"
700
- aria-selected="true"
701
- class="active selected item"
702
- role="option"
703
- style="pointer-events: all;"
687
+ aria-atomic="true"
688
+ aria-live="polite"
689
+ class="divider text"
690
+ role="alert"
704
691
  >
705
- <span
706
- class="text"
707
- >
708
- Data structures
709
- </span>
692
+ Data structures
710
693
  </div>
694
+ <i
695
+ aria-hidden="true"
696
+ class="dropdown icon"
697
+ />
711
698
  <div
712
- aria-checked="false"
713
- aria-selected="false"
714
- class="item"
715
- role="option"
716
- style="pointer-events: all;"
699
+ class="menu transition"
717
700
  >
718
- <span
719
- class="text"
701
+ <div
702
+ aria-checked="true"
703
+ aria-selected="true"
704
+ class="active selected item"
705
+ role="option"
706
+ style="pointer-events: all;"
720
707
  >
721
- Reference datasets
722
- </span>
708
+ <span
709
+ class="text"
710
+ >
711
+ Data structures
712
+ </span>
713
+ </div>
714
+ <div
715
+ aria-checked="false"
716
+ aria-selected="false"
717
+ class="item"
718
+ role="option"
719
+ style="pointer-events: all;"
720
+ >
721
+ <span
722
+ class="text"
723
+ >
724
+ Reference datasets
725
+ </span>
726
+ </div>
723
727
  </div>
724
728
  </div>
725
729
  </div>
726
730
  </div>
727
731
  <div
728
- class="required field"
732
+ class="field"
729
733
  >
730
734
  <div
731
- class="ui fluid icon input"
735
+ class="required field"
732
736
  >
733
- <input
734
- class="action-pointer"
735
- placeholder="Data Structure"
736
- required=""
737
- type="text"
738
- value="ACCOUNTING_RULES"
739
- />
737
+ <div
738
+ class="ui fluid icon input"
739
+ >
740
+ <input
741
+ class="action-pointer"
742
+ placeholder="Data Structure"
743
+ required=""
744
+ type="text"
745
+ value="ACCOUNTING_RULES"
746
+ />
747
+ </div>
740
748
  </div>
741
749
  </div>
742
750
  <div
@@ -840,38 +848,42 @@ exports[`<QualityControlEditor /> matches the latest snapshot for edition 1`] =
840
848
  class="dropdown icon"
841
849
  />
842
850
  <div
843
- aria-expanded="false"
844
- class="ui fluid search selection dropdown"
845
- role="combobox"
851
+ class="sixteen wide field"
846
852
  >
847
- <input
848
- aria-autocomplete="list"
849
- autocomplete="off"
850
- class="search"
851
- tabindex="0"
852
- type="text"
853
- value=""
854
- />
855
853
  <div
856
- aria-atomic="true"
857
- aria-live="polite"
858
- class="divider text"
859
- role="alert"
860
- >
861
- Select a function of type boolean
862
- </div>
863
- <i
864
- aria-hidden="true"
865
- class="dropdown icon"
866
- />
867
- <div
868
- class="menu transition"
869
- role="listbox"
854
+ aria-expanded="false"
855
+ class="ui fluid search selection dropdown"
856
+ role="combobox"
870
857
  >
858
+ <input
859
+ aria-autocomplete="list"
860
+ autocomplete="off"
861
+ class="search"
862
+ tabindex="0"
863
+ type="text"
864
+ value=""
865
+ />
866
+ <div
867
+ aria-atomic="true"
868
+ aria-live="polite"
869
+ class="divider text"
870
+ role="alert"
871
+ >
872
+ Select a function of type boolean
873
+ </div>
874
+ <i
875
+ aria-hidden="true"
876
+ class="dropdown icon"
877
+ />
871
878
  <div
872
- class="message"
879
+ class="menu transition"
880
+ role="listbox"
873
881
  >
874
- No results found.
882
+ <div
883
+ class="message"
884
+ >
885
+ No results found.
886
+ </div>
875
887
  </div>
876
888
  </div>
877
889
  </div>
@@ -895,11 +907,19 @@ exports[`<QualityControlEditor /> matches the latest snapshot for edition 1`] =
895
907
  <div
896
908
  class="ui horizontal divider"
897
909
  >
898
- <button
899
- class="ui mini button"
910
+ <div
911
+ class="ui medium basic buttons"
900
912
  >
901
- Add expression
902
- </button>
913
+ <button
914
+ class="ui button"
915
+ >
916
+ <i
917
+ aria-hidden="true"
918
+ class="plus icon"
919
+ />
920
+ Add expression
921
+ </button>
922
+ </div>
903
923
  </div>
904
924
  </div>
905
925
  <div
@@ -909,11 +929,19 @@ exports[`<QualityControlEditor /> matches the latest snapshot for edition 1`] =
909
929
  <div
910
930
  class="ui horizontal divider"
911
931
  >
912
- <button
913
- class="ui mini button"
932
+ <div
933
+ class="ui medium basic buttons"
914
934
  >
915
- Add group
916
- </button>
935
+ <button
936
+ class="ui button"
937
+ >
938
+ <i
939
+ aria-hidden="true"
940
+ class="plus icon"
941
+ />
942
+ Add group
943
+ </button>
944
+ </div>
917
945
  </div>
918
946
  </div>
919
947
  </div>
@@ -9,51 +9,55 @@ exports[`<Count /> matches the latest snapshot 1`] = `
9
9
  quality_control.form.control_properties.count.errors_resource
10
10
  </label>
11
11
  <div
12
- aria-expanded="false"
13
- class="ui selection dropdown"
14
- role="listbox"
15
- tabindex="0"
12
+ class="field"
16
13
  >
17
14
  <div
18
- aria-atomic="true"
19
- aria-live="polite"
20
- class="divider default text"
21
- role="alert"
22
- >
23
- queryables.resource.type
24
- </div>
25
- <i
26
- aria-hidden="true"
27
- class="dropdown icon"
28
- />
29
- <div
30
- class="menu transition"
15
+ aria-expanded="false"
16
+ class="ui selection dropdown"
17
+ role="listbox"
18
+ tabindex="0"
31
19
  >
32
20
  <div
33
- aria-checked="false"
34
- aria-selected="true"
35
- class="selected item"
36
- role="option"
37
- style="pointer-events: all;"
21
+ aria-atomic="true"
22
+ aria-live="polite"
23
+ class="divider default text"
24
+ role="alert"
38
25
  >
39
- <span
40
- class="text"
41
- >
42
- queryables.resource.type.data_structure
43
- </span>
26
+ queryables.resource.type
44
27
  </div>
28
+ <i
29
+ aria-hidden="true"
30
+ class="dropdown icon"
31
+ />
45
32
  <div
46
- aria-checked="false"
47
- aria-selected="false"
48
- class="item"
49
- role="option"
50
- style="pointer-events: all;"
33
+ class="menu transition"
51
34
  >
52
- <span
53
- class="text"
35
+ <div
36
+ aria-checked="false"
37
+ aria-selected="true"
38
+ class="selected item"
39
+ role="option"
40
+ style="pointer-events: all;"
41
+ >
42
+ <span
43
+ class="text"
44
+ >
45
+ queryables.resource.type.data_structure
46
+ </span>
47
+ </div>
48
+ <div
49
+ aria-checked="false"
50
+ aria-selected="false"
51
+ class="item"
52
+ role="option"
53
+ style="pointer-events: all;"
54
54
  >
55
- queryables.resource.type.reference_dataset
56
- </span>
55
+ <span
56
+ class="text"
57
+ >
58
+ queryables.resource.type.reference_dataset
59
+ </span>
60
+ </div>
57
61
  </div>
58
62
  </div>
59
63
  </div>
@@ -9,51 +9,55 @@ exports[`<Ratio /> matches the latest snapshot 1`] = `
9
9
  quality_control.form.control_properties.ratio.resource
10
10
  </label>
11
11
  <div
12
- aria-expanded="false"
13
- class="ui selection dropdown"
14
- role="listbox"
15
- tabindex="0"
12
+ class="field"
16
13
  >
17
14
  <div
18
- aria-atomic="true"
19
- aria-live="polite"
20
- class="divider default text"
21
- role="alert"
22
- >
23
- queryables.resource.type
24
- </div>
25
- <i
26
- aria-hidden="true"
27
- class="dropdown icon"
28
- />
29
- <div
30
- class="menu transition"
15
+ aria-expanded="false"
16
+ class="ui selection dropdown"
17
+ role="listbox"
18
+ tabindex="0"
31
19
  >
32
20
  <div
33
- aria-checked="false"
34
- aria-selected="true"
35
- class="selected item"
36
- role="option"
37
- style="pointer-events: all;"
21
+ aria-atomic="true"
22
+ aria-live="polite"
23
+ class="divider default text"
24
+ role="alert"
38
25
  >
39
- <span
40
- class="text"
41
- >
42
- queryables.resource.type.data_structure
43
- </span>
26
+ queryables.resource.type
44
27
  </div>
28
+ <i
29
+ aria-hidden="true"
30
+ class="dropdown icon"
31
+ />
45
32
  <div
46
- aria-checked="false"
47
- aria-selected="false"
48
- class="item"
49
- role="option"
50
- style="pointer-events: all;"
33
+ class="menu transition"
51
34
  >
52
- <span
53
- class="text"
35
+ <div
36
+ aria-checked="false"
37
+ aria-selected="true"
38
+ class="selected item"
39
+ role="option"
40
+ style="pointer-events: all;"
41
+ >
42
+ <span
43
+ class="text"
44
+ >
45
+ queryables.resource.type.data_structure
46
+ </span>
47
+ </div>
48
+ <div
49
+ aria-checked="false"
50
+ aria-selected="false"
51
+ class="item"
52
+ role="option"
53
+ style="pointer-events: all;"
54
54
  >
55
- queryables.resource.type.reference_dataset
56
- </span>
55
+ <span
56
+ class="text"
57
+ >
58
+ queryables.resource.type.reference_dataset
59
+ </span>
60
+ </div>
57
61
  </div>
58
62
  </div>
59
63
  </div>
@@ -70,11 +74,19 @@ exports[`<Ratio /> matches the latest snapshot 1`] = `
70
74
  <div
71
75
  class="ui horizontal divider"
72
76
  >
73
- <button
74
- class="ui mini button"
77
+ <div
78
+ class="ui medium basic buttons"
75
79
  >
76
- expression.clause.action.addGroup
77
- </button>
80
+ <button
81
+ class="ui button"
82
+ >
83
+ <i
84
+ aria-hidden="true"
85
+ class="plus icon"
86
+ />
87
+ expression.clause.action.addGroup
88
+ </button>
89
+ </div>
78
90
  </div>
79
91
  </div>
80
92
  </div>
@@ -90,51 +102,55 @@ exports[`<Ratio /> matches the latest snapshot when there is not resource 1`] =
90
102
  quality_control.form.control_properties.ratio.resource
91
103
  </label>
92
104
  <div
93
- aria-expanded="false"
94
- class="ui selection dropdown"
95
- role="listbox"
96
- tabindex="0"
105
+ class="field"
97
106
  >
98
107
  <div
99
- aria-atomic="true"
100
- aria-live="polite"
101
- class="divider default text"
102
- role="alert"
103
- >
104
- queryables.resource.type
105
- </div>
106
- <i
107
- aria-hidden="true"
108
- class="dropdown icon"
109
- />
110
- <div
111
- class="menu transition"
108
+ aria-expanded="false"
109
+ class="ui selection dropdown"
110
+ role="listbox"
111
+ tabindex="0"
112
112
  >
113
113
  <div
114
- aria-checked="false"
115
- aria-selected="true"
116
- class="selected item"
117
- role="option"
118
- style="pointer-events: all;"
114
+ aria-atomic="true"
115
+ aria-live="polite"
116
+ class="divider default text"
117
+ role="alert"
119
118
  >
120
- <span
121
- class="text"
122
- >
123
- queryables.resource.type.data_structure
124
- </span>
119
+ queryables.resource.type
125
120
  </div>
121
+ <i
122
+ aria-hidden="true"
123
+ class="dropdown icon"
124
+ />
126
125
  <div
127
- aria-checked="false"
128
- aria-selected="false"
129
- class="item"
130
- role="option"
131
- style="pointer-events: all;"
126
+ class="menu transition"
132
127
  >
133
- <span
134
- class="text"
128
+ <div
129
+ aria-checked="false"
130
+ aria-selected="true"
131
+ class="selected item"
132
+ role="option"
133
+ style="pointer-events: all;"
134
+ >
135
+ <span
136
+ class="text"
137
+ >
138
+ queryables.resource.type.data_structure
139
+ </span>
140
+ </div>
141
+ <div
142
+ aria-checked="false"
143
+ aria-selected="false"
144
+ class="item"
145
+ role="option"
146
+ style="pointer-events: all;"
135
147
  >
136
- queryables.resource.type.reference_dataset
137
- </span>
148
+ <span
149
+ class="text"
150
+ >
151
+ queryables.resource.type.reference_dataset
152
+ </span>
153
+ </div>
138
154
  </div>
139
155
  </div>
140
156
  </div>
@@ -31,3 +31,10 @@ export const useDataViewDelete = (dataView) => {
31
31
  const url = compile(API_DATA_VIEW)({ id: `${id}` });
32
32
  return useSWRMutations(url, (url, { arg }) => apiJsonDelete(url, arg));
33
33
  };
34
+
35
+ export const useDataViewFetch = (id) => {
36
+ const url = compile(API_DATA_VIEW)({ id: `${id}` });
37
+ const { data, error } = useSWR(url, apiJson);
38
+ const dataView = data?.data?.data;
39
+ return { dataView, error, loading: !error && !data };
40
+ };