cx 26.2.1 → 26.2.3

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 (324) hide show
  1. package/build/charts/Chart.d.ts.map +1 -1
  2. package/build/charts/Chart.js +5 -4
  3. package/build/charts/ColumnBarBase.d.ts +3 -3
  4. package/build/charts/ColumnBarBase.d.ts.map +1 -1
  5. package/build/charts/ColumnBarBase.js +1 -1
  6. package/build/charts/Legend.d.ts.map +1 -1
  7. package/build/charts/Legend.js +11 -4
  8. package/build/charts/Marker.d.ts +3 -3
  9. package/build/charts/Marker.d.ts.map +1 -1
  10. package/build/charts/MarkerLine.d.ts +7 -7
  11. package/build/charts/MarkerLine.d.ts.map +1 -1
  12. package/build/charts/MarkerLine.js +14 -10
  13. package/build/charts/PieChart.d.ts +4 -4
  14. package/build/charts/PieChart.d.ts.map +1 -1
  15. package/build/charts/PieChart.js +36 -14
  16. package/build/charts/PieLabel.d.ts.map +1 -1
  17. package/build/charts/PieLabel.js +2 -1
  18. package/build/charts/RangeMarker.d.ts +3 -3
  19. package/build/charts/RangeMarker.d.ts.map +1 -1
  20. package/build/charts/RangeMarker.js +1 -1
  21. package/build/charts/axis/TimeAxis.d.ts +3 -3
  22. package/build/charts/axis/TimeAxis.d.ts.map +1 -1
  23. package/build/charts/axis/TimeAxis.js +70 -21
  24. package/build/charts/helpers/ValueAtFinder.d.ts +1 -1
  25. package/build/charts/helpers/ValueAtFinder.d.ts.map +1 -1
  26. package/build/charts/helpers/ValueAtFinder.js +5 -2
  27. package/build/data/StructuredSelector.js +3 -4
  28. package/build/data/createAccessorModelProxy.d.ts +6 -11
  29. package/build/data/createAccessorModelProxy.d.ts.map +1 -1
  30. package/build/data/createAccessorModelProxy.js +1 -3
  31. package/build/svg/Ellipse.d.ts +5 -4
  32. package/build/svg/Ellipse.d.ts.map +1 -1
  33. package/build/svg/Ellipse.js +9 -6
  34. package/build/svg/Line.d.ts +1 -0
  35. package/build/svg/Line.d.ts.map +1 -1
  36. package/build/svg/Line.js +4 -1
  37. package/build/svg/Text.d.ts +12 -6
  38. package/build/svg/Text.d.ts.map +1 -1
  39. package/build/svg/Text.js +12 -4
  40. package/build/ui/Controller.d.ts +2 -0
  41. package/build/ui/Controller.d.ts.map +1 -1
  42. package/build/ui/Controller.js +3 -0
  43. package/build/ui/HoverSync.d.ts.map +1 -1
  44. package/build/ui/HoverSync.js +7 -2
  45. package/build/ui/Prop.d.ts +1 -1
  46. package/build/ui/Prop.d.ts.map +1 -1
  47. package/build/ui/Text.d.ts +3 -3
  48. package/build/ui/Text.d.ts.map +1 -1
  49. package/build/ui/Text.js +5 -5
  50. package/build/ui/adapter/GroupAdapter.d.ts.map +1 -1
  51. package/build/ui/adapter/GroupAdapter.js +20 -10
  52. package/build/ui/app/History.js +1 -1
  53. package/build/widgets/List.d.ts.map +1 -1
  54. package/build/widgets/List.js +6 -7
  55. package/build/widgets/drag-drop/DropZone.d.ts +3 -3
  56. package/build/widgets/drag-drop/DropZone.d.ts.map +1 -1
  57. package/build/widgets/form/Calendar.d.ts.map +1 -1
  58. package/build/widgets/form/Calendar.js +30 -11
  59. package/build/widgets/form/ColorField.d.ts.map +1 -1
  60. package/build/widgets/form/ColorField.js +16 -7
  61. package/build/widgets/form/DateTimeField.d.ts.map +1 -1
  62. package/build/widgets/form/DateTimeField.js +23 -10
  63. package/build/widgets/form/Field.d.ts +2 -0
  64. package/build/widgets/form/Field.d.ts.map +1 -1
  65. package/build/widgets/form/Field.js +11 -5
  66. package/build/widgets/form/LookupField.d.ts +1 -1
  67. package/build/widgets/form/LookupField.d.ts.map +1 -1
  68. package/build/widgets/form/LookupField.js +6 -6
  69. package/build/widgets/form/MonthField.d.ts.map +1 -1
  70. package/build/widgets/form/MonthField.js +15 -7
  71. package/build/widgets/form/MonthPicker.d.ts +1 -2
  72. package/build/widgets/form/MonthPicker.d.ts.map +1 -1
  73. package/build/widgets/form/MonthPicker.js +84 -41
  74. package/build/widgets/form/NumberField.d.ts +2 -0
  75. package/build/widgets/form/NumberField.d.ts.map +1 -1
  76. package/build/widgets/form/NumberField.js +45 -15
  77. package/build/widgets/form/TextField.d.ts +1 -9
  78. package/build/widgets/form/TextField.d.ts.map +1 -1
  79. package/build/widgets/form/TextField.js +1 -1
  80. package/build/widgets/grid/Grid.d.ts +2 -2
  81. package/build/widgets/grid/Grid.d.ts.map +1 -1
  82. package/build/widgets/grid/Grid.js +9 -4
  83. package/build/widgets/grid/Pagination.d.ts.map +1 -1
  84. package/build/widgets/grid/Pagination.js +4 -4
  85. package/build/widgets/grid/TreeNode.d.ts.map +1 -1
  86. package/build/widgets/grid/TreeNode.js +10 -2
  87. package/build/widgets/icons/folder.d.ts.map +1 -1
  88. package/build/widgets/icons/folder.js +1 -0
  89. package/build/widgets/icons/forward.d.ts.map +1 -1
  90. package/build/widgets/icons/forward.js +4 -3
  91. package/build/widgets/icons/loading.d.ts.map +1 -1
  92. package/build/widgets/icons/loading.js +6 -5
  93. package/build/widgets/icons/square.d.ts.map +1 -1
  94. package/build/widgets/icons/square.js +3 -3
  95. package/build/widgets/index.d.ts +3 -1
  96. package/build/widgets/index.d.ts.map +1 -1
  97. package/build/widgets/index.js +3 -1
  98. package/build/widgets/overlay/ContextMenu.d.ts.map +1 -1
  99. package/build/widgets/overlay/ContextMenu.js +2 -0
  100. package/build/widgets/overlay/Dropdown.d.ts +2 -1
  101. package/build/widgets/overlay/Dropdown.d.ts.map +1 -1
  102. package/build/widgets/overlay/Dropdown.js +75 -20
  103. package/build/widgets/overlay/MsgBox.d.ts +1 -0
  104. package/build/widgets/overlay/MsgBox.d.ts.map +1 -1
  105. package/build/widgets/overlay/MsgBox.js +2 -2
  106. package/build/widgets/overlay/Overlay.d.ts +32 -2
  107. package/build/widgets/overlay/Overlay.d.ts.map +1 -1
  108. package/build/widgets/overlay/Overlay.js +47 -16
  109. package/build/widgets/overlay/Toast.d.ts +1 -1
  110. package/build/widgets/overlay/Toast.d.ts.map +1 -1
  111. package/build/widgets/overlay/Toast.js +4 -1
  112. package/build/widgets/overlay/Tooltip.d.ts +6 -0
  113. package/build/widgets/overlay/Tooltip.d.ts.map +1 -1
  114. package/build/widgets/overlay/Tooltip.js +24 -9
  115. package/build/widgets/overlay/Window.d.ts.map +1 -1
  116. package/build/widgets/overlay/Window.js +24 -9
  117. package/dist/charts.css +325 -272
  118. package/dist/charts.js +11 -5
  119. package/dist/data.js +2 -2
  120. package/dist/manifest.js +892 -880
  121. package/dist/svg.css +14 -8
  122. package/dist/svg.js +9 -1
  123. package/dist/ui.js +29 -16
  124. package/dist/widgets.css +997 -294
  125. package/dist/widgets.js +317 -121
  126. package/package.json +1 -1
  127. package/src/charts/Bar.scss +13 -10
  128. package/src/charts/BarGraph.scss +31 -29
  129. package/src/charts/BubbleGraph.scss +11 -8
  130. package/src/charts/Chart.ts +5 -3
  131. package/src/charts/Column.scss +13 -10
  132. package/src/charts/ColumnBarBase.tsx +255 -230
  133. package/src/charts/ColumnGraph.scss +13 -11
  134. package/src/charts/Gridlines.scss +10 -8
  135. package/src/charts/Legend.scss +57 -50
  136. package/src/charts/Legend.tsx +257 -213
  137. package/src/charts/LegendEntry.scss +35 -29
  138. package/src/charts/LineGraph.scss +28 -25
  139. package/src/charts/Marker.scss +12 -10
  140. package/src/charts/Marker.tsx +3 -2
  141. package/src/charts/MarkerLine.scss +11 -8
  142. package/src/charts/MarkerLine.tsx +196 -177
  143. package/src/charts/PieChart.scss +12 -9
  144. package/src/charts/PieChart.tsx +717 -591
  145. package/src/charts/PieLabel.tsx +99 -81
  146. package/src/charts/Range.scss +11 -8
  147. package/src/charts/RangeMarker.tsx +204 -187
  148. package/src/charts/ScatterGraph.scss +12 -9
  149. package/src/charts/axis/Axis.scss +6 -5
  150. package/src/charts/axis/CategoryAxis.scss +10 -8
  151. package/src/charts/axis/NumericAxis.scss +9 -6
  152. package/src/charts/axis/TimeAxis.scss +9 -6
  153. package/src/charts/axis/TimeAxis.tsx +753 -637
  154. package/src/charts/axis/index.scss +4 -5
  155. package/src/charts/axis/variables.scss +4 -2
  156. package/src/charts/helpers/ValueAtFinder.ts +19 -5
  157. package/src/charts/index.scss +16 -19
  158. package/src/charts/maps.scss +0 -0
  159. package/src/charts/palette.scss +11 -31
  160. package/src/charts/palette.variables.scss +23 -0
  161. package/src/charts/variables.scss +35 -3
  162. package/src/data/StructuredSelector.ts +2 -2
  163. package/src/data/createAccessorModelProxy.ts +66 -74
  164. package/src/index.scss +5 -6
  165. package/src/maps.scss +5 -0
  166. package/src/svg/Ellipse.tsx +62 -55
  167. package/src/svg/Line.tsx +57 -42
  168. package/src/svg/Svg.scss +6 -6
  169. package/src/svg/Text.scss +19 -0
  170. package/src/svg/Text.tsx +172 -116
  171. package/src/svg/index.scss +3 -2
  172. package/src/svg/maps.scss +0 -0
  173. package/src/svg/variables.scss +0 -0
  174. package/src/ui/Container.spec.ts +59 -0
  175. package/src/ui/Controller.spec.tsx +30 -0
  176. package/src/ui/Controller.ts +5 -0
  177. package/src/ui/HoverSync.tsx +179 -147
  178. package/src/ui/Prop.ts +1 -1
  179. package/src/ui/Text.ts +12 -9
  180. package/src/ui/adapter/GroupAdapter.spec.ts +42 -0
  181. package/src/ui/adapter/GroupAdapter.ts +25 -14
  182. package/src/ui/app/History.ts +1 -1
  183. package/src/ui/index.scss +1 -1
  184. package/src/ui/layout/LabelsLeftLayout.scss +5 -7
  185. package/src/ui/layout/LabelsTopLayout.scss +4 -6
  186. package/src/ui/layout/index.scss +2 -3
  187. package/src/ui/maps.scss +0 -0
  188. package/src/ui/variables.scss +1 -2
  189. package/src/util/index.scss +4 -2
  190. package/src/util/maps.scss +1 -0
  191. package/src/util/scss/besm.scss +15 -0
  192. package/src/util/scss/calc.scss +103 -11
  193. package/src/util/scss/defaults.scss +24 -0
  194. package/src/util/scss/elements.scss +78 -0
  195. package/src/util/scss/global.scss +15 -0
  196. package/src/util/scss/include.scss +17 -9
  197. package/src/util/scss/index.scss +1 -9
  198. package/src/util/scss/maps.scss +2 -0
  199. package/src/util/scss/pad-size.scss +9 -0
  200. package/src/util/scss/padding.scss +6 -0
  201. package/src/util/scss/screen-size.scss +5 -0
  202. package/src/util/scss/variables.scss +6 -0
  203. package/src/util/variables.scss +1 -0
  204. package/src/variables.scss +5 -217
  205. package/src/widgets/Button.maps.scss +103 -0
  206. package/src/widgets/Button.scss +33 -9
  207. package/src/widgets/Button.variables.scss +8 -104
  208. package/src/widgets/CxCredit.scss +2 -0
  209. package/src/widgets/FlexBox.scss +16 -11
  210. package/src/widgets/Heading.scss +6 -0
  211. package/src/widgets/HighlightedSearchText.scss +8 -1
  212. package/src/widgets/Icon.scss +6 -0
  213. package/src/widgets/List.scss +7 -0
  214. package/src/widgets/List.tsx +6 -7
  215. package/src/widgets/ProgressBar.scss +9 -0
  216. package/src/widgets/Resizer.scss +9 -7
  217. package/src/widgets/Section.scss +53 -56
  218. package/src/widgets/animations.scss +4 -2
  219. package/src/widgets/box.scss +47 -0
  220. package/src/widgets/drag-drop/DragClone.scss +12 -4
  221. package/src/widgets/drag-drop/DragHandle.scss +12 -6
  222. package/src/widgets/drag-drop/DragSource.scss +12 -6
  223. package/src/widgets/drag-drop/DropZone.scss +9 -0
  224. package/src/widgets/drag-drop/DropZone.tsx +3 -3
  225. package/src/widgets/drag-drop/index.scss +4 -4
  226. package/src/widgets/drag-drop/maps.scss +7 -0
  227. package/src/widgets/drag-drop/variables.scss +8 -5
  228. package/src/widgets/form/Calendar.maps.scss +54 -0
  229. package/src/widgets/form/Calendar.scss +49 -11
  230. package/src/widgets/form/Calendar.tsx +755 -653
  231. package/src/widgets/form/Calendar.variables.scss +3 -46
  232. package/src/widgets/form/Checkbox.maps.scss +34 -0
  233. package/src/widgets/form/Checkbox.scss +14 -3
  234. package/src/widgets/form/Checkbox.variables.scss +4 -36
  235. package/src/widgets/form/ColorField.scss +21 -2
  236. package/src/widgets/form/ColorField.tsx +485 -431
  237. package/src/widgets/form/ColorPicker.maps.scss +21 -0
  238. package/src/widgets/form/ColorPicker.scss +26 -9
  239. package/src/widgets/form/ColorPicker.variables.scss +3 -16
  240. package/src/widgets/form/DateTimeField.scss +54 -21
  241. package/src/widgets/form/DateTimeField.tsx +697 -615
  242. package/src/widgets/form/DateTimePicker.scss +14 -4
  243. package/src/widgets/form/Field.maps.scss +122 -0
  244. package/src/widgets/form/Field.scss +54 -18
  245. package/src/widgets/form/Field.tsx +611 -504
  246. package/src/widgets/form/Field.variables.scss +46 -0
  247. package/src/widgets/form/HelpText.scss +8 -5
  248. package/src/widgets/form/Label.scss +10 -3
  249. package/src/widgets/form/LookupField.maps.scss +26 -0
  250. package/src/widgets/form/LookupField.scss +54 -24
  251. package/src/widgets/form/LookupField.tsx +25 -21
  252. package/src/widgets/form/MonthField.scss +48 -26
  253. package/src/widgets/form/MonthField.tsx +645 -567
  254. package/src/widgets/form/MonthPicker.maps.scss +50 -0
  255. package/src/widgets/form/MonthPicker.scss +44 -35
  256. package/src/widgets/form/MonthPicker.tsx +954 -724
  257. package/src/widgets/form/MonthPicker.variables.scss +24 -0
  258. package/src/widgets/form/NumberField.scss +19 -2
  259. package/src/widgets/form/NumberField.tsx +576 -466
  260. package/src/widgets/form/Radio.maps.scss +36 -0
  261. package/src/widgets/form/Radio.scss +12 -2
  262. package/src/widgets/form/Radio.variables.scss +3 -42
  263. package/src/widgets/form/Select.scss +25 -9
  264. package/src/widgets/form/Slider.scss +23 -14
  265. package/src/widgets/form/Switch.scss +18 -8
  266. package/src/widgets/form/TextArea.scss +14 -1
  267. package/src/widgets/form/TextField.scss +24 -3
  268. package/src/widgets/form/TextField.tsx +9 -21
  269. package/src/widgets/form/UploadButton.scss +14 -6
  270. package/src/widgets/form/ValidationError.scss +10 -6
  271. package/src/widgets/form/Wheel.scss +14 -4
  272. package/src/widgets/form/index.scss +22 -24
  273. package/src/widgets/form/maps.scss +81 -0
  274. package/src/widgets/form/variables.scss +111 -355
  275. package/src/widgets/grid/Grid.scss +19 -2
  276. package/src/widgets/grid/Grid.spec.ts +42 -0
  277. package/src/widgets/grid/Grid.tsx +15 -7
  278. package/src/widgets/grid/Pagination.scss +11 -2
  279. package/src/widgets/grid/Pagination.tsx +110 -102
  280. package/src/widgets/grid/TreeNode.scss +25 -8
  281. package/src/widgets/grid/TreeNode.tsx +127 -116
  282. package/src/widgets/grid/index.scss +3 -4
  283. package/src/widgets/grid/maps.scss +110 -0
  284. package/src/widgets/grid/variables.scss +48 -137
  285. package/src/widgets/icons/folder.tsx +1 -2
  286. package/src/widgets/icons/forward.tsx +23 -20
  287. package/src/widgets/icons/loading.tsx +22 -19
  288. package/src/widgets/icons/square.tsx +20 -17
  289. package/src/widgets/index.scss +16 -16
  290. package/src/widgets/index.ts +63 -58
  291. package/src/widgets/lists.scss +42 -0
  292. package/src/widgets/maps.scss +139 -0
  293. package/src/widgets/nav/Link.scss +14 -1
  294. package/src/widgets/nav/Menu.scss +13 -7
  295. package/src/widgets/nav/Menu.variables.scss +1 -12
  296. package/src/widgets/nav/MenuItem.scss +21 -6
  297. package/src/widgets/nav/Scroller.scss +11 -2
  298. package/src/widgets/nav/Tab.maps.scss +78 -0
  299. package/src/widgets/nav/Tab.scss +12 -6
  300. package/src/widgets/nav/Tab.variables.scss +7 -76
  301. package/src/widgets/nav/cover.scss +6 -4
  302. package/src/widgets/nav/index.scss +6 -6
  303. package/src/widgets/nav/maps.scss +32 -0
  304. package/src/widgets/nav/variables.scss +4 -11
  305. package/src/widgets/overlay/ContextMenu.ts +3 -0
  306. package/src/widgets/overlay/Dropdown.scss +47 -16
  307. package/src/widgets/overlay/Dropdown.tsx +851 -676
  308. package/src/widgets/overlay/MsgBox.tsx +125 -111
  309. package/src/widgets/overlay/Overlay.scss +60 -40
  310. package/src/widgets/overlay/Overlay.tsx +948 -800
  311. package/src/widgets/overlay/Toast.scss +42 -34
  312. package/src/widgets/overlay/Toast.ts +11 -1
  313. package/src/widgets/overlay/Tooltip.scss +27 -96
  314. package/src/widgets/overlay/Tooltip.tsx +376 -309
  315. package/src/widgets/overlay/Window.maps.scss +51 -0
  316. package/src/widgets/overlay/Window.scss +17 -17
  317. package/src/widgets/overlay/Window.tsx +291 -236
  318. package/src/widgets/overlay/Window.variables.scss +2 -43
  319. package/src/widgets/overlay/index.d.ts +11 -11
  320. package/src/widgets/overlay/index.scss +6 -15
  321. package/src/widgets/overlay/maps.scss +44 -0
  322. package/src/widgets/overlay/variables.scss +11 -42
  323. package/src/widgets/variables.scss +33 -117
  324. package/src/global.scss +0 -14
