@truedat/qx 5.12.2 → 5.12.6

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 (52) hide show
  1. package/package.json +8 -3
  2. package/src/api.js +3 -1
  3. package/src/components/QxContext.js +3 -0
  4. package/src/components/QxRoutes.js +6 -1
  5. package/src/components/common/DescriptionInput.js +47 -0
  6. package/src/components/common/TestFormWrapper.js +33 -0
  7. package/src/components/common/TypeSelector.js +33 -0
  8. package/src/components/common/index.js +4 -0
  9. package/src/components/functions/FunctionEditor.js +200 -0
  10. package/src/components/functions/FunctionParams.js +122 -0
  11. package/src/components/functions/Functions.js +152 -0
  12. package/src/components/functions/__tests__/FunctionEditor.spec.js +195 -0
  13. package/src/components/functions/__tests__/FunctionParams.spec.js +108 -0
  14. package/src/components/functions/__tests__/Functions.spec.js +95 -0
  15. package/src/components/functions/__tests__/__snapshots__/FunctionEditor.spec.js.snap +1563 -0
  16. package/src/components/functions/__tests__/__snapshots__/FunctionParams.spec.js.snap +228 -0
  17. package/src/components/functions/__tests__/__snapshots__/Functions.spec.js.snap +86 -0
  18. package/src/components/functions/__tests__/useWatchParams.spec.js +23 -0
  19. package/src/components/functions/expressions/ConstantSelector.js +26 -0
  20. package/src/components/functions/expressions/Expression.js +40 -0
  21. package/src/components/functions/expressions/FieldSelector.js +56 -0
  22. package/src/components/functions/expressions/FunctionArgs.js +49 -0
  23. package/src/components/functions/expressions/FunctionSelector.js +95 -0
  24. package/src/components/functions/expressions/ParamSelector.js +51 -0
  25. package/src/components/functions/expressions/ShapeSelector.js +74 -0
  26. package/src/components/functions/expressions/__tests__/ConstantSelector.spec.js +64 -0
  27. package/src/components/functions/expressions/__tests__/Expression.spec.js +131 -0
  28. package/src/components/functions/expressions/__tests__/FunctionArgs.spec.js +86 -0
  29. package/src/components/functions/expressions/__tests__/FunctionSelector.spec.js +69 -0
  30. package/src/components/functions/expressions/__tests__/ParamSelector.spec.js +115 -0
  31. package/src/components/functions/expressions/__tests__/ShapeSelector.spec.js +107 -0
  32. package/src/components/functions/expressions/__tests__/__snapshots__/ConstantSelector.spec.js.snap +149 -0
  33. package/src/components/functions/expressions/__tests__/__snapshots__/Expression.spec.js.snap +904 -0
  34. package/src/components/functions/expressions/__tests__/__snapshots__/FunctionArgs.spec.js.snap +392 -0
  35. package/src/components/functions/expressions/__tests__/__snapshots__/FunctionSelector.spec.js.snap +377 -0
  36. package/src/components/functions/expressions/__tests__/__snapshots__/ParamSelector.spec.js.snap +95 -0
  37. package/src/components/functions/expressions/__tests__/__snapshots__/ShapeSelector.spec.js.snap +290 -0
  38. package/src/components/functions/expressions/constantInputs/AnySelector.js +29 -0
  39. package/src/components/functions/expressions/constantInputs/BooleanSelector.js +37 -0
  40. package/src/components/functions/expressions/constantInputs/DefaultSelector.js +34 -0
  41. package/src/components/functions/expressions/constantInputs/__tests__/AnySelector.spec.js +63 -0
  42. package/src/components/functions/expressions/constantInputs/__tests__/BooleanSelector.spec.js +51 -0
  43. package/src/components/functions/expressions/constantInputs/__tests__/DefaultSelector.spec.js +56 -0
  44. package/src/components/functions/expressions/constantInputs/__tests__/__snapshots__/AnySelector.spec.js.snap +236 -0
  45. package/src/components/functions/expressions/constantInputs/__tests__/__snapshots__/BooleanSelector.spec.js.snap +101 -0
  46. package/src/components/functions/expressions/constantInputs/__tests__/__snapshots__/DefaultSelector.spec.js.snap +39 -0
  47. package/src/components/functions/expressions/constantInputs/index.js +5 -0
  48. package/src/components/functions/useWatchParams.js +13 -0
  49. package/src/hooks/__tests__/useFunctions.spec.js +101 -0
  50. package/src/hooks/useFunctions.js +33 -0
  51. package/src/styles/Expression.less +102 -0
  52. package/src/types.js +38 -0
