+`,zr=()=>{const{settings:n,updateSettings:t}=(0,e.useContext)(on),{tokens:r,setTokens:a}=(0,e.useContext)(sn),{figmaUIApi:l}=(0,e.useContext)(ln),[o,i]=(0,e.useState)("");return e.createElement("form",{onSubmit:e=>{if(e.preventDefault(),!0===e.target.checkValidity()){const{accessToken:e}=n,t=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)n.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(t[r[a]]=e[r[a]])}return t}(n,["accessToken"]);l.postMessage({pluginMessage:{command:an.saveSettings,payload:{settings:t,accessToken:e}}},"*");const i=pr(r,t);a(i),kr(parent,{url:n.serverUrl,accessToken:n.accessToken,acceptHeader:n.acceptHeader,contentType:n.contentType,authType:n.authType,reference:n.reference},{event_type:n.eventType,client_payload:{tokens:`${gr(i,n.urlJsonCompression)}`,filename:`${n.filename}${n.extension}`,commitMessage:`${o}`}})}},className:Er},e.createElement(nn,{size:"xlarge",weight:"bold"},"URL Export settings"),e.createElement(gn,null,e.createElement(qe,{label:"Compress JSON output",type:"switch",checked:n.urlJsonCompression,onChange:e=>t((n=>{n.urlJsonCompression=e}))}),e.createElement(Be,{width:240,label:"Compression removes line breaks and whitespace from the json string"}),"standard"===n.tokenFormat&&e.createElement(e.Fragment,null,e.createElement(qe,{label:"Exclude extension property",type:"switch",checked:n.excludeExtensionProp,onChange:e=>t((n=>{n.excludeExtensionProp=e}))}),e.createElement(Be,{width:240,label:"The extension property holds additional information about the token"}))),e.createElement(mn,null),e.createElement(nn,{size:"xlarge",weight:"bold"},"Server settings"),e.createElement("h3",null,"Event type",e.createElement(Be,{width:150,label:'"event_type" property in post request'})),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"^[\\w\\-\\.\\+@]+$",placeholder:"update-tokens",value:n.eventType,onChange:e=>t((n=>{n.eventType=e}))})),e.createElement("h3",null,"Server url",e.createElement(Be,{width:150,label:"Url the request is sent to, must be https"})),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"^https://.*",placeholder:n.authType===cn.key.authType.gitlabCommit?"https://gitlab.com/api/v4/projects/:projectId":"https://api.github.com/repos/:username/:repo/dispatches",value:n.serverUrl,onChange:e=>t((n=>{n.serverUrl=e}))})),e.createElement("h3",null,"Accept header"),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"\\S+",placeholder:"application/vnd.github.v3+json",value:n.acceptHeader,onChange:e=>t((n=>{n.acceptHeader=e}))})),e.createElement("h3",null,"Content-Type header"),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"\\S+",placeholder:"text/plain;charset=UTF-8",value:n.contentType,onChange:e=>t((n=>{n.contentType=e}))})),e.createElement("h3",null,"Auth type"),e.createElement(gn,{fill:!0},e.createElement(Xe,{defaultValue:n.authType,onChange:({value:e})=>t((n=>{n.authType=e})),placeholder:"Auth type",options:[{label:"(Github) token",value:cn.key.authType.token},{label:"(Gitlab) token",value:cn.key.authType.gitlabToken},{label:"(Gitlab) Project Token",value:cn.key.authType.gitlabCommit},{label:"Basic authentication",value:cn.key.authType.basic},{label:"Bearer token authentication",value:cn.key.authType.bearer}]})),e.createElement("h3",null,"Access token"),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"\\S+",placeholder:"Your access token",value:n.accessToken,onChange:e=>t((n=>{n.accessToken=e}))})),n.authType===cn.key.authType.gitlabToken&&e.createElement(e.Fragment,null,e.createElement("h3",null,"Reference",e.createElement(Be,{width:150,label:'The branch or commit to associate with a Gitlab trigger. Only used when Gitlab is selected for "Auth type"'})),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"\\S+",placeholder:"main",value:n.reference,onChange:e=>t((n=>{n.reference=e}))}))),cn.key.authType.gitlabCommit===n.authType&&e.createElement(e.Fragment,null,e.createElement("h3",null,"Branch",e.createElement(Be,{width:150,label:'The branch where the file will be committed. Only used when Gitlab Project selected for "Auth type"'})),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",required:!0,pattern:"\\S+",placeholder:"main",value:n.reference,onChange:e=>t((n=>{n.reference=e}))}))),e.createElement(mn,null),e.createElement(nn,{size:"xlarge",weight:"bold"},"About This Export"),e.createElement("h3",null,"Commit Message",e.createElement(Be,{width:200,label:'Typically this will be a "commit message" for Git. Your organization may require a specific convention for these messages.'})),e.createElement(gn,{fill:!0},e.createElement(Ge,{type:"text",placeholder:"Describe what has changed since the last export",value:o,onChange:e=>i(e)})),e.createElement(fn,null,e.createElement(bn,{align:"start",href:"https://github.com/lukasoppermann/design-tokens#design-tokens"},"Documentation"),e.createElement(un,null),e.createElement(He,{type:"submit",autofocus:!0},"Save & Export")))},Cr=parent,Sr=De`
0 commit comments