@truedat/qx 8.10.2 → 8.10.4

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 (61) hide show
  1. package/package.json +3 -3
  2. package/src/components/QxRoutes.js +8 -7
  3. package/src/components/__tests__/QxRoutes.spec.js +2 -1
  4. package/src/components/__tests__/__fixtures__/helper.js +13 -0
  5. package/src/components/__tests__/__snapshots__/QxRoutes.spec.js.snap +1 -1
  6. package/src/components/common/ClauseViewer.js +52 -8
  7. package/src/components/common/DescriptionInput.js +9 -34
  8. package/src/components/common/TypeSelector.js +20 -10
  9. package/src/components/common/__tests__/ClauseViewer.spec.js +150 -0
  10. package/src/components/common/__tests__/DescriptionInput.spec.js +2 -5
  11. package/src/components/common/__tests__/__snapshots__/DescriptionInput.spec.js.snap +7 -10
  12. package/src/components/common/expressions/Clauses.js +22 -17
  13. package/src/components/common/expressions/Condition.js +201 -102
  14. package/src/components/common/expressions/Expression.js +17 -23
  15. package/src/components/common/expressions/FunctionSelector.js +3 -3
  16. package/src/components/common/expressions/ShapeSelector.js +1 -1
  17. package/src/components/common/expressions/__tests__/Clauses.spec.js +1 -1
  18. package/src/components/common/expressions/__tests__/Condition.spec.js +83 -26
  19. package/src/components/common/expressions/__tests__/ParamSelector.spec.js +1 -1
  20. package/src/components/common/expressions/__tests__/__snapshots__/Clauses.spec.js.snap +18 -22
  21. package/src/components/common/expressions/__tests__/__snapshots__/Condition.spec.js.snap +215 -216
  22. package/src/components/common/expressions/__tests__/__snapshots__/ConstantSelector.spec.js.snap +6 -10
  23. package/src/components/common/expressions/__tests__/__snapshots__/Expression.spec.js.snap +630 -654
  24. package/src/components/common/expressions/__tests__/__snapshots__/FunctionArgs.spec.js.snap +193 -201
  25. package/src/components/common/expressions/__tests__/__snapshots__/FunctionSelector.spec.js.snap +450 -466
  26. package/src/components/common/expressions/__tests__/__snapshots__/ShapeSelector.spec.js.snap +34 -34
  27. package/src/components/common/expressions/constantInputs/AnySelector.js +1 -0
  28. package/src/components/common/expressions/constantInputs/__tests__/__snapshots__/AnySelector.spec.js.snap +15 -15
  29. package/src/components/dataViews/__tests__/__snapshots__/AdvancedDataViewEditor.spec.js.snap +378 -406
  30. package/src/components/dataViews/__tests__/__snapshots__/DataViewSummary.spec.js.snap +6 -6
  31. package/src/components/dataViews/__tests__/__snapshots__/Queryable.spec.js.snap +489 -577
  32. package/src/components/dataViews/__tests__/__snapshots__/Queryables.spec.js.snap +400 -476
  33. package/src/components/dataViews/advancedForm/Queryable.js +56 -64
  34. package/src/components/dataViews/advancedForm/Queryables.js +11 -2
  35. package/src/components/dataViews/queryableProperties/Join.js +16 -6
  36. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/Join.spec.js.snap +0 -28
  37. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/Select.spec.js.snap +270 -282
  38. package/src/components/dataViews/queryableProperties/__tests__/__snapshots__/SelectField.spec.js.snap +172 -180
  39. package/src/components/dataViews/simpleForm/DatasetForm.js +4 -0
  40. package/src/components/dataViews/simpleForm/FormQueryable.js +49 -53
  41. package/src/components/dataViews/summary/Where.js +3 -2
  42. package/src/components/functions/FunctionEdit.js +92 -0
  43. package/src/components/functions/FunctionEditor.js +32 -10
  44. package/src/components/functions/FunctionParams.js +54 -61
  45. package/src/components/functions/FunctionsList.js +213 -0
  46. package/src/components/functions/__tests__/FunctionEdit.spec.js +168 -0
  47. package/src/components/functions/__tests__/FunctionParams.spec.js +1 -8
  48. package/src/components/functions/__tests__/FunctionsList.spec.js +62 -0
  49. package/src/components/functions/__tests__/__snapshots__/FunctionEditor.spec.js.snap +553 -469
  50. package/src/components/functions/__tests__/__snapshots__/FunctionParams.spec.js.snap +139 -161
  51. package/src/components/functions/__tests__/__snapshots__/FunctionsList.spec.js.snap +588 -0
  52. package/src/components/qualityControls/__tests__/NewQualityControl.spec.js +4 -0
  53. package/src/components/qualityControls/__tests__/QualityControlEditor.spec.js +8 -1
  54. package/src/components/qualityControls/__tests__/__snapshots__/EditQualityControl.spec.js.snap +109 -118
  55. package/src/components/qualityControls/__tests__/__snapshots__/NewDraftQualityControl.spec.js.snap +109 -118
  56. package/src/components/qualityControls/__tests__/__snapshots__/QualityControlEditor.spec.js.snap +471 -468
  57. package/src/hooks/useFunctions.js +6 -0
  58. package/src/styles/Expression.less +39 -6
  59. package/src/components/functions/Functions.js +0 -143
  60. package/src/components/functions/__tests__/Functions.spec.js +0 -56
  61. package/src/components/functions/__tests__/__snapshots__/Functions.spec.js.snap +0 -85