@@ -0,0 +1,139 @@
1
+ @use "./variables.scss" as *;
2
+
3
+ // HEADING
4
+ $cx-caption-style-map: () !default;
5
+
6
+ $cx-caption-level-style-map: (
7
+ 1: (
8
+ margin: 0,
9
+ padding: 0,
10
+ ),
11
+ 2: (
12
+ margin: 0,
13
+ padding: 0,
14
+ ),
15
+ 3: (
16
+ margin: 0,
17
+ padding: 0,
18
+ ),
19
+ 4: (
20
+ margin: 0,
21
+ padding: 0,
22
+ ),
23
+ 5: (
24
+ margin: 0,
25
+ padding: 0,
26
+ ),
27
+ 6: (
28
+ margin: 0,
29
+ padding: 0,
30
+ ),
31
+ ) !default;
32
+
33
+ // SECTION
34
+ $cx-section-styles: () !default;
35
+
36
+ $cx-section-header-state-style-map: (
37
+ default: (
38
+ margin: $cx-default-section-header-margin,
39
+ padding: $cx-default-section-header-padding,
40
+ border-bottom-width: $cx-default-section-header-border-width,
41
+ border-bottom-style: solid,
42
+ border-bottom-color: $cx-default-section-header-border-color,
43
+ font-weight: $cx-default-section-header-font-weight,
44
+ ),
45
+ ) !default;
46
+
47
+ $cx-section-footer-state-style-map: (
48
+ default: (
49
+ margin: $cx-default-section-footer-margin,
50
+ padding: $cx-default-section-footer-padding,
51
+ border-top-width: $cx-default-section-footer-border-width,
52
+ border-top-style: solid,
53
+ border-top-color: $cx-default-section-footer-border-color,
54
+ ),
55
+ ) !default;
56
+
57
+ $cx-section-body-state-style-map: (
58
+ default: (
59
+ padding: $cx-default-section-body-padding,
60
+ ),
61
+ ) !default;
62
+
63
+ $cx-section-mods: (
64
+ card: (
65
+ default: (
66
+ background-color: rgba(255, 255, 255, 0.9),
67
+ border-radius: 3px,
68
+ ),
69
+ ),
70
+ well: (
71
+ default: (
72
+ background-color: rgba(255, 255, 255, 0.9),
73
+ border-radius: 3px,
74
+ ),
75
+ ),
76
+ warning: (
77
+ default: (
78
+ color: #fff,
79
+ background-color: #f09037,
80
+ border-radius: 3px,
81
+ ),
82
+ ),
83
+ primary: (
84
+ default: (
85
+ color: #fff,
86
+ background-color: #1f99f8,
87
+ border-radius: 3px,
88
+ ),
89
+ ),
90
+ success: (
91
+ default: (
92
+ color: #fff,
93
+ background-color: #5cb85c,
94
+ border-radius: 3px,
95
+ ),
96
+ ),
97
+ error: (
98
+ default: (
99
+ color: #fff,
100
+ background-color: #d9534f,
101
+ border-radius: 3px,
102
+ ),
103
+ ),
104
+ ) !default;
105
+
106
+ $cx-progressbar-state-style-map: (
107
+ default: (
108
+ position: relative,
109
+ width: $cx-default-progressbar-width,
110
+ min-height: $cx-default-progressbar-height,
111
+ background-color: $cx-default-progressbar-background-color,
112
+ color: $cx-default-progressbar-color,
113
+ border-style: solid,
114
+ border-color: $cx-default-progressbar-border-color,
115
+ border-width: $cx-default-progressbar-border-width,
116
+ border-radius: $cx-default-progressbar-border-radius,
117
+ font-size: $cx-default-progressbar-font-size,
118
+ text-align: center,
119
+ line-height: $cx-default-progressbar-height,
120
+ ),
121
+ disabled: (
122
+ opacity: 0.2,
123
+ ),
124
+ );
125
+
126
+ $cx-progressbar-mods: ();
127
+
128
+ $cx-highlighedsearchtext-style-map: (
129
+ font-weight: bold,
130
+ ) !default;
131
+
132
+ @forward "./lists.scss";
133
+ @forward "./Button.maps.scss";
134
+
135
+ @forward "./drag-drop/maps.scss";
136
+ @forward "./form/maps.scss";
137
+ @forward "./grid/maps.scss";
138
+ @forward "./nav/maps.scss";
139
+ @forward "./overlay/maps.scss";
@@ -1,6 +1,19 @@
1
1
  @use "sass:map";
