@printstack/print-studio 0.0.0-stage → 0.1.1

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 (429) hide show
  1. package/README.md +246 -2
  2. package/assets/render.worker-Ch4qWx3S.js +109 -0
  3. package/cloneDeep-PCw2ErRl.js +1923 -0
  4. package/components/base-dialog/base-dialog.vue.d.ts +56 -0
  5. package/components/base-dialog/index.d.ts +2 -0
  6. package/components/base-dialog/types.d.ts +20 -0
  7. package/components/button-group/ButtonGroup.d.ts +64 -0
  8. package/components/button-group/index.d.ts +2 -0
  9. package/components/error-fallback/ErrorBoundary.d.ts +15 -0
  10. package/components/error-fallback/browser.d.ts +7 -0
  11. package/components/error-fallback/core.d.ts +36 -0
  12. package/components/error-fallback/exceptions/SilentException.d.ts +7 -0
  13. package/components/error-fallback/index.d.ts +8 -0
  14. package/components/error-fallback/rules/silent-exception.d.ts +2 -0
  15. package/components/error-fallback/vue.d.ts +3 -0
  16. package/components/popup-layer/container.d.ts +2 -0
  17. package/components/popup-layer/use-popup-layer.d.ts +6 -0
  18. package/components/popup-layer/with-popup-layer.d.ts +37 -0
  19. package/components/print-s-logo/print-s-logo.vue.d.ts +12 -0
  20. package/components/s-form/FieldRenderer.d.ts +21 -0
  21. package/components/s-form/SForm.d.ts +77 -0
  22. package/components/s-form/adapter.d.ts +61 -0
  23. package/components/s-form/builtin.d.ts +1 -0
  24. package/components/s-form/context.d.ts +44 -0
  25. package/components/s-form/diagnostics.d.ts +28 -0
  26. package/components/s-form/field-status.d.ts +18 -0
  27. package/components/s-form/index.d.ts +15 -0
  28. package/components/s-form/layouts/CollapseToggle.d.ts +28 -0
  29. package/components/s-form/layouts/FlexLayout.d.ts +89 -0
  30. package/components/s-form/layouts/GridLayout.d.ts +67 -0
  31. package/components/s-form/registry.d.ts +31 -0
  32. package/components/s-form/schema.d.ts +9 -0
  33. package/components/s-form/states.d.ts +59 -0
  34. package/components/s-form/types.d.ts +550 -0
  35. package/components/s-form/use-form-layout.d.ts +21 -0
  36. package/components/s-form/use-form-model.d.ts +15 -0
  37. package/components/s-form/utils.d.ts +76 -0
  38. package/composables/use-json-object-input.d.ts +10 -0
  39. package/composables/use-keyboard-shortcuts.d.ts +16 -0
  40. package/composables/use-z-index.d.ts +9 -0
  41. package/core/align.d.ts +43 -0
  42. package/core/binding-expression.d.ts +25 -0
  43. package/core/binding-formatters.d.ts +43 -0
  44. package/core/data-context.d.ts +73 -0
  45. package/core/data-source-path.d.ts +10 -0
  46. package/core/data-source.d.ts +26 -0
  47. package/core/document-expand.d.ts +7 -0
  48. package/core/document-model.d.ts +56 -0
  49. package/core/document-variable-resolver.d.ts +10 -0
  50. package/core/document-variables.d.ts +23 -0
  51. package/core/element-group.d.ts +73 -0
  52. package/core/element-registry.d.ts +229 -0
  53. package/core/element-transform.d.ts +12 -0
  54. package/core/errors.d.ts +20 -0
  55. package/core/events.d.ts +311 -0
  56. package/core/flow-expand.d.ts +13 -0
  57. package/core/follow-block.d.ts +9 -0
  58. package/core/follow-layout.d.ts +8 -0
  59. package/core/geometry.d.ts +110 -0
  60. package/core/index.d.ts +5 -0
  61. package/core/inspector.d.ts +27 -0
  62. package/core/layout-references.d.ts +8 -0
  63. package/core/overflow-expand.d.ts +7 -0
  64. package/core/page-extensions.d.ts +26 -0
  65. package/core/page-layout.d.ts +6 -0
  66. package/core/parser-version.d.ts +2 -0
  67. package/core/pointer-drag.d.ts +33 -0
  68. package/core/render/barcode.d.ts +26 -0
  69. package/core/render/canvas.d.ts +3 -0
  70. package/core/render/color.d.ts +19 -0
  71. package/core/render/dash.d.ts +4 -0
  72. package/core/render/element-warning.d.ts +3 -0
  73. package/core/render/fonts.d.ts +20 -0
  74. package/core/render/frame.d.ts +10 -0
  75. package/core/render/html.d.ts +11 -0
  76. package/core/render/image.d.ts +13 -0
  77. package/core/render/jspdf-loader.d.ts +6 -0
  78. package/core/render/pdf-draw.d.ts +64 -0
  79. package/core/render/qrcode.d.ts +15 -0
  80. package/core/render/render-task.d.ts +7 -0
  81. package/core/render/resource-data.d.ts +1 -0
  82. package/core/render/resource-task.d.ts +5 -0
  83. package/core/render/text-layout.d.ts +34 -0
  84. package/core/repeat-expand.d.ts +17 -0
  85. package/core/repeat-layout.d.ts +15 -0
  86. package/core/runtime-config.d.ts +12 -0
  87. package/core/types.d.ts +289 -0
  88. package/core/units.d.ts +15 -0
  89. package/core/z-index.d.ts +41 -0
  90. package/core.js +48 -0
  91. package/cost-sheet-Dwg0rt_l.js +1600 -0
  92. package/designer/commands/builtins.d.ts +2 -0
  93. package/designer/commands/command-registry.d.ts +39 -0
  94. package/designer/commands/domain-commands.d.ts +2 -0
  95. package/designer/commands/menu-adapter.d.ts +12 -0
  96. package/designer/commands/menu-interaction.d.ts +2 -0
  97. package/designer/commands/menu-types.d.ts +28 -0
  98. package/designer/commands/types.d.ts +57 -0
  99. package/designer/commands/use-command-shortcuts.d.ts +2 -0
  100. package/designer/components/bars/check-toggle.vue.d.ts +14 -0
  101. package/designer/components/bars/menu-bar.vue.d.ts +11 -0
  102. package/designer/components/bars/options-bar.vue.d.ts +3 -0
  103. package/designer/components/bars/tool-bar.vue.d.ts +3 -0
  104. package/designer/components/binding/binding-picker.vue.d.ts +23 -0
  105. package/designer/components/binding/binding-presets.d.ts +9 -0
  106. package/designer/components/binding/field-tree.vue.d.ts +21 -0
  107. package/designer/components/binding/schema-tree-editor.vue.d.ts +13 -0
  108. package/designer/components/binding/use-binding-expression.d.ts +41 -0
  109. package/designer/components/binding/use-binding-preview.d.ts +14 -0
  110. package/designer/components/binding/use-binding-sources.d.ts +37 -0
  111. package/designer/components/binding/use-binding-submission.d.ts +16 -0
  112. package/designer/components/designer-shell.vue.d.ts +16 -0
  113. package/designer/components/dialogs/apply-template-dialog.vue.d.ts +3 -0
  114. package/designer/components/dialogs/canvas-color-dialog.vue.d.ts +3 -0
  115. package/designer/components/dialogs/data-source-dialog.vue.d.ts +3 -0
  116. package/designer/components/dialogs/dialog-session-host.vue.d.ts +21 -0
  117. package/designer/components/dialogs/element-dialog.vue.d.ts +7 -0
  118. package/designer/components/dialogs/element-settings-workspace.vue.d.ts +28 -0
  119. package/designer/components/dialogs/export-progress-dialog.vue.d.ts +3 -0
  120. package/designer/components/dialogs/follow-dialog.vue.d.ts +3 -0
  121. package/designer/components/dialogs/follow-manager-dialog.vue.d.ts +3 -0
  122. package/designer/components/dialogs/guide-dialog.vue.d.ts +3 -0
  123. package/designer/components/dialogs/page-dialog.vue.d.ts +3 -0
  124. package/designer/components/dialogs/preview-dialog.vue.d.ts +12 -0
  125. package/designer/components/dialogs/print-preview-dialog.vue.d.ts +14 -0
  126. package/designer/components/dialogs/print-preview-source.d.ts +22 -0
  127. package/designer/components/dialogs/repeat-dialog.vue.d.ts +3 -0
  128. package/designer/components/dialogs/repeat-manager-dialog.vue.d.ts +3 -0
  129. package/designer/components/dialogs/template-library-dialog.vue.d.ts +3 -0
  130. package/designer/components/dialogs/tutorial-dialog.vue.d.ts +3 -0
  131. package/designer/components/dialogs/use-data-source-sample.d.ts +18 -0
  132. package/designer/components/dialogs/use-document-preview.d.ts +33 -0
  133. package/designer/components/dialogs/use-preview-renderer.d.ts +32 -0
  134. package/designer/components/dialogs/use-preview-viewport.d.ts +37 -0
  135. package/designer/components/dialogs/use-print-preview.d.ts +33 -0
  136. package/designer/components/dialogs/use-template-catalog.d.ts +51 -0
  137. package/designer/components/dialogs/use-template-preview.d.ts +35 -0
  138. package/designer/components/fields/field-boolean.vue.d.ts +20 -0
  139. package/designer/components/fields/field-color.vue.d.ts +20 -0
  140. package/designer/components/fields/field-data-preview.vue.d.ts +12 -0
  141. package/designer/components/fields/field-image.vue.d.ts +14 -0
  142. package/designer/components/fields/field-table-borders.vue.d.ts +22 -0
  143. package/designer/components/fields/field-table-cell-style.vue.d.ts +13 -0
  144. package/designer/components/fields/field-table-continuation-layout.vue.d.ts +14 -0
  145. package/designer/components/fields/field-table-merge-rules.vue.d.ts +13 -0
  146. package/designer/components/fields/field-table-rows.vue.d.ts +13 -0
  147. package/designer/components/fields/field-table-structure.vue.d.ts +19 -0
  148. package/designer/components/fields/field-table.vue.d.ts +21 -0
  149. package/designer/components/fields/use-table-cells.d.ts +38 -0
  150. package/designer/components/fields/use-table-column-resize.d.ts +11 -0
  151. package/designer/components/fields/use-table-columns.d.ts +19 -0
  152. package/designer/components/fields/use-table-draft.d.ts +569 -0
  153. package/designer/components/fields/use-table-header-selection.d.ts +25 -0
  154. package/designer/components/fields/use-table-headers.d.ts +22 -0
  155. package/designer/components/fields/use-table-selection.d.ts +32 -0
  156. package/designer/components/forms/collection-picker-field.vue.d.ts +12 -0
  157. package/designer/components/forms/designer-field.vue.d.ts +23 -0
  158. package/designer/components/forms/designer-form.vue.d.ts +28 -0
  159. package/designer/components/forms/form-presentation.d.ts +6 -0
  160. package/designer/components/forms/inspector-schema.d.ts +9 -0
  161. package/designer/components/forms/table-inspector-control.vue.d.ts +24 -0
  162. package/designer/components/panels/control-panel.vue.d.ts +3 -0
  163. package/designer/components/panels/info-bar.vue.d.ts +7 -0
  164. package/designer/components/panels/inspector-field.vue.d.ts +13 -0
  165. package/designer/components/panels/layers-panel.vue.d.ts +3 -0
  166. package/designer/components/panels/pages-panel.vue.d.ts +3 -0
  167. package/designer/components/panels/panel-column.vue.d.ts +11 -0
  168. package/designer/components/panels/panel-dock.vue.d.ts +3 -0
  169. package/designer/components/panels/panel-group.vue.d.ts +12 -0
  170. package/designer/components/panels/transform-fields.d.ts +4 -0
  171. package/designer/components/panels/use-panel-drop-target.d.ts +24 -0
  172. package/designer/components/panels/use-panel-interactions.d.ts +22 -0
  173. package/designer/components/previews/barcode-preview.vue.d.ts +8 -0
  174. package/designer/components/previews/ellipse-preview.vue.d.ts +8 -0
  175. package/designer/components/previews/image-preview.vue.d.ts +8 -0
  176. package/designer/components/previews/line-preview.vue.d.ts +10 -0
  177. package/designer/components/previews/qrcode-preview.vue.d.ts +8 -0
  178. package/designer/components/previews/rect-preview.vue.d.ts +8 -0
  179. package/designer/components/previews/table-preview.vue.d.ts +8 -0
  180. package/designer/components/previews/text-preview.vue.d.ts +8 -0
  181. package/designer/components/stage/canvas-stage.vue.d.ts +3 -0
  182. package/designer/components/stage/element-renderer.vue.d.ts +12 -0
  183. package/designer/components/stage/follow-overlay.vue.d.ts +8 -0
  184. package/designer/components/stage/guides-drag-layer.vue.d.ts +3 -0
  185. package/designer/components/stage/guides-layer.vue.d.ts +8 -0
  186. package/designer/components/stage/inline-text-editor.vue.d.ts +16 -0
  187. package/designer/components/stage/page-view.vue.d.ts +10 -0
  188. package/designer/components/stage/repeat-overlay.vue.d.ts +8 -0
  189. package/designer/components/stage/ruler.vue.d.ts +6 -0
  190. package/designer/components/stage/selection-overlay.vue.d.ts +10 -0
  191. package/designer/components/stage/template-editing-banner.vue.d.ts +3 -0
  192. package/designer/components/stage/use-stage-pan.d.ts +6 -0
  193. package/designer/components/stage/use-stage-viewport.d.ts +13 -0
  194. package/designer/components/startup/startup-loading-view.vue.d.ts +9 -0
  195. package/designer/components/startup/startup-loading.d.ts +7 -0
  196. package/designer/components/ui/align-grid.vue.d.ts +9 -0
  197. package/designer/components/ui/align-icons.d.ts +3 -0
  198. package/designer/components/ui/align-target.vue.d.ts +3 -0
  199. package/designer/components/ui/context-menu.vue.d.ts +3 -0
  200. package/designer/components/ui/dialog-tabs.vue.d.ts +15 -0
  201. package/designer/components/ui/extension-slot.vue.d.ts +6 -0
  202. package/designer/components/ui/fallback-block.vue.d.ts +42 -0
  203. package/designer/components/ui/form-block.vue.d.ts +27 -0
  204. package/designer/components/ui/hint-text.vue.d.ts +23 -0
  205. package/designer/components/ui/icon-button.vue.d.ts +24 -0
  206. package/designer/components/ui/icon.vue.d.ts +6 -0
  207. package/designer/components/ui/icons.d.ts +2 -0
  208. package/designer/components/ui/menu-items.vue.d.ts +11 -0
  209. package/designer/components/ui/panel-frame.vue.d.ts +21 -0
  210. package/designer/components/ui/toast-host.vue.d.ts +3 -0
  211. package/designer/components/ui/tool-icon.vue.d.ts +6 -0
  212. package/designer/components/variable-text/use-variable-text-bindings.d.ts +9 -0
  213. package/designer/components/variable-text/use-variable-text-editor.d.ts +38 -0
  214. package/designer/components/variable-text/variable-formatter-editor.vue.d.ts +16 -0
  215. package/designer/components/variable-text/variable-text-field.vue.d.ts +33 -0
  216. package/designer/components/variable-text/variable-text-preview.vue.d.ts +7 -0
  217. package/designer/composables/use-restored-ui-state.d.ts +2 -0
  218. package/designer/config/canvas-background.d.ts +18 -0
  219. package/designer/context/editor-context.d.ts +64 -0
  220. package/designer/context/editor-runtime.d.ts +11 -0
  221. package/designer/context/editor-view.d.ts +8 -0
  222. package/designer/context/inspector-layout.d.ts +7 -0
  223. package/designer/context/use-element-definition.d.ts +1 -0
  224. package/designer/events/store-event-bindings.d.ts +7 -0
  225. package/designer/facade/bindings.d.ts +6 -0
  226. package/designer/facade/editing.d.ts +43 -0
  227. package/designer/facade/elements.d.ts +37 -0
  228. package/designer/facade/entities.d.ts +15364 -0
  229. package/designer/facade/output.d.ts +21 -0
  230. package/designer/facade/pages.d.ts +204 -0
  231. package/designer/facade/print-studio.d.ts +3 -0
  232. package/designer/facade/state.d.ts +10 -0
  233. package/designer/facade/use-print-studio.d.ts +6 -0
  234. package/designer/frame/entry.d.ts +0 -0
  235. package/designer/frame/host.d.ts +7 -0
  236. package/designer/frame/print-designer-frame.vue.d.ts +25 -0
  237. package/designer/frame/shared.d.ts +32 -0
  238. package/designer/frame/view.d.ts +15 -0
  239. package/designer/interactions/create.d.ts +3 -0
  240. package/designer/interactions/geometry-update.d.ts +3 -0
  241. package/designer/interactions/guides.d.ts +7 -0
  242. package/designer/interactions/marquee.d.ts +3 -0
  243. package/designer/interactions/move.d.ts +3 -0
  244. package/designer/interactions/point.d.ts +3 -0
  245. package/designer/interactions/pointer-drag.d.ts +3 -0
  246. package/designer/interactions/resize-strategies.d.ts +23 -0
  247. package/designer/interactions/snap.d.ts +48 -0
  248. package/designer/interactions/transform.d.ts +5 -0
  249. package/designer/mount-print-designer.d.ts +2 -0
  250. package/designer/mount-print-preview.d.ts +5 -0
  251. package/designer/plugins/builtins.d.ts +6 -0
  252. package/designer/plugins/context-menu-guard.d.ts +2 -0
  253. package/designer/plugins/domain-builtins.d.ts +5 -0
  254. package/designer/plugins/element-previews.d.ts +2 -0
  255. package/designer/plugins/error-handling.d.ts +5 -0
  256. package/designer/plugins/extension-points.d.ts +34 -0
  257. package/designer/plugins/follow-layout.d.ts +2 -0
  258. package/designer/plugins/panels.d.ts +2 -0
  259. package/designer/plugins/plugin-bootstrap.d.ts +5 -0
  260. package/designer/plugins/plugin-canvas.d.ts +29 -0
  261. package/designer/plugins/plugin-context.d.ts +100 -0
  262. package/designer/plugins/plugin-manager.d.ts +44 -0
  263. package/designer/plugins/plugin-scope.d.ts +10 -0
  264. package/designer/plugins/sandbox-plugin.d.ts +9 -0
  265. package/designer/plugins/tdesign-forms.d.ts +32 -0
  266. package/designer/plugins/template-library.d.ts +7 -0
  267. package/designer/plugins/tutorials.d.ts +2 -0
  268. package/designer/plugins/types.d.ts +63 -0
  269. package/designer/presets.d.ts +8 -0
  270. package/designer/print-designer.vue.d.ts +25 -0
  271. package/designer/print-preview.vue.d.ts +4 -0
  272. package/designer/services/document-actions.d.ts +17 -0
  273. package/designer/services/editor-resources.d.ts +6 -0
  274. package/designer/services/element-drop.d.ts +4 -0
  275. package/designer/services/file-reader.d.ts +2 -0
  276. package/designer/services/file-service.d.ts +7 -0
  277. package/designer/services/preference-storage.d.ts +9 -0
  278. package/designer/services/sample-preview.d.ts +16 -0
  279. package/designer/services/stage-service.d.ts +24 -0
  280. package/designer/services/text-input.d.ts +10 -0
  281. package/designer/stores/canvas-store.d.ts +33 -0
  282. package/designer/stores/clipboard-store.d.ts +143 -0
  283. package/designer/stores/config-store.d.ts +80 -0
  284. package/designer/stores/data-source-store.d.ts +58 -0
  285. package/designer/stores/document-store.d.ts +1186 -0
  286. package/designer/stores/editor-store.d.ts +10224 -0
  287. package/designer/stores/element-group-store.d.ts +101 -0
  288. package/designer/stores/element-store.d.ts +237 -0
  289. package/designer/stores/follow-block-store.d.ts +290 -0
  290. package/designer/stores/guide-store.d.ts +44 -0
  291. package/designer/stores/history-store.d.ts +45 -0
  292. package/designer/stores/layout-store.d.ts +18 -0
  293. package/designer/stores/navigation-store.d.ts +56 -0
  294. package/designer/stores/page-store.d.ts +164 -0
  295. package/designer/stores/panel-store.d.ts +526 -0
  296. package/designer/stores/plugin-store.d.ts +19 -0
  297. package/designer/stores/rendering-store.d.ts +120 -0
  298. package/designer/stores/repeat-group-store.d.ts +99 -0
  299. package/designer/stores/scope-store.d.ts +31 -0
  300. package/designer/stores/selection-store.d.ts +101 -0
  301. package/designer/stores/template-store.d.ts +655 -0
  302. package/designer/stores/tutorial-store.d.ts +75 -0
  303. package/designer/stores/types.d.ts +135 -0
  304. package/designer/stores/ui-store.d.ts +723 -0
  305. package/designer/stores/view-store.d.ts +483 -0
  306. package/designer/stores/z-index-store.d.ts +62 -0
  307. package/designer/template-library/builtin/cost-sheet.json.d.ts +1450 -0
  308. package/designer/template-library/builtin/invoice.json.d.ts +3338 -0
  309. package/designer/template-library/builtin/purchase-order.json.d.ts +1541 -0
  310. package/designer/template-library/builtin/welcome.json.d.ts +658 -0
  311. package/designer/template-library/builtin-templates.d.ts +4183 -0
  312. package/designer/template-library/registry.d.ts +13 -0
  313. package/designer/template-library/remote-provider.d.ts +25 -0
  314. package/designer/template-library/types.d.ts +35 -0
  315. package/designer/tools.d.ts +18 -0
  316. package/designer/tutorials/builtins.d.ts +20 -0
  317. package/designer/tutorials/interaction-guard.d.ts +3 -0
  318. package/designer/tutorials/playback.d.ts +17 -0
  319. package/designer/tutorials/scene.d.ts +11 -0
  320. package/designer/tutorials/screenplay.d.ts +3 -0
  321. package/designer/tutorials/types.d.ts +64 -0
  322. package/designer/tutorials/use-tutorial-interaction-guard.d.ts +2 -0
  323. package/designer/tutorials/use-tutorial-playback.d.ts +30 -0
  324. package/designer/types.d.ts +39 -0
  325. package/designer.d.ts +7 -0
  326. package/designer.js +45 -0
  327. package/document-model-GhFP9OGp.js +1302 -0
  328. package/elements/definitions/barcode-element.d.ts +1 -0
  329. package/elements/definitions/ellipse-element.d.ts +1 -0
  330. package/elements/definitions/image-element.d.ts +1 -0
  331. package/elements/definitions/line-element.d.ts +5 -0
  332. package/elements/definitions/qrcode-element.d.ts +1 -0
  333. package/elements/definitions/rect-element.d.ts +1 -0
  334. package/elements/definitions/table-element.d.ts +1 -0
  335. package/elements/definitions/text-element.d.ts +3 -0
  336. package/elements/index.d.ts +8 -0
  337. package/elements/shared/image-drop.d.ts +2 -0
  338. package/elements/shared/line-style.d.ts +4 -0
  339. package/elements/shared/qrcode-inspector.d.ts +7 -0
  340. package/elements/shared/rect-style.d.ts +6 -0
  341. package/elements/shared/shape-props.d.ts +8 -0
  342. package/elements/shared/text-style.d.ts +29 -0
  343. package/elements/table/table-cell-style.d.ts +14 -0
  344. package/elements/table/table-continuation.d.ts +6 -0
  345. package/elements/table/table-html.d.ts +8 -0
  346. package/elements/table/table-layout.d.ts +81 -0
  347. package/elements/table/table-merges.d.ts +3 -0
  348. package/elements/table/table-overflow.d.ts +2 -0
  349. package/elements/table/table-pdf-render.d.ts +3 -0
  350. package/elements/table/table-preview.d.ts +3 -0
  351. package/elements/table/table-render.d.ts +3 -0
  352. package/elements/table/table-structure.d.ts +13 -0
  353. package/elements/table/table-style.d.ts +219 -0
  354. package/host-CuGR8rD6.js +123 -0
  355. package/html2canvas-DGcfD7Np.js +4004 -0
  356. package/index.d.ts +23 -0
  357. package/index.es-LpNWVW4Q.js +5742 -0
  358. package/index.js +84 -0
  359. package/invoice-DuBN6ZCM.js +3282 -0
  360. package/jspdf.es.min-CKTVf941.js +18216 -0
  361. package/locales/adapters/locale-loaders.d.ts +3 -0
  362. package/locales/index.d.ts +11 -0
  363. package/locales/plugin-locales.d.ts +11 -0
  364. package/locales/runtime.d.ts +2084 -0
  365. package/locales/setup.d.ts +3 -0
  366. package/locales/translations/zh-CN/app.json.d.ts +47 -0
  367. package/locales/translations/zh-CN/components.json.d.ts +38 -0
  368. package/locales/translations/zh-CN/core.json.d.ts +127 -0
  369. package/locales/translations/zh-CN/designer.json.d.ts +1562 -0
  370. package/locales/translations/zh-CN/elements.json.d.ts +287 -0
  371. package/locales/translations/zh-CN/parser.json.d.ts +34 -0
  372. package/locales/types.d.ts +8 -0
  373. package/locales/utils.d.ts +5 -0
  374. package/mount-print-designer-BLgVZOnm.js +50 -0
  375. package/mount-print-preview-D7M-1AqH.js +65 -0
  376. package/package.json +46 -4
  377. package/parser/html/html-parser.d.ts +22 -0
  378. package/parser/index.d.ts +28 -0
  379. package/parser/pdf/pdf-parser.d.ts +23 -0
  380. package/parser/prepare-document.d.ts +4 -0
  381. package/parser/prepare-resources.d.ts +7 -0
  382. package/parser/registry.d.ts +6 -0
  383. package/parser/render-runtime.d.ts +39 -0
  384. package/parser/types.d.ts +27 -0
  385. package/parser/worker/render.worker.d.ts +1 -0
  386. package/parser/worker/worker-capabilities.d.ts +6 -0
  387. package/parser/worker/worker-client.d.ts +17 -0
  388. package/parser/worker/worker-handler.d.ts +3 -0
  389. package/parser/worker/worker-protocol.d.ts +55 -0
  390. package/plugins/pen/editing-geometry.d.ts +10 -0
  391. package/plugins/pen/element.d.ts +4 -0
  392. package/plugins/pen/geometry.d.ts +19 -0
  393. package/plugins/pen/index.d.ts +3 -0
  394. package/plugins/pen/locale.d.ts +3 -0
  395. package/plugins/pen/locales/zh-CN.json.d.ts +18 -0
  396. package/plugins/pen/pen-edit-surface.vue.d.ts +10 -0
  397. package/plugins/pen/pen-overlay.vue.d.ts +7 -0
  398. package/plugins/pen/pen-plugin.d.ts +4 -0
  399. package/plugins/pen/pen-preview.vue.d.ts +8 -0
  400. package/plugins/pen/pen-surface.vue.d.ts +9 -0
  401. package/plugins/pen/resources.d.ts +2 -0
  402. package/plugins/saas/client.d.ts +3 -0
  403. package/plugins/saas/errors.d.ts +5 -0
  404. package/plugins/saas/index.d.ts +5 -0
  405. package/plugins/saas/integration.d.ts +2 -0
  406. package/plugins/saas/plugin.d.ts +17 -0
  407. package/plugins/saas/preferences.d.ts +5 -0
  408. package/plugins/saas/types.d.ts +96 -0
  409. package/presets-D3WhkbZK.js +13 -0
  410. package/purchase-order-DNBFPpEZ.js +1526 -0
  411. package/purify.es-BTRXviHm.js +876 -0
  412. package/registries-dZq8MewR.js +9737 -0
  413. package/rolldown-runtime-QGRDbDUS.js +19 -0
  414. package/runtime/browser-output.d.ts +18 -0
  415. package/runtime/document-output.d.ts +21 -0
  416. package/runtime/print-renderer.d.ts +26 -0
  417. package/runtime/registries.d.ts +10 -0
  418. package/runtime.js +45 -0
  419. package/saas-B1H161e1.js +524 -0
  420. package/saas.js +1 -0
  421. package/studio-BFQYHZsg.js +6244 -0
  422. package/studio-types.d.ts +200 -0
  423. package/studio.d.ts +2 -0
  424. package/style.css +2 -0
  425. package/styles/lib.d.ts +0 -0
  426. package/styles.js +0 -0
  427. package/types-Vh_6jhVV.js +5 -0
  428. package/vue.d.ts +13 -0
  429. package/vue.js +32849 -0
