@truedat/df 8.3.3 → 8.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truedat/df",
3
- "version": "8.3.3",
3
+ "version": "8.3.5",
4
4
  "description": "Truedat Web Data Quality Module",
5
5
  "sideEffects": false,
6
6
  "module": "src/index.js",
@@ -41,21 +41,24 @@
41
41
  "rootMode": "upward"
42
42
  }
43
43
  ]
44
- }
44
+ },
45
+ "transformIgnorePatterns": [
46
+ "/node_modules/(?!marked|turndown|@tiptap)/"
47
+ ]
45
48
  },
46
49
  "devDependencies": {
47
50
  "@testing-library/dom": "^10.4.0",
48
51
  "@testing-library/jest-dom": "^6.6.3",
49
52
  "@testing-library/react": "^16.3.0",
50
53
  "@testing-library/user-event": "^14.6.1",
51
- "@truedat/test": "8.3.3",
54
+ "@truedat/test": "8.3.5",
52
55
  "identity-obj-proxy": "^3.0.0",
53
56
  "jest": "^29.7.0",
54
57
  "redux-saga-test-plan": "^4.0.6"
55
58
  },
56
59
  "dependencies": {
57
60
  "@apollo/client": "^3.13.8",
58
- "@truedat/core": "8.3.3",
61
+ "@truedat/core": "8.3.5",
59
62
  "axios": "^1.13.5",
60
63
  "graphql": "^16.11.0",
61
64
  "is-hotkey": "^0.2.0",
@@ -84,5 +87,5 @@
84
87
  "semantic-ui-react": "^3.0.0-beta.2",
85
88
  "swr": "^2.3.3"
86
89
  },
87
- "gitHead": "4659d78d53d18027bcfb8f8cdb221378e78d7ef6"
90
+ "gitHead": "12d1969c3403861d360fbdc24fd270ab1fece070"
88
91
  }
@@ -2,6 +2,7 @@ import _ from "lodash/fp";
2
2
  import PropTypes from "prop-types";
3
3
  import { Form, Icon, Popup, Label } from "semantic-ui-react";
4
4
  import { FormattedMessage } from "react-intl";
5
+ import { MarkdownReader } from "@truedat/core/components";
5
6
  import OriginLabel from "@truedat/core/components/OriginLabel";
6
7
  import FieldByWidget from "./FieldByWidget";
7
8
 
