@pdfme/schemas 0.0.0

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 (419) hide show
  1. package/README.md +8 -0
  2. package/dist/cjs/__tests__/barcode.test.js +354 -0
  3. package/dist/cjs/__tests__/barcode.test.js.map +1 -0
  4. package/dist/cjs/__tests__/multiVariableText.test.js +102 -0
  5. package/dist/cjs/__tests__/multiVariableText.test.js.map +1 -0
  6. package/dist/cjs/__tests__/text.test.js +419 -0
  7. package/dist/cjs/__tests__/text.test.js.map +1 -0
  8. package/dist/cjs/__tests__/utils.test.js +193 -0
  9. package/dist/cjs/__tests__/utils.test.js.map +1 -0
  10. package/dist/cjs/src/barcodes/constants.js +21 -0
  11. package/dist/cjs/src/barcodes/constants.js.map +1 -0
  12. package/dist/cjs/src/barcodes/helper.js +161 -0
  13. package/dist/cjs/src/barcodes/helper.js.map +1 -0
  14. package/dist/cjs/src/barcodes/index.js +18 -0
  15. package/dist/cjs/src/barcodes/index.js.map +1 -0
  16. package/dist/cjs/src/barcodes/pdfRender.js +29 -0
  17. package/dist/cjs/src/barcodes/pdfRender.js.map +1 -0
  18. package/dist/cjs/src/barcodes/propPanel.js +241 -0
  19. package/dist/cjs/src/barcodes/propPanel.js.map +1 -0
  20. package/dist/cjs/src/barcodes/types.js +3 -0
  21. package/dist/cjs/src/barcodes/types.js.map +1 -0
  22. package/dist/cjs/src/barcodes/uiRender.js +91 -0
  23. package/dist/cjs/src/barcodes/uiRender.js.map +1 -0
  24. package/dist/cjs/src/checkbox/index.js +62 -0
  25. package/dist/cjs/src/checkbox/index.js.map +1 -0
  26. package/dist/cjs/src/constants.js +6 -0
  27. package/dist/cjs/src/constants.js.map +1 -0
  28. package/dist/cjs/src/date/date.js +9 -0
  29. package/dist/cjs/src/date/date.js.map +1 -0
  30. package/dist/cjs/src/date/dateTime.js +9 -0
  31. package/dist/cjs/src/date/dateTime.js.map +1 -0
  32. package/dist/cjs/src/date/helper.js +462 -0
  33. package/dist/cjs/src/date/helper.js.map +1 -0
  34. package/dist/cjs/src/date/time.js +9 -0
  35. package/dist/cjs/src/date/time.js.map +1 -0
  36. package/dist/cjs/src/date/types.js +3 -0
  37. package/dist/cjs/src/date/types.js.map +1 -0
  38. package/dist/cjs/src/graphics/image.js +172 -0
  39. package/dist/cjs/src/graphics/image.js.map +1 -0
  40. package/dist/cjs/src/graphics/imagehelper.js +124 -0
  41. package/dist/cjs/src/graphics/imagehelper.js.map +1 -0
  42. package/dist/cjs/src/graphics/svg.js +109 -0
  43. package/dist/cjs/src/graphics/svg.js.map +1 -0
  44. package/dist/cjs/src/index.js +41 -0
  45. package/dist/cjs/src/index.js.map +1 -0
  46. package/dist/cjs/src/multiVariableText/helper.js +55 -0
  47. package/dist/cjs/src/multiVariableText/helper.js.map +1 -0
  48. package/dist/cjs/src/multiVariableText/index.js +16 -0
  49. package/dist/cjs/src/multiVariableText/index.js.map +1 -0
  50. package/dist/cjs/src/multiVariableText/pdfRender.js +20 -0
  51. package/dist/cjs/src/multiVariableText/pdfRender.js.map +1 -0
  52. package/dist/cjs/src/multiVariableText/propPanel.js +148 -0
  53. package/dist/cjs/src/multiVariableText/propPanel.js.map +1 -0
  54. package/dist/cjs/src/multiVariableText/types.js +3 -0
  55. package/dist/cjs/src/multiVariableText/types.js.map +1 -0
  56. package/dist/cjs/src/multiVariableText/uiRender.js +146 -0
  57. package/dist/cjs/src/multiVariableText/uiRender.js.map +1 -0
  58. package/dist/cjs/src/radioGroup/index.js +93 -0
  59. package/dist/cjs/src/radioGroup/index.js.map +1 -0
  60. package/dist/cjs/src/select/index.js +170 -0
  61. package/dist/cjs/src/select/index.js.map +1 -0
  62. package/dist/cjs/src/shapes/line.js +76 -0
  63. package/dist/cjs/src/shapes/line.js.map +1 -0
  64. package/dist/cjs/src/shapes/rectAndEllipse.js +140 -0
  65. package/dist/cjs/src/shapes/rectAndEllipse.js.map +1 -0
  66. package/dist/cjs/src/tables/cell.js +126 -0
  67. package/dist/cjs/src/tables/cell.js.map +1 -0
  68. package/dist/cjs/src/tables/classes.js +467 -0
  69. package/dist/cjs/src/tables/classes.js.map +1 -0
  70. package/dist/cjs/src/tables/dynamicTemplate.js +66 -0
  71. package/dist/cjs/src/tables/dynamicTemplate.js.map +1 -0
  72. package/dist/cjs/src/tables/helper.js +189 -0
  73. package/dist/cjs/src/tables/helper.js.map +1 -0
  74. package/dist/cjs/src/tables/index.js +15 -0
  75. package/dist/cjs/src/tables/index.js.map +1 -0
  76. package/dist/cjs/src/tables/pdfRender.js +109 -0
  77. package/dist/cjs/src/tables/pdfRender.js.map +1 -0
  78. package/dist/cjs/src/tables/propPanel.js +108 -0
  79. package/dist/cjs/src/tables/propPanel.js.map +1 -0
  80. package/dist/cjs/src/tables/tableHelper.js +200 -0
  81. package/dist/cjs/src/tables/tableHelper.js.map +1 -0
  82. package/dist/cjs/src/tables/types.js +3 -0
  83. package/dist/cjs/src/tables/types.js.map +1 -0
  84. package/dist/cjs/src/tables/uiRender.js +368 -0
  85. package/dist/cjs/src/tables/uiRender.js.map +1 -0
  86. package/dist/cjs/src/text/constants.js +97 -0
  87. package/dist/cjs/src/text/constants.js.map +1 -0
  88. package/dist/cjs/src/text/extraFormatter.js +49 -0
  89. package/dist/cjs/src/text/extraFormatter.js.map +1 -0
  90. package/dist/cjs/src/text/helper.js +498 -0
  91. package/dist/cjs/src/text/helper.js.map +1 -0
  92. package/dist/cjs/src/text/icons/index.js +16 -0
  93. package/dist/cjs/src/text/icons/index.js.map +1 -0
  94. package/dist/cjs/src/text/index.js +15 -0
  95. package/dist/cjs/src/text/index.js.map +1 -0
  96. package/dist/cjs/src/text/pdfRender.js +167 -0
  97. package/dist/cjs/src/text/pdfRender.js.map +1 -0
  98. package/dist/cjs/src/text/propPanel.js +161 -0
  99. package/dist/cjs/src/text/propPanel.js.map +1 -0
  100. package/dist/cjs/src/text/types.js +3 -0
  101. package/dist/cjs/src/text/types.js.map +1 -0
  102. package/dist/cjs/src/text/uiRender.js +224 -0
  103. package/dist/cjs/src/text/uiRender.js.map +1 -0
  104. package/dist/cjs/src/utils.js +230 -0
  105. package/dist/cjs/src/utils.js.map +1 -0
  106. package/dist/esm/__tests__/barcode.test.js +349 -0
  107. package/dist/esm/__tests__/barcode.test.js.map +1 -0
  108. package/dist/esm/__tests__/multiVariableText.test.js +100 -0
  109. package/dist/esm/__tests__/multiVariableText.test.js.map +1 -0
  110. package/dist/esm/__tests__/text.test.js +384 -0
  111. package/dist/esm/__tests__/text.test.js.map +1 -0
  112. package/dist/esm/__tests__/utils.test.js +191 -0
  113. package/dist/esm/__tests__/utils.test.js.map +1 -0
  114. package/dist/esm/src/barcodes/constants.js +18 -0
  115. package/dist/esm/src/barcodes/constants.js.map +1 -0
  116. package/dist/esm/src/barcodes/helper.js +151 -0
  117. package/dist/esm/src/barcodes/helper.js.map +1 -0
  118. package/dist/esm/src/barcodes/index.js +16 -0
  119. package/dist/esm/src/barcodes/index.js.map +1 -0
  120. package/dist/esm/src/barcodes/pdfRender.js +25 -0
  121. package/dist/esm/src/barcodes/pdfRender.js.map +1 -0
  122. package/dist/esm/src/barcodes/propPanel.js +237 -0
  123. package/dist/esm/src/barcodes/propPanel.js.map +1 -0
  124. package/dist/esm/src/barcodes/types.js +2 -0
  125. package/dist/esm/src/barcodes/types.js.map +1 -0
  126. package/dist/esm/src/barcodes/uiRender.js +87 -0
  127. package/dist/esm/src/barcodes/uiRender.js.map +1 -0
  128. package/dist/esm/src/checkbox/index.js +57 -0
  129. package/dist/esm/src/checkbox/index.js.map +1 -0
  130. package/dist/esm/src/constants.js +3 -0
  131. package/dist/esm/src/constants.js.map +1 -0
  132. package/dist/esm/src/date/date.js +7 -0
  133. package/dist/esm/src/date/date.js.map +1 -0
  134. package/dist/esm/src/date/dateTime.js +7 -0
  135. package/dist/esm/src/date/dateTime.js.map +1 -0
  136. package/dist/esm/src/date/helper.js +422 -0
  137. package/dist/esm/src/date/helper.js.map +1 -0
  138. package/dist/esm/src/date/time.js +7 -0
  139. package/dist/esm/src/date/time.js.map +1 -0
  140. package/dist/esm/src/date/types.js +2 -0
  141. package/dist/esm/src/date/types.js.map +1 -0
  142. package/dist/esm/src/graphics/image.js +170 -0
  143. package/dist/esm/src/graphics/image.js.map +1 -0
  144. package/dist/esm/src/graphics/imagehelper.js +120 -0
  145. package/dist/esm/src/graphics/imagehelper.js.map +1 -0
  146. package/dist/esm/src/graphics/svg.js +107 -0
  147. package/dist/esm/src/graphics/svg.js.map +1 -0
  148. package/dist/esm/src/index.js +21 -0
  149. package/dist/esm/src/index.js.map +1 -0
  150. package/dist/esm/src/multiVariableText/helper.js +50 -0
  151. package/dist/esm/src/multiVariableText/helper.js.map +1 -0
  152. package/dist/esm/src/multiVariableText/index.js +14 -0
  153. package/dist/esm/src/multiVariableText/index.js.map +1 -0
  154. package/dist/esm/src/multiVariableText/pdfRender.js +16 -0
  155. package/dist/esm/src/multiVariableText/pdfRender.js.map +1 -0
  156. package/dist/esm/src/multiVariableText/propPanel.js +145 -0
  157. package/dist/esm/src/multiVariableText/propPanel.js.map +1 -0
  158. package/dist/esm/src/multiVariableText/types.js +2 -0
  159. package/dist/esm/src/multiVariableText/types.js.map +1 -0
  160. package/dist/esm/src/multiVariableText/uiRender.js +142 -0
  161. package/dist/esm/src/multiVariableText/uiRender.js.map +1 -0
  162. package/dist/esm/src/radioGroup/index.js +88 -0
  163. package/dist/esm/src/radioGroup/index.js.map +1 -0
  164. package/dist/esm/src/select/index.js +165 -0
  165. package/dist/esm/src/select/index.js.map +1 -0
  166. package/dist/esm/src/shapes/line.js +74 -0
  167. package/dist/esm/src/shapes/line.js.map +1 -0
  168. package/dist/esm/src/shapes/rectAndEllipse.js +137 -0
  169. package/dist/esm/src/shapes/rectAndEllipse.js.map +1 -0
  170. package/dist/esm/src/tables/cell.js +121 -0
  171. package/dist/esm/src/tables/cell.js.map +1 -0
  172. package/dist/esm/src/tables/classes.js +460 -0
  173. package/dist/esm/src/tables/classes.js.map +1 -0
  174. package/dist/esm/src/tables/dynamicTemplate.js +62 -0
  175. package/dist/esm/src/tables/dynamicTemplate.js.map +1 -0
  176. package/dist/esm/src/tables/helper.js +181 -0
  177. package/dist/esm/src/tables/helper.js.map +1 -0
  178. package/dist/esm/src/tables/index.js +13 -0
  179. package/dist/esm/src/tables/index.js.map +1 -0
  180. package/dist/esm/src/tables/pdfRender.js +102 -0
  181. package/dist/esm/src/tables/pdfRender.js.map +1 -0
  182. package/dist/esm/src/tables/propPanel.js +105 -0
  183. package/dist/esm/src/tables/propPanel.js.map +1 -0
  184. package/dist/esm/src/tables/tableHelper.js +197 -0
  185. package/dist/esm/src/tables/tableHelper.js.map +1 -0
  186. package/dist/esm/src/tables/types.js +2 -0
  187. package/dist/esm/src/tables/types.js.map +1 -0
  188. package/dist/esm/src/tables/uiRender.js +361 -0
  189. package/dist/esm/src/tables/uiRender.js.map +1 -0
  190. package/dist/esm/src/text/constants.js +94 -0
  191. package/dist/esm/src/text/constants.js.map +1 -0
  192. package/dist/esm/src/text/extraFormatter.js +45 -0
  193. package/dist/esm/src/text/extraFormatter.js.map +1 -0
  194. package/dist/esm/src/text/helper.js +451 -0
  195. package/dist/esm/src/text/helper.js.map +1 -0
  196. package/dist/esm/src/text/icons/index.js +13 -0
  197. package/dist/esm/src/text/icons/index.js.map +1 -0
  198. package/dist/esm/src/text/index.js +13 -0
  199. package/dist/esm/src/text/index.js.map +1 -0
  200. package/dist/esm/src/text/pdfRender.js +163 -0
  201. package/dist/esm/src/text/pdfRender.js.map +1 -0
  202. package/dist/esm/src/text/propPanel.js +158 -0
  203. package/dist/esm/src/text/propPanel.js.map +1 -0
  204. package/dist/esm/src/text/types.js +2 -0
  205. package/dist/esm/src/text/types.js.map +1 -0
  206. package/dist/esm/src/text/uiRender.js +217 -0
  207. package/dist/esm/src/text/uiRender.js.map +1 -0
  208. package/dist/esm/src/utils.js +218 -0
  209. package/dist/esm/src/utils.js.map +1 -0
  210. package/dist/node/__tests__/barcode.test.js +354 -0
  211. package/dist/node/__tests__/barcode.test.js.map +1 -0
  212. package/dist/node/__tests__/multiVariableText.test.js +102 -0
  213. package/dist/node/__tests__/multiVariableText.test.js.map +1 -0
  214. package/dist/node/__tests__/text.test.js +419 -0
  215. package/dist/node/__tests__/text.test.js.map +1 -0
  216. package/dist/node/__tests__/utils.test.js +193 -0
  217. package/dist/node/__tests__/utils.test.js.map +1 -0
  218. package/dist/node/src/barcodes/constants.js +21 -0
  219. package/dist/node/src/barcodes/constants.js.map +1 -0
  220. package/dist/node/src/barcodes/helper.js +161 -0
  221. package/dist/node/src/barcodes/helper.js.map +1 -0
  222. package/dist/node/src/barcodes/index.js +18 -0
  223. package/dist/node/src/barcodes/index.js.map +1 -0
  224. package/dist/node/src/barcodes/pdfRender.js +29 -0
  225. package/dist/node/src/barcodes/pdfRender.js.map +1 -0
  226. package/dist/node/src/barcodes/propPanel.js +241 -0
  227. package/dist/node/src/barcodes/propPanel.js.map +1 -0
  228. package/dist/node/src/barcodes/types.js +3 -0
  229. package/dist/node/src/barcodes/types.js.map +1 -0
  230. package/dist/node/src/barcodes/uiRender.js +91 -0
  231. package/dist/node/src/barcodes/uiRender.js.map +1 -0
  232. package/dist/node/src/checkbox/index.js +62 -0
  233. package/dist/node/src/checkbox/index.js.map +1 -0
  234. package/dist/node/src/constants.js +6 -0
  235. package/dist/node/src/constants.js.map +1 -0
  236. package/dist/node/src/date/date.js +9 -0
  237. package/dist/node/src/date/date.js.map +1 -0
  238. package/dist/node/src/date/dateTime.js +9 -0
  239. package/dist/node/src/date/dateTime.js.map +1 -0
  240. package/dist/node/src/date/helper.js +462 -0
  241. package/dist/node/src/date/helper.js.map +1 -0
  242. package/dist/node/src/date/time.js +9 -0
  243. package/dist/node/src/date/time.js.map +1 -0
  244. package/dist/node/src/date/types.js +3 -0
  245. package/dist/node/src/date/types.js.map +1 -0
  246. package/dist/node/src/graphics/image.js +172 -0
  247. package/dist/node/src/graphics/image.js.map +1 -0
  248. package/dist/node/src/graphics/imagehelper.js +124 -0
  249. package/dist/node/src/graphics/imagehelper.js.map +1 -0
  250. package/dist/node/src/graphics/svg.js +109 -0
  251. package/dist/node/src/graphics/svg.js.map +1 -0
  252. package/dist/node/src/index.js +41 -0
  253. package/dist/node/src/index.js.map +1 -0
  254. package/dist/node/src/multiVariableText/helper.js +55 -0
  255. package/dist/node/src/multiVariableText/helper.js.map +1 -0
  256. package/dist/node/src/multiVariableText/index.js +16 -0
  257. package/dist/node/src/multiVariableText/index.js.map +1 -0
  258. package/dist/node/src/multiVariableText/pdfRender.js +20 -0
  259. package/dist/node/src/multiVariableText/pdfRender.js.map +1 -0
  260. package/dist/node/src/multiVariableText/propPanel.js +148 -0
  261. package/dist/node/src/multiVariableText/propPanel.js.map +1 -0
  262. package/dist/node/src/multiVariableText/types.js +3 -0
  263. package/dist/node/src/multiVariableText/types.js.map +1 -0
  264. package/dist/node/src/multiVariableText/uiRender.js +146 -0
  265. package/dist/node/src/multiVariableText/uiRender.js.map +1 -0
  266. package/dist/node/src/radioGroup/index.js +93 -0
  267. package/dist/node/src/radioGroup/index.js.map +1 -0
  268. package/dist/node/src/select/index.js +170 -0
  269. package/dist/node/src/select/index.js.map +1 -0
  270. package/dist/node/src/shapes/line.js +76 -0
  271. package/dist/node/src/shapes/line.js.map +1 -0
  272. package/dist/node/src/shapes/rectAndEllipse.js +140 -0
  273. package/dist/node/src/shapes/rectAndEllipse.js.map +1 -0
  274. package/dist/node/src/tables/cell.js +126 -0
  275. package/dist/node/src/tables/cell.js.map +1 -0
  276. package/dist/node/src/tables/classes.js +467 -0
  277. package/dist/node/src/tables/classes.js.map +1 -0
  278. package/dist/node/src/tables/dynamicTemplate.js +66 -0
  279. package/dist/node/src/tables/dynamicTemplate.js.map +1 -0
  280. package/dist/node/src/tables/helper.js +189 -0
  281. package/dist/node/src/tables/helper.js.map +1 -0
  282. package/dist/node/src/tables/index.js +15 -0
  283. package/dist/node/src/tables/index.js.map +1 -0
  284. package/dist/node/src/tables/pdfRender.js +109 -0
  285. package/dist/node/src/tables/pdfRender.js.map +1 -0
  286. package/dist/node/src/tables/propPanel.js +108 -0
  287. package/dist/node/src/tables/propPanel.js.map +1 -0
  288. package/dist/node/src/tables/tableHelper.js +200 -0
  289. package/dist/node/src/tables/tableHelper.js.map +1 -0
  290. package/dist/node/src/tables/types.js +3 -0
  291. package/dist/node/src/tables/types.js.map +1 -0
  292. package/dist/node/src/tables/uiRender.js +368 -0
  293. package/dist/node/src/tables/uiRender.js.map +1 -0
  294. package/dist/node/src/text/constants.js +97 -0
  295. package/dist/node/src/text/constants.js.map +1 -0
  296. package/dist/node/src/text/extraFormatter.js +49 -0
  297. package/dist/node/src/text/extraFormatter.js.map +1 -0
  298. package/dist/node/src/text/helper.js +498 -0
  299. package/dist/node/src/text/helper.js.map +1 -0
  300. package/dist/node/src/text/icons/index.js +16 -0
  301. package/dist/node/src/text/icons/index.js.map +1 -0
  302. package/dist/node/src/text/index.js +15 -0
  303. package/dist/node/src/text/index.js.map +1 -0
  304. package/dist/node/src/text/pdfRender.js +167 -0
  305. package/dist/node/src/text/pdfRender.js.map +1 -0
  306. package/dist/node/src/text/propPanel.js +161 -0
  307. package/dist/node/src/text/propPanel.js.map +1 -0
  308. package/dist/node/src/text/types.js +3 -0
  309. package/dist/node/src/text/types.js.map +1 -0
  310. package/dist/node/src/text/uiRender.js +224 -0
  311. package/dist/node/src/text/uiRender.js.map +1 -0
  312. package/dist/node/src/utils.js +230 -0
  313. package/dist/node/src/utils.js.map +1 -0
  314. package/dist/types/__tests__/barcode.test.d.ts +1 -0
  315. package/dist/types/__tests__/multiVariableText.test.d.ts +1 -0
  316. package/dist/types/__tests__/text.test.d.ts +1 -0
  317. package/dist/types/__tests__/utils.test.d.ts +1 -0
  318. package/dist/types/src/barcodes/constants.d.ts +4 -0
  319. package/dist/types/src/barcodes/helper.d.ts +21 -0
  320. package/dist/types/src/barcodes/index.d.ts +4 -0
  321. package/dist/types/src/barcodes/pdfRender.d.ts +3 -0
  322. package/dist/types/src/barcodes/propPanel.d.ts +3 -0
  323. package/dist/types/src/barcodes/types.d.ts +10 -0
  324. package/dist/types/src/barcodes/uiRender.d.ts +3 -0
  325. package/dist/types/src/checkbox/index.d.ts +6 -0
  326. package/dist/types/src/constants.d.ts +2 -0
  327. package/dist/types/src/date/date.d.ts +2 -0
  328. package/dist/types/src/date/dateTime.d.ts +2 -0
  329. package/dist/types/src/date/helper.d.ts +8 -0
  330. package/dist/types/src/date/time.d.ts +2 -0
  331. package/dist/types/src/date/types.d.ts +17 -0
  332. package/dist/types/src/graphics/image.d.ts +5 -0
  333. package/dist/types/src/graphics/imagehelper.d.ts +4 -0
  334. package/dist/types/src/graphics/svg.d.ts +4 -0
  335. package/dist/types/src/index.d.ts +19 -0
  336. package/dist/types/src/multiVariableText/helper.d.ts +3 -0
  337. package/dist/types/src/multiVariableText/index.d.ts +4 -0
  338. package/dist/types/src/multiVariableText/pdfRender.d.ts +3 -0
  339. package/dist/types/src/multiVariableText/propPanel.d.ts +3 -0
  340. package/dist/types/src/multiVariableText/types.d.ts +5 -0
  341. package/dist/types/src/multiVariableText/uiRender.d.ts +3 -0
  342. package/dist/types/src/radioGroup/index.d.ts +7 -0
  343. package/dist/types/src/select/index.d.ts +7 -0
  344. package/dist/types/src/shapes/line.d.ts +6 -0
  345. package/dist/types/src/shapes/rectAndEllipse.d.ts +175 -0
  346. package/dist/types/src/tables/cell.d.ts +4 -0
  347. package/dist/types/src/tables/classes.d.ts +69 -0
  348. package/dist/types/src/tables/dynamicTemplate.d.ts +7 -0
  349. package/dist/types/src/tables/helper.d.ts +265 -0
  350. package/dist/types/src/tables/index.d.ts +4 -0
  351. package/dist/types/src/tables/pdfRender.d.ts +3 -0
  352. package/dist/types/src/tables/propPanel.d.ts +3 -0
  353. package/dist/types/src/tables/tableHelper.d.ts +10 -0
  354. package/dist/types/src/tables/types.d.ts +88 -0
  355. package/dist/types/src/tables/uiRender.d.ts +3 -0
  356. package/dist/types/src/text/constants.d.ts +23 -0
  357. package/dist/types/src/text/extraFormatter.d.ts +25 -0
  358. package/dist/types/src/text/helper.d.ts +39 -0
  359. package/dist/types/src/text/icons/index.d.ts +9 -0
  360. package/dist/types/src/text/index.d.ts +4 -0
  361. package/dist/types/src/text/pdfRender.d.ts +3 -0
  362. package/dist/types/src/text/propPanel.d.ts +3 -0
  363. package/dist/types/src/text/types.d.ts +28 -0
  364. package/dist/types/src/text/uiRender.d.ts +11 -0
  365. package/dist/types/src/utils.d.ts +40 -0
  366. package/eslint.config.mjs +22 -0
  367. package/package.json +97 -0
  368. package/src/barcodes/constants.ts +20 -0
  369. package/src/barcodes/helper.ts +187 -0
  370. package/src/barcodes/index.ts +23 -0
  371. package/src/barcodes/pdfRender.ts +37 -0
  372. package/src/barcodes/propPanel.ts +249 -0
  373. package/src/barcodes/types.ts +12 -0
  374. package/src/barcodes/uiRender.ts +94 -0
  375. package/src/checkbox/index.ts +70 -0
  376. package/src/constants.ts +2 -0
  377. package/src/date/date.ts +9 -0
  378. package/src/date/dateTime.ts +9 -0
  379. package/src/date/helper.ts +496 -0
  380. package/src/date/time.ts +9 -0
  381. package/src/date/types.ts +19 -0
  382. package/src/graphics/image.ts +201 -0
  383. package/src/graphics/imagehelper.ts +156 -0
  384. package/src/graphics/svg.ts +118 -0
  385. package/src/index.ts +39 -0
  386. package/src/multiVariableText/helper.ts +65 -0
  387. package/src/multiVariableText/index.ts +16 -0
  388. package/src/multiVariableText/pdfRender.ts +21 -0
  389. package/src/multiVariableText/propPanel.ts +160 -0
  390. package/src/multiVariableText/types.ts +6 -0
  391. package/src/multiVariableText/uiRender.ts +170 -0
  392. package/src/radioGroup/index.ts +115 -0
  393. package/src/select/index.ts +204 -0
  394. package/src/shapes/line.ts +94 -0
  395. package/src/shapes/rectAndEllipse.ts +152 -0
  396. package/src/tables/cell.ts +152 -0
  397. package/src/tables/classes.ts +402 -0
  398. package/src/tables/dynamicTemplate.ts +88 -0
  399. package/src/tables/helper.ts +216 -0
  400. package/src/tables/index.ts +15 -0
  401. package/src/tables/pdfRender.ts +144 -0
  402. package/src/tables/propPanel.ts +111 -0
  403. package/src/tables/tableHelper.ts +288 -0
  404. package/src/tables/types.ts +87 -0
  405. package/src/tables/uiRender.ts +436 -0
  406. package/src/text/constants.ts +104 -0
  407. package/src/text/extraFormatter.ts +83 -0
  408. package/src/text/helper.ts +550 -0
  409. package/src/text/icons/index.ts +30 -0
  410. package/src/text/index.ts +16 -0
  411. package/src/text/pdfRender.ts +239 -0
  412. package/src/text/propPanel.ts +184 -0
  413. package/src/text/types.ts +30 -0
  414. package/src/text/uiRender.ts +288 -0
  415. package/src/utils.ts +281 -0
  416. package/tsconfig.cjs.json +10 -0
  417. package/tsconfig.esm.json +11 -0
  418. package/tsconfig.json +6 -0
  419. package/tsconfig.node.json +11 -0
