{"version":3,"sources":["webpack://file-manager//usr/src/app/app/javascript/channels|sync|/_channel\\.js$/","webpack://file-manager//usr/src/app/app/javascript/controllers|sync|/\\.js$/","webpack://file-manager/./app/javascript/channels/index.js","webpack://file-manager/./app/javascript/controllers/dashboard_controller.js","webpack://file-manager/./app/javascript/controllers/index.js","webpack://file-manager/./app/javascript/controllers/search_controller.js","webpack://file-manager/./app/javascript/packs/accessories/index.js","webpack://file-manager/./app/javascript/packs/application.js","webpack://file-manager/./app/javascript/packs/asset_permissions/index.js","webpack://file-manager/./app/javascript/packs/dashboard/index.js","webpack://file-manager/./app/javascript/packs/groups/index.js","webpack://file-manager/./app/javascript/packs/members/index.js","webpack://file-manager/./app/javascript/packs/notes/index.js","webpack://file-manager/./app/javascript/packs/password/index.js","webpack://file-manager/./app/javascript/packs/trashs/index.js","webpack://file-manager/./app/javascript/packs/users/index.js"],"names":["webpackEmptyContext","req","e","Error","code","keys","resolve","id","module","exports","map","webpackContext","webpackContextResolve","__webpack_require__","o","Object","channels","require","forEach","search","Rails","fire","this","formTarget","handleSearchResults","event","detail","xhr","resultsTarget","innerHTML","response","Controller","targets","application","Application","context","load","definitionsFromContext","connect","lastSearchWord","clearTimeout","timeout","setTimeout","$","value","handleResults","path","csrfToken","document","querySelector","getAttribute","on","updateAssetName","url","name","data","type","headers","error","show","css","hide","get","focus","elementID","prefix","slice","indexOf","length","hasClass","isPressEnter","key","preventDefault","fadeOut","remove","flatpickr","enableTime","dateFormat","onReady","selectedDates","dateStr","instance","element","defaultValue","_input","onClose","className","parentElement","expiry_date","lastIndexOf","disable","date","yesterday","Date","setDate","getDate","window","Turbolinks","ActiveStorage","stopPropagation","email","target","test","element_id","asset_id","success","location","reload","permissionID","permission","html","val","mode","defaultDate","includes","URL","split","pop","prefixGroup","prefixUser","groupID","user_id","userID","clickedEdit","target_id","note_id_index","note_id","submitPassword","attr","assetID","searchParams","URLSearchParams","href","clickTrashRecovery","method","fp_incr","click_user_action"],"mappings":"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","file":"js/application-cfefa52b4fcca804ada5.js","sourcesContent":["function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nwebpackEmptyContext.id = 6463;\nmodule.exports = webpackEmptyContext;","var map = {\n\t\"./asset_controller.js\": 7043,\n\t\"./dashboard_controller.js\": 5367,\n\t\"./index.js\": 9516,\n\t\"./search_controller.js\": 3177,\n\t\"controllers/asset_controller.js\": 7043,\n\t\"controllers/dashboard_controller.js\": 5367,\n\t\"controllers/index.js\": 9516,\n\t\"controllers/search_controller.js\": 3177\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 3857;","// Load all the channels within this directory and all subdirectories.\n// Channel files must be named *_channel.js.\n\nconst channels = require.context('.', true, /_channel\\.js$/)\nchannels.keys().forEach(channels)\n","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [\"results\", \"form\"];\n\n search() {\n Rails.fire(this.formTarget, 'submit');\n }\n\n handleSearchResults(event) {\n const [data, status, xhr] = event.detail\n\n this.resultsTarget.innerHTML = xhr.response\n }\n}\n","import { Application } from \"stimulus\"\nimport { definitionsFromContext } from \"stimulus/webpack-helpers\"\n\nconst application = Application.start()\nconst context = require.context(\".\", true, /\\.js$/)\napplication.load(definitionsFromContext(context))\n","import { Controller } from \"stimulus\"\n\nexport default class extends Controller {\n static targets = [\"results\", \"form\"];\n\n connect() {\n this.lastSearchWord = '';\n }\n\n search() {\n clearTimeout(this.timeout)\n this.timeout = setTimeout(() => {\n this.lastSearchWord = $(this.formTarget)[0][0].value;\n Rails.fire(this.formTarget, 'submit');\n }, 150);\n }\n\n handleResults(event) {\n const [data, status, xhr] = event.detail\n const searchWord = event.path[0][0].value;\n if (searchWord != this.lastSearchWord) return;\n\n this.resultsTarget.innerHTML = xhr.response\n }\n}\n","import $ from 'jquery';\n\nconst metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\nconst csrfToken = metaCsrf.getAttribute('content');\n\n$(document).on('turbolinks:load', function () {\n // open/close popup\n $(\".signout\").on(\"click\", function () {\n if ($(\"#signout-popup\").css(\"display\") == 'none') {\n $(\"#signout-popup\").show();\n } else {\n $(\"#signout-popup\").hide();\n }\n });\n\n // click editable label\n $(\"#editable-label\").on(\"click\", function () {\n $(\"#edit-label-input\").show();\n $(\".edit-label-input-text\").get(0).focus();\n $(\"#editable-label\").hide();\n });\n\n function updateAssetName(url, name) {\n const data = {\n name\n };\n $.ajax({\n url,\n type: 'PATCH',\n headers: {\n 'x-csrf-token': csrfToken\n },\n data,\n error: () => {\n $(\"#invalid-new-label\").show();\n }\n });\n }\n\n // stop focus editable label\n $(\".edit-label-input-text\").on(\"focusout\", function () {\n const elementID = this.id;\n const prefix = \"edit-label-input-text-\";\n const id = elementID.slice(elementID.indexOf(prefix) + prefix.length);\n const name = this.value;\n if ($(this).hasClass('asset')) {\n updateAssetName(`/assets/${id}`, name);\n } else if ($(this).hasClass('group')) {\n updateAssetName(`/groups/${id}`, name);\n }\n });\n\n let isPressEnter = false;\n // click enter on editable label\n $(\".edit-label-input-text\").on(\"keydown\", function (e) {\n if (e.key == \"Enter\" && !isPressEnter) {\n isPressEnter = true;\n const elementID = this.id;\n const prefix = \"edit-label-input-text-\";\n const id = elementID.slice(elementID.indexOf(prefix) + prefix.length);\n const name = this.value;\n if ($(this).hasClass('asset')) {\n updateAssetName(`/assets/${id}`, name);\n } else if ($(this).hasClass('group')) {\n updateAssetName(`/groups/${id}`, name);\n }\n e.preventDefault();\n }\n });\n\n // remove flash msg after 5 seconds\n setTimeout(() => {\n $(\".flash\").fadeOut(1000);\n setTimeout(() => {\n $(\".flash\").remove()\n }, 1000);\n }, 4000);\n\n // flatpickr\n flatpickr('.change-expiry-date', {\n enableTime: true,\n dateFormat: \"d M Y, H:i\",\n onReady: function (selectedDates, dateStr, instance) {\n const value = instance.element.defaultValue;\n instance._input.value = value;\n },\n onClose: function (selectedDates, dateStr, instance) {\n const className = \"change-expiry-date\";\n const id = instance.element.parentElement.id;\n const elementID = instance.element.id;\n const type = elementID.slice(elementID.indexOf(className) + className.length + 1);\n const data = {\n [type]: {\n expiry_date: selectedDates[0]\n }\n };\n let url = '/assets/';\n if (type == 'transfer_link') {\n const assetID = id.slice(0, id.lastIndexOf('-'))\n const transferID = id.slice(id.lastIndexOf('-') + 1, );\n url += assetID + '/transfer_links/' + transferID;\n } else {\n url += id;\n }\n $.ajax({\n url,\n type: 'PATCH',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data\n });\n },\n disable: [\n function (date) {\n // return true to disable, should enable today\n const yesterday = new Date();\n yesterday.setDate(yesterday.getDate() - 1);\n return date < yesterday;\n }\n ],\n });\n});\n","// This file is automatically compiled by Webpack, along with any other files\n// present in this directory. You're encouraged to place your actual application logic in\n// a relevant structure within app/javascript and only use these pack files to reference\n// that code so it'll be compiled.\n\nimport Rails from \"@rails/ujs\";\nimport Turbolinks from \"turbolinks\";\nimport * as ActiveStorage from \"@rails/activestorage\";\nimport \"../layouts/application.css\";\nimport \"channels\";\nimport \"controllers\";\n\nrequire(\"packs/groups\");\nrequire(\"packs/assets\");\nrequire(\"packs/notes\");\nrequire(\"packs/accessories\");\nrequire(\"packs/trashs\");\nrequire(\"packs/members\");\nrequire(\"packs/transfer_links\");\nrequire(\"packs/users\");\nrequire(\"packs/password\");\nrequire(\"packs/asset_permissions\");\nrequire(\"packs/dashboard\");\n\nwindow.Rails = Rails\nRails.start()\nTurbolinks.start()\nActiveStorage.start()\n","import $ from 'jquery';\nrequire(\"dropzone\");\n\nconst metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\nconst csrfToken = metaCsrf.getAttribute('content');\n\n$(document).on('turbolinks:load', function () {\n // stop close popup when click inside popup content\n $(\".stimulus\").on(\"click\", \".content-share-to-member-modal\", function (e) {\n e.stopPropagation();\n return;\n });\n\n // close share to member modal\n $(\".stimulus\").on(\"click\", \".bg-share-to-member-modal\", function (e) {\n $('.share-to-member-modal').hide();\n });\n\n // click done button\n $(\".stimulus\").on(\"click\", \".share-to-member-modal-done\", function (e) {\n $('.share-to-member-modal').hide();\n });\n\n let isPressEnter = false;\n // add member\n $(\".stimulus\").on(\"keydown\", \".form-share-asset\", function (e) {\n if (e.key == \"Enter\" && !isPressEnter) {\n const email = e.target.value;\n const validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/;\n if (!validRegex.test(email)) {\n $(\"#email-error\").show();\n return;\n }\n isPressEnter = true;\n $(\"#email-error\").hide();\n\n const element_id = e.target.id;\n const prefix = \"form-share-asset-\";\n const assetID = element_id.slice(element_id.indexOf(prefix) + prefix.length);\n const data = {\n email,\n asset_id: assetID\n };\n $.ajax({\n url: `/asset_permissions`,\n type: 'POST',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data,\n success: function () {\n window.location.reload();\n }\n });\n }\n });\n\n // Change select permission\n $(\".stimulus\").on(\"change\", \".select-asset-permission\", function (e) {\n const element_id = e.target.id;\n const prefix = \"select-asset-permission-\";\n const permissionID = element_id.slice(element_id.indexOf(prefix) + prefix.length);\n const data = {\n permission: e.target.value\n };\n\n $.ajax({\n url: `/asset_permissions/${permissionID}`,\n type: 'PUT',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data: data\n });\n });\n\n // click remvoe asset permission button\n $(\".stimulus\").on(\"click\", \".remove-asset-permission\", function (e) {\n const element_id = e.target.id;\n const prefix = \"remove-asset-permission-\";\n const permissionID = element_id.slice(element_id.indexOf(prefix) + prefix.length);\n\n $(\"#confirm-asset-title\").html('Remove this user from the asset?');\n $(\".confirm-asset-confirm\").html('YES, REMOVE NOW.');\n $(\"#confirm-asset\").val(`permission_${permissionID}`);\n $(\"#confirm-asset\").show();\n });\n});\n","import $ from 'jquery';\nimport flatpickr from 'flatpickr';\n\n$(document).on('turbolinks:load', function () {\n // flatpickr\n flatpickr('#dashboard-search-time', {\n dateFormat: \"d M Y\",\n mode: \"range\",\n defaultDate: $(\"#dashboard-search-time\")[0]?.defaultValue\n });\n});\n","import $ from 'jquery';\n\n$(document).on('turbolinks:load', function () {\n // open new asset modal when click button\n $(\"#new-group\").on(\"click\", function () {\n $(\"#new-group-modal\").show();\n });\n\n // stop close modal when click inside modal content\n $(\"#content-new-group-modal\").on(\"click\", function (e) {\n e.stopPropagation();\n return;\n });\n\n // close modal\n $(\"#bg-new-group-modal\").on(\"click\", function (e) {\n $(\"#new-group-modal\").hide();\n });\n});\n","import $, { ready } from 'jquery'\n\n$(document).on('turbolinks:load', function () {\n const metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\n const csrfToken = metaCsrf.getAttribute('content');\n\n // show manage member modal after invite new member\n if (window.location.search.includes('invited')) {\n $(\"#members-modal\").show();\n }\n // click manage member button\n $(\"#manage-member\").on(\"click\", function (e) {\n e.stopPropagation();\n $(\"#members-modal\").show();\n });\n\n let isPressEnter = false;\n // add member\n $(\"#form-add-member\").on(\"keydown\", function (e) {\n if (e.key == \"Enter\" && !isPressEnter) {\n const email = e.target.value;\n const validRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/;\n if (!validRegex.test(email)) {\n $(\"#email-error\").show();\n e.preventDefault();\n return;\n }\n isPressEnter = true;\n $(\"#email-error\").hide();\n\n const groupIDWithQuery = document.URL.split(\"/\").pop();\n const groupID = groupIDWithQuery.split(\"?\")[0];\n const data = {\n id: groupID,\n email\n };\n $.ajax({\n url: `/members`,\n type: 'POST',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data,\n success: function () {\n if (!window.location.search.includes('invited')) {\n window.location.search += '&invited';\n }\n else {\n window.location.reload();\n }\n }\n });\n e.preventDefault();\n }\n })\n\n // Change select permission\n $(\".select-user\").on(\"change\", function (e) {\n const element_id = e.target.id;\n const prefixGroup = \"select-group-\";\n const prefixUser = \"-user-\";\n const groupID = element_id.slice(element_id.indexOf(prefixGroup) + prefixGroup.length, element_id.indexOf(prefixUser))\n const userID = element_id.slice(element_id.indexOf(prefixUser) + prefixUser.length)\n\n const data = {\n user_id: userID,\n permission: e.target.value\n };\n\n $.ajax({\n url: `/members/${groupID}`,\n type: 'PUT',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data: data\n });\n });\n\n // click member modal done button\n $(\"#members-modal-done\").on(\"click\", function (e) {\n $(\"#members-modal\").hide();\n });\n\n // stop close modal when click inside modal content\n $(\".content-members-modal\").on(\"click\", function (e) {\n e.stopPropagation();\n return;\n });\n\n // click background\n $(\".bg-members-modal\").on(\"click\", function (e) {\n $(\"#members-modal\").hide();\n });\n\n // click permanent delete button\n $(\".member-delete\").on(\"click\", function (e) {\n const element_id = e.target.id;\n const prefix = \"member-delete-\";\n const userID = element_id.slice(element_id.indexOf(prefix) + prefix.length);\n $(\"#member-confirm-title\").html('Remove this member?');\n $(\".member-confirm-confirm\").html('YES, REMOVE NOW.');\n $(\"#confirm-modal\").val(userID);\n $(\"#confirm-modal\").show();\n });\n\n // click discard button\n $(\"#member-confirm-discard\").on(\"click\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n // click confirm button\n $(\".member-confirm-confirm\").on(\"click\", function (e) {\n e.stopPropagation();\n const groupID = document.URL.split(\"/\").pop();\n const userID = $(\"#confirm-modal\").val();\n\n const data = {\n user_id: userID\n };\n\n $.ajax({\n url: `/members/${groupID}`,\n type: 'DELETE',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data,\n success: function () {\n $(\"#confirm-modal\").hide();\n $(\"#complete-modal\").show();\n }\n });\n });\n\n // click background\n $(\".bg-member-confirm-modal\").on(\"click\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n $(\".left-group\").on(\"click\", function () {\n const elementID = this.id;\n const prefix = \"left-group-\";\n const groupID = elementID.slice(elementID.indexOf(prefix) + prefix.length);\n $(\"#left-group-confirm-title\").html('Left this group?');\n $(\".left-group-confirm-confirm\").html('YES, LEFT NOW.');\n $(\"#left-group-confirm-modal\").val(groupID);\n $(\"#left-group-confirm-modal\").show();\n });\n\n // click discard button\n $(\"#left-group-confirm-discard\").on(\"click\", function (e) {\n $(\"#left-group-confirm-modal\").hide();\n });\n\n // click confirm button\n $(\".left-group-confirm-confirm\").on(\"click\", function (e) {\n e.stopPropagation();\n const groupID = $(\"#left-group-confirm-modal\").val();\n\n $.ajax({\n url: `/members/${groupID}/left_group`,\n type: 'DELETE',\n headers: {\n 'x-csrf-token': csrfToken,\n }\n });\n });\n\n // click background\n $(\".bg-left-group-confirm-modal\").on(\"click\", function (e) {\n $(\"#left-group-confirm-modal\").hide();\n });\n\n // stop close modal when click inside left group content\n $(\".content-left-group-confirm-modal\").on(\"click\", function (e) {\n e.stopPropagation();\n return;\n });\n});\n","import $ from 'jquery';\n\n$(document).on('turbolinks:load', function () {\n // check edit button is click or not\n let clickedEdit = false;\n\n // show panel when hover the note-area\n $(\".note-area\").on(\"mouseenter\", function(e) {\n if (clickedEdit) {\n return false;\n }\n const target_id = e.target.id\n const note_id_index = target_id.lastIndexOf('-') + 1\n if ($('#edit-form-' + target_id.slice(note_id_index)).css('display') == 'none') {\n $(\"#panel-\" + target_id).show();\n }\n })\n\n // hide panel when not hover the note-area\n $(\".note-area\").on(\"mouseleave\", function(e) {\n if (clickedEdit) {\n return false;\n }\n $(\"#panel-\" + e.target.id).hide();\n })\n\n // show edit and hide note when click edit note\n $(\".edit\").on(\"click\", function(e) {\n clickedEdit = true;\n const target_id = e.target.id;\n $(\"#note-\" + target_id).hide();\n $(\"#edit-form-\" + target_id).show();\n $(\"#panel-note-area-\" + target_id).hide();\n });\n\n // hide edit and show note when click cancel\n $(\".cancel\").on(\"click\", function(e) {\n clickedEdit = false;\n const target_id = e.target.id;\n $(\"#edit-form-\" + target_id).hide();\n $(\"#note-\" + target_id).show();\n $(\"#panel-note-area-\" + target_id).show();\n });\n\n // open modal\n $(\".delete-note\").on(\"click\", function(e) {\n $(\".delete-note-modal\").show();\n })\n\n // stop close modal when click inside modal content\n $(\".content-delete-note-modal\").on(\"click\", function (e) {\n e.stopPropagation();\n return;\n });\n\n // close modal\n $(\".bg-delete-note-modal, .cancel-delete-note\").on(\"click\", function (e) {\n $(\".delete-note-modal\").hide();\n });\n\n // enter password before access folder\n $('.delete-note-ajax').on(\"click\", function(e) {\n const metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\n const csrfToken = metaCsrf.getAttribute('content');\n \n const asset_id = this.id.slice(this.id.indexOf('-') + 1, this.id.indexOf('_'));\n const note_id = this.id.slice(this.id.lastIndexOf('-') + 1);\n\n $.ajax({\n url: `/assets/${asset_id}/notes/${note_id}`,\n type: 'DELETE',\n headers: {\n 'x-csrf-token': csrfToken,\n 'content-type': 'application/json',\n 'accept': 'application/json'\n }\n });\n })\n});\n","import $ from 'jquery';\n\nconst metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\nconst csrfToken = metaCsrf.getAttribute('content');\n\nfunction submitPassword() {\n const id = $(\".password-submit\").attr(\"id\");\n const assetID = id.slice(id.indexOf(\"-\") + 1);\n const searchParams = new URLSearchParams(window.location.search)\n let path = `/assets/${assetID}`\n if (searchParams.get('transfer_link_uuid')) {\n path = `/guests/${assetID}?transfer_link_uuid=${searchParams.get('transfer_link_uuid')}`\n }\n setTimeout(() => {\n window.location.href = path;\n }, 2000); // delay 2 seconds to return to asset page\n}\n\n$(document).on('turbolinks:load', function () {\n $(\".password-submit\").on(\"click\", function (e) {\n submitPassword();\n });\n\n $(\".text-password-download\").on(\"keydown\", function (e) {\n if (e.key == \"Enter\") {\n submitPassword();\n }\n });\n});\n","import $ from 'jquery';\nimport flatpickr from 'flatpickr';\n\n$(document).on('turbolinks:load', function () {\n const metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\n const csrfToken = metaCsrf.getAttribute('content');\n\n function clickTrashRecovery(e) {\n $(\".popup-action\").hide();\n $(\"#trash-confirm-title\").html('Recovery this file?');\n $(\".trash-confirm-confirm\").html('YES, I’LL RECOVERY.');\n $(\"#complete-title\").html('Success Recovery!');\n $(\"#confirm-modal\").val([e.target.id, 'recovery']);\n $(\"#confirm-modal\").show();\n $(\"#expiry-date-error\").hide();\n }\n\n // click recovery button\n $(\".stimulus\").on(\"click\", \".trash-recovery-without-expiry-date\", function (e) {\n $(\"#recovery-update-date\").hide();\n clickTrashRecovery(e);\n });\n\n // click recovery button\n $(\".stimulus\").on(\"click\", \".trash-recovery-with-expiry-date\", function (e) {\n $(\"#recovery-update-date\").show();\n clickTrashRecovery(e);\n });\n\n // click permanent delete button\n $(\".stimulus\").on(\"click\", \".trash-delete\", function (e) {\n $(\".popup-action\").hide();\n $(\"#trash-confirm-title\").html('Delete Permanent?');\n $(\".trash-confirm-confirm\").html('YES, DELETE NOW.');\n $(\"#recovery-update-date\").hide();\n $(\"#complete-title\").html('Success Delete');\n $(\"#confirm-modal\").val([e.target.id, 'delete']);\n $(\"#confirm-modal\").show();\n $(\"#expiry-date-error\").hide();\n });\n\n // click confirm modal backgronud\n $(\".bg-popup-action-trash\").on(\"click\", function (e) {\n $(\".popup-action\").hide();\n });\n\n // click confirm modal discard button\n $(\"#trash-confirm-discard\").on(\"click\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n // click confirm modal confirm(recovery/permanent delete) button\n $(\".trash-confirm-confirm\").on(\"click\", function (e) {\n e.stopPropagation();\n const asset_id = $(\"#confirm-modal\").val()[0];\n const method = $(\"#confirm-modal\").val()[1];\n const data = {\n expiry_date: $(\"#recover-expiry-date\").val()\n };\n $.ajax({\n url: `/assets/trashs/${asset_id}`,\n type: method == 'recovery' ? 'PUT' : 'DELETE',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n data,\n success: function () {\n $(\"#confirm-modal\").hide();\n $(\"#complete-modal\").show();\n $(\"#expiry-date-error\").hide();\n },\n error: function () {\n $(\"#expiry-date-error\").show();\n }\n });\n });\n\n // click confirm modal content\n $(\".content-trash-confirm-modal\").on(\"click\", function (e) {\n e.stopPropagation();\n return;\n });\n\n // click confirm modal background\n $(\".bg-trash-confirm-modal\").on(\"click\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n // flatpickr\n flatpickr(\"#recover-expiry-date\", {\n enableTime: true,\n dateFormat: \"d/m/Y h:i K\",\n defaultDate: new Date().fp_incr(7),\n onClose: function (selectedDates, dateStr, instance) {\n $(\"#recover-expiry-date\").val(selectedDates[0]);\n },\n disable: [\n function (date) {\n // return true to disable, should enable today\n const yesterday = new Date();\n yesterday.setDate(yesterday.getDate() - 1);\n return date < yesterday;\n\n }\n ],\n });\n});\n","import $ from 'jquery'\n\n$(document).on('turbolinks:load', function () {\n const metaCsrf = document.querySelector(\"meta[name='csrf-token']\");\n const csrfToken = metaCsrf.getAttribute('content');\n\n function click_user_action(userID, method) {\n $(\".popup-action\").hide();\n $(\"#user-confirm-title\").html(`Are you sure to ${method} this user?`);\n $(\".user-confirm-confirm\").html('YES');\n $(\"#confirm-modal\").val([userID, method]);\n $(\"#confirm-modal\").show();\n }\n\n // click activate button\n $(\".stimulus\").on(\"click\", \".activate-user\", function (e) {\n const userID = this.id.split('-').pop();\n click_user_action(userID, 'activate');\n });\n\n // click ban button\n $(\".stimulus\").on(\"click\", \".ban-user\", function (e) {\n const userID = this.id.split('-').pop();\n click_user_action(userID, 'ban');\n });\n\n // click delete button\n $(\".stimulus\").on(\"click\", \".delete-user\", function (e) {\n const userID = this.id.split('-').pop();\n click_user_action(userID, 'delete');\n });\n\n // click confirm modal discard button\n $(\".stimulus\").on(\"click\", \"#user-confirm-discard\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n // click confirm modal confirm button\n $(\".stimulus\").on(\"click\", \".user-confirm-confirm\", function (e) {\n const userID = $(\"#confirm-modal\").val()[0];\n const method = $(\"#confirm-modal\").val()[1];\n $.ajax({\n url: `/users/${userID}/${method}`,\n type: 'PUT',\n headers: {\n 'x-csrf-token': csrfToken,\n },\n success: function () {\n $(\"#confirm-modal\").hide();\n $(\"#complete-modal\").show();\n }\n });\n });\n\n // click popup action backgronud\n $(\".stimulus\").on(\"click\", \".bg-popup-action-user\", function (e) {\n $(\".popup-action\").hide();\n });\n\n // click confirm modal background\n $(\".stimulus\").on(\"click\", \".bg-user-confirm-modal\", function (e) {\n $(\"#confirm-modal\").hide();\n });\n\n // click confirm modal background\n $(\".stimulus\").on(\"click\", \".content-user-confirm-modal\", function (e) {\n e.stopPropagation();\n return;\n });\n});\n"],"sourceRoot":""}