cx 26.2.2 → 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 +14 -11
  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 +821 -809
  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 +319 -126
  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 +18 -13
  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
@@ -7,123 +7,137 @@ import { isString } from "../../util/isString";
7
7
  import { Instance } from "../../ui/Instance";
8
8
 
9
9
  export interface MsgBoxOptions {
10
- message?: string;
11
- title?: string;
12
- header?: string;
13
- style?: string;
14
- callback?: (option?: string) => boolean | void;
15
- okText?: string;
16
- yesText?: string;
17
- noText?: string;
18
- yesButtonMod?: string;
19
- noButtonMod?: string;
20
- items?: any;
21
- children?: any;
22
- store?: any;
10
+ message?: string;
11
+ title?: string;
12
+ header?: string;
13
+ style?: string;
14
+ callback?: (option?: string) => boolean | void;
15
+ okText?: string;
16
+ yesText?: string;
17
+ noText?: string;
18
+ yesButtonMod?: string;
19
+ noButtonMod?: string;
20
+ items?: any;
21
+ children?: any;
22
+ store?: any;
23
+ initiatingEvent?: React.SyntheticEvent;
23
24
  }
24
25
 
25
26
  export class MsgBox {
26
- buttonMod?: string;
27
- footerDirection?: string;
28
- footerJustify?: "start" | "center" | "end" | "space-between" | "space-around" | "space-evenly" | false;
29
- yesText?: string;
30
- noText?: string;
27
+ buttonMod?: string;
28
+ footerDirection?: string;
29
+ footerJustify?:
30
+ | "start"
31
+ | "center"
32
+ | "end"
33
+ | "space-between"
34
+ | "space-around"
35
+ | "space-evenly"
36
+ | false;
37
+ yesText?: string;
38
+ noText?: string;
31
39
 
32
- static alert(options: string | MsgBoxOptions): Promise<void> {
33
- let opts: MsgBoxOptions;
34
- if (isString(options))
35
- opts = {
36
- message: options,
37
- };
38
- else opts = options;
40
+ static alert(options: string | MsgBoxOptions): Promise<void> {
41
+ let opts: MsgBoxOptions;
42
+ if (isString(options))
43
+ opts = {
44
+ message: options,
45
+ };
46
+ else opts = options;
39
47
 
40
- return new Promise<void>(function (resolve) {
41
- let callback = (e: any, instance: Instance) => {
42
- if (opts.callback && opts.callback() === false) return;
43
- instance.parentOptions.dismiss();
44
- resolve();
45
- };
48
+ return new Promise<void>(function (resolve) {
49
+ let callback = (e: any, instance: Instance) => {
50
+ if (opts.callback && opts.callback() === false) return;
51
+ instance.parentOptions.dismiss();
52
+ resolve();
53
+ };
46
54
 
47
- let w = Window.create(
48
- <cx>
49
- <Window
50
- title={opts.title}
51
- header={opts.header}
52
- mod="alert"
53
- modal
54
- center
55
- resizable={false}
56
- closable={false}
57
- style={opts.style || "max-width: 90vw"}
58
- dismissOnPopState
59
- >
60
- {opts.message || opts.items || opts.children}
61
- <FlexRow
62
- putInto="footer"
63
- direction={MsgBox.prototype.footerDirection}
64
- justify={MsgBox.prototype.footerJustify}
65
- >
66
- <Button mod={MsgBox.prototype.buttonMod} onClick={callback}>
67
- {opts.okText || "OK"}
68
- </Button>
69
- </FlexRow>
70
- </Window>
71
- </cx>,
72
- ) as any;
55
+ let w: Window = Window.create(
56
+ <cx>
57
+ <Window
58
+ title={opts.title}
59
+ header={opts.header}
60
+ mod="alert"
61
+ modal
62
+ center
63
+ resizable={false}
64
+ closable={false}
65
+ style={opts.style || "max-width: 90vw"}
66
+ dismissOnPopState
67
+ >
68
+ {opts.message || opts.items || opts.children}
69
+ <FlexRow
70
+ putInto="footer"
71
+ direction={MsgBox.prototype.footerDirection}
72
+ justify={MsgBox.prototype.footerJustify}
73
+ >
74
+ <Button mod={MsgBox.prototype.buttonMod} onClick={callback}>
75
+ {opts.okText || "OK"}
76
+ </Button>
77
+ </FlexRow>
78
+ </Window>
79
+ </cx>,
80
+ ) as any;
73
81
 
74
- w.open(opts.store);
75
- });
76
- }
82
+ w.open(opts.store, { initiatingEvent: opts.initiatingEvent });
83
+ });
84
+ }
77
85
 
78
- static yesNo(options: string | MsgBoxOptions): Promise<string> {
79
- let opts: MsgBoxOptions;
80
- if (isString(options))
81
- opts = {
82
- message: options,
83
- };
84
- else opts = options;
86
+ static yesNo(options: string | MsgBoxOptions): Promise<string> {
87
+ let opts: MsgBoxOptions;
88
+ if (isString(options))
89
+ opts = {
90
+ message: options,
91
+ };
92
+ else opts = options;
85
93
 
86
- return new Promise<string>(function (resolve, reject) {
87
- let callback = (option: string) => (e: any, instance: Instance) => {
88
- if (opts.callback && opts.callback(option) === false) return;
89
- instance.parentOptions.dismiss();
90
- if (option == "yes") resolve(option);
91
- else resolve(option);
92
- };
93
- let w = Window.create(
94
- <cx>
95
- <Window
96
- title={opts.title}
97
- header={opts.header}
98
- mod="alert"
99
- modal
100
- center
101
- resizable={false}
102
- closable={false}
103
- style={opts.style || "max-width: 90vw"}
104
- dismissOnPopState
105
- >
106
- {opts.message || opts.items || opts.children}
107
- <FlexRow
108
- putInto="footer"
109
- direction={MsgBox.prototype.footerDirection}
110
- justify={MsgBox.prototype.footerJustify}
111
- hspacing="small"
112
- >
113
- <Button mod={opts.yesButtonMod || MsgBox.prototype.buttonMod} onClick={callback("yes")}>
114
- {opts.yesText || MsgBox.prototype.yesText}
115
- </Button>
116
- <Button mod={opts.noButtonMod || MsgBox.prototype.buttonMod} onClick={callback("no")}>
117
- {opts.noText || MsgBox.prototype.noText}
118
- </Button>
119
- </FlexRow>
120
- </Window>
121
- </cx>,
122
- ) as any;
94
+ return new Promise<string>(function (resolve, reject) {
95
+ let callback = (option: string) => (e: any, instance: Instance) => {
96
+ if (opts.callback && opts.callback(option) === false) return;
97
+ instance.parentOptions.dismiss();
98
+ if (option == "yes") resolve(option);
99
+ else resolve(option);
100
+ };
101
+ let w: Window = Window.create(
102
+ <cx>
103
+ <Window
104
+ title={opts.title}
105
+ header={opts.header}
106
+ mod="alert"
107
+ modal
108
+ center
109
+ resizable={false}
110
+ closable={false}
111
+ style={opts.style || "max-width: 90vw"}
112
+ dismissOnPopState
113
+ >
114
+ {opts.message || opts.items || opts.children}
115
+ <FlexRow
116
+ putInto="footer"
117
+ direction={MsgBox.prototype.footerDirection}
118
+ justify={MsgBox.prototype.footerJustify}
119
+ hspacing="small"
120
+ >
121
+ <Button
122
+ mod={opts.yesButtonMod || MsgBox.prototype.buttonMod}
123
+ onClick={callback("yes")}
124
+ >
125
+ {opts.yesText || MsgBox.prototype.yesText}
126
+ </Button>
127
+ <Button
128
+ mod={opts.noButtonMod || MsgBox.prototype.buttonMod}
129
+ onClick={callback("no")}
130
+ >
131
+ {opts.noText || MsgBox.prototype.noText}
132
+ </Button>
133
+ </FlexRow>
134
+ </Window>
135
+ </cx>,
136
+ ) as any;
123
137
 
124
- w.open(opts.store);
125
- });
126
- }
138
+ w.open(opts.store, { initiatingEvent: opts.initiatingEvent });
139
+ });
140
+ }
127
141
  }
