designertool 0.0.1-dev

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 (82) hide show
  1. package/README.md +174 -0
  2. package/dist/PostcardDesigner.vue.d.ts +7 -0
  3. package/dist/PostcardDesigner.vue.d.ts.map +1 -0
  4. package/dist/assets/icons/template-icons/loading-circle-icon.vue.d.ts +2 -0
  5. package/dist/components/Image/ImageCard.vue.d.ts +15 -0
  6. package/dist/components/Image/ImageLibrary.vue.d.ts +26 -0
  7. package/dist/components/Image/ImageLoadingCard.vue.d.ts +2 -0
  8. package/dist/components/Image/ImageUpload.vue.d.ts +4 -0
  9. package/dist/components/Image/ImageUploadUrl.vue.d.ts +14 -0
  10. package/dist/components/Image/UnsplashPhoto.vue.d.ts +14 -0
  11. package/dist/components/Image/UnsplashPhotoList.vue.d.ts +28 -0
  12. package/dist/components/Template/TemplateList.vue.d.ts +19 -0
  13. package/dist/components/TextEditor/Selects/AlignSelector.vue.d.ts +16 -0
  14. package/dist/components/TextEditor/Selects/AlignToPageSelector.vue.d.ts +28 -0
  15. package/dist/components/TextEditor/Selects/OrderSelector.vue.d.ts +4 -0
  16. package/dist/components/TextEditor/TextFormatter.vue.d.ts +2 -0
  17. package/dist/components/display-elements/Item.vue.d.ts +14 -0
  18. package/dist/components/display-elements/ItemWrapper.vue.d.ts +14 -0
  19. package/dist/components/display-elements/displayables/Code.vue.d.ts +32 -0
  20. package/dist/components/display-elements/displayables/Image.vue.d.ts +12 -0
  21. package/dist/components/display-elements/displayables/Map.vue.d.ts +12 -0
  22. package/dist/components/display-elements/displayables/QrCode.vue.d.ts +12 -0
  23. package/dist/components/display-elements/displayables/Shape.vue.d.ts +12 -0
  24. package/dist/components/display-elements/displayables/Text.vue.d.ts +12 -0
  25. package/dist/components/display-elements/displayables/Tracking.vue.d.ts +12 -0
  26. package/dist/components/pages/Canvas.vue.d.ts +16 -0
  27. package/dist/components/pages/EditPage.vue.d.ts +13 -0
  28. package/dist/components/pages/PreviewPage.vue.d.ts +14 -0
  29. package/dist/components/share/BaseSelect.vue.d.ts +35 -0
  30. package/dist/components/share/Border.vue.d.ts +33 -0
  31. package/dist/components/share/Button.vue.d.ts +38 -0
  32. package/dist/components/share/Dropdown.vue.d.ts +54 -0
  33. package/dist/components/share/GoogleAutocomplete.vue.d.ts +76 -0
  34. package/dist/components/share/GoogleMap.vue.d.ts +76 -0
  35. package/dist/components/share/HeaderSection.vue.d.ts +28 -0
  36. package/dist/components/share/IconButton.vue.d.ts +44 -0
  37. package/dist/components/share/Input.vue.d.ts +74 -0
  38. package/dist/components/share/Modal.vue.d.ts +75 -0
  39. package/dist/components/share/Position.vue.d.ts +28 -0
  40. package/dist/components/share/SidebarTabs.vue.d.ts +28 -0
  41. package/dist/components/share/Slider.vue.d.ts +33 -0
  42. package/dist/components/sidebar/Background.vue.d.ts +2 -0
  43. package/dist/components/sidebar/Image.vue.d.ts +2 -0
  44. package/dist/components/sidebar/Layer.vue.d.ts +2 -0
  45. package/dist/components/sidebar/Map.vue.d.ts +2 -0
  46. package/dist/components/sidebar/Shape.vue.d.ts +2 -0
  47. package/dist/components/sidebar/Template.vue.d.ts +2 -0
  48. package/dist/components/sidebar/Text.vue.d.ts +2 -0
  49. package/dist/components/sidebar/Tracking.vue.d.ts +2 -0
  50. package/dist/components/sidebar/Variable.vue.d.ts +2 -0
  51. package/dist/composable/alert.d.ts +2 -0
  52. package/dist/composable/debouncedRef.d.ts +1 -0
  53. package/dist/composable/generateHtml.d.ts +18 -0
  54. package/dist/composable/googleMap.d.ts +2084 -0
  55. package/dist/composable/preview.d.ts +3 -0
  56. package/dist/composable/requests.d.ts +3 -0
  57. package/dist/config.d.ts +146 -0
  58. package/dist/entry.d.ts +1 -0
  59. package/dist/index.css +1 -0
  60. package/dist/index.d.ts +10 -0
  61. package/dist/layouts/DeviceOverlay.vue.d.ts +13 -0
  62. package/dist/layouts/MainLayout.vue.d.ts +2 -0
  63. package/dist/layouts/TheFooter.vue.d.ts +24 -0
  64. package/dist/layouts/TheSideBar.vue.d.ts +37 -0
  65. package/dist/layouts/TheToolbar.vue.d.ts +16 -0
  66. package/dist/postcard-dt.es.js +31940 -0
  67. package/dist/stores/canvas-store.d.ts +19 -0
  68. package/dist/stores/config-store.d.ts +153 -0
  69. package/dist/stores/constants.d.ts +35 -0
  70. package/dist/stores/global-store.d.ts +2127 -0
  71. package/dist/stores/history-store.d.ts +34 -0
  72. package/dist/stores/image-store.d.ts +14 -0
  73. package/dist/stores/item-store.d.ts +2070 -0
  74. package/dist/stores/project-store.d.ts +7 -0
  75. package/dist/stores/template-store.d.ts +9 -0
  76. package/dist/stores/unsplash-store.d.ts +99 -0
  77. package/dist/types/api.d.ts +58 -0
  78. package/dist/types/items.d.ts +92 -0
  79. package/dist/types/unsplash.d.ts +22 -0
  80. package/dist/utils/helper-functions.d.ts +11 -0
  81. package/dist/vite.svg +1 -0
  82. package/package.json +84 -0
