goblin-gadgets 3.2.2 → 3.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 (361) hide show
  1. package/.editorconfig +9 -9
  2. package/.eslintrc.js +28 -28
  3. package/.zou-flow +2 -2
  4. package/builders/builders.js +5 -5
  5. package/builders/gadget.js +85 -85
  6. package/calendar-boards-gadget.js +64 -64
  7. package/demo-gadget.js +17 -17
  8. package/glyphs-dialog.js +13 -13
  9. package/login-dialog.js +13 -13
  10. package/package.json +46 -46
  11. package/pivot-gadget.js +18 -18
  12. package/stack-navigation.js +13 -13
  13. package/table-gadget.js +102 -102
  14. package/test/code-parser.spec.js +61 -61
  15. package/tree-gadget.js +70 -70
  16. package/types/types.js +455 -455
  17. package/widgets/accordion/styles.js +16 -16
  18. package/widgets/accordion/widget.js +90 -90
  19. package/widgets/analog-clock/props.js +102 -102
  20. package/widgets/analog-clock/scenarios.js +43 -43
  21. package/widgets/analog-clock/styles.js +754 -754
  22. package/widgets/analog-clock/widget.js +404 -404
  23. package/widgets/animated-container/animations.js +566 -566
  24. package/widgets/animated-container/styles.js +36 -36
  25. package/widgets/animated-container/widget.js +24 -24
  26. package/widgets/badge/styles.js +107 -107
  27. package/widgets/badge/widget.js +33 -33
  28. package/widgets/button/props.js +377 -377
  29. package/widgets/button/scenarios.js +54 -54
  30. package/widgets/button/styles.js +1082 -1082
  31. package/widgets/button/widget.js +426 -426
  32. package/widgets/button-combo/styles.js +73 -73
  33. package/widgets/button-combo/widget.js +297 -297
  34. package/widgets/calendar/props.js +207 -207
  35. package/widgets/calendar/scenarios.js +50 -50
  36. package/widgets/calendar/styles.js +198 -198
  37. package/widgets/calendar/widget.js +895 -895
  38. package/widgets/calendar-boards/styles.js +29 -29
  39. package/widgets/calendar-boards/widget.js +215 -215
  40. package/widgets/calendar-button/styles.js +273 -273
  41. package/widgets/calendar-button/widget.js +94 -94
  42. package/widgets/calendar-list/styles.js +35 -35
  43. package/widgets/calendar-list/widget.js +223 -223
  44. package/widgets/calendar-recurrence/widget.js +183 -183
  45. package/widgets/carousel/props.js +104 -104
  46. package/widgets/carousel/scenarios.js +163 -163
  47. package/widgets/carousel/styles.js +133 -133
  48. package/widgets/carousel/widget.js +491 -491
  49. package/widgets/carousel-bullet/styles.js +29 -29
  50. package/widgets/carousel-bullet/widget.js +25 -25
  51. package/widgets/carousel-button/styles.js +71 -71
  52. package/widgets/carousel-button/widget.js +33 -33
  53. package/widgets/carousel-item/styles.js +21 -21
  54. package/widgets/carousel-item/widget.js +24 -24
  55. package/widgets/chat-balloon/props.js +65 -65
  56. package/widgets/chat-balloon/scenarios.js +47 -47
  57. package/widgets/chat-balloon/styles.js +193 -193
  58. package/widgets/chat-balloon/widget.js +62 -62
  59. package/widgets/chat-dialog/styles.js +15 -15
  60. package/widgets/chat-dialog/widget.js +62 -62
  61. package/widgets/check-list/styles.js +66 -66
  62. package/widgets/check-list/widget.js +168 -168
  63. package/widgets/checkbox/widget.js +15 -15
  64. package/widgets/checkbox-nc/props.js +191 -191
  65. package/widgets/checkbox-nc/scenarios.js +41 -41
  66. package/widgets/checkbox-nc/styles.js +122 -122
  67. package/widgets/checkbox-nc/widget.js +116 -116
  68. package/widgets/clock-combo/styles.js +174 -174
  69. package/widgets/clock-combo/widget.js +390 -390
  70. package/widgets/color-picker/props.js +145 -145
  71. package/widgets/color-picker/scenarios.js +34 -34
  72. package/widgets/color-picker/styles.js +209 -209
  73. package/widgets/color-picker/widget.js +735 -735
  74. package/widgets/colored-container/props.js +34 -34
  75. package/widgets/colored-container/scenarios.js +54 -54
  76. package/widgets/colored-container/styles.js +100 -100
  77. package/widgets/colored-container/widget.js +27 -27
  78. package/widgets/combo/styles.js +69 -69
  79. package/widgets/combo/widget.js +224 -224
  80. package/widgets/combo-container/styles.js +66 -66
  81. package/widgets/combo-container/widget.js +188 -188
  82. package/widgets/command-button/widget.js +39 -39
  83. package/widgets/container/props.js +295 -295
  84. package/widgets/container/scenarios.js +47 -47
  85. package/widgets/container/styles.js +1439 -1439
  86. package/widgets/container/widget.js +279 -279
  87. package/widgets/demo/widget.js +24 -24
  88. package/widgets/dialog/styles.js +29 -29
  89. package/widgets/dialog/widget.js +26 -26
  90. package/widgets/dialog-modal/props.js +126 -126
  91. package/widgets/dialog-modal/styles.js +234 -234
  92. package/widgets/dialog-modal/widget.js +273 -273
  93. package/widgets/dialog-resizable/props.js +1 -1
  94. package/widgets/dialog-resizable/scenarios.js +18 -18
  95. package/widgets/dialog-resizable/widget.js +367 -367
  96. package/widgets/dialog-resizable-nc/props.js +150 -150
  97. package/widgets/dialog-resizable-nc/scenarios.js +18 -18
  98. package/widgets/dialog-resizable-nc/styles.js +259 -259
  99. package/widgets/dialog-resizable-nc/widget.js +197 -197
  100. package/widgets/directory-input/widget.js +18 -18
  101. package/widgets/directory-input-nc/widget.js +20 -20
  102. package/widgets/document-container/getPath.js +43 -43
  103. package/widgets/document-container/props.js +79 -79
  104. package/widgets/document-container/scenarios.js +39 -39
  105. package/widgets/document-container/styles.js +69 -69
  106. package/widgets/document-container/widget.js +53 -53
  107. package/widgets/drag-cab/styles.js +56 -56
  108. package/widgets/drag-cab/widget.js +285 -285
  109. package/widgets/drag-carrier/styles.js +21 -21
  110. package/widgets/drag-carrier/widget.js +780 -780
  111. package/widgets/dynamic-toolbar/styles.js +110 -110
  112. package/widgets/dynamic-toolbar/widget.js +128 -128
  113. package/widgets/field/readonly/label.js +39 -39
  114. package/widgets/field/widget.js +1743 -1743
  115. package/widgets/file-input/widget.js +18 -18
  116. package/widgets/file-input-nc/styles.js +38 -38
  117. package/widgets/file-input-nc/widget.js +88 -88
  118. package/widgets/flat-combo/styles.js +21 -21
  119. package/widgets/flat-combo/widget.js +61 -61
  120. package/widgets/flat-list/styles.js +30 -30
  121. package/widgets/flat-list/widget.js +219 -219
  122. package/widgets/flying-balloon/styles.js +52 -52
  123. package/widgets/flying-balloon/widget.js +43 -43
  124. package/widgets/fragment/widget.js +26 -26
  125. package/widgets/full-screen/props.js +27 -27
  126. package/widgets/full-screen/styles.js +32 -32
  127. package/widgets/full-screen/widget.js +40 -40
  128. package/widgets/gauge/props.js +71 -71
  129. package/widgets/gauge/scenarios.js +83 -83
  130. package/widgets/gauge/styles.js +183 -183
  131. package/widgets/gauge/widget.js +36 -36
  132. package/widgets/glyph-detail/service.js +9 -9
  133. package/widgets/glyph-detail/widget.js +109 -109
  134. package/widgets/glyphs-dialog/service.js +94 -94
  135. package/widgets/glyphs-dialog/styles.js +37 -37
  136. package/widgets/glyphs-dialog/widget.js +236 -236
  137. package/widgets/goblin-editor/widget.js +146 -146
  138. package/widgets/guild-entry/props.js +53 -53
  139. package/widgets/guild-entry/scenarios.js +26 -26
  140. package/widgets/guild-entry/styles.js +98 -98
  141. package/widgets/guild-entry/widget.js +126 -126
  142. package/widgets/guild-user-logo/guild-helpers.js +77 -77
  143. package/widgets/guild-user-logo/props.js +48 -48
  144. package/widgets/guild-user-logo/scenarios.js +64 -64
  145. package/widgets/guild-user-logo/styles.js +114 -114
  146. package/widgets/guild-user-logo/widget.js +81 -81
  147. package/widgets/guild-user-profile/props.js +73 -73
  148. package/widgets/guild-user-profile/scenarios.js +54 -54
  149. package/widgets/guild-user-profile/styles.js +162 -162
  150. package/widgets/guild-user-profile/widget.js +202 -202
  151. package/widgets/helpers/combo-helpers.js +218 -218
  152. package/widgets/helpers/geom-helpers.js +80 -80
  153. package/widgets/helpers/rect-helpers.js +10 -10
  154. package/widgets/helpers/shortcut-helpers.js +56 -56
  155. package/widgets/helpers/spacing-helpers.js +26 -26
  156. package/widgets/helpers/svg-helpers.js +151 -151
  157. package/widgets/helpers/table-helpers.js +68 -68
  158. package/widgets/hinter/styles.js +79 -79
  159. package/widgets/hinter/widget.js +205 -205
  160. package/widgets/hinter-column/widget.js +49 -49
  161. package/widgets/hinter-field/reducer.js +18 -18
  162. package/widgets/hinter-field/widget.js +176 -176
  163. package/widgets/hinter-field-nc/props.js +114 -114
  164. package/widgets/hinter-field-nc/scenarios.js +47 -47
  165. package/widgets/hinter-field-nc/widget.js +191 -191
  166. package/widgets/input-wrapper/widget.js +157 -157
  167. package/widgets/key-trap.js +96 -96
  168. package/widgets/label/props.js +1 -1
  169. package/widgets/label/scenarios.js +1 -1
  170. package/widgets/label/widget.js +7 -7
  171. package/widgets/label-nc/props.js +308 -308
  172. package/widgets/label-nc/scenarios.js +29 -29
  173. package/widgets/label-nc/styles.js +1218 -1218
  174. package/widgets/label-nc/widget.js +314 -314
  175. package/widgets/label-row/props.js +1 -1
  176. package/widgets/label-row/scenarios.js +1 -1
  177. package/widgets/label-row/widget.js +7 -7
  178. package/widgets/label-row-nc/props.js +94 -94
  179. package/widgets/label-row-nc/scenarios.js +46 -46
  180. package/widgets/label-row-nc/widget.js +81 -81
  181. package/widgets/label-text-field/styles.js +55 -55
  182. package/widgets/label-text-field/widget.js +178 -178
  183. package/widgets/launcher/props.js +177 -177
  184. package/widgets/launcher/scenarios.js +55 -55
  185. package/widgets/launcher/styles.js +46 -46
  186. package/widgets/launcher/widget.js +79 -79
  187. package/widgets/launcher-blob/props.js +25 -25
  188. package/widgets/launcher-blob/scenarios.js +24 -24
  189. package/widgets/launcher-blob/styles.js +62 -62
  190. package/widgets/launcher-blob/widget.js +50 -50
  191. package/widgets/list/widget.js +211 -211
  192. package/widgets/login-dialog/service.js +117 -117
  193. package/widgets/login-dialog/widget.js +117 -117
  194. package/widgets/map/reaflet.js +208 -208
  195. package/widgets/map/widget.js +67 -67
  196. package/widgets/markdown/styles.js +85 -85
  197. package/widgets/markdown/widget.js +31 -31
  198. package/widgets/notification/styles.js +97 -97
  199. package/widgets/notification/widget.js +207 -207
  200. package/widgets/pivot/custom.css +320 -320
  201. package/widgets/pivot/widget.js +42 -42
  202. package/widgets/radio-list/styles.js +48 -48
  203. package/widgets/radio-list/widget.js +111 -111
  204. package/widgets/resizable-container/styles.js +108 -108
  205. package/widgets/resizable-container/widget.js +225 -225
  206. package/widgets/retro-action-button/helpers.js +106 -106
  207. package/widgets/retro-action-button/styles.js +285 -285
  208. package/widgets/retro-action-button/widget.js +364 -364
  209. package/widgets/retro-badge-button/styles.js +87 -87
  210. package/widgets/retro-badge-button/widget.js +251 -251
  211. package/widgets/retro-gear/helpers.js +156 -156
  212. package/widgets/retro-gear/styles.js +130 -130
  213. package/widgets/retro-gear/widget.js +51 -51
  214. package/widgets/retro-illuminated-button/styles.js +274 -274
  215. package/widgets/retro-illuminated-button/widget.js +147 -147
  216. package/widgets/retro-panel/helpers.js +57 -57
  217. package/widgets/retro-panel/styles.js +293 -293
  218. package/widgets/retro-panel/widget.js +239 -239
  219. package/widgets/retro-screw/styles.js +80 -80
  220. package/widgets/retro-screw/widget.js +25 -25
  221. package/widgets/rocket/props.js +124 -124
  222. package/widgets/rocket/scenarios.js +71 -71
  223. package/widgets/rocket/styles.js +306 -306
  224. package/widgets/rocket/widget.js +225 -225
  225. package/widgets/samples-monitor/helpers.js +147 -147
  226. package/widgets/samples-monitor/styles.js +529 -529
  227. package/widgets/samples-monitor/widget.js +516 -516
  228. package/widgets/scrollable-container/styles.js +58 -58
  229. package/widgets/scrollable-container/widget.js +132 -132
  230. package/widgets/scrollable-linkable-container/reducer.js +18 -18
  231. package/widgets/scrollable-linkable-container/styles.js +42 -42
  232. package/widgets/scrollable-linkable-container/widget.js +78 -78
  233. package/widgets/select/styles.js +68 -68
  234. package/widgets/select/widget.js +119 -119
  235. package/widgets/separator/props.js +46 -46
  236. package/widgets/separator/styles.js +116 -116
  237. package/widgets/separator/widget.js +27 -27
  238. package/widgets/slider/props.js +136 -136
  239. package/widgets/slider/scenarios.js +74 -74
  240. package/widgets/slider/styles.js +246 -246
  241. package/widgets/slider/widget.js +404 -404
  242. package/widgets/slider-circle/props.js +72 -72
  243. package/widgets/slider-circle/scenarios.js +16 -16
  244. package/widgets/slider-circle/styles.js +78 -78
  245. package/widgets/slider-circle/widget.js +154 -154
  246. package/widgets/slider-xy/props.js +87 -87
  247. package/widgets/slider-xy/scenarios.js +19 -19
  248. package/widgets/slider-xy/styles.js +102 -102
  249. package/widgets/slider-xy/widget.js +234 -234
  250. package/widgets/smiley/props.js +51 -51
  251. package/widgets/smiley/scenarios.js +58 -58
  252. package/widgets/smiley/styles.js +489 -489
  253. package/widgets/smiley/widget.js +72 -72
  254. package/widgets/spinner/props.js +31 -31
  255. package/widgets/spinner/scenarios.js +31 -31
  256. package/widgets/spinner/styles.js +49 -49
  257. package/widgets/spinner/widget.js +23 -23
  258. package/widgets/splitter/props.js +71 -71
  259. package/widgets/splitter/scenarios.js +182 -182
  260. package/widgets/splitter/styles.js +41 -41
  261. package/widgets/splitter/widget.js +455 -455
  262. package/widgets/stack-navigation/service.js +324 -324
  263. package/widgets/stack-navigation/widget.js +296 -296
  264. package/widgets/state-browser/styles.js +19 -19
  265. package/widgets/state-browser/widget.js +135 -135
  266. package/widgets/state-browser-dialog/styles.js +100 -100
  267. package/widgets/state-browser-dialog/widget.js +253 -253
  268. package/widgets/state-monitor/styles.js +50 -50
  269. package/widgets/state-monitor/widget.js +324 -324
  270. package/widgets/switch-on-off/props.js +30 -30
  271. package/widgets/switch-on-off/scenarios.js +34 -34
  272. package/widgets/switch-on-off/styles.js +63 -63
  273. package/widgets/switch-on-off/widget.js +41 -41
  274. package/widgets/table/helpers.js +160 -160
  275. package/widgets/table/props.js +658 -658
  276. package/widgets/table/reducer.js +196 -196
  277. package/widgets/table/scenarios.js +54 -54
  278. package/widgets/table/widget.js +253 -253
  279. package/widgets/table-cell/props.js +145 -145
  280. package/widgets/table-cell/styles.js +160 -160
  281. package/widgets/table-cell/widget.js +139 -139
  282. package/widgets/table-header-drag-manager/styles.js +184 -184
  283. package/widgets/table-header-drag-manager/widget.js +392 -392
  284. package/widgets/table-nc/styles.js +100 -100
  285. package/widgets/table-nc/widget.js +409 -409
  286. package/widgets/table-row/props.js +73 -73
  287. package/widgets/table-row/styles.js +82 -82
  288. package/widgets/table-row/widget.js +207 -207
  289. package/widgets/text-field/widget.js +18 -18
  290. package/widgets/text-field-combo/widget.js +21 -21
  291. package/widgets/text-field-combo-nc/props.js +300 -300
  292. package/widgets/text-field-combo-nc/scenarios.js +72 -72
  293. package/widgets/text-field-combo-nc/widget.js +339 -339
  294. package/widgets/text-field-date-interval/styles.js +37 -37
  295. package/widgets/text-field-date-interval/widget.js +162 -162
  296. package/widgets/text-field-nc/props.js +40 -40
  297. package/widgets/text-field-nc/scenarios.js +67 -67
  298. package/widgets/text-field-nc/widget.js +14 -14
  299. package/widgets/text-field-time-interval/styles.js +37 -37
  300. package/widgets/text-field-time-interval/widget.js +160 -160
  301. package/widgets/text-field-typed/widget.js +51 -51
  302. package/widgets/text-field-typed-nc/props.js +81 -81
  303. package/widgets/text-field-typed-nc/scenarios.js +105 -105
  304. package/widgets/text-field-typed-nc/styles.js +20 -20
  305. package/widgets/text-field-typed-nc/widget.js +749 -750
  306. package/widgets/text-input-info-nc/props.js +62 -62
  307. package/widgets/text-input-info-nc/widget.js +55 -55
  308. package/widgets/text-input-nc/props.js +143 -143
  309. package/widgets/text-input-nc/scenarios.js +44 -44
  310. package/widgets/text-input-nc/styles.js +242 -242
  311. package/widgets/text-input-nc/widget.js +234 -234
  312. package/widgets/ticket/getPath.js +128 -128
  313. package/widgets/ticket/props.js +181 -181
  314. package/widgets/ticket/scenarios.js +39 -39
  315. package/widgets/ticket/styles.js +332 -332
  316. package/widgets/ticket/ticket-helpers.js +33 -33
  317. package/widgets/ticket/widget.js +348 -348
  318. package/widgets/ticket-hover/styles.js +207 -207
  319. package/widgets/ticket-hover/widget.js +53 -53
  320. package/widgets/time-gauge/widget.js +64 -64
  321. package/widgets/tips/styles.js +48 -48
  322. package/widgets/tips/widget.js +171 -171
  323. package/widgets/translatable-text-field/styles.js +202 -202
  324. package/widgets/translatable-text-field/text-field.js +132 -132
  325. package/widgets/translatable-text-field/widget.js +660 -660
  326. package/widgets/tree/props.js +246 -246
  327. package/widgets/tree/scenarios.js +14 -14
  328. package/widgets/tree/styles.js +142 -142
  329. package/widgets/tree/widget.js +383 -383
  330. package/widgets/tree-cell/styles.js +140 -140
  331. package/widgets/tree-cell/widget.js +100 -100
  332. package/widgets/tree-row/styles.js +77 -77
  333. package/widgets/tree-row/widget.js +135 -135
  334. package/widgets/triangle/props.js +48 -48
  335. package/widgets/triangle/scenarios.js +33 -33
  336. package/widgets/triangle/styles.js +92 -92
  337. package/widgets/triangle/widget.js +36 -36
  338. package/widgets/well-done/widget.js +170 -170
  339. package/widgets/widget-doc/reducer.js +68 -68
  340. package/widgets/widget-doc/styles.js +15 -15
  341. package/widgets/widget-doc/widget-list.js +25 -25
  342. package/widgets/widget-doc/widget.js +89 -89
  343. package/widgets/widget-doc-menu/styles.js +12 -12
  344. package/widgets/widget-doc-menu/widget.js +79 -79
  345. package/widgets/widget-doc-preview/parse-code.js +20 -20
  346. package/widgets/widget-doc-preview/styles.js +77 -77
  347. package/widgets/widget-doc-preview/widget.js +481 -481
  348. package/widgets/widget-doc-preview-container/styles.js +60 -60
  349. package/widgets/widget-doc-preview-container/widget.js +129 -129
  350. package/widgets/widget-doc-properties/styles.js +41 -41
  351. package/widgets/widget-doc-properties/widget.js +307 -307
  352. package/widgets/widget-doc-property/styles.js +75 -75
  353. package/widgets/widget-doc-property/widget.js +108 -108
  354. package/widgets/widget-doc-property-control/styles.js +14 -14
  355. package/widgets/widget-doc-property-control/widget.js +343 -343
  356. package/widgets/wizard/service.js +2132 -2132
  357. package/widgets/wizard/styles.js +21 -21
  358. package/widgets/wizard/widget.js +927 -927
  359. package/widgets/work-dialog/styles.js +31 -31
  360. package/widgets/work-dialog/widget.js +162 -162
  361. package/wizard.js +13 -13
