@aquera/nile-elements 0.1.63-beta-1.2 → 0.1.64-beta-1.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 (61) hide show
  1. package/demo/index.html +8 -8
  2. package/dist/index.js +84 -84
  3. package/dist/nile-file-preview/nile-file-preview.cjs.js +1 -1
  4. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -1
  5. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +1 -1
  6. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -1
  7. package/dist/nile-file-preview/nile-file-preview.css.esm.js +19 -2
  8. package/dist/nile-file-preview/nile-file-preview.esm.js +3 -3
  9. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
  10. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
  11. package/dist/nile-file-preview/nile-file-preview.template.esm.js +22 -22
  12. package/dist/nile-file-preview/utils/index.cjs.js +1 -1
  13. package/dist/nile-file-preview/utils/index.esm.js +1 -1
  14. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +1 -1
  15. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -1
  16. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -1
  17. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  18. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -1
  19. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +1 -1
  20. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -1
  21. package/dist/nile-file-upload/nile-file-upload.css.esm.js +1 -1
  22. package/dist/nile-file-upload/nile-file-upload.esm.js +2 -2
  23. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +3 -3
  24. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
  25. package/dist/nile-file-upload/nile-file-upload.template.esm.js +22 -22
  26. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -2
  27. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
  28. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
  29. package/dist/src/nile-file-preview/nile-file-preview.css.js +19 -2
  30. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -1
  31. package/dist/src/nile-file-preview/nile-file-preview.d.ts +1 -0
  32. package/dist/src/nile-file-preview/nile-file-preview.js +7 -6
  33. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
  34. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +3 -2
  35. package/dist/src/nile-file-preview/nile-file-preview.template.js +16 -10
  36. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
  37. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +1 -2
  38. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +8 -8
  39. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -1
  40. package/dist/src/nile-file-upload/nile-file-upload.css.js +1 -1
  41. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -1
  42. package/dist/src/nile-file-upload/nile-file-upload.d.ts +1 -0
  43. package/dist/src/nile-file-upload/nile-file-upload.js +7 -6
  44. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -1
  45. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +5 -4
  46. package/dist/src/nile-file-upload/nile-file-upload.template.js +24 -15
  47. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
  48. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +1 -0
  49. package/dist/src/nile-file-upload/utils/file-validation.util.js +11 -0
  50. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +1 -1
  53. package/src/nile-file-preview/nile-file-preview.css.ts +19 -2
  54. package/src/nile-file-preview/nile-file-preview.template.ts +23 -10
  55. package/src/nile-file-preview/nile-file-preview.ts +7 -6
  56. package/src/nile-file-preview/utils/nile-file-preview.util.ts +7 -10
  57. package/src/nile-file-upload/nile-file-upload.css.ts +1 -1
  58. package/src/nile-file-upload/nile-file-upload.template.ts +35 -17
  59. package/src/nile-file-upload/nile-file-upload.ts +7 -6
  60. package/src/nile-file-upload/utils/file-validation.util.ts +12 -0
  61. package/vscode-html-custom-data.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"nile-file-upload.template.cjs.js","sources":["../../../../node_modules/lit-html/directive.js","../../../../node_modules/lit-html/directives/class-map.js","../../../src/nile-file-upload/nile-file-upload.template.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}export{i as Directive,t as PartType,e as directive};\n//# sourceMappingURL=directive.js.map\n","import{noChange as t}from\"../lit-html.js\";import{directive as s,Directive as i,PartType as r}from\"../directive.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const e=s(class extends i{constructor(t){if(super(t),t.type!==r.ATTRIBUTE||\"class\"!==t.name||t.strings?.length>2)throw Error(\"`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.\")}render(t){return\" \"+Object.keys(t).filter((s=>t[s])).join(\" \")+\" \"}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(\" \").split(/\\s/).filter((t=>\"\"!==t))));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)))}return t}});export{e as classMap};\n//# sourceMappingURL=class-map.js.map\n","import { html, TemplateResult } from 'lit';\nimport './nile-file-upload.css';\nimport { DragHandler } from './utils/drag-drop.util';\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { FileUploadDefaults, FileUploadState } from './types/file-upload.enums';\n\nconst baseHorizontalState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n disabled: boolean,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => html`\n <div class=\"wrapper\" part=\"horizontal-wrapper\">\n <div part=\"horizontal-div\" class=${classMap({ 'hover-border': state === \"hover\", 'horizontal-div': true, 'disable': disabled })}>\n <div part=\"inner-div\" class=\"inner-div\">\n <slot class=\"upload-icon-slot\" name=\"upload-icon\">\n <nile-icon name=\"upload\" size=\"24\"></nile-icon>\n </slot>\n <div part=\"content\" class=\"content\">\n <div class=\"title\">${title}</div>\n <div class=\"subtitle\">${subtitle}</div>\n </div>\n </div>\n <input\n type=\"file\"\n ?disabled=${disabled}\n @change=${(e: Event | DragEvent) => { dragHandler.handleFiles(e) }}\n multiple\n accept=${allowedTypes.join(',')}\n />\n <slot class=\"browse-file-button\" @click=${disabled ? undefined : browseFiles} name=\"browse-file-button\">\n <nile-button variant=\"tertiary\" ?disabled=${disabled}>\n Browse File\n </nile-button>\n </slot>\n </div>\n ${errorMessage ?\n html`<div class=\"upload-error\">\n <nile-icon name=\"warning\" size=\"12\" color=\"var(--nile-colors-red-700)\"></nile-icon>\n <nile-tooltip content=${errorMessage}>\n <span>${errorMessage}</span>\n </nile-tooltip>\n </div>` :\n html``\n }\n </div>\n`;\n\nexport const getHorizontalDefaultState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => baseHorizontalState(browseFiles, title, subtitle, false, dragHandler, state, errorMessage, allowedTypes);\n\nexport const getHorizontalDisabledState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => baseHorizontalState(browseFiles, title, subtitle, true, dragHandler, state, errorMessage, allowedTypes);\n\nexport const getHorizontalDragState = (): TemplateResult => html`\n <div part=\"horizontal-drag-state\" class=\"horizontal-div dragging\">\n <div class=\"icons-container\">\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"general\"\n size=\"20\"\n class=\"general-icon\"\n ></nile-icon>\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"image\"\n size=\"24\"\n class=\"image-icon\"\n ></nile-icon>\n </div>\n <p>${FileUploadDefaults.DRAG_STATE_DEFAULT}</p>\n </div>\n`;\n\n// Vertical States\nconst baseVerticalState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n disabled: boolean,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => html`\n <div part=\"vertical-wrapper\" class=\"wrapper\">\n <div part=\"vertical-default\" class=\"vertical-default vertical-div ${disabled ? 'disable' : ''}\">\n <slot name=\"upload-icon\">\n <nile-icon name=\"upload\" size=\"24\"></nile-icon>\n </slot>\n <div part=\"vertical-content-container\" class=\"content-container\">\n <div class=\"title\">${title}</div>\n <div class=\"subtitle\">${subtitle}</div>\n </div>\n <input\n type=\"file\"\n ?disabled=${disabled}\n @change=${(e: Event | DragEvent) => dragHandler.handleFiles(e)}\n multiple\n accept=${allowedTypes.join(',')}\n />\n <slot @click=${disabled ? undefined : browseFiles} name=\"browse-file-button\">\n <nile-button variant=\"tertiary\" ?disabled=${disabled}>\n Browse File\n </nile-button>\n </slot>\n </div>\n ${errorMessage ?\n html`<div class=\"vertical-upload-error\">\n <nile-icon name=\"warning\" size=\"12\" color=\"var(--nile-colors-red-700)\"></nile-icon>\n <nile-tooltip content=${errorMessage}>\n <span>${errorMessage}</span>\n </nile-tooltip>\n </div>` :\n html``\n }\n </div>\n`;\n\nexport const getVerticalDefaultState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => baseVerticalState(browseFiles, title, subtitle, false, dragHandler, errorMessage, allowedTypes);\n\nexport const getVerticalDisabledState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[]\n): TemplateResult => baseVerticalState(browseFiles, title, subtitle, true, dragHandler, errorMessage, allowedTypes);\n\n\nexport const getVerticalDragState = (): TemplateResult => html`\n <div part=\"vertical-drag-state\" class=\"vertical-div vertical-drag\">\n <div class=\"icons-container\">\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"general\"\n size=\"20\"\n class=\"general-icon\"\n ></nile-icon>\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"image\"\n size=\"24\"\n class=\"image-icon\"\n ></nile-icon>\n </div>\n <p>${FileUploadDefaults.DRAG_STATE_DEFAULT}</p>\n </div>\n`;"],"names":["t","i","s","_createClass","key","get","_$AU","this","_$AM","value","_$AT","e","_$Ct","_$Ci","_$AS","update","render","_len","arguments","length","Array","_key","_$litDirective$","values","_class","super","type","r","name","strings","Error","_this","_inherits","_s","Object","keys","filter","join","st","Set","nt","split","has","add","element","classList","_iterator","_createForOfIteratorHelper","_step","n","done","remove","err","f","_this$nt2","baseHorizontalState","browseFiles","title","subtitle","disabled","dragHandler","state","errorMessage","allowedTypes","html","_templateObject","_taggedTemplateLiteral","classMap","disable","handleFiles","undefined","_templateObject2","_templateObject3","getHorizontalDefaultState","getHorizontalDisabledState","getHorizontalDragState","_templateObject4","FileUploadDefaults","DRAG_STATE_DEFAULT","baseVerticalState","d","_templateObject5","_templateObject6","_templateObject7","getVerticalDefaultState","getVerticalDisabledState","getVerticalDragState","_templateObject8"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"nile-file-upload.template.cjs.js","sources":["../../../../node_modules/lit-html/directive.js","../../../../node_modules/lit-html/directives/class-map.js","../../../src/nile-file-upload/nile-file-upload.template.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}export{i as Directive,t as PartType,e as directive};\n//# sourceMappingURL=directive.js.map\n","import{noChange as t}from\"../lit-html.js\";import{directive as s,Directive as i,PartType as r}from\"../directive.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const e=s(class extends i{constructor(t){if(super(t),t.type!==r.ATTRIBUTE||\"class\"!==t.name||t.strings?.length>2)throw Error(\"`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.\")}render(t){return\" \"+Object.keys(t).filter((s=>t[s])).join(\" \")+\" \"}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(\" \").split(/\\s/).filter((t=>\"\"!==t))));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)))}return t}});export{e as classMap};\n//# sourceMappingURL=class-map.js.map\n","import { html, TemplateResult } from 'lit';\nimport './nile-file-upload.css';\nimport { DragHandler } from './utils/drag-drop.util';\nimport { classMap } from 'lit-html/directives/class-map.js';\nimport { FileUploadDefaults, FileUploadState } from './types/file-upload.enums';\nimport { truncateString } from './utils/file-validation.util';\nimport { NileFileUpload } from './nile-file-upload';\n\nconst baseHorizontalState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n disabled: boolean,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => {\n truncateString(nileFileUpload);\n return html`\n <div class=\"wrapper\" part=\"horizontal-wrapper\">\n <div part=\"horizontal-div\" class=${classMap({ 'hover-border': state === \"hover\", 'horizontal-div': true, 'disable': disabled })}>\n <div part=\"inner-div\" class=\"inner-div\">\n <slot class=\"upload-icon-slot\" name=\"upload-icon\">\n <nile-icon name=\"upload\" size=\"24\"></nile-icon>\n </slot>\n <div part=\"content\" class=\"content\">\n <div class=\"title\">${title}</div>\n <div class=\"subtitle\">${subtitle}</div>\n </div>\n </div>\n <input\n type=\"file\"\n ?disabled=${disabled}\n @change=${(e: Event | DragEvent) => { dragHandler.handleFiles(e) }}\n multiple\n accept=${allowedTypes.join(',')}\n />\n <slot class=\"browse-file-button\" @click=${disabled ? undefined : browseFiles} name=\"browse-file-button\">\n <nile-button variant=\"tertiary\" ?disabled=${disabled}>\n Browse File\n </nile-button>\n </slot>\n </div>\n ${errorMessage ?\n html`<div class=\"upload-error\">\n <nile-icon name=\"warning\" size=\"12\" color=\"var(--nile-colors-red-700)\"></nile-icon>\n ${\n nileFileUpload.isStringTruncated\n ? html`<nile-tooltip content=${errorMessage}>\n <span>${errorMessage}</span>\n </nile-tooltip>`\n : html`<span>${errorMessage}</span>`\n }\n </div>` :\n html``\n }\n </div>\n `;\n}\n\nexport const getHorizontalDefaultState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => baseHorizontalState(browseFiles, title, subtitle, false, dragHandler, state, errorMessage, allowedTypes, nileFileUpload);\n\nexport const getHorizontalDisabledState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n state: FileUploadState,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => baseHorizontalState(browseFiles, title, subtitle, true, dragHandler, state, errorMessage, allowedTypes, nileFileUpload);\n\nexport const getHorizontalDragState = (): TemplateResult => html`\n <div part=\"horizontal-drag-state\" class=\"horizontal-div dragging\">\n <div class=\"icons-container\">\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"general\"\n size=\"20\"\n class=\"general-icon\"\n ></nile-icon>\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"image\"\n size=\"24\"\n class=\"image-icon\"\n ></nile-icon>\n </div>\n <p>${FileUploadDefaults.DRAG_STATE_DEFAULT}</p>\n </div>\n`;\n\n// Vertical States\nconst baseVerticalState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n disabled: boolean,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => {\n truncateString(nileFileUpload);\n return html`\n <div part=\"vertical-wrapper\" class=\"wrapper\">\n <div part=\"vertical-default\" class=\"vertical-default vertical-div ${disabled ? 'disable' : ''}\">\n <slot name=\"upload-icon\">\n <nile-icon name=\"upload\" size=\"24\"></nile-icon>\n </slot>\n <div part=\"vertical-content-container\" class=\"content-container\">\n <div class=\"title\">${title}</div>\n <div class=\"subtitle\">${subtitle}</div>\n </div>\n <input\n type=\"file\"\n ?disabled=${disabled}\n @change=${(e: Event | DragEvent) => dragHandler.handleFiles(e)}\n multiple\n accept=${allowedTypes.join(',')}\n />\n <slot @click=${disabled ? undefined : browseFiles} name=\"browse-file-button\">\n <nile-button variant=\"tertiary\" ?disabled=${disabled}>\n Browse File\n </nile-button>\n </slot>\n </div>\n ${errorMessage ?\n html`<div class=\"vertical-upload-error\">\n <nile-icon name=\"warning\" size=\"12\" color=\"var(--nile-colors-red-700)\"></nile-icon>\n <nile-tooltip content=${errorMessage}>\n <span>${errorMessage}</span>\n </nile-tooltip>\n </div>` :\n html``\n }\n </div>\n `;\n}\n\nexport const getVerticalDefaultState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => baseVerticalState(browseFiles, title, subtitle, false, dragHandler, errorMessage, allowedTypes, nileFileUpload);\n\nexport const getVerticalDisabledState = (\n browseFiles: Function,\n title: string,\n subtitle: string,\n dragHandler: DragHandler,\n errorMessage: string,\n allowedTypes: string[],\n nileFileUpload: NileFileUpload\n): TemplateResult => baseVerticalState(browseFiles, title, subtitle, true, dragHandler, errorMessage, allowedTypes, nileFileUpload);\n\n\nexport const getVerticalDragState = (): TemplateResult => html`\n <div part=\"vertical-drag-state\" class=\"vertical-div vertical-drag\">\n <div class=\"icons-container\">\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"general\"\n size=\"20\"\n class=\"general-icon\"\n ></nile-icon>\n <nile-icon\n color=\"var(--nile-colors-blue-500)\"\n name=\"image\"\n size=\"24\"\n class=\"image-icon\"\n ></nile-icon>\n </div>\n <p>${FileUploadDefaults.DRAG_STATE_DEFAULT}</p>\n </div>\n`;"],"names":["t","i","l","_createClass","key","get","_$AU","this","_$AM","value","_$AT","e","_$Ct","_$Ci","_$AS","update","render","_len","arguments","length","Array","_key","_$litDirective$","values","s","_class","_i$strings","_this","_classCallCheck","super","type","r","name","strings","Error","_inherits","_l","Object","keys","filter","join","st","Set","nt","split","has","add","element","classList","_iterator","_createForOfIteratorHelper","_step","n","done","remove","err","f","_this$nt2","delete","baseHorizontalState","browseFiles","title","subtitle","disabled","dragHandler","state","errorMessage","allowedTypes","nileFileUpload","truncateString","html","_templateObject","_taggedTemplateLiteral","classMap","disable","handleFiles","undefined","_templateObject2","isStringTruncated","_templateObject3","_templateObject4","_templateObject5","getHorizontalDefaultState","getHorizontalDisabledState","getHorizontalDragState","_templateObject6","FileUploadDefaults","DRAG_STATE_DEFAULT","baseVerticalState","v","_templateObject7","_templateObject8","_templateObject9","getVerticalDefaultState","getVerticalDisabledState","getVerticalDragState","_templateObject10"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,16 +1,16 @@
1
- import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}from"../lit-html-39a6718c.esm.js";import{c as t}from"./types/file-upload.enums.esm.js";
1
+ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}from"../lit-html-39a6718c.esm.js";import{c as t}from"./types/file-upload.enums.esm.js";import{t as s}from"./utils/file-validation.util.esm.js";
2
2
  /**
3
3
  * @license
4
4
  * Copyright 2017 Google LLC
5
5
  * SPDX-License-Identifier: BSD-3-Clause
6
- */const n=1;class s{constructor(i){}get _$AU(){return this._$AM._$AU}_$AT(i,e,t){this._$Ct=i,this._$AM=e,this._$Ci=t}_$AS(i,e){return this.update(i,e)}update(i,e){return this.render(...e)}}
6
+ */const n=1;class l{constructor(i){}get _$AU(){return this._$AM._$AU}_$AT(i,e,t){this._$Ct=i,this._$AM=e,this._$Ci=t}_$AS(i,e){return this.update(i,e)}update(i,e){return this.render(...e)}}
7
7
  /**
8
8
  * @license
9
9
  * Copyright 2018 Google LLC
10
10
  * SPDX-License-Identifier: BSD-3-Clause
11
- */const l=(i=>(...e)=>({_$litDirective$:i,values:e}))(class extends s{constructor(i){if(super(i),i.type!==n||"class"!==i.name||i.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(i){return" "+Object.keys(i).filter((e=>i[e])).join(" ")+" "}update(i,[t]){if(void 0===this.st){this.st=new Set,void 0!==i.strings&&(this.nt=new Set(i.strings.join(" ").split(/\s/).filter((i=>""!==i))));for(const i in t)t[i]&&!this.nt?.has(i)&&this.st.add(i);return this.render(t)}const n=i.element.classList;for(const i of this.st)i in t||(n.remove(i),this.st.delete(i));for(const i in t){const e=!!t[i];e===this.st.has(i)||this.nt?.has(i)||(e?(n.add(i),this.st.add(i)):(n.remove(i),this.st.delete(i)))}return e}}),o=(e,t,n,s,o,a,r,c)=>i`
11
+ */const a=(i=>(...e)=>({_$litDirective$:i,values:e}))(class extends l{constructor(i){if(super(i),i.type!==n||"class"!==i.name||i.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(i){return" "+Object.keys(i).filter((e=>i[e])).join(" ")+" "}update(i,[t]){if(void 0===this.st){this.st=new Set,void 0!==i.strings&&(this.nt=new Set(i.strings.join(" ").split(/\s/).filter((i=>""!==i))));for(const i in t)t[i]&&!this.nt?.has(i)&&this.st.add(i);return this.render(t)}const s=i.element.classList;for(const i of this.st)i in t||(s.remove(i),this.st.delete(i));for(const i in t){const e=!!t[i];e===this.st.has(i)||this.nt?.has(i)||(e?(s.add(i),this.st.add(i)):(s.remove(i),this.st.delete(i)))}return e}}),o=(e,t,n,l,o,r,c,d,v)=>(s(v),i`
12
12
  <div class="wrapper" part="horizontal-wrapper">
13
- <div part="horizontal-div" class=${l({"hover-border":"hover"===a,"horizontal-div":!0,disable:s})}>
13
+ <div part="horizontal-div" class=${a({"hover-border":"hover"===r,"horizontal-div":!0,disable:l})}>
14
14
  <div part="inner-div" class="inner-div">
15
15
  <slot class="upload-icon-slot" name="upload-icon">
16
16
  <nile-icon name="upload" size="24"></nile-icon>
@@ -22,25 +22,25 @@ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}f
22
22
  </div>
23
23
  <input
24
24
  type="file"
25
- ?disabled=${s}
25
+ ?disabled=${l}
26
26
  @change=${i=>{o.handleFiles(i)}}
27
27
  multiple
28
- accept=${c.join(",")}
28
+ accept=${d.join(",")}
29
29
  />
30
- <slot class="browse-file-button" @click=${s?void 0:e} name="browse-file-button">
31
- <nile-button variant="tertiary" ?disabled=${s}>
30
+ <slot class="browse-file-button" @click=${l?void 0:e} name="browse-file-button">
31
+ <nile-button variant="tertiary" ?disabled=${l}>
32
32
  Browse File
33
33
  </nile-button>
34
34
  </slot>
35
35
  </div>
36
- ${r?i`<div class="upload-error">
36
+ ${c?i`<div class="upload-error">
37
37
  <nile-icon name="warning" size="12" color="var(--nile-colors-red-700)"></nile-icon>
38
- <nile-tooltip content=${r}>
39
- <span>${r}</span>
40
- </nile-tooltip>
38
+ ${v.isStringTruncated?i`<nile-tooltip content=${c}>
39
+ <span>${c}</span>
40
+ </nile-tooltip>`:i`<span>${c}</span>`}
41
41
  </div>`:i``}
42
42
  </div>
43
- `,a=(i,e,t,n,s,l,a)=>o(i,e,t,!1,n,s,l,a),r=(i,e,t,n,s,l,a)=>o(i,e,t,!0,n,s,l,a),c=()=>i`
43
+ `),r=(i,e,t,s,n,l,a,r)=>o(i,e,t,!1,s,n,l,a,r),c=(i,e,t,s,n,l,a,r)=>o(i,e,t,!0,s,n,l,a,r),d=()=>i`
44
44
  <div part="horizontal-drag-state" class="horizontal-div dragging">
45
45
  <div class="icons-container">
46
46
  <nile-icon
@@ -58,9 +58,9 @@ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}f
58
58
  </div>
59
59
  <p>${t.DRAG_STATE_DEFAULT}</p>
60
60
  </div>
61
- `,d=(e,t,n,s,l,o,a)=>i`
61
+ `,v=(e,t,n,l,a,o,r,c)=>(s(c),i`
62
62
  <div part="vertical-wrapper" class="wrapper">
63
- <div part="vertical-default" class="vertical-default vertical-div ${s?"disable":""}">
63
+ <div part="vertical-default" class="vertical-default vertical-div ${l?"disable":""}">
64
64
  <slot name="upload-icon">
65
65
  <nile-icon name="upload" size="24"></nile-icon>
66
66
  </slot>
@@ -70,13 +70,13 @@ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}f
70
70
  </div>
71
71
  <input
72
72
  type="file"
73
- ?disabled=${s}
74
- @change=${i=>l.handleFiles(i)}
73
+ ?disabled=${l}
74
+ @change=${i=>a.handleFiles(i)}
75
75
  multiple
76
- accept=${a.join(",")}
76
+ accept=${r.join(",")}
77
77
  />
78
- <slot @click=${s?void 0:e} name="browse-file-button">
79
- <nile-button variant="tertiary" ?disabled=${s}>
78
+ <slot @click=${l?void 0:e} name="browse-file-button">
79
+ <nile-button variant="tertiary" ?disabled=${l}>
80
80
  Browse File
81
81
  </nile-button>
82
82
  </slot>
@@ -88,7 +88,7 @@ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}f
88
88
  </nile-tooltip>
89
89
  </div>`:i``}
90
90
  </div>
91
- `,v=(i,e,t,n,s,l)=>d(i,e,t,!1,n,s,l),p=(i,e,t,n,s,l)=>d(i,e,t,!0,n,s,l),u=()=>i`
91
+ `),p=(i,e,t,s,n,l,a)=>v(i,e,t,!1,s,n,l,a),u=(i,e,t,s,n,l,a)=>v(i,e,t,!0,s,n,l,a),m=()=>i`
92
92
  <div part="vertical-drag-state" class="vertical-div vertical-drag">
93
93
  <div class="icons-container">
94
94
  <nile-icon
@@ -106,4 +106,4 @@ import{html as i}from"lit";import"./nile-file-upload.css.esm.js";import{T as e}f
106
106
  </div>
107
107
  <p>${t.DRAG_STATE_DEFAULT}</p>
108
108
  </div>
109
- `;export{c as a,r as b,v as c,u as d,p as e,a as g};
109
+ `;export{d as a,c as b,p as c,m as d,u as e,r as g};
@@ -1,3 +1,3 @@
1
- System.register(["../types/file-upload.enums.cjs.js"],function(_export,_context){"use strict";var e,o,s,t,n,a,l,u,i;function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function r(s){var t=s.uploadedFiles,n=s.fileUploadUrl,a=s.uploadRequests;if(n&&t!==null&&t!==void 0&&t.length){var _iterator2=_createForOfIteratorHelper(t),_step2;try{var _loop2=function _loop2(){var r=_step2.value;if(a.has(r))return 1;// continue
2
- var t=new FormData();t.append("file",r);var l=new XMLHttpRequest();a.set(r,l),s.emit(o.NILE_UPLOADING),l.upload.onprogress=function(e){var t=Math.floor(e.loaded/e.total*100);s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_PROGRESS,{detail:{file:r,progress:t}}));},l.onload=function(){l.status>=200&&l.status<300?s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_SUCCESS,{detail:{file:r,response:l.response}})):(s.errorMessage=e.SERVER_SIDE_ERROR,s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.SERVER_SIDE_ERROR,{detail:{file:r,status:l.status,response:l.response}})));},l.onerror=function(){a["delete"](r),s.errorMessage=e.NETWORK_ERROR,s.dispatchEvent(new CustomEvent(o.NILE_NETWORK_ERROR,{detail:{file:r,status:l.status,response:l.response},bubbles:!0,composed:!0}));},l.open("POST",n),l.send(t);};for(_iterator2.s();!(_step2=_iterator2.n()).done;){if(_loop2())continue;}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}}_export("u",r);return{setters:[function(_typesFileUploadEnumsCjsJs){e=_typesFileUploadEnumsCjsJs.a;o=_typesFileUploadEnumsCjsJs.b;s=_typesFileUploadEnumsCjsJs.F;}],execute:function execute(){_export("s",t=function t(s,_t){_t.onStateChange(function(e){s.state=e;}),_t.onFileDrop(function(t){var n=function(e){var o={B:1,KB:1024,MB:1048576,GB:Math.pow(1024,3)},s=parseFloat(e),t=e.replace(/[0-9.\s]/g,"").toUpperCase(),n=o[t]||1;return s*n;}(s.size),a=s.uploadedFiles;if(!s.allowMultiple&&a.length+t.length>1)return s.errorMessage=e.MULTIPLE_NOT_ALLOWED,console.error(s.errorMessage),void s.requestUpdate();var r=!1,l=!1;var u=[],i=[];var _iterator=_createForOfIteratorHelper(t),_step;try{var _loop=function _loop(){var e=_step.value;e.size>n?(r=!0,i.push(e)):s.allowDuplicates||!a.some(function(o){return o.name===e.name&&o.size===e.size&&o.type===e.type;})?i.includes(e)||u.push(e):(l=!0,i.push(e));};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}r&&(s.errorMessage=e.SIZE_LIMIT_EXCEEDED,console.error(s.errorMessage),s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.NILE_SIZE_EXCEED_FILES,{detail:{files:i}}))),l&&0===u.length&&(s.errorMessage=e.DUPLICATES_NOT_ALLOWED,console.error(s.errorMessage),s.requestUpdate()),s.uploadedFiles=[].concat(_toConsumableArray(a),u),s.requestUpdate();}),_t.setErrorMessage(function(e){console.error(s.errorMessage),s.errorMessage=e;});}),_export("b",n=function n(e){document.addEventListener("dragover",e.preventDragOver,{passive:!1}),document.addEventListener("drop",e.preventDrop,{passive:!1});}),_export("a",a=function a(e,o,t){e.addEventListener("mouseenter",function(o){return t=e.setState,void(e.state===s.DEFAULT&&t(s.HOVER));var t;}),e.addEventListener("mouseleave",function(o){return t=e.setState,void(e.state===s.HOVER&&t(s.DEFAULT));var t;}),e.addEventListener("dragenter",function(e){return o.dragEnter(e);}),e.addEventListener("dragleave",function(e){return o.dragLeave(e);}),e.addEventListener("dragover",function(e){return o.dragOver(e);}),e.addEventListener("drop",function(e){return o.drop(e);}),l(e,t),i(e.uploadedFiles,e);});l=function l(e,s){document.addEventListener(o.NILE_CANCEL_UPLOAD,function(t){var n=t.detail.file,a=s.get(n);a&&a.abort(),s["delete"](n),e.uploadedFiles=e.uploadedFiles.filter(function(e){return e!==n;}),e.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_CANCELLED,{detail:{file:n}}));});};_export("p",u=function u(e){var _e$preventDefault;(_e$preventDefault=e.preventDefault)!==null&&_e$preventDefault!==void 0&&_e$preventDefault.call(e),e.stopPropagation();}),i=function i(e,o){document.addEventListener("nile-remove",function(s){var t=s.detail.value;e=e.filter(function(e){return e!==t;}),o.uploadedFiles=e,o.requestUpdate();});};}};});
1
+ System.register(["../types/file-upload.enums.cjs.js"],function(_export,_context){"use strict";var e,o,s,t,n,a,l,i,u,c;function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var _n=0,F=function F(){};return{s:F,n:function n(){return _n>=r.length?{done:!0}:{done:!1,value:r[_n++]};},e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function r(s){var t=s.uploadedFiles,n=s.fileUploadUrl,a=s.uploadRequests;if(n&&t!==null&&t!==void 0&&t.length){var _iterator2=_createForOfIteratorHelper(t),_step2;try{var _loop2=function _loop2(){var r=_step2.value;if(a.has(r))return 1;// continue
2
+ var t=new FormData();t.append("file",r);var l=new XMLHttpRequest();a.set(r,l),s.emit(o.NILE_UPLOADING),l.upload.onprogress=function(e){var t=Math.floor(e.loaded/e.total*100);s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_PROGRESS,{detail:{file:r,progress:t}}));},l.onload=function(){l.status>=200&&l.status<300?s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_SUCCESS,{detail:{file:r,response:l.response}})):(s.errorMessage=e.SERVER_SIDE_ERROR,s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.SERVER_SIDE_ERROR,{detail:{file:r,status:l.status,response:l.response}})));},l.onerror=function(){a["delete"](r),s.errorMessage=e.NETWORK_ERROR,s.dispatchEvent(new CustomEvent(o.NILE_NETWORK_ERROR,{detail:{file:r,status:l.status,response:l.response},bubbles:!0,composed:!0}));},l.open("POST",n),l.send(t);};for(_iterator2.s();!(_step2=_iterator2.n()).done;){if(_loop2())continue;}}catch(err){_iterator2.e(err);}finally{_iterator2.f();}}}_export("u",r);return{setters:[function(_typesFileUploadEnumsCjsJs){e=_typesFileUploadEnumsCjsJs.a;o=_typesFileUploadEnumsCjsJs.b;s=_typesFileUploadEnumsCjsJs.F;}],execute:function execute(){_export("s",t=function t(s,_t){_t.onStateChange(function(e){s.state=e;}),_t.onFileDrop(function(t){var n=function(e){var o={B:1,KB:1024,MB:1048576,GB:Math.pow(1024,3)},s=parseFloat(e),t=e.replace(/[0-9.\s]/g,"").toUpperCase(),n=o[t]||1;return s*n;}(s.size),a=s.uploadedFiles;if(!s.allowMultiple&&a.length+t.length>1)return s.errorMessage=e.MULTIPLE_NOT_ALLOWED,console.error(s.errorMessage),void s.requestUpdate();var r=!1,l=!1;var i=[],u=[];var _iterator=_createForOfIteratorHelper(t),_step;try{var _loop=function _loop(){var e=_step.value;e.size>n?(r=!0,u.push(e)):s.allowDuplicates||!a.some(function(o){return o.name===e.name&&o.size===e.size&&o.type===e.type;})?u.includes(e)||i.push(e):(l=!0,u.push(e));};for(_iterator.s();!(_step=_iterator.n()).done;){_loop();}}catch(err){_iterator.e(err);}finally{_iterator.f();}r&&(s.errorMessage=e.SIZE_LIMIT_EXCEEDED,console.error(s.errorMessage),s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.NILE_SIZE_EXCEED_FILES,{detail:{files:u}}))),l&&0===i.length&&(s.errorMessage=e.DUPLICATES_NOT_ALLOWED,console.error(s.errorMessage),s.requestUpdate()),s.uploadedFiles=[].concat(_toConsumableArray(a),i),s.requestUpdate();}),_t.setErrorMessage(function(e){console.error(s.errorMessage),s.errorMessage=e;});}),_export("b",n=function n(e){document.addEventListener("dragover",e.preventDragOver,{passive:!1}),document.addEventListener("drop",e.preventDrop,{passive:!1});}),_export("a",a=function a(e,o,t){e.addEventListener("mouseenter",function(o){return t=e.setState,void(e.state===s.DEFAULT&&t(s.HOVER));var t;}),e.addEventListener("mouseleave",function(o){return t=e.setState,void(e.state===s.HOVER&&t(s.DEFAULT));var t;}),e.addEventListener("dragenter",function(e){return o.dragEnter(e);}),e.addEventListener("dragleave",function(e){return o.dragLeave(e);}),e.addEventListener("dragover",function(e){return o.dragOver(e);}),e.addEventListener("drop",function(e){return o.drop(e);}),l(e,t),u(e.uploadedFiles,e);});l=function l(e,s){document.addEventListener(o.NILE_CANCEL_UPLOAD,function(t){var n=t.detail.file,a=s.get(n);a&&a.abort(),s["delete"](n),e.uploadedFiles=e.uploadedFiles.filter(function(e){return e!==n;}),e.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_CANCELLED,{detail:{file:n}}));});};_export("p",i=function i(e){var _e$preventDefault;(_e$preventDefault=e.preventDefault)!==null&&_e$preventDefault!==void 0&&_e$preventDefault.call(e),e.stopPropagation();}),u=function u(e,o){document.addEventListener("nile-remove",function(s){var t=s.detail.value;e=e.filter(function(e){return e!==t;}),o.uploadedFiles=e,o.requestUpdate();});},_export("t",c=function c(e){"vertical"===e.variant&&e.errorMessage.length>34?(e.isStringTruncated=!0,e.requestUpdate()):"horizontal"===e.variant&&e.errorMessage.length>96&&(console.log("working"),e.isStringTruncated=!0,e.requestUpdate());});}};});
3
3
  //# sourceMappingURL=file-validation.util.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-validation.util.cjs.js","sources":["../../../../src/nile-file-upload/utils/file-validation.util.ts"],"sourcesContent":["import { DragHandler } from \"./drag-drop.util\";\nimport { FileUploadState, FileUploadError, FileUploadEvent } from \"../types\";\nimport { NileFileUpload } from \"../nile-file-upload\";\nimport { RemoveFileDetail } from \"../../nile-file-preview/types\";\n\nexport const setUpDragHandler = (\n nileFileUpload: NileFileUpload,\n dragHandler: DragHandler,\n): void => {\n dragHandler.onStateChange((newState: FileUploadState) => {\n nileFileUpload.state = newState;\n });\n\n dragHandler.onFileDrop((files: File[]) => {\n const maxSize = parseSize(nileFileUpload.size);\n const uploadedFiles = nileFileUpload.uploadedFiles;\n \n if (!nileFileUpload.allowMultiple && (uploadedFiles.length + files.length > 1)) {\n nileFileUpload.errorMessage = FileUploadError.MULTIPLE_NOT_ALLOWED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n return;\n }\n \n let sizeExceeded = false;\n let duplicatesFound = false;\n const newFiles: File[] = [];\n const rejectedFiles: File[] = [];\n \n for (const file of files) {\n if (file.size > maxSize) {\n sizeExceeded = true;\n rejectedFiles.push(file);\n continue;\n }\n \n if (\n !nileFileUpload.allowDuplicates &&\n uploadedFiles.some(\n (uploaded) =>\n uploaded.name === file.name &&\n uploaded.size === file.size &&\n uploaded.type === file.type\n )\n ) {\n duplicatesFound = true;\n rejectedFiles.push(file);\n continue;\n }\n \n if(!rejectedFiles.includes(file)) {\n newFiles.push(file);\n }\n }\n\n if (sizeExceeded) {\n nileFileUpload.errorMessage = FileUploadError.SIZE_LIMIT_EXCEEDED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_SIZE_EXCEED_FILES, {\n detail: { files: rejectedFiles }\n }));\n }\n \n if (duplicatesFound && newFiles.length === 0) {\n nileFileUpload.errorMessage = FileUploadError.DUPLICATES_NOT_ALLOWED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n }\n \n nileFileUpload.uploadedFiles = [...uploadedFiles, ...newFiles];\n nileFileUpload.requestUpdate();\n });\n \n\n dragHandler.setErrorMessage((errorMessage: string) => {\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.errorMessage = errorMessage;\n });\n};\n\nexport const addGlobalListeners = (dragHandler: DragHandler): void => {\n document.addEventListener('dragover', dragHandler.preventDragOver, { passive: false });\n document.addEventListener('drop', dragHandler.preventDrop, { passive: false });\n}\n\nexport const addInternalListeners = (nileFileUpload: NileFileUpload, dragHandler: DragHandler, uploadRequests: any): void => {\n nileFileUpload.addEventListener('mouseenter', (e) => handleHoverIn(nileFileUpload.setState, nileFileUpload.state));\n nileFileUpload.addEventListener('mouseleave', (e) => handleHoverOut(nileFileUpload.setState, nileFileUpload.state));\n nileFileUpload.addEventListener('dragenter', (e) => dragHandler.dragEnter(e));\n nileFileUpload.addEventListener('dragleave', (e) => dragHandler.dragLeave(e));\n nileFileUpload.addEventListener('dragover', (e) => dragHandler.dragOver(e));\n nileFileUpload.addEventListener('drop', (e) => dragHandler.drop(e)); \n\n cancelFileUpload(nileFileUpload, uploadRequests);\n removeFile(nileFileUpload.uploadedFiles, nileFileUpload);\n}\n\nexport function handleHoverIn(\n setState: (state: FileUploadState) => void,\n currentState: FileUploadState\n): void {\n if (currentState === FileUploadState.DEFAULT) {\n setState(FileUploadState.HOVER);\n }\n}\n\nexport function handleHoverOut(\n setState: (state: FileUploadState) => void,\n currentState: FileUploadState\n): void {\n if (currentState === FileUploadState.HOVER) {\n setState(FileUploadState.DEFAULT);\n }\n}\n\nexport function uploadFiles(nileFileUpload: NileFileUpload) {\n const { uploadedFiles, fileUploadUrl, uploadRequests } = nileFileUpload;\n if (!fileUploadUrl || !uploadedFiles?.length) return;\n\n for (const file of uploadedFiles) {\n if (uploadRequests.has(file)) continue;\n \n const formData = new FormData();\n formData.append('file', file);\n\n const xhr = new XMLHttpRequest();\n uploadRequests.set(file, xhr);\n\n nileFileUpload.emit(FileUploadEvent.NILE_UPLOADING);\n\n xhr.upload.onprogress = (e) => {\n const percent = Math.floor((e.loaded / e.total) * 100);\n \n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_PROGRESS, {\n detail: { file, progress: percent }\n }));\n };\n\n xhr.onload = () => {\n if (xhr.status >= 200 && xhr.status < 300) {\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_SUCCESS, {\n detail: { file, response: xhr.response }\n }));\n } else {\n nileFileUpload.errorMessage = FileUploadError.SERVER_SIDE_ERROR;\n nileFileUpload.requestUpdate();\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.SERVER_SIDE_ERROR, {\n detail: { file, status: xhr.status, response: xhr.response }\n }));\n }\n };\n\n xhr.onerror = () => {\n uploadRequests.delete(file);\n nileFileUpload.errorMessage = FileUploadError.NETWORK_ERROR;\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_NETWORK_ERROR, {\n detail: { file, status: xhr.status, response: xhr.response },\n bubbles: true,\n composed: true,\n }));\n };\n\n xhr.open('POST', fileUploadUrl);\n xhr.send(formData);\n }\n}\n\nexport const cancelFileUpload = (nileFileUpload: NileFileUpload, uploadRequests: Map<File, XMLHttpRequest>) => {\n document.addEventListener(FileUploadEvent.NILE_CANCEL_UPLOAD, (e: CustomEvent) => {\n const fileToCancel = e.detail.file;\n const xhr = uploadRequests.get(fileToCancel);\n\n if (xhr) {\n xhr.abort();\n }\n uploadRequests.delete(fileToCancel);\n nileFileUpload.uploadedFiles = nileFileUpload.uploadedFiles.filter(file => file !== fileToCancel);\n\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_CANCELLED, {\n detail: { file: fileToCancel }\n }));\n });\n};\n\nfunction parseSize(sizeStr: string): number {\n const units = { B: 1, KB: 1024, MB: 1024 ** 2, GB: 1024 ** 3 };\n const num = parseFloat(sizeStr);\n const unit = sizeStr.replace(/[0-9.\\s]/g, '').toUpperCase();\n const multiplier = units[unit as keyof typeof units] || 1;\n return num * multiplier;\n}\n\nexport const preventDefaultAndStopPropagation = (event: Event | DragEvent): void => {\n event.preventDefault?.();\n event.stopPropagation();\n}\n\nexport const removeFile = (uploadedFiles: File[], nileFileUpload: NileFileUpload) => {\n document.addEventListener('nile-remove', (e: CustomEvent<RemoveFileDetail>) => {\n const { value } = e.detail;\n uploadedFiles = uploadedFiles.filter(file => file !== value);\n nileFileUpload.uploadedFiles = uploadedFiles;\n nileFileUpload.requestUpdate();\n });\n}"],"names":["uploadFiles","nileFileUpload","uploadedFiles","fileUploadUrl","uploadRequests","length","_iterator2","_createForOfIteratorHelper","_step2","_loop2","file","has","formData","FormData","append","xhr","XMLHttpRequest","set","emit","FileUploadEvent","NILE_UPLOADING","upload","onprogress","e","percent","Math","floor","loaded","total","dispatchEvent","CustomEvent","NILE_UPLOAD_PROGRESS","detail","progress","onload","status","NILE_UPLOAD_SUCCESS","response","errorMessage","FileUploadError","SERVER_SIDE_ERROR","requestUpdate","onerror","NETWORK_ERROR","NILE_NETWORK_ERROR","bubbles","composed","open","send","s","n","done","err","f","_export","setUpDragHandler","t","dragHandler","onStateChange","newState","state","onFileDrop","files","maxSize","sizeStr","units","B","KB","MB","GB","num","parseFloat","unit","replace","toUpperCase","multiplier","parseSize","size","allowMultiple","MULTIPLE_NOT_ALLOWED","console","error","sizeExceeded","duplicatesFound","newFiles","rejectedFiles","_iterator","push","allowDuplicates","some","uploaded","name","type","includes","_step","_loop","SIZE_LIMIT_EXCEEDED","NILE_SIZE_EXCEED_FILES","DUPLICATES_NOT_ALLOWED","setErrorMessage","addGlobalListeners","document","addEventListener","preventDragOver","passive","preventDrop","addInternalListeners","a","handleHoverIn","setState","FileUploadState","DEFAULT","HOVER","handleHoverOut","dragEnter","dragLeave","dragOver","drop","cancelFileUpload","removeFile","NILE_CANCEL_UPLOAD","fileToCancel","get","abort","filter","NILE_UPLOAD_CANCELLED","preventDefaultAndStopPropagation","event","preventDefault","stopPropagation","i","value"],"mappings":"iyDAoHM,QAAUA,CAAAA,CAAAA,CAAYC,CAC1B,CAAA,CAAA,GAAQC,CAAAA,CAAAA,CAAiDD,CACzD,CADMC,aAAEA,CAAeC,CAAAA,CAAkCF,CACzD,CADqBE,aAAEA,CAAeC,CAAAA,CAAmBH,CACzD,CADoCG,cAAEA,CACtC,GAAKD,CAAkBD,EAAAA,CAAAA,SAAAA,CAAAA,WAAAA,CAAAA,CAAeG,MAEtC,MAAAC,UAAA,CAAAC,0BAAA,CAAmBL,CAAe,EAAAM,MAAA,SAAAC,MAAA,UAAAA,OAAA,CAAA,IAAvBC,CAAAA,CAAAA,CAAAA,MAAAA,CAAAA,KAAAA,CACT,GAAIN,CAAAA,CAAeO,GAAID,CAAAA,CAAAA,CAAAA;AAEvB,GAAME,CAAAA,CAAW,CAAA,GAAIC,CAAAA,QACrBD,CAAAA,CAAAA,CAAAA,CAAAA,CAASE,MAAO,CAAA,MAAA,CAAQJ,CAExB,CAAA,CAAA,GAAMK,CAAAA,CAAM,CAAA,GAAIC,CAAAA,cAChBZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAea,GAAIP,CAAAA,CAAAA,CAAMK,CAEzBd,CAAAA,CAAAA,CAAAA,CAAeiB,KAAKC,CAAgBC,CAAAA,cAAAA,CAAAA,CAEpCL,CAAIM,CAAAA,MAAAA,CAAOC,UAAcC,CAAAA,SAAAA,CAAAA,CAAAA,CACvB,GAAMC,CAAAA,CAAAA,CAAUC,IAAKC,CAAAA,KAAAA,CAAOH,CAAEI,CAAAA,MAAAA,CAASJ,CAAEK,CAAAA,KAAAA,CAAS,GAElD3B,CAAAA,CAAAA,CAAAA,CAAe4B,aAAc,CAAA,GAAIC,CAAAA,WAAYX,CAAAA,CAAAA,CAAgBY,oBAAsB,CAAA,CACjFC,MAAQ,CAAA,CAAEtB,IAAMuB,CAAAA,CAAAA,CAAAA,QAAAA,CAAUT,CACzB,CAAA,CAAA,CAAA,CAAA,EAAA,CAGLT,CAAImB,CAAAA,MAAAA,CAAS,UACPnB,CAAAA,CAAAA,CAAIoB,MAAU,EAAA,GAAA,EAAOpB,CAAIoB,CAAAA,MAAAA,CAAS,GACpClC,CAAAA,CAAAA,CAAe4B,aAAc,CAAA,GAAIC,CAAAA,WAAYX,CAAAA,CAAAA,CAAgBiB,mBAAqB,CAAA,CAChFJ,MAAQ,CAAA,CAAEtB,IAAM2B,CAAAA,CAAAA,CAAAA,QAAAA,CAAUtB,CAAIsB,CAAAA,QAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAGhCpC,CAAeqC,CAAAA,YAAAA,CAAeC,CAAgBC,CAAAA,iBAAAA,CAC9CvC,CAAewC,CAAAA,aAAAA,CAAAA,CAAAA,CACfxC,CAAe4B,CAAAA,aAAAA,CAAc,GAAIC,CAAAA,WAAAA,CAAYX,CAAgBqB,CAAAA,iBAAAA,CAAmB,CAC9ER,MAAAA,CAAQ,CAAEtB,IAAMyB,CAAAA,CAAAA,CAAAA,MAAAA,CAAQpB,CAAIoB,CAAAA,MAAAA,CAAQE,QAAUtB,CAAAA,CAAAA,CAAIsB,QAErD,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAGHtB,CAAI2B,CAAAA,OAAAA,CAAU,UACZtC,CAAAA,CAAAA,UAAsBM,CAAAA,CAAAA,CAAAA,CACtBT,CAAeqC,CAAAA,YAAAA,CAAeC,CAAgBI,CAAAA,aAAAA,CAC9C1C,CAAe4B,CAAAA,aAAAA,CAAc,GAAIC,CAAAA,WAAAA,CAAYX,CAAgByB,CAAAA,kBAAAA,CAAoB,CAC/EZ,MAAAA,CAAQ,CAAEtB,IAAAA,CAAAA,CAAAA,CAAMyB,MAAQpB,CAAAA,CAAAA,CAAIoB,MAAQE,CAAAA,QAAAA,CAAUtB,CAAIsB,CAAAA,QAAAA,CAAAA,CAClDQ,OAAS,CAAA,CAAA,CAAA,CACTC,QAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CACT,EAGL/B,CAAAA,CAAAA,CAAIgC,IAAK,CAAA,MAAA,CAAQ5C,CACjBY,CAAAA,CAAAA,CAAAA,CAAIiC,IAAKpC,CAAAA,CAAAA,CACV,EACH,CA9CE,IAAAN,UAAA,CAAA2C,CAAA,KAAAzC,MAAA,CAAAF,UAAA,CAAA4C,CAAA,IAAAC,IAAA,MAAA1C,MAAA,GACgC,SAE9B,CA2CJ,OAAA2C,GAAA,EAAA9C,UAAA,CAAAiB,CAAA,CAAA6B,GAAA,WAAA9C,UAAA,CAAA+C,CAAA,MAEOC,OAAA,oMAnKMC,CAAmB,CAAA,QAAnBA,CAAAA,CAAmBC,CAC9BvD,CACAwD,CAAAA,EAAAA,CAAAA,CAEAA,EAAYC,CAAAA,aAAAA,CAAeC,SAAAA,CACzB1D,CAAAA,CAAAA,CAAAA,CAAe2D,KAAQD,CAAAA,CAAQ,EAGjCF,CAAAA,CAAAA,EAAAA,CAAYI,UAAYC,CAAAA,SAAAA,CAAAA,CAAAA,CACtB,GAAMC,CAAAA,CAAAA,CA2KV,SAAmBC,CAAAA,CAAAA,CACjB,GAAMC,CAAAA,CAAAA,CAAQ,CAAEC,CAAAA,CAAG,CAAGC,CAAAA,EAAAA,CAAI,IAAMC,CAAAA,EAAAA,CAAI,OAAWC,CAAAA,EAAAA,CAAAA,IAAAA,CAAAA,GAAAA,CAAI,IAAQ,CAAA,CAAA,EAAA,CACrDC,CAAMC,CAAAA,UAAAA,CAAWP,CACjBQ,CAAAA,CAAAA,CAAAA,CAAOR,CAAQS,CAAAA,OAAAA,CAAQ,WAAa,CAAA,EAAA,CAAA,CAAIC,WACxCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAaV,CAAMO,CAAAA,CAAAA,CAAAA,EAA+B,CACxD,CAAA,MAAOF,CAAAA,CAAMK,CAAAA,CACf,EAjLoBC,CAAU3E,CAAe4E,CAAAA,IAAAA,CAAAA,CACnC3E,CAAgBD,CAAAA,CAAAA,CAAeC,aAErC,CAAA,GAAA,CAAKD,CAAe6E,CAAAA,aAAAA,EAAkB5E,EAAcG,MAASyD,CAAAA,CAAAA,CAAMzD,MAAS,CAAA,CAAA,CAI1E,MAHAJ,CAAAA,CAAAA,CAAeqC,YAAeC,CAAAA,CAAAA,CAAgBwC,oBAC9CC,CAAAA,OAAAA,CAAQC,KAAMhF,CAAAA,CAAAA,CAAeqC,YAC7BrC,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAewC,aAIjB,CAAA,CAAA,CAAA,GAAIyC,CAAAA,CAAe,CAAA,CAAA,CAAA,CACfC,CAAkB,CAAA,CAAA,CAAA,CACtB,GAAMC,CAAAA,CAAAA,CAAmB,EACnBC,CAAAA,CAAAA,CAAwB,EAE9B,CAAA,IAAAC,SAAA,CAAA/E,0BAAA,CAAmBuD,CACbpD,EAAAA,KAAAA,SAAAA,KAAAA,UAAAA,MAAAA,CAAAA,IADKA,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA,KAAAA,CACLA,CAAAA,CAAKmE,IAAOd,CAAAA,CAAAA,EACdmB,CAAe,CAAA,CAAA,CAAA,CACfG,CAAcE,CAAAA,IAAAA,CAAK7E,CAKlBT,CAAAA,EAAAA,CAAAA,CAAeuF,eAChBtF,EAAAA,CAAAA,CAAAA,CAAcuF,IACXC,CAAAA,SAAAA,CAAAA,QACCA,CAAAA,CAASC,CAAAA,IAAAA,GAASjF,CAAKiF,CAAAA,IAAAA,EACvBD,CAASb,CAAAA,IAAAA,GAASnE,CAAKmE,CAAAA,IAAAA,EACvBa,CAASE,CAAAA,IAAAA,GAASlF,CAAKkF,CAAAA,IAAAA,EAAAA,CAAAA,CAQzBP,CAAcQ,CAAAA,QAAAA,CAASnF,CACzB0E,CAAAA,EAAAA,CAAAA,CAASG,IAAK7E,CAAAA,CAAAA,CAAAA,EANdyE,CAAkB,CAAA,CAAA,CAAA,CAClBE,CAAcE,CAAAA,IAAAA,CAAK7E,KASnBwE,CA1BJ,IAAAI,SAAA,CAAArC,CAAA,KAAA6C,KAAA,CAAAR,SAAA,CAAApC,CAAA,IAAAC,IAAA,GAAA4C,KAAA,IA0BIb,OAAAA,GAAAA,EAAAA,SAAAA,CAAAA,CAAAA,CAAAA,GAAAA,WAAAA,SAAAA,CAAAA,CAAAA,IAAAA,CACFjF,GAAAA,CAAAA,CAAeqC,YAAeC,CAAAA,CAAAA,CAAgByD,mBAC9ChB,CAAAA,OAAAA,CAAQC,KAAMhF,CAAAA,CAAAA,CAAeqC,YAC7BrC,CAAAA,CAAAA,CAAAA,CAAewC,aACfxC,CAAAA,CAAAA,CAAAA,CAAAA,CAAe4B,aAAc,CAAA,GAAIC,CAAAA,WAAYX,CAAAA,CAAAA,CAAgB8E,sBAAwB,CAAA,CACnFjE,MAAQ,CAAA,CAAE8B,KAAOuB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAIjBF,CAAuC,EAAA,CAAA,GAApBC,CAAS/E,CAAAA,MAAAA,GAC9BJ,CAAeqC,CAAAA,YAAAA,CAAeC,CAAgB2D,CAAAA,sBAAAA,CAC9ClB,OAAQC,CAAAA,KAAAA,CAAMhF,CAAeqC,CAAAA,YAAAA,CAAAA,CAC7BrC,CAAewC,CAAAA,aAAAA,CAAAA,CAAAA,CAAAA,CAGjBxC,CAAeC,CAAAA,aAAAA,IAAAA,MAAAA,CAAAA,kBAAAA,CAAoBA,CAAAA,EAAkBkF,CACrDnF,CAAAA,CAAAA,CAAAA,CAAewC,aAAe,CAAA,CAAA,EAAA,CAAA,CAIhCgB,EAAY0C,CAAAA,eAAAA,CAAiB7D,SAAAA,CAC3B0C,CAAAA,CAAAA,OAAAA,CAAQC,KAAMhF,CAAAA,CAAAA,CAAeqC,YAC7BrC,CAAAA,CAAAA,CAAAA,CAAeqC,YAAeA,CAAAA,CAAY,EAC1C,CAAA,EAAA,EAAAgB,OAAA,KAGS8C,CAAsB3C,CAAAA,QAAtB2C,CAAAA,CAAsB3C,CAAAA,CAAAA,CAAAA,CACjC4C,QAASC,CAAAA,gBAAAA,CAAiB,UAAY7C,CAAAA,CAAAA,CAAY8C,eAAiB,CAAA,CAAEC,SAAS,CAC9EH,CAAAA,CAAAA,CAAAA,QAAAA,CAASC,gBAAiB,CAAA,MAAA,CAAQ7C,CAAYgD,CAAAA,WAAAA,CAAa,CAAED,OAAAA,CAAAA,CAAS,CAAQ,CAAA,CAAA,EAAA,EAAAlD,OAAA,KAGnEoD,CAAuB,CAAA,QAAvBA,CAAAA,CAAuBC,CAAC1G,CAAgCwD,CAAAA,CAAAA,CAA0BrD,CAC7FH,CAAAA,CAAAA,CAAAA,CAAeqG,gBAAiB,CAAA,YAAA,CAAe/E,SAAAA,CAAMqF,CAAAA,CAAAA,MAYrDC,CAAAA,CAZmE5G,CAAAA,CAAAA,CAAe4G,QAAU5G,CAAAA,KAAAA,CAAAA,CAAe2D,KAetFkD,GAAAA,CAAAA,CAAgBC,OACnCF,EAAAA,CAAAA,CAASC,CAAgBE,CAAAA,KAAAA,CAAAA,CAAAA,CALb,GACdH,CAAAA,CAZiH,EACjH5G,CAAAA,CAAAA,CAAAA,CAAeqG,gBAAiB,CAAA,YAAA,CAAe/E,SAAAA,CAAM0F,CAAAA,CAAAA,MAoBrDJ,CAAAA,CApBoE5G,CAAAA,CAAAA,CAAe4G,QAAU5G,CAAAA,KAAAA,CAAAA,CAAe2D,KAuBvFkD,GAAAA,CAAAA,CAAgBE,KACnCH,EAAAA,CAAAA,CAASC,CAAgBC,CAAAA,OAAAA,CAAAA,CAAAA,CALb,GACdF,CAAAA,CApBkH,EAClH5G,CAAAA,CAAAA,CAAAA,CAAeqG,gBAAiB,CAAA,WAAA,CAAc/E,SAAAA,CAAMkC,QAAAA,CAAAA,CAAAA,CAAYyD,SAAU3F,CAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAC1EtB,CAAeqG,CAAAA,gBAAAA,CAAiB,WAAc/E,CAAAA,SAAAA,CAAAA,QAAMkC,CAAAA,CAAY0D,CAAAA,SAAAA,CAAU5F,MAC1EtB,CAAeqG,CAAAA,gBAAAA,CAAiB,UAAa/E,CAAAA,SAAAA,CAAAA,QAAMkC,CAAAA,CAAY2D,CAAAA,QAAAA,CAAS7F,CACxEtB,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAeqG,gBAAiB,CAAA,MAAA,CAAS/E,SAAAA,CAAMkC,QAAAA,CAAAA,CAAAA,CAAY4D,IAAK9F,CAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAEhE+F,CAAiBrH,CAAAA,CAAAA,CAAgBG,CACjCmH,CAAAA,CAAAA,CAAAA,CAAWtH,CAAeC,CAAAA,aAAAA,CAAeD,CAAe,CAAA,EAAA,EAyE7CqH,CAAAA,CAAmB,QAAnBA,CAAAA,CAAAA,CAAoBrH,CAAAA,CAAgCG,CAC/DiG,CAAAA,CAAAA,QAAAA,CAASC,gBAAiBnF,CAAAA,CAAAA,CAAgBqG,kBAAqBjG,CAAAA,SAAAA,CAAAA,CAAAA,CAC7D,GAAMkG,CAAAA,CAAAA,CAAelG,CAAES,CAAAA,MAAAA,CAAOtB,IACxBK,CAAAA,CAAAA,CAAMX,EAAesH,GAAID,CAAAA,CAAAA,CAAAA,CAE3B1G,CACFA,EAAAA,CAAAA,CAAI4G,KAENvH,CAAAA,CAAAA,CAAAA,CAAAA,UAAsBqH,CAAAA,CAAAA,CAAAA,CACtBxH,CAAeC,CAAAA,aAAAA,CAAgBD,CAAeC,CAAAA,aAAAA,CAAc0H,MAAOlH,CAAAA,SAAAA,CAAAA,QAAQA,CAAAA,CAAS+G,GAAAA,CAAAA,EAAAA,CAAAA,CAEpFxH,CAAe4B,CAAAA,aAAAA,CAAc,GAAIC,CAAAA,WAAAA,CAAYX,CAAgB0G,CAAAA,qBAAAA,CAAuB,CAClF7F,MAAAA,CAAQ,CAAEtB,IAAAA,CAAM+G,CACf,CAAA,CAAA,CAAA,CAAA,EAAA,CACH,EAWS,CAAAnE,OAAA,KAAAwE,CAAoCC,CAAAA,QAApCD,CAAAA,CAAoCC,CAAAA,CAAAA,CAAAA,KAAAA,iBAAAA,CAC/CA,CAAAA,iBAAAA,CAAAA,EAAMC,cACND,UAAAA,iBAAAA,WADAA,iBAAAA,CAAAA,IAAAA,CAAAA,CACAA,CAAAA,CAAAA,CAAAA,CAAME,eAAiB,CAAA,CAAA,EAAA,EAGZV,CAAa,CAAA,QAAbA,CAAAA,CAAaW,CAAChI,CAAuBD,CAAAA,CAAAA,CAAAA,CAChDoG,QAASC,CAAAA,gBAAAA,CAAiB,aAAgB/E,CAAAA,SAAAA,CAAAA,CAAAA,CACxC,GAAQ4G,CAAAA,CAAU5G,CAAAA,CAAAA,CAAES,MACpB9B,CADMiI,KAAAA,CACNjI,CAAAA,CAAgBA,CAAc0H,CAAAA,MAAAA,CAAOlH,SAAAA,CAAQA,QAAAA,CAAAA,CAAAA,GAASyH,CACtDlI,EAAAA,CAAAA,CAAAA,CAAAA,CAAeC,aAAgBA,CAAAA,CAAAA,CAC/BD,CAAewC,CAAAA,aAAAA,CAAAA,CAAe,EAC9B,CAAA,EAAA"}
