@exmg/exm-upload 1.1.36 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-dialog-upload-base.d.ts +90 -0
  2. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-dialog-upload-base.js +226 -0
  3. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-dialog-upload.d.ts +11 -0
  4. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-dialog-upload.js +15 -0
  5. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-base.d.ts +148 -0
  6. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-base.js +373 -0
  7. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-crop-base.d.ts +16 -0
  8. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-crop-base.js +76 -0
  9. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-crop.d.ts +9 -0
  10. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-crop.js +12 -0
  11. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-drop-area-base.d.ts +8 -0
  12. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-drop-area-base.js +34 -0
  13. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-drop-area.d.ts +9 -0
  14. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-drop-area.js +12 -0
  15. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-input.d.ts +15 -0
  16. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-input.js +84 -0
  17. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-item-base.d.ts +45 -0
  18. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-item-base.js +175 -0
  19. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-item.d.ts +9 -0
  20. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload-item.js +12 -0
  21. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload.d.ts +19 -0
  22. package/.rollup.cache/root/repo/packages/exm-upload/dist/exm-upload.js +22 -0
  23. package/.rollup.cache/root/repo/packages/exm-upload/dist/index.d.ts +19 -0
  24. package/.rollup.cache/root/repo/packages/exm-upload/dist/index.js +18 -0
  25. package/.rollup.cache/root/repo/packages/exm-upload/dist/mixins/exm-upload-drag-drop-mixin.d.ts +10 -0
  26. package/.rollup.cache/root/repo/packages/exm-upload/dist/mixins/exm-upload-drag-drop-mixin.js +28 -0
  27. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-dialog-upload-css.d.ts +1 -0
  28. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-dialog-upload-css.js +253 -0
  29. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-crop-styles-css.d.ts +1 -0
  30. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-crop-styles-css.js +324 -0
  31. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-drop-area-styles-css.d.ts +1 -0
  32. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-drop-area-styles-css.js +52 -0
  33. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-input-css.d.ts +1 -0
  34. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-input-css.js +22 -0
  35. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-item-styles-css.d.ts +1 -0
  36. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-item-styles-css.js +124 -0
  37. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-styles-css.d.ts +1 -0
  38. package/.rollup.cache/root/repo/packages/exm-upload/dist/styles/exm-upload-styles-css.js +150 -0
  39. package/.rollup.cache/root/repo/packages/exm-upload/dist/types.d.ts +33 -0
  40. package/.rollup.cache/root/repo/packages/exm-upload/dist/types.js +10 -0
  41. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/adapters/form-data-adapter.d.ts +7 -0
  42. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/adapters/local-adapter.d.ts +6 -0
  43. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/adapters/xhr-adapter.d.ts +9 -0
  44. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/index.d.ts +1 -0
  45. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/service.d.ts +9 -0
  46. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/service.js +45 -0
  47. package/.rollup.cache/root/repo/packages/exm-upload/dist/upload/types.d.ts +12 -0
  48. package/.rollup.cache/root/repo/packages/exm-upload/dist/utils.d.ts +33 -0
  49. package/.rollup.cache/root/repo/packages/exm-upload/dist/utils.js +89 -0
  50. package/dist/exm-dialog-upload-base.js +6 -4
  51. package/dist/exm-dialog-upload.js +4 -2
  52. package/dist/exm-upload-base.js +9 -7
  53. package/dist/exm-upload-crop-base.js +7 -4
  54. package/dist/exm-upload-crop.js +4 -2
  55. package/dist/exm-upload-drop-area-base.js +6 -3
  56. package/dist/exm-upload-drop-area.js +4 -2
  57. package/dist/exm-upload-input.js +5 -3
  58. package/dist/exm-upload-item-base.js +9 -6
  59. package/dist/exm-upload-item.js +4 -2
  60. package/dist/exm-upload.js +4 -2
  61. package/dist/index.d.ts +1 -0
  62. package/dist/index.js +3 -2
  63. package/dist/mixins/exm-upload-drag-drop-mixin.js +6 -3
  64. package/dist/styles/exm-dialog-upload-css.js +5 -2
  65. package/dist/styles/exm-upload-crop-styles-css.js +5 -2
  66. package/dist/styles/exm-upload-drop-area-styles-css.js +5 -2
  67. package/dist/styles/exm-upload-input-css.js +5 -2
  68. package/dist/styles/exm-upload-item-styles-css.js +5 -2
  69. package/dist/styles/exm-upload-styles-css.js +5 -2
  70. package/dist/types.js +5 -3
  71. package/dist/upload/service.js +2 -1
  72. package/dist/utils.js +8 -10
  73. package/package.json +5 -5
  74. /package/{dist → .rollup.cache/root/repo/packages/exm-upload/dist}/upload/adapters/form-data-adapter.js +0 -0
  75. /package/{dist → .rollup.cache/root/repo/packages/exm-upload/dist}/upload/adapters/local-adapter.js +0 -0
  76. /package/{dist → .rollup.cache/root/repo/packages/exm-upload/dist}/upload/adapters/xhr-adapter.js +0 -0
  77. /package/{dist → .rollup.cache/root/repo/packages/exm-upload/dist}/upload/index.js +0 -0
  78. /package/{dist → .rollup.cache/root/repo/packages/exm-upload/dist}/upload/types.js +0 -0