2
+ @use "sass:math";
3
+ @use "../box.scss" as *;
4
+ @use "../../util/scss/add-rules.scss" as *;
5
+ @use "../../util/scss/clockwise.scss" as *;
6
+ @use "../../util/scss/deep-merge.scss" as *;
7
+ @use "../../util/scss/calc.scss" as *;
8
+ @use "../../util/scss/besm.scss" as *;
9
+ @use "../../util/scss/include.scss" as *;
10
+ @use "./maps.scss" as *;
2
11
 
3
- @mixin cx-link($name: "link", $besm: $cx-besm, $state-style-map: $cx-link-state-style-map) {
12
+ @mixin cx-link(
13
+ $name: "link",
14
+ $besm: $cx-besm,
15
+ $state-style-map: $cx-link-state-style-map
16
+ ) {
4
17
  $block: map.get($besm, block);
5
18
  $element: map.get($besm, element);
6
19
  $state: map.get($besm, state);
@@ -1,6 +1,18 @@
1
+ @use "sass:math";
1
2
  @use "sass:map";
3
+ @use "../variables" as *;
4
+ @use "../maps" as *;
5
+ @use "../../util/scss/add-rules.scss" as *;
6
+ @use "../../util/scss/clockwise.scss" as *;
7
+ @use "../../util/scss/deep-merge.scss" as *;
8
+ @use "../../util/scss/besm.scss" as *;
9
+ @use "../../util/scss/include.scss" as *;
2
10
 
3
- @mixin cx-menu($name: "menu", $state-style-map: $cx-menu-state-style-map, $besm: $cx-besm) {
11
+ @mixin cx-menu(
12
+ $name: "menu",
13
+ $state-style-map: $cx-menu-state-style-map,
14
+ $besm: $cx-besm
15
+ ) {
4
16
  $block: map.get($besm, block);
5
17
  $element: map.get($besm, element);
6
18
  $state: map.get($besm, state);
@@ -37,12 +49,6 @@
37
49
  }
38
50
 
39
51
  .#{$element}#{$name}-item {
40
- & > hr {
41
- border: none;
42
- border-top: 1px solid $cx-default-menu-separator-color;
43
- margin: map.get($cx-menu-padding-options, medium);
44
- }
45
-
46
52
  &.#{$state}hidden {
47
53
  visibility: hidden;
48
54
  position: absolute;
@@ -1,20 +1,9 @@
1
+ @use "../../util/scss/include" as *;
1
2
  @use "sass:map";
2
3
 
3
4
  // MENU
4
- $cx-menu-state-style-map: $cx-list !default;
5
5
  $cx-default-menu-separator-color: lightgray !default;
6
6
 
7
- // MENU ITEM
8
- $cx-menu-padding-options: (
9
- xsmall: $cx-default-padding-extra-small 2 * $cx-default-padding-extra-small,
10
- small: $cx-default-padding-small 2 * $cx-default-padding-small,
11
- medium: $cx-default-padding-medium 2 * $cx-default-padding-medium,
12
- large: $cx-default-padding-large 2 * $cx-default-padding-large,
13
- xlarge: $cx-default-padding-extra-large 2 * $cx-default-padding-extra-large,
14
- ) !default;
15
-
16
- $cx-menu-list-item: () !default;
17
-
18
7
  $cx-dependencies: map.merge(
19
8
  $cx-dependencies,
20
9
  (
@@ -1,8 +1,17 @@
1
+ @use "sass:math";
1
2
  @use "sass:map";
3
+ @use "../variables" as *;
4
+ @use "../maps" as *;
5
+ @use "../../util/scss/add-rules.scss" as *;
6
+ @use "../../util/scss/clockwise.scss" as *;
7
+ @use "../../util/scss/deep-merge.scss" as *;
8
+ @use "../../util/scss/calc.scss" as *;
9
+ @use "../../util/scss/besm.scss" as *;
10
+ @use "../../util/scss/include.scss" as *;
2
11
 
3
12
  @mixin cx-menuitem(
4
13
  $name: "menuitem",
5
- $state-style-map: cx-deep-map-merge($cx-list-item, $cx-menu-list-item),
14
+ $state-style-map: $cx-menu-list-item,
6
15
  $icon-size: $cx-default-icon-size,
7
16
  $besm: $cx-besm
8
17
  ) {
@@ -50,6 +59,12 @@
50
59
  }
51
60
  }
52
61
 
62
+ & > hr {
63
+ border: none;
64
+ border-top: 1px solid $cx-default-menu-separator-color;
65
+ margin: map.get($cx-menu-padding-options, medium);
66
+ }
67
+
53
68
  @each $size, $value in $cx-menu-padding-options {
54
69
  &.#{$state}#{$size}-padding {
55
70
  & > a,
@@ -69,11 +84,11 @@
69
84
  }
70
85
 
71
86
  &.#{$state}empty {
72
- padding-right: cx-calc($icon-size) * 0.5;
87
+ padding-right: cx-multiply($icon-size, 0.5);
73
88
  }
74
89
 
75
90
  & > .#{$element}#{$name}-arrow {
76
- right: cx-right($value) * 0.5;
91
+ right: cx-multiply(cx-right($value), 0.5);
77
92
  }
78
93
 
79
94
  & > .#{$element}#{$name}-button {
@@ -88,7 +103,7 @@
88
103
  width: $icon-size;
89
104
  height: $icon-size;
90
105
  top: 50%;
91
- margin-top: -$icon-size * 0.5;
106
+ margin-top: cx-multiply($icon-size, -0.5);
92
107
 
93
108
  .#{$state}vertical > & {
94
109
  transform: rotate(-90deg);
@@ -117,8 +132,8 @@
117
132
  height: $icon-size;
118
133
  top: 50%;
119
134
  left: 50%;
120
- margin-top: -$icon-size * 0.5;
121
- margin-left: -$icon-size * 0.5;
135
+ margin-top: cx-multiply($icon-size, -0.5);
136
+ margin-left: cx-multiply($icon-size, -0.5);
122
137
  text-align: center;
123
138
  line-height: 1;
124
139
  font-size: $icon-size;
@@ -1,4 +1,13 @@
1
+ @use "sass:math";
1
2
  @use "sass:map";
3
+ @use "../variables" as *;
4
+ @use "../maps" as *;
5
+ @use "../../util/scss/add-rules.scss" as *;
6
+ @use "../../util/scss/clockwise.scss" as *;
7
+ @use "../../util/scss/deep-merge.scss" as *;
8
+ @use "../../util/scss/calc.scss" as *;
9
+ @use "../../util/scss/besm.scss" as *;
10
+ @use "../../util/scss/include.scss" as *;
2
11
 
3
12
  @mixin cx-scroller(
4
13
  $name: "scroller",
@@ -138,8 +147,8 @@
138
147
  top: 50%;
139
148
  left: 50%;
140
149
  position: absolute;
141
- margin-left: -$icon-size * 0.5;
142
- margin-top: -$icon-size * 0.5;
150
+ margin-left: cx-multiply($icon-size, -0.5);
151
+ margin-top: cx-multiply($icon-size, -0.5);
143
152
  }
144
153
  }
145
154
 
@@ -0,0 +1,78 @@
1
+ @use "../variables" as *;
2
+ @use "../lists.scss" as *;
3
+ @use "../../util/scss/deep-merge" as *;
4
+
5
+ $cx-tab-state-style-map: cx-deep-map-merge(
6
+ $cx-list-item,
7
+ (
8
+ default: (
9
+ color: $cx-default-tab-color,
10
+ font-size: $cx-default-tab-font-size,
11
+ line-height: $cx-default-box-line-height,
12
+ font-weight: $cx-default-tab-font-weight,
13
+ text-decoration: none,
14
+ cursor: pointer,
15
+ text-align: center,
16
+ background-color: $cx-default-tab-background-color,
17
+ border-radius: $cx-default-tab-border-radius,
18
+ padding: $cx-default-tab-padding,
19
+ border-width: $cx-default-tab-border-width,
20
+ border-color: $cx-default-tab-border-color,
21
+ border-style: solid,
22
+ box-shadow: $cx-default-tab-box-shadow,
23
+ ),
24
+ hover: (
25
+ text-decoration: none,
26
+ ),
27
+ disabled: (
28
+ background-color: transparent,
29
+ pointer-events: none,
30
+ ),
31
+ )
32
+ ) !default;
33
+
34
+ $cx-tab-mods: (
35
+ classic: (
36
+ default: (
37
+ position: relative,
38
+ border-width: 1px,
39
+ border-bottom-left-radius: 0,
40
+ border-bottom-right-radius: 0,
41
+ ),
42
+ selected: (
43
+ border-color: $cx-default-border-color,
44
+ background-color: $cx-default-cover-background-color,
45
+ ),
46
+ ),
47
+ line: (
48
+ default: (
49
+ background-color: transparent !important,
50
+ border-left-color: transparent !important,
51
+ border-right-color: transparent !important,
52
+ border-top-color: transparent !important,
53
+ border-left-width: 0,
54
+ border-right-width: 0,
55
+ border-bottom-width: 2px,
56
+ border-top-width: 0,
57
+ border-bottom-left-radius: 0,
58
+ border-bottom-right-radius: 0,
59
+ border-radius: 0,
60
+ ),
61
+ hover: (
62
+ border-color: rgba(128, 128, 128, 0.2),
63
+ ),
64
+ cursor: (
65
+ border-color: rgba(123, 190, 255, 0.3),
66
+ ),
67
+ selected: (
68
+ border-color: rgba(128, 128, 128, 0.4),
69
+ ),
70
+ selected-cursor: (
71
+ border-color: rgba(123, 190, 255, 0.7),
72
+ ),
73
+ active: (),
74
+ disabled: (
75
+ border-color: transparent,
76
+ ),
77
+ ),
78
+ ) !default;
@@ -1,9 +1,16 @@
1
-
1
+ @use "sass:math";
2
2
  @use "sass:map";
3
- @import "cover";
3
+ @use "../variables" as *;
4
+ @use "../maps" as *;
5
+ @use "../../util/scss/add-rules.scss" as *;
6
+ @use "../../util/scss/clockwise.scss" as *;
7
+ @use "../../util/scss/deep-merge.scss" as *;
8
+ @use "../../util/scss/besm.scss" as *;
9
+ @use "../../util/scss/include.scss" as *;
10
+ @use "cover" as *;
4
11
 
5
12
  @mixin cx-tab(
6
- $name: 'tab',
13
+ $name: "tab",
7
14
  $state-style-map: $cx-tab-state-style-map,
8
15
  $besm: $cx-besm
9
16
  ) {
@@ -18,7 +25,6 @@
18
25
 
19
26
  @include cx-add-state-rules($state-style-map, default);
20
27
 
21
-
22
28
  &:hover {
23
29
  @include cx-add-state-rules($state-style-map, hover);
24
30
  }
@@ -66,7 +72,7 @@
66
72
  }
67
73
 
68
74
  &.#{$mod}classic.#{$state}active:after {
69
- content: ' ';
75
+ content: " ";
70
76
  position: absolute;
71
77
  top: 100%;
72
78
  left: 0;
@@ -77,6 +83,6 @@
77
83
  }