1
+ {"version":3,"file":"file-validation.util.cjs.js","sources":["../../../../src/nile-file-upload/utils/file-validation.util.ts"],"sourcesContent":["import { DragHandler } from \"./drag-drop.util\";\nimport { FileUploadState, FileUploadError, FileUploadEvent } from \"../types\";\nimport { NileFileUpload } from \"../nile-file-upload\";\nimport { RemoveFileDetail } from \"../../nile-file-preview/types\";\n\nexport const setUpDragHandler = (\n nileFileUpload: NileFileUpload,\n dragHandler: DragHandler,\n): void => {\n dragHandler.onStateChange((newState: FileUploadState) => {\n nileFileUpload.state = newState;\n });\n\n dragHandler.onFileDrop((files: File[]) => {\n const maxSize = parseSize(nileFileUpload.size);\n const uploadedFiles = nileFileUpload.uploadedFiles;\n \n if (!nileFileUpload.allowMultiple && (uploadedFiles.length + files.length > 1)) {\n nileFileUpload.errorMessage = FileUploadError.MULTIPLE_NOT_ALLOWED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n return;\n }\n \n let sizeExceeded = false;\n let duplicatesFound = false;\n const newFiles: File[] = [];\n const rejectedFiles: File[] = [];\n \n for (const file of files) {\n if (file.size > maxSize) {\n sizeExceeded = true;\n rejectedFiles.push(file);\n continue;\n }\n \n if (\n !nileFileUpload.allowDuplicates &&\n uploadedFiles.some(\n (uploaded) =>\n uploaded.name === file.name &&\n uploaded.size === file.size &&\n uploaded.type === file.type\n )\n ) {\n duplicatesFound = true;\n rejectedFiles.push(file);\n continue;\n }\n \n if(!rejectedFiles.includes(file)) {\n newFiles.push(file);\n }\n }\n\n if (sizeExceeded) {\n nileFileUpload.errorMessage = FileUploadError.SIZE_LIMIT_EXCEEDED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_SIZE_EXCEED_FILES, {\n detail: { files: rejectedFiles }\n }));\n }\n \n if (duplicatesFound && newFiles.length === 0) {\n nileFileUpload.errorMessage = FileUploadError.DUPLICATES_NOT_ALLOWED;\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.requestUpdate();\n }\n \n nileFileUpload.uploadedFiles = [...uploadedFiles, ...newFiles];\n nileFileUpload.requestUpdate();\n });\n \n\n dragHandler.setErrorMessage((errorMessage: string) => {\n console.error(nileFileUpload.errorMessage);\n nileFileUpload.errorMessage = errorMessage;\n });\n};\n\nexport const addGlobalListeners = (dragHandler: DragHandler): void => {\n document.addEventListener('dragover', dragHandler.preventDragOver, { passive: false });\n document.addEventListener('drop', dragHandler.preventDrop, { passive: false });\n}\n\nexport const addInternalListeners = (nileFileUpload: NileFileUpload, dragHandler: DragHandler, uploadRequests: any): void => {\n nileFileUpload.addEventListener('mouseenter', (e) => handleHoverIn(nileFileUpload.setState, nileFileUpload.state));\n nileFileUpload.addEventListener('mouseleave', (e) => handleHoverOut(nileFileUpload.setState, nileFileUpload.state));\n nileFileUpload.addEventListener('dragenter', (e) => dragHandler.dragEnter(e));\n nileFileUpload.addEventListener('dragleave', (e) => dragHandler.dragLeave(e));\n nileFileUpload.addEventListener('dragover', (e) => dragHandler.dragOver(e));\n nileFileUpload.addEventListener('drop', (e) => dragHandler.drop(e)); \n\n cancelFileUpload(nileFileUpload, uploadRequests);\n removeFile(nileFileUpload.uploadedFiles, nileFileUpload);\n}\n\nexport function handleHoverIn(\n setState: (state: FileUploadState) => void,\n currentState: FileUploadState\n): void {\n if (currentState === FileUploadState.DEFAULT) {\n setState(FileUploadState.HOVER);\n }\n}\n\nexport function handleHoverOut(\n setState: (state: FileUploadState) => void,\n currentState: FileUploadState\n): void {\n if (currentState === FileUploadState.HOVER) {\n setState(FileUploadState.DEFAULT);\n }\n}\n\nexport function uploadFiles(nileFileUpload: NileFileUpload) {\n const { uploadedFiles, fileUploadUrl, uploadRequests } = nileFileUpload;\n if (!fileUploadUrl || !uploadedFiles?.length) return;\n\n for (const file of uploadedFiles) {\n if (uploadRequests.has(file)) continue;\n \n const formData = new FormData();\n formData.append('file', file);\n\n const xhr = new XMLHttpRequest();\n uploadRequests.set(file, xhr);\n\n nileFileUpload.emit(FileUploadEvent.NILE_UPLOADING);\n\n xhr.upload.onprogress = (e) => {\n const percent = Math.floor((e.loaded / e.total) * 100);\n \n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_PROGRESS, {\n detail: { file, progress: percent }\n }));\n };\n\n xhr.onload = () => {\n if (xhr.status >= 200 && xhr.status < 300) {\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_SUCCESS, {\n detail: { file, response: xhr.response }\n }));\n } else {\n nileFileUpload.errorMessage = FileUploadError.SERVER_SIDE_ERROR;\n nileFileUpload.requestUpdate();\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.SERVER_SIDE_ERROR, {\n detail: { file, status: xhr.status, response: xhr.response }\n }));\n }\n };\n\n xhr.onerror = () => {\n uploadRequests.delete(file);\n nileFileUpload.errorMessage = FileUploadError.NETWORK_ERROR;\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_NETWORK_ERROR, {\n detail: { file, status: xhr.status, response: xhr.response },\n bubbles: true,\n composed: true,\n }));\n };\n\n xhr.open('POST', fileUploadUrl);\n xhr.send(formData);\n }\n}\n\nexport const cancelFileUpload = (nileFileUpload: NileFileUpload, uploadRequests: Map<File, XMLHttpRequest>) => {\n document.addEventListener(FileUploadEvent.NILE_CANCEL_UPLOAD, (e: CustomEvent) => {\n const fileToCancel = e.detail.file;\n const xhr = uploadRequests.get(fileToCancel);\n\n if (xhr) {\n xhr.abort();\n }\n uploadRequests.delete(fileToCancel);\n nileFileUpload.uploadedFiles = nileFileUpload.uploadedFiles.filter(file => file !== fileToCancel);\n\n nileFileUpload.dispatchEvent(new CustomEvent(FileUploadEvent.NILE_UPLOAD_CANCELLED, {\n detail: { file: fileToCancel }\n }));\n });\n};\n\nfunction parseSize(sizeStr: string): number {\n const units = { B: 1, KB: 1024, MB: 1024 ** 2, GB: 1024 ** 3 };\n const num = parseFloat(sizeStr);\n const unit = sizeStr.replace(/[0-9.\\s]/g, '').toUpperCase();\n const multiplier = units[unit as keyof typeof units] || 1;\n return num * multiplier;\n}\n\nexport const preventDefaultAndStopPropagation = (event: Event | DragEvent): void => {\n event.preventDefault?.();\n event.stopPropagation();\n}\n\nexport const removeFile = (uploadedFiles: File[], nileFileUpload: NileFileUpload) => {\n document.addEventListener('nile-remove', (e: CustomEvent<RemoveFileDetail>) => {\n const { value } = e.detail;\n uploadedFiles = uploadedFiles.filter(file => file !== value);\n nileFileUpload.uploadedFiles = uploadedFiles;\n nileFileUpload.requestUpdate();\n });\n}\n\nexport const truncateString = (nileFileUpload: NileFileUpload): void => {\n if(nileFileUpload.variant === 'vertical' && nileFileUpload.errorMessage.length > 34) {\n nileFileUpload.isStringTruncated = true;\n nileFileUpload.requestUpdate();\n } else if(nileFileUpload.variant === 'horizontal' && nileFileUpload.errorMessage.length > 96) {\n console.log('working');\n \n nileFileUpload.isStringTruncated = true;\n nileFileUpload.requestUpdate();\n }\n}"],"names":["uploadFiles","nileFileUpload","uploadedFiles","fileUploadUrl","uploadRequests","length","file","has","formData","FormData","append","xhr","XMLHttpRequest","set","emit","FileUploadEvent","NILE_UPLOADING","upload","onprogress","e","percent","Math","floor","loaded","total","dispatchEvent","CustomEvent","NILE_UPLOAD_PROGRESS","detail","progress","onload","status","NILE_UPLOAD_SUCCESS","response","errorMessage","FileUploadError","SERVER_SIDE_ERROR","requestUpdate","onerror","NETWORK_ERROR","NILE_NETWORK_ERROR","bubbles","composed","open","send","_iterator2","s","_step2","n","done","_loop2","err","f","_export","setUpDragHandler","t","dragHandler","onStateChange","newState","state","onFileDrop","files","maxSize","sizeStr","units","B","KB","MB","GB","num","parseFloat","unit","replace","toUpperCase","multiplier","parseSize","size","allowMultiple","MULTIPLE_NOT_ALLOWED","console","error","sizeExceeded","duplicatesFound","newFiles","rejectedFiles","_iterator","_createForOfIteratorHelper","push","allowDuplicates","some","uploaded","name","type","includes","_step","_loop","SIZE_LIMIT_EXCEEDED","NILE_SIZE_EXCEED_FILES","DUPLICATES_NOT_ALLOWED","concat","_toConsumableArray","setErrorMessage","addGlobalListeners","document","addEventListener","preventDragOver","passive","preventDrop","addInternalListeners","handleHoverIn","setState","FileUploadState","DEFAULT","HOVER","handleHoverOut","dragEnter","dragLeave","dragOver","drop","cancelFileUpload","removeFile","l","NILE_CANCEL_UPLOAD","fileToCancel","get","abort","delete","filter","NILE_UPLOAD_CANCELLED","preventDefaultAndStopPropagation","event","preventDefault","stopPropagation","value","truncateString","variant","isStringTruncated","log"],"mappings":"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"}
@@ -1 +1 @@
1
- import{a as e,b as o,F as s}from"../types/file-upload.enums.esm.js";const t=(s,t)=>{t.onStateChange((e=>{s.state=e})),t.onFileDrop((t=>{const n=function(e){const o={B:1,KB:1024,MB:1048576,GB:1024**3},s=parseFloat(e),t=e.replace(/[0-9.\s]/g,"").toUpperCase(),n=o[t]||1;return s*n}(s.size),a=s.uploadedFiles;if(!s.allowMultiple&&a.length+t.length>1)return s.errorMessage=e.MULTIPLE_NOT_ALLOWED,console.error(s.errorMessage),void s.requestUpdate();let r=!1,l=!1;const u=[],i=[];for(const e of t)e.size>n?(r=!0,i.push(e)):s.allowDuplicates||!a.some((o=>o.name===e.name&&o.size===e.size&&o.type===e.type))?i.includes(e)||u.push(e):(l=!0,i.push(e));r&&(s.errorMessage=e.SIZE_LIMIT_EXCEEDED,console.error(s.errorMessage),s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.NILE_SIZE_EXCEED_FILES,{detail:{files:i}}))),l&&0===u.length&&(s.errorMessage=e.DUPLICATES_NOT_ALLOWED,console.error(s.errorMessage),s.requestUpdate()),s.uploadedFiles=[...a,...u],s.requestUpdate()})),t.setErrorMessage((e=>{console.error(s.errorMessage),s.errorMessage=e}))},n=e=>{document.addEventListener("dragover",e.preventDragOver,{passive:!1}),document.addEventListener("drop",e.preventDrop,{passive:!1})},a=(e,o,t)=>{e.addEventListener("mouseenter",(o=>{return t=e.setState,void(e.state===s.DEFAULT&&t(s.HOVER));var t})),e.addEventListener("mouseleave",(o=>{return t=e.setState,void(e.state===s.HOVER&&t(s.DEFAULT));var t})),e.addEventListener("dragenter",(e=>o.dragEnter(e))),e.addEventListener("dragleave",(e=>o.dragLeave(e))),e.addEventListener("dragover",(e=>o.dragOver(e))),e.addEventListener("drop",(e=>o.drop(e))),l(e,t),i(e.uploadedFiles,e)};function r(s){const{uploadedFiles:t,fileUploadUrl:n,uploadRequests:a}=s;if(n&&t?.length)for(const r of t){if(a.has(r))continue;const t=new FormData;t.append("file",r);const l=new XMLHttpRequest;a.set(r,l),s.emit(o.NILE_UPLOADING),l.upload.onprogress=e=>{const t=Math.floor(e.loaded/e.total*100);s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_PROGRESS,{detail:{file:r,progress:t}}))},l.onload=()=>{l.status>=200&&l.status<300?s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_SUCCESS,{detail:{file:r,response:l.response}})):(s.errorMessage=e.SERVER_SIDE_ERROR,s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.SERVER_SIDE_ERROR,{detail:{file:r,status:l.status,response:l.response}})))},l.onerror=()=>{a.delete(r),s.errorMessage=e.NETWORK_ERROR,s.dispatchEvent(new CustomEvent(o.NILE_NETWORK_ERROR,{detail:{file:r,status:l.status,response:l.response},bubbles:!0,composed:!0}))},l.open("POST",n),l.send(t)}}const l=(e,s)=>{document.addEventListener(o.NILE_CANCEL_UPLOAD,(t=>{const n=t.detail.file,a=s.get(n);a&&a.abort(),s.delete(n),e.uploadedFiles=e.uploadedFiles.filter((e=>e!==n)),e.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_CANCELLED,{detail:{file:n}}))}))};const u=e=>{e.preventDefault?.(),e.stopPropagation()},i=(e,o)=>{document.addEventListener("nile-remove",(s=>{const{value:t}=s.detail;e=e.filter((e=>e!==t)),o.uploadedFiles=e,o.requestUpdate()}))};export{a,n as b,u as p,t as s,r as u};
1
+ import{a as e,b as o,F as s}from"../types/file-upload.enums.esm.js";const t=(s,t)=>{t.onStateChange((e=>{s.state=e})),t.onFileDrop((t=>{const n=function(e){const o={B:1,KB:1024,MB:1048576,GB:1024**3},s=parseFloat(e),t=e.replace(/[0-9.\s]/g,"").toUpperCase(),n=o[t]||1;return s*n}(s.size),a=s.uploadedFiles;if(!s.allowMultiple&&a.length+t.length>1)return s.errorMessage=e.MULTIPLE_NOT_ALLOWED,console.error(s.errorMessage),void s.requestUpdate();let r=!1,l=!1;const i=[],u=[];for(const e of t)e.size>n?(r=!0,u.push(e)):s.allowDuplicates||!a.some((o=>o.name===e.name&&o.size===e.size&&o.type===e.type))?u.includes(e)||i.push(e):(l=!0,u.push(e));r&&(s.errorMessage=e.SIZE_LIMIT_EXCEEDED,console.error(s.errorMessage),s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.NILE_SIZE_EXCEED_FILES,{detail:{files:u}}))),l&&0===i.length&&(s.errorMessage=e.DUPLICATES_NOT_ALLOWED,console.error(s.errorMessage),s.requestUpdate()),s.uploadedFiles=[...a,...i],s.requestUpdate()})),t.setErrorMessage((e=>{console.error(s.errorMessage),s.errorMessage=e}))},n=e=>{document.addEventListener("dragover",e.preventDragOver,{passive:!1}),document.addEventListener("drop",e.preventDrop,{passive:!1})},a=(e,o,t)=>{e.addEventListener("mouseenter",(o=>{return t=e.setState,void(e.state===s.DEFAULT&&t(s.HOVER));var t})),e.addEventListener("mouseleave",(o=>{return t=e.setState,void(e.state===s.HOVER&&t(s.DEFAULT));var t})),e.addEventListener("dragenter",(e=>o.dragEnter(e))),e.addEventListener("dragleave",(e=>o.dragLeave(e))),e.addEventListener("dragover",(e=>o.dragOver(e))),e.addEventListener("drop",(e=>o.drop(e))),l(e,t),u(e.uploadedFiles,e)};function r(s){const{uploadedFiles:t,fileUploadUrl:n,uploadRequests:a}=s;if(n&&t?.length)for(const r of t){if(a.has(r))continue;const t=new FormData;t.append("file",r);const l=new XMLHttpRequest;a.set(r,l),s.emit(o.NILE_UPLOADING),l.upload.onprogress=e=>{const t=Math.floor(e.loaded/e.total*100);s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_PROGRESS,{detail:{file:r,progress:t}}))},l.onload=()=>{l.status>=200&&l.status<300?s.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_SUCCESS,{detail:{file:r,response:l.response}})):(s.errorMessage=e.SERVER_SIDE_ERROR,s.requestUpdate(),s.dispatchEvent(new CustomEvent(o.SERVER_SIDE_ERROR,{detail:{file:r,status:l.status,response:l.response}})))},l.onerror=()=>{a.delete(r),s.errorMessage=e.NETWORK_ERROR,s.dispatchEvent(new CustomEvent(o.NILE_NETWORK_ERROR,{detail:{file:r,status:l.status,response:l.response},bubbles:!0,composed:!0}))},l.open("POST",n),l.send(t)}}const l=(e,s)=>{document.addEventListener(o.NILE_CANCEL_UPLOAD,(t=>{const n=t.detail.file,a=s.get(n);a&&a.abort(),s.delete(n),e.uploadedFiles=e.uploadedFiles.filter((e=>e!==n)),e.dispatchEvent(new CustomEvent(o.NILE_UPLOAD_CANCELLED,{detail:{file:n}}))}))};const i=e=>{e.preventDefault?.(),e.stopPropagation()},u=(e,o)=>{document.addEventListener("nile-remove",(s=>{const{value:t}=s.detail;e=e.filter((e=>e!==t)),o.uploadedFiles=e,o.requestUpdate()}))},c=e=>{"vertical"===e.variant&&e.errorMessage.length>34?(e.isStringTruncated=!0,e.requestUpdate()):"horizontal"===e.variant&&e.errorMessage.length>96&&(console.log("working"),e.isStringTruncated=!0,e.requestUpdate())};export{a,n as b,i as p,t as s,c as t,r as u};
@@ -106,6 +106,10 @@ export const styles = css `
106
106
  }
107
107
 
108
108
  /* Uploading State */
109
+ nile-loader {
110
+ line-height: 0;
111
+ }
112
+
109
113
  .uploading {
110
114
  height: 62px;
111
115
  width: 648px;
@@ -187,6 +191,7 @@ export const styles = css `
187
191
 