@@ -0,0 +1,10 @@
1
+ export var FileUploadError;
2
+ (function (FileUploadError) {
3
+ FileUploadError["INVALID_SIZE"] = "File size too large";
4
+ FileUploadError["INVALID_TYPE"] = "Invalid file type";
5
+ FileUploadError["INVALID_AMOUNT"] = "Max amount of files exceeded";
6
+ FileUploadError["INVALID_MULTIPLE"] = "Multiple files not allowed";
7
+ FileUploadError["INVALID_RESOLUTION"] = "Image resulution is not valid";
8
+ FileUploadError["SERVER_ERROR"] = "Server error occured";
9
+ })(FileUploadError || (FileUploadError = {}));
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ import { UploadAdapter, UploadConfig } from '../types.js';
2
+ declare class XHRJSONUploadAdapter implements UploadAdapter {
3
+ config: UploadConfig;
4
+ constructor(config: UploadConfig);
5
+ upload(file: File, progressCallback: (progress: number) => void): Promise<string>;
6
+ }
7
+ export { XHRJSONUploadAdapter as UploadAdapter };
@@ -0,0 +1,6 @@
1
+ import { UploadAdapter } from '../types.js';
2
+ declare class LocalStorageUploadAdapter implements UploadAdapter {
3
+ private readFileAsDataURL;
4
+ upload(file: File, progressCallback: (progress: number) => void): Promise<string>;
5
+ }
6
+ export { LocalStorageUploadAdapter as UploadAdapter };
@@ -0,0 +1,9 @@
1
+ import { UploadAdapter, UploadConfig } from '../types.js';
2
+ declare class XHRUploadAdapter implements UploadAdapter {
3
+ config: UploadConfig;
4
+ xhr: XMLHttpRequest;
5
+ constructor(config: UploadConfig);
6
+ abort(): void;
7
+ upload(file: File, progressCallback: (progress: number) => void): Promise<string>;
8
+ }
9
+ export { XHRUploadAdapter as UploadAdapter };
@@ -0,0 +1 @@
1
+ export { UploadService } from './service.js';
@@ -0,0 +1,9 @@
1
+ import { UploadAdapter, UploadConfig } from './types.js';
2
+ declare class UploadService {
3
+ private adapter;
4
+ constructor(adapter: UploadAdapter);
5
+ upload(file: File, progressCallback: (progress: number) => void): Promise<string>;
6
+ abort(): void;
7
+ static create(destination: 'xhr' | 'local' | 'form-data' | 'custom', config?: UploadConfig): Promise<UploadService>;
8
+ }
9
+ export { UploadService };
@@ -0,0 +1,45 @@
1
+ async function instantiateClass(path, config) {
2
+ if (!path) {
3
+ throw new Error(`Class UploadAdapter path not set.`);
4
+ }
5
+ const { UploadAdapter } = await import(path);
6
+ if (typeof UploadAdapter === 'function') {
7
+ return new UploadAdapter(config);
8
+ }
9
+ else {
10
+ throw new Error(`Class UploadAdapter not found.`);
11
+ }
12
+ }
13
+ class UploadService {
14
+ constructor(adapter) {
15
+ this.adapter = adapter;
16
+ }
17
+ async upload(file, progressCallback) {
18
+ return this.adapter.upload(file, progressCallback);
19
+ }
20
+ abort() {
21
+ this.adapter.abort && this.adapter.abort();
22
+ }
23
+ static async create(destination, config) {
24
+ let adapter;
25
+ switch (destination) {
26
+ case 'local':
27
+ adapter = await instantiateClass('./adapters/local-adapter.js', config);
28
+ break;
29
+ case 'xhr':
30
+ adapter = await instantiateClass('./adapters/xhr-adapter.js', config);
31
+ break;
32
+ case 'form-data':
33
+ adapter = await instantiateClass('./adapters/form-data-adapter.js', config);
34
+ break;
35
+ case 'custom':
36
+ adapter = await instantiateClass(config === null || config === void 0 ? void 0 : config.customAdapterPath, config);
37
+ break;
38
+ default:
39
+ throw new Error(`Unknown upload destination: ${destination}`);
40
+ }
41
+ return new UploadService(adapter);
42
+ }
43
+ }
44
+ export { UploadService };
45
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1,12 @@
1
+ export interface UploadAdapter {
2
+ upload(file: File, progressCallback: (progress: number) => void): Promise<string>;
3
+ abort?: () => void;
4
+ }
5
+ export interface UploadConfig {
6
+ uploadUrl?: string;
7
+ customAdapterPath?: string;
8
+ headers?: {
9
+ [key: string]: string;
10
+ };
11
+ responseType?: '' | 'json' | 'text' | 'blob' | 'arraybuffer';
12
+ }
@@ -0,0 +1,33 @@
1
+ export declare const isMimeType: (value: string) => boolean;
2
+ /**
3
+ * Checks if the type of a file is valid based on the accepted types.
4
+ *
5
+ * @param file - The file object to check.
6
+ * @param accept - A comma-separated list of accepted types.
7
+ * @returns True if the file type is valid, false otherwise.
8
+ */
9
+ export declare const isTypeValidExtension: (file: File, accept: string) => boolean | "" | undefined;
10
+ /**
11
+ * Checks if the size of a file is valid based on the maximum size.
12
+ *
13
+ * @param size - The size of the file in bytes.
14
+ * @param maxSize - The maximum size allowed, with a digital unit (e.g., "10MB").
15
+ * @returns True if the file size is valid, false otherwise.
16
+ * @throws Error if the maximum size is invalid.
17
+ */
18
+ export declare const isSizeValid: (size: number, maxSize: string) => boolean;
19
+ /**
20
+ * Formats a byte size into a human-readable string.
21
+ *
22
+ * @param bytes - The size in bytes to format.
23
+ * @returns The formatted size string.
24
+ */
25
+ export declare const formatBytes: (bytes: number) => string;
26
+ /**
27
+ * Checks if a file is an image based on its type.
28
+ *
29
+ * @param file - The file object to check.
30
+ * @returns True if the file is an image, false otherwise.
31
+ */
32
+ export declare const isImage: (file: File) => boolean | undefined;
33
+ export declare const isCorrectResolution: (image: File, resolution: string) => Promise<unknown>;
@@ -0,0 +1,89 @@
1
+ export const isMimeType = (value) => {
2
+ const mimeTypeRegex = /^[a-zA-Z]+\/[a-zA-Z0-9+\-.]+(\*?)$/;
3
+ return mimeTypeRegex.test(value);
4
+ };
5
+ /**
6
+ * Checks if the type of a file is valid based on the accepted types.
7
+ *
8
+ * @param file - The file object to check.
9
+ * @param accept - A comma-separated list of accepted types.
10
+ * @returns True if the file type is valid, false otherwise.
11
+ */
12
+ export const isTypeValidExtension = (file, accept) => {
13
+ var _a;
14
+ if (accept.trim() === '')
15
+ return true;
16
+ const acceptedTypes = new Set(accept.split(',').map((type) => type.trim().toLowerCase()));
17
+ const fileExtensionRegExp = /\.[^.]+$/;
18
+ const name = file.name.toLowerCase();
19
+ const type = file.type.toLowerCase();
20
+ const hasFileExtension = fileExtensionRegExp.test(name);
21
+ const [fileExtension] = !hasFileExtension ? [undefined] : ((_a = fileExtensionRegExp.exec(name)) !== null && _a !== void 0 ? _a : []);
22
+ return acceptedTypes.has(type) || (fileExtension && acceptedTypes.has(fileExtension));
23
+ };
24
+ /**
25
+ * Checks if the size of a file is valid based on the maximum size.
26
+ *
27
+ * @param size - The size of the file in bytes.
28
+ * @param maxSize - The maximum size allowed, with a digital unit (e.g., "10MB").
29
+ * @returns True if the file size is valid, false otherwise.
30
+ * @throws Error if the maximum size is invalid.
31
+ */
32
+ export const isSizeValid = (size, maxSize) => {
33
+ const sizes = ['B', 'KB', 'MB', 'GB'];
34
+ // Extract the size from the digital unit
35
+ const extracted = maxSize.split(/^([\d.]+)\s*(b|kb|mb|gb)$/i).filter((x) => x);
36
+ if (!extracted) {
37
+ throw new Error('Invalid max size set');
38
+ }
39
+ const power = sizes.indexOf(extracted[1].toUpperCase());
40
+ return +extracted[0] * Math.pow(1024, power) > size;
41
+ };
42
+ /**
43
+ * Formats a byte size into a human-readable string.
44
+ *
45
+ * @param bytes - The size in bytes to format.
46
+ * @returns The formatted size string.
47
+ */
48
+ export const formatBytes = (bytes) => {
49
+ if (!bytes)
50
+ return '0 Bytes';
51
+ const k = 1024;
52
+ const dm = 2;
53
+ const sizes = ['Bytes', 'KB', 'MB', 'GB'];
54
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
55
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
56
+ };
57
+ /**
58
+ * Checks if a file is an image based on its type.
59
+ *
60
+ * @param file - The file object to check.
61
+ * @returns True if the file is an image, false otherwise.
62
+ */
63
+ export const isImage = (file) => {
64
+ if (!file) {
65
+ return;
66
+ }
67
+ return file.type.startsWith('image');
68
+ };
69
+ export const isCorrectResolution = (image, resolution) => {
70
+ if (resolution.split('x').length !== 2) {
71
+ throw new Error('Incorrect fixed resultion format, should be formatted like "600x400"');
72
+ }
73
+ const [width, height] = resolution.split('x');
74
+ const img = new Image();
75
+ return new Promise((resolve, reject) => {
76
+ img.onload = () => {
77
+ const correct = img.naturalWidth === parseInt(width, 10) && img.naturalHeight === parseInt(height, 10);
78
+ resolve(correct);
79
+ URL.revokeObjectURL(img.src);
80
+ };
81
+ const objectURL = URL.createObjectURL(image);
82
+ img.src = objectURL;
83
+ img.onerror = () => {
84
+ URL.revokeObjectURL(img.src);
85
+ reject(new Error('Error reading aspect ratio'));
86
+ };
87
+ });
88
+ };
89
+ //# sourceMappingURL=utils.js.map
@@ -1,4 +1,4 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { html } from 'lit';
3
3
  import '@material/web/dialog/dialog.js';