78
84
  }
79
85
 
80
- @if (cx-should-include('cx/widgets/Tab')) {
86
+ @if (cx-should-include("cx/widgets/Tab")) {
81
87
  @include cx-tab();
82
88
  }
@@ -1,3 +1,7 @@
1
+ @use "../../util/scss/defaults" as *;
2
+ @use "../../util/scss/clockwise" as *;
3
+ @use "../box" as *;
4
+
1
5
  $cx-default-tab-color: inherit !default;
2
6
  $cx-default-tab-font-size: null !default;
3
7
  $cx-default-tab-font-weight: inherit !default;
@@ -5,80 +9,7 @@ $cx-default-tab-background-color: transparent !default;
5
9
  $cx-default-tab-border-width: $cx-default-box-border-width !default;
6
10
  $cx-default-tab-border-color: transparent !default;
7
11
  $cx-default-tab-border-radius: $cx-default-border-radius !default;
8
- $cx-default-tab-padding: cx-top($cx-default-box-padding) 2 * cx-right($cx-default-box-padding)
9
- cx-bottom($cx-default-box-padding) 2 * cx-left($cx-default-box-padding) !default;
12
+ $cx-default-tab-padding: $cx-default-box-padding-top 2 *
13
+ $cx-default-box-padding-right $cx-default-box-padding-bottom 2 *
14
+ $cx-default-box-padding-left !default;
10
15
  $cx-default-tab-box-shadow: none !default;
11
-
12
- $cx-tab-state-style-map: cx-deep-map-merge(
13
- $cx-list-item,
14
- (
15
- default: (
16
- color: $cx-default-tab-color,
17
- font-size: $cx-default-tab-font-size,
18
- line-height: $cx-default-box-line-height,
19
- font-weight: $cx-default-tab-font-weight,
20
- text-decoration: none,
21
- cursor: pointer,
22
- text-align: center,
23
- background-color: $cx-default-tab-background-color,
24
- border-radius: $cx-default-tab-border-radius,
25
- padding: $cx-default-tab-padding,
26
- border-width: $cx-default-tab-border-width,
27
- border-color: $cx-default-tab-border-color,
28
- border-style: solid,
29
- box-shadow: $cx-default-tab-box-shadow,
30
- ),
31
- hover: (
32
- text-decoration: none,
33
- ),
34
- disabled: (
35
- background-color: transparent,
36
- pointer-events: none,
37
- ),
38
- )
39
- ) !default;
40
-
41
- $cx-tab-mods: (
42
- classic: (
43
- default: (
44
- position: relative,
45
- border-width: 1px,
46
- border-bottom-left-radius: 0,
47
- border-bottom-right-radius: 0,
48
- ),
49
- selected: (
50
- border-color: $cx-default-border-color,
51
- background-color: $cx-default-cover-background-color,
52
- ),
53
- ),
54
- line: (
55
- default: (
56
- background-color: transparent !important,
57
- border-left-color: transparent !important,
58
- border-right-color: transparent !important,
59
- border-top-color: transparent !important,
60
- border-left-width: 0,
61
- border-right-width: 0,
62
- border-bottom-width: 2px,
63
- border-top-width: 0,
64
- border-bottom-left-radius: 0,
65
- border-bottom-right-radius: 0,
66
- ),
67
- hover: (
68
- border-color: rgba(128, 128, 128, 0.2),
69
- ),
70
- cursor: (
71
- border-color: rgba(123, 190, 255, 0.3),
72
- ),
73
- selected: (
74
- border-color: rgba(128, 128, 128, 0.4),
75
- ),
76
- selected-cursor: (
77
- border-color: rgba(123, 190, 255, 0.7),
78
- ),
79
- active: (),
80
- disabled: (
81
- border-color: transparent,
82
- ),
83
- ),
84
- ) !default;
@@ -1,8 +1,9 @@
1
1
  @use "sass:map";
2
+ @use "../variables" as *;
3
+ @use "../../util/scss/besm.scss" as *;
4
+ @use "../../util/scss/include.scss" as *;
2
5
 
3
- @mixin cx-cover(
4
- $besm: $cx-besm
5
- ) {
6
+ @mixin cx-cover($besm: $cx-besm) {
6
7
  $block: map.get($besm, block);
7
8
  $element: map.get($besm, element);
8
9
  $state: map.get($besm, state);
@@ -17,6 +18,7 @@
17
18
  }
18
19
  }
19
20
 
20
- @if (cx-should-include('cx/widgets/cover')) { // check path
21
+ @if (cx-should-include("cx/widgets/cover")) {
22
+ // check path
21
23
  @include cx-cover();
22
24
  }
@@ -1,6 +1,6 @@
1
- @import 'cover';
2
- @import 'Tab';
3
- @import 'Menu';
4
- @import 'MenuItem';
5
- @import 'Link';
6
- @import 'Scroller';
1
+ @use 'cover';
2
+ @use 'Tab';
3
+ @use 'Menu';
4
+ @use 'MenuItem';
5
+ @use 'Link';
6
+ @use 'Scroller';
@@ -0,0 +1,32 @@
1
+ @use "../variables" as *;
2
+ @use "../lists.scss" as *;
3
+ @use "../../util/scss/padding" as *;
4
+ @use "../../util/scss/deep-merge.scss" as *;
5
+
6
+ $cx-link-state-style-map: (
7
+ active: (
8
+ font-weight: bold,
9
+ ),
10
+ ) !default;
11
+
12
+ @forward "./Tab.maps.scss";
13
+
14
+ $cx-menu-state-style-map: $cx-list !default;
15
+
16
+ // MENU ITEM
17
+ $cx-menu-padding-options: (
18
+ xsmall: $cx-default-padding-extra-small 2 * $cx-default-padding-extra-small,
19
+ small: $cx-default-padding-small 2 * $cx-default-padding-small,
20
+ medium: $cx-default-padding-medium 2 * $cx-default-padding-medium,
21
+ large: $cx-default-padding-large 2 * $cx-default-padding-large,
22
+ xlarge: $cx-default-padding-extra-large 2 * $cx-default-padding-extra-large,
23
+ ) !default;
24
+
25
+ $cx-menu-list-item: cx-deep-map-merge(
26
+ $cx-list-item,
27
+ (
28
+ default: (
29
+ padding: null,
30
+ ),
31
+ )
32
+ ) !default;
@@ -1,3 +1,5 @@
1
+ @use "../../util/scss/defaults.scss" as *;
2
+ @use "../../util/scss/include.scss" as *;
1
3
  @use "sass:map";
2
4
 
3
5
  // COVER
@@ -6,17 +8,8 @@ $cx-default-cover-background-color: white !default;
6
8
 
7
9
  $cx-default-scroller-button-size: 20px !default;
8
10
 
9
- $cx-link-state-style-map: (
10
- active: (
11
- font-weight: bold,
12
- ),
13
- ) !default;
14
-
15
- //MENU
16
- @import "Menu.variables";
17
-
18
- // TAB
19
- @import "Tab.variables";
11
+ @forward "Menu.variables";
12
+ @forward "Tab.variables";
20
13
 
21
14
  $cx-dependencies: map.merge(
22
15
  $cx-dependencies,
@@ -1,4 +1,5 @@
1
1
  import { Store } from "../../data/Store";
2
+ import { Localization } from "../../ui/Localization";
2
3
  import { Instance } from "../../ui/Instance";
3
4
  import { Dropdown, DropdownConfig } from "./Dropdown";
4
5
  import { getCursorPos } from "./captureMouse";
@@ -20,6 +21,8 @@ ContextMenu.prototype.autoFocus = true;
20
21
  ContextMenu.prototype.autoFocusFirstChild = false;
21
22
  ContextMenu.prototype.focusable = true;
22
23
 
24
+ Localization.registerPrototype("cx/widgets/ContextMenu", ContextMenu);
25
+
23
26
  export const openContextMenu = (
24
27
  e: React.MouseEvent,
25
28
  content: any,