128
142
 
129
143
  MsgBox.prototype.buttonMod = undefined;
@@ -134,8 +148,8 @@ MsgBox.prototype.noText = "No";
134
148
  Localization.registerPrototype("cx/widgets/MsgBox", MsgBox);
135
149
 
136
150
  export function enableMsgBoxAlerts(): void {
137
- registerAlertImpl({
138
- yesNo: MsgBox.yesNo.bind(MsgBox),
139
- alert: MsgBox.alert.bind(MsgBox),
140
- });
151
+ registerAlertImpl({
152
+ yesNo: MsgBox.yesNo.bind(MsgBox),
153
+ alert: MsgBox.alert.bind(MsgBox),
154
+ });
141
155
  }
@@ -1,53 +1,69 @@
1
1
  @use "sass:map";
2
+ @use "sass:math";
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
- @mixin cx-overlay($name: "overlay", $besm: $cx-besm) {
4
- $block: map.get($besm, block);
5
- $element: map.get($besm, element);
12
+ @mixin cxb-overlay($name, $besm) {
6
13
  $state: map.get($besm, state);
7
14
 
8
- %cxb-overlay {
9
- left: calc(50% - 250px); //guess
10
- top: calc(50% - 100px); //guess
11
- min-width: 10px;
12
- min-height: 10px;
13
- position: fixed;
14
- overflow: visible;
15
- box-sizing: border-box;
15
+ left: calc(50% - 250px); //guess
16
+ top: calc(50% - 100px); //guess
17
+ min-width: 10px;
18
+ min-height: 10px;
19
+ position: fixed;
20
+ overflow: visible;
21
+ box-sizing: border-box;
16
22
 
17
- &.#{$state}draggable {
18
- cursor: pointer;
19
- touch-action: none;
20
- }
21
-
22
- &.#{$state}shadow {
23
- position: absolute;
24
- }
25
-
26
- &:focus {
27
- outline: none;
28
- }
23
+ &.#{$state}draggable {
24
+ cursor: pointer;
25
+ touch-action: none;
29
26
  }