4
4
  import '@material/web/button/filled-button.js';
@@ -7,8 +7,8 @@ import '@material/web/icon/icon.js';
7
7
  import '@material/web/iconbutton/icon-button.js';
8
8
  import { property, query, state } from 'lit/decorators.js';
9
9
  import { ExmgElement } from '@exmg/lit-base';
10
- export const CLOSE_ACTION = 'close';
11
- export class ExmDialogUploadBase extends ExmgElement {
10
+
11
+ class ExmDialogUploadBase extends ExmgElement {
12
12
  constructor() {
13
13
  super(...arguments);
14
14
  /**
@@ -223,4 +223,6 @@ __decorate([
223
223
  __decorate([
224
224
  property({ type: String })
225
225
  ], ExmDialogUploadBase.prototype, "buttonCropDoneCopy", void 0);
226
- //# sourceMappingURL=exm-dialog-upload-base.js.map
226
+
227
+ export { ExmDialogUploadBase };
228
+ //# sourceMappingURL=exm-dialog-upload-base.js.map
@@ -1,7 +1,8 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { customElement } from 'lit/decorators.js';
3
3
  import { style } from './styles/exm-dialog-upload-css.js';
4
4
  import { ExmDialogUploadBase } from './exm-dialog-upload-base.js';
5
+
5
6
  let ExmDialogUpload = class ExmDialogUpload extends ExmDialogUploadBase {
6
7
  getUploadElement() {
7
8
  return this.querySelector('exm-upload');
@@ -11,5 +12,6 @@ ExmDialogUpload.styles = [style];
11
12
  ExmDialogUpload = __decorate([
12
13
  customElement('exm-dialog-upload')
13
14
  ], ExmDialogUpload);
15
+
14
16
  export { ExmDialogUpload };
15
- //# sourceMappingURL=exm-dialog-upload.js.map
17
+ //# sourceMappingURL=exm-dialog-upload.js.map
@@ -1,18 +1,18 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { html } from 'lit';
3
- import { property, query, state } from 'lit/decorators.js';
3
+ import { property, state, query } from 'lit/decorators.js';
4
4
  import { ifDefined } from 'lit/directives/if-defined.js';
5
5
  import { repeat } from 'lit/directives/repeat.js';
6
6
  import '@material/web/icon/icon.js';
7
7
  import { FileUploadError } from './types.js';
8
- // File upload imports
9
8
  import './exm-upload-item.js';
10
9
  import './exm-upload-crop.js';
11
10
  import './exm-upload-drop-area.js';
12
- import { isCorrectResolution, isImage, isSizeValid, isTypeValidExtension } from './utils.js';
11
+ import { isSizeValid, isTypeValidExtension, isImage, isCorrectResolution } from './utils.js';
13
12
  import { classMap } from 'lit/directives/class-map.js';
14
- import { ExmgElement, observer } from '@exmg/lit-base';
15
- export class ExmUploadBase extends ExmgElement {
13
+ import { observer, ExmgElement } from '@exmg/lit-base';
14
+
15
+ class ExmUploadBase extends ExmgElement {
16
16
  constructor() {
17
17
  super(...arguments);
18
18
  /**
@@ -370,4 +370,6 @@ __decorate([
370
370
  __decorate([
371
371
  query('.item-container')
372
372
  ], ExmUploadBase.prototype, "itemContainer", void 0);
373
- //# sourceMappingURL=exm-upload-base.js.map
373
+
374
+ export { ExmUploadBase };
375
+ //# sourceMappingURL=exm-upload-base.js.map
@@ -1,10 +1,11 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { html, nothing } from 'lit';
3
- import { query, property, state } from 'lit/decorators.js';
3
+ import { property, query, state } from 'lit/decorators.js';
4
4
  import '@material/web/button/filled-button.js';
5
5
  import { ExmgElement } from '@exmg/lit-base';
6
6
  import Cropper from 'cropperjs';
7
- export class ExmUploadCropBase extends ExmgElement {
7
+
8
+ class ExmUploadCropBase extends ExmgElement {
8
9
  constructor() {
9
10
  super(...arguments);
10
11
  this.cropperConfig = {};
@@ -73,4 +74,6 @@ __decorate([
73
74
  __decorate([
74
75
  state()
75
76
  ], ExmUploadCropBase.prototype, "_item", void 0);
76
- //# sourceMappingURL=exm-upload-crop-base.js.map
77
+
78
+ export { ExmUploadCropBase };
79
+ //# sourceMappingURL=exm-upload-crop-base.js.map
@@ -1,12 +1,14 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { customElement } from 'lit/decorators.js';
3
3
  import { style } from './styles/exm-upload-crop-styles-css.js';
4
4
  import { ExmUploadCropBase } from './exm-upload-crop-base.js';
5
+
5
6
  let ExmUploadCrop = class ExmUploadCrop extends ExmUploadCropBase {
6
7
  };
7
8
  ExmUploadCrop.styles = style;
8
9
  ExmUploadCrop = __decorate([
9
10
  customElement('exm-upload-crop')
10
11
  ], ExmUploadCrop);
12
+
11
13
  export { ExmUploadCrop };
12
- //# sourceMappingURL=exm-upload-crop.js.map
14
+ //# sourceMappingURL=exm-upload-crop.js.map
@@ -1,10 +1,11 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { classMap } from 'lit/directives/class-map.js';
5
5
  import { DragAndDropMixin } from './mixins/exm-upload-drag-drop-mixin.js';
6
6
  import { ExmgElement } from '@exmg/lit-base';
7
- export class ExmUploadDropAreaBase extends DragAndDropMixin(ExmgElement) {
7
+
8
+ class ExmUploadDropAreaBase extends DragAndDropMixin(ExmgElement) {
8
9
  render() {
9
10
  return html ` <div
10
11
  class="drop ${classMap({
@@ -31,4 +32,6 @@ __decorate([
31
32
  __decorate([
32
33
  property({ type: Boolean })
33
34
  ], ExmUploadDropAreaBase.prototype, "disabled", void 0);
34
- //# sourceMappingURL=exm-upload-drop-area-base.js.map
35
+
36
+ export { ExmUploadDropAreaBase };
37
+ //# sourceMappingURL=exm-upload-drop-area-base.js.map
@@ -1,12 +1,14 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { customElement } from 'lit/decorators.js';
3
3
  import { style } from './styles/exm-upload-drop-area-styles-css.js';
4
4
  import { ExmUploadDropAreaBase } from './exm-upload-drop-area-base.js';
5
+
5
6
  let ExmUploadDropArea = class ExmUploadDropArea extends ExmUploadDropAreaBase {
6
7
  };
7
8
  ExmUploadDropArea.styles = style;
8
9
  ExmUploadDropArea = __decorate([
9
10
  customElement('exm-upload-drop-area')
10
11
  ], ExmUploadDropArea);
12
+
11
13
  export { ExmUploadDropArea };
12
- //# sourceMappingURL=exm-upload-drop-area.js.map
14
+ //# sourceMappingURL=exm-upload-drop-area.js.map
@@ -1,8 +1,9 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { LitElement, html } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
3
+ import { property, customElement } from 'lit/decorators.js';
4
4
  import '@exmg/exm-collapsed';
5
5
  import { style } from './styles/exm-upload-input-css.js';
6
+
6
7
  let ExmUploadInput = class ExmUploadInput extends LitElement {
7
8
  constructor() {
8
9
  super(...arguments);
@@ -80,5 +81,6 @@ __decorate([
80
81
  ExmUploadInput = __decorate([
81
82
  customElement('exm-upload-input')
82
83
  ], ExmUploadInput);
84
+
83
85
  export { ExmUploadInput };
84
- //# sourceMappingURL=exm-upload-input.js.map
86
+ //# sourceMappingURL=exm-upload-input.js.map
@@ -1,14 +1,15 @@
1
- import { __decorate } from "tslib";
2
- import { html, nothing } from 'lit';
1
+ import { __decorate } from 'tslib';
2
+ import { nothing, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import '@material/web/icon/icon.js';
5
5
  import '@material/web/iconbutton/icon-button.js';
6
6
  import '@material/web/progress/linear-progress.js';
7
- import { formatBytes, isImage } from './utils.js';
7
+ import { isImage, formatBytes } from './utils.js';
8
8
  import { ifDefined } from 'lit/directives/if-defined.js';
9
- import { UploadService } from './upload/index.js';
9
+ import { UploadService } from './upload/service.js';
10
10
  import { ExmgElement } from '@exmg/lit-base';
11
- export class ExmUploadItemBase extends ExmgElement {
11
+
12
+ class ExmUploadItemBase extends ExmgElement {
12
13
  constructor() {
13
14
  super(...arguments);
14
15
  /**
@@ -172,4 +173,6 @@ __decorate([
172
173
  __decorate([
173
174
  property({ type: Number })
174
175
  ], ExmUploadItemBase.prototype, "aspectRatio", void 0);
175
- //# sourceMappingURL=exm-upload-item-base.js.map
176
+
177
+ export { ExmUploadItemBase };
178
+ //# sourceMappingURL=exm-upload-item-base.js.map
@@ -1,12 +1,14 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { customElement } from 'lit/decorators.js';
3
3
  import { style } from './styles/exm-upload-item-styles-css.js';
4
4
  import { ExmUploadItemBase } from './exm-upload-item-base.js';
5
+
5
6
  let ExmUploadItem = class ExmUploadItem extends ExmUploadItemBase {
6
7
  };
7
8
  ExmUploadItem.styles = style;
8
9
  ExmUploadItem = __decorate([
9
10
  customElement('exm-upload-item')
10
11
  ], ExmUploadItem);
12
+
11
13
  export { ExmUploadItem };
12
- //# sourceMappingURL=exm-upload-item.js.map
14
+ //# sourceMappingURL=exm-upload-item.js.map
@@ -1,7 +1,8 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { style } from './styles/exm-upload-styles-css.js';
3
3
  import { ExmUploadBase } from './exm-upload-base.js';
4
4
  import { customElement } from 'lit/decorators.js';
5
+
5
6
  /**
6
7
  * `exm-upload`
7
8
  * Example:
@@ -18,5 +19,6 @@ ExmUpload.styles = style;
18
19
  ExmUpload = __decorate([
19
20
  customElement('exm-upload')
20
21
  ], ExmUpload);
22
+
21
23
  export { ExmUpload };
22
- //# sourceMappingURL=exm-upload.js.map
24
+ //# sourceMappingURL=exm-upload.js.map
package/dist/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export { ExmUploadItem } from './exm-upload-item.js';
8
8
  export { ExmUploadItemBase } from './exm-upload-item-base.js';
9
9
  export { ExmDialogUpload } from './exm-dialog-upload.js';
10
10
  export { ExmDialogUploadBase } from './exm-dialog-upload-base.js';
11
+ export { ExmUploadInput } from './exm-upload-input.js';
11
12
  export { FileData, FileUploadConfig } from './types.js';
12
13
  export { UploadAdapter, UploadConfig } from './upload/types.js';
13
14
  export { UploadService } from './upload/index.js';
package/dist/index.js CHANGED
@@ -8,10 +8,11 @@ export { ExmUploadItem } from './exm-upload-item.js';
8
8
  export { ExmUploadItemBase } from './exm-upload-item-base.js';
9
9
  export { ExmDialogUpload } from './exm-dialog-upload.js';
10
10
  export { ExmDialogUploadBase } from './exm-dialog-upload-base.js';
11
- export { UploadService } from './upload/index.js';
11
+ export { ExmUploadInput } from './exm-upload-input.js';
12
+ export { UploadService } from './upload/service.js';
12
13
  export { style as exmgUploadStyles } from './styles/exm-upload-styles-css.js';
13
14
  export { style as exmgUploadDropAreaStyles } from './styles/exm-upload-drop-area-styles-css.js';
14
15
  export { style as exmgUploadCropStyles } from './styles/exm-upload-crop-styles-css.js';
15
16
  export { style as exmgUploadItemStyles } from './styles/exm-upload-item-styles-css.js';
16
17
  export { style as exmgDialogUploadStyles } from './styles/exm-dialog-upload-css.js';
17
- //# sourceMappingURL=index.js.map
18
+ //# sourceMappingURL=index.js.map
@@ -1,6 +1,7 @@
1
- import { __decorate } from "tslib";
1
+ import { __decorate } from 'tslib';
2
2
  import { property } from 'lit/decorators.js';
3
- export const DragAndDropMixin = (superClass) => {
3
+
4
+ const DragAndDropMixin = (superClass) => {
4
5
  class DragAndDropMixin extends superClass {
5
6
  constructor() {
6
7
  super(...arguments);
@@ -25,4 +26,6 @@ export const DragAndDropMixin = (superClass) => {
25
26
  ], DragAndDropMixin.prototype, "dragOver", void 0);
26
27
  return DragAndDropMixin;
27
28
  };
28
- //# sourceMappingURL=exm-upload-drag-drop-mixin.js.map
29
+
30
+ export { DragAndDropMixin };
31
+ //# sourceMappingURL=exm-upload-drag-drop-mixin.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  :host {
4
5
  border-start-start-radius: var(
5
6
  --md-dialog-container-shape-start-start,
@@ -250,4 +251,6 @@ export const style = css `
250
251
  width: 460px;
251
252
  }
252
253
  `;
253
- //# sourceMappingURL=exm-dialog-upload-css.js.map
254
+
255
+ export { style };
256
+ //# sourceMappingURL=exm-dialog-upload-css.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  #image {
4
5
  z-index: 99999;
5
6
  display: flex;
@@ -321,4 +322,6 @@ export const style = css `
321
322
  cursor: not-allowed;
322
323
  }
323
324
  `;
324
- //# sourceMappingURL=exm-upload-crop-styles-css.js.map
325
+
326
+ export { style };
327
+ //# sourceMappingURL=exm-upload-crop-styles-css.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  :host {
4
5
  display: flex;
5
6
  width: 100%;
@@ -49,4 +50,6 @@ export const style = css `
49
50
  background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='10' ry='10' stroke='%230071dc' stroke-width='4' stroke-dasharray='6%2c 10' stroke-dashoffset='6' stroke-linecap='square'/%3e%3c/svg%3e");
50
51
  }
51
52
  `;
52
- //# sourceMappingURL=exm-upload-drop-area-styles-css.js.map
53
+
54
+ export { style };
55
+ //# sourceMappingURL=exm-upload-drop-area-styles-css.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  :host {
4
5
  display: inline-flex;
5
6
  }
@@ -19,4 +20,6 @@ export const style = css `
19
20
  fill: var(--exm-upload-input-icon-fill, #0071dc);
20
21
  }
21
22
  `;
22
- //# sourceMappingURL=exm-upload-input-css.js.map
23
+
24
+ export { style };
25
+ //# sourceMappingURL=exm-upload-input-css.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  :host {
4
5
  display: flex;
5
6
  align-items: center;
@@ -121,4 +122,6 @@ export const style = css `
121
122
  }
122
123
  }
123
124
  `;
124
- //# sourceMappingURL=exm-upload-item-styles-css.js.map
125
+
126
+ export { style };
127
+ //# sourceMappingURL=exm-upload-item-styles-css.js.map
@@ -1,5 +1,6 @@
1
1
  import { css } from 'lit';
2
- export const style = css `
2
+
3
+ const style = css `
3
4
  :host {
4
5
  display: flex;
5
6
  color: var(--exm-upload-text-color, #000);
@@ -147,4 +148,6 @@ export const style = css `
147
148
  --md-icon-weight: 600;
148
149
  }
149
150
  `;
150
- //# sourceMappingURL=exm-upload-styles-css.js.map
151
+
152
+ export { style };
153
+ //# sourceMappingURL=exm-upload-styles-css.js.map
package/dist/types.js CHANGED
@@ -1,4 +1,4 @@
1
- export var FileUploadError;
1
+ var FileUploadError;
2
2
  (function (FileUploadError) {
3
3
  FileUploadError["INVALID_SIZE"] = "File size too large";
4
4
  FileUploadError["INVALID_TYPE"] = "Invalid file type";
@@ -6,5 +6,7 @@ export var FileUploadError;
6
6
  FileUploadError["INVALID_MULTIPLE"] = "Multiple files not allowed";
7
7
  FileUploadError["INVALID_RESOLUTION"] = "Image resulution is not valid";
8
8
  FileUploadError["SERVER_ERROR"] = "Server error occured";
9
- })(FileUploadError = FileUploadError || (FileUploadError = {}));
10
- //# sourceMappingURL=types.js.map
9
+ })(FileUploadError || (FileUploadError = {}));
10
+
11
+ export { FileUploadError };
12
+ //# sourceMappingURL=types.js.map
@@ -41,5 +41,6 @@ class UploadService {
41
41
  return new UploadService(adapter);
42
42
  }
43
43
  }
44
+
44
45
  export { UploadService };
45
- //# sourceMappingURL=service.js.map
46
+ //# sourceMappingURL=service.js.map