@@ -132,155 +132,145 @@ exports[`<AdvancedDataViewEditor /> handles user interaction 1`] = `
132
132
  role="listitem"
133
133
  >
134
134
  <div>
135
- <div
136
- class="ui grid"
137
- >
135
+ <div>
136
+ <div
137
+ class="queryable-label"
138
+ >
139
+ <div
140
+ class="ui blue ribbon label"
141
+ >
142
+ dataViews.form.queryable.from
143
+ </div>
144
+ </div>
138
145
  <div
139
- class="column"
146
+ class="vertical-space"
140
147
  >
141
148
  <div
142
- class="ui segment"
149
+ class="field"
143
150
  >
151
+ <label>
152
+ dataViews.form.queryable.alias
153
+ </label>
144
154
  <div
145
- class="queryable-label"
155
+ class="ui input"
146
156
  >
147
- <div
148
- class="ui blue ribbon label"
149
- >
150
- dataViews.form.queryable.from
151
- </div>
157
+ <input
158
+ autocomplete="off"
159
+ placeholder="dataViews.form.queryable.alias"
160
+ type="text"
161
+ value="from_alias"
162
+ />
152
163
  </div>
164
+ </div>
165
+ </div>
166
+ <div
167
+ class="vertical-space"
168
+ >
169
+ <div
170
+ class="required field"
171
+ >
172
+ <label>
173
+ queryables.form.resource
174
+ </label>
153
175
  <div
154
- class="row vertical-space"
176
+ class="field"
155
177
  >
156
178
  <div
157
- class="field"
179
+ aria-disabled="false"
180
+ aria-expanded="false"
181
+ class="ui selection dropdown"
182
+ role="listbox"
183
+ tabindex="0"
158
184
  >
159
- <label>
160
- dataViews.form.queryable.alias
161
- </label>
162
185
  <div
163
- class="ui input"
186
+ aria-atomic="true"
187
+ aria-live="polite"
188
+ class="divider text"
189
+ role="alert"
164
190
  >
165
- <input
166
- autocomplete="off"
167
- placeholder="dataViews.form.queryable.alias"
168
- type="text"
169
- value="from_alias"
170
- />
191
+ queryables.resource.type.data_view
171
192
  </div>
172
- </div>
173
- </div>
174
- <div
175
- class="row vertical-space"
176
- >
177
- <div
178
- class="required field"
179
- >
180
- <label>
181
- queryables.form.resource
182
- </label>
193
+ <i
194
+ aria-hidden="true"
195
+ class="dropdown icon"
196
+ />
183
197
  <div
184
- class="field"
198
+ class="menu transition"
185
199
  >
186
200
  <div
187
- aria-disabled="false"
188
- aria-expanded="false"
189
- class="ui selection dropdown"
190
- role="listbox"
191
- tabindex="0"
201
+ aria-checked="false"
202
+ aria-selected="false"
203
+ class="item"
204
+ role="option"
205
+ style="pointer-events: all;"
192
206
  >
193
- <div
194
- aria-atomic="true"
195
- aria-live="polite"
196
- class="divider text"
197
- role="alert"
207
+ <span
208
+ class="text"
198
209
  >
199
- queryables.resource.type.data_view
200
- </div>
201
- <i
202
- aria-hidden="true"
203
- class="dropdown icon"
204
- />
205
- <div
206
- class="menu transition"
210
+ queryables.resource.type.data_structure
211
+ </span>
212
+ </div>
213
+ <div
214
+ aria-checked="true"
215
+ aria-selected="true"
216
+ class="active selected item"
217
+ role="option"
218
+ style="pointer-events: all;"
219
+ >
220
+ <span
221
+ class="text"
207
222
  >
208
- <div
209
- aria-checked="false"
210
- aria-selected="false"
211
- class="item"
212
- role="option"
213
- style="pointer-events: all;"
214
- >
215
- <span
216
- class="text"
217
- >
218
- queryables.resource.type.data_structure
219
- </span>
220
- </div>
221
- <div
222
- aria-checked="true"
223
- aria-selected="true"
224
- class="active selected item"
225
- role="option"
226
- style="pointer-events: all;"
227
- >
228
- <span
229
- class="text"
230
- >
231
- queryables.resource.type.data_view
232
- </span>
233
- </div>
234
- </div>
223
+ queryables.resource.type.data_view
224
+ </span>
235
225
  </div>
236
226
  </div>
237
227
  </div>
228
+ </div>
229
+ </div>
230
+ <div
231
+ class="field"
232
+ >
233
+ <div
234
+ aria-expanded="false"
235
+ class="ui fluid search selection dropdown"
236
+ role="combobox"
237
+ >
238
+ <input
239
+ aria-autocomplete="list"
240
+ autocomplete="off"
241
+ class="search"
242
+ tabindex="0"
243
+ type="text"
244
+ value=""
245
+ />
246
+ <div
247
+ aria-atomic="true"
248
+ aria-live="polite"
249
+ class="divider text"
250
+ role="alert"
251
+ >
252
+ AnotherDataView
253
+ </div>
254
+ <i
255
+ aria-hidden="true"
256
+ class="dropdown icon"
257
+ />
238
258
  <div
239
- class="field"
259
+ class="menu transition"
260
+ role="listbox"
240
261
  >
241
262
  <div
242
- aria-expanded="false"
243
- class="ui fluid search selection dropdown"
244
- role="combobox"
263
+ aria-checked="true"
264
+ aria-selected="true"
265
+ class="active selected item"
266
+ role="option"
267
+ style="pointer-events: all;"
245
268
  >
246
- <input
247
- aria-autocomplete="list"
248
- autocomplete="off"
249
- class="search"
250
- tabindex="0"
251
- type="text"
252
- value=""
253
- />
254
- <div
255
- aria-atomic="true"
256
- aria-live="polite"
257
- class="divider text"
258
- role="alert"
269
+ <span
270
+ class="text"
259
271
  >
260
272
  AnotherDataView
261
- </div>
262
- <i
263
- aria-hidden="true"
264
- class="dropdown icon"
265
- />
266
- <div
267
- class="menu transition"
268
- role="listbox"
269
- >
270
- <div
271
- aria-checked="true"
272
- aria-selected="true"
273
- class="active selected item"
274
- role="option"
275
- style="pointer-events: all;"
276
- >
277
- <span
278
- class="text"
279
- >
280
- AnotherDataView
281
- </span>
282
- </div>
283
- </div>
273
+ </span>
284
274
  </div>
285
275
  </div>
286
276
  </div>
@@ -363,143 +353,139 @@ exports[`<AdvancedDataViewEditor /> handles user interaction 1`] = `
363
353
  class="nine wide column"