188
192
  .preview-inner {
189
193
  display: flex;
194
+ align-items: center;
190
195
  gap: 18px;
191
196
  }
192
197
 
@@ -253,6 +258,7 @@ export const styles = css `
253
258
 
254
259
  .no-preview-container {
255
260
  display: flex;
261
+ align-items: center;
256
262
  gap: 18px;
257
263
  }
258
264
 
@@ -286,12 +292,22 @@ export const styles = css `
286
292
  margin: 0px;
287
293
  font-size: var(--nile-type-scale-3);
288
294
  font-weight: var(--nile-font-weight-regular);
295
+ text-align: left;
296
+ white-space: nowrap;
297
+ text-overflow: ellipsis;
298
+ overflow: hidden;
299
+ width: 500px;
289
300
  }
290
301
 
291
302
  .preview-file-info p:last-of-type{
292
303
  color: var(--nile-colors-neutral-700);
293
304
  font-size: var(--nile-type-scale-2);
294
305
  font-weight: var(--nile-font-weight-regular);
306
+ text-align: left;
307
+ white-space: nowrap;
308
+ text-overflow: ellipsis;
309
+ overflow: hidden;
310
+ width: 500px;
295
311
  }
296
312
 
297
313
  .no-preview > nile-icon:hover {
@@ -310,6 +326,7 @@ export const styles = css `
310
326
  .error-container {
311
327
  width: 95%;
312
328
  display: flex;
329
+ align-items: center;
313
330
  gap: 18px;
314
331
  }
315
332
 
@@ -350,7 +367,7 @@ export const styles = css `
350
367
  width: 538px;
351
368
  }