30
27
 
31
- %cxe-overlay-modal-backdrop {
32
- position: fixed;
33
- left: 0;
34
- top: 0;
35
- width: 100vw;
36
- height: 100vh;
28
+ &.#{$state}shadow {
29
+ position: absolute;
37
30
  }
38
31
 
39
- %cxe-overlay-shadow {
40
- position: fixed;
41
- left: 0;
42
- top: 0;
43
- width: 100vw;
44
- height: 100vh;
45
- background: rgba(128, 128, 128, 0.3);
46
- overflow: auto;
32
+ &:focus {
33
+ outline: none;
47
34
  }
35
+ }
36
+
37
+ @mixin cxe-overlay-modal-backdrop {
38
+ position: fixed;
39
+ left: 0;
40
+ top: 0;
41
+ width: 100vw;
42
+ height: 100vh;
43
+ }
44
+
45
+ @mixin cxe-overlay-shadow {
46
+ position: fixed;
47
+ left: 0;
48
+ top: 0;
49
+ width: 100vw;
50
+ height: 100vh;
51
+ background: rgba(128, 128, 128, 0.3);
52
+ overflow: auto;
53
+ }
54
+
55
+ @mixin cxe-overlay-beacon {
56
+ position: absolute;
57
+ display: none;
58
+ }
59
+
60
+ @mixin cx-overlay($name: "overlay", $besm: $cx-besm) {
61
+ $block: map.get($besm, block);
62
+ $element: map.get($besm, element);
63
+ $state: map.get($besm, state);
48
64
 
49
65
  .#{$block}#{$name} {
50
- @extend %cxb-overlay;
66
+ @include cxb-overlay($name, $besm);
51
67
 
52
68
  &.#{$state}pad {
53
69
  padding: $cx-default-container-padding;
@@ -55,11 +71,15 @@
55
71
  }
56
72
 
57
73
  .#{$element}#{$name}-modal-backdrop {
58
- @extend %cxe-overlay-modal-backdrop;
74
+ @include cxe-overlay-modal-backdrop;
59
75
  }
60
76
 
61
77
  .#{$element}#{$name}-shadow {
62
- @extend %cxe-overlay-shadow;
78
+ @include cxe-overlay-shadow;
79
+ }
80
+
81
+ .#{$element}#{$name}-beacon {
82
+ @include cxe-overlay-beacon;
63
83
  }
64
84
  }
65
85