1 line
3.8 KiB
JavaScript
1 line
3.8 KiB
JavaScript
(function(f,u,d,v,t,y,m){"use strict";function c(){return v.storage.snippets??={},v.storage.snippets}function g(e,i){c()[e.trim()]=i}function h(e){delete c()[e]}const p=3;function E(){const e=u.registerCommand({name:"snippet",description:"Send a saved text snippet",options:[{name:"name",description:"Snippet name",type:p,required:!0}],execute:function(r){const s=r.find(function(o){return o.name==="name"})?.value,l=s?c()[s]:void 0;if(!l){d.showToast(`No snippet named "${s}"`,void 0);return}return{content:l}}}),i=u.registerCommand({name:"snippet-save",description:"Save a text snippet",options:[{name:"name",description:"Snippet name",type:p,required:!0},{name:"text",description:"Snippet content",type:p,required:!0}],execute:function(r){const s=r.find(function(o){return o.name==="name"})?.value,l=r.find(function(o){return o.name==="text"})?.value;!s||!l||(g(s,l),d.showToast(`Saved snippet "${s}"`,void 0))}}),n=u.registerCommand({name:"snippet-delete",description:"Delete a saved text snippet",options:[{name:"name",description:"Snippet name",type:p,required:!0}],execute:function(r){const s=r.find(function(l){return l.name==="name"})?.value;s&&(h(s),d.showToast(`Deleted snippet "${s}"`,void 0))}}),a=u.registerCommand({name:"snippet-list",description:"List your saved snippet names",options:[],execute:function(){const r=Object.keys(c());d.showToast(r.length?r.join(", "):"No snippets saved yet",void 0)}});return[e,i,n,a]}const{ScrollView:S,View:x}=t.ReactNative;function $({children:e}){return t.React.createElement(S,{style:{flex:1}},e,t.React.createElement(x,{style:{height:24}}))}const{View:w,Text:T}=t.ReactNative;function P({children:e,style:i}){return t.React.createElement(w,{style:[{marginHorizontal:16,marginVertical:8,padding:10,borderRadius:8,borderWidth:1,borderColor:"rgba(128,128,128,0.25)"},i]},t.React.createElement(T,{style:{fontSize:12.5,lineHeight:18,opacity:.75}},e))}const{FormSection:C,FormRow:N}=m.Forms;function F({title:e,items:i,emptyText:n}){return t.React.createElement(C,{title:e},i.length===0?t.React.createElement(P,null,n):i.map(function(a){return t.React.createElement(N,{key:a.key,label:a.label,subLabel:a.subLabel,onPress:a.onPress})}))}const{TouchableOpacity:k,Text:L}=t.ReactNative;function V({label:e,onPress:i,disabled:n,style:a}){return t.React.createElement(k,{disabled:n,onPress:i,style:[{backgroundColor:"#5865F2",borderRadius:8,padding:10,alignItems:"center",opacity:n?.5:1},a]},t.React.createElement(L,{style:{color:"white",fontWeight:"600"}},e))}const{View:j}=t.ReactNative,{FormSection:q,FormInput:R}=m.Forms;function O(){const[e,i]=t.React.useState(""),[n,a]=t.React.useState(""),r=!!e.trim()&&!!n.trim();return t.React.createElement(j,{style:{paddingHorizontal:16,paddingBottom:12}},t.React.createElement(R,{title:"Name",placeholder:"e.g. rules",value:e,onChange:i}),t.React.createElement(R,{title:"Text",placeholder:"What /snippet should send",value:n,onChange:a,multiline:!0}),t.React.createElement(V,{label:"Save snippet",disabled:!r,style:{marginTop:8},onPress:function(){g(e.trim(),n),i(""),a("")}}))}function z(){y.useProxy(v.storage);const e=c();y.useProxy(e);const i=Object.keys(e);return t.React.createElement($,null,t.React.createElement(q,{title:"Add a snippet"},t.React.createElement(O,null)),t.React.createElement(F,{title:"Saved snippets",emptyText:"None yet. Add one above, then send it anywhere with /snippet name.",items:i.map(function(n){return{key:n,label:n,subLabel:`${e[n].slice(0,60)}${e[n].length>60?"\u2026":""} \u2022 Tap to delete`,onPress:function(){return h(n)}}})}))}let b=[];var H={onLoad:function(){b=E()},onUnload:function(){return b.forEach(function(e){return e()})},settings:z};return f.default=H,Object.defineProperty(f,"__esModule",{value:!0}),f})({},vendetta.commands,vendetta.ui.toasts,vendetta.plugin,vendetta.metro.common,vendetta.storage,vendetta.ui.components);
|