364
354
  >
365
355
  <div
366
- class="ui grid"
356
+ class="expression-container"
367
357
  >
368
358
  <div
369
- class="sixteen wide column"
359
+ class="expression-content"
370
360
  >
371
361
  <div
372
- class="expression-container"
362
+ aria-expanded="false"
363
+ class="ui top left pointing dropdown"
364
+ role="listbox"
365
+ tabindex="0"
373
366
  >
374
367
  <div
375
- aria-expanded="false"
376
- class="ui top left pointing dropdown"
377
- role="listbox"
378
- tabindex="0"
368
+ class="shape-selector-trigger"
369
+ >
370
+ [F]
371
+ </div>
372
+ <div
373
+ class="menu transition"
379
374
  >
380
375
  <div
381
- class="shape-selector-trigger"
382
- >
383
- [F]
384
- </div>
385
- <div
386
- class="menu transition"
376
+ aria-checked="true"
377
+ aria-selected="true"
378
+ class="active selected item"
379
+ role="option"
380
+ style="pointer-events: all;"
387
381
  >
388
382
  <div
389
- aria-checked="false"
390
- aria-selected="false"
391
- class="item"
392
- role="option"
393
- style="pointer-events: all;"
383
+ class="text flex-center"
394
384
  >
395
- <div
396
- class="text flex-center"
385
+ <small
386
+ style="margin-right: 5px;"
397
387
  >