@@ -0,0 +1,1563 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`<FunctionEditor /> matches snapshot without onDelete 1`] = `
4
+ <div>
5
+ <form
6
+ class="ui form"
7
+ >
8
+ <h3
9
+ class="ui dividing header"
10
+ >
11
+ Function
12
+ /
13
+ 0
14
+ <div
15
+ class="ui teal label"
16
+ >
17
+ boolean
18
+ </div>
19
+ </h3>
20
+ <div
21
+ class="ui grid"
22
+ >
23
+ <div
24
+ class="column"
25
+ >
26
+ <div
27
+ class="row"
28
+ >
29
+ <div
30
+ class="required field"
31
+ >
32
+ <label>
33
+ name
34
+ </label>
35
+ <div
36
+ class="ui action input"
37
+ >
38
+ <input
39
+ autocomplete="off"
40
+ placeholder="name"
41
+ required=""
42
+ type="text"
43
+ value=""
44
+ />
45
+ <div
46
+ aria-expanded="false"
47
+ class="ui basic button dropdown"
48
+ name="type"
49
+ role="listbox"
50
+ tabindex="0"
51
+ >
52
+ <div
53
+ aria-atomic="true"
54
+ aria-live="polite"
55
+ class="divider text"
56
+ role="alert"
57
+ >
58
+ boolean
59
+ </div>
60
+ <i
61
+ aria-hidden="true"
62
+ class="dropdown icon"
63
+ />
64
+ <div
65
+ class="menu transition"
66
+ >
67
+ <div
68
+ aria-checked="true"
69
+ aria-selected="true"
70
+ class="active selected item"
71
+ role="option"
72
+ style="pointer-events: all;"
73
+ >
74
+ <i
75
+ aria-hidden="true"
76
+ class="adjust icon"
77
+ />
78
+ <span
79
+ class="text"
80
+ >
81
+ boolean
82
+ </span>
83
+ </div>
84
+ <div
85
+ aria-checked="false"
86
+ aria-selected="false"
87
+ class="item"
88
+ role="option"
89
+ style="pointer-events: all;"
90
+ >
91
+ <i
92
+ aria-hidden="true"
93
+ class="font icon"
94
+ />
95
+ <span
96
+ class="text"
97
+ >
98
+ string
99
+ </span>
100
+ </div>
101
+ <div
102
+ aria-checked="false"
103
+ aria-selected="false"
104
+ class="item"
105
+ role="option"
106
+ style="pointer-events: all;"
107
+ >
108
+ <i
109
+ aria-hidden="true"
110
+ class="hashtag icon"
111
+ />
112
+ <span
113
+ class="text"
114
+ >
115
+ numeric
116
+ </span>
117
+ </div>
118
+ <div
119
+ aria-checked="false"
120
+ aria-selected="false"
121
+ class="item"
122
+ role="option"
123
+ style="pointer-events: all;"
124
+ >
125
+ <i
126
+ aria-hidden="true"
127
+ class="calendar alternate outline icon"
128
+ />
129
+ <span
130
+ class="text"
131
+ >
132
+ date
133
+ </span>
134
+ </div>
135
+ <div
136
+ aria-checked="false"
137
+ aria-selected="false"
138
+ class="item"
139
+ role="option"
140
+ style="pointer-events: all;"
141
+ >
142
+ <i
143
+ aria-hidden="true"
144
+ class="clock outline icon"
145
+ />
146
+ <span
147
+ class="text"
148
+ >
149
+ timestamp
150
+ </span>
151
+ </div>
152
+ <div
153
+ aria-checked="false"
154
+ aria-selected="false"
155
+ class="item"
156
+ role="option"
157
+ style="pointer-events: all;"
158
+ >
159
+ <i
160
+ aria-hidden="true"
161
+ class="question circle outline icon"
162
+ />
163
+ <span
164
+ class="text"
165
+ >
166
+ any
167
+ </span>
168
+ </div>
169
+ </div>
170
+ </div>
171
+ </div>
172
+ </div>
173
+ </div>
174
+ <div
175
+ class="row"
176
+ >
177
+ <div
178
+ class="ui horizontal link list"
179
+ role="list"
180
+ >
181
+ <a
182
+ class="item"
183
+ role="listitem"
184
+ style="font-style: italic; font-size: 13px; padding: 9.5px 14px;"
185
+ tabindex="0"
186
+ >
187
+ add_description
188
+ </a>
189
+ </div>
190
+ </div>
191
+ </div>
192
+ </div>
193
+ <h5
194
+ class="ui dividing header"
195
+ >
196
+ params
197
+ </h5>
198
+ <div
199
+ class="ui list"
200
+ role="list"
201
+ >
202
+ <div
203
+ class="item"
204
+ role="listitem"
205
+ >
206
+ <button
207
+ class="ui button"
208
+ >
209
+ add_param
210
+ </button>
211
+ </div>
212
+ </div>
213
+ <h5
214
+ class="ui dividing header"
215
+ >
216
+ output
217
+ </h5>
218
+ <div
219
+ class="expression-container"
220
+ >
221
+ <div
222
+ aria-expanded="false"
223
+ class="ui top left pointing dropdown"
224
+ role="listbox"
225
+ tabindex="0"
226
+ >
227
+ <div
228
+ class="shape-selector-trigger"
229
+ >
230
+ f(x)
231
+ </div>
232
+ <div
233
+ class="menu transition"
234
+ >
235
+ <div
236
+ aria-checked="false"
237
+ aria-selected="false"
238
+ class="item"
239
+ role="option"
240
+ style="pointer-events: all;"
241
+ >
242
+ <div
243
+ class="text"
244
+ style="display: flex; align-items: center;"
245
+ >
246
+ <small
247
+ style="margin-right: 5px;"
248
+ >
249
+ <b>
250
+ <code>
251
+ [π]
252
+ </code>
253
+ </b>
254
+ </small>
255
+ constant
256
+ </div>
257
+ </div>
258
+ <div
259
+ aria-checked="true"
260
+ aria-selected="true"
261
+ class="active selected item"
262
+ role="option"
263
+ style="pointer-events: all;"
264
+ >
265
+ <div
266
+ class="text"
267
+ style="display: flex; align-items: center;"
268
+ >
269
+ <small
270
+ style="margin-right: 5px;"
271
+ >
272
+ <b>
273
+ <code>
274
+ f(x)
275
+ </code>
276
+ </b>
277
+ </small>
278
+ function
279
+ </div>
280
+ </div>
281
+ </div>
282
+ </div>
283
+ <div
284
+ class="accordion ui fluid no-margin"
285
+ >
286
+ <div
287
+ class="active title no-padding"
288
+ >
289
+ <div
290
+ class="flex-center"
291
+ >
292
+ <i
293
+ aria-hidden="true"
294
+ class="dropdown icon"
295
+ />
296
+ <div
297
+ aria-expanded="false"
298
+ class="ui fluid search selection dropdown"
299
+ role="combobox"
300
+ >
301
+ <input
302
+ aria-autocomplete="list"
303
+ autocomplete="off"
304
+ class="search"
305
+ tabindex="0"
306
+ type="text"
307
+ value=""
308
+ />
309
+ <div
310
+ aria-atomic="true"
311
+ aria-live="polite"
312
+ class="divider text"
313
+ role="alert"
314
+ >
315
+ function.placeholder
316
+ </div>
317
+ <i
318
+ aria-hidden="true"
319
+ class="dropdown icon"
320
+ />
321
+ <div
322
+ class="menu transition"
323
+ role="listbox"
324
+ >
325
+ <div
326
+ aria-checked="false"
327
+ aria-selected="true"
328
+ class="selected item"
329
+ role="option"
330
+ style="pointer-events: all;"
331
+ >
332
+ <div
333
+ class="ui header"
334
+ >
335
+ <div
336
+ class="flex-center"
337
+ >
338
+ <div>
339
+ eq
340
+ </div>
341
+ <div
342
+ class="function-params-label"
343
+ >
344
+ <div
345
+ class="ui grey label"
346
+ >
347
+ <i
348
+ aria-hidden="true"
349
+ class="question circle outline icon"
350
+ />
351
+ arg1
352
+ </div>
353
+ <div
354
+ class="ui grey label"
355
+ >
356
+ <i
357
+ aria-hidden="true"
358
+ class="question circle outline icon"
359
+ />
360
+ arg2
361
+ </div>
362
+ </div>
363
+ </div>
364
+ </div>
365
+ <div
366
+ class="sub header"
367
+ />
368
+ </div>
369
+ </div>
370
+ </div>
371
+ </div>
372
+ </div>
373
+ <div
374
+ class="content active no-padding"
375
+ />
376
+ </div>
377
+ </div>
378
+ <div
379
+ class="ui hidden divider"
380
+ />
381
+ <div
382
+ class="actions"
383
+ >
384
+ <button
385
+ class="ui button"
386
+ >
387
+ cancel
388
+ </button>
389
+ <button
390
+ class="ui primary disabled button"
391
+ disabled=""
392
+ tabindex="-1"
393
+ >
394
+ save
395
+ </button>
396
+ </div>
397
+ </form>
398
+ </div>
399
+ `;
400
+
401
+ exports[`<FunctionEditor /> matches snapshot without selected function 1`] = `<div />`;
402
+
403
+ exports[`<FunctionEditor /> matches the latest snapshot 1`] = `
404
+ <div>
405
+ <form
406
+ class="ui form"
407
+ >
408
+ <h3
409
+ class="ui dividing header"
410
+ >
411
+ Function
412
+ /
413
+ 0
414
+ <div
415
+ class="ui teal label"
416
+ >
417
+ boolean
418
+ </div>
419
+ </h3>
420
+ <div
421
+ class="ui grid"
422
+ >
423
+ <div
424
+ class="column"
425
+ >
426
+ <div
427
+ class="row"
428
+ >
429
+ <div
430
+ class="required field"
431
+ >
432
+ <label>
433
+ name
434
+ </label>
435
+ <div
436
+ class="ui action input"
437
+ >
438
+ <input
439
+ autocomplete="off"
440
+ placeholder="name"
441
+ required=""
442
+ type="text"
443
+ value=""
444
+ />
445
+ <div
446
+ aria-expanded="false"
447
+ class="ui basic button dropdown"
448
+ name="type"
449
+ role="listbox"
450
+ tabindex="0"
451
+ >
452
+ <div
453
+ aria-atomic="true"
454
+ aria-live="polite"
455
+ class="divider text"
456
+ role="alert"
457
+ >
458
+ boolean
459
+ </div>
460
+ <i
461
+ aria-hidden="true"
462
+ class="dropdown icon"
463
+ />
464
+ <div
465
+ class="menu transition"
466
+ >
467
+ <div
468
+ aria-checked="true"
469
+ aria-selected="true"
470
+ class="active selected item"
471
+ role="option"
472
+ style="pointer-events: all;"
473
+ >
474
+ <i
475
+ aria-hidden="true"
476
+ class="adjust icon"
477
+ />
478
+ <span
479
+ class="text"
480
+ >
481
+ boolean
482
+ </span>
483
+ </div>
484
+ <div
485
+ aria-checked="false"
486
+ aria-selected="false"
487
+ class="item"
488
+ role="option"
489
+ style="pointer-events: all;"
490
+ >
491
+ <i
492
+ aria-hidden="true"
493
+ class="font icon"
494
+ />
495
+ <span
496
+ class="text"
497
+ >
498
+ string
499
+ </span>
500
+ </div>
501
+ <div
502
+ aria-checked="false"
503
+ aria-selected="false"
504
+ class="item"
505
+ role="option"
506
+ style="pointer-events: all;"
507
+ >
508
+ <i
509
+ aria-hidden="true"
510
+ class="hashtag icon"
511
+ />
512
+ <span
513
+ class="text"
514
+ >
515
+ numeric
516
+ </span>
517
+ </div>
518
+ <div
519
+ aria-checked="false"
520
+ aria-selected="false"
521
+ class="item"
522
+ role="option"
523
+ style="pointer-events: all;"
524
+ >
525
+ <i
526
+ aria-hidden="true"
527
+ class="calendar alternate outline icon"
528
+ />
529
+ <span
530
+ class="text"
531
+ >
532
+ date
533
+ </span>
534
+ </div>
535
+ <div
536
+ aria-checked="false"
537
+ aria-selected="false"
538
+ class="item"
539
+ role="option"
540
+ style="pointer-events: all;"
541
+ >
542
+ <i
543
+ aria-hidden="true"
544
+ class="clock outline icon"
545
+ />
546
+ <span
547
+ class="text"
548
+ >
549
+ timestamp
550
+ </span>
551
+ </div>
552
+ <div
553
+ aria-checked="false"
554
+ aria-selected="false"
555
+ class="item"
556
+ role="option"
557
+ style="pointer-events: all;"
558
+ >
559
+ <i
560
+ aria-hidden="true"
561
+ class="question circle outline icon"
562
+ />
563
+ <span
564
+ class="text"
565
+ >
566
+ any
567
+ </span>
568
+ </div>
569
+ </div>
570
+ </div>
571
+ </div>
572
+ </div>
573
+ </div>
574
+ <div
575
+ class="row"
576
+ >
577
+ <div
578
+ class="ui horizontal link list"
579
+ role="list"
580
+ >
581
+ <a
582
+ class="item"
583
+ role="listitem"
584
+ style="font-style: italic; font-size: 13px; padding: 9.5px 14px;"
585
+ tabindex="0"
586
+ >
587
+ add_description
588
+ </a>
589
+ </div>
590
+ </div>
591
+ </div>
592
+ </div>
593
+ <h5
594
+ class="ui dividing header"
595
+ >
596
+ params
597
+ </h5>
598
+ <div
599
+ class="ui list"
600
+ role="list"
601
+ >
602
+ <div
603
+ class="item"
604
+ role="listitem"
605
+ >
606
+ <button
607
+ class="ui button"
608
+ >
609
+ add_param
610
+ </button>
611
+ </div>
612
+ </div>
613
+ <h5
614
+ class="ui dividing header"
615
+ >
616
+ output
617
+ </h5>
618
+ <div
619
+ class="expression-container"
620
+ >
621
+ <div
622
+ aria-expanded="false"
623
+ class="ui top left pointing dropdown"
624
+ role="listbox"
625
+ tabindex="0"
626
+ >
627
+ <div
628
+ class="shape-selector-trigger"
629
+ >
630
+ f(x)
631
+ </div>
632
+ <div
633
+ class="menu transition"
634
+ >
635
+ <div
636
+ aria-checked="false"
637
+ aria-selected="false"
638
+ class="item"
639
+ role="option"
640
+ style="pointer-events: all;"
641
+ >
642
+ <div
643
+ class="text"
644
+ style="display: flex; align-items: center;"
645
+ >
646
+ <small
647
+ style="margin-right: 5px;"
648
+ >
649
+ <b>
650
+ <code>
651
+ [π]
652
+ </code>
653
+ </b>
654
+ </small>
655
+ constant
656
+ </div>
657
+ </div>
658
+ <div
659
+ aria-checked="true"
660
+ aria-selected="true"
661
+ class="active selected item"
662
+ role="option"
663
+ style="pointer-events: all;"
664
+ >
665
+ <div
666
+ class="text"
667
+ style="display: flex; align-items: center;"
668
+ >
669
+ <small
670
+ style="margin-right: 5px;"
671
+ >
672
+ <b>
673
+ <code>
674
+ f(x)
675
+ </code>
676
+ </b>
677
+ </small>
678
+ function
679
+ </div>
680
+ </div>
681
+ </div>
682
+ </div>
683
+ <div
684
+ class="accordion ui fluid no-margin"
685
+ >
686
+ <div
687
+ class="active title no-padding"
688
+ >
689
+ <div
690
+ class="flex-center"
691
+ >
692
+ <i
693
+ aria-hidden="true"
694
+ class="dropdown icon"
695
+ />
696
+ <div
697
+ aria-expanded="false"
698
+ class="ui fluid search selection dropdown"
699
+ role="combobox"
700
+ >
701
+ <input
702
+ aria-autocomplete="list"
703
+ autocomplete="off"
704
+ class="search"
705
+ tabindex="0"
706
+ type="text"
707
+ value=""
708
+ />
709
+ <div
710
+ aria-atomic="true"
711
+ aria-live="polite"
712
+ class="divider text"
713
+ role="alert"
714
+ >
715
+ function.placeholder
716
+ </div>
717
+ <i
718
+ aria-hidden="true"
719
+ class="dropdown icon"
720
+ />
721
+ <div
722
+ class="menu transition"
723
+ role="listbox"
724
+ >
725
+ <div
726
+ aria-checked="false"
727
+ aria-selected="true"
728
+ class="selected item"
729
+ role="option"
730
+ style="pointer-events: all;"
731
+ >
732
+ <div
733
+ class="ui header"
734
+ >
735
+ <div
736
+ class="flex-center"
737
+ >
738
+ <div>
739
+ eq
740
+ </div>
741
+ <div
742
+ class="function-params-label"
743
+ >
744
+ <div
745
+ class="ui grey label"
746
+ >
747
+ <i
748
+ aria-hidden="true"
749
+ class="question circle outline icon"
750
+ />
751
+ arg1
752
+ </div>
753
+ <div
754
+ class="ui grey label"
755
+ >
756
+ <i
757
+ aria-hidden="true"
758
+ class="question circle outline icon"
759
+ />
760
+ arg2
761
+ </div>
762
+ </div>
763
+ </div>
764
+ </div>
765
+ <div
766
+ class="sub header"
767
+ />
768
+ </div>
769
+ </div>
770
+ </div>
771
+ </div>
772
+ </div>
773
+ <div
774
+ class="content active no-padding"
775
+ />
776
+ </div>
777
+ </div>
778
+ <div
779
+ class="ui hidden divider"
780
+ />
781
+ <div
782
+ class="actions"
783
+ >
784
+ <button
785
+ class="ui red button"
786
+ >
787
+ delete
788
+ </button>
789
+ <button
790
+ class="ui button"
791
+ >
792
+ cancel
793
+ </button>
794
+ <button
795
+ class="ui primary disabled button"
796
+ disabled=""
797
+ tabindex="-1"
798
+ >
799
+ save
800
+ </button>
801
+ </div>
802
+ </form>
803
+ </div>
804
+ `;
805
+
806
+ exports[`<FunctionEditor /> test cancel button with confirm 1`] = `
807
+ <div>
808
+ <form
809
+ class="ui form"
810
+ >
811
+ <h3
812
+ class="ui dividing header"
813
+ >
814
+ name
815
+ /
816
+ 0
817
+ <div
818
+ class="ui teal label"
819
+ >
820
+ boolean
821
+ </div>
822
+ </h3>
823
+ <div
824
+ class="ui grid"
825
+ >
826
+ <div
827
+ class="column"
828
+ >
829
+ <div
830
+ class="row"
831
+ >
832
+ <div
833
+ class="required field"
834
+ >
835
+ <label>
836
+ name
837
+ </label>
838
+ <div
839
+ class="ui action input"
840
+ >
841
+ <input
842
+ autocomplete="off"
843
+ placeholder="name"
844
+ required=""
845
+ type="text"
846
+ value="name"
847
+ />
848
+ <div
849
+ aria-expanded="false"
850
+ class="ui basic button dropdown"
851
+ name="type"
852
+ role="listbox"
853
+ tabindex="0"
854
+ >
855
+ <div
856
+ aria-atomic="true"
857
+ aria-live="polite"
858
+ class="divider text"
859
+ role="alert"
860
+ >
861
+ boolean
862
+ </div>
863
+ <i
864
+ aria-hidden="true"
865
+ class="dropdown icon"
866
+ />
867
+ <div
868
+ class="menu transition"
869
+ >
870
+ <div
871
+ aria-checked="true"
872
+ aria-selected="true"
873
+ class="active selected item"
874
+ role="option"
875
+ style="pointer-events: all;"
876
+ >
877
+ <i
878
+ aria-hidden="true"
879
+ class="adjust icon"
880
+ />
881
+ <span
882
+ class="text"
883
+ >
884
+ boolean
885
+ </span>
886
+ </div>
887
+ <div
888
+ aria-checked="false"
889
+ aria-selected="false"
890
+ class="item"
891
+ role="option"
892
+ style="pointer-events: all;"
893
+ >
894
+ <i
895
+ aria-hidden="true"
896
+ class="font icon"
897
+ />
898
+ <span
899
+ class="text"
900
+ >
901
+ string
902
+ </span>
903
+ </div>
904
+ <div
905
+ aria-checked="false"
906
+ aria-selected="false"
907
+ class="item"
908
+ role="option"
909
+ style="pointer-events: all;"
910
+ >
911
+ <i
912
+ aria-hidden="true"
913
+ class="hashtag icon"
914
+ />
915
+ <span
916
+ class="text"
917
+ >
918
+ numeric
919
+ </span>
920
+ </div>
921
+ <div
922
+ aria-checked="false"
923
+ aria-selected="false"
924
+ class="item"
925
+ role="option"
926
+ style="pointer-events: all;"
927
+ >
928
+ <i
929
+ aria-hidden="true"
930
+ class="calendar alternate outline icon"
931
+ />
932
+ <span
933
+ class="text"
934
+ >
935
+ date
936
+ </span>
937
+ </div>
938
+ <div
939
+ aria-checked="false"
940
+ aria-selected="false"
941
+ class="item"
942
+ role="option"
943
+ style="pointer-events: all;"
944
+ >
945
+ <i
946
+ aria-hidden="true"
947
+ class="clock outline icon"
948
+ />
949
+ <span
950
+ class="text"
951
+ >
952
+ timestamp
953
+ </span>
954
+ </div>
955
+ <div
956
+ aria-checked="false"
957
+ aria-selected="false"
958
+ class="item"
959
+ role="option"
960
+ style="pointer-events: all;"
961
+ >
962
+ <i
963
+ aria-hidden="true"
964
+ class="question circle outline icon"
965
+ />
966
+ <span
967
+ class="text"
968
+ >
969
+ any
970
+ </span>
971
+ </div>
972
+ </div>
973
+ </div>
974
+ </div>
975
+ </div>
976
+ </div>
977
+ <div
978
+ class="row"
979
+ >
980
+ <div
981
+ class="ui horizontal link list"
982
+ role="list"
983
+ >
984
+ <a
985
+ class="item"
986
+ role="listitem"
987
+ style="font-style: italic; font-size: 13px; padding: 9.5px 14px;"
988
+ tabindex="0"
989
+ >
990
+ description
991
+ </a>
992
+ </div>
993
+ </div>
994
+ </div>
995
+ </div>
996
+ <h5
997
+ class="ui dividing header"
998
+ >
999
+ params
1000
+ </h5>
1001
+ <div
1002
+ class="ui list"
1003
+ role="list"
1004
+ >
1005
+ <div
1006
+ class="item"
1007
+ role="listitem"
1008
+ >
1009
+ <button
1010
+ class="ui button"
1011
+ >
1012
+ add_param
1013
+ </button>
1014
+ </div>
1015
+ </div>
1016
+ <h5
1017
+ class="ui dividing header"
1018
+ >
1019
+ output
1020
+ </h5>
1021
+ <div
1022
+ class="expression-container"
1023
+ >
1024
+ <div
1025
+ aria-expanded="false"
1026
+ class="ui top left pointing dropdown"
1027
+ role="listbox"
1028
+ tabindex="0"
1029
+ >
1030
+ <div
1031
+ class="shape-selector-trigger"
1032
+ >
1033
+ [π]
1034
+ </div>
1035
+ <div
1036
+ class="menu transition"
1037
+ >
1038
+ <div
1039
+ aria-checked="true"
1040
+ aria-selected="true"
1041
+ class="active selected item"
1042
+ role="option"
1043
+ style="pointer-events: all;"
1044
+ >
1045
+ <div
1046
+ class="text"
1047
+ style="display: flex; align-items: center;"
1048
+ >
1049
+ <small
1050
+ style="margin-right: 5px;"
1051
+ >
1052
+ <b>
1053
+ <code>
1054
+ [π]
1055
+ </code>
1056
+ </b>
1057
+ </small>
1058
+ constant
1059
+ </div>
1060
+ </div>
1061
+ <div
1062
+ aria-checked="false"
1063
+ aria-selected="false"
1064
+ class="item"
1065
+ role="option"
1066
+ style="pointer-events: all;"
1067
+ >
1068
+ <div
1069
+ class="text"
1070
+ style="display: flex; align-items: center;"
1071
+ >
1072
+ <small
1073
+ style="margin-right: 5px;"
1074
+ >
1075
+ <b>
1076
+ <code>
1077
+ f(x)
1078
+ </code>
1079
+ </b>
1080
+ </small>
1081
+ function
1082
+ </div>
1083
+ </div>
1084
+ </div>
1085
+ </div>
1086
+ <div
1087
+ aria-expanded="false"
1088
+ class="ui fluid selection dropdown"
1089
+ role="listbox"
1090
+ tabindex="0"
1091
+ >
1092
+ <div
1093
+ aria-atomic="true"
1094
+ aria-live="polite"
1095
+ class="divider text"
1096
+ role="alert"
1097
+ >
1098
+ true
1099
+ </div>
1100
+ <i
1101
+ aria-hidden="true"
1102
+ class="dropdown icon"
1103
+ />
1104
+ <div
1105
+ class="menu transition"
1106
+ >
1107
+ <div
1108
+ aria-checked="true"
1109
+ aria-selected="true"
1110
+ class="active selected item"
1111
+ role="option"
1112
+ style="pointer-events: all;"
1113
+ >
1114
+ <span
1115
+ class="text"
1116
+ >
1117
+ true
1118
+ </span>
1119
+ </div>
1120
+ <div
1121
+ aria-checked="false"
1122
+ aria-selected="false"
1123
+ class="item"
1124
+ role="option"
1125
+ style="pointer-events: all;"
1126
+ >
1127
+ <span
1128
+ class="text"
1129
+ >
1130
+ false
1131
+ </span>
1132
+ </div>
1133
+ </div>
1134
+ </div>
1135
+ </div>
1136
+ <div
1137
+ class="ui hidden divider"
1138
+ />
1139
+ <div
1140
+ class="actions"
1141
+ >
1142
+ <button
1143
+ class="ui red button"
1144
+ >
1145
+ delete
1146
+ </button>
1147
+ <button
1148
+ class="ui button"
1149
+ >
1150
+ cancel
1151
+ </button>
1152
+ <button
1153
+ class="ui primary button"
1154
+ >
1155
+ save
1156
+ </button>
1157
+ </div>
1158
+ </form>
1159
+ </div>
1160
+ `;
1161
+
1162
+ exports[`<FunctionEditor /> test delete button 1`] = `
1163
+ <div>
1164
+ <form
1165
+ class="ui form"
1166
+ >
1167
+ <h3
1168
+ class="ui dividing header"
1169
+ >
1170
+ Function
1171
+ /
1172
+ 0
1173
+ <div
1174
+ class="ui teal label"
1175
+ >
1176
+ boolean
1177
+ </div>
1178
+ </h3>
1179
+ <div
1180
+ class="ui grid"
1181
+ >
1182
+ <div
1183
+ class="column"
1184
+ >
1185
+ <div
1186
+ class="row"
1187
+ >
1188
+ <div
1189
+ class="required field"
1190
+ >
1191
+ <label>
1192
+ name
1193
+ </label>
1194
+ <div
1195
+ class="ui action input"
1196
+ >
1197
+ <input
1198
+ autocomplete="off"
1199
+ placeholder="name"
1200
+ required=""
1201
+ type="text"
1202
+ value=""
1203
+ />
1204
+ <div
1205
+ aria-expanded="false"
1206
+ class="ui basic button dropdown"
1207
+ name="type"
1208
+ role="listbox"
1209
+ tabindex="0"
1210
+ >
1211
+ <div
1212
+ aria-atomic="true"
1213
+ aria-live="polite"
1214
+ class="divider text"
1215
+ role="alert"
1216
+ >
1217
+ boolean
1218
+ </div>
1219
+ <i
1220
+ aria-hidden="true"
1221
+ class="dropdown icon"
1222
+ />
1223
+ <div
1224
+ class="menu transition"
1225
+ >
1226
+ <div
1227
+ aria-checked="true"
1228
+ aria-selected="true"
1229
+ class="active selected item"
1230
+ role="option"
1231
+ style="pointer-events: all;"
1232
+ >
1233
+ <i
1234
+ aria-hidden="true"
1235
+ class="adjust icon"
1236
+ />
1237
+ <span
1238
+ class="text"
1239
+ >
1240
+ boolean
1241
+ </span>
1242
+ </div>
1243
+ <div
1244
+ aria-checked="false"
1245
+ aria-selected="false"
1246
+ class="item"
1247
+ role="option"
1248
+ style="pointer-events: all;"
1249
+ >
1250
+ <i
1251
+ aria-hidden="true"
1252
+ class="font icon"
1253
+ />
1254
+ <span
1255
+ class="text"
1256
+ >
1257
+ string
1258
+ </span>
1259
+ </div>
1260
+ <div
1261
+ aria-checked="false"
1262
+ aria-selected="false"
1263
+ class="item"
1264
+ role="option"
1265
+ style="pointer-events: all;"
1266
+ >
1267
+ <i
1268
+ aria-hidden="true"
1269
+ class="hashtag icon"
1270
+ />
1271
+ <span
1272
+ class="text"
1273
+ >
1274
+ numeric
1275
+ </span>
1276
+ </div>
1277
+ <div
1278
+ aria-checked="false"
1279
+ aria-selected="false"
1280
+ class="item"
1281
+ role="option"
1282
+ style="pointer-events: all;"
1283
+ >
1284
+ <i
1285
+ aria-hidden="true"
1286
+ class="calendar alternate outline icon"
1287
+ />
1288
+ <span
1289
+ class="text"
1290
+ >
1291
+ date
1292
+ </span>
1293
+ </div>
1294
+ <div
1295
+ aria-checked="false"
1296
+ aria-selected="false"
1297
+ class="item"
1298
+ role="option"
1299
+ style="pointer-events: all;"
1300
+ >
1301
+ <i
1302
+ aria-hidden="true"
1303
+ class="clock outline icon"
1304
+ />
1305
+ <span
1306
+ class="text"
1307
+ >
1308
+ timestamp
1309
+ </span>
1310
+ </div>
1311
+ <div
1312
+ aria-checked="false"
1313
+ aria-selected="false"
1314
+ class="item"
1315
+ role="option"
1316
+ style="pointer-events: all;"
1317
+ >
1318
+ <i
1319
+ aria-hidden="true"
1320
+ class="question circle outline icon"
1321
+ />
1322
+ <span
1323
+ class="text"
1324
+ >
1325
+ any
1326
+ </span>
1327
+ </div>
1328
+ </div>
1329
+ </div>
1330
+ </div>
1331
+ </div>
1332
+ </div>
1333
+ <div
1334
+ class="row"
1335
+ >
1336
+ <div
1337
+ class="ui horizontal link list"
1338
+ role="list"
1339
+ >
1340
+ <a
1341
+ class="item"
1342
+ role="listitem"
1343
+ style="font-style: italic; font-size: 13px; padding: 9.5px 14px;"
1344
+ tabindex="0"
1345
+ >
1346
+ add_description
1347
+ </a>
1348
+ </div>
1349
+ </div>
1350
+ </div>
1351
+ </div>
1352
+ <h5
1353
+ class="ui dividing header"
1354
+ >
1355
+ params
1356
+ </h5>
1357
+ <div
1358
+ class="ui list"
1359
+ role="list"
1360
+ >
1361
+ <div
1362
+ class="item"
1363
+ role="listitem"
1364
+ >
1365
+ <button
1366
+ class="ui button"
1367
+ >
1368
+ add_param
1369
+ </button>
1370
+ </div>
1371
+ </div>
1372
+ <h5
1373
+ class="ui dividing header"
1374
+ >
1375
+ output
1376
+ </h5>
1377
+ <div
1378
+ class="expression-container"
1379
+ >
1380
+ <div
1381
+ aria-expanded="false"
1382
+ class="ui top left pointing dropdown"
1383
+ role="listbox"
1384
+ tabindex="0"
1385
+ >
1386
+ <div
1387
+ class="shape-selector-trigger"
1388
+ >
1389
+ f(x)
1390
+ </div>
1391
+ <div
1392
+ class="menu transition"
1393
+ >
1394
+ <div
1395
+ aria-checked="false"
1396
+ aria-selected="false"
1397
+ class="item"
1398
+ role="option"
1399
+ style="pointer-events: all;"
1400
+ >
1401
+ <div
1402
+ class="text"
1403
+ style="display: flex; align-items: center;"
1404
+ >
1405
+ <small
1406
+ style="margin-right: 5px;"
1407
+ >
1408
+ <b>
1409
+ <code>
1410
+ [π]
1411
+ </code>
1412
+ </b>
1413
+ </small>
1414
+ constant
1415
+ </div>
1416
+ </div>
1417
+ <div
1418
+ aria-checked="true"
1419
+ aria-selected="true"
1420
+ class="active selected item"
1421
+ role="option"
1422
+ style="pointer-events: all;"
1423
+ >
1424
+ <div
1425
+ class="text"
1426
+ style="display: flex; align-items: center;"
1427
+ >
1428
+ <small
1429
+ style="margin-right: 5px;"
1430
+ >
1431
+ <b>
1432
+ <code>
1433
+ f(x)
1434
+ </code>
1435
+ </b>
1436
+ </small>
1437
+ function
1438
+ </div>
1439
+ </div>
1440
+ </div>
1441
+ </div>
1442
+ <div
1443
+ class="accordion ui fluid no-margin"
1444
+ >
1445
+ <div
1446
+ class="active title no-padding"
1447
+ >
1448
+ <div
1449
+ class="flex-center"
1450
+ >
1451
+ <i
1452
+ aria-hidden="true"
1453
+ class="dropdown icon"
1454
+ />
1455
+ <div
1456
+ aria-expanded="false"
1457
+ class="ui fluid search selection dropdown"
1458
+ role="combobox"
1459
+ >
1460
+ <input
1461
+ aria-autocomplete="list"
1462
+ autocomplete="off"
1463
+ class="search"
1464
+ tabindex="0"
1465
+ type="text"
1466
+ value=""
1467
+ />
1468
+ <div
1469
+ aria-atomic="true"
1470
+ aria-live="polite"
1471
+ class="divider text"
1472
+ role="alert"
1473
+ >
1474
+ function.placeholder
1475
+ </div>
1476
+ <i
1477
+ aria-hidden="true"
1478
+ class="dropdown icon"
1479
+ />
1480
+ <div
1481
+ class="menu transition"
1482
+ role="listbox"
1483
+ >
1484
+ <div
1485
+ aria-checked="false"
1486
+ aria-selected="true"
1487
+ class="selected item"
1488
+ role="option"
1489
+ style="pointer-events: all;"
1490
+ >
1491
+ <div
1492
+ class="ui header"
1493
+ >
1494
+ <div
1495
+ class="flex-center"
1496
+ >
1497
+ <div>
1498
+ eq
1499
+ </div>
1500
+ <div
1501
+ class="function-params-label"
1502
+ >
1503
+ <div
1504
+ class="ui grey label"
1505
+ >
1506
+ <i
1507
+ aria-hidden="true"
1508
+ class="question circle outline icon"
1509
+ />
1510
+ arg1
1511
+ </div>
1512
+ <div
1513
+ class="ui grey label"
1514
+ >
1515
+ <i
1516
+ aria-hidden="true"
1517
+ class="question circle outline icon"
1518
+ />
1519
+ arg2
1520
+ </div>
1521
+ </div>
1522
+ </div>
1523
+ </div>
1524
+ <div
1525
+ class="sub header"
1526
+ />
1527
+ </div>
1528
+ </div>
1529
+ </div>
1530
+ </div>
1531
+ </div>
1532
+ <div
1533
+ class="content active no-padding"
1534
+ />
1535
+ </div>
1536
+ </div>
1537
+ <div
1538
+ class="ui hidden divider"
1539
+ />
1540
+ <div
1541
+ class="actions"
1542
+ >
1543
+ <button
1544
+ class="ui red button"
1545
+ >
1546
+ delete
1547
+ </button>
1548
+ <button
1549
+ class="ui button"
1550
+ >
1551
+ cancel
1552
+ </button>
1553
+ <button
1554
+ class="ui primary disabled button"
1555
+ disabled=""
1556
+ tabindex="-1"
1557
+ >
1558
+ save
1559
+ </button>
1560
+ </div>
1561
+ </form>
1562
+ </div>
1563
+ `;