@pdfme/ui 1.1.4 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/.eslintrc.js +2 -2
  2. package/dist/index.js +3 -0
  3. package/dist/index.js.LICENSE.txt +95 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/types/{src/Designer.d.ts → Designer.d.ts} +1 -1
  6. package/dist/types/{src/Form.d.ts → Form.d.ts} +1 -1
  7. package/dist/types/{src/Viewer.d.ts → Viewer.d.ts} +1 -1
  8. package/dist/types/{src/class.d.ts → class.d.ts} +2 -4
  9. package/dist/types/{src/components → components}/CtlBar/Pager.d.ts +0 -1
  10. package/dist/types/{src/components → components}/CtlBar/Zoom.d.ts +0 -1
  11. package/dist/types/{src/components → components}/CtlBar/index.d.ts +0 -1
  12. package/dist/types/{src/components → components}/Designer/Main/Mask.d.ts +0 -1
  13. package/dist/types/components/Designer/Main/Moveable.d.ts +32 -0
  14. package/dist/types/{src/components → components}/Designer/Main/Selecto.d.ts +0 -1
  15. package/dist/types/{src/components → components}/Designer/Sidebar/DetailView/ExampleInputEditor.d.ts +0 -1
  16. package/dist/types/{src/components → components}/Designer/Sidebar/DetailView/PositionAndSizeEditor.d.ts +1 -2
  17. package/dist/types/{src/components → components}/Designer/Sidebar/DetailView/TextPropEditor.d.ts +0 -1
  18. package/dist/types/{src/components → components}/Designer/Sidebar/DetailView/TypeAndKeyEditor.d.ts +1 -2
  19. package/dist/types/{src/components → components}/Designer/Sidebar/DetailView/index.d.ts +1 -2
  20. package/dist/types/{src/components → components}/Designer/Sidebar/ListView/SelectableSortableContainer.d.ts +1 -2
  21. package/dist/types/{src/components → components}/Designer/Sidebar/ListView/index.d.ts +1 -2
  22. package/dist/types/{src/components → components}/Designer/Sidebar/index.d.ts +0 -1
  23. package/dist/types/{src/components → components}/Designer/index.d.ts +1 -2
  24. package/dist/types/{src/components → components}/Divider.d.ts +0 -1
  25. package/dist/types/{src/components → components}/Error.d.ts +0 -1
  26. package/dist/types/{src/components → components}/Preview.d.ts +0 -1
  27. package/dist/types/{src/components → components}/Schemas/BarcodeSchema.d.ts +1 -1
  28. package/dist/types/{src/components → components}/Schemas/ImageSchema.d.ts +1 -1
  29. package/dist/types/{src/components → components}/Schemas/SchemaUI.d.ts +1 -1
  30. package/dist/types/{src/components → components}/Schemas/TextSchema.d.ts +1 -1
  31. package/dist/types/{src/components → components}/Spinner.d.ts +0 -1
  32. package/dist/types/{src/components → components}/UnitPager.d.ts +0 -1
  33. package/dist/types/{src/contexts.d.ts → contexts.d.ts} +2 -2
  34. package/dist/types/{src/helper.d.ts → helper.d.ts} +0 -1
  35. package/dist/types/index.d.ts +7 -0
  36. package/package.json +16 -23
  37. package/src/Designer.tsx +10 -8
  38. package/src/Form.tsx +9 -7
  39. package/src/Viewer.tsx +9 -7
  40. package/src/class.ts +6 -10
  41. package/src/components/CtlBar/Pager.tsx +1 -1
  42. package/src/components/CtlBar/index.tsx +2 -2
  43. package/src/components/Designer/Main/Guides.tsx +1 -1
  44. package/src/components/Designer/Main/Mask.tsx +1 -1
  45. package/src/components/Designer/Main/Moveable.tsx +27 -15
  46. package/src/components/Designer/Main/Selecto.tsx +1 -1
  47. package/src/components/Designer/Main/index.tsx +55 -38
  48. package/src/components/Designer/Sidebar/DetailView/ExampleInputEditor.tsx +5 -5
  49. package/src/components/Designer/Sidebar/DetailView/PositionAndSizeEditor.tsx +15 -2
  50. package/src/components/Designer/Sidebar/DetailView/TextPropEditor.tsx +3 -2
  51. package/src/components/Designer/Sidebar/DetailView/TypeAndKeyEditor.tsx +2 -2
  52. package/src/components/Designer/Sidebar/DetailView/index.tsx +7 -7
  53. package/src/components/Designer/Sidebar/ListView/Item.tsx +1 -1
  54. package/src/components/Designer/Sidebar/ListView/SelectableSortableContainer.tsx +55 -51
  55. package/src/components/Designer/Sidebar/ListView/SelectableSortableItem.tsx +3 -3
  56. package/src/components/Designer/Sidebar/ListView/index.tsx +5 -5
  57. package/src/components/Designer/Sidebar/index.tsx +4 -4
  58. package/src/components/Designer/index.tsx +9 -9
  59. package/src/components/Error.tsx +1 -1
  60. package/src/components/Paper.tsx +2 -2
  61. package/src/components/Preview.tsx +9 -9
  62. package/src/components/Root.tsx +14 -12
  63. package/src/components/Schemas/BarcodeSchema.tsx +2 -2
  64. package/src/components/Schemas/ImageSchema.tsx +5 -5
  65. package/src/components/Schemas/SchemaUI.tsx +5 -4
  66. package/src/components/Schemas/TextSchema.tsx +2 -2
  67. package/src/contexts.ts +2 -2
  68. package/src/helper.ts +1 -8
  69. package/src/hooks.ts +2 -2
  70. package/src/i18n.ts +1 -1
  71. package/src/index.ts +45 -6
  72. package/tsconfig.json +22 -0
  73. package/webpack.config.js +35 -0
  74. package/dist/cjs/__tests__/assets/helper.js +0 -79
  75. package/dist/cjs/__tests__/assets/helper.js.map +0 -1
  76. package/dist/cjs/__tests__/components/Designer.test.js +0 -39
  77. package/dist/cjs/__tests__/components/Designer.test.js.map +0 -1
  78. package/dist/cjs/__tests__/components/Preview.test.js +0 -51
  79. package/dist/cjs/__tests__/components/Preview.test.js.map +0 -1
  80. package/dist/cjs/__tests__/helper.test.js +0 -94
  81. package/dist/cjs/__tests__/helper.test.js.map +0 -1
  82. package/dist/cjs/src/Designer.js +0 -61
  83. package/dist/cjs/src/Designer.js.map +0 -1
  84. package/dist/cjs/src/Form.js +0 -35
  85. package/dist/cjs/src/Form.js.map +0 -1
  86. package/dist/cjs/src/Viewer.js +0 -25
  87. package/dist/cjs/src/Viewer.js.map +0 -1
  88. package/dist/cjs/src/class.js +0 -119
  89. package/dist/cjs/src/class.js.map +0 -1
  90. package/dist/cjs/src/components/CtlBar/Pager.js +0 -49
  91. package/dist/cjs/src/components/CtlBar/Pager.js.map +0 -1
  92. package/dist/cjs/src/components/CtlBar/Zoom.js +0 -31
  93. package/dist/cjs/src/components/CtlBar/Zoom.js.map +0 -1
  94. package/dist/cjs/src/components/CtlBar/index.js +0 -33
  95. package/dist/cjs/src/components/CtlBar/index.js.map +0 -1
  96. package/dist/cjs/src/components/Designer/Main/Guides.js +0 -33
  97. package/dist/cjs/src/components/Designer/Main/Guides.js.map +0 -1
  98. package/dist/cjs/src/components/Designer/Main/Mask.js +0 -18
  99. package/dist/cjs/src/components/Designer/Main/Mask.js.map +0 -1
  100. package/dist/cjs/src/components/Designer/Main/Moveable.js +0 -37
  101. package/dist/cjs/src/components/Designer/Main/Moveable.js.map +0 -1
  102. package/dist/cjs/src/components/Designer/Main/Selecto.js +0 -11
  103. package/dist/cjs/src/components/Designer/Main/Selecto.js.map +0 -1
  104. package/dist/cjs/src/components/Designer/Main/index.js +0 -224
  105. package/dist/cjs/src/components/Designer/Main/index.js.map +0 -1
  106. package/dist/cjs/src/components/Designer/Sidebar/DetailView/ExampleInputEditor.js +0 -69
  107. package/dist/cjs/src/components/Designer/Sidebar/DetailView/ExampleInputEditor.js.map +0 -1
  108. package/dist/cjs/src/components/Designer/Sidebar/DetailView/PositionAndSizeEditor.js +0 -184
  109. package/dist/cjs/src/components/Designer/Sidebar/DetailView/PositionAndSizeEditor.js.map +0 -1
  110. package/dist/cjs/src/components/Designer/Sidebar/DetailView/TextPropEditor.js +0 -116
  111. package/dist/cjs/src/components/Designer/Sidebar/DetailView/TextPropEditor.js.map +0 -1
  112. package/dist/cjs/src/components/Designer/Sidebar/DetailView/TypeAndKeyEditor.js +0 -72
  113. package/dist/cjs/src/components/Designer/Sidebar/DetailView/TypeAndKeyEditor.js.map +0 -1
  114. package/dist/cjs/src/components/Designer/Sidebar/DetailView/index.js +0 -54
  115. package/dist/cjs/src/components/Designer/Sidebar/DetailView/index.js.map +0 -1
  116. package/dist/cjs/src/components/Designer/Sidebar/ListView/Item.js +0 -76
  117. package/dist/cjs/src/components/Designer/Sidebar/ListView/Item.js.map +0 -1
  118. package/dist/cjs/src/components/Designer/Sidebar/ListView/SelectableSortableContainer.js +0 -108
  119. package/dist/cjs/src/components/Designer/Sidebar/ListView/SelectableSortableContainer.js.map +0 -1
  120. package/dist/cjs/src/components/Designer/Sidebar/ListView/SelectableSortableItem.js +0 -62
  121. package/dist/cjs/src/components/Designer/Sidebar/ListView/SelectableSortableItem.js.map +0 -1
  122. package/dist/cjs/src/components/Designer/Sidebar/ListView/index.js +0 -84
  123. package/dist/cjs/src/components/Designer/Sidebar/ListView/index.js.map +0 -1
  124. package/dist/cjs/src/components/Designer/Sidebar/index.js +0 -105
  125. package/dist/cjs/src/components/Designer/Sidebar/index.js.map +0 -1
  126. package/dist/cjs/src/components/Designer/index.js +0 -235
  127. package/dist/cjs/src/components/Designer/index.js.map +0 -1
  128. package/dist/cjs/src/components/Divider.js +0 -9
  129. package/dist/cjs/src/components/Divider.js.map +0 -1
  130. package/dist/cjs/src/components/Error.js +0 -41
  131. package/dist/cjs/src/components/Error.js.map +0 -1
  132. package/dist/cjs/src/components/Paper.js +0 -63
  133. package/dist/cjs/src/components/Paper.js.map +0 -1
  134. package/dist/cjs/src/components/Preview.js +0 -102
  135. package/dist/cjs/src/components/Preview.js.map +0 -1
  136. package/dist/cjs/src/components/Root.js +0 -52
  137. package/dist/cjs/src/components/Root.js.map +0 -1
  138. package/dist/cjs/src/components/Schemas/BarcodeSchema.js +0 -94
  139. package/dist/cjs/src/components/Schemas/BarcodeSchema.js.map +0 -1
  140. package/dist/cjs/src/components/Schemas/ImageSchema.js +0 -72
  141. package/dist/cjs/src/components/Schemas/ImageSchema.js.map +0 -1
  142. package/dist/cjs/src/components/Schemas/SchemaUI.js +0 -55
  143. package/dist/cjs/src/components/Schemas/SchemaUI.js.map +0 -1
  144. package/dist/cjs/src/components/Schemas/TextSchema.js +0 -54
  145. package/dist/cjs/src/components/Schemas/TextSchema.js.map +0 -1
  146. package/dist/cjs/src/components/Spinner.js +0 -31
  147. package/dist/cjs/src/components/Spinner.js.map +0 -1
  148. package/dist/cjs/src/components/UnitPager.js +0 -63
  149. package/dist/cjs/src/components/UnitPager.js.map +0 -1
  150. package/dist/cjs/src/constants.js +0 -10
  151. package/dist/cjs/src/constants.js.map +0 -1
  152. package/dist/cjs/src/contexts.js +0 -10
  153. package/dist/cjs/src/contexts.js.map +0 -1
  154. package/dist/cjs/src/helper.js +0 -466
  155. package/dist/cjs/src/helper.js.map +0 -1
  156. package/dist/cjs/src/hooks.js +0 -100
  157. package/dist/cjs/src/hooks.js.map +0 -1
  158. package/dist/cjs/src/i18n.js +0 -50
  159. package/dist/cjs/src/i18n.js.map +0 -1
  160. package/dist/cjs/src/index.js +0 -24
  161. package/dist/cjs/src/index.js.map +0 -1
  162. package/dist/esm/__tests__/assets/helper.js +0 -51
  163. package/dist/esm/__tests__/assets/helper.js.map +0 -1
  164. package/dist/esm/__tests__/components/Designer.test.js +0 -34
  165. package/dist/esm/__tests__/components/Designer.test.js.map +0 -1
  166. package/dist/esm/__tests__/components/Preview.test.js +0 -46
  167. package/dist/esm/__tests__/components/Preview.test.js.map +0 -1
  168. package/dist/esm/__tests__/helper.test.js +0 -92
  169. package/dist/esm/__tests__/helper.test.js.map +0 -1
  170. package/dist/esm/src/Designer.js +0 -56
  171. package/dist/esm/src/Designer.js.map +0 -1
  172. package/dist/esm/src/Form.js +0 -30
  173. package/dist/esm/src/Form.js.map +0 -1
  174. package/dist/esm/src/Viewer.js +0 -20
  175. package/dist/esm/src/Viewer.js.map +0 -1
  176. package/dist/esm/src/class.js +0 -114
  177. package/dist/esm/src/class.js.map +0 -1
  178. package/dist/esm/src/components/CtlBar/Pager.js +0 -24
  179. package/dist/esm/src/components/CtlBar/Pager.js.map +0 -1
  180. package/dist/esm/src/components/CtlBar/Zoom.js +0 -26
  181. package/dist/esm/src/components/CtlBar/Zoom.js.map +0 -1
  182. package/dist/esm/src/components/CtlBar/index.js +0 -28
  183. package/dist/esm/src/components/CtlBar/index.js.map +0 -1
  184. package/dist/esm/src/components/Designer/Main/Guides.js +0 -28
  185. package/dist/esm/src/components/Designer/Main/Guides.js.map +0 -1
  186. package/dist/esm/src/components/Designer/Main/Mask.js +0 -13
  187. package/dist/esm/src/components/Designer/Main/Mask.js.map +0 -1
  188. package/dist/esm/src/components/Designer/Main/Moveable.js +0 -9
  189. package/dist/esm/src/components/Designer/Main/Moveable.js.map +0 -1
  190. package/dist/esm/src/components/Designer/Main/Selecto.js +0 -6
  191. package/dist/esm/src/components/Designer/Main/Selecto.js.map +0 -1
  192. package/dist/esm/src/components/Designer/Main/index.js +0 -196
  193. package/dist/esm/src/components/Designer/Main/index.js.map +0 -1
  194. package/dist/esm/src/components/Designer/Sidebar/DetailView/ExampleInputEditor.js +0 -44
  195. package/dist/esm/src/components/Designer/Sidebar/DetailView/ExampleInputEditor.js.map +0 -1
  196. package/dist/esm/src/components/Designer/Sidebar/DetailView/PositionAndSizeEditor.js +0 -179
  197. package/dist/esm/src/components/Designer/Sidebar/DetailView/PositionAndSizeEditor.js.map +0 -1
  198. package/dist/esm/src/components/Designer/Sidebar/DetailView/TextPropEditor.js +0 -91
  199. package/dist/esm/src/components/Designer/Sidebar/DetailView/TextPropEditor.js.map +0 -1
  200. package/dist/esm/src/components/Designer/Sidebar/DetailView/TypeAndKeyEditor.js +0 -47
  201. package/dist/esm/src/components/Designer/Sidebar/DetailView/TypeAndKeyEditor.js.map +0 -1
  202. package/dist/esm/src/components/Designer/Sidebar/DetailView/index.js +0 -26
  203. package/dist/esm/src/components/Designer/Sidebar/DetailView/index.js.map +0 -1
  204. package/dist/esm/src/components/Designer/Sidebar/ListView/Item.js +0 -51
  205. package/dist/esm/src/components/Designer/Sidebar/ListView/Item.js.map +0 -1
  206. package/dist/esm/src/components/Designer/Sidebar/ListView/SelectableSortableContainer.js +0 -80
  207. package/dist/esm/src/components/Designer/Sidebar/ListView/SelectableSortableContainer.js.map +0 -1
  208. package/dist/esm/src/components/Designer/Sidebar/ListView/SelectableSortableItem.js +0 -34
  209. package/dist/esm/src/components/Designer/Sidebar/ListView/SelectableSortableItem.js.map +0 -1
  210. package/dist/esm/src/components/Designer/Sidebar/ListView/index.js +0 -56
  211. package/dist/esm/src/components/Designer/Sidebar/ListView/index.js.map +0 -1
  212. package/dist/esm/src/components/Designer/Sidebar/index.js +0 -77
  213. package/dist/esm/src/components/Designer/Sidebar/index.js.map +0 -1
  214. package/dist/esm/src/components/Designer/index.js +0 -207
  215. package/dist/esm/src/components/Designer/index.js.map +0 -1
  216. package/dist/esm/src/components/Divider.js +0 -4
  217. package/dist/esm/src/components/Divider.js.map +0 -1
  218. package/dist/esm/src/components/Error.js +0 -16
  219. package/dist/esm/src/components/Error.js.map +0 -1
  220. package/dist/esm/src/components/Paper.js +0 -38
  221. package/dist/esm/src/components/Paper.js.map +0 -1
  222. package/dist/esm/src/components/Preview.js +0 -74
  223. package/dist/esm/src/components/Preview.js.map +0 -1
  224. package/dist/esm/src/components/Root.js +0 -24
  225. package/dist/esm/src/components/Root.js.map +0 -1
  226. package/dist/esm/src/components/Schemas/BarcodeSchema.js +0 -69
  227. package/dist/esm/src/components/Schemas/BarcodeSchema.js.map +0 -1
  228. package/dist/esm/src/components/Schemas/ImageSchema.js +0 -47
  229. package/dist/esm/src/components/Schemas/ImageSchema.js.map +0 -1
  230. package/dist/esm/src/components/Schemas/SchemaUI.js +0 -27
  231. package/dist/esm/src/components/Schemas/SchemaUI.js.map +0 -1
  232. package/dist/esm/src/components/Schemas/TextSchema.js +0 -29
  233. package/dist/esm/src/components/Schemas/TextSchema.js.map +0 -1
  234. package/dist/esm/src/components/Spinner.js +0 -26
  235. package/dist/esm/src/components/Spinner.js.map +0 -1
  236. package/dist/esm/src/components/UnitPager.js +0 -58
  237. package/dist/esm/src/components/UnitPager.js.map +0 -1
  238. package/dist/esm/src/constants.js +0 -7
  239. package/dist/esm/src/constants.js.map +0 -1
  240. package/dist/esm/src/contexts.js +0 -7
  241. package/dist/esm/src/contexts.js.map +0 -1
  242. package/dist/esm/src/helper.js +0 -439
  243. package/dist/esm/src/helper.js.map +0 -1
  244. package/dist/esm/src/hooks.js +0 -93
  245. package/dist/esm/src/hooks.js.map +0 -1
  246. package/dist/esm/src/i18n.js +0 -46
  247. package/dist/esm/src/i18n.js.map +0 -1
  248. package/dist/esm/src/index.js +0 -6
  249. package/dist/esm/src/index.js.map +0 -1
  250. package/dist/types/__tests__/assets/helper.d.ts +0 -3
  251. package/dist/types/__tests__/components/Designer.test.d.ts +0 -1
  252. package/dist/types/__tests__/components/Preview.test.d.ts +0 -1
  253. package/dist/types/__tests__/helper.test.d.ts +0 -1
  254. package/dist/types/src/components/Designer/Main/Moveable.d.ts +0 -31
  255. package/dist/types/src/index.d.ts +0 -6
  256. package/tsconfig.cjs.json +0 -10
  257. package/tsconfig.esm.json +0 -10
  258. /package/dist/types/{src/components → components}/Designer/Main/Guides.d.ts +0 -0
  259. /package/dist/types/{src/components → components}/Designer/Main/index.d.ts +0 -0
  260. /package/dist/types/{src/components → components}/Designer/Sidebar/ListView/Item.d.ts +0 -0
  261. /package/dist/types/{src/components → components}/Designer/Sidebar/ListView/SelectableSortableItem.d.ts +0 -0
  262. /package/dist/types/{src/components → components}/Paper.d.ts +0 -0
  263. /package/dist/types/{src/components → components}/Root.d.ts +0 -0
  264. /package/dist/types/{src/constants.d.ts → constants.d.ts} +0 -0
  265. /package/dist/types/{src/hooks.d.ts → hooks.d.ts} +0 -0
  266. /package/dist/types/{src/i18n.d.ts → i18n.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { Template, DesignerProps } from '@pdfme/common';
2
- import { BaseUIClass } from './class.js';
2
+ import { BaseUIClass } from './class';
3
3
  declare class Designer extends BaseUIClass {
4
4
  private onSaveTemplateCallback?;
5
5
  private onChangeTemplateCallback?;
@@ -1,5 +1,5 @@
1
1
  import { PreviewProps } from '@pdfme/common';
2
- import { PreviewUI } from './class.js';
2
+ import { PreviewUI } from './class';
3
3
  declare class Form extends PreviewUI {
4
4
  private onChangeInputCallback?;
5
5
  constructor(props: PreviewProps);
@@ -1,5 +1,5 @@
1
1
  import { PreviewProps } from '@pdfme/common';
2
- import { PreviewUI } from './class.js';
2
+ import { PreviewUI } from './class';
3
3
  declare class Viewer extends PreviewUI {
4
4
  constructor(props: PreviewProps);
5
5
  protected render(): void;
@@ -1,20 +1,18 @@
1
- import { Root } from 'react-dom/client';
2
1
  import { Template, Size, UIProps, UIOptions, PreviewProps } from '@pdfme/common';
3
2
  export declare abstract class BaseUIClass {
4
3
  protected domContainer: HTMLElement | null;
5
4
  protected template: Template;
6
5
  protected size: Size;
7
- protected root: Root | null;
8
6
  private lang;
9
7
  private font;
10
8
  private readonly setSize;
11
9
  resizeObserver: ResizeObserver;
12
10
  constructor(props: UIProps);
13
- protected getI18n(): (key: "type" | "require" | "cancel" | "field" | "fieldName" | "uniq" | "inputExample" | "edit" | "plsInputName" | "fieldMustUniq" | "notUniq" | "noKeyName" | "fieldsList" | "addNewField" | "editField" | "errorOccurred" | "errorBulkUpdateFieldName" | "commitBulkUpdateFieldName" | "bulkUpdateFieldName") => string;
11
+ protected getI18n(): (key: "type" | "field" | "cancel" | "fieldName" | "require" | "uniq" | "inputExample" | "edit" | "plsInputName" | "fieldMustUniq" | "notUniq" | "noKeyName" | "fieldsList" | "addNewField" | "editField" | "errorOccurred" | "errorBulkUpdateFieldName" | "commitBulkUpdateFieldName" | "bulkUpdateFieldName") => string;
14
12
  protected getFont(): Record<string, {
15
13
  fallback?: boolean | undefined;
16
14
  subset?: boolean | undefined;
17
- data: ArrayBuffer | Uint8Array;
15
+ data: string | ArrayBuffer | Uint8Array;
18
16
  }>;
19
17
  getTemplate(): {
20
18
  columns?: string[] | undefined;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  declare type Props = {
3
2
  pageCursor: number;
4
3
  pageNum: number;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  declare type Props = {
3
2
  zoomLevel: number;
4
3
  setZoomLevel: (zoom: number) => void;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { Size } from '@pdfme/common';
3
2
  declare type Props = {
4
3
  size: Size;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { Size } from '@pdfme/common';
3
2
  declare const Mask: ({ width, height }: Size) => JSX.Element;
4
3
  export default Mask;
@@ -0,0 +1,32 @@
1
+ import React from 'react';
2
+ import { OnDrag, OnDragEnd, OnDragGroupEnd, OnResize, OnResizeEnd, OnResizeGroupEnd, OnRotate, OnRotateEnd, OnRotateGroupEnd, OnClick } from 'react-moveable';
3
+ declare type tgtFunc = ({ target }: {
4
+ target: HTMLElement | SVGElement;
5
+ }) => void;
6
+ declare type tgtsFunc = ({ targets }: {
7
+ targets: (HTMLElement | SVGElement)[];
8
+ }) => void;
9
+ declare type Props = {
10
+ target: HTMLElement[];
11
+ bounds: {
12
+ left: number;
13
+ top: number;
14
+ bottom: number;
15
+ right: number;
16
+ };
17
+ horizontalGuidelines: number[];
18
+ verticalGuidelines: number[];
19
+ keepRatio: boolean;
20
+ onDrag: ((e: OnDrag) => void) & (({ target, left, top }: OnDrag) => void);
21
+ onDragEnd: ((e: OnDragEnd) => void) & tgtFunc;
22
+ onDragGroupEnd: ((e: OnDragGroupEnd) => void) & tgtsFunc;
23
+ onResize: ((e: OnResize) => void) & (({ target, width, height, direction }: OnResize) => void);
24
+ onResizeEnd: ((e: OnResizeEnd) => void) & tgtFunc;
25
+ onResizeGroupEnd: ((e: OnResizeGroupEnd) => void) & tgtsFunc;
26
+ onRotate: ((e: OnRotate) => void) & (({ target, rotate }: OnRotate) => void);
27
+ onRotateEnd: ((e: OnRotateEnd) => void) & tgtFunc;
28
+ onRotateGroupEnd: ((e: OnRotateGroupEnd) => void) & tgtsFunc;
29
+ onClick: (e: OnClick) => void;
30
+ };
31
+ declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<any>>;
32
+ export default _default;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { OnDragStart as _OnDragStart, OnSelect as _OnSelect } from 'react-selecto';
3
2
  declare const _Selecto: ({ container, continueSelect, onDragStart, onSelect, }: {
4
3
  container: HTMLElement | null;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI } from '@pdfme/common';
3
2
  import { SidebarProps } from '..';
4
3
  declare const ExampleInputEditor: (props: Pick<SidebarProps, 'changeSchemas'> & {
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI } from '@pdfme/common';
3
- import { SidebarProps } from '../index.js';
2
+ import { SidebarProps } from '../index';
4
3
  declare const PositionAndSizeEditor: (props: Pick<SidebarProps, 'pageSize' | 'schemas' | 'changeSchemas' | 'activeElements'> & {
5
4
  activeSchema: SchemaForUI;
6
5
  }) => JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI } from '@pdfme/common';
3
2
  import { SidebarProps } from '..';
4
3
  declare const TextPropEditor: (props: Pick<SidebarProps, 'changeSchemas'> & {
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI } from '@pdfme/common';
3
- import { SidebarProps } from '../index.js';
2
+ import { SidebarProps } from '../index';
4
3
  declare const TypeAndKeyEditor: (props: Pick<SidebarProps, 'schemas' | 'changeSchemas'> & {
5
4
  activeSchema: SchemaForUI;
6
5
  }) => JSX.Element;
@@ -1,6 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI } from '@pdfme/common';
3
- import { SidebarProps } from '../index.js';
2
+ import { SidebarProps } from '../index';
4
3
  declare const DetailView: (props: Pick<SidebarProps, 'schemas' | 'pageSize' | 'changeSchemas' | 'activeElements'> & {
5
4
  activeSchema: SchemaForUI;
6
5
  }) => JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
- import { SidebarProps } from '../index.js';
1
+ import { SidebarProps } from '../index';
3
2
  declare const SelectableSortableContainer: (props: Pick<SidebarProps, 'schemas' | 'onEdit' | 'onSortEnd' | 'height' | 'hoveringSchemaId' | 'onChangeHoveringSchemaId'>) => JSX.Element;
4
3
  export default SelectableSortableContainer;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
- import { SidebarProps } from '../index.js';
1
+ import { SidebarProps } from '../index';
3
2
  declare const ListView: (props: Pick<SidebarProps, 'schemas' | 'onSortEnd' | 'onEdit' | 'size' | 'hoveringSchemaId' | 'onChangeHoveringSchemaId' | 'changeSchemas'>) => JSX.Element;
4
3
  export default ListView;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { SchemaForUI, Size } from '@pdfme/common';
3
2
  export declare type SidebarProps = {
4
3
  height: number;
@@ -1,11 +1,10 @@
1
- /// <reference types="react" />
2
1
  import { DesignerReactProps, Template } from '@pdfme/common';
3
2
  declare const TemplateEditor: ({ template, size, onSaveTemplate, onChangeTemplate, }: {
4
3
  options?: {
5
4
  font?: Record<string, {
6
5
  fallback?: boolean | undefined;
7
6
  subset?: boolean | undefined;
8
- data: ArrayBuffer | Uint8Array;
7
+ data: string | ArrayBuffer | Uint8Array;
9
8
  }> | undefined;
10
9
  lang?: "en" | "ja" | undefined;
11
10
  } | undefined;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const Divider: () => JSX.Element;
3
2
  export default Divider;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { Size } from '@pdfme/common';
3
2
  declare const Error: ({ size, error }: {
4
3
  size: Size;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { PreviewReactProps } from '@pdfme/common';
3
2
  declare const Preview: ({ template, inputs, size, onChangeInput }: PreviewReactProps) => JSX.Element;
4
3
  export default Preview;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SchemaUIProps } from './SchemaUI.js';
2
+ import { SchemaUIProps } from './SchemaUI';
3
3
  declare const _default: React.ForwardRefExoticComponent<SchemaUIProps & {
4
4
  schema: {
5
5
  rotate?: number | undefined;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SchemaUIProps } from './SchemaUI.js';
2
+ import { SchemaUIProps } from './SchemaUI';
3
3
  declare const _default: React.ForwardRefExoticComponent<SchemaUIProps & {
4
4
  schema: {
5
5
  rotate?: number | undefined;
@@ -10,5 +10,5 @@ export interface SchemaUIProps {
10
10
  declare const _default: React.ForwardRefExoticComponent<SchemaUIProps & {
11
11
  border: string;
12
12
  onChangeHoveringSchemaId?: ((id: string | null) => void) | undefined;
13
- } & React.RefAttributes<HTMLInputElement | HTMLTextAreaElement>>;
13
+ } & React.RefAttributes<HTMLTextAreaElement | HTMLInputElement>>;
14
14
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SchemaUIProps } from './SchemaUI.js';
2
+ import { SchemaUIProps } from './SchemaUI';
3
3
  declare const _default: React.ForwardRefExoticComponent<SchemaUIProps & {
4
4
  schema: {
5
5
  backgroundColor?: string | undefined;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const Spinner: () => JSX.Element;
3
2
  export default Spinner;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { Size } from '@pdfme/common';
3
2
  declare type Props = {
4
3
  size: Size;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- export declare const I18nContext: import("react").Context<(key: "type" | "require" | "cancel" | "field" | "fieldName" | "uniq" | "inputExample" | "edit" | "plsInputName" | "fieldMustUniq" | "notUniq" | "noKeyName" | "fieldsList" | "addNewField" | "editField" | "errorOccurred" | "errorBulkUpdateFieldName" | "commitBulkUpdateFieldName" | "bulkUpdateFieldName") => string>;
2
+ export declare const I18nContext: import("react").Context<(key: "type" | "field" | "cancel" | "fieldName" | "require" | "uniq" | "inputExample" | "edit" | "plsInputName" | "fieldMustUniq" | "notUniq" | "noKeyName" | "fieldsList" | "addNewField" | "editField" | "errorOccurred" | "errorBulkUpdateFieldName" | "commitBulkUpdateFieldName" | "bulkUpdateFieldName") => string>;
3
3
  export declare const FontContext: import("react").Context<Record<string, {
4
4
  fallback?: boolean | undefined;
5
5
  subset?: boolean | undefined;
6
- data: ArrayBuffer | Uint8Array;
6
+ data: string | ArrayBuffer | Uint8Array;
7
7
  }>>;
@@ -19,7 +19,6 @@ export declare const initShortCuts: (arg: {
19
19
  }) => void;
20
20
  export declare const destroyShortCuts: () => void;
21
21
  export declare const readFiles: (files: FileList | null, type: 'text' | 'dataURL' | 'arrayBuffer') => Promise<string | ArrayBuffer>;
22
- export declare const px2mm: (px: number) => number;
23
22
  export declare const getPdfPageSizes: (pdfBlob: Blob) => Promise<{
24
23
  height: number;
25
24
  width: number;
@@ -0,0 +1,7 @@
1
+ import Designer from './Designer';
2
+ import Form from './Form';
3
+ import Viewer from './Viewer';
4
+ import { BLANK_PDF, HELVETICA, isTextSchema, isImageSchema, isBarcodeSchema, checkTemplate, checkUIProps, checkPreviewProps, checkDesignerProps, checkGenerateProps, validateBarcodeInput } from '@pdfme/common';
5
+ import type { Lang, Size, Alignment, SchemaType, BarCodeType, TextSchema, ImageSchema, BarcodeSchema, Schema, SchemaForUI, Font, BasePdf, Template, CommonProps, GeneratorOptions, GenerateProps, UIOptions, UIProps, PreviewProps, DesignerProps } from '@pdfme/common';
6
+ export { Designer, Viewer, Form, BLANK_PDF, HELVETICA, isTextSchema, isImageSchema, isBarcodeSchema, checkTemplate, checkUIProps, checkPreviewProps, checkDesignerProps, checkGenerateProps, validateBarcodeInput, };
7
+ export type { Lang, Size, Alignment, SchemaType, BarCodeType, TextSchema, ImageSchema, BarcodeSchema, Schema, SchemaForUI, Font, BasePdf, Template, CommonProps, GeneratorOptions, GenerateProps, UIOptions, UIProps, PreviewProps, DesignerProps, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pdfme/ui",
3
- "version": "1.1.4",
3
+ "version": "1.1.6",
4
4
  "sideEffects": false,
5
5
  "author": "hand-dot",
6
6
  "license": "MIT",
@@ -21,23 +21,15 @@
21
21
  "bugs": {
22
22
  "url": "https://github.com/pdfme/pdfme/issues"
23
23
  },
24
- "main": "dist/cjs/src/index.js",
25
- "module": "dist/esm/src/index.js",
26
- "types": "dist/types/src/index.d.ts",
27
- "exports": {
28
- ".": {
29
- "import": "./dist/esm/src/index.js",
30
- "require": "./dist/cjs/src/index.js"
31
- }
32
- },
24
+ "main": "dist/index.js",
25
+ "module": "dist/index.js",
26
+ "types": "dist/types/index.d.ts",
33
27
  "engines": {
34
28
  "node": ">=14"
35
29
  },
36
30
  "scripts": {
37
- "develop": "tsc -w",
38
- "build": "npm run build:cjs && npm run build:esm",
39
- "build:cjs": "tsc -p tsconfig.cjs.json",
40
- "build:esm": "tsc -p tsconfig.esm.json",
31
+ "develop": "webpack --watch --mode development",
32
+ "build": "NODE_ENV=production webpack --mode production",
41
33
  "clean": "rimraf dist",
42
34
  "lint": "tsc --noEmit",
43
35
  "test": "jest",
@@ -53,23 +45,24 @@
53
45
  "@scena/react-guides": "^0.16.0",
54
46
  "hotkeys-js": "^3.8.7",
55
47
  "pdfjs-dist": "^2.12.313",
56
- "react": "^18.2.0",
57
- "react-dom": "^18.2.0",
48
+ "react": "^17.0.2",
49
+ "react-dom": "^17.0.2",
58
50
  "react-moveable": "^0.30.3",
59
- "react-selecto": "^1.12.0",
60
- "worker-loader": "^3.0.8"
51
+ "react-selecto": "^1.12.0"
61
52
  },
62
53
  "devDependencies": {
63
54
  "@testing-library/jest-dom": "^5.16.1",
64
55
  "@testing-library/react": "^12.1.2",
65
- "@types/css-font-loading-module": "^0.0.7",
66
56
  "@types/pdfjs-dist": "^2.7.4",
67
- "@types/react": "^18.0.26",
68
- "@types/react-dom": "^18.0.10",
57
+ "@types/react": "^17.0.52",
58
+ "@types/react-dom": "^17.0.18",
69
59
  "eslint-plugin-react": "^7.28.0",
70
60
  "eslint-plugin-react-hooks": "^4.3.0",
71
61
  "jest-canvas-mock": "^2.3.1",
72
- "process": "^0.11.10"
62
+ "process": "^0.11.10",
63
+ "webpack": "^5.75.0",
64
+ "webpack-cli": "^5.0.1",
65
+ "worker-loader": "^3.0.8"
73
66
  },
74
67
  "jest": {
75
68
  "setupFiles": [
@@ -90,7 +83,7 @@
90
83
  },
91
84
  "globals": {
92
85
  "ts-jest": {
93
- "tsconfig": "tsconfig.esm.json"
86
+ "tsconfig": "tsconfig.json"
94
87
  }
95
88
  },
96
89
  "testMatch": [
package/src/Designer.tsx CHANGED
@@ -1,10 +1,11 @@
1
1
  import React from 'react';
2
+ import ReactDOM from 'react-dom';
2
3
  import { Template, DesignerProps, checkDesignerProps, checkTemplate } from '@pdfme/common';
3
- import { BaseUIClass } from './class.js';
4
- import { DESTROYED_ERR_MSG } from './constants.js';
5
- import { I18nContext, FontContext } from './contexts.js';
6
- import DesignerComponent from './components/Designer/index.js';
7
- import { cloneDeep } from './helper.js';
4
+ import { BaseUIClass } from './class';
5
+ import { DESTROYED_ERR_MSG } from './constants';
6
+ import { I18nContext, FontContext } from './contexts';
7
+ import DesignerComponent from './components/Designer/index';
8
+ import { cloneDeep } from './helper';
8
9
 
9
10
  class Designer extends BaseUIClass {
10
11
  private onSaveTemplateCallback?: (template: Template) => void;
@@ -43,8 +44,8 @@ class Designer extends BaseUIClass {
43
44
  }
44
45
 
45
46
  protected render() {
46
- if (!this.domContainer || !this.root) throw Error(DESTROYED_ERR_MSG);
47
- this.root.render(
47
+ if (!this.domContainer) throw Error(DESTROYED_ERR_MSG);
48
+ ReactDOM.render(
48
49
  <I18nContext.Provider value={this.getI18n()}>
49
50
  <FontContext.Provider value={this.getFont()}>
50
51
  <DesignerComponent
@@ -64,7 +65,8 @@ class Designer extends BaseUIClass {
64
65
  size={this.size}
65
66
  />
66
67
  </FontContext.Provider>
67
- </I18nContext.Provider>
68
+ </I18nContext.Provider>,
69
+ this.domContainer
68
70
  );
69
71
  }
70
72
  }
package/src/Form.tsx CHANGED
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
+ import ReactDOM from 'react-dom';
2
3
  import { PreviewProps } from '@pdfme/common';
3
- import { PreviewUI } from './class.js';
4
- import { DESTROYED_ERR_MSG } from './constants.js';
5
- import { I18nContext, FontContext } from './contexts.js';
6
- import Preview from './components/Preview.js';
4
+ import { PreviewUI } from './class';
5
+ import { DESTROYED_ERR_MSG } from './constants';
6
+ import { I18nContext, FontContext } from './contexts';
7
+ import Preview from './components/Preview';
7
8
 
8
9
  class Form extends PreviewUI {
9
10
  private onChangeInputCallback?: (arg: { index: number; value: string; key: string }) => void;
@@ -18,8 +19,8 @@ class Form extends PreviewUI {
18
19
  }
19
20
 
20
21
  protected render() {
21
- if (!this.domContainer || !this.root) throw Error(DESTROYED_ERR_MSG);
22
- this.root.render(
22
+ if (!this.domContainer) throw Error(DESTROYED_ERR_MSG);
23
+ ReactDOM.render(
23
24
  <I18nContext.Provider value={this.getI18n()}>
24
25
  <FontContext.Provider value={this.getFont()}>
25
26
  <Preview
@@ -36,7 +37,8 @@ class Form extends PreviewUI {
36
37
  }}
37
38
  />
38
39
  </FontContext.Provider>
39
- </I18nContext.Provider>
40
+ </I18nContext.Provider>,
41
+ this.domContainer
40
42
  );
41
43
  }
42
44
  }
package/src/Viewer.tsx CHANGED
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
+ import ReactDOM from 'react-dom';
2
3
  import { PreviewProps } from '@pdfme/common';
3
- import { PreviewUI } from './class.js';
4
- import { DESTROYED_ERR_MSG } from './constants.js';
5
- import { I18nContext, FontContext } from './contexts.js';
6
- import Preview from './components/Preview.js';
4
+ import { PreviewUI } from './class';
5
+ import { DESTROYED_ERR_MSG } from './constants';
6
+ import { I18nContext, FontContext } from './contexts';
7
+ import Preview from './components/Preview';
7
8
 
8
9
  class Viewer extends PreviewUI {
9
10
  constructor(props: PreviewProps) {
@@ -12,13 +13,14 @@ class Viewer extends PreviewUI {
12
13
  }
13
14
 
14
15
  protected render() {
15
- if (!this.domContainer || !this.root) throw Error(DESTROYED_ERR_MSG);
16
- this.root.render(
16
+ if (!this.domContainer) throw Error(DESTROYED_ERR_MSG);
17
+ ReactDOM.render(
17
18
  <I18nContext.Provider value={this.getI18n()}>
18
19
  <FontContext.Provider value={this.getFont()}>
19
20
  <Preview template={this.template} size={this.size} inputs={this.inputs} />
20
21
  </FontContext.Provider>
21
- </I18nContext.Provider>
22
+ </I18nContext.Provider>,
23
+ this.domContainer
22
24
  );
23
25
  }
24
26
  }
package/src/class.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { createRoot, Root } from 'react-dom/client';
2
- import { curriedI18n } from './i18n.js';
3
- import { DESTROYED_ERR_MSG, DEFAULT_LANG } from './constants.js';
4
- import { debounce, flatten, cloneDeep } from './helper.js';
1
+ import ReactDOM from 'react-dom';
2
+ import { curriedI18n } from './i18n';
3
+ import { DESTROYED_ERR_MSG, DEFAULT_LANG } from './constants';
4
+ import { debounce, flatten, cloneDeep } from './helper';
5
5
  import {
6
6
  Template,
7
7
  Size,
@@ -61,8 +61,6 @@ export abstract class BaseUIClass {
61
61
 
62
62
  protected size!: Size;
63
63
 
64
- protected root: Root | null;
65
-
66
64
  private lang: Lang = DEFAULT_LANG;
67
65
 
68
66
  private font: Font = getDefaultFont();
@@ -85,7 +83,6 @@ export abstract class BaseUIClass {
85
83
  const { lang, font } = options || {};
86
84
  this.domContainer = domContainer;
87
85
  this.template = generateColumnsAndSampledataIfNeeded(cloneDeep(template));
88
- this.root = createRoot(this.domContainer!);
89
86
  this.size = {
90
87
  height: this.domContainer!.clientHeight || window.innerHeight,
91
88
  width: this.domContainer!.clientWidth || window.innerWidth,
@@ -136,12 +133,11 @@ export abstract class BaseUIClass {
136
133
  }
137
134
 
138
135
  public destroy() {
139
- if (!this.domContainer || !this.root) throw Error(DESTROYED_ERR_MSG);
140
- this.root.unmount();
136
+ if (!this.domContainer) throw Error(DESTROYED_ERR_MSG);
137
+ ReactDOM.unmountComponentAtNode(this.domContainer);
141
138
 
142
139
  this.resizeObserver.unobserve(this.domContainer);
143
140
  this.domContainer = null;
144
- this.root = null;
145
141
  }
146
142
 
147
143
  protected abstract render(): void;
@@ -1,6 +1,6 @@
1
1
  import React, { useContext } from 'react';
2
2
  import { ChevronLeftIcon, ChevronRightIcon } from '@heroicons/react/24/outline';
3
- import { I18nContext } from '../../contexts.js';
3
+ import { I18nContext } from '../../contexts';
4
4
 
5
5
  const btnStyle: React.CSSProperties = {
6
6
  cursor: 'pointer',
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import Pager from './Pager.js';
3
- import Zoom from './Zoom.js';
2
+ import Pager from './Pager';
3
+ import Zoom from './Zoom';
4
4
  import { Size } from '@pdfme/common';
5
5
 
6
6
  type Props = {
@@ -1,7 +1,7 @@
1
1
  import React, { Ref } from 'react';
2
2
  import Guides from '@scena/react-guides';
3
3
  import { Size } from '@pdfme/common';
4
- import { ZOOM, RULER_HEIGHT } from '../../../constants.js';
4
+ import { ZOOM, RULER_HEIGHT } from '../../../constants';
5
5
 
6
6
  const _Guides = ({
7
7
  paperSize,
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { Size } from '@pdfme/common';
3
- import { RULER_HEIGHT } from '../../../constants.js';
3
+ import { RULER_HEIGHT } from '../../../constants';
4
4
 
5
5
  const Mask = ({ width, height }: Size) => (
6
6
  <div
@@ -1,14 +1,20 @@
1
1
  import React, { forwardRef, Ref } from 'react';
2
2
  import Moveable, {
3
3
  OnDrag,
4
- OnResize,
5
4
  OnDragEnd,
6
5
  OnDragGroupEnd,
6
+ OnResize,
7
7
  OnResizeEnd,
8
8
  OnResizeGroupEnd,
9
+ OnRotate,
10
+ OnRotateEnd,
11
+ OnRotateGroupEnd,
9
12
  OnClick,
10
13
  } from 'react-moveable';
11
14
 
15
+ type tgtFunc = ({ target }: { target: HTMLElement | SVGElement }) => void;
16
+ type tgtsFunc = ({ targets }: { targets: (HTMLElement | SVGElement)[] }) => void;
17
+
12
18
  type Props = {
13
19
  target: HTMLElement[];
14
20
  bounds: { left: number; top: number; bottom: number; right: number };
@@ -16,15 +22,15 @@ type Props = {
16
22
  verticalGuidelines: number[];
17
23
  keepRatio: boolean;
18
24
  onDrag: ((e: OnDrag) => void) & (({ target, left, top }: OnDrag) => void);
19
- onDragEnd: ((e: OnDragEnd) => void) &
20
- (({ target }: { target: HTMLElement | SVGElement }) => void);
21
- onDragGroupEnd: ((e: OnDragGroupEnd) => void) &
22
- (({ targets }: { targets: (HTMLElement | SVGElement)[] }) => void);
25
+ onDragEnd: ((e: OnDragEnd) => void) & tgtFunc;
26
+ onDragGroupEnd: ((e: OnDragGroupEnd) => void) & tgtsFunc;
23
27
  onResize: ((e: OnResize) => void) & (({ target, width, height, direction }: OnResize) => void);
24
- onResizeEnd: ((e: OnResizeEnd) => void) &
25
- (({ target }: { target: HTMLElement | SVGElement }) => void);
26
- onResizeGroupEnd: ((e: OnResizeGroupEnd) => void) &
27
- (({ targets }: { targets: (HTMLElement | SVGElement)[] }) => void);
28
+ onResizeEnd: ((e: OnResizeEnd) => void) & tgtFunc;
29
+ onResizeGroupEnd: ((e: OnResizeGroupEnd) => void) & tgtsFunc;
30
+ onRotate: ((e: OnRotate) => void) & (({ target, rotate }: OnRotate) => void);
31
+ onRotateEnd: ((e: OnRotateEnd) => void) & tgtFunc;
32
+ onRotateGroupEnd: ((e: OnRotateGroupEnd) => void) & tgtsFunc;
33
+
28
34
  onClick: (e: OnClick) => void;
29
35
  };
30
36
 
@@ -41,6 +47,9 @@ const _Moveable = (
41
47
  onResize,
42
48
  onResizeEnd,
43
49
  onResizeGroupEnd,
50
+ onRotate,
51
+ onRotateEnd,
52
+ onRotateGroupEnd,
44
53
  onClick,
45
54
  }: Props,
46
55
  ref: Ref<any>
@@ -52,6 +61,9 @@ const _Moveable = (
52
61
  snapCenter
53
62
  draggable
54
63
  resizable
64
+ rotatable
65
+ throttleRotate={0}
66
+ rotationPosition="top"
55
67
  throttleDrag={1}
56
68
  throttleResize={1}
57
69
  ref={ref}
@@ -61,17 +73,17 @@ const _Moveable = (
61
73
  verticalGuidelines={verticalGuidelines}
62
74
  keepRatio={keepRatio}
63
75
  onDrag={onDrag}
64
- onDragGroup={({ events }) => {
65
- events.forEach(onDrag);
66
- }}
76
+ onDragGroup={({ events }) => events.forEach(onDrag)}
67
77
  onDragEnd={onDragEnd}
68
78
  onDragGroupEnd={onDragGroupEnd}
69
79
  onResize={onResize}
70
- onResizeGroup={({ events }) => {
71
- events.forEach(onResize);
72
- }}
80
+ onResizeGroup={({ events }) => events.forEach(onResize)}
73
81
  onResizeEnd={onResizeEnd}
74
82
  onResizeGroupEnd={onResizeGroupEnd}
83
+ onRotate={onRotate}
84
+ onRotateEnd={onRotateEnd}
85
+ onRotateGroup={({ events }) => events.forEach(onRotate)}
86
+ onRotateGroupEnd={onRotateGroupEnd}
75
87
  onClick={onClick}
76
88
  />
77
89
  );