@@ -0,0 +1,7 @@
1
+ import { Project } from '../types/api';
2
+ export declare const useProject: import('./pinia/dist/pinia.esm-browser.js').StoreDefinition<"project", {
3
+ project: Project;
4
+ projectEndpoint: string;
5
+ }, {}, {
6
+ getProjectDetails(): Promise<void>;
7
+ }>;
@@ -0,0 +1,9 @@
1
+ import { Template, PostcardTemplateCategory } from '../types/api';
2
+ export declare const useTemplate: import('./pinia/dist/pinia.esm-browser.js').StoreDefinition<"template", {
3
+ templates: Template[];
4
+ templateCategories: PostcardTemplateCategory[];
5
+ isResultLoading: boolean;
6
+ }, {}, {
7
+ searchTemplates(side: string, category: number, keyword: string): Promise<void>;
8
+ fetchTemplateCategories(): Promise<void>;
9
+ }>;
@@ -0,0 +1,99 @@
1
+ import { Photo } from '../types/unsplash';
2
+ export declare const useUnsplash: import('./pinia/dist/pinia.esm-browser.js').StoreDefinition<"unsplash", {
3
+ unsplashApi: {
4
+ photos: {
5
+ get: (a: {
6
+ photoId: string;
7
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/photos/types").Full>>;
8
+ list: (a: import("unsplash-js/dist/types/request").PaginationParams | undefined, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
9
+ results: import("unsplash-js/dist/methods/photos/types").Basic[];
10
+ total: number;
11
+ }>>;
12
+ getStats: (a: {
13
+ photoId: string;
14
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/photos/types").Stats>>;
15
+ getRandom: (a: import("unsplash-js/dist/methods/photos").RandomParams | undefined, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/photos/types").Random | import("unsplash-js/dist/methods/photos/types").Random[]>>;
16
+ trackDownload: (a: {
17
+ downloadLocation: string;
18
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
19
+ url: string;
20
+ }>>;
21
+ };
22
+ users: {
23
+ getPhotos: (a: {
24
+ stats?: boolean | undefined;
25
+ } & import("unsplash-js/dist/types/request").OrientationParam & {
26
+ username: string;
27
+ } & import("unsplash-js/dist/types/request").PaginationParams, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
28
+ results: import("unsplash-js/dist/methods/photos/types").Basic[];
29
+ total: number;
30
+ }>>;
31
+ getCollections: (a: {
32
+ username: string;
33
+ } & import("unsplash-js/dist/types/request").PaginationParams, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
34
+ results: import("unsplash-js/dist/methods/collections/types").Basic[];
35
+ total: number;
36
+ }>>;
37
+ getLikes: (a: import("unsplash-js/dist/types/request").OrientationParam & {
38
+ username: string;
39
+ } & import("unsplash-js/dist/types/request").PaginationParams, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
40
+ results: import("unsplash-js/dist/methods/photos/types").Basic[];
41
+ total: number;
42
+ }>>;
43
+ get: (a: {
44
+ username: string;
45
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/users/types").Full>>;
46
+ };
47
+ search: {
48
+ getCollections: (a: import("unsplash-js/dist/methods/search").SearchParams, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/search/types/response").Collections>>;
49
+ getPhotos: (a: {
50
+ query: string;
51
+ } & Pick<import("unsplash-js/dist/types/request").PaginationParams, "page" | "perPage"> & import("unsplash-js/dist/types/request").OrientationParam & {
52
+ orderBy?: import("unsplash-js").SearchOrderBy | undefined;
53
+ color?: import("unsplash-js").ColorId | undefined;
54
+ plus?: import("unsplash-js").Plus | undefined;
55
+ lang?: import("unsplash-js").Language | undefined;
56
+ contentFilter?: import("unsplash-js").ContentFilter | undefined;
57
+ collectionIds?: string[] | undefined;
58
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/search/types/response").Photos>>;
59
+ getUsers: (a: import("unsplash-js/dist/methods/search").SearchParams, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/search/types/response").Users>>;
60
+ };
61
+ collections: {
62
+ getPhotos: (a: {
63
+ collectionId: string;
64
+ } & import("unsplash-js/dist/types/request").PaginationParams & import("unsplash-js/dist/types/request").OrientationParam, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
65
+ results: any[];
66
+ total: number;
67
+ }>>;
68
+ get: (a: {
69
+ collectionId: string;
70
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<any>>;
71
+ list: (a: Pick<import("unsplash-js/dist/types/request").PaginationParams, "page" | "perPage"> | undefined, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
72
+ results: any[];
73
+ total: number;
74
+ }>>;
75
+ getRelated: (a: {
76
+ collectionId: string;
77
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<any>>;
78
+ };
79
+ topics: {
80
+ list: (a: import("unsplash-js/dist/helpers/typescript").OmitStrict<import("unsplash-js/dist/types/request").PaginationParams, "orderBy"> & {
81
+ orderBy?: import("unsplash-js/dist/methods/topics").TopicOrderBy | undefined;
82
+ topicIdsOrSlugs?: string[] | undefined;
83
+ }, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
84
+ results: import("unsplash-js/dist/methods/topics/types").Basic[];
85
+ total: number;
86
+ }>>;
87
+ get: (a: import("unsplash-js/dist/methods/topics").TopicIdOrSlug, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<import("unsplash-js/dist/methods/topics/types").Full>>;
88
+ getPhotos: (a: import("unsplash-js/dist/methods/topics").TopicIdOrSlug & import("unsplash-js/dist/types/request").PaginationParams & import("unsplash-js/dist/types/request").OrientationParam, additionalFetchOptions?: import("unsplash-js/dist/helpers/request").AdditionalFetchOptions | undefined) => Promise<import("unsplash-js/dist/helpers/response").ApiResponse<{
89
+ results: import("unsplash-js/dist/methods/photos/types").Basic[];
90
+ total: number;
91
+ }>>;
92
+ };
93
+ };
94
+ photos: Photo[];
95
+ isResultLoading: boolean;
96
+ }, {}, {
97
+ searchPhotos(text: string): Promise<void>;
98
+ trackDownload(link: string): void;
99
+ }>;
@@ -0,0 +1,58 @@
1
+ export interface Template {
2
+ id: number;
3
+ name: string;
4
+ description: string;
5
+ content: string;
6
+ preview: string;
7
+ size: string;
8
+ side: string;
9
+ created_at: string;
10
+ updated_at: string;
11
+ category_id: number;
12
+ postcard_template_category: PostcardTemplateCategory;
13
+ }
14
+ export interface PostcardTemplateCategory {
15
+ id: number;
16
+ name: string;
17
+ created_at: string;
18
+ updated_at: string;
19
+ project_id: number;
20
+ }
21
+ export interface S3Image {
22
+ id: number;
23
+ created_at: string;
24
+ updated_at: string;
25
+ name: string;
26
+ path: string;
27
+ project_id: number;
28
+ status: string;
29
+ project: Project;
30
+ }
31
+ export interface Project {
32
+ id: number;
33
+ created_at: string;
34
+ updated_at: string;
35
+ user_id: number;
36
+ name: string;
37
+ feature_s3: boolean;
38
+ feature_qr: boolean;
39
+ feature_google_maps: boolean;
40
+ feature_driving_directions: boolean;
41
+ s3_credential: S3Credential;
42
+ }
43
+ export interface S3Credential {
44
+ id: number;
45
+ created_at: string;
46
+ updated_at: string;
47
+ project_id: number;
48
+ region: string;
49
+ bucket: string;
50
+ valid_credentials: string;
51
+ bucket_exists: string;
52
+ valid_region: string;
53
+ bucket_writable: string;
54
+ bucket_readable: string;
55
+ image_uploadable: string;
56
+ image_readable: string;
57
+ valid_cors: null;
58
+ }
@@ -0,0 +1,92 @@
1
+ export interface Position {
2
+ x: number;
3
+ y: number;
4
+ w: number;
5
+ h: number;
6
+ r: number;
7
+ }
8
+ export interface Border {
9
+ radius: number;
10
+ color: string;
11
+ weight: number;
12
+ }
13
+ export interface BaseItem {
14
+ id: number;
15
+ type: string;
16
+ value: string;
17
+ position: Position;
18
+ border?: Border;
19
+ keepRatio?: boolean;
20
+ }
21
+ export interface ImageItem extends BaseItem {
22
+ type: 'Image';
23
+ }
24
+ export interface TextItem extends BaseItem {
25
+ type: 'Text';
26
+ }
27
+ export interface ColorItem extends BaseItem {
28
+ type: 'Color';
29
+ }
30
+ export interface ShapeItem extends BaseItem {
31
+ type: 'Shape';
32
+ }
33
+ export interface GoogleMap extends BaseItem {
34
+ type: 'GoogleMap';
35
+ location?: {
36
+ lat?: number;
37
+ lng?: number;
38
+ address: string;
39
+ };
40
+ fromLocation?: {
41
+ lat?: number;
42
+ lng?: number;
43
+ address: string;
44
+ };
45
+ showDirections?: boolean;
46
+ }
47
+ export interface StreetView extends BaseItem {
48
+ type: 'StreetView';
49
+ location?: {
50
+ lat?: number;
51
+ lng?: number;
52
+ address: string;
53
+ };
54
+ }
55
+ export interface QrCodeItem extends BaseItem {
56
+ type: 'QrCode';
57
+ location?: {
58
+ lat?: number;
59
+ lng?: number;
60
+ address: string;
61
+ };
62
+ belongsTo?: number;
63
+ belongsToType?: 'GoogleMap' | 'StreetView';
64
+ }
65
+ export interface ConversionItem extends BaseItem {
66
+ type: 'Conversion';
67
+ stringValue?: string;
68
+ }
69
+ export type MapItem = GoogleMap | StreetView;
70
+ export type Item = ColorItem | TextItem | ImageItem | ShapeItem | MapItem | QrCodeItem | ConversionItem;
71
+ export interface ItemState {
72
+ focusedItemId: number | undefined;
73
+ items: Item[];
74
+ }
75
+ export interface CanvasState {
76
+ size: {
77
+ w: number;
78
+ h: number;
79
+ };
80
+ backgroundColor: string | null;
81
+ backgroundImage: string | null;
82
+ backgroundSize: string;
83
+ backgroundPosition: string;
84
+ isBorderEnabled: boolean;
85
+ borderColor: string | null;
86
+ borderWidth: number | null;
87
+ canvasOffset?: {
88
+ x: number;
89
+ y: number;
90
+ };
91
+ }
92
+ export type GlobalState = ItemState & CanvasState;
@@ -0,0 +1,22 @@
1
+ export interface Photo {
2
+ id: string;
3
+ width: number;
4
+ height: number;
5
+ color: string | null;
6
+ links: {
7
+ download: string;
8
+ download_location: string;
9
+ html: string;
10
+ self: string;
11
+ };
12
+ urls: {
13
+ regular: string;
14
+ raw: string;
15
+ small: string;
16
+ thumb: string;
17
+ };
18
+ user: {
19
+ username: string;
20
+ name: string;
21
+ };
22
+ }
@@ -0,0 +1,11 @@
1
+ import { Position } from '../types/items';
2
+ type URLParamKey = 'googleMap' | 'directionMap' | 'staticStreetView' | 'streetView' | 'qrCodeMap' | 'qrCodeDirection';
3
+ interface URLParams {
4
+ address?: string | undefined;
5
+ size?: Partial<Position>;
6
+ key: URLParamKey;
7
+ }
8
+ export declare function copyObject<T>(obj: T): T;
9
+ export declare function getURL({ address, size, key }: URLParams): string;
10
+ export declare function capitalize(s: string): string;
11
+ export {};
package/dist/vite.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
package/package.json ADDED
@@ -0,0 +1,84 @@
1
+ {
2
+ "name": "designertool",
3
+ "private": false,
4
+ "version": "0.0.1-dev",
5
+ "type": "module",
6
+ "files": [
7
+ "dist"
8
+ ],
9
+ "module": "./dist/postcard-dt.es.js",
10
+ "exports": {
11
+ ".": {
12
+ "import": "./dist/postcard-dt.es.js"
13
+ },
14
+ "./dist/index.css": {
15
+ "import": "./dist/index.css",
16
+ "require": "./dist/index.css"
17
+ }
18
+ },
19
+ "types": "./dist/index.d.ts",
20
+ "scripts": {
21
+ "dev": "vite",
22
+ "format": "prettier . --write",
23
+ "build": "vue-tsc && vite build",
24
+ "build:static": "vue-cli-service build",
25
+ "build:package": "vue-cli-service build --target lib --inline-vue --name myLib src/package-entry.ts",
26
+ "preview": "vite preview"
27
+ },
28
+ "dependencies": {
29
+ "@headlessui/vue": "^1.7.14",
30
+ "@vueuse/core": "^10.2.0",
31
+ "buffer": "^6.0.3",
32
+ "js-beautify": "^1.14.8",
33
+ "mosha-vue-toastify": "^1.0.23",
34
+ "pinia": "^2.1.4",
35
+ "prismjs": "^1.29.0",
36
+ "qrcode": "^1.5.3",
37
+ "unsplash-js": "^7.0.18",
38
+ "uuid": "^9.0.0",
39
+ "vue": "^3.3.4",
40
+ "vue-draggable-plus": "^0.3.5",
41
+ "vue-prism-editor": "^2.0.0-alpha.2",
42
+ "vue3-colorpicker": "^2.1.5",
43
+ "vue3-moveable": "^0.23.0",
44
+ "vue3-pdfjs": "^0.1.6",
45
+ "vue3-popper": "^1.5.0"
46
+ },
47
+ "devDependencies": {
48
+ "@aesoper/normal-utils": "^0.1.5",
49
+ "@heroicons/vue": "^2.0.18",
50
+ "@popperjs/core": "^2.11.8",
51
+ "@tailwindcss/forms": "^0.5.3",
52
+ "@types/google.maps": "^3.53.4",
53
+ "@types/js-beautify": "^1.13.3",
54
+ "@types/node": "^20.3.1",
55
+ "@types/prismjs": "^1.26.0",
56
+ "@types/qrcode": "^1.5.0",
57
+ "@types/uuid": "^9.0.0",
58
+ "@vitejs/plugin-vue": "^4.2.3",
59
+ "@vue/cli-plugin-babel": "^5.0.8",
60
+ "@vue/cli-plugin-typescript": "^5.0.8",
61
+ "@vue/cli-service": "^5.0.8",
62
+ "autoprefixer": "^10.4.14",
63
+ "gradient-parser": "^1.0.2",
64
+ "lodash-es": "^4.17.21",
65
+ "node-sass": "^9.0.0",
66
+ "path": "^0.12.7",
67
+ "postcss": "^8.4.24",
68
+ "prettier": "^3.1.1",
69
+ "prettier-plugin-organize-attributes": "^1.0.0",
70
+ "prettier-plugin-tailwindcss": "^0.3.0",
71
+ "rollup": "^3.25.1",
72
+ "rollup-plugin-typescript2": "^0.34.1",
73
+ "sass": "^1.63.4",
74
+ "sass-loader": "^13.3.2",
75
+ "tailwindcss": "^3.3.2",
76
+ "tinycolor2": "^1.6.0",
77
+ "typescript": "^5.1.3",
78
+ "vite": "^4.3.9",
79
+ "vite-plugin-dts": "^2.3.0",
80
+ "vue-cli-service": "^5.0.10",
81
+ "vue-tsc": "^1.6.5",
82
+ "vue-types": "^5.0.4"
83
+ }
84
+ }