@openlettermarketing/olc-react-sdk 2.1.4 → 2.1.5-beta.2
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.
- package/.eslintignore +1 -0
- package/.eslintrc.cjs +18 -0
- package/.eslintrc.yml +47 -0
- package/.github/workflows/publish-beta.yml +154 -0
- package/.github/workflows/publish-production.yml +143 -0
- package/.prettierignore +3 -0
- package/.prettierrc.yml +5 -0
- package/CHANGELOG.md +4 -0
- package/babel.config.json +10 -0
- package/build/index.js +82 -82
- package/build/index.js.map +1 -1
- package/build/types/version.d.ts +1 -1
- package/examples/.eslintrc.yml +4 -0
- package/index.html +18 -0
- package/package.json +1 -1
- package/public/vite.svg +1 -0
- package/src/App.tsx +209 -0
- package/src/assets/Fonts/Lexi-Regular.ttf +0 -0
- package/src/assets/images/create-template/prebuilt.svg +13 -0
- package/src/assets/images/create-template/scratch.svg +4 -0
- package/src/assets/images/input/cancel.tsx +20 -0
- package/src/assets/images/input/search.tsx +20 -0
- package/src/assets/images/input/select-cancel.tsx +17 -0
- package/src/assets/images/modal-icons/add.tsx +36 -0
- package/src/assets/images/modal-icons/cancel-file.tsx +12 -0
- package/src/assets/images/modal-icons/cancel-input.tsx +13 -0
- package/src/assets/images/modal-icons/cancel.tsx +35 -0
- package/src/assets/images/modal-icons/close-new.svg +3 -0
- package/src/assets/images/modal-icons/confirm-close-icon.tsx +14 -0
- package/src/assets/images/modal-icons/confirm-new.tsx +22 -0
- package/src/assets/images/modal-icons/confirm.svg +12 -0
- package/src/assets/images/modal-icons/cross.tsx +23 -0
- package/src/assets/images/modal-icons/del.tsx +19 -0
- package/src/assets/images/modal-icons/design-icon.tsx +22 -0
- package/src/assets/images/modal-icons/doc.tsx +43 -0
- package/src/assets/images/modal-icons/docx.tsx +43 -0
- package/src/assets/images/modal-icons/envelope-icon.tsx +26 -0
- package/src/assets/images/modal-icons/info.tsx +19 -0
- package/src/assets/images/modal-icons/jpeg.tsx +43 -0
- package/src/assets/images/modal-icons/jpg.tsx +43 -0
- package/src/assets/images/modal-icons/modal-cros.svg +4 -0
- package/src/assets/images/modal-icons/modal-cross.tsx +37 -0
- package/src/assets/images/modal-icons/new-cancel.tsx +11 -0
- package/src/assets/images/modal-icons/order-download.tsx +42 -0
- package/src/assets/images/modal-icons/pdf.tsx +51 -0
- package/src/assets/images/modal-icons/png.tsx +43 -0
- package/src/assets/images/modal-icons/save.tsx +23 -0
- package/src/assets/images/modal-icons/template-copy.tsx +25 -0
- package/src/assets/images/modal-icons/tool-cancel.tsx +25 -0
- package/src/assets/images/products/bi-new.svg +23 -0
- package/src/assets/images/products/left-arrow.svg +17 -0
- package/src/assets/images/products/personal-new.tsx +31 -0
- package/src/assets/images/products/postcard-new.tsx +27 -0
- package/src/assets/images/products/professional-new.tsx +24 -0
- package/src/assets/images/products/real-new.tsx +30 -0
- package/src/assets/images/products/right-arrow.svg +17 -0
- package/src/assets/images/products/snap-new.svg +31 -0
- package/src/assets/images/templates/actions.svg +3 -0
- package/src/assets/images/templates/address-block-icon.tsx +62 -0
- package/src/assets/images/templates/archive.svg +3 -0
- package/src/assets/images/templates/arrow-down.tsx +27 -0
- package/src/assets/images/templates/back-arrow.tsx +19 -0
- package/src/assets/images/templates/bi-fold-self-mailers.tsx +28 -0
- package/src/assets/images/templates/check.svg +3 -0
- package/src/assets/images/templates/code.svg +10 -0
- package/src/assets/images/templates/content-copy-icon.tsx +24 -0
- package/src/assets/images/templates/custom-add-on-icon.tsx +18 -0
- package/src/assets/images/templates/custom-qr-section-icon.tsx +9 -0
- package/src/assets/images/templates/custom-template.tsx +23 -0
- package/src/assets/images/templates/designer.tsx +43 -0
- package/src/assets/images/templates/dot.tsx +22 -0
- package/src/assets/images/templates/download-v2.svg +4 -0
- package/src/assets/images/templates/download.svg +4 -0
- package/src/assets/images/templates/dummy-template.tsx +76 -0
- package/src/assets/images/templates/dynamic-field.tsx +119 -0
- package/src/assets/images/templates/edit-pencil-icon.tsx +21 -0
- package/src/assets/images/templates/edit.svg +3 -0
- package/src/assets/images/templates/epo-icon.tsx +16 -0
- package/src/assets/images/templates/field.tsx +29 -0
- package/src/assets/images/templates/gsv-icon.tsx +31 -0
- package/src/assets/images/templates/info-icon.tsx +37 -0
- package/src/assets/images/templates/left-arrow.svg +17 -0
- package/src/assets/images/templates/pencil.svg +3 -0
- package/src/assets/images/templates/personal-letter.tsx +53 -0
- package/src/assets/images/templates/postcard.tsx +32 -0
- package/src/assets/images/templates/professional-letter.tsx +53 -0
- package/src/assets/images/templates/qr-code.tsx +13 -0
- package/src/assets/images/templates/real-penned-letters.tsx +57 -0
- package/src/assets/images/templates/right-arrow.svg +17 -0
- package/src/assets/images/templates/size-image-lg.tsx +20 -0
- package/src/assets/images/templates/size-image-mid.tsx +20 -0
- package/src/assets/images/templates/size-image-xl.tsx +20 -0
- package/src/assets/images/templates/size-image.tsx +20 -0
- package/src/assets/images/templates/snap-pack.tsx +67 -0
- package/src/assets/images/templates/template-default-design.tsx +21 -0
- package/src/assets/images/templates/trash-upload.svg +3 -0
- package/src/assets/images/templates/trash.svg +3 -0
- package/src/assets/images/templates/tri-fold-self-mailers.tsx +93 -0
- package/src/assets/images/templates/upload-image.svg +10 -0
- package/src/assets/images/templates/x.svg +3 -0
- package/src/assets/images/thumbnails/one.svg +9 -0
- package/src/assets/images/tooltip/tool-arrow.tsx +25 -0
- package/src/components/CreateTemplate/V2/index.tsx +525 -0
- package/src/components/CreateTemplate/V2/styles.scss +372 -0
- package/src/components/CreateTemplate/index.tsx +508 -0
- package/src/components/CreateTemplate/styles.scss +404 -0
- package/src/components/GenericUIBlocks/Button/index.tsx +54 -0
- package/src/components/GenericUIBlocks/Button/styles.scss +43 -0
- package/src/components/GenericUIBlocks/CircularProgress/index.tsx +18 -0
- package/src/components/GenericUIBlocks/CircularProgress/styles.scss +93 -0
- package/src/components/GenericUIBlocks/CustomTooltip/index.tsx +88 -0
- package/src/components/GenericUIBlocks/CustomTooltip/styles.scss +19 -0
- package/src/components/GenericUIBlocks/Dialog/V2/index.tsx +227 -0
- package/src/components/GenericUIBlocks/Dialog/V2/styles.scss +289 -0
- package/src/components/GenericUIBlocks/Dialog/index.tsx +185 -0
- package/src/components/GenericUIBlocks/Dialog/styles.scss +227 -0
- package/src/components/GenericUIBlocks/Divider/index.tsx +12 -0
- package/src/components/GenericUIBlocks/Divider/styles.scss +7 -0
- package/src/components/GenericUIBlocks/GeneralSelect/index.tsx +114 -0
- package/src/components/GenericUIBlocks/GeneralSelect/styles.scss +406 -0
- package/src/components/GenericUIBlocks/GeneralTooltip/index.tsx +25 -0
- package/src/components/GenericUIBlocks/GeneralTooltip/styles.scss +20 -0
- package/src/components/GenericUIBlocks/GenericSnackbar/Toast/index.tsx +91 -0
- package/src/components/GenericUIBlocks/GenericSnackbar/Toast/styles.scss +92 -0
- package/src/components/GenericUIBlocks/Grid/index.tsx +82 -0
- package/src/components/GenericUIBlocks/Input/index.tsx +269 -0
- package/src/components/GenericUIBlocks/Input/styles.scss +332 -0
- package/src/components/GenericUIBlocks/Tabs/index.tsx +71 -0
- package/src/components/GenericUIBlocks/Tabs/styles.scss +42 -0
- package/src/components/GenericUIBlocks/Typography/index.tsx +18 -0
- package/src/components/GenericUIBlocks/Typography/styles.scss +27 -0
- package/src/components/SidePanel/CustomAddOns/index.tsx +342 -0
- package/src/components/SidePanel/CustomAddOns/styles.scss +86 -0
- package/src/components/SidePanel/CustomBlockColors/index.tsx +211 -0
- package/src/components/SidePanel/CustomBlockColors/styles.scss +80 -0
- package/src/components/SidePanel/CustomFields/customFieldSection.tsx +547 -0
- package/src/components/SidePanel/CustomFields/styles.scss +64 -0
- package/src/components/SidePanel/CustomQRCode/V2/QRCodeModal/index.tsx +172 -0
- package/src/components/SidePanel/CustomQRCode/V2/QRCodeModal/styles.scss +46 -0
- package/src/components/SidePanel/CustomQRCode/index.tsx +1070 -0
- package/src/components/SidePanel/CustomQRCode/styles.scss +149 -0
- package/src/components/SidePanel/CustomUploads/V2/index.tsx +542 -0
- package/src/components/SidePanel/CustomUploads/V2/styles.scss +267 -0
- package/src/components/SidePanel/CustomUploads/index.tsx +301 -0
- package/src/components/SidePanel/Templates/ModalGallery/HireDesigner/index.tsx +424 -0
- package/src/components/SidePanel/Templates/ModalGallery/HireDesigner/styles.scss +180 -0
- package/src/components/SidePanel/Templates/ModalGallery/V2/index.tsx +235 -0
- package/src/components/SidePanel/Templates/ModalGallery/V2/styles.scss +244 -0
- package/src/components/SidePanel/Templates/ModalGallery/index.tsx +231 -0
- package/src/components/SidePanel/Templates/SideBarGallery/index.tsx +233 -0
- package/src/components/SidePanel/Templates/SideBarGallery/styles.scss +152 -0
- package/src/components/SidePanel/Templates/TemplatesCard/V2/index.tsx +149 -0
- package/src/components/SidePanel/Templates/TemplatesCard/V2/styles.scss +156 -0
- package/src/components/SidePanel/Templates/TemplatesCard/index.tsx +160 -0
- package/src/components/SidePanel/Templates/TemplatesCard/styles.scss +98 -0
- package/src/components/SidePanel/Templates/customTemplateSection.tsx +793 -0
- package/src/components/SidePanel/Templates/styles.scss +244 -0
- package/src/components/SidePanel/index.tsx +160 -0
- package/src/components/TemplateBuilder/index.tsx +585 -0
- package/src/components/TemplateBuilder/styles.scss +100 -0
- package/src/components/TemplateTypes/index.tsx +96 -0
- package/src/components/TemplateTypes/styles.scss +91 -0
- package/src/components/TopNavigation/ConfirmNavigateDialog/index.tsx +81 -0
- package/src/components/TopNavigation/ConfirmNavigateDialog/styles.scss +123 -0
- package/src/components/TopNavigation/DuplicateTemplateModal.tsx +103 -0
- package/src/components/TopNavigation/EditTemplateNameModel/index.tsx +71 -0
- package/src/components/TopNavigation/EditTemplateNameModel/styles.scss +88 -0
- package/src/components/TopNavigation/SaveTemplateModel/index.tsx +201 -0
- package/src/components/TopNavigation/SaveTemplateModel/styles.scss +128 -0
- package/src/components/TopNavigation/index.tsx +938 -0
- package/src/components/TopNavigation/styles.scss +303 -0
- package/src/importMeta.d.ts +31 -0
- package/src/index.scss +131 -0
- package/src/index.tsx +238 -0
- package/src/libs/test.ts +7 -0
- package/src/redux/actions/action-types.ts +52 -0
- package/src/redux/actions/customQRCodeActions.ts +54 -0
- package/src/redux/actions/snackbarActions.ts +16 -0
- package/src/redux/actions/templateActions.ts +236 -0
- package/src/redux/reducers/customFieldReducer.ts +99 -0
- package/src/redux/reducers/customQRCodeReducer.ts +58 -0
- package/src/redux/reducers/index.ts +15 -0
- package/src/redux/reducers/snackbarReducer.ts +40 -0
- package/src/redux/reducers/templateReducer.ts +485 -0
- package/src/redux/store.ts +18 -0
- package/src/styles/colors.scss +61 -0
- package/src/test/mocks.js +89 -0
- package/src/test/setupJest.js +1 -0
- package/src/utils/api.ts +36 -0
- package/src/utils/constants.ts +182 -0
- package/src/utils/customStyles.ts +45 -0
- package/src/utils/fetchWrapper.ts +73 -0
- package/src/utils/fonts.json +1597 -0
- package/src/utils/helper.ts +205 -0
- package/src/utils/local-storage.ts +15 -0
- package/src/utils/message.ts +162 -0
- package/src/utils/products.ts +186 -0
- package/src/utils/template-builder.ts +328 -0
- package/src/utils/templateIdentifierArea/biFold.ts +107 -0
- package/src/utils/templateIdentifierArea/index.ts +35 -0
- package/src/utils/templateIdentifierArea/personal.ts +107 -0
- package/src/utils/templateIdentifierArea/postCards.ts +163 -0
- package/src/utils/templateIdentifierArea/professional.ts +125 -0
- package/src/utils/templateIdentifierArea/snapPack.ts +107 -0
- package/src/utils/templateIdentifierArea/triFold.ts +107 -0
- package/src/utils/templateRestrictedArea/biFold.ts +329 -0
- package/src/utils/templateRestrictedArea/nonWindowProfessional.ts +90 -0
- package/src/utils/templateRestrictedArea/personal.ts +90 -0
- package/src/utils/templateRestrictedArea/postCard.ts +334 -0
- package/src/utils/templateRestrictedArea/postCardJumbo.tsx +408 -0
- package/src/utils/templateRestrictedArea/professional.ts +318 -0
- package/src/utils/templateRestrictedArea/realPenned.ts +233 -0
- package/src/utils/templateRestrictedArea/snapPack.ts +1009 -0
- package/src/utils/templateRestrictedArea/triFold.ts +330 -0
- package/src/utils/templateSafetyBorders/biFold.ts +91 -0
- package/src/utils/templateSafetyBorders/index.ts +43 -0
- package/src/utils/templateSafetyBorders/personal.ts +41 -0
- package/src/utils/templateSafetyBorders/postCards.ts +259 -0
- package/src/utils/templateSafetyBorders/professional.ts +78 -0
- package/src/utils/templateSafetyBorders/snapPack.ts +165 -0
- package/src/utils/templateSafetyBorders/triFold.ts +114 -0
- package/src/utils/templateSafetyBorders/types.d.ts +68 -0
- package/src/utils/types.ts +12 -0
- package/src/v2Theme.scss +142 -0
- package/tsconfig.json +29 -0
- package/tsconfig.node.json +12 -0
- package/update-version.js +23 -0
- package/version.js +1 -0
- package/vite.config.ts +8 -0
- package/webpack.config.js +80 -0
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import { createBorder, createSafetyTextElement } from "../helper";
|
|
2
|
+
import { Element, Store } from "./types"
|
|
3
|
+
|
|
4
|
+
export const addSafetyBordersTo4x6PostCard = (store: Store): void => {
|
|
5
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
6
|
+
|
|
7
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
8
|
+
`safety-text-1-${randomizedId}`,
|
|
9
|
+
-21,
|
|
10
|
+
3.6,
|
|
11
|
+
543,
|
|
12
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
const firstPageBorders: Element = {
|
|
16
|
+
id: `safety-border-1-${randomizedId}`,
|
|
17
|
+
type: "group",
|
|
18
|
+
opacity: 1,
|
|
19
|
+
visible: true,
|
|
20
|
+
selectable: false,
|
|
21
|
+
removable: false,
|
|
22
|
+
alwaysOnTop: true,
|
|
23
|
+
showInExport: false,
|
|
24
|
+
children: [
|
|
25
|
+
createBorder(`top-1-${randomizedId}`, 18.19, 14.7, 539.61, 1.97, 0),
|
|
26
|
+
createBorder(`bottom-1-${randomizedId}`, 18.19, 367.32, 539.61, 1.97, 0),
|
|
27
|
+
createBorder(`left-1-${randomizedId}`, 17.21, 368.31, 352.62, 1.97, -90),
|
|
28
|
+
createBorder(`right-1-${randomizedId}`, 556.82, 368.31, 352.62, 1.97, -90),
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
const safetyBordersTextSecond = createSafetyTextElement(
|
|
34
|
+
`safety-text-2-${randomizedId}`,
|
|
35
|
+
-21,
|
|
36
|
+
3.6,
|
|
37
|
+
543,
|
|
38
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
const secondPageBorders: Element = {
|
|
42
|
+
id: `safety-border-2-${randomizedId}`,
|
|
43
|
+
type: "group",
|
|
44
|
+
opacity: 1,
|
|
45
|
+
visible: true,
|
|
46
|
+
selectable: false,
|
|
47
|
+
removable: false,
|
|
48
|
+
alwaysOnTop: true,
|
|
49
|
+
showInExport: false,
|
|
50
|
+
children: [
|
|
51
|
+
createBorder(`top-2-${randomizedId}`, 18.19, 14.7, 539.61, 1.97, 0),
|
|
52
|
+
createBorder(`bottom-2-${randomizedId}`, 18.19, 367.32, 539.61, 1.97, 0),
|
|
53
|
+
createBorder(`left-2-${randomizedId}`, 17.21, 368.31, 352.62, 1.97, -90),
|
|
54
|
+
createBorder(`right-2-${randomizedId}`, 556.82, 368.31, 352.62, 1.97, -90),
|
|
55
|
+
],
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
// Add elements to the pages
|
|
59
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
60
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
61
|
+
|
|
62
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
63
|
+
store.pages[1]?.addElement(safetyBordersTextSecond);
|
|
64
|
+
|
|
65
|
+
// Clear history
|
|
66
|
+
store.history.clear();
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
export const addSafetyBordersTo6x9PostCard = (store: Store): void => {
|
|
70
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
71
|
+
|
|
72
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
73
|
+
`safety-text-1-${randomizedId}`,
|
|
74
|
+
-8.29,
|
|
75
|
+
5.8,
|
|
76
|
+
543,
|
|
77
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
78
|
+
);
|
|
79
|
+
|
|
80
|
+
const firstPageBorders: Element = {
|
|
81
|
+
id: `safety-border-1-${randomizedId}`,
|
|
82
|
+
type: "group",
|
|
83
|
+
opacity: 1,
|
|
84
|
+
visible: true,
|
|
85
|
+
selectable: false,
|
|
86
|
+
removable: false,
|
|
87
|
+
alwaysOnTop: true,
|
|
88
|
+
showInExport: false,
|
|
89
|
+
children: [
|
|
90
|
+
createBorder(`top-1-${randomizedId}`, 28, 22.5, 808, 2.94, 0),
|
|
91
|
+
createBorder(`bottom-1-${randomizedId}`, 28, 550, 808, 2.94, 0),
|
|
92
|
+
createBorder(`left-1-${randomizedId}`, 26.5, 552, 528, 2.94, -90),
|
|
93
|
+
createBorder(`right-1-${randomizedId}`, 834.5, 552, 528, 2.94, -90),
|
|
94
|
+
],
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const safetyBordersTextSecond = createSafetyTextElement(
|
|
98
|
+
`safety-text-2-${randomizedId}`,
|
|
99
|
+
-8.6,
|
|
100
|
+
5.09,
|
|
101
|
+
543,
|
|
102
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
const secondPageBorders: Element = {
|
|
106
|
+
id: `safety-border-2-${randomizedId}`,
|
|
107
|
+
type: "group",
|
|
108
|
+
opacity: 1,
|
|
109
|
+
visible: true,
|
|
110
|
+
selectable: false,
|
|
111
|
+
removable: false,
|
|
112
|
+
alwaysOnTop: true,
|
|
113
|
+
showInExport: false,
|
|
114
|
+
children: [
|
|
115
|
+
createBorder(`top-2-${randomizedId}`, 28, 22.5, 808, 2.94, 0),
|
|
116
|
+
createBorder(`bottom-2-${randomizedId}`, 28, 550, 808, 2.94, 0),
|
|
117
|
+
createBorder(`left-2-${randomizedId}`, 26.5, 552, 528, 2.94, -90),
|
|
118
|
+
createBorder(`right-2-${randomizedId}`, 834.5, 552, 528, 2.94, -90),
|
|
119
|
+
],
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
// Add elements to the pages
|
|
123
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
124
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
125
|
+
|
|
126
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
127
|
+
store.pages[1]?.addElement(safetyBordersTextSecond);
|
|
128
|
+
|
|
129
|
+
// Clear history
|
|
130
|
+
store.history.clear();
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export const addSafetyBordersTo6x11PostCard = (store: Store): void => {
|
|
134
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
135
|
+
|
|
136
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
137
|
+
`safety-text-1-${randomizedId}`,
|
|
138
|
+
-8.29,
|
|
139
|
+
5.8,
|
|
140
|
+
543,
|
|
141
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
142
|
+
);
|
|
143
|
+
|
|
144
|
+
const firstPageBorders: Element = {
|
|
145
|
+
id: `safety-border-1-${randomizedId}`,
|
|
146
|
+
type: "group",
|
|
147
|
+
opacity: 1,
|
|
148
|
+
visible: true,
|
|
149
|
+
selectable: false,
|
|
150
|
+
removable: false,
|
|
151
|
+
alwaysOnTop: true,
|
|
152
|
+
showInExport: false,
|
|
153
|
+
children: [
|
|
154
|
+
createBorder(`top-1-${randomizedId}`, 25.5, 23.8, 1005, 2.94, 0),
|
|
155
|
+
createBorder(`bottom-1-${randomizedId}`, 25.5, 549, 1005, 2.94, 0),
|
|
156
|
+
createBorder(`left-1-${randomizedId}`, 24, 550, 525, 2.94, -90),
|
|
157
|
+
createBorder(`right-1-${randomizedId}`, 1028, 550, 525, 2.94, -90),
|
|
158
|
+
],
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
const safetyBordersTextSecond = createSafetyTextElement(
|
|
162
|
+
`safety-text-2-${randomizedId}`,
|
|
163
|
+
-8.6,
|
|
164
|
+
5.09,
|
|
165
|
+
543,
|
|
166
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
167
|
+
);
|
|
168
|
+
|
|
169
|
+
const secondPageBorders: Element = {
|
|
170
|
+
id: `safety-border-2-${randomizedId}`,
|
|
171
|
+
type: "group",
|
|
172
|
+
opacity: 1,
|
|
173
|
+
visible: true,
|
|
174
|
+
selectable: false,
|
|
175
|
+
removable: false,
|
|
176
|
+
alwaysOnTop: true,
|
|
177
|
+
showInExport: false,
|
|
178
|
+
children: [
|
|
179
|
+
createBorder(`top-2-${randomizedId}`, 25.5, 23.8, 1005, 2.94, 0),
|
|
180
|
+
createBorder(`bottom-2-${randomizedId}`, 25.5, 549, 1005, 2.94, 0),
|
|
181
|
+
createBorder(`left-2-${randomizedId}`, 24, 550, 525, 2.94, -90),
|
|
182
|
+
createBorder(`right-2-${randomizedId}`, 1028, 550, 525, 2.94, -90),
|
|
183
|
+
],
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
// Add elements to the pages
|
|
187
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
188
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
189
|
+
|
|
190
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
191
|
+
store.pages[1]?.addElement(safetyBordersTextSecond);
|
|
192
|
+
|
|
193
|
+
// Clear history
|
|
194
|
+
store.history.clear();
|
|
195
|
+
};
|
|
196
|
+
|
|
197
|
+
export const addSafetyBordersTo12x9PostCard = (store: Store): void => {
|
|
198
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
199
|
+
|
|
200
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
201
|
+
`safety-text-1-${randomizedId}`,
|
|
202
|
+
-8.29,
|
|
203
|
+
5.81,
|
|
204
|
+
543,
|
|
205
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
206
|
+
);
|
|
207
|
+
|
|
208
|
+
const firstPageBorders: Element = {
|
|
209
|
+
id: `safety-border-1-${randomizedId}`,
|
|
210
|
+
type: "group",
|
|
211
|
+
opacity: 1,
|
|
212
|
+
visible: true,
|
|
213
|
+
selectable: false,
|
|
214
|
+
removable: false,
|
|
215
|
+
alwaysOnTop: true,
|
|
216
|
+
showInExport: false,
|
|
217
|
+
children: [
|
|
218
|
+
createBorder(`top-1-${randomizedId}`, 26, 23.5, 811, 4, 0),
|
|
219
|
+
createBorder(`bottom-1-${randomizedId}`, 26, 1123.6, 811, 4, 0),
|
|
220
|
+
createBorder(`left-1-${randomizedId}`, 24.16, 1125, 1100, 4, -90),
|
|
221
|
+
createBorder(`right-1-${randomizedId}`, 835, 1125, 1100, 4, -90),
|
|
222
|
+
],
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
const safetyBordersTextSecond = createSafetyTextElement(
|
|
226
|
+
`safety-text-2-${randomizedId}`,
|
|
227
|
+
-8.29,
|
|
228
|
+
5.81,
|
|
229
|
+
543,
|
|
230
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
231
|
+
);
|
|
232
|
+
|
|
233
|
+
const secondPageBorders: Element = {
|
|
234
|
+
id: `safety-border-2-${randomizedId}`,
|
|
235
|
+
type: "group",
|
|
236
|
+
opacity: 1,
|
|
237
|
+
visible: true,
|
|
238
|
+
selectable: false,
|
|
239
|
+
removable: false,
|
|
240
|
+
alwaysOnTop: true,
|
|
241
|
+
showInExport: false,
|
|
242
|
+
children: [
|
|
243
|
+
createBorder(`top-2-${randomizedId}`, 26, 23.5, 811, 4, 0),
|
|
244
|
+
createBorder(`bottom-2-${randomizedId}`, 26, 1123.6, 811, 4, 0),
|
|
245
|
+
createBorder(`left-2-${randomizedId}`, 24.16, 1125, 1100, 4, -90),
|
|
246
|
+
createBorder(`right-2-${randomizedId}`, 835, 1125, 1100, 4, -90),
|
|
247
|
+
],
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
// Add elements to the pages
|
|
251
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
252
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
253
|
+
|
|
254
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
255
|
+
store.pages[1]?.addElement(safetyBordersTextSecond);
|
|
256
|
+
|
|
257
|
+
// Clear history
|
|
258
|
+
store.history.clear();
|
|
259
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { createBorder, createSafetyTextElement } from "../helper";
|
|
2
|
+
import { Element, Store } from "./types"
|
|
3
|
+
|
|
4
|
+
export const addSafetyBordersToNonWindowProfessioanl = (store: Store, pageIndex: number = 0): void => {
|
|
5
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
6
|
+
|
|
7
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
8
|
+
`safety-text-1-${randomizedId}`,
|
|
9
|
+
-15,
|
|
10
|
+
5.81,
|
|
11
|
+
543,
|
|
12
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
const firstPageBorders: Element = {
|
|
16
|
+
id: `safety-border-1-${randomizedId}`,
|
|
17
|
+
type: "group",
|
|
18
|
+
opacity: 1,
|
|
19
|
+
visible: true,
|
|
20
|
+
selectable: false,
|
|
21
|
+
removable: false,
|
|
22
|
+
alwaysOnTop: true,
|
|
23
|
+
showInExport: false,
|
|
24
|
+
children: [
|
|
25
|
+
createBorder(`top-1-${randomizedId}`, 24, 22, 768, 3.85, 0),
|
|
26
|
+
createBorder(`bottom-1-${randomizedId}`, 24, 1028, 768, 3.85, 0),
|
|
27
|
+
createBorder(`left-1-${randomizedId}`, 22, 1030, 1006, 3.85, -90),
|
|
28
|
+
createBorder(`right-1-${randomizedId}`, 790, 1030, 1006, 3.85, -90),
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// Add elements to the pages
|
|
33
|
+
store.pages[pageIndex]?.addElement(firstPageBorders);
|
|
34
|
+
store?.pages[pageIndex]?.addElement(safetyBordersTextFirst);
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
// Clear history
|
|
38
|
+
store.history.clear();
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
export const addSafetyBordersToWindowProfessioanl = (store: Store, pageIndex: number = 0): void => {
|
|
43
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
47
|
+
`safety-text-1-${randomizedId}`,
|
|
48
|
+
-15,
|
|
49
|
+
5.81,
|
|
50
|
+
543,
|
|
51
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
const firstPageBorders: Element = {
|
|
55
|
+
id: `safety-border-1-${randomizedId}`,
|
|
56
|
+
type: "group",
|
|
57
|
+
opacity: 1,
|
|
58
|
+
visible: true,
|
|
59
|
+
selectable: false,
|
|
60
|
+
removable: false,
|
|
61
|
+
alwaysOnTop: true,
|
|
62
|
+
showInExport: false,
|
|
63
|
+
children: [
|
|
64
|
+
createBorder(`top-1-${randomizedId}`, 24, 23, 768, 3.85, 0),
|
|
65
|
+
createBorder(`bottom-1-${randomizedId}`, 24, 1030, 768, 3.85, 0),
|
|
66
|
+
createBorder(`left-1-${randomizedId}`, 22, 1030, 1006, 3.85, -90),
|
|
67
|
+
createBorder(`right-1-${randomizedId}`, 790, 1030, 1006, 3.85, -90),
|
|
68
|
+
],
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
// Add elements to the pages
|
|
72
|
+
store.pages[pageIndex]?.addElement(firstPageBorders);
|
|
73
|
+
store?.pages[pageIndex]?.addElement(safetyBordersTextFirst);
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
// Clear history
|
|
77
|
+
store.history.clear();
|
|
78
|
+
};
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { createBorder, createSafetyTextElement } from "../helper";
|
|
2
|
+
import { Element, Store } from "./types";
|
|
3
|
+
|
|
4
|
+
export const addSafetyBordersToSnapPackMailer = (store: Store): void => {
|
|
5
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
6
|
+
|
|
7
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
8
|
+
`safety-text-1-${randomizedId}`,
|
|
9
|
+
-15,
|
|
10
|
+
5.81,
|
|
11
|
+
543,
|
|
12
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
const safetyBordersInsidePanel = createSafetyTextElement(
|
|
16
|
+
`inside-panel-${randomizedId}`,
|
|
17
|
+
817,
|
|
18
|
+
663.72,
|
|
19
|
+
410,
|
|
20
|
+
"Inside Panel",
|
|
21
|
+
90,
|
|
22
|
+
18
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
const safetyBordersOutsideFrontPanel = createSafetyTextElement(
|
|
26
|
+
`outside-front-panel-${randomizedId}`,
|
|
27
|
+
817,
|
|
28
|
+
321,
|
|
29
|
+
410,
|
|
30
|
+
"Outside Front Panel",
|
|
31
|
+
90,
|
|
32
|
+
18
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
const safetyBordersOutsideBackPanel = createSafetyTextElement(
|
|
36
|
+
`outside-back-panel-${randomizedId}`,
|
|
37
|
+
817,
|
|
38
|
+
20.2,
|
|
39
|
+
410,
|
|
40
|
+
"Outside Back Panel",
|
|
41
|
+
90,
|
|
42
|
+
18
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
const safetyLineTextFirst = createSafetyTextElement(
|
|
46
|
+
`safety-line-4-${randomizedId}`,
|
|
47
|
+
-25.2,
|
|
48
|
+
334.9,
|
|
49
|
+
866,
|
|
50
|
+
"Fold Line",
|
|
51
|
+
0,
|
|
52
|
+
14
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
const safetyLineTextSecond = createSafetyTextElement(
|
|
56
|
+
`safety-line-5-${randomizedId}`,
|
|
57
|
+
-25.2,
|
|
58
|
+
685,
|
|
59
|
+
866,
|
|
60
|
+
"Fold Line",
|
|
61
|
+
0,
|
|
62
|
+
14
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
const safetyLineTextThird = createSafetyTextElement(
|
|
66
|
+
`safety-line-6-${randomizedId}`,
|
|
67
|
+
-25.2,
|
|
68
|
+
745,
|
|
69
|
+
866,
|
|
70
|
+
"Perforated Fold Line (Detachable Section)",
|
|
71
|
+
0,
|
|
72
|
+
14
|
|
73
|
+
);
|
|
74
|
+
|
|
75
|
+
const safetyLineTextFourth = createSafetyTextElement(
|
|
76
|
+
`safety-line-1-${randomizedId}`,
|
|
77
|
+
840,
|
|
78
|
+
783,
|
|
79
|
+
866,
|
|
80
|
+
"Perforated Fold Line (Detachable Section)",
|
|
81
|
+
180,
|
|
82
|
+
14
|
|
83
|
+
);
|
|
84
|
+
|
|
85
|
+
const safetyLineTextFifth = createSafetyTextElement(
|
|
86
|
+
`safety-line-2-${randomizedId}`,
|
|
87
|
+
840,
|
|
88
|
+
721,
|
|
89
|
+
866,
|
|
90
|
+
"Fold Line",
|
|
91
|
+
180,
|
|
92
|
+
14
|
|
93
|
+
);
|
|
94
|
+
|
|
95
|
+
const safetyLineTextSixth = createSafetyTextElement(
|
|
96
|
+
`safety-line-3-${randomizedId}`,
|
|
97
|
+
840,
|
|
98
|
+
365,
|
|
99
|
+
866,
|
|
100
|
+
"Fold Line",
|
|
101
|
+
180,
|
|
102
|
+
14
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
const firstPageBorders: Element = {
|
|
106
|
+
id: `safety-border-1-${randomizedId}`,
|
|
107
|
+
type: "group",
|
|
108
|
+
opacity: 1,
|
|
109
|
+
visible: true,
|
|
110
|
+
selectable: false,
|
|
111
|
+
removable: false,
|
|
112
|
+
alwaysOnTop: true,
|
|
113
|
+
showInExport: false,
|
|
114
|
+
children: [
|
|
115
|
+
createBorder(`top-1-${randomizedId}`, 24, 22, 768, 3.85, 0),
|
|
116
|
+
createBorder(`bottom-1-${randomizedId}`, 24, 1028, 768, 3.85, 0),
|
|
117
|
+
createBorder(`left-1-${randomizedId}`, 22, 1030, 1006, 3.85, -90),
|
|
118
|
+
createBorder(`right-1-${randomizedId}`, 790, 1030, 1006, 3.85, -90),
|
|
119
|
+
createBorder(`fold-line-1-${randomizedId}`, 840.8, 353.92, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
120
|
+
createBorder(`fold-line-2-${randomizedId}`, 840.8, 703, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
121
|
+
createBorder(`fold-line-3-${randomizedId}`, 840.8, 765.4, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
122
|
+
],
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
const secondPageBorders: Element = {
|
|
126
|
+
id: `safety-border-2-${randomizedId}`,
|
|
127
|
+
type: "group",
|
|
128
|
+
opacity: 1,
|
|
129
|
+
visible: true,
|
|
130
|
+
selectable: false,
|
|
131
|
+
removable: false,
|
|
132
|
+
alwaysOnTop: true,
|
|
133
|
+
showInExport: false,
|
|
134
|
+
children: [
|
|
135
|
+
createBorder(`top-2-${randomizedId}`, 24, 22, 768, 3.85, 0),
|
|
136
|
+
createBorder(`bottom-2-${randomizedId}`, 24, 1028, 768, 3.85, 0),
|
|
137
|
+
createBorder(`left-2-${randomizedId}`, 22, 1030, 1006, 3.85, -90),
|
|
138
|
+
createBorder(`right-2-${randomizedId}`, 790, 1030, 1006, 3.85, -90),
|
|
139
|
+
createBorder(`fold-line-4-${randomizedId}`, -25, 765.4, 866, 2, 0, 'rgba(208,2,27,1)'),
|
|
140
|
+
createBorder(`fold-line-5-${randomizedId}`, -25, 703, 866, 2, 0, 'rgba(208,2,27,1)'),
|
|
141
|
+
createBorder(`fold-line-6-${randomizedId}`, -25, 347, 866, 2, 0, 'rgba(208,2,27,1)'),
|
|
142
|
+
],
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
// Add elements to the pages
|
|
146
|
+
|
|
147
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
148
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
149
|
+
store?.pages[0]?.addElement(safetyLineTextFirst);
|
|
150
|
+
store?.pages[0]?.addElement(safetyLineTextSecond);
|
|
151
|
+
store?.pages[0]?.addElement(safetyLineTextThird);
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
155
|
+
store?.pages[1]?.addElement(safetyBordersTextFirst);
|
|
156
|
+
store?.pages[1]?.addElement(safetyBordersInsidePanel);
|
|
157
|
+
store?.pages[1]?.addElement(safetyBordersOutsideFrontPanel);
|
|
158
|
+
store?.pages[1]?.addElement(safetyBordersOutsideBackPanel);
|
|
159
|
+
store?.pages[1]?.addElement(safetyLineTextFourth);
|
|
160
|
+
store?.pages[1]?.addElement(safetyLineTextFifth);
|
|
161
|
+
store?.pages[1]?.addElement(safetyLineTextSixth);
|
|
162
|
+
|
|
163
|
+
// Clear history
|
|
164
|
+
store.history.clear();
|
|
165
|
+
};
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { createBorder, createSafetyTextElement } from "../helper";
|
|
2
|
+
import { Element, Store } from "./types"
|
|
3
|
+
|
|
4
|
+
export const addSafetyBordersToTriFold = (store: Store): void => {
|
|
5
|
+
const randomizedId = Math.random().toString(36).substring(2, 7);
|
|
6
|
+
|
|
7
|
+
const safetyBordersTextFirst = createSafetyTextElement(
|
|
8
|
+
`safety-text-1-${randomizedId}`,
|
|
9
|
+
-8.29,
|
|
10
|
+
5.81,
|
|
11
|
+
543,
|
|
12
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
const safetyLineTextFirst = createSafetyTextElement(
|
|
16
|
+
`safety-line-1-${randomizedId}`,
|
|
17
|
+
-2,
|
|
18
|
+
366,
|
|
19
|
+
866,
|
|
20
|
+
"Fold Line",
|
|
21
|
+
0
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
const safetySecondLineTextFirst = createSafetyTextElement(
|
|
25
|
+
`safety-line-2-${randomizedId}`,
|
|
26
|
+
-2,
|
|
27
|
+
744,
|
|
28
|
+
866,
|
|
29
|
+
"Fold Line",
|
|
30
|
+
0
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
const firstPageBorders: Element = {
|
|
34
|
+
id: `safety-border-1-${randomizedId}`,
|
|
35
|
+
type: "group",
|
|
36
|
+
opacity: 1,
|
|
37
|
+
visible: true,
|
|
38
|
+
selectable: false,
|
|
39
|
+
removable: false,
|
|
40
|
+
alwaysOnTop: true,
|
|
41
|
+
showInExport: false,
|
|
42
|
+
children: [
|
|
43
|
+
createBorder(`top-1-${randomizedId}`, 26, 23.5, 811, 4, 0),
|
|
44
|
+
createBorder(`bottom-1-${randomizedId}`, 26, 1123.6, 811, 4, 0),
|
|
45
|
+
createBorder(`left-1-${randomizedId}`, 24.16, 1125, 1100, 4, -90),
|
|
46
|
+
createBorder(`right-1-${randomizedId}`, 835, 1125, 1100, 4, -90),
|
|
47
|
+
createBorder(`fold-line-1-${randomizedId}`, 866, 384, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
48
|
+
createBorder(`fold-line-2-${randomizedId}`, 866, 763, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const safetyBordersTextSecond = createSafetyTextElement(
|
|
53
|
+
`safety-text-2-${randomizedId}`,
|
|
54
|
+
-8.29,
|
|
55
|
+
5.81,
|
|
56
|
+
543,
|
|
57
|
+
"Keep important text/images inside the green line. Content beyond this line may be trimmed during production."
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
const safetyLineTextSecond = createSafetyTextElement(
|
|
61
|
+
`safety-line-2-1-${randomizedId}`,
|
|
62
|
+
-2,
|
|
63
|
+
366,
|
|
64
|
+
866,
|
|
65
|
+
"Fold Line",
|
|
66
|
+
0
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
const safetySecondLineTextSecond = createSafetyTextElement(
|
|
70
|
+
`safety-line-2-2-${randomizedId}`,
|
|
71
|
+
-2,
|
|
72
|
+
744,
|
|
73
|
+
866,
|
|
74
|
+
"Fold Line",
|
|
75
|
+
0
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
const secondPageBorders: Element = {
|
|
80
|
+
id: `safety-border-2-${randomizedId}`,
|
|
81
|
+
type: "group",
|
|
82
|
+
opacity: 1,
|
|
83
|
+
visible: true,
|
|
84
|
+
selectable: false,
|
|
85
|
+
removable: false,
|
|
86
|
+
alwaysOnTop: true,
|
|
87
|
+
showInExport: false,
|
|
88
|
+
children: [
|
|
89
|
+
createBorder(`top-2-${randomizedId}`, 26, 23.5, 811, 4, 0),
|
|
90
|
+
createBorder(`bottom-2-${randomizedId}`, 26, 1123.6, 811, 4, 0),
|
|
91
|
+
createBorder(`left-2-${randomizedId}`, 24.16, 1125, 1100, 4, -90),
|
|
92
|
+
createBorder(`right-2-${randomizedId}`, 835, 1125, 1100, 4, -90),
|
|
93
|
+
createBorder(`fold-line-2-1-${randomizedId}`, 866, 384, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
94
|
+
createBorder(`fold-line-2-2-${randomizedId}`, 866, 763, 866, 2, 180, 'rgba(208,2,27,1)'),
|
|
95
|
+
],
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
// Add elements to the pages
|
|
99
|
+
store.pages[0]?.addElement(firstPageBorders);
|
|
100
|
+
store?.pages[0]?.addElement(safetyBordersTextFirst);
|
|
101
|
+
store?.pages[0]?.addElement(safetyLineTextFirst);
|
|
102
|
+
store?.pages[0]?.addElement(safetySecondLineTextFirst);
|
|
103
|
+
|
|
104
|
+
store.pages[1]?.addElement(secondPageBorders);
|
|
105
|
+
store.pages[1]?.addElement(safetyBordersTextSecond);
|
|
106
|
+
store.pages[1]?.addElement(safetyLineTextSecond);
|
|
107
|
+
store.pages[1]?.addElement(safetySecondLineTextSecond);
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
// Clear history
|
|
111
|
+
store.history.clear();
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export interface Element {
|
|
2
|
+
id: string;
|
|
3
|
+
type: string;
|
|
4
|
+
name?: string;
|
|
5
|
+
opacity: number;
|
|
6
|
+
visible: boolean;
|
|
7
|
+
selectable: boolean;
|
|
8
|
+
removable: boolean;
|
|
9
|
+
alwaysOnTop: boolean;
|
|
10
|
+
showInExport: boolean;
|
|
11
|
+
x?: number;
|
|
12
|
+
y?: number;
|
|
13
|
+
width?: number;
|
|
14
|
+
height?: number;
|
|
15
|
+
rotation?: number;
|
|
16
|
+
text?: string;
|
|
17
|
+
fontWeight?: string;
|
|
18
|
+
fill?: string;
|
|
19
|
+
align?: string;
|
|
20
|
+
verticalAlign?: string;
|
|
21
|
+
strokeWidth?: number;
|
|
22
|
+
stroke?: string;
|
|
23
|
+
lineHeight?: number;
|
|
24
|
+
letterSpacing?: number;
|
|
25
|
+
backgroundEnabled?: boolean;
|
|
26
|
+
backgroundColor?: string;
|
|
27
|
+
backgroundOpacity?: number;
|
|
28
|
+
backgroundCornerRadius?: number;
|
|
29
|
+
backgroundPadding?: number;
|
|
30
|
+
fontSize?: number;
|
|
31
|
+
fontFamily?: string;
|
|
32
|
+
fontStyle?: string;
|
|
33
|
+
animations?: any[];
|
|
34
|
+
blurEnabled?: boolean;
|
|
35
|
+
blurRadius?: number;
|
|
36
|
+
brightnessEnabled?: boolean;
|
|
37
|
+
brightness?: number;
|
|
38
|
+
sepiaEnabled?: boolean;
|
|
39
|
+
grayscaleEnabled?: boolean;
|
|
40
|
+
shadowEnabled?: boolean;
|
|
41
|
+
shadowBlur?: number;
|
|
42
|
+
shadowOffsetX?: number;
|
|
43
|
+
shadowOffsetY?: number;
|
|
44
|
+
shadowColor?: string;
|
|
45
|
+
shadowOpacity?: number;
|
|
46
|
+
draggable?: boolean;
|
|
47
|
+
resizable?: boolean;
|
|
48
|
+
contentEditable?: boolean;
|
|
49
|
+
styleEditable?: boolean;
|
|
50
|
+
color?: string;
|
|
51
|
+
dash?: number[];
|
|
52
|
+
startHead?: string;
|
|
53
|
+
endHead?: string;
|
|
54
|
+
children?: Element[];
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface Page {
|
|
58
|
+
addElement: (element: Element) => void;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export interface Store {
|
|
62
|
+
width: number;
|
|
63
|
+
height: number;
|
|
64
|
+
pages: Page[];
|
|
65
|
+
history: {
|
|
66
|
+
clear: () => void;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Define a union type for the allowed add-on values
|
|
2
|
+
export type AddOnValue = 'gsv' | 'property_offer' | 'custom_property_offer';
|
|
3
|
+
export type TemplateTypesValue = 'my_templates' | 'team_templates' | 'olc-templates';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
export type AddOnTypes = {
|
|
7
|
+
[key in AddOnValue]?: string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export type TemplateTypes = {
|
|
11
|
+
[key in TemplateTypesValue]?: string;
|
|
12
|
+
};
|