@@ -0,0 +1,94 @@
1
+ import type { Schema, Plugin } from '@pdfme/common';
2
+ import {
3
+ rotatePoint,
4
+ convertForPdfLayoutProps,
5
+ hex2PrintingColor,
6
+ createSvgStr,
7
+ } from '../utils.js';
8
+ import { HEX_COLOR_PATTERN } from '../constants.js';
9
+ import { Minus } from 'lucide';
10
+
11
+ const DEFAULT_LINE_COLOR = '#000000';
12
+ const HIT_POINT_HEIGHT = 16;
13
+
14
+ interface LineSchema extends Schema {
15
+ color: string;
16
+ }
17
+
18
+ const lineSchema: Plugin<LineSchema> = {
19
+ pdf: (arg) => {
20
+ const { page, schema, options } = arg;
21
+ if (schema.width === 0 || schema.height === 0 || !schema.color) return;
22
+ const { colorType } = options;
23
+ const pageHeight = page.getHeight();
24
+ const {
25
+ width,
26
+ height,
27
+ rotate,
28
+ position: { x, y },
29
+ opacity,
30
+ } = convertForPdfLayoutProps({ schema, pageHeight, applyRotateTranslate: false });
31
+ const pivot = { x: x + width / 2, y: y + height / 2 };
32
+ page.drawLine({
33
+ start: rotatePoint({ x, y: y + height / 2 }, pivot, rotate.angle),
34
+ end: rotatePoint({ x: x + width, y: y + height / 2 }, pivot, rotate.angle),
35
+ thickness: height,
36
+ color: hex2PrintingColor(schema.color ?? DEFAULT_LINE_COLOR, colorType),
37
+ opacity: opacity,
38
+ });
39
+ },
40
+ ui: (arg) => {
41
+ const { schema, rootElement } = arg;
42
+ Object.assign(rootElement.style, { position: 'relative', overflow: 'visible' });
43
+
44
+ const baseStyles = {
45
+ position: 'absolute',
46
+ top: '50%',
47
+ left: '0',
48
+ transform: 'translateY(-50%)',
49
+ width: '100%',
50
+ } as const;
51
+
52
+ const hitArea = document.createElement('div');
53
+ Object.assign(hitArea.style, baseStyles, {
54
+ height: `${HIT_POINT_HEIGHT}px`,
55
+ backgroundColor: 'transparent',
56
+ });
57
+
58
+ const div = document.createElement('div');
59
+ Object.assign(div.style, baseStyles, {
60
+ height: '100%',
61
+ backgroundColor: schema.color ?? 'transparent',
62
+ pointerEvents: 'none',
63
+ });
64
+
65
+ rootElement.append(hitArea, div);
66
+ },
67
+ propPanel: {
68
+ schema: ({ i18n }) => ({
69
+ color: {
70
+ title: i18n('schemas.color'),
71
+ type: 'string',
72
+ widget: 'color',
73
+ props: {
74
+ disabledAlpha: true,
75
+ },
76
+ required: true,
77
+ rules: [{ pattern: HEX_COLOR_PATTERN, message: i18n('validation.hexColor') }],
78
+ },
79
+ }),
80
+ defaultSchema: {
81
+ name: '',
82
+ type: 'line',
83
+ position: { x: 0, y: 0 },
84
+ width: 50,
85
+ height: 0.5,
86
+ rotate: 0,
87
+ opacity: 1,
88
+ readOnly: true,
89
+ color: DEFAULT_LINE_COLOR,
90
+ },
91
+ },
92
+ icon: createSvgStr(Minus),
93
+ };
94
+ export default lineSchema;
@@ -0,0 +1,152 @@
1
+ import { Plugin, Schema, mm2pt } from '@pdfme/common';
2
+ import { HEX_COLOR_PATTERN } from '../constants.js';
3
+ import { hex2PrintingColor, convertForPdfLayoutProps, createSvgStr } from '../utils.js';
4
+ import { toRadians } from '@pdfme/pdf-lib';
5
+ import { Circle, Square } from 'lucide';
6
+
7
+ interface ShapeSchema extends Schema {
8
+ type: 'ellipse' | 'rectangle';
9
+ borderWidth: number;
10
+ borderColor: string;
11
+ color: string;
12
+ radius?: number;
13
+ }
14
+
15
+ const shape: Plugin<ShapeSchema> = {
16
+ ui: (arg) => {
17
+ const { schema, rootElement } = arg;
18
+ const div = document.createElement('div');
19
+ div.style.width = '100%';
20
+ div.style.height = '100%';
21
+ div.style.boxSizing = 'border-box';
22
+ if (schema.type === 'ellipse') {
23
+ div.style.borderRadius = '50%';
24
+ } else if (schema.radius && schema.radius > 0) {
25
+ div.style.borderRadius = `${schema.radius}mm`;
26
+ }
27
+ div.style.borderWidth = `${schema.borderWidth ?? 0}mm`;
28
+ div.style.borderStyle = schema.borderWidth && schema.borderColor ? 'solid' : 'none';
29
+ div.style.borderColor = schema.borderColor ?? 'transparent';
30
+ div.style.backgroundColor = schema.color ?? 'transparent';
31
+
32
+ rootElement.appendChild(div);
33
+ },
34
+ pdf: (arg) => {
35
+ const { schema, page, options } = arg;
36
+ if (!schema.color && !schema.borderColor) return;
37
+ const { colorType } = options;
38
+ const pageHeight = page.getHeight();
39
+ const cArg = { schema, pageHeight };
40
+ const { position, width, height, rotate, opacity } = convertForPdfLayoutProps(cArg);
41
+ const {
42
+ position: { x: x4Ellipse, y: y4Ellipse },
43
+ } = convertForPdfLayoutProps({ ...cArg, applyRotateTranslate: false });
44
+ const borderWidth = schema.borderWidth ? mm2pt(schema.borderWidth) : 0;
45
+
46
+ const drawOptions = {
47
+ rotate,
48
+ borderWidth,
49
+ borderColor: hex2PrintingColor(schema.borderColor, colorType),
50
+ color: hex2PrintingColor(schema.color, colorType),
51
+ opacity,
52
+ borderOpacity: opacity,
53
+ };
54
+ if (schema.type === 'ellipse') {
55
+ page.drawEllipse({
56
+ x: x4Ellipse + width / 2,
57
+ y: y4Ellipse + height / 2,
58
+ xScale: width / 2 - borderWidth / 2,
59
+ yScale: height / 2 - borderWidth / 2,
60
+ ...drawOptions,
61
+ });
62
+ } else if (schema.type === 'rectangle') {
63
+ const radius = schema.radius ?? 0;
64
+
65
+ page.drawRectangle({
66
+ x:
67
+ position.x +
68
+ borderWidth * ((1 - Math.sin(toRadians(rotate))) / 2) +
69
+ Math.tan(toRadians(rotate)) * Math.PI ** 2,
70
+ y:
71
+ position.y +
72
+ borderWidth * ((1 + Math.sin(toRadians(rotate))) / 2) +
73
+ Math.tan(toRadians(rotate)) * Math.PI ** 2,
74
+ width: width - borderWidth,
75
+ height: height - borderWidth,
76
+ ...(radius ? { radius: mm2pt(radius) } : {}),
77
+ ...drawOptions,
78
+ });
79
+ }
80
+ },
81
+ propPanel: {
82
+ schema: ({ i18n }) => ({
83
+ borderWidth: {
84
+ title: i18n('schemas.borderWidth'),
85
+ type: 'number',
86
+ widget: 'inputNumber',
87
+ props: { min: 0, step: 1 },
88
+ span: 12,
89
+ },
90
+ borderColor: {
91
+ title: i18n('schemas.borderColor'),
92
+ type: 'string',
93
+ widget: 'color',
94
+ props: {
95
+ disabledAlpha: true,
96
+ },
97
+ rules: [{ pattern: HEX_COLOR_PATTERN, message: i18n('validation.hexColor') }],
98
+ span: 12,
99
+ },
100
+ color: {
101
+ title: i18n('schemas.color'),
102
+ type: 'string',
103
+ widget: 'color',
104
+ props: {
105
+ disabledAlpha: true,
106
+ },
107
+ rules: [{ pattern: HEX_COLOR_PATTERN, message: i18n('validation.hexColor') }],
108
+ },
109
+ radius: {
110
+ title: i18n('schemas.radius'),
111
+ type: 'number',
112
+ widget: 'inputNumber',
113
+ props: { min: 0, step: 1 },
114
+ span: 12,
115
+ },
116
+ }),
117
+ defaultSchema: {
118
+ name: '',
119
+ type: 'rectangle',
120
+ position: { x: 0, y: 0 },
121
+ width: 62.5,
122
+ height: 37.5,
123
+ rotate: 0,
124
+ opacity: 1,
125
+ borderWidth: 1,
126
+ borderColor: '#000000',
127
+ color: '',
128
+ readOnly: true,
129
+ radius: 0,
130
+ },
131
+ },
132
+ };
133
+
134
+ const getPropPanelSchema = (type: 'rectangle' | 'ellipse') => ({
135
+ ...shape.propPanel,
136
+ defaultSchema: {
137
+ ...(shape.propPanel.defaultSchema as ShapeSchema),
138
+ type,
139
+ },
140
+ });
141
+
142
+ export const rectangle = {
143
+ ...shape,
144
+ propPanel: getPropPanelSchema('rectangle'),
145
+ icon: createSvgStr(Square),
146
+ };
147
+
148
+ export const ellipse = {
149
+ ...shape,
150
+ propPanel: getPropPanelSchema('ellipse'),
151
+ icon: createSvgStr(Circle),
152
+ };
@@ -0,0 +1,152 @@
1
+ import { DEFAULT_FONT_NAME, Plugin, PDFRenderProps, getFallbackFontName } from '@pdfme/common';
2
+ import { uiRender as textUiRender } from '../text/uiRender.js';
3
+ import { pdfRender as textPdfRender } from '../text/pdfRender.js';
4
+ import line from '../shapes/line.js';
5
+ import { rectangle } from '../shapes/rectAndEllipse.js';
6
+ import type { CellSchema } from './types.js';
7
+ import { getCellPropPanelSchema, getDefaultCellStyles } from './helper.js';
8
+ const linePdfRender = line.pdf;
9
+ const rectanglePdfRender = rectangle.pdf;
10
+
11
+ const renderLine = async (
12
+ arg: PDFRenderProps<CellSchema>,
13
+ schema: CellSchema,
14
+ position: { x: number; y: number },
15
+ width: number,
16
+ height: number,
17
+ ) =>
18
+ linePdfRender({
19
+ ...arg,
20
+ schema: { ...schema, type: 'line', position, width, height, color: schema.borderColor },
21
+ });
22
+
23
+ const createTextDiv = (schema: CellSchema) => {
24
+ const { borderWidth: bw, width, height, padding: pd } = schema;
25
+ const textDiv = document.createElement('div');
26
+ textDiv.style.position = 'absolute';
27
+ textDiv.style.zIndex = '1';
28
+ textDiv.style.width = `${width - bw.left - bw.right - pd.left - pd.right}mm`;
29
+ textDiv.style.height = `${height - bw.top - bw.bottom - pd.top - pd.bottom}mm`;
30
+ textDiv.style.top = `${bw.top + pd.top}mm`;
31
+ textDiv.style.left = `${bw.left + pd.left}mm`;
32
+ return textDiv;
33
+ };
34
+
35
+ const createLineDiv = (
36
+ width: string,
37
+ height: string,
38
+ top: string | null,
39
+ right: string | null,
40
+ bottom: string | null,
41
+ left: string | null,
42
+ borderColor: string,
43
+ ) => {
44
+ const div = document.createElement('div');
45
+ div.style.width = width;
46
+ div.style.height = height;
47
+ div.style.position = 'absolute';
48
+ if (top !== null) div.style.top = top;
49
+ if (right !== null) div.style.right = right;
50
+ if (bottom !== null) div.style.bottom = bottom;
51
+ if (left !== null) div.style.left = left;
52
+ div.style.backgroundColor = borderColor;
53
+ return div;
54
+ };
55
+
56
+ const cellSchema: Plugin<CellSchema> = {
57
+ pdf: async (arg) => {
58
+ const { schema } = arg;
59
+ const { position, width, height, borderWidth, padding } = schema;
60
+
61
+ await Promise.all([
62
+ // BACKGROUND
63
+ rectanglePdfRender({
64
+ ...arg,
65
+ schema: {
66
+ ...schema,
67
+ type: 'rectangle',
68
+ width: schema.width,
69
+ height: schema.height,
70
+ borderWidth: 0,
71
+ borderColor: '',
72
+ color: schema.backgroundColor,
73
+ },
74
+ }),
75
+ // TOP
76
+ renderLine(arg, schema, { x: position.x, y: position.y }, width, borderWidth.top),
77
+ // RIGHT
78
+ renderLine(
79
+ arg,
80
+ schema,
81
+ { x: position.x + width - borderWidth.right, y: position.y },
82
+ borderWidth.right,
83
+ height,
84
+ ),
85
+ // BOTTOM
86
+ renderLine(
87
+ arg,
88
+ schema,
89
+ { x: position.x, y: position.y + height - borderWidth.bottom },
90
+ width,
91
+ borderWidth.bottom,
92
+ ),
93
+ // LEFT
94
+ renderLine(arg, schema, { x: position.x, y: position.y }, borderWidth.left, height),
95
+ ]);
96
+ // TEXT
97
+ await textPdfRender({
98
+ ...arg,
99
+ schema: {
100
+ ...schema,
101
+ type: 'text',
102
+ backgroundColor: '',
103
+ position: {
104
+ x: position.x + borderWidth.left + padding.left,
105
+ y: position.y + borderWidth.top + padding.top,
106
+ },
107
+ width: width - borderWidth.left - borderWidth.right - padding.left - padding.right,
108
+ height: height - borderWidth.top - borderWidth.bottom - padding.top - padding.bottom,
109
+ },
110
+ });
111
+ },
112
+ ui: async (arg) => {
113
+ const { schema, rootElement } = arg;
114
+ const { borderWidth, width, height, borderColor, backgroundColor } = schema;
115
+ rootElement.style.backgroundColor = backgroundColor;
116
+
117
+ const textDiv = createTextDiv(schema);
118
+ await textUiRender({
119
+ ...arg,
120
+ schema: { ...schema, backgroundColor: '' },
121
+ rootElement: textDiv,
122
+ });
123
+ rootElement.appendChild(textDiv);
124
+
125
+ const lines = [
126
+ createLineDiv(`${width}mm`, `${borderWidth.top}mm`, '0mm', null, null, '0mm', borderColor),
127
+ createLineDiv(`${width}mm`, `${borderWidth.bottom}mm`, null, null, '0mm', '0mm', borderColor),
128
+ createLineDiv(`${borderWidth.left}mm`, `${height}mm`, '0mm', null, null, '0mm', borderColor),
129
+ createLineDiv(`${borderWidth.right}mm`, `${height}mm`, '0mm', '0mm', null, null, borderColor),
130
+ ];
131
+
132
+ lines.forEach((line) => rootElement.appendChild(line));
133
+ },
134
+ propPanel: {
135
+ schema: ({ options, i18n }) => {
136
+ const font = options.font || { [DEFAULT_FONT_NAME]: { data: '', fallback: true } };
137
+ const fontNames = Object.keys(font);
138
+ const fallbackFontName = getFallbackFontName(font);
139
+ return getCellPropPanelSchema({ i18n, fontNames, fallbackFontName });
140
+ },
141
+ defaultSchema: {
142
+ name: '',
143
+ type: 'cell',
144
+ content: 'Type Something...',
145
+ position: { x: 0, y: 0 },
146
+ width: 50,
147
+ height: 15,
148
+ ...getDefaultCellStyles(),
149
+ },
150
+ },
151
+ };
152
+ export default cellSchema;