398
- <small
399
- style="margin-right: 5px;"
400
- >
401
- <b>
402
- <code>
403
- [π]
404
- </code>
405
- </b>
406
- </small>
407
- functions.expression.shape.constant
408
- </div>
388
+ <b>
389
+ <code>
390
+ [F]
391
+ </code>
392
+ </b>
393
+ </small>
394
+ functions.expression.shape.field
409
395
  </div>
396
+ </div>
397
+ <div
398
+ aria-checked="false"
399
+ aria-selected="false"
400
+ class="item"
401
+ role="option"
402
+ style="pointer-events: all;"
403
+ >
410
404
  <div
411
- aria-checked="false"
412
- aria-selected="false"
413
- class="item"
414
- role="option"
415
- style="pointer-events: all;"
405
+ class="text flex-center"
416
406
  >
417
- <div
418
- class="text flex-center"
407
+ <small
408
+ style="margin-right: 5px;"
419
409
  >
420
- <small
421
- style="margin-right: 5px;"
422
- >
423
- <b>
424
- <code>
425
- f(x)
426
- </code>
427
- </b>
428
- </small>
429
- functions.expression.shape.function
430
- </div>
410
+ <b>
411
+ <code>
412
+ f(x)
413
+ </code>
414
+ </b>
415
+ </small>
416
+ functions.expression.shape.function
431
417
  </div>
418
+ </div>
419
+ <div
420
+ aria-checked="false"
421
+ aria-selected="false"
422
+ class="item"
423
+ role="option"
424
+ style="pointer-events: all;"
425
+ >
432
426
  <div
433
- aria-checked="true"
434
- aria-selected="true"
435
- class="active selected item"
436
- role="option"
437
- style="pointer-events: all;"
427
+ class="text flex-center"
438
428
  >
439
- <div
440
- class="text flex-center"
429
+ <small
430
+ style="margin-right: 5px;"
441
431
  >
442
- <small
443
- style="margin-right: 5px;"
444
- >
445
- <b>
446
- <code>
447
- [F]
448
- </code>
449
- </b>
450
- </small>
451
- functions.expression.shape.field
452
- </div>
432
+ <b>
433
+ <code>
434
+ [π]
435
+ </code>
436
+ </b>
437
+ </small>
438
+ functions.expression.shape.constant
453
439
  </div>
454
440
  </div>
455
441
  </div>
442
+ </div>
443
+ <div
444
+ class="sixteen wide field"
445
+ >
456
446
  <div
457
- class="sixteen wide field"
447
+ aria-expanded="false"
448
+ class="ui fluid selection scrolling pointing dropdown select-field-dropdown"
449
+ role="listbox"
450
+ tabindex="0"
458
451
  >
459
452
  <div
460
- aria-expanded="false"
461
- class="ui fluid selection scrolling pointing dropdown select-field-dropdown"
462
- role="listbox"
463
- tabindex="0"
453
+ aria-atomic="true"
454
+ aria-live="polite"
455
+ class="divider text"
456
+ role="alert"
464
457
  >
465
458
  <div
466
- aria-atomic="true"
467
- aria-live="polite"
468
- class="divider text"
469
- role="alert"
459
+ class="ui blue label"
470
460
  >