352
369
 
353
- .file-info > nile-tooltip > span {
370
+ .file-info nile-tooltip span, .file-info span {
354
371
  color: var(--nile-colors-red-700);
355
372
  font-size: var(--nile-type-scale-2);
356
373
  font-weight: var(--nile-font-weight-regular);
@@ -539,7 +556,7 @@ export const styles = css `
539
556
  max-width: 222px;
540
557
  }
541
558
 
542
- .file-info-vertical-state > nile-tooltip > span {
559
+ .file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {
543
560
  color: var(--nile-colors-red-700);
544
561
  font-size: var(--nile-type-scale-2);
545
562
  font-weight: var(--nile-font-weight-regular);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqlBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n \n /* .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 0px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 538px;\n } */\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n .preview-actions {\n /* padding-right: 12px; */\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* nile-tooltip::part(base) {\n display: inline-block;\n } */\n\n /* VARTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
1
+ {"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsmBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n nile-loader {\n line-height: 0;\n }\n\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n \n /* .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 0px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 538px;\n } */\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n .preview-actions {\n /* padding-right: 12px; */\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info nile-tooltip span, .file-info span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* nile-tooltip::part(base) {\n display: inline-block;\n } */\n\n /* VARTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
@@ -28,6 +28,7 @@ export declare class NileFilePreview extends NileElement {
28
28
  inputFileName: string;
29
29
  private inputFileHtml;
30
30
  private originalUrl;
31
+ isStringTruncated: boolean;
31
32
  /**
32
33
  * Render method
33
34
  * @slot This is a slot test
@@ -8,7 +8,7 @@ import { __decorate } from "tslib";
8
8
  import { styles } from './nile-file-preview.css';
9
9
  import NileElement from '../internal/nile-element';
10
10
  import { customElement, property } from 'lit/decorators.js';
11
- import { fileUploadServerError, generatePreviewUrl } from './utils';
11
+ import { generatePreviewUrl } from './utils';
12
12
  import { FilePreviewState, FilePreviewVariant, FilePreviewErrorMessages, FilePreviewEvent } from './types';
13
13
  import { html } from 'lit';
14
14
  import { getHorizontalErrorState, getHorizontalNoPreviewState, getHorizontalPreviewState, getHorizontalUploadingState, getVerticalErrorState, getVerticalNoPreviewState, getVerticalPreviewState, getVerticalUploadingState } from './nile-file-preview.template';
@@ -29,6 +29,7 @@ let NileFilePreview = class NileFilePreview extends NileElement {
29
29
  this.inputFileName = "";
30
30
  this.inputFileHtml = null;
31
31
  this.originalUrl = "";
32
+ this.isStringTruncated = false;
32
33
  this.dummyFile = new File(['sdfjbs ewhf'], "dummy.txt", { type: "text/plain" });
33
34
  /* #endregion */
34
35
  }
@@ -49,7 +50,7 @@ let NileFilePreview = class NileFilePreview extends NileElement {
49
50
  }
50
51
  firstUpdated(_changedProperties) {
51
52
  super.firstUpdated(_changedProperties);
52
- fileUploadServerError(this);
53
+ // fileUploadServerError(this);
53
54
  }
54
55
  updated(changedProperties) {
55
56
  if (changedProperties.has('uploadStatus') && this.uploadStatus) {
@@ -93,8 +94,8 @@ let NileFilePreview = class NileFilePreview extends NileElement {
93
94
  this.errorMessage = FilePreviewErrorMessages.FAILED_TO_LOAD;
94
95
  console.error(this.errorMessage);
95
96
  this.inputFileHtml = this.variant === FilePreviewVariant.HORIZONTAL
96
- ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl)
97
- : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl);
97
+ ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl, this)
98
+ : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl, this);
98
99
  this.requestUpdate();
99
100
  }
100
101
  }
@@ -125,8 +126,8 @@ let NileFilePreview = class NileFilePreview extends NileElement {
125
126
  // ? FilePreviewErrorMessages.INVALID_FORMAT
126
127
  // : FilePreviewErrorMessages.UPLOAD_CANCEL;
127
128
  this.inputFileHtml = isHorizontal
128
- ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl)
129
- : getVerticalErrorState(file, this.errorMessage, this.originalUrl);
129
+ ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl, this)
130
+ : getVerticalErrorState(file, this.errorMessage, this.originalUrl, this);
130
131
  }
131
132
  this.requestUpdate();
132
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nile-file-preview.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {styles} from './nile-file-preview.css';\nimport NileElement from '../internal/nile-element';\nimport { customElement, property } from 'lit/decorators.js';\nimport { fileUploadServerError, generatePreviewUrl } from './utils';\nimport { FilePreviewState, FilePreviewVariant, FilePreviewErrorMessages, FilePreviewEvent } from './types';\nimport { LitElement, html, CSSResultArray, TemplateResult, PropertyValues } from 'lit';\nimport {\n getHorizontalErrorState,\n getHorizontalNoPreviewState,\n getHorizontalPreviewState,\n getHorizontalUploadingState,\n getVerticalErrorState,\n getVerticalNoPreviewState,\n getVerticalPreviewState,\n getVerticalUploadingState\n} from './nile-file-preview.template';\n\n\n/**\n * Nile preview component.\n *\n * @tag nile-preview\n *\n */\n@customElement('nile-file-preview')\nexport class NileFilePreview extends NileElement {\n /**\n * The styles for nile-preview\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: String }) errorMessage: string = \"\";\n\t@property({ type: Object }) inputFile: File; \n\t@property({ type: String }) fileUrl: string = \"\";\n\t@property({ type: Number }) uploadStatus: number = 0;\n\t@property({ type: String }) state: FilePreviewState = FilePreviewState.DEFAULT;\n\t@property({ type: String }) variant: FilePreviewVariant = FilePreviewVariant.HORIZONTAL;\n @property({ type: String }) inputFileName: string = \"\";\n\tprivate inputFileHtml: TemplateResult | null = null;\n private originalUrl: string = \"\";\n\n /**\n * Render method\n * @slot This is a slot test\n */\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit(FilePreviewEvent.NILE_INIT);\n }\n\n protected firstUpdated(_changedProperties: PropertyValues): void {\n super.firstUpdated(_changedProperties);\n fileUploadServerError(this);\n }\n\n protected updated(changedProperties: PropertyValues): void {\n if(changedProperties.has('uploadStatus') && this.uploadStatus) {\n if(this.uploadStatus < 100) {\n this.createUploadState(this.inputFile, this.uploadStatus);\n } else {\n this.createState(this.inputFile);\n }\n } else if (changedProperties.has('inputFile') && this.inputFile) {\n this.createState(this.inputFile); \n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('fileUrl') && this.fileUrl) {\n this.handleFileUrl(this.fileUrl);\n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('errorMessage')) {\n this.createState(this.inputFile);\n }\n }\n\n private createUploadState( file: File, uploadStatus: number): void {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n this.inputFileHtml = isHorizontal \n ? getHorizontalUploadingState(file, uploadStatus)\n : getVerticalUploadingState(file, uploadStatus);\n\n this.requestUpdate();\n }\n\n private async handleFileUrl(url: string): Promise<void> {\n this.originalUrl = url;\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n const fileName = this.inputFileName || url.split('/').pop() || FilePreviewErrorMessages.UNKNOWN_FILE_NAME;\n const file = new File([blob], fileName, { type: blob.type });\n\n this.createState(file);\n } catch (error) {\n const dummyFile = new File([], this.inputFileName || FilePreviewErrorMessages.UNKNOWN_FILE_NAME, { type: 'application/octet-stream' });\n this.errorMessage = FilePreviewErrorMessages.FAILED_TO_LOAD;\n console.error(this.errorMessage);\n\n this.inputFileHtml = this.variant === FilePreviewVariant.HORIZONTAL\n ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl)\n : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl);\n this.requestUpdate();\n }\n }\n\n\tpublic async createState(file: File): Promise<void> {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n if (!this.errorMessage) { \n if (file.type.startsWith('image/')) {\n try {\n const url = await generatePreviewUrl(file);\n this.inputFileHtml = isHorizontal\n ? getHorizontalPreviewState(url, file, this.originalUrl)\n : getVerticalPreviewState(url, file, this.originalUrl);\n } catch (error) {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl); \n }\n } else {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl);\n }\n } else {\n // this.errorMessage = !this.errorMessage\n // ? FilePreviewErrorMessages.INVALID_FORMAT\n // : FilePreviewErrorMessages.UPLOAD_CANCEL;\n\n this.inputFileHtml = isHorizontal\n ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl)\n : getVerticalErrorState(file, this.errorMessage, this.originalUrl);\n }\n this.requestUpdate();\n }\n\n private dummyFile = new File(['sdfjbs ewhf'], \"dummy.txt\", { type: \"text/plain\" });\n\n public render(): TemplateResult {\n return html`\n\t\t\t${this.inputFileHtml ?\n\t\t\t\tthis.inputFileHtml :\n\t\t\t\thtml``\n\t\t\t}\n `;\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.emit(FilePreviewEvent.NILE_DESTROY);\n }\n\n /* #endregion */\n}\n\nexport default NileFilePreview;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-file-preview': NileFilePreview;\n }\n}"]}
1
+ {"version":3,"file":"nile-file-preview.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {styles} from './nile-file-preview.css';\nimport NileElement from '../internal/nile-element';\nimport { customElement, property } from 'lit/decorators.js';\nimport { generatePreviewUrl, truncateString } from './utils';\nimport { FilePreviewState, FilePreviewVariant, FilePreviewErrorMessages, FilePreviewEvent } from './types';\nimport { LitElement, html, CSSResultArray, TemplateResult, PropertyValues } from 'lit';\nimport {\n getHorizontalErrorState,\n getHorizontalNoPreviewState,\n getHorizontalPreviewState,\n getHorizontalUploadingState,\n getVerticalErrorState,\n getVerticalNoPreviewState,\n getVerticalPreviewState,\n getVerticalUploadingState\n} from './nile-file-preview.template';\n\n\n/**\n * Nile preview component.\n *\n * @tag nile-preview\n *\n */\n@customElement('nile-file-preview')\nexport class NileFilePreview extends NileElement {\n /**\n * The styles for nile-preview\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: String }) errorMessage: string = \"\";\n\t@property({ type: Object }) inputFile: File; \n\t@property({ type: String }) fileUrl: string = \"\";\n\t@property({ type: Number }) uploadStatus: number = 0;\n\t@property({ type: String }) state: FilePreviewState = FilePreviewState.DEFAULT;\n\t@property({ type: String }) variant: FilePreviewVariant = FilePreviewVariant.HORIZONTAL;\n @property({ type: String }) inputFileName: string = \"\";\n\tprivate inputFileHtml: TemplateResult | null = null;\n private originalUrl: string = \"\";\n public isStringTruncated: boolean = false;\n\n /**\n * Render method\n * @slot This is a slot test\n */\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit(FilePreviewEvent.NILE_INIT);\n }\n\n protected firstUpdated(_changedProperties: PropertyValues): void {\n super.firstUpdated(_changedProperties);\n // fileUploadServerError(this);\n }\n\n protected updated(changedProperties: PropertyValues): void {\n if(changedProperties.has('uploadStatus') && this.uploadStatus) {\n if(this.uploadStatus < 100) {\n this.createUploadState(this.inputFile, this.uploadStatus);\n } else {\n this.createState(this.inputFile);\n }\n } else if (changedProperties.has('inputFile') && this.inputFile) {\n this.createState(this.inputFile); \n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('fileUrl') && this.fileUrl) {\n this.handleFileUrl(this.fileUrl);\n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('errorMessage')) {\n this.createState(this.inputFile);\n }\n }\n\n private createUploadState( file: File, uploadStatus: number): void {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n this.inputFileHtml = isHorizontal \n ? getHorizontalUploadingState(file, uploadStatus)\n : getVerticalUploadingState(file, uploadStatus);\n\n this.requestUpdate();\n }\n\n private async handleFileUrl(url: string): Promise<void> {\n this.originalUrl = url;\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n const fileName = this.inputFileName || url.split('/').pop() || FilePreviewErrorMessages.UNKNOWN_FILE_NAME;\n const file = new File([blob], fileName, { type: blob.type });\n\n this.createState(file);\n } catch (error) {\n const dummyFile = new File([], this.inputFileName || FilePreviewErrorMessages.UNKNOWN_FILE_NAME, { type: 'application/octet-stream' });\n this.errorMessage = FilePreviewErrorMessages.FAILED_TO_LOAD;\n console.error(this.errorMessage);\n\n this.inputFileHtml = this.variant === FilePreviewVariant.HORIZONTAL\n ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl, this)\n : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl, this);\n this.requestUpdate();\n }\n }\n\n\tpublic async createState(file: File): Promise<void> {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n if (!this.errorMessage) { \n if (file.type.startsWith('image/')) {\n try {\n const url = await generatePreviewUrl(file);\n this.inputFileHtml = isHorizontal\n ? getHorizontalPreviewState(url, file, this.originalUrl)\n : getVerticalPreviewState(url, file, this.originalUrl);\n } catch (error) {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl); \n }\n } else {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl);\n }\n } else {\n // this.errorMessage = !this.errorMessage\n // ? FilePreviewErrorMessages.INVALID_FORMAT\n // : FilePreviewErrorMessages.UPLOAD_CANCEL;\n\n this.inputFileHtml = isHorizontal\n ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl, this)\n : getVerticalErrorState(file, this.errorMessage, this.originalUrl, this);\n }\n this.requestUpdate();\n }\n\n private dummyFile = new File(['sdfjbs ewhf'], \"dummy.txt\", { type: \"text/plain\" });\n\n public render(): TemplateResult {\n return html`\n\t\t\t${this.inputFileHtml ?\n\t\t\t\tthis.inputFileHtml :\n\t\t\t\thtml``\n\t\t\t}\n `;\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.emit(FilePreviewEvent.NILE_DESTROY);\n }\n\n /* #endregion */\n}\n\nexport default NileFilePreview;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-file-preview': NileFilePreview;\n }\n}"]}
@@ -3,11 +3,12 @@
3
3
  */
4
4
  import './nile-file-preview.css';
5
5
  import { TemplateResult } from 'lit';
6
+ import { NileFilePreview } from './nile-file-preview';
6
7
  export declare function getHorizontalUploadingState(file: File, uploadStatus: number): TemplateResult;
7
8
  export declare function getHorizontalPreviewState(url: string, file: File, originalUrl: string): TemplateResult;
8
9
  export declare function getHorizontalNoPreviewState(file: File, originalUrl: string): TemplateResult;
9
- export declare function getHorizontalErrorState(file: File, errorMessage: string, originalUrl: string): TemplateResult;
10
+ export declare function getHorizontalErrorState(file: File, errorMessage: string, originalUrl: string, nileFilePreview: NileFilePreview): TemplateResult;
10
11
  export declare function getVerticalUploadingState(file: File, uploadStatus: number): TemplateResult;
11
12
  export declare function getVerticalPreviewState(url: string, file: File, originalUrl: string): TemplateResult;
12
13
  export declare function getVerticalNoPreviewState(file: File, originalUrl: string): TemplateResult;
13
- export declare function getVerticalErrorState(file: File, errorMessage: string, originalUrl: string): TemplateResult;
14
+ export declare function getVerticalErrorState(file: File, errorMessage: string, originalUrl: string, nileFilePreview: NileFilePreview): TemplateResult;