HEX
Server: Apache
System: Linux server1.ariadata.co 4.18.0-553.120.1.el8_10.x86_64 #1 SMP Mon Apr 20 18:04:27 EDT 2026 x86_64
User: nepi (1051)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,show_source,popen,proc_open
Upload Files
File: /home/nepi/public_html/public/admin/js/chunk-5dfc3d86.f845ab6a.js.map
{"version":3,"sources":["webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./src/interfaces/file-size/format-size.js","webpack:///./node_modules/core-js/internals/this-number-value.js","webpack:///./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./node_modules/@directus/extension-toolkit/mixins/interface.js","webpack:///./node_modules/core-js/modules/es.number.to-fixed.js","webpack:///./src/interfaces/file/input.vue?c7e3","webpack:///src/interfaces/file/input.vue","webpack:///./src/interfaces/file/input.vue?e7b9","webpack:///./src/interfaces/file/input.vue","webpack:///./src/interfaces/file/input.vue?9907","webpack:///./src/interfaces/file/get-icon.js"],"names":["toInteger","requireObjectCoercible","module","exports","repeat","count","str","String","this","result","n","Infinity","RangeError","formatSize","bytes","decimal","threshold","Boolean","Math","abs","units","unitIndex","remainingBytes","length","toFixed","classof","value","TypeError","_typeof","obj","Symbol","iterator","constructor","prototype","props","id","type","required","name","default","Number","readonly","collection","primaryKey","options","Object","newItem","relation","fields","values","width","val","includes","$","thisNumberValue","fails","nativeToFixed","floor","pow","x","acc","log","x2","FORCED","call","target","proto","forced","fractionDigits","e","z","j","k","number","fractDigits","data","sign","multiply","c","index","c2","divide","dataToString","s","t","slice","render","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","$t","on","$event","$emit","directives","rawName","expression","attrs","image","Array","isArray","title","subtitle","subtitleExtra","src","icon","cardOptions","startsWith","isImage","downloadFile","removeFile","accept","saveUpload","_e","existing","done","text","onSearchInput","viewType","filters","viewQuery","viewOptions","setViewOptions","setViewQuery","saveSelection","staticRenderFns","component","getIcon"],"mappings":"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","file":"js/chunk-5dfc3d86.f845ab6a.js","sourcesContent":["'use strict';\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.repeat` method implementation\n// https://tc39.github.io/ecma262/#sec-string.prototype.repeat\nmodule.exports = ''.repeat || function repeat(count) {\n  var str = String(requireObjectCoercible(this));\n  var result = '';\n  var n = toInteger(count);\n  if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n  for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n  return result;\n};\n","/**\n * Convert a value in bytes to a human readable format\n * @param {number} value The value in bytes to format\n * @return {string} The human readable filesize\n * @example\n *\n * const byteSize = 1500;\n * const fileSize = formatSize(byteSize);\n * // => '1.5 KB'\n * @see https://stackoverflow.com/a/14919494/4859211\n */\nexport default function formatSize(bytes = 0, decimal = true) {\n\tconst threshold = decimal ? 1000 : 1024;\n\n\tif (Boolean(bytes) === false) {\n\t\treturn '--';\n\t}\n\n\tif (Math.abs(bytes) < threshold) {\n\t\treturn `${bytes} B`;\n\t}\n\n\tconst units = decimal\n\t\t? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']\n\t\t: ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'];\n\n\tlet unitIndex = -1;\n\tlet remainingBytes = bytes;\n\n\tdo {\n\t\tremainingBytes /= threshold;\n\t\tunitIndex += 1;\n\t} while (Math.abs(remainingBytes) >= threshold && unitIndex < units.length - 1);\n\n\treturn `${remainingBytes.toFixed(1)} ${units[unitIndex]}`;\n}\n","var classof = require('../internals/classof-raw');\n\n// `thisNumberValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-thisnumbervalue\nmodule.exports = function (value) {\n  if (typeof value != 'number' && classof(value) != 'Number') {\n    throw TypeError('Incorrect invocation');\n  }\n  return +value;\n};\n","export default function _typeof(obj) {\n  \"@babel/helpers - typeof\";\n\n  if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n    _typeof = function _typeof(obj) {\n      return typeof obj;\n    };\n  } else {\n    _typeof = function _typeof(obj) {\n      return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n    };\n  }\n\n  return _typeof(obj);\n}","module.exports = {\n  props: {\n    // Unique id for this interface. Should be added to the lower level \n    // HTML input element if applicable. This ID will be used in the label's\n    // `for` attribute\n    id: {\n      type: String,\n      required: true\n    },\n    // Name of the field\n    name: {\n      type: String,\n      required: true\n    },\n    // The current value. This can either be the default value, the saved database\n    // value or the current state after the user made an edit\n    value: {\n      type: null,\n      default: null\n    },\n    // Type of the field, eg `string`, `hash`, or `array`\n    type: {\n      type: String,\n      required: true\n    },\n    // Max length\n    length: {\n      type: [String, Number],\n      default: null\n    },\n    // If the field is readonly or not\n    readonly: {\n      type: Boolean,\n      default: false\n    },\n    // Name of the collection\n    collection: {\n      type: String,\n      default: null\n    },\n    // Primary key of the item you're editing in this context\n    primaryKey: {\n      type: [Number, String],\n      default: null\n    },\n    // If the field is required or not\n    required: {\n      type: Boolean,\n      default: false\n    },\n    // Field options. A json object based on the interface's meta.json file\n    options: {\n      type: Object,\n      default: () => ({})\n    },\n    // If the item that's currently being edited is new\n    newItem: {\n      type: Boolean,\n      default: false\n    },\n    // The relation of the current field. Will contain information on the related\n    // collection and field(s)\n    relation: {\n      type: Object,\n      default: null\n    },\n    // The other fields in the current edit page\n    fields: {\n      type: Object,\n      default: null\n    },\n    // The values of the other fields on the edit page. Can be used for things like\n    // automatically generating a slug based on another field\n    values: {\n      type: Object,\n      default: null\n    },\n    width: {\n      type: String,\n      default: null,\n      validator(val) {\n        return [\n          'half',\n          'half-left',\n          'half-right',\n          'full',\n          'fill'\n        ].includes(val);\n      }\n    }\n  }\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toInteger = require('../internals/to-integer');\nvar thisNumberValue = require('../internals/this-number-value');\nvar repeat = require('../internals/string-repeat');\nvar fails = require('../internals/fails');\n\nvar nativeToFixed = 1.0.toFixed;\nvar floor = Math.floor;\n\nvar pow = function (x, n, acc) {\n  return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\n\nvar log = function (x) {\n  var n = 0;\n  var x2 = x;\n  while (x2 >= 4096) {\n    n += 12;\n    x2 /= 4096;\n  }\n  while (x2 >= 2) {\n    n += 1;\n    x2 /= 2;\n  } return n;\n};\n\nvar FORCED = nativeToFixed && (\n  0.00008.toFixed(3) !== '0.000' ||\n  0.9.toFixed(0) !== '1' ||\n  1.255.toFixed(2) !== '1.25' ||\n  1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !fails(function () {\n  // V8 ~ Android 4.3-\n  nativeToFixed.call({});\n});\n\n// `Number.prototype.toFixed` method\n// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed\n$({ target: 'Number', proto: true, forced: FORCED }, {\n  // eslint-disable-next-line max-statements\n  toFixed: function toFixed(fractionDigits) {\n    var number = thisNumberValue(this);\n    var fractDigits = toInteger(fractionDigits);\n    var data = [0, 0, 0, 0, 0, 0];\n    var sign = '';\n    var result = '0';\n    var e, z, j, k;\n\n    var multiply = function (n, c) {\n      var index = -1;\n      var c2 = c;\n      while (++index < 6) {\n        c2 += n * data[index];\n        data[index] = c2 % 1e7;\n        c2 = floor(c2 / 1e7);\n      }\n    };\n\n    var divide = function (n) {\n      var index = 6;\n      var c = 0;\n      while (--index >= 0) {\n        c += data[index];\n        data[index] = floor(c / n);\n        c = (c % n) * 1e7;\n      }\n    };\n\n    var dataToString = function () {\n      var index = 6;\n      var s = '';\n      while (--index >= 0) {\n        if (s !== '' || index === 0 || data[index] !== 0) {\n          var t = String(data[index]);\n          s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t;\n        }\n      } return s;\n    };\n\n    if (fractDigits < 0 || fractDigits > 20) throw RangeError('Incorrect fraction digits');\n    // eslint-disable-next-line no-self-compare\n    if (number != number) return 'NaN';\n    if (number <= -1e21 || number >= 1e21) return String(number);\n    if (number < 0) {\n      sign = '-';\n      number = -number;\n    }\n    if (number > 1e-21) {\n      e = log(number * pow(2, 69, 1)) - 69;\n      z = e < 0 ? number * pow(2, -e, 1) : number / pow(2, e, 1);\n      z *= 0x10000000000000;\n      e = 52 - e;\n      if (e > 0) {\n        multiply(0, z);\n        j = fractDigits;\n        while (j >= 7) {\n          multiply(1e7, 0);\n          j -= 7;\n        }\n        multiply(pow(10, j, 1), 0);\n        j = e - 1;\n        while (j >= 23) {\n          divide(1 << 23);\n          j -= 23;\n        }\n        divide(1 << j);\n        multiply(1, 1);\n        divide(2);\n        result = dataToString();\n      } else {\n        multiply(0, z);\n        multiply(1 << -e, 0);\n        result = dataToString() + repeat.call('0', fractDigits);\n      }\n    }\n    if (fractDigits > 0) {\n      k = result.length;\n      result = sign + (k <= fractDigits\n        ? '0.' + repeat.call('0', fractDigits - k) + result\n        : result.slice(0, k - fractDigits) + '.' + result.slice(k - fractDigits));\n    } else {\n      result = sign + result;\n    } return result;\n  }\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input-single-file\"},[(_vm.noFileAccess)?_c('v-notice',{staticClass:\"notice\"},[_vm._v(\" \"+_vm._s(_vm.$t('this_item_is_not_available'))+\" \"),_c('button',{on:{\"click\":function($event){return _vm.$emit('input', null)}}},[_c('v-icon',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\",value:(_vm.$t('deselect')),expression:\"$t('deselect')\"}],attrs:{\"name\":\"clear\"}})],1)]):(_vm.image === null && _vm.value !== null)?_c('v-spinner'):[(Array.isArray(_vm.value) === false && _vm.value)?_c('v-card',{staticClass:\"card\",attrs:{\"title\":_vm.image.title,\"subtitle\":_vm.subtitle + _vm.subtitleExtra,\"src\":_vm.src,\"icon\":_vm.icon,\"text-background\":\"\",\"color\":\"black\",\"options\":_vm.cardOptions,\"medium-image\":_vm.width.startsWith('half'),\"big-image\":_vm.width === 'full',\"only-show-on-hover\":_vm.isImage},on:{\"download\":_vm.downloadFile,\"deselect\":function($event){return _vm.$emit('input', null)},\"remove\":_vm.removeFile}}):_c('v-upload',{staticClass:\"uploader\",attrs:{\"small\":\"\",\"disabled\":_vm.readonly,\"accept\":_vm.options.accept,\"multiple\":false},on:{\"upload\":_vm.saveUpload}}),(!_vm.value)?_c('div',{staticClass:\"buttons\"},[_c('v-button',{attrs:{\"type\":\"button\",\"disabled\":_vm.readonly},on:{\"click\":function($event){_vm.existing = true}}},[_c('v-icon',{attrs:{\"name\":\"playlist_add\",\"left\":\"\"}}),_vm._v(\" \"+_vm._s(_vm.$t('existing'))+\" \")],1)],1):_vm._e(),(_vm.existing)?_c('portal',{attrs:{\"to\":\"modal\"}},[_c('v-modal',{attrs:{\"title\":_vm.$t('choose_one'),\"buttons\":{\n\t\t\t\t\tdone: {\n\t\t\t\t\t\ttext: _vm.$t('done')\n\t\t\t\t\t}\n\t\t\t\t}},on:{\"cancel\":function($event){_vm.existing = false},\"close\":function($event){_vm.existing = false},\"done\":function($event){_vm.existing = false}}},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"search\"},[_c('v-input',{staticClass:\"search-input\",attrs:{\"type\":\"search\",\"placeholder\":_vm.$t('search_for_item')},on:{\"input\":_vm.onSearchInput}})],1),_c('v-items',{staticClass:\"items\",attrs:{\"collection\":\"directus_files\",\"view-type\":_vm.viewType,\"selection\":_vm.value ? [_vm.value] : [],\"filters\":_vm.filters,\"view-query\":_vm.viewQuery,\"view-options\":_vm.viewOptions},on:{\"options\":_vm.setViewOptions,\"query\":_vm.setViewQuery,\"select\":_vm.saveSelection}})],1)])],1):_vm._e()]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div class=\"input-single-file\">\n\t\t<v-notice v-if=\"noFileAccess\" class=\"notice\">\n\t\t\t{{ $t('this_item_is_not_available') }}\n\t\t\t<button @click=\"$emit('input', null)\">\n\t\t\t\t<v-icon v-tooltip=\"$t('deselect')\" name=\"clear\" />\n\t\t\t</button>\n\t\t</v-notice>\n\n\t\t<v-spinner v-else-if=\"image === null && value !== null\" />\n\n\t\t<template v-else>\n\t\t\t<v-card\n\t\t\t\tv-if=\"Array.isArray(value) === false && value\"\n\t\t\t\tclass=\"card\"\n\t\t\t\t:title=\"image.title\"\n\t\t\t\t:subtitle=\"subtitle + subtitleExtra\"\n\t\t\t\t:src=\"src\"\n\t\t\t\t:icon=\"icon\"\n\t\t\t\ttext-background\n\t\t\t\tcolor=\"black\"\n\t\t\t\t:options=\"cardOptions\"\n\t\t\t\t:medium-image=\"width.startsWith('half')\"\n\t\t\t\t:big-image=\"width === 'full'\"\n\t\t\t\t:only-show-on-hover=\"isImage\"\n\t\t\t\t@download=\"downloadFile\"\n\t\t\t\t@deselect=\"$emit('input', null)\"\n\t\t\t\t@remove=\"removeFile\"\n\t\t\t></v-card>\n\t\t\t<v-upload\n\t\t\t\tv-else\n\t\t\t\tsmall\n\t\t\t\t:disabled=\"readonly\"\n\t\t\t\tclass=\"uploader\"\n\t\t\t\t:accept=\"options.accept\"\n\t\t\t\t:multiple=\"false\"\n\t\t\t\t@upload=\"saveUpload\"\n\t\t\t></v-upload>\n\n\t\t\t<div v-if=\"!value\" class=\"buttons\">\n\t\t\t\t<v-button type=\"button\" :disabled=\"readonly\" @click=\"existing = true\">\n\t\t\t\t\t<v-icon name=\"playlist_add\" left />\n\t\t\t\t\t{{ $t('existing') }}\n\t\t\t\t</v-button>\n\t\t\t</div>\n\n\t\t\t<portal v-if=\"existing\" to=\"modal\">\n\t\t\t\t<v-modal\n\t\t\t\t\t:title=\"$t('choose_one')\"\n\t\t\t\t\t:buttons=\"{\n\t\t\t\t\t\tdone: {\n\t\t\t\t\t\t\ttext: $t('done')\n\t\t\t\t\t\t}\n\t\t\t\t\t}\"\n\t\t\t\t\t@cancel=\"existing = false\"\n\t\t\t\t\t@close=\"existing = false\"\n\t\t\t\t\t@done=\"existing = false\"\n\t\t\t\t>\n\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t<div class=\"search\">\n\t\t\t\t\t\t\t<v-input\n\t\t\t\t\t\t\t\ttype=\"search\"\n\t\t\t\t\t\t\t\t:placeholder=\"$t('search_for_item')\"\n\t\t\t\t\t\t\t\tclass=\"search-input\"\n\t\t\t\t\t\t\t\t@input=\"onSearchInput\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<v-items\n\t\t\t\t\t\t\tclass=\"items\"\n\t\t\t\t\t\t\tcollection=\"directus_files\"\n\t\t\t\t\t\t\t:view-type=\"viewType\"\n\t\t\t\t\t\t\t:selection=\"value ? [value] : []\"\n\t\t\t\t\t\t\t:filters=\"filters\"\n\t\t\t\t\t\t\t:view-query=\"viewQuery\"\n\t\t\t\t\t\t\t:view-options=\"viewOptions\"\n\t\t\t\t\t\t\t@options=\"setViewOptions\"\n\t\t\t\t\t\t\t@query=\"setViewQuery\"\n\t\t\t\t\t\t\t@select=\"saveSelection\"\n\t\t\t\t\t\t></v-items>\n\t\t\t\t\t</div>\n\t\t\t\t</v-modal>\n\t\t\t</portal>\n\t\t</template>\n\t</div>\n</template>\n\n<script>\nimport mixin from '@directus/extension-toolkit/mixins/interface';\nimport formatSize from '../file-size/format-size';\nimport getIcon from './get-icon';\nimport { mapState } from 'vuex';\nimport { debounce } from 'lodash';\n\nexport default {\n\tmixins: [mixin],\n\tdata() {\n\t\treturn {\n\t\t\texisting: false,\n\t\t\tviewOptionsOverride: {},\n\t\t\tviewTypeOverride: null,\n\t\t\tviewQueryOverride: {},\n\t\t\tfiltersOverride: [],\n\t\t\timage: null,\n\t\t\tnoFileAccess: false\n\t\t};\n\t},\n\tcomputed: {\n\t\t...mapState(['currentProjectKey']),\n\t\tcardOptions() {\n\t\t\tconst options = {\n\t\t\t\tdownload: {\n\t\t\t\t\ttext: this.$t('file_download'),\n\t\t\t\t\ticon: 'file_download'\n\t\t\t\t},\n\t\t\t\tdeselect: {\n\t\t\t\t\ttext: this.$t('deselect'),\n\t\t\t\t\ticon: 'clear'\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tif (this.options.allowDelete === true) {\n\t\t\t\toptions.remove = {\n\t\t\t\t\ttext: this.$t('delete'),\n\t\t\t\t\ticon: 'delete'\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn options;\n\t\t},\n\t\tsubtitle() {\n\t\t\tif (!this.image) return '';\n\n\t\t\treturn (\n\t\t\t\tthis.image.filename_disk\n\t\t\t\t\t.split('.')\n\t\t\t\t\t.pop()\n\t\t\t\t\t.toUpperCase() +\n\t\t\t\t' • ' +\n\t\t\t\tthis.$d(new Date(this.image.uploaded_on.replace(/-/g, '/')), 'short')\n\t\t\t);\n\t\t},\n\t\tsubtitleExtra() {\n\t\t\t// Image ? -> display dimensions and formatted filesize\n\t\t\treturn this.image.type && this.image.type.startsWith('image')\n\t\t\t\t? ' • ' + formatSize(this.image.filesize)\n\t\t\t\t: '';\n\t\t},\n\t\tsrc() {\n\t\t\tif (!this.image.type || !this.image.type.startsWith('image')) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif (this.image.type === 'image/svg+xml') {\n\t\t\t\treturn this.image.data.asset_url;\n\t\t\t}\n\n\t\t\tconst size = this.width === 'full' ? 'large' : 'medium';\n\t\t\tconst fit = this.options.crop ? 'crop' : 'contain';\n\n\t\t\treturn this.image.data?.thumbnails.find(\n\t\t\t\tthumb => thumb.key === `directus-${size}-${fit}`\n\t\t\t)?.url;\n\t\t},\n\t\tisImage() {\n\t\t\treturn this.image.type && this.image.type.startsWith('image');\n\t\t},\n\t\ticon() {\n\t\t\treturn this.image.type && !this.image.type.startsWith('image')\n\t\t\t\t? getIcon(this.image.type)\n\t\t\t\t: null;\n\t\t},\n\t\tviewOptions() {\n\t\t\tconst viewOptions = this.options.viewOptions;\n\t\t\treturn {\n\t\t\t\t...viewOptions,\n\t\t\t\t...this.viewOptionsOverride\n\t\t\t};\n\t\t},\n\t\tviewType() {\n\t\t\tif (this.viewTypeOverride) return this.viewTypeOverride;\n\t\t\treturn this.options.viewType;\n\t\t},\n\t\tviewQuery() {\n\t\t\tconst viewQuery = this.options.viewQuery;\n\n\t\t\treturn {\n\t\t\t\tsort: '-id',\n\t\t\t\t...viewQuery,\n\t\t\t\t...this.viewQueryOverride\n\t\t\t};\n\t\t},\n\t\tfilters() {\n\t\t\treturn [\n\t\t\t\t...(this.options.filters || []),\n\t\t\t\t...this.fileTypeFilters,\n\t\t\t\t...this.filtersOverride\n\t\t\t];\n\t\t},\n\t\tfileTypeFilters() {\n\t\t\tif (\n\t\t\t\t!this.options.accept ||\n\t\t\t\tthis.filtersOverride.length > 0 ||\n\t\t\t\t(this.options.filters || []).some(filter => filter.field === 'type')\n\t\t\t) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tfield: 'type',\n\t\t\t\t\toperator: 'in',\n\t\t\t\t\tvalue: (this.options.accept || '').trim().split(/,\\s*/)\n\t\t\t\t}\n\t\t\t];\n\t\t}\n\t},\n\tasync created() {\n\t\tif (this.value) {\n\t\t\tawait this.fetchImage();\n\t\t}\n\t\tthis.onSearchInput = debounce(this.onSearchInput, 200);\n\t},\n\twatch: {\n\t\tvalue() {\n\t\t\tthis.fetchImage();\n\t\t}\n\t},\n\tmethods: {\n\t\tasync fetchImage() {\n\t\t\tthis.noFileAccess = false;\n\t\t\tthis.image = null;\n\n\t\t\tif (!this.value) return;\n\n\t\t\tlet id;\n\n\t\t\tif (typeof this.value === 'object') {\n\t\t\t\tid = this.value.id;\n\t\t\t} else {\n\t\t\t\tid = this.value;\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tconst response = await this.$api.getFile(String(id));\n\t\t\t\tthis.image = response.data;\n\t\t\t} catch {\n\t\t\t\tthis.noFileAccess = true;\n\t\t\t}\n\t\t},\n\t\tdownloadFile() {\n\t\t\twindow.open(this.image.data.full_url);\n\t\t},\n\t\tsaveUpload(response) {\n\t\t\tthis.image = response.data.data;\n\t\t\t// We know that the primary key of directus_files is called `id`\n\t\t\tthis.$emit('input', this.image.id);\n\t\t},\n\t\tsetViewOptions(updates) {\n\t\t\tthis.viewOptionsOverride = {\n\t\t\t\t...this.viewOptionsOverride,\n\t\t\t\t...updates\n\t\t\t};\n\t\t},\n\t\tsetViewQuery(updates) {\n\t\t\tthis.viewQueryOverride = {\n\t\t\t\t...this.viewQueryOverride,\n\t\t\t\t...updates\n\t\t\t};\n\t\t},\n\t\tonSearchInput(value) {\n\t\t\tthis.setViewQuery({\n\t\t\t\tq: value\n\t\t\t});\n\t\t},\n\t\tsaveSelection(value) {\n\t\t\tconst file = value[value.length - 1];\n\n\t\t\tif (file) {\n\t\t\t\tthis.image = file;\n\t\t\t\tthis.$emit('input', file);\n\t\t\t} else {\n\t\t\t\tthis.image = null;\n\t\t\t\tthis.$emit('input', null);\n\t\t\t}\n\n\t\t\tthis.existing = false;\n\t\t},\n\t\tasync removeFile() {\n\t\t\tconst file = this.image;\n\t\t\tawait this.$api.deleteItem('directus_files', file.id);\n\t\t\tthis.$notify({\n\t\t\t\ttitle: this.$t('item_deleted'),\n\t\t\t\tcolor: 'green',\n\t\t\t\ticonMain: 'check'\n\t\t\t});\n\t\t\tthis.image = null;\n\t\t\tthis.$emit('input', null);\n\t\t}\n\t}\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.card,\n.uploader {\n\twidth: 100%;\n\tmax-width: var(--width-x-large);\n}\n\n.uploader {\n\theight: 236px;\n}\n\n.buttons {\n\tmargin-top: 24px;\n}\n\nbutton {\n\tdisplay: inline-block;\n\tmargin-left: 20px;\n\t&:first-of-type {\n\t\tmargin-left: 0;\n\t}\n}\n\n.body {\n\tpadding: 20px;\n}\n\n.search-input {\n\tborder-bottom: 2px solid var(--input-border-color);\n\t&::v-deep input {\n\t\tborder-radius: 0;\n\t\tborder: none;\n\t\tpadding-left: var(--page-padding);\n\t\theight: var(--header-height);\n\n\t\t&::placeholder {\n\t\t\tcolor: var(--input-placeholder-color);\n\t\t}\n\t}\n}\n\n.content {\n\t&::v-deep .v-layout {\n\t\theight: auto;\n\t\tmax-height: none;\n\t\toverflow: hidden;\n\t}\n}\n\n.notice {\n\tdisplay: flex;\n\tjustify-content: space-between;\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./input.vue?vue&type=template&id=a59f09ec&scoped=true&\"\nimport script from \"./input.vue?vue&type=script&lang=js&\"\nexport * from \"./input.vue?vue&type=script&lang=js&\"\nimport style0 from \"./input.vue?vue&type=style&index=0&id=a59f09ec&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"a59f09ec\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=style&index=0&id=a59f09ec&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./input.vue?vue&type=style&index=0&id=a59f09ec&lang=scss&scoped=true&\"","export default function getIcon(type) {\n\tif (type === 'application/pdf') {\n\t\treturn 'picture_as_pdf';\n\t}\n\n\tif (type.startsWith('application')) {\n\t\treturn 'insert_drive_file';\n\t}\n\n\tif (type.startsWith('image')) {\n\t\treturn 'crop_original';\n\t}\n\n\tif (type.startsWith('video')) {\n\t\treturn 'videocam';\n\t}\n\n\tif (type.startsWith('code')) {\n\t\treturn 'code';\n\t}\n\n\tif (type.startsWith('audio')) {\n\t\treturn 'audiotrack';\n\t}\n\n\treturn 'save';\n}\n"],"sourceRoot":""}