471
- <div
472
- class="ui blue label"
473
- >
474
- from_alias
475
- </div>
476
- Column1
461
+ from_alias
477
462
  </div>
478
- <i
479
- aria-hidden="true"
480
- class="dropdown icon"
481
- />
463
+ Column1
464
+ </div>
465
+ <i
466
+ aria-hidden="true"
467
+ class="dropdown icon"
468
+ />
469
+ <div
470
+ class="menu transition"
471
+ >
482
472
  <div
483
- class="menu transition"
473
+ aria-checked="true"
474
+ aria-selected="true"
475
+ class="active selected item"
476
+ role="option"
477
+ style="pointer-events: all;"
484
478
  >
485
479
  <div
486
- aria-checked="true"
487
- aria-selected="true"
488
- class="active selected item"
489
- role="option"
490
- style="pointer-events: all;"
480
+ class="ui blue label"
491
481
  >
492
- <div
493
- class="ui blue label"
494
- >
495
- from_alias
496
- </div>
497
- <span
498
- class="text"
499
- >
500
- Column1
501
- </span>
482
+ from_alias
502
483
  </div>
484
+ <span
485
+ class="text"
486
+ >
487
+ Column1
488
+ </span>
503
489
  </div>
504
490
  </div>
505
491
  </div>
@@ -829,113 +815,103 @@ exports[`<AdvancedDataViewEditor /> matches the latest snapshot with content 1`]
829
815
  role="listitem"
830
816
  >
831
817
  <div>
832
- <div
833
- class="ui grid"
834
- >
818
+ <div>
819
+ <div
820
+ class="queryable-label"
821
+ >
822
+ <div
823
+ class="ui blue ribbon label"
824
+ >
825
+ dataViews.form.queryable.from
826
+ </div>
827
+ </div>
835
828
  <div
836
- class="column"
829
+ class="vertical-space"
837
830
  >
838
831
  <div
839
- class="ui segment"
832
+ class="field"
840
833
  >
834
+ <label>
835
+ dataViews.form.queryable.alias
836
+ </label>
841
837
  <div
842
- class="queryable-label"
838
+ class="ui input"
843
839
  >
844
- <div
845
- class="ui blue ribbon label"
846
- >
847
- dataViews.form.queryable.from
848
- </div>
840
+ <input
841
+ autocomplete="off"
842
+ placeholder="dataViews.form.queryable.alias"
843
+ type="text"
844
+ />
849
845
  </div>
846
+ </div>
847
+ </div>
848
+ <div
849
+ class="vertical-space"
850
+ >
851
+ <div
852
+ class="required field"
853
+ >
854
+ <label>
855
+ queryables.form.resource
856
+ </label>
850
857
  <div
851
- class="row vertical-space"
858
+ class="field"
852
859
  >
853
860
  <div
854
- class="field"
861
+ aria-disabled="false"
862
+ aria-expanded="false"
863
+ class="ui selection dropdown"
864
+ role="listbox"
865
+ tabindex="0"
855
866
  >
856
- <label>
857
- dataViews.form.queryable.alias
858
- </label>
859
867
  <div
860
- class="ui input"
868
+ aria-atomic="true"
869
+ aria-live="polite"
870
+ class="divider text"
871
+ role="alert"
861
872
  >
862
- <input
863
- autocomplete="off"
864
- placeholder="dataViews.form.queryable.alias"
865
- type="text"
866
- />
873
+ queryables.resource.type.data_structure
867
874
  </div>
868
- </div>
869
- </div>
870
- <div
871
- class="row vertical-space"
872
- >
873
- <div
874
- class="required field"
875
- >
876
- <label>
877
- queryables.form.resource
878
- </label>
875
+ <i
876
+ aria-hidden="true"
877
+ class="dropdown icon"
878
+ />
879
879
  <div
880
- class="field"
880
+ class="menu transition"
881
881
  >
882
882
  <div
883
- aria-disabled="false"
884
- aria-expanded="false"
885
- class="ui selection dropdown"
886
- role="listbox"
887
- tabindex="0"
883
+ aria-checked="true"
884
+ aria-selected="true"
885
+ class="active selected item"
886
+ role="option"
887
+ style="pointer-events: all;"
888
888
  >
