mirror of
https://github.com/nextcloud/server.git
synced 2026-02-03 20:41:22 -05:00
2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
import{F as p,c as l}from"./index-CE6ly_uD.chunk.mjs";import{c as X}from"./dav-B62B0Btx.chunk.mjs";import{e as L,g as K}from"./index-6_gsQFyp.chunk.mjs";import{a as Y,t as i}from"./translation-DoG5ZELJ-2ffMJaM4.chunk.mjs";import{c as $}from"./index-D9L8KHF3.chunk.mjs";import{a as R}from"./createElementId-DhjFt1I9-Bjk2333q.chunk.mjs";import"./PencilOutline-BPy7Lagu.chunk.mjs";import{c as N}from"./logger-D3RVzcfQ-iUjwSNGe.chunk.mjs";import"./index-1IDLJUNm.chunk.mjs";import{N as ee}from"./NcBreadcrumbs-DYfGaSjT-kISKYtAK.chunk.mjs";import{_ as te}from"./NcDateTime.vue_vue_type_script_setup_true_lang-BhB8yA4U-Bb9gAlar.chunk.mjs";import{N as re,s as ie}from"./index-Dzo4H_NA.chunk.mjs";import"./NcAvatar-DmUGApWA-JvdYd-8p.chunk.mjs";import"./NcRichText-CBMtJzE_-DhwkZADF.chunk.mjs";import"./mdi-kAZc0JKn.chunk.mjs";import"./NcCheckboxRadioSwitch-BCSKF7Tk-BDM2s1GW.chunk.mjs";import"./NcChip-D8tGFzRl-BmzaEo05.chunk.mjs";import"./NcColorPicker-Kc0JqRtp-DZI9oazy.chunk.mjs";import"./TrayArrowDown-zMGl3y4Q.chunk.mjs";import"./NcSelect-Czzsi3P_-wYuKB0zM.chunk.mjs";import"./NcEmojiPicker-pM4Pg2yq-BDMmjn1X.chunk.mjs";import"./Plus-BVjFGi0H.chunk.mjs";/* empty css */import"./NcInputField-Bwsh2aHY-Bf_22pmD.chunk.mjs";import{N as M}from"./NcNoteCard-CVhtNL04-CdF6Qoal.chunk.mjs";import"./NcPasswordField-djttkA5Q-DvTgf1Bu.chunk.mjs";import"./TrashCanOutline-DKx7CxBb.chunk.mjs";import"./index-CqGlcBjK.chunk.mjs";import"./ContentCopy-caJ7vqeg.chunk.mjs";import"./NcUserBubble-DPAmU2_J-B8QraJ_f.chunk.mjs";import"./NcUserStatusIcon-CGEf7fej-CR1VhaiT.chunk.mjs";import"./colors-Go3zmZRD-Bml2X1sg.chunk.mjs";import{b as ae,O as ne,r as m,A as se,c as y,l as I,o as b,w as d,k as oe,H as de,e as D,u as n,g as u,t as c}from"./runtime-dom.esm-bundler-DSTOTAEf.chunk.mjs";import{a as f,d as T}from"./index-JpgrUA2Z-D4yQFKNw.chunk.mjs";import{a as le}from"./index-xFugdZPW.chunk.mjs";import"./folder-CeyZUHai-CVGj8rKf.chunk.mjs";import"./string_decoder-BO00msnV.chunk.mjs";import"./index-BlJ76-SL.chunk.mjs";const me='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-alarm-off" viewBox="0 0 24 24"><path d="M8,3.28L6.6,1.86L5.74,2.57L7.16,4M16.47,18.39C15.26,19.39 13.7,20 12,20A7,7 0 0,1 5,13C5,11.3 5.61,9.74 6.61,8.53M2.92,2.29L1.65,3.57L3,4.9L1.87,5.83L3.29,7.25L4.4,6.31L5.2,7.11C3.83,8.69 3,10.75 3,13A9,9 0 0,0 12,22C14.25,22 16.31,21.17 17.89,19.8L20.09,22L21.36,20.73L3.89,3.27L2.92,2.29M22,5.72L17.4,1.86L16.11,3.39L20.71,7.25L22,5.72M12,6A7,7 0 0,1 19,13C19,13.84 18.84,14.65 18.57,15.4L20.09,16.92C20.67,15.73 21,14.41 21,13A9,9 0 0,0 12,4C10.59,4 9.27,4.33 8.08,4.91L9.6,6.43C10.35,6.16 11.16,6 12,6Z" /></svg>';async function O(e,t){const r=R("/apps/files_reminders/api/v1/{fileId}",{fileId:e});return(await $.put(r,{dueDate:t.toISOString()})).data.ocs.data}async function B(e){const t=R("/apps/files_reminders/api/v1/{fileId}",{fileId:e});return(await $.delete(t)).data.ocs.data}var g=(e=>(e.LaterToday="later-today",e.Tomorrow="tomorrow",e.ThisWeekend="this-weekend",e.NextWeek="next-week",e))(g||{});function F(){const e=new Date;return e.setHours(0,0,0,0),e.setDate(e.getDate()-e.getDay()+1),new Date(e)}function V(e){new Date(e).setHours(0,0,0,0);const t=new Date(e.getFullYear(),0,1,0,0,0,0),r=(e.getTime()-t.getTime())/864e5;return Math.ceil((r+t.getDay()+1)/7)}function ue(e,t){return V(e)===V(t)&&e.getFullYear()===t.getFullYear()}function ce(e,t){return e.getDate()===t.getDate()&&e.getMonth()===t.getMonth()&&e.getFullYear()===t.getFullYear()}function _(e){return{"later-today":()=>{const t=new Date,r=new Date;r.setHours(18,0,0,0);const s=new Date;return s.setHours(17,0,0,0),t>=s?null:r},tomorrow:()=>{const t=new Date,r=new Date;return r.setDate(t.getDate()+1),r.setHours(8,0,0,0),r},"this-weekend":()=>{const t=new Date;if([5,6,0].includes(t.getDay()))return null;const r=new Date,s=F();return r.setDate(s.getDate()+5),r.setHours(8,0,0,0),r},"next-week":()=>{if(new Date().getDay()===0)return null;const t=new Date,r=F();return t.setDate(r.getDate()+7),t.setHours(8,0,0,0),t}}[e]()}function fe(){const e=new Date,t=new Date;return t.setHours(e.getHours()+2,0,0,0),t}function P(e){let t={hour:"numeric",minute:"2-digit"};const r=new Date;return ce(e,r)||(t={...t,weekday:"short"}),ue(e,r)||(t={...t,month:"short",day:"numeric"}),e.getFullYear()!==r.getFullYear()&&(t={...t,year:"numeric"}),e.toLocaleString(Y(),t)}function h(e){let t={month:"long",day:"numeric",weekday:"long",hour:"numeric",minute:"2-digit"};const r=new Date;return e.getFullYear()!==r.getFullYear()&&(t={...t,year:"numeric"}),e.toLocaleString(Y(),t)}const pe=new p({id:"clear-reminder",displayName:()=>i("files_reminders","Clear reminder"),title:({nodes:e})=>{const t=e.at(0),r=new Date(t.attributes["reminder-due-date"]);return`${i("files_reminders","Clear reminder")} – ${h(r)}`},iconSvgInline:()=>me,enabled:({nodes:e})=>e.length!==1?!1:!!e.at(0).attributes["reminder-due-date"],async exec({nodes:e}){const t=e.at(0);if(t.fileid)try{return await B(t.fileid),t.attributes["reminder-due-date"]="",L("files:node:updated",t),!0}catch{return!1}return null},order:19}),W='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-alarm" viewBox="0 0 24 24"><path d="M12,20A7,7 0 0,1 5,13A7,7 0 0,1 12,6A7,7 0 0,1 19,13A7,7 0 0,1 12,20M12,4A9,9 0 0,0 3,13A9,9 0 0,0 12,22A9,9 0 0,0 21,13A9,9 0 0,0 12,4M12.5,8H11V14L15.75,16.85L16.5,15.62L12.5,13.25V8M7.88,3.39L6.6,1.86L2,5.71L3.29,7.24L7.88,3.39M22,5.72L17.4,1.86L16.11,3.39L20.71,7.25L22,5.72Z" /></svg>',S=K().setApp("files_reminders").detectUser().build(),ge=ae({__name:"SetCustomReminderModal",props:{node:{}},emits:["close"],setup(e,{emit:t}){const r=e,s=t,C=m(!1),k=m(!1),w=m(!0),o=m(),x=m(new Date);ne(()=>{const a=r.node.attributes["reminder-due-date"]?new Date(r.node.attributes["reminder-due-date"]):void 0;C.value=!!a,w.value=!0,k.value=!0,o.value=a??fe(),x.value=new Date}),se(()=>{const a=document.getElementById("set-custom-reminder");a.focus(),C.value||a.showPicker()});async function j(){if(!(o.value instanceof Date)||isNaN(o.value.getTime())){f(i("files_reminders","Please choose a valid date & time"));return}try{await O(r.node.fileid,o.value);const a=r.node.clone();a.attributes["reminder-due-date"]=o.value.toISOString(),L("files:node:updated",a),T(i("files_reminders",'Reminder set for "{fileName}"',{fileName:r.node.displayname})),v()}catch(a){S.error("Failed to set reminder",{error:a}),f(i("files_reminders","Failed to set reminder"))}}async function G(){try{await B(r.node.fileid);const a=r.node.clone();a.attributes["reminder-due-date"]="",L("files:node:updated",a),T(i("files_reminders",'Reminder cleared for "{fileName}"',{fileName:r.node.displayname})),v()}catch(a){S.error("Failed to clear reminder",{error:a}),f(i("files_reminders","Failed to clear reminder"))}}function v(){k.value=!1,s("close")}function J(){const a=document.getElementById("set-custom-reminder");w.value=a.checkValidity()}return(a,A)=>k.value?(b(),y(n(re),{key:0,name:n(i)("files_reminders","Set reminder for '{fileName}'",{fileName:e.node.displayname}),outTransition:"",size:"small",closeOnClickOutside:"",onClosing:v},{actions:d(()=>[D(n(N),{variant:"tertiary",onClick:v},{default:d(()=>[u(c(n(i)("files_reminders","Cancel")),1)]),_:1}),C.value?(b(),y(n(N),{key:0,onClick:G},{default:d(()=>[u(c(n(i)("files_reminders","Clear reminder")),1)]),_:1})):I("",!0),D(n(N),{disabled:!w.value,variant:"primary",form:"set-custom-reminder-form",type:"submit"},{default:d(()=>[u(c(n(i)("files_reminders","Set reminder")),1)]),_:1},8,["disabled"])]),default:d(()=>[oe("form",{id:"set-custom-reminder-form",class:"custom-reminder-modal",onSubmit:de(j,["prevent"])},[D(n(ee),{id:"set-custom-reminder",modelValue:o.value,"onUpdate:modelValue":A[0]||(A[0]=Q=>o.value=Q),label:n(i)("files_reminders","Reminder at custom date & time"),min:x.value,required:!0,type:"datetime-local",onInput:J},null,8,["modelValue","label","min"]),w.value&&o.value?(b(),y(n(M),{key:0,type:"info"},{default:d(()=>[u(c(n(i)("files_reminders","We will remind you of this file"))+" ",1),D(n(te),{timestamp:o.value},null,8,["timestamp"])]),_:1})):(b(),y(n(M),{key:1,type:"error"},{default:d(()=>[u(c(n(i)("files_reminders","Please choose a valid date & time")),1)]),_:1}))],32)]),_:1},8,["name"])):I("",!0)}}),we=le(ge,[["__scopeId","data-v-1cc1857f"]]);async function E(e){await ie(we,{node:e})}const ve=new p({id:"reminder-status",inline:()=>!0,displayName:()=>"",title:({nodes:e})=>{const t=e.at(0),r=new Date(t.attributes["reminder-due-date"]);return`${i("files_reminders","Reminder set")} – ${h(r)}`},iconSvgInline:()=>W,enabled:({nodes:e})=>e.length!==1?!1:!!e.at(0).attributes["reminder-due-date"],async exec({nodes:e}){const t=e.at(0);return await E(t),null},order:-15}),ye='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-calendar-clock" viewBox="0 0 24 24"><path d="M15,13H16.5V15.82L18.94,17.23L18.19,18.53L15,16.69V13M19,8H5V19H9.67C9.24,18.09 9,17.07 9,16A7,7 0 0,1 16,9C17.07,9 18.09,9.24 19,9.67V8M5,21C3.89,21 3,20.1 3,19V5C3,3.89 3.89,3 5,3H6V1H8V3H16V1H18V3H19A2,2 0 0,1 21,5V11.1C22.24,12.36 23,14.09 23,16A7,7 0 0,1 16,23C14.09,23 12.36,22.24 11.1,21H5M16,11.15A4.85,4.85 0 0,0 11.15,16C11.15,18.68 13.32,20.85 16,20.85A4.85,4.85 0 0,0 20.85,16C20.85,13.32 18.68,11.15 16,11.15Z" /></svg>',H="set-reminder-menu",be=new p({id:H,displayName:()=>i("files_reminders","Set reminder"),iconSvgInline:()=>W,enabled:({nodes:e,view:t})=>t.id==="trashbin"||e.length!==1?!1:e.at(0).attributes["reminder-due-date"]!==void 0,async exec(){return null},order:20}),De=new p({id:"set-reminder-custom",displayName:()=>i("files_reminders","Custom reminder"),title:()=>i("files_reminders","Reminder at custom date & time"),iconSvgInline:()=>ye,enabled:({nodes:e,view:t})=>t.id==="trashbin"||e.length!==1?!1:e.at(0).attributes["reminder-due-date"]!==void 0,parent:H,async exec({nodes:e}){const t=e.at(0);return E(t),null},order:22}),Z={dateTimePreset:g.LaterToday,label:i("files_reminders","Later today"),ariaLabel:i("files_reminders","Set reminder for later today"),dateString:"",verboseDateString:""},U={dateTimePreset:g.Tomorrow,label:i("files_reminders","Tomorrow"),ariaLabel:i("files_reminders","Set reminder for tomorrow"),dateString:"",verboseDateString:""},q={dateTimePreset:g.ThisWeekend,label:i("files_reminders","This weekend"),ariaLabel:i("files_reminders","Set reminder for this weekend"),dateString:"",verboseDateString:""},z={dateTimePreset:g.NextWeek,label:i("files_reminders","Next week"),ariaLabel:i("files_reminders","Set reminder for next week"),dateString:"",verboseDateString:""};function Le(e){return new p({id:`set-reminder-${e.dateTimePreset}`,displayName:()=>`${e.label} – ${e.dateString}`,title:()=>`${e.ariaLabel} – ${e.verboseDateString}`,iconSvgInline:()=>"<svg></svg>",enabled:({nodes:t,view:r})=>r.id==="trashbin"||t.length!==1?!1:t.at(0).attributes["reminder-due-date"]!==void 0&&!!_(e.dateTimePreset),parent:H,async exec({nodes:t}){const r=t.at(0);if(!r.fileid)return S.error("Failed to set reminder, missing file id"),f(i("files_reminders","Failed to set reminder")),null;try{const s=_(e.dateTimePreset);await O(r.fileid,s),r.attributes["reminder-due-date"]=s.toISOString(),L("files:node:updated",r),T(i("files_reminders",'Reminder set for "{fileName}"',{fileName:r.basename}))}catch(s){S.error("Failed to set reminder",{error:s}),f(i("files_reminders","Failed to set reminder"))}return null},order:21})}[Z,U,q,z].forEach(e=>{const t=_(e.dateTimePreset);t&&(e.dateString=P(t),e.verboseDateString=h(t),setInterval(()=>{const r=_(e.dateTimePreset);r&&(e.dateString=P(r),e.verboseDateString=h(r))},1e3*30*60))});const _e=[Z,U,q,z].map(Le);X("nc:reminder-due-date",{nc:"http://nextcloud.org/ns"}),l(ve),l(pe),l(be),l(De),_e.forEach(e=>l(e));
|
||
//# sourceMappingURL=files_reminders-init.mjs.map
|