package/README.md CHANGED
@@ -1,3 +1,247 @@
1
- # Temporary Holding Version
1
+ # @printstack/print-studio
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ 浏览器端打印模板设计器与输出运行时。可视化设计打印模板,注入业务数据后进行预览与打印,或导出 HTML / PDF。适用于在 ERP、CMS、OA 等第三方业务系统中嵌入打印能力。
4
+
5
+ - **可视化设计器**:多页管理、页面模板与文本、表格、条码、二维码、图片等常用打印元素;界面运行于库自管的隔离 iframe,宿主零样式接入。
6
+ - **数据绑定**:字符串属性 `{{ 路径 | 格式化器 }}` 注入业务数据,表格跨页续排、循环区块展开明细。
7
+ - **输出**:浏览器预览与打印、独立 HTML、PDF Blob。全部在浏览器内完成,无服务端依赖,打印数据由调用方传入。
8
+
9
+ ## 安装
10
+
11
+ 预览、打印和 PDF 导出依赖浏览器 DOM / Canvas,不支持 Node.js / SSR。发布包为纯 ESM,Vue、Pinia 等运行时依赖随包自动安装,非 Vue 项目无需编写 Vue 组件;样式已随隔离 iframe 内联加载,无需手动导入。
12
+
13
+ ```bash
14
+ npm install @printstack/print-studio
15
+
16
+ # 或
17
+ pnpm add @printstack/print-studio
18
+ yarn add @printstack/print-studio
19
+ ```
20
+
21
+ ### 包导出入口
22
+
23
+ | 导入路径 | 内容 |
24
+ | --- | --- |
25
+ | `@printstack/print-studio` | `createPrintStudio()` 工作区工厂与公共类型 |
26
+ | `@printstack/print-studio/vue` | `PrintDesigner` 组件、`usePrintStudio()` |
27
+ | `@printstack/print-studio/designer` | `mountPrintDesigner()` 命令式挂载 |
28
+ | `@printstack/print-studio/runtime` | `createPrintRenderer()` 纯输出运行时 |
29
+ | `@printstack/print-studio/core` | 文档模型与工具(`deserializeDocument()` 等) |
30
+
31
+ ## 基础使用
32
+
33
+ ### 引入与初始化
34
+
35
+ `createPrintStudio()` 创建工作区实例,`mount()` 把可视化设计器挂载到业务页面的容器。适用于任意前端框架:
36
+
37
+ ```ts
38
+ import { createPrintStudio } from '@printstack/print-studio'
39
+
40
+ // 1. 创建工作区
41
+ const studio = createPrintStudio({
42
+ storage: false, // 关闭自动草稿,由 onSave 决定保存时机
43
+ async onSave(document) {
44
+ // 收到文档对象(非 JSON 字符串);等待持久化完成后再 resolve,失败抛错
45
+ await fetch('/api/templates', {
46
+ method: 'POST',
47
+ body: JSON.stringify(document),
48
+ })
49
+ },
50
+ })
51
+
52
+ // 2. 挂载设计器界面;resolve 即界面就绪
53
+ await studio.mount({ el: '#designer' })
54
+
55
+ // 3. 编辑模板:代码与设计器界面操作同一份文档
56
+ const page = studio.page.active
57
+ const cell = page.elements.add({
58
+ type: 'text',
59
+ x: 20,
60
+ y: 30,
61
+ width: 100,
62
+ height: 12,
63
+ })
64
+ page.elements.updateProps(cell, { text: '订单号:{{ order.number }}' })
65
+
66
+ // 4. 页面退出时释放工作区
67
+ // studio.unmount() // 仅卸载界面,文档保留,可再次 mount
68
+ // studio.dispose() // 彻底释放
69
+ ```
70
+
71
+ 要点:
72
+
73
+ - `el` 接受元素或 CSS 选择器,**容器需要有明确高度**,设计器界面填满其容器。
74
+ - 界面配置(`ui` / `settings` / `plugins` / `zIndex`)与回调(`onDirtyChange` / `onError`)作为 `mount()` 选项传入,工作区创建选项仍在 `createPrintStudio()` 中配置。
75
+ - 不传 `initialDocument` 时默认打开内置欢迎模板,可直接试用;业务模板通过 `initialDocument` 或 `studio.document.loadJson(json)` 加载。
76
+ - 一个工作区同时只挂载一个设计器;`mount()` 失败或就绪前卸载会 reject,调用方应捕获并 `dispose()` 工作区。
77
+
78
+ Vue 项目也可以使用组件方式。`usePrintStudio()` 在 setup 中创建同一工作区,页面卸载时自动清理:
79
+
80
+ ```vue
81
+ <script setup lang="ts">
82
+ import { PrintDesigner, usePrintStudio } from '@printstack/print-studio/vue'
83
+
84
+ const studio = usePrintStudio({ storage: false })
85
+ </script>
86
+
87
+ <template>
88
+ <div style="height: 100vh">
89
+ <PrintDesigner :studio="studio" />
90
+ </div>
91
+ </template>
92
+ ```
93
+
94
+ ### 预览
95
+
96
+ `studio.preview(input)` 注入本次业务数据并打开打印预览。默认以全屏预览层展示;`input` 是普通对象,属性路径与模板中 `{{ }}` 绑定对应:
97
+
98
+ ```ts
99
+ const input = { order: { number: 'SO-20261114-001', customer: '张女士' } }
100
+
101
+ // 全屏预览层展示,用户自行关闭
102
+ await studio.preview(input)
103
+
104
+ // 需要编程控制时使用返回的句柄
105
+ const handle = await studio.preview(input)
106
+ handle.close()
107
+
108
+ // 或嵌入页面指定容器(容器需要有明确高度)
109
+ await studio.preview(input, {
110
+ container: document.querySelector('#preview-box')!,
111
+ })
112
+
113
+ // 独立挂载完整打印预览,无需挂载设计器;支持 container,缺省挂到 body
114
+ const designerPreview = await studio.preview(input, { mode: 'designer' })
115
+ // 关闭时释放预览界面与渲染会话;也可在指定 container 中展示
116
+ designerPreview.close()
117
+ ```
118
+
119
+ `mode: 'designer'` 使用调用时的文档与数据快照,独立显示带分页导航、缩放、数据编辑和打印操作的完整打印预览;不要求先调用 `studio.mount()`。预览窗口关闭后再调用 `studio.dispose()` 释放工作区。
120
+
121
+ ### 打印
122
+
123
+ `studio.print(input)` 注入数据后调用浏览器打印,在浏览器打印对话框中由用户确认:
124
+
125
+ ```ts
126
+ const { warnings } = await studio.print(input)
127
+ ```
128
+
129
+ 注意事项:
130
+
131
+ - `print()` 返回仅表示打印任务已提交,不代表用户确认或设备出纸成功。
132
+ - 输出界面渲染在隐藏 iframe 中完成;需要时可通过 `signal` 与 `timeoutMs` 控制取消与超时:
133
+
134
+ ```ts
135
+ const controller = new AbortController()
136
+ await studio.print(input, { signal: controller.signal, timeoutMs: 15_000 })
137
+ ```
138
+
139
+ ### 导出
140
+
141
+ `studio.toHTML(input)` 生成独立 HTML 字符串,`studio.toPDF(input)` 生成 PDF Blob,交给宿主下载或上传:
142
+
143
+ ```ts
144
+ // HTML:返回 { html, warnings }
145
+ const { html } = await studio.toHTML(input)
146
+
147
+ // PDF:返回 { blob, warnings };以下载为例
148
+ const { blob } = await studio.toPDF(input)
149
+ const url = URL.createObjectURL(blob)
150
+ const link = document.createElement('a')
151
+ link.href = url
152
+ link.download = 'order.pdf'
153
+ link.click()
154
+ URL.revokeObjectURL(url)
155
+ ```
156
+
157
+ ## 第三方系统集成示例
158
+
159
+ 以 ERP 订单打印为例。典型接入方式:模板在设计器中定稿后以 JSON 保存到业务系统;业务页面调用打印服务,加载模板、注入订单数据,提供预览与打印:
160
+
161
+ ```ts
162
+ // print-service.ts —— ERP 订单打印服务
163
+ import { createPrintStudio, type DesignStudio } from '@printstack/print-studio'
164
+
165
+ interface Order {
166
+ number: string
167
+ customer: string
168
+ }
169
+
170
+ let studio: DesignStudio | undefined
171
+
172
+ function getStudio(): DesignStudio {
173
+ studio ??= createPrintStudio({ storage: false })
174
+ return studio
175
+ }
176
+
177
+ /** 加载业务系统保存的订单模板 JSON;模板更新频率低时可缓存加载结果 */
178
+ async function loadOrderTemplate(): Promise<void> {
179
+ const response = await fetch('/api/templates/order')
180
+ getStudio().document.loadJson(await response.text())
181
+ }
182
+
183
+ /** 点击「打印预览」:打开预览层,用户核对后关闭 */
184
+ export async function previewOrder(order: Order): Promise<void> {
185
+ await loadOrderTemplate()
186
+ await getStudio().preview({ order })
187
+ }
188
+
189
+ /** 点击「打印」:浏览器打印对话框中确认 */
190
+ export async function printOrder(order: Order): Promise<void> {
191
+ await loadOrderTemplate()
192
+ await getStudio().print({ order })
193
+ }
194
+
195
+ /** 点击「导出 PDF」:拿到 Blob 后下载或上传 */
196
+ export async function exportOrderPdf(order: Order): Promise<Blob> {
197
+ await loadOrderTemplate()
198
+ const { blob } = await getStudio().toPDF({ order })
199
+ return blob
200
+ }
201
+
202
+ /** 应用退出时释放 */
203
+ export function destroyPrintService(): void {
204
+ studio?.dispose()
205
+ studio = undefined
206
+ }
207
+ ```
208
+
209
+ 业务页面只需调用这些函数:
210
+
211
+ ```ts
212
+ printButton.addEventListener('click', () => printOrder(currentOrder))
213
+ ```
214
+
215
+ 模板已定稿、不再需要设计器界面时,改用纯输出运行时 `createPrintRenderer()`,不加载任何编辑 UI。注意参数顺序为模板在前、数据在后:
216
+
217
+ ```ts
218
+ import { createPrintRenderer } from '@printstack/print-studio/runtime'
219
+ import { deserializeDocument } from '@printstack/print-studio/core'
220
+
221
+ const renderer = createPrintRenderer()
222
+
223
+ // 业务保存的模板 JSON:解析后可先经 deserializeDocument 校验补全
224
+ const { document: template } = deserializeDocument(
225
+ JSON.parse(savedTemplateJson),
226
+ )
227
+
228
+ const input = { order: { number: 'SO-20261114-001' } }
229
+ const { blob } = await renderer.toPDF(template, input)
230
+ await renderer.print(template, input)
231
+
232
+ renderer.dispose()
233
+ ```
234
+
235
+ ## 更多功能与完整文档
236
+
237
+ > 更多高级功能、详细配置说明及完整 API 文档,请访问 [Print Studio 官方文档](https://print-studio-docs.github.io)。
238
+
239
+ - [快速开始](https://print-studio-docs.github.io/guide/getting-started):从创建项目到预览、打印的完整流程
240
+ - [循序渐进教程](https://print-studio-docs.github.io/tutorial/):模板设计、页面尺寸、元素绘制、数据绑定、保存加载、批量打印
241
+ - [数据绑定参考](https://print-studio-docs.github.io/reference/data-binding):数据源声明、表达式与格式化器
242
+ - [预览 / 打印 / 导出 API](https://print-studio-docs.github.io/reference/output):输出选项、取消与超时、批量输出
243
+ - [Vue 集成](https://print-studio-docs.github.io/reference/vue-designer):组件 props、事件与上下文
244
+ - [插件与扩展](https://print-studio-docs.github.io/reference/plugins):自定义元素、解析器、命令、面板
245
+ - [业务案例](https://print-studio-docs.github.io/examples/product-label):商品标签、快递面单、出入库单、批量导出等完整示例
246
+ - [常见问题](https://print-studio-docs.github.io/guide/troubleshooting):安装、渲染与打印排查
247
+ - [在线演练场](https://print-studio-docs.github.io/playground/index.html):浏览器内直接运行全部示例