889
- <div
890
- aria-atomic="true"
891
- aria-live="polite"
892
- class="divider text"
893
- role="alert"
889
+ <span
890
+ class="text"
894
891
  >
895
892
  queryables.resource.type.data_structure
896
- </div>
897
- <i
898
- aria-hidden="true"
899
- class="dropdown icon"
900
- />
901
- <div
902
- class="menu transition"
903
- >
904
- <div
905
- aria-checked="true"
906
- aria-selected="true"
907
- class="active selected item"
908
- role="option"
909
- style="pointer-events: all;"
910
- >
911
- <span
912
- class="text"
913
- >
914
- queryables.resource.type.data_structure
915
- </span>
916
- </div>
917
- </div>
893
+ </span>
918
894
  </div>
919
895
  </div>
920
896
  </div>
897
+ </div>
898
+ </div>
899
+ <div
900
+ class="field"
901
+ >
902
+ <div
903
+ class="required field"
904
+ >
921
905
  <div
922
- class="field"
906
+ class="ui fluid icon input"
923
907
  >
924
- <div
925
- class="required field"
926
- >
927
- <div
928
- class="ui fluid icon input"
929
- >
930
- <input
931
- class="action-pointer"
932
- placeholder="queryables.resource.selector.data_structure"
933
- required=""
934
- type="text"
935
- value="ParentTable"
936
- />
937
- </div>
938
- </div>
908
+ <input
909
+ class="action-pointer"
910
+ placeholder="queryables.resource.selector.data_structure"
911
+ required=""
912
+ type="text"
913
+ value="ParentTable"
914
+ />
939
915
  </div>
940
916
  </div>
941
917
  </div>
@@ -1017,143 +993,139 @@ exports[`<AdvancedDataViewEditor /> matches the latest snapshot with content 1`]
1017
993
  class="nine wide column"
1018
994
  >
1019
995
  <div
1020
- class="ui grid"
996
+ class="expression-container"
1021
997
  >
1022
998
  <div
1023
- class="sixteen wide column"
999
+ class="expression-content"
1024
1000
  >
1025
1001
  <div
1026
- class="expression-container"
1002
+ aria-expanded="false"
1003
+ class="ui top left pointing dropdown"
1004
+ role="listbox"
1005
+ tabindex="0"
1027
1006
  >
1028
1007
  <div
1029
- aria-expanded="false"
1030
- class="ui top left pointing dropdown"
1031
- role="listbox"
1032
- tabindex="0"
1008
+ class="shape-selector-trigger"
1009
+ >
1010
+ [F]
1011
+ </div>
1012
+ <div
1013
+ class="menu transition"
1033
1014
  >
1034
1015
  <div
1035
- class="shape-selector-trigger"
1036
- >
1037
- [F]
1038
- </div>
1039
- <div
1040
- class="menu transition"
1016
+ aria-checked="true"
1017
+ aria-selected="true"
1018
+ class="active selected item"
1019
+ role="option"
1020
+ style="pointer-events: all;"
1041
1021
  >
1042
1022
  <div
1043
- aria-checked="false"
1044
- aria-selected="false"
1045
- class="item"
1046
- role="option"
1047
- style="pointer-events: all;"
1023
+ class="text flex-center"
1048
1024
  >
1049
- <div
1050
- class="text flex-center"
1025
+ <small
1026
+ style="margin-right: 5px;"
1051
1027
  >
1052
- <small
1053
- style="margin-right: 5px;"
1054
- >
1055
- <b>
1056
- <code>
1057
- [π]
1058
- </code>
1059
- </b>
1060
- </small>
1061
- functions.expression.shape.constant
1062
- </div>
1028
+ <b>
1029
+ <code>
1030
+ [F]
1031
+ </code>
1032
+ </b>
1033
+ </small>
1034
+ functions.expression.shape.field
1063
1035
  </div>
1036
+ </div>
1037
+ <div
1038
+ aria-checked="false"
1039
+ aria-selected="false"
1040
+ class="item"
1041
+ role="option"
1042
+ style="pointer-events: all;"
1043
+ >
1064
1044
  <div
1065
- aria-checked="false"
1066
- aria-selected="false"
1067
- class="item"
1068
- role="option"
1069
- style="pointer-events: all;"
1045
+ class="text flex-center"
1070
1046
  >