@@ -64,6 +65,7 @@ export const DynamicField = ({
64
65
  <OriginLabel origin={origin} />
65
66
  {description && (
66
67
  <Popup
68
+ className="field-description-popup"
67
69
  trigger={
68
70
  <Icon
69
71
  style={{
@@ -73,7 +75,7 @@ export const DynamicField = ({
73
75
  name="question circle outline"
74
76
  />
75
77
  }
76
- content={description}
78
+ content={<MarkdownReader content={description} />}
77
79
  on="click"
78
80
  hideOnScroll
79
81
  />
@@ -0,0 +1,4 @@
1
+ .field-description-popup {
2
+ width: max-content;
3
+ max-width: 80vw !important;
4
+ }
@@ -2,6 +2,7 @@ import _ from "lodash/fp";
2
2
  import PropTypes from "prop-types";
3
3
  import { FormattedMessage, useIntl } from "react-intl";
4
4
  import { Form, Button, Divider, Label, Segment } from "semantic-ui-react";
5
+ import { MarkdownEditor } from "@truedat/core/components";
5
6
  import ValuesField from "./ValuesField";
6
7
  import ConditionalFieldForm from "./ConditionalFieldForm";
7
8
  import MandatoryConditional from "./MandatoryConditional";
@@ -124,10 +125,8 @@ export const FieldForm = ({
124
125
  }
125
126
  />
126
127
  </Form.Group>
127
- <Form.TextArea
128
+ <MarkdownEditor
128
129
  name={`${fieldNamePrefix}.description`}
129
- size="small"
130
- rows={4}
131
130
  label={formatMessage({ id: "template.field.description" })}
132
131
  value={description || ""}
133
132
  onChange={onChange}
@@ -158,15 +158,96 @@ exports[`<ActiveGroupForm /> matches the latest snapshot 1`] = `
158
158
  </div>
159
159
  </div>
160
160
  <div
161
- class="field"
161
+ class="markdown-editor"
162
162
  >
163
- <label>
164
- template.field.description
165
- </label>
166
- <textarea
167
- name="content[0].fields[0].description"
168
- rows="4"
169
- />
163
+ <div
164
+ class="field"
165
+ >
166
+ <label>
167
+ template.field.description
168
+ </label>
169
+ </div>
170
+ <div
171
+ class="ui small top attached markdown-editor-toolbar menu"
172
+ >
173
+ <div
174
+ class="item"
175
+ >
176
+ <i
177
+ aria-hidden="true"
178
+ class="bold icon"
179
+ />
180
+ </div>
181
+ <div
182
+ class="item"
183
+ >
184
+ <i
185
+ aria-hidden="true"
186
+ class="italic icon"
187
+ />
188
+ </div>
189
+ <div
190
+ class="item"
191
+ >
192
+ <i
193
+ aria-hidden="true"
194
+ class="heading large icon"
195
+ />
196
+ </div>
197
+ <div
198
+ class="item"
199
+ >
200
+ <i
201
+ aria-hidden="true"
202
+ class="heading small icon"
203
+ />
204
+ </div>
205
+ <div
206
+ class="item"
207
+ >
208
+ <i
209
+ aria-hidden="true"
210
+ class="list ul icon"
211
+ />
212
+ </div>
213
+ <div
214
+ class="item"
215
+ >
216
+ <i
217
+ aria-hidden="true"
218
+ class="list ol icon"
219
+ />
220
+ </div>
221
+ <div
222
+ class="disabled item"
223
+ >
224
+ <i
225
+ aria-hidden="true"
226
+ class="linkify icon"
227
+ />
228
+ </div>
229
+ </div>
230
+ <div
231
+ class="markdown-editor-content"
232
+ >
233
+ <div
234
+ placeholder=""
235
+ >
236
+ <div
237
+ class="tiptap ProseMirror"
238
+ contenteditable="true"
239
+ role="textbox"
240
+ tabindex="0"
241
+ translate="no"
242
+ >
243
+ <p>
244
+ <br
245
+ class="ProseMirror-trailingBreak"
246
+ />
247
+ </p>
248
+ </div>
249
+ </div>
250
+ </div>
170
251
  </div>
171
252
  <div
172
253
  class="equal width fields"
@@ -79,17 +79,94 @@ exports[`<FieldForm /> matches the latest snapshot 1`] = `
79
79
  </div>
80
80
  </div>
81
81
  <div
82
- class="field"
82
+ class="markdown-editor"
83
83
  >
84
- <label>
85
- template.field.description
86
- </label>
87
- <textarea
88
- name="undefined.fields[0].description"
89
- rows="4"
84
+ <div
85
+ class="field"
90
86
  >
91
- A field for testing
92
- </textarea>
87
+ <label>
88
+ template.field.description
89
+ </label>
90
+ </div>
91
+ <div
92
+ class="ui small top attached markdown-editor-toolbar menu"
93
+ >
94
+ <div
95
+ class="item"
96
+ >
97
+ <i
98
+ aria-hidden="true"
99
+ class="bold icon"
100
+ />
101
+ </div>
102
+ <div
103
+ class="item"
104
+ >
105
+ <i
106
+ aria-hidden="true"
107
+ class="italic icon"
108
+ />
109
+ </div>
110
+ <div
111
+ class="item"
112
+ >
113
+ <i
114
+ aria-hidden="true"
115
+ class="heading large icon"
116
+ />
117
+ </div>
118
+ <div
119
+ class="item"
120
+ >
121
+ <i
122
+ aria-hidden="true"
123
+ class="heading small icon"
124
+ />
125
+ </div>
126
+ <div
127
+ class="item"
128
+ >
129
+ <i
130
+ aria-hidden="true"
131
+ class="list ul icon"
132
+ />
133
+ </div>
134
+ <div
135
+ class="item"
136
+ >
137
+ <i
138
+ aria-hidden="true"
139
+ class="list ol icon"
140
+ />
141
+ </div>
142
+ <div
143
+ class="disabled item"
144
+ >
145
+ <i
146
+ aria-hidden="true"
147
+ class="linkify icon"
148
+ />
149
+ </div>
150
+ </div>
151
+ <div
152
+ class="markdown-editor-content"
153
+ >
154
+ <div
155
+ placeholder=""
156
+ >
157
+ <div
158
+ class="tiptap ProseMirror"
159
+ contenteditable="true"
160
+ role="textbox"
161
+ tabindex="0"
162
+ translate="no"
163
+ >
164
+ <p>
165
+ A field for testing
166
+ </p>
167
+ </div>
168
+ </div>
169
+ </div>
93
170
  </div>
94
171
  <div
95
172
  class="equal width fields"
@@ -704,15 +781,96 @@ exports[`<FieldForm /> renders MandatoryConditional 1`] = `
704
781
  </div>
705
782
  </div>
706
783
  <div
707
- class="field"
784
+ class="markdown-editor"
708
785
  >
709
- <label>
710
- template.field.description
711
- </label>
712
- <textarea
713
- name="Group.fields[0].description"
714
- rows="4"
715
- />
786
+ <div
787
+ class="field"
788
+ >
789
+ <label>
790
+ template.field.description
791
+ </label>
792
+ </div>
793
+ <div
794
+ class="ui small top attached markdown-editor-toolbar menu"
795
+ >
796
+ <div
797
+ class="item"
798
+ >
799
+ <i
800
+ aria-hidden="true"
801
+ class="bold icon"
802
+ />
803
+ </div>
804
+ <div
805
+ class="item"
806
+ >
807
+ <i
808
+ aria-hidden="true"
809
+ class="italic icon"
810
+ />
811
+ </div>
812
+ <div
813
+ class="item"
814
+ >
815
+ <i
816
+ aria-hidden="true"
817
+ class="heading large icon"
818
+ />
819
+ </div>
820
+ <div
821
+ class="item"
822
+ >
823
+ <i
824
+ aria-hidden="true"
825
+ class="heading small icon"
826
+ />
827
+ </div>
828
+ <div
829
+ class="item"
830
+ >
831
+ <i
832
+ aria-hidden="true"
833
+ class="list ul icon"
834
+ />
835
+ </div>
836
+ <div
837
+ class="item"
838
+ >
839
+ <i
840
+ aria-hidden="true"
841
+ class="list ol icon"
842
+ />
843
+ </div>
844
+ <div
845
+ class="disabled item"
846
+ >
847
+ <i
848
+ aria-hidden="true"
849
+ class="linkify icon"
850
+ />
851
+ </div>
852
+ </div>
853
+ <div
854
+ class="markdown-editor-content"
855
+ >
856
+ <div
857
+ placeholder=""
858
+ >
859
+ <div
860
+ class="tiptap ProseMirror"
861
+ contenteditable="true"
862
+ role="textbox"
863
+ tabindex="0"
864
+ translate="no"
865
+ >
866
+ <p>
867
+ <br
868
+ class="ProseMirror-trailingBreak"
869
+ />
870
+ </p>
871
+ </div>
872
+ </div>
873
+ </div>
716
874
  </div>
717
875
  <div
718
876
  class="equal width fields"
@@ -1467,17 +1625,94 @@ exports[`<FieldForm /> renders ValuesField and manages onChange 1`] = `
1467
1625
  </div>
1468
1626
  </div>
1469
1627
  <div
1470
- class="field"
1628
+ class="markdown-editor"
1471
1629
  >
1472
- <label>
1473
- template.field.description
1474
- </label>
1475
- <textarea
1476
- name="Group.fields[0].description"
1477
- rows="4"
1630
+ <div
1631
+ class="field"
1478
1632
  >
1479
- A field for testing
1480
- </textarea>
1633
+ <label>
1634
+ template.field.description
1635
+ </label>
1636
+ </div>
1637
+ <div
1638
+ class="ui small top attached markdown-editor-toolbar menu"
1639
+ >
1640
+ <div
1641
+ class="item"
1642
+ >
1643
+ <i
1644
+ aria-hidden="true"
1645
+ class="bold icon"
1646
+ />
1647
+ </div>
1648
+ <div
1649
+ class="item"
1650
+ >
1651
+ <i
1652
+ aria-hidden="true"
1653
+ class="italic icon"
1654
+ />
1655
+ </div>
1656
+ <div
1657
+ class="item"
1658
+ >
1659
+ <i
1660
+ aria-hidden="true"
1661
+ class="heading large icon"
1662
+ />
1663
+ </div>
1664
+ <div
1665
+ class="item"
1666
+ >
1667
+ <i
1668
+ aria-hidden="true"
1669
+ class="heading small icon"
1670
+ />
1671
+ </div>
1672
+ <div
1673
+ class="item"
1674
+ >
1675
+ <i
1676
+ aria-hidden="true"
1677
+ class="list ul icon"
1678
+ />
1679
+ </div>
1680
+ <div
1681
+ class="item"
1682
+ >
1683
+ <i
1684
+ aria-hidden="true"
1685
+ class="list ol icon"
1686
+ />
1687
+ </div>
1688
+ <div
1689
+ class="disabled item"
1690
+ >
1691
+ <i
1692
+ aria-hidden="true"
1693
+ class="linkify icon"
1694
+ />
1695
+ </div>
1696
+ </div>
1697
+ <div
1698
+ class="markdown-editor-content"
1699
+ >
1700
+ <div
1701
+ placeholder=""
1702
+ >
1703
+ <div
1704
+ class="tiptap ProseMirror"
1705
+ contenteditable="true"
1706
+ role="textbox"
1707
+ tabindex="0"
1708
+ translate="no"
1709
+ >
1710
+ <p>
1711
+ A field for testing
1712
+ </p>
1713
+ </div>
1714
+ </div>
1715
+ </div>
1481
1716
  </div>
1482
1717
  <div
1483
1718
  class="equal width fields"
@@ -429,15 +429,96 @@ exports[`<TemplateForm /> matches snapshot when scope has no relations 1`] = `
429
429
  </div>
430
430
  </div>
431
431
  <div
432
- class="field"
432
+ class="markdown-editor"
433
433
  >
434
- <label>
435
- template.field.description
436
- </label>
437
- <textarea
438
- name="content[0].fields[0].description"
439
- rows="4"
440
- />
434
+ <div
435
+ class="field"
436
+ >
437
+ <label>
438
+ template.field.description
439
+ </label>
440
+ </div>
441
+ <div
442
+ class="ui small top attached markdown-editor-toolbar menu"
443
+ >
444
+ <div
445
+ class="item"
446
+ >
447
+ <i
448
+ aria-hidden="true"
449
+ class="bold icon"
450
+ />
451
+ </div>
452
+ <div
453
+ class="item"
454
+ >
455
+ <i
456
+ aria-hidden="true"
457
+ class="italic icon"
458
+ />
459
+ </div>
460
+ <div
461
+ class="item"
462
+ >
463
+ <i
464
+ aria-hidden="true"
465
+ class="heading large icon"
466
+ />
467
+ </div>
468
+ <div
469
+ class="item"
470
+ >
471
+ <i
472
+ aria-hidden="true"
473
+ class="heading small icon"
474
+ />
475
+ </div>
476
+ <div
477
+ class="item"
478
+ >
479
+ <i
480
+ aria-hidden="true"
481
+ class="list ul icon"
482
+ />
483
+ </div>
484
+ <div
485
+ class="item"
486
+ >
487
+ <i
488
+ aria-hidden="true"
489
+ class="list ol icon"
490
+ />
491
+ </div>
492
+ <div
493
+ class="disabled item"
494
+ >
495
+ <i
496
+ aria-hidden="true"
497
+ class="linkify icon"
498
+ />
499
+ </div>
500
+ </div>
501
+ <div
502
+ class="markdown-editor-content"
503
+ >
504
+ <div
505
+ placeholder=""
506
+ >
507
+ <div
508
+ class="tiptap ProseMirror"
509
+ contenteditable="true"
510
+ role="textbox"
511
+ tabindex="0"
512
+ translate="no"
513
+ >
514
+ <p>
515
+ <br
516
+ class="ProseMirror-trailingBreak"
517
+ />
518
+ </p>
519
+ </div>
520
+ </div>
521
+ </div>
441
522
  </div>
442
523
  <div
443
524
  class="equal width fields"
@@ -1443,15 +1524,96 @@ exports[`<TemplateForm /> matches snapshot when scope has relations 1`] = `
1443
1524
  </div>
1444
1525
  </div>
1445
1526
  <div
1446
- class="field"
1527
+ class="markdown-editor"
1447
1528
  >
1448
- <label>
1449
- template.field.description
1450
- </label>
1451
- <textarea
1452
- name="content[0].fields[0].description"
1453
- rows="4"
1454
- />
1529
+ <div
1530
+ class="field"
1531
+ >
1532
+ <label>
1533
+ template.field.description
1534
+ </label>
1535
+ </div>
1536
+ <div
1537
+ class="ui small top attached markdown-editor-toolbar menu"
1538
+ >
1539
+ <div
1540
+ class="item"
1541
+ >
1542
+ <i
1543
+ aria-hidden="true"
1544
+ class="bold icon"
1545
+ />
1546
+ </div>
1547
+ <div
1548
+ class="item"
1549
+ >
1550
+ <i
1551
+ aria-hidden="true"
1552
+ class="italic icon"
1553
+ />
1554
+ </div>
1555
+ <div
1556
+ class="item"
1557
+ >
1558
+ <i
1559
+ aria-hidden="true"
1560
+ class="heading large icon"
1561
+ />
1562
+ </div>
1563
+ <div
1564
+ class="item"
1565
+ >
1566
+ <i
1567
+ aria-hidden="true"
1568
+ class="heading small icon"
1569
+ />
1570
+ </div>
1571
+ <div
1572
+ class="item"
1573
+ >
1574
+ <i
1575
+ aria-hidden="true"
1576
+ class="list ul icon"
1577
+ />
1578
+ </div>
1579
+ <div
1580
+ class="item"
1581
+ >
1582
+ <i
1583
+ aria-hidden="true"
1584
+ class="list ol icon"
1585
+ />
1586
+ </div>
1587
+ <div
1588
+ class="disabled item"
1589
+ >
1590
+ <i
1591
+ aria-hidden="true"
1592
+ class="linkify icon"
1593
+ />
1594
+ </div>
1595
+ </div>
1596
+ <div
1597
+ class="markdown-editor-content"
1598
+ >
1599
+ <div
1600
+ placeholder=""
1601
+ >
1602
+ <div
1603
+ class="tiptap ProseMirror"
1604
+ contenteditable="true"
1605
+ role="textbox"
1606
+ tabindex="0"
1607
+ translate="no"
1608
+ >
1609
+ <p>
1610
+ <br
1611
+ class="ProseMirror-trailingBreak"
1612
+ />
1613
+ </p>
1614
+ </div>
1615
+ </div>
1616
+ </div>
1455
1617
  </div>
1456
1618
  <div
1457
1619
  class="equal width fields"