@@ -1,566 +1,566 @@
1
- /******************************************************************************/
2
-
3
- const keyframesNone = {
4
- '0%': {},
5
- };
6
-
7
- /******************************************************************************/
8
-
9
- const centerHorizontal = {
10
- transform: `translate(0)`,
11
- };
12
-
13
- function left(params) {
14
- const {pos = '100'} = params;
15
- return {
16
- transform: `translate(-${pos}%)`,
17
- };
18
- }
19
-
20
- function right(params) {
21
- const {pos = '100'} = params;
22
- return {
23
- transform: `translate(${pos}%)`,
24
- };
25
- }
26
-
27
- function keyframesRightToCenter(params) {
28
- return {
29
- '0%': {...right(params)},
30
- '100%': {...centerHorizontal},
31
- };
32
- }
33
-
34
- function keyframesCenterToRight(params) {
35
- return {
36
- '0%': {...centerHorizontal},
37
- '100%': {...right(params)},
38
- };
39
- }
40
-
41
- function keyframesCenterToLeft(params) {
42
- return {
43
- '0%': {...centerHorizontal},
44
- '100%': {...left(params)},
45
- };
46
- }
47
-
48
- function keyframesLeftToCenter(params) {
49
- return {
50
- '0%': {...left(params)},
51
- '100%': {...centerHorizontal},
52
- };
53
- }
54
-
55
- /******************************************************************************/
56
-
57
- const centerVertical = {
58
- transform: `translate(0, 0)`,
59
- };
60
-
61
- function top(params) {
62
- const {pos = '100'} = params;
63
- return {
64
- transform: `translate(0, -${pos}%)`,
65
- };
66
- }
67
-
68
- function bottom(params) {
69
- const {pos = '100'} = params;
70
- return {
71
- transform: `translate(0, ${pos}%)`,
72
- };
73
- }
74
-
75
- function keyframesBottomToCenter(params) {
76
- return {
77
- '0%': {...bottom(params)},
78
- '100%': {...centerVertical},
79
- };
80
- }
81
-
82
- function keyframesCenterToBottom(params) {
83
- return {
84
- '0%': {...centerVertical},
85
- '100%': {...bottom(params)},
86
- };
87
- }
88
-
89
- function keyframesCenterToTop(params) {
90
- return {
91
- '0%': {...centerVertical},
92
- '100%': {...top(params)},
93
- };
94
- }
95
-
96
- function keyframesTopToCenter(params) {
97
- return {
98
- '0%': {...top(params)},
99
- '100%': {...centerVertical},
100
- };
101
- }
102
-
103
- /******************************************************************************/
104
-
105
- const center = {
106
- transform: `translate(0, 0)`,
107
- };
108
-
109
- // Do not go to the edge to have a not too big movement
110
- function topLeft(params) {
111
- const {posX = 100, posY = 100} = params;
112
- return {
113
- transform: `translate(-${posX}%, -${posY}%)`,
114
- };
115
- }
116
-
117
- function topRight(params) {
118
- const {posX = 100, posY = 100} = params;
119
- return {
120
- transform: `translate(${posX}%, -${posY}%)`,
121
- };
122
- }
123
-
124
- function bottomLeft(params) {
125
- const {posX = 100, posY = 100} = params;
126
- return {
127
- transform: `translate(-${posX}%, ${posY}%)`,
128
- };
129
- }
130
-
131
- function bottomRight(params) {
132
- const {posX = 100, posY = 100} = params;
133
- return {
134
- transform: `translate(${posX}%, ${posY}%)`,
135
- };
136
- }
137
-
138
- function keyframesBottomLeftToCenter(params) {
139
- return {
140
- '0%': {...bottomLeft(params)},
141
- '100%': {...center},
142
- };
143
- }
144
-
145
- function keyframesCenterToBottomLeft(params) {
146
- return {
147
- '0%': {...center},
148
- '100%': {...bottomLeft(params)},
149
- };
150
- }
151
-
152
- function keyframesBottomRightToCenter(params) {
153
- return {
154
- '0%': {...bottomRight(params)},
155
- '100%': {...center},
156
- };
157
- }
158
-
159
- function keyframesCenterToBottomRight(params) {
160
- return {
161
- '0%': {...center},
162
- '100%': {...bottomRight(params)},
163
- };
164
- }
165
-
166
- function keyframesCenterToTopLeft(params) {
167
- return {
168
- '0%': {...center},
169
- '100%': {...topLeft(params)},
170
- };
171
- }
172
-
173
- function keyframesTopLeftToCenter(params) {
174
- return {
175
- '0%': {...topLeft(params)},
176
- '100%': {...center},
177
- };
178
- }
179
-
180
- function keyframesCenterToTopRight(params) {
181
- return {
182
- '0%': {...center},
183
- '100%': {...topRight(params)},
184
- };
185
- }
186
-
187
- function keyframesTopRightToCenter(params) {
188
- return {
189
- '0%': {...topRight(params)},
190
- '100%': {...center},
191
- };
192
- }
193
-
194
- /******************************************************************************/
195
-
196
- function keyframesFadeIn(params) {
197
- const {fadeIn = 0, fadeOut = 1} = params;
198
- return {
199
- '0%': {
200
- opacity: fadeIn,
201
- },
202
- '100%': {
203
- opacity: fadeOut,
204
- },
205
- };
206
- }
207
-
208
- function keyframesFadeOut(params) {
209
- const {fadeIn = 1, fadeOut = 0} = params;
210
- return {
211
- '0%': {
212
- opacity: fadeIn,
213
- },
214
- '100%': {
215
- opacity: fadeOut,
216
- },
217
- };
218
- }
219
-
220
- /******************************************************************************/
221
-
222
- function keyframesZoomIn(params) {
223
- const {zoomIn = 0.5, zoomOut = 1} = params;
224
- return {
225
- '0%': {
226
- transform: `scale(${zoomIn})`,
227
- opacity: 0,
228
- },
229
- '75%': {
230
- opacity: 1,
231
- },
232
- '100%': {
233
- transform: `scale(${zoomOut})`,
234
- opacity: 1,
235
- },
236
- };
237
- }
238
-
239
- // For timingFunction, see https://cubic-bezier.com
240
- function keyframesZoomInBounce(params) {
241
- const {zoomIn = 0, zoomOut = 1} = params;
242
- return {
243
- '0%': {
244
- animationTimingFunction: 'cubic-bezier(.4,0,0.2,1.6)',
245
- transform: `scale(${zoomIn})`,
246
- },
247
- '100%': {
248
- transform: `scale(${zoomOut})`,
249
- },
250
- };
251
- }
252
-
253
- function keyframesZoomOut(params) {
254
- const {zoomIn = 1, zoomOut = 0.5} = params;
255
- return {
256
- '0%': {
257
- transform: `scale(${zoomIn})`,
258
- opacity: 1,
259
- },
260
- '25%': {
261
- opacity: 1,
262
- },
263
- '100%': {
264
- transform: `scale(${zoomOut})`,
265
- opacity: 0,
266
- },
267
- };
268
- }
269
-
270
- function keyframesZoomInX(params) {
271
- const {zoomIn = 0.33, zoomOut = 1} = params;
272
- return {
273
- '0%': {
274
- transform: `scaleX(${zoomIn})`,
275
- opacity: 0,
276
- },
277
- '75%': {
278
- opacity: 1,
279
- },
280
- '100%': {
281
- transform: `scaleX(${zoomOut})`,
282
- opacity: 1,
283
- },
284
- };
285
- }
286
-
287
- function keyframesZoomOutX(params) {
288
- const {zoomIn = 1, zoomOut = 0.33} = params;
289
- return {
290
- '0%': {
291
- transform: `scaleX(${zoomIn})`,
292
- opacity: 1,
293
- },
294
- '25%': {
295
- opacity: 1,
296
- },
297
- '100%': {
298
- transform: `scaleX(${zoomOut})`,
299
- opacity: 0,
300
- },
301
- };
302
- }
303
-
304
- function keyframesZoomInY(params) {
305
- const {zoomIn = 0.33, zoomOut = 1} = params;
306
- return {
307
- '0%': {
308
- transform: `scaleY(${zoomIn})`,
309
- opacity: 0,
310
- },
311
- '75%': {
312
- opacity: 1,
313
- },
314
- '100%': {
315
- transform: `scaleY(${zoomOut})`,
316
- opacity: 1,
317
- },
318
- };
319
- }
320
-
321
- function keyframesZoomOutY(params) {
322
- const {zoomIn = 1, zoomOut = 0.33} = params;
323
- return {
324
- '0%': {
325
- transform: `scaleY(${zoomIn})`,
326
- opacity: 1,
327
- },
328
- '25%': {
329
- opacity: 1,
330
- },
331
- '100%': {
332
- transform: `scaleY(${zoomOut})`,
333
- opacity: 0,
334
- },
335
- };
336
- }
337
-
338
- /******************************************************************************/
339
-
340
- const animations = {
341
- none: function () {
342
- return {
343
- name: keyframesNone,
344
- duration: '0s',
345
- timingFunction: 'ease',
346
- };
347
- },
348
-
349
- rightToCenter: function (params) {
350
- const {duration = '0.5s'} = params;
351
- return {
352
- name: keyframesRightToCenter(params),
353
- duration,
354
- timingFunction: 'ease',
355
- };
356
- },
357
- centerToRight: function (params) {
358
- const {duration = '0.5s'} = params;
359
- return {
360
- name: keyframesCenterToRight(params),
361
- duration,
362
- timingFunction: 'ease',
363
- };
364
- },
365
- centerToLeft: function (params) {
366
- const {duration = '0.5s'} = params;
367
- return {
368
- name: keyframesCenterToLeft(params),
369
- duration,
370
- timingFunction: 'ease',
371
- };
372
- },
373
- leftToCenter: function (params) {
374
- const {duration = '0.5s'} = params;
375
- return {
376
- name: keyframesLeftToCenter(params),
377
- duration,
378
- timingFunction: 'ease',
379
- };
380
- },
381
-
382
- bottomToCenter: function (params) {
383
- const {duration = '0.5s'} = params;
384
- return {
385
- name: keyframesBottomToCenter(params),
386
- duration,
387
- timingFunction: 'ease',
388
- };
389
- },
390
- centerToBottom: function (params) {
391
- const {duration = '0.5s'} = params;
392
- return {
393
- name: keyframesCenterToBottom(params),
394
- duration,
395
- timingFunction: 'ease',
396
- };
397
- },
398
- centerToTop: function (params) {
399
- const {duration = '0.5s'} = params;
400
- return {
401
- name: keyframesCenterToTop(params),
402
- duration,
403
- timingFunction: 'ease',
404
- };
405
- },
406
- topToCenter: function (params) {
407
- const {duration = '0.5s'} = params;
408
- return {
409
- name: keyframesTopToCenter(params),
410
- duration,
411
- timingFunction: 'ease',
412
- };
413
- },
414
-
415
- bottomLeftToCenter: function (params) {
416
- const {duration = '0.5s'} = params;
417
- return {
418
- name: keyframesBottomLeftToCenter(params),
419
- duration,
420
- timingFunction: 'ease',
421
- };
422
- },
423
- centerToBottomLeft: function (params) {
424
- const {duration = '0.5s'} = params;
425
- return {
426
- name: keyframesCenterToBottomLeft(params),
427
- duration,
428
- timingFunction: 'ease',
429
- };
430
- },
431
- bottomRightToCenter: function (params) {
432
- const {duration = '0.5s'} = params;
433
- return {
434
- name: keyframesBottomRightToCenter(params),
435
- duration,
436
- timingFunction: 'ease',
437
- };
438
- },
439
- centerToBottomRight: function (params) {
440
- const {duration = '0.5s'} = params;
441
- return {
442
- name: keyframesCenterToBottomRight(params),
443
- duration,
444
- timingFunction: 'ease',
445
- };
446
- },
447
- centerToTopLeft: function (params) {
448
- const {duration = '0.5s'} = params;
449
- return {
450
- name: keyframesCenterToTopLeft(params),
451
- duration,
452
- timingFunction: 'ease',
453
- };
454
- },
455
- topLeftToCenter: function (params) {
456
- const {duration = '0.5s'} = params;
457
- return {
458
- name: keyframesTopLeftToCenter(params),
459
- duration,
460
- timingFunction: 'ease',
461
- };
462
- },
463
- centerToTopRight: function (params) {
464
- const {duration = '0.5s'} = params;
465
- return {
466
- name: keyframesCenterToTopRight(params),
467
- duration,
468
- timingFunction: 'ease',
469
- };
470
- },
471
- topRightToCenter: function (params) {
472
- const {duration = '0.5s'} = params;
473
- return {
474
- name: keyframesTopRightToCenter(params),
475
- duration,
476
- timingFunction: 'ease',
477
- };
478
- },
479
-
480
- fadeIn: function (params) {
481
- const {duration = '0.4s'} = params;
482
- return {
483
- name: keyframesFadeIn(params),
484
- duration,
485
- timingFunction: 'ease',
486
- };
487
- },
488
- fadeOut: function (params) {
489
- const {duration = '0.4s'} = params;
490
- return {
491
- name: keyframesFadeOut(params),
492
- duration,
493
- timingFunction: 'ease',
494
- };
495
- },
496
-
497
- zoomIn: function (params) {
498
- const {duration = '0.4s'} = params;
499
- return {
500
- name: keyframesZoomIn(params),
501
- duration,
502
- timingFunction: 'ease',
503
- };
504
- },
505
- zoomInBounce: function (params) {
506
- const {duration = '0.4s'} = params;
507
- return {
508
- name: keyframesZoomInBounce(params),
509
- duration,
510
- timingFunction: 'ease',
511
- };
512
- },
513
- zoomOut: function (params) {
514
- const {duration = '0.4s'} = params;
515
- return {
516
- name: keyframesZoomOut(params),
517
- duration,
518
- timingFunction: 'ease',
519
- };
520
- },
521
-
522
- zoomInX: function (params) {
523
- const {duration = '0.6s'} = params;
524
- return {
525
- name: keyframesZoomInX(params),
526
- duration,
527
- timingFunction: 'ease',
528
- };
529
- },
530
- zoomOutX: function (params) {
531
- const {duration = '0.6s'} = params;
532
- return {
533
- name: keyframesZoomOutX(params),
534
- duration,
535
- timingFunction: 'ease',
536
- };
537
- },
538
-
539
- zoomInY: function (params) {
540
- const {duration = '0.6s'} = params;
541
- return {
542
- name: keyframesZoomInY(params),
543
- duration,
544
- timingFunction: 'ease',
545
- };
546
- },
547
- zoomOutY: function (params) {
548
- const {duration = '0.6s'} = params;
549
- return {
550
- name: keyframesZoomOutY(params),
551
- duration,
552
- timingFunction: 'ease',
553
- };
554
- },
555
- };
556
-
557
- export default function getAnimation(animation, params = {}) {
558
- const f = animations[animation];
559
- if (f) {
560
- return f(params);
561
- } else {
562
- return null;
563
- }
564
- }
565
-
566
- /******************************************************************************/
1
+ /******************************************************************************/
2
+
3
+ const keyframesNone = {
4
+ '0%': {},
5
+ };
6
+
7
+ /******************************************************************************/
8
+
9
+ const centerHorizontal = {
10
+ transform: `translate(0)`,
11
+ };
12
+
13
+ function left(params) {
14
+ const {pos = '100'} = params;
15
+ return {
16
+ transform: `translate(-${pos}%)`,
17
+ };
18
+ }
19
+
20
+ function right(params) {
21
+ const {pos = '100'} = params;
22
+ return {
23
+ transform: `translate(${pos}%)`,
24
+ };
25
+ }
26
+
27
+ function keyframesRightToCenter(params) {
28
+ return {
29
+ '0%': {...right(params)},
30
+ '100%': {...centerHorizontal},
31
+ };
32
+ }
33
+
34
+ function keyframesCenterToRight(params) {
35
+ return {
36
+ '0%': {...centerHorizontal},
37
+ '100%': {...right(params)},
38
+ };
39
+ }
40
+
41
+ function keyframesCenterToLeft(params) {
42
+ return {
43
+ '0%': {...centerHorizontal},
44
+ '100%': {...left(params)},
45
+ };
46
+ }
47
+
48
+ function keyframesLeftToCenter(params) {
49
+ return {
50
+ '0%': {...left(params)},
51
+ '100%': {...centerHorizontal},
52
+ };
53
+ }
54
+
55
+ /******************************************************************************/
56
+
57
+ const centerVertical = {
58
+ transform: `translate(0, 0)`,
59
+ };
60
+
61
+ function top(params) {
62
+ const {pos = '100'} = params;
63
+ return {
64
+ transform: `translate(0, -${pos}%)`,
65
+ };
66
+ }
67
+
68
+ function bottom(params) {
69
+ const {pos = '100'} = params;
70
+ return {
71
+ transform: `translate(0, ${pos}%)`,
72
+ };
73
+ }
74
+
75
+ function keyframesBottomToCenter(params) {
76
+ return {
77
+ '0%': {...bottom(params)},
78
+ '100%': {...centerVertical},
79
+ };
80
+ }
81
+
82
+ function keyframesCenterToBottom(params) {
83
+ return {
84
+ '0%': {...centerVertical},
85
+ '100%': {...bottom(params)},
86
+ };
87
+ }
88
+
89
+ function keyframesCenterToTop(params) {
90
+ return {
91
+ '0%': {...centerVertical},
92
+ '100%': {...top(params)},
93
+ };
94
+ }
95
+
96
+ function keyframesTopToCenter(params) {
97
+ return {
98
+ '0%': {...top(params)},
99
+ '100%': {...centerVertical},
100
+ };
101
+ }
102
+
103
+ /******************************************************************************/
104
+
105
+ const center = {
106
+ transform: `translate(0, 0)`,
107
+ };
108
+
109
+ // Do not go to the edge to have a not too big movement
110
+ function topLeft(params) {
111
+ const {posX = 100, posY = 100} = params;
112
+ return {
113
+ transform: `translate(-${posX}%, -${posY}%)`,
114
+ };
115
+ }
116
+
117
+ function topRight(params) {
118
+ const {posX = 100, posY = 100} = params;
119
+ return {
120
+ transform: `translate(${posX}%, -${posY}%)`,
121
+ };
122
+ }
123
+
124
+ function bottomLeft(params) {
125
+ const {posX = 100, posY = 100} = params;
126
+ return {
127
+ transform: `translate(-${posX}%, ${posY}%)`,
128
+ };
129
+ }
130
+
131
+ function bottomRight(params) {
132
+ const {posX = 100, posY = 100} = params;
133
+ return {
134
+ transform: `translate(${posX}%, ${posY}%)`,
135
+ };
136
+ }
137
+
138
+ function keyframesBottomLeftToCenter(params) {
139
+ return {
140
+ '0%': {...bottomLeft(params)},
141
+ '100%': {...center},
142
+ };
143
+ }
144
+
145
+ function keyframesCenterToBottomLeft(params) {
146
+ return {
147
+ '0%': {...center},
148
+ '100%': {...bottomLeft(params)},
149
+ };
150
+ }
151
+
152
+ function keyframesBottomRightToCenter(params) {
153
+ return {
154
+ '0%': {...bottomRight(params)},
155
+ '100%': {...center},
156
+ };
157
+ }
158
+
159
+ function keyframesCenterToBottomRight(params) {
160
+ return {
161
+ '0%': {...center},
162
+ '100%': {...bottomRight(params)},
163
+ };
164
+ }
165
+
166
+ function keyframesCenterToTopLeft(params) {
167
+ return {
168
+ '0%': {...center},
169
+ '100%': {...topLeft(params)},
170
+ };
171
+ }
172
+
173
+ function keyframesTopLeftToCenter(params) {
174
+ return {
175
+ '0%': {...topLeft(params)},
176
+ '100%': {...center},
177
+ };
178
+ }
179
+
180
+ function keyframesCenterToTopRight(params) {
181
+ return {
182
+ '0%': {...center},
183
+ '100%': {...topRight(params)},
184
+ };
185
+ }
186
+
187
+ function keyframesTopRightToCenter(params) {
188
+ return {
189
+ '0%': {...topRight(params)},
190
+ '100%': {...center},
191
+ };
192
+ }
193
+
194
+ /******************************************************************************/
195
+
196
+ function keyframesFadeIn(params) {
197
+ const {fadeIn = 0, fadeOut = 1} = params;
198
+ return {
199
+ '0%': {
200
+ opacity: fadeIn,
201
+ },
202
+ '100%': {
203
+ opacity: fadeOut,
204
+ },
205
+ };
206
+ }
207
+
208
+ function keyframesFadeOut(params) {
209
+ const {fadeIn = 1, fadeOut = 0} = params;
210
+ return {
211
+ '0%': {
212
+ opacity: fadeIn,
213
+ },
214
+ '100%': {
215
+ opacity: fadeOut,
216
+ },
217
+ };
218
+ }
219
+
220
+ /******************************************************************************/
221
+
222
+ function keyframesZoomIn(params) {
223
+ const {zoomIn = 0.5, zoomOut = 1} = params;
224
+ return {
225
+ '0%': {
226
+ transform: `scale(${zoomIn})`,
227
+ opacity: 0,
228
+ },
229
+ '75%': {
230
+ opacity: 1,
231
+ },
232
+ '100%': {
233
+ transform: `scale(${zoomOut})`,
234
+ opacity: 1,
235
+ },
236
+ };
237
+ }
238
+
239
+ // For timingFunction, see https://cubic-bezier.com
240
+ function keyframesZoomInBounce(params) {
241
+ const {zoomIn = 0, zoomOut = 1} = params;
242
+ return {
243
+ '0%': {
244
+ animationTimingFunction: 'cubic-bezier(.4,0,0.2,1.6)',
245
+ transform: `scale(${zoomIn})`,
246
+ },
247
+ '100%': {
248
+ transform: `scale(${zoomOut})`,
249
+ },
250
+ };
251
+ }
252
+
253
+ function keyframesZoomOut(params) {
254
+ const {zoomIn = 1, zoomOut = 0.5} = params;
255
+ return {
256
+ '0%': {
257
+ transform: `scale(${zoomIn})`,
258
+ opacity: 1,
259
+ },
260
+ '25%': {
261
+ opacity: 1,
262
+ },
263
+ '100%': {
264
+ transform: `scale(${zoomOut})`,
265
+ opacity: 0,
266
+ },
267
+ };
268
+ }
269
+
270
+ function keyframesZoomInX(params) {
271
+ const {zoomIn = 0.33, zoomOut = 1} = params;
272
+ return {
273
+ '0%': {
274
+ transform: `scaleX(${zoomIn})`,
275
+ opacity: 0,
276
+ },
277
+ '75%': {
278
+ opacity: 1,
279
+ },
280
+ '100%': {
281
+ transform: `scaleX(${zoomOut})`,
282
+ opacity: 1,
283
+ },
284
+ };
285
+ }
286
+
287
+ function keyframesZoomOutX(params) {
288
+ const {zoomIn = 1, zoomOut = 0.33} = params;
289
+ return {
290
+ '0%': {
291
+ transform: `scaleX(${zoomIn})`,
292
+ opacity: 1,
293
+ },
294
+ '25%': {
295
+ opacity: 1,
296
+ },
297
+ '100%': {
298
+ transform: `scaleX(${zoomOut})`,
299
+ opacity: 0,
300
+ },
301
+ };
302
+ }
303
+
304
+ function keyframesZoomInY(params) {
305
+ const {zoomIn = 0.33, zoomOut = 1} = params;
306
+ return {
307
+ '0%': {
308
+ transform: `scaleY(${zoomIn})`,
309
+ opacity: 0,
310
+ },
311
+ '75%': {
312
+ opacity: 1,
313
+ },
314
+ '100%': {
315
+ transform: `scaleY(${zoomOut})`,
316
+ opacity: 1,
317
+ },
318
+ };
319
+ }
320
+
321
+ function keyframesZoomOutY(params) {
322
+ const {zoomIn = 1, zoomOut = 0.33} = params;
323
+ return {
324
+ '0%': {
325
+ transform: `scaleY(${zoomIn})`,
326
+ opacity: 1,
327
+ },
328
+ '25%': {
329
+ opacity: 1,
330
+ },
331
+ '100%': {
332
+ transform: `scaleY(${zoomOut})`,
333
+ opacity: 0,
334
+ },
335
+ };
336
+ }
337
+
338
+ /******************************************************************************/
339
+
340
+ const animations = {
341
+ none: function () {
342
+ return {
343
+ name: keyframesNone,
344
+ duration: '0s',
345
+ timingFunction: 'ease',
346
+ };
347
+ },
348
+
349
+ rightToCenter: function (params) {
350
+ const {duration = '0.5s'} = params;
351
+ return {
352
+ name: keyframesRightToCenter(params),
353
+ duration,
354
+ timingFunction: 'ease',
355
+ };
356
+ },
357
+ centerToRight: function (params) {
358
+ const {duration = '0.5s'} = params;
359
+ return {
360
+ name: keyframesCenterToRight(params),
361
+ duration,
362
+ timingFunction: 'ease',
363
+ };
364
+ },
365
+ centerToLeft: function (params) {
366
+ const {duration = '0.5s'} = params;
367
+ return {
368
+ name: keyframesCenterToLeft(params),
369
+ duration,
370
+ timingFunction: 'ease',
371
+ };
372
+ },
373
+ leftToCenter: function (params) {
374
+ const {duration = '0.5s'} = params;
375
+ return {
376
+ name: keyframesLeftToCenter(params),
377
+ duration,
378
+ timingFunction: 'ease',
379
+ };
380
+ },
381
+
382
+ bottomToCenter: function (params) {
383
+ const {duration = '0.5s'} = params;
384
+ return {
385
+ name: keyframesBottomToCenter(params),
386
+ duration,
387
+ timingFunction: 'ease',
388
+ };
389
+ },
390
+ centerToBottom: function (params) {
391
+ const {duration = '0.5s'} = params;
392
+ return {
393
+ name: keyframesCenterToBottom(params),
394
+ duration,
395
+ timingFunction: 'ease',
396
+ };
397
+ },
398
+ centerToTop: function (params) {
399
+ const {duration = '0.5s'} = params;
400
+ return {
401
+ name: keyframesCenterToTop(params),
402
+ duration,
403
+ timingFunction: 'ease',
404
+ };
405
+ },
406
+ topToCenter: function (params) {
407
+ const {duration = '0.5s'} = params;
408
+ return {
409
+ name: keyframesTopToCenter(params),
410
+ duration,
411
+ timingFunction: 'ease',
412
+ };
413
+ },
414
+
415
+ bottomLeftToCenter: function (params) {
416
+ const {duration = '0.5s'} = params;
417
+ return {
418
+ name: keyframesBottomLeftToCenter(params),
419
+ duration,
420
+ timingFunction: 'ease',
421
+ };
422
+ },
423
+ centerToBottomLeft: function (params) {
424
+ const {duration = '0.5s'} = params;
425
+ return {
426
+ name: keyframesCenterToBottomLeft(params),
427
+ duration,
428
+ timingFunction: 'ease',
429
+ };
430
+ },
431
+ bottomRightToCenter: function (params) {
432
+ const {duration = '0.5s'} = params;
433
+ return {
434
+ name: keyframesBottomRightToCenter(params),
435
+ duration,
436
+ timingFunction: 'ease',
437
+ };
438
+ },
439
+ centerToBottomRight: function (params) {
440
+ const {duration = '0.5s'} = params;
441
+ return {
442
+ name: keyframesCenterToBottomRight(params),
443
+ duration,
444
+ timingFunction: 'ease',
445
+ };
446
+ },
447
+ centerToTopLeft: function (params) {
448
+ const {duration = '0.5s'} = params;
449
+ return {
450
+ name: keyframesCenterToTopLeft(params),
451
+ duration,
452
+ timingFunction: 'ease',
453
+ };
454
+ },
455
+ topLeftToCenter: function (params) {
456
+ const {duration = '0.5s'} = params;
457
+ return {
458
+ name: keyframesTopLeftToCenter(params),
459
+ duration,
460
+ timingFunction: 'ease',
461
+ };
462
+ },
463
+ centerToTopRight: function (params) {
464
+ const {duration = '0.5s'} = params;
465
+ return {
466
+ name: keyframesCenterToTopRight(params),
467
+ duration,
468
+ timingFunction: 'ease',
469
+ };
470
+ },
471
+ topRightToCenter: function (params) {
472
+ const {duration = '0.5s'} = params;
473
+ return {
474
+ name: keyframesTopRightToCenter(params),
475
+ duration,
476
+ timingFunction: 'ease',
477
+ };
478
+ },
479
+
480
+ fadeIn: function (params) {
481
+ const {duration = '0.4s'} = params;
482
+ return {
483
+ name: keyframesFadeIn(params),
484
+ duration,
485
+ timingFunction: 'ease',
486
+ };
487
+ },
488
+ fadeOut: function (params) {
489
+ const {duration = '0.4s'} = params;
490
+ return {
491
+ name: keyframesFadeOut(params),
492
+ duration,
493
+ timingFunction: 'ease',
494
+ };
495
+ },
496
+
497
+ zoomIn: function (params) {
498
+ const {duration = '0.4s'} = params;
499
+ return {
500
+ name: keyframesZoomIn(params),
501
+ duration,
502
+ timingFunction: 'ease',
503
+ };
504
+ },
505
+ zoomInBounce: function (params) {
506
+ const {duration = '0.4s'} = params;
507
+ return {
508
+ name: keyframesZoomInBounce(params),
509
+ duration,
510
+ timingFunction: 'ease',
511
+ };
512
+ },
513
+ zoomOut: function (params) {
514
+ const {duration = '0.4s'} = params;
515
+ return {
516
+ name: keyframesZoomOut(params),
517
+ duration,
518
+ timingFunction: 'ease',
519
+ };
520
+ },
521
+
522
+ zoomInX: function (params) {
523
+ const {duration = '0.6s'} = params;
524
+ return {
525
+ name: keyframesZoomInX(params),
526
+ duration,
527
+ timingFunction: 'ease',
528
+ };
529
+ },
530
+ zoomOutX: function (params) {
531
+ const {duration = '0.6s'} = params;
532
+ return {
533
+ name: keyframesZoomOutX(params),
534
+ duration,
535
+ timingFunction: 'ease',
536
+ };
537
+ },
538
+
539
+ zoomInY: function (params) {
540
+ const {duration = '0.6s'} = params;
541
+ return {
542
+ name: keyframesZoomInY(params),
543
+ duration,
544
+ timingFunction: 'ease',
545
+ };
546
+ },
547
+ zoomOutY: function (params) {
548
+ const {duration = '0.6s'} = params;
549
+ return {
550
+ name: keyframesZoomOutY(params),
551
+ duration,
552
+ timingFunction: 'ease',
553
+ };
554
+ },
555
+ };
556
+
557
+ export default function getAnimation(animation, params = {}) {
558
+ const f = animations[animation];
559
+ if (f) {
560
+ return f(params);
561
+ } else {
562
+ return null;
563
+ }
564
+ }
565
+
566
+ /******************************************************************************/