1071
- <div
1072
- class="text flex-center"
1047
+ <small
1048
+ style="margin-right: 5px;"
1073
1049
  >
1074
- <small
1075
- style="margin-right: 5px;"
1076
- >
1077
- <b>
1078
- <code>
1079
- f(x)
1080
- </code>
1081
- </b>
1082
- </small>
1083
- functions.expression.shape.function
1084
- </div>
1050
+ <b>
1051
+ <code>
1052
+ f(x)
1053
+ </code>
1054
+ </b>
1055
+ </small>
1056
+ functions.expression.shape.function
1085
1057
  </div>
1058
+ </div>
1059
+ <div
1060
+ aria-checked="false"
1061
+ aria-selected="false"
1062
+ class="item"
1063
+ role="option"
1064
+ style="pointer-events: all;"
1065
+ >
1086
1066
  <div
1087
- aria-checked="true"
1088
- aria-selected="true"
1089
- class="active selected item"
1090
- role="option"
1091
- style="pointer-events: all;"
1067
+ class="text flex-center"
1092
1068
  >
1093
- <div
1094
- class="text flex-center"
1069
+ <small
1070
+ style="margin-right: 5px;"
1095
1071
  >
1096
- <small
1097
- style="margin-right: 5px;"
1098
- >
1099
- <b>
1100
- <code>
1101
- [F]
1102
- </code>
1103
- </b>
1104
- </small>
1105
- functions.expression.shape.field
1106
- </div>
1072
+ <b>
1073
+ <code>
1074
+ [π]
1075
+ </code>
1076
+ </b>
1077
+ </small>
1078
+ functions.expression.shape.constant
1107
1079
  </div>
1108
1080
  </div>
1109
1081
  </div>
1082
+ </div>
1083
+ <div
1084
+ class="sixteen wide field"
1085
+ >
1110
1086
  <div
1111
- class="sixteen wide field"
1087
+ aria-expanded="false"
1088
+ class="ui fluid selection scrolling pointing dropdown select-field-dropdown"
1089
+ role="listbox"
1090
+ tabindex="0"
1112
1091
  >
1113
1092
  <div
1114
- aria-expanded="false"
1115
- class="ui fluid selection scrolling pointing dropdown select-field-dropdown"
1116
- role="listbox"
1117
- tabindex="0"
1093
+ aria-atomic="true"
1094
+ aria-live="polite"
1095
+ class="divider text"
1096
+ role="alert"
1118
1097
  >
1119
1098
  <div
1120
- aria-atomic="true"
1121
- aria-live="polite"
1122
- class="divider text"
1123
- role="alert"
1099
+ class="ui blue label"
1124
1100
  >
1125
- <div
1126
- class="ui blue label"
1127
- >
1128
- ParentTable
1129
- </div>
1130
- Column1
1101
+ ParentTable
1131
1102
  </div>
1132
- <i
1133
- aria-hidden="true"
1134
- class="dropdown icon"
1135
- />
1103
+ Column1
1104
+ </div>
1105
+ <i
1106
+ aria-hidden="true"
1107
+ class="dropdown icon"
1108
+ />
1109
+ <div
1110
+ class="menu transition"
1111
+ >
1136
1112
  <div
1137
- class="menu transition"
1113
+ aria-checked="true"
1114
+ aria-selected="true"
1115
+ class="active selected item"
1116
+ role="option"
1117
+ style="pointer-events: all;"
1138
1118
  >
1139
1119
  <div
1140
- aria-checked="true"
1141
- aria-selected="true"
1142
- class="active selected item"
1143
- role="option"
1144
- style="pointer-events: all;"
1120
+ class="ui blue label"
1145
1121
  >
1146
- <div
1147
- class="ui blue label"
1148
- >
1149
- ParentTable
1150
- </div>
1151
- <span
1152
- class="text"
1153
- >
1154
- Column1
1155
- </span>
1122
+ ParentTable
1156
1123
  </div>
1124
+ <span
1125
+ class="text"
1126
+ >
1127
+ Column1
1128
+ </span>
1157
1129
  </div>
1158
1130
  </div>
1159
1131
  </div>