@maudecode/kanvil 0.6.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/apps/server/dist/{auth-CFjetlB4.mjs → auth-D43XyHdK.mjs} +227 -71
  2. package/apps/server/dist/client.mjs +2 -2
  3. package/apps/server/dist/{config-BQw6mPzE.mjs → config-CQVdVhXv.mjs} +1 -1
  4. package/apps/server/dist/index.mjs +161 -44
  5. package/apps/server/dist/migrate.mjs +1 -1
  6. package/apps/server/dist/recover.mjs +3 -3
  7. package/apps/server/dist/{src-BaTNDJB7.mjs → src-D70GmZ5R.mjs} +83 -26
  8. package/apps/server/drizzle/0040_upload_urls.sql +20 -0
  9. package/apps/server/drizzle/0041_project_repositories.sql +2 -0
  10. package/apps/server/drizzle/meta/0040_snapshot.json +7170 -0
  11. package/apps/server/drizzle/meta/0041_snapshot.json +7183 -0
  12. package/apps/server/drizzle/meta/_journal.json +14 -0
  13. package/apps/web/dist/assets/{CompositeItem-Dotj8JZL.js → CompositeItem-DLTRsada.js} +1 -1
  14. package/apps/web/dist/assets/{Trans-CE4EAAY1.js → Trans-DqX-qhvQ.js} +1 -1
  15. package/apps/web/dist/assets/admin-settings-BQzdZII5.js +1 -0
  16. package/apps/web/dist/assets/{archive-restore-BMtgjFUu.js → archive-restore-BO1qng5Y.js} +1 -1
  17. package/apps/web/dist/assets/az-AZ-SXqDBPA2.js +1 -0
  18. package/apps/web/dist/assets/{az-B-DxMc__.js → az-CEW7-a7J.js} +1 -1
  19. package/apps/web/dist/assets/configuration-D0zvwrXt.js +1 -0
  20. package/apps/web/dist/assets/{corner-left-up-O4OsTW-L.js → corner-left-up-Be7Z9Uhf.js} +1 -1
  21. package/apps/web/dist/assets/{de-Btbkq-aX.js → de-B-oGVMYL.js} +1 -1
  22. package/apps/web/dist/assets/de-DE-CB7aQ6b-.js +1 -0
  23. package/apps/web/dist/assets/default-CCI1vZxa.js +56 -0
  24. package/apps/web/dist/assets/delivery-settings-BrwSrFIN.js +1 -0
  25. package/apps/web/dist/assets/{el-DBVEX16k.js → el-Cp69kezM.js} +1 -1
  26. package/apps/web/dist/assets/el-GR-D1ntYXIt.js +1 -0
  27. package/apps/web/dist/assets/{ellipsis-CvEPDi9V.js → ellipsis-B0AE8ax3.js} +1 -1
  28. package/apps/web/dist/assets/{es-CMJoxZBk.js → es-CwOMVSTx.js} +1 -1
  29. package/apps/web/dist/assets/es-ES-CllsaxcB.js +1 -0
  30. package/apps/web/dist/assets/{forms-DbfnnPg_.js → forms-CkVpTx29.js} +1 -1
  31. package/apps/web/dist/assets/{fr-OyEmYoRn.js → fr-Cy4co9ic.js} +1 -1
  32. package/apps/web/dist/assets/fr-FR-DxTw6LgI.js +1 -0
  33. package/apps/web/dist/assets/{hi-CIgXSseB.js → hi-DbO9TKwg.js} +1 -1
  34. package/apps/web/dist/assets/hi-IN-CaQga-0l.js +1 -0
  35. package/apps/web/dist/assets/{highlight-B4K3yEEh.js → highlight-zMg1BK-r.js} +1 -1
  36. package/apps/web/dist/assets/{id-WV2oSAPB.js → id-B6NKsmCm.js} +1 -1
  37. package/apps/web/dist/assets/id-ID-DBfwAAqU.js +1 -0
  38. package/apps/web/dist/assets/index-CZuFd4LM.js +17 -0
  39. package/apps/web/dist/assets/index-DPT5LAs1.css +2 -0
  40. package/apps/web/dist/assets/{invitations-BTB8f2Xl.js → invitations-Dp40BfHj.js} +1 -1
  41. package/apps/web/dist/assets/it-IT-BckuH9Nl.js +1 -0
  42. package/apps/web/dist/assets/{it-BWSrRqus.js → it-ilGYCq2T.js} +1 -1
  43. package/apps/web/dist/assets/{item-HmFuRZet.js → item-DQR89bKm.js} +1 -1
  44. package/apps/web/dist/assets/{ja-BtOHWvUJ.js → ja-D-hJRTgP.js} +1 -1
  45. package/apps/web/dist/assets/ja-JP-BAGgJKZ4.js +1 -0
  46. package/apps/web/dist/assets/ko-KR-srIEsTP5.js +1 -0
  47. package/apps/web/dist/assets/{ko-DAryK0HN.js → ko-ajkkoJ_d.js} +1 -1
  48. package/apps/web/dist/assets/{label-settings-ssfEX2uR.js → label-settings-ChnKkA97.js} +1 -1
  49. package/apps/web/dist/assets/{markdown-blocks-B1kO6iku.js → markdown-blocks-CpzrwyQG.js} +1 -1
  50. package/apps/web/dist/assets/{member-directory-BA4ZT1qU.js → member-directory-XK0ZEGUq.js} +1 -1
  51. package/apps/web/dist/assets/{mk-DBbiGUk5.js → mk-C_sMyEHX.js} +1 -1
  52. package/apps/web/dist/assets/mk-MK-BTa1NMAF.js +1 -0
  53. package/apps/web/dist/assets/{nl-D4V-8WdF.js → nl-D9-P4UPR.js} +1 -1
  54. package/apps/web/dist/assets/nl-NL-CQduhDqs.js +1 -0
  55. package/apps/web/dist/assets/{pl-C--QrxO0.js → pl-CiQM7fSB.js} +1 -1
  56. package/apps/web/dist/assets/pl-PL-BdZMf7Ni.js +1 -0
  57. package/apps/web/dist/assets/project-lifecycle-VYecJuiP.js +1 -0
  58. package/apps/web/dist/assets/project-settings-Bs6YEpo9.js +1 -0
  59. package/apps/web/dist/assets/{pt-BR-DvFVKpmO.js → pt-BR-CP7dhuqF.js} +1 -1
  60. package/apps/web/dist/assets/pt-BR-DZEXJNHg.js +1 -0
  61. package/apps/web/dist/assets/public-project-DUfWDao9.js +1 -0
  62. package/apps/web/dist/assets/{rotate-ccw-CB36Zu3L.js → rotate-ccw-Cxh9ec2s.js} +1 -1
  63. package/apps/web/dist/assets/{ru-UmbPUOka.js → ru-DxJ6vF4E.js} +1 -1
  64. package/apps/web/dist/assets/ru-RU-CZKEe7P8.js +1 -0
  65. package/apps/web/dist/assets/{search-Cvetr1OK.js → search-DfbsqO7M.js} +6 -6
  66. package/apps/web/dist/assets/{send-CJDct4Oj.js → send-DrJl0BKm.js} +1 -1
  67. package/apps/web/dist/assets/settings-BN8uIiBG.js +1 -0
  68. package/apps/web/dist/assets/{sliders-horizontal-dmqWngxy.js → sliders-horizontal-DM47MLe7.js} +1 -1
  69. package/apps/web/dist/assets/{switch-BtScTpP9.js → switch-CJTVGtE9.js} +1 -1
  70. package/apps/web/dist/assets/{table-byFokzo-.js → table-BLLjFPWD.js} +1 -1
  71. package/apps/web/dist/assets/{ticket-detail-C3YA3Hzc.js → ticket-detail-BTy_3JeU.js} +2 -2
  72. package/apps/web/dist/assets/ticket-editor-Bb_lyxnJ.js +2 -0
  73. package/apps/web/dist/assets/{ticket-list-BXUorfmj.js → ticket-list-Botp5qf5.js} +5 -5
  74. package/apps/web/dist/assets/ticket-list-controls-Dmkno4pm.js +1 -0
  75. package/apps/web/dist/assets/{tr-CNpgQ4ka.js → tr-9IkdRLIk.js} +1 -1
  76. package/apps/web/dist/assets/tr-TR-Y8wBLO8I.js +1 -0
  77. package/apps/web/dist/assets/{uk-MQoTXdpk.js → uk-Btampsdw.js} +1 -1
  78. package/apps/web/dist/assets/uk-UA-CVpasGUS.js +1 -0
  79. package/apps/web/dist/assets/{upload-D1x_ib3B.js → upload-HARy4VC_.js} +1 -1
  80. package/apps/web/dist/assets/{useQueries-BnlNCoy4.js → useQueries-CTeEF--U.js} +1 -1
  81. package/apps/web/dist/assets/{vi-CEw4gTWc.js → vi-BVZzOn_n.js} +1 -1
  82. package/apps/web/dist/assets/vi-VN-BMy-iJD-.js +1 -0
  83. package/apps/web/dist/assets/{visual-editor-CpdMRn3e.js → visual-editor-DKBPjqV-.js} +1 -1
  84. package/apps/web/dist/assets/{workspace-settings-BickBtZx.js → workspace-settings-DqzBNw60.js} +1 -1
  85. package/apps/web/dist/assets/{zh-CN-ChzoXkfr.js → zh-CN-BoUvF2do.js} +1 -1
  86. package/apps/web/dist/assets/zh-CN-Cds_v0R8.js +1 -0
  87. package/apps/web/dist/assets/{zh-TW-bWBKARrK.js → zh-TW-CEIDGTWe.js} +1 -1
  88. package/apps/web/dist/assets/zh-TW-DCCYakXz.js +1 -0
  89. package/apps/web/dist/index.html +8 -8
  90. package/docs/api.md +33 -3
  91. package/docs/cli.md +1 -1
  92. package/package.json +1 -1
  93. package/apps/web/dist/assets/admin-settings-CO7nnD9T.js +0 -1
  94. package/apps/web/dist/assets/az-AZ-R8_HFWJr.js +0 -1
  95. package/apps/web/dist/assets/configuration-Bnt72HRu.js +0 -1
  96. package/apps/web/dist/assets/de-DE-BHgMj19Y.js +0 -1
  97. package/apps/web/dist/assets/default-DqsN66dq.js +0 -56
  98. package/apps/web/dist/assets/delivery-settings-Cji0N0m0.js +0 -1
  99. package/apps/web/dist/assets/el-GR-CQFGM5Sr.js +0 -1
  100. package/apps/web/dist/assets/es-ES-DZkcRVA4.js +0 -1
  101. package/apps/web/dist/assets/fr-FR-CRPAezXU.js +0 -1
  102. package/apps/web/dist/assets/hi-IN-2YFE4UQk.js +0 -1
  103. package/apps/web/dist/assets/id-ID-B-J0_QIW.js +0 -1
  104. package/apps/web/dist/assets/index-BAnwOrh1.css +0 -2
  105. package/apps/web/dist/assets/index-nltuyQtq.js +0 -17
  106. package/apps/web/dist/assets/it-IT-CJ0HYggO.js +0 -1
  107. package/apps/web/dist/assets/ja-JP-DDQS7D7b.js +0 -1
  108. package/apps/web/dist/assets/ko-KR-CkpoewEa.js +0 -1
  109. package/apps/web/dist/assets/mk-MK-C0RhS6XR.js +0 -1
  110. package/apps/web/dist/assets/nl-NL-BSKqlzcL.js +0 -1
  111. package/apps/web/dist/assets/pl-PL-CHz38SiU.js +0 -1
  112. package/apps/web/dist/assets/project-lifecycle-COZb9FqM.js +0 -1
  113. package/apps/web/dist/assets/project-settings-DwmTm9KA.js +0 -1
  114. package/apps/web/dist/assets/pt-BR-BotWHRiO.js +0 -1
  115. package/apps/web/dist/assets/public-project-B3hEkeCF.js +0 -1
  116. package/apps/web/dist/assets/ru-RU-DtOwNna6.js +0 -1
  117. package/apps/web/dist/assets/settings-3IXm9lJ-.js +0 -1
  118. package/apps/web/dist/assets/ticket-editor-CZnZQMG1.js +0 -2
  119. package/apps/web/dist/assets/ticket-list-controls-BxGKCZMo.js +0 -1
  120. package/apps/web/dist/assets/tr-TR-CdG2alU2.js +0 -1
  121. package/apps/web/dist/assets/uk-UA-Ceu5gorw.js +0 -1
  122. package/apps/web/dist/assets/vi-VN-CxshgV4W.js +0 -1
  123. package/apps/web/dist/assets/zh-CN-D7Yrjhd3.js +0 -1
  124. package/apps/web/dist/assets/zh-TW-DyF38kqx.js +0 -1
@@ -281,6 +281,20 @@
281
281
  "when": 1793317164384,
282
282
  "tag": "0039_intake_credential",
283
283
  "breakpoints": true
284
+ },
285
+ {
286
+ "idx": 40,
287
+ "version": "7",
288
+ "when": 1793577448877,
289
+ "tag": "0040_upload_urls",
290
+ "breakpoints": true
291
+ },
292
+ {
293
+ "idx": 41,
294
+ "version": "7",
295
+ "when": 1793746582464,
296
+ "tag": "0041_project_repositories",
297
+ "breakpoints": true
284
298
  }
285
299
  ]
286
300
  }
@@ -1 +1 @@
1
- import{Ca as e,Ea as t,Ta as n,Za as r}from"./search-Cvetr1OK.js";import{i}from"./forms-DbfnnPg_.js";var a={name:`chevrons-up-down`,size:24,node:[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]};a.node;var o=r(a),s={name:`pencil`,size:24,node:[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]};s.node;var c=r(s),l={name:`trash`,size:24,node:[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]],aliases:[`trash-2`]};l.node;var u=r(l);function d(r){let{render:a,className:o,style:s,state:c=t,props:l=n,refs:u=n,metadata:d,stateAttributesMapping:f,tag:p=`div`,...m}=r,{compositeProps:h,compositeRef:g}=i({metadata:d});return e(p,r,{state:c,ref:[g,...u],props:[h,...l,m],stateAttributesMapping:f})}export{o as i,u as n,c as r,d as t};
1
+ import{Ca as e,Ea as t,Ta as n,Za as r}from"./search-DfbsqO7M.js";import{i}from"./forms-CkVpTx29.js";var a={name:`chevrons-up-down`,size:24,node:[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]};a.node;var o=r(a),s={name:`pencil`,size:24,node:[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]};s.node;var c=r(s),l={name:`trash`,size:24,node:[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]],aliases:[`trash-2`]};l.node;var u=r(l);function d(r){let{render:a,className:o,style:s,state:c=t,props:l=n,refs:u=n,metadata:d,stateAttributesMapping:f,tag:p=`div`,...m}=r,{compositeProps:h,compositeRef:g}=i({metadata:d});return e(p,r,{state:c,ref:[g,...u],props:[h,...l,m],stateAttributesMapping:f})}export{o as i,u as n,c as r,d as t};
@@ -1 +1 @@
1
- import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{Vn as t,hn as n}from"./default-DqsN66dq.js";import{Za as r}from"./search-Cvetr1OK.js";import{c as i}from"./item-HmFuRZet.js";var a={name:`archive`,size:24,node:[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]};a.node;var o=r(a),s={name:`bell`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]};s.node;var c=r(s),l=e(t()),u={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,"!doctype":!0,"!DOCTYPE":!0},d=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?("[^"]*"|'[^']*')/g;function f(e){let t={type:`tag`,name:``,voidElement:!1,attrs:{},children:[]},n=e.match(/<\/?([^\s]+?)[/\s>]/);if(n&&(t.name=n[1],(u[n[1]]||e.charAt(e.length-2)===`/`)&&(t.voidElement=!0),t.name.startsWith(`!--`))){let t=e.indexOf(`-->`);return{type:`comment`,comment:t===-1?``:e.slice(4,t)}}let r=new RegExp(d),i=null;for(;i=r.exec(e),i!==null;)if(i[0].trim()){if(i[1]){let e=i[1].trim(),n=[e,null],a=e.indexOf(`=`);a>-1&&(n=[e.slice(0,a),e.slice(a+1)]),t.attrs[n[0]]=n[1],r.lastIndex--}else i[2]&&(t.attrs[i[2]]=i[3].trim().substring(1,i[3].length-1))}return t}var p=/<!--[\s\S]*?-->|<[a-zA-Z0-9\-!/](?:"[^"]*"|'[^']*'|[^'">])*>/g,m=/<\/?([^\s]+?)[/\s>]/,h=/^\s*$/,g=/^(script|style)$/i,_=`\0`,v=Object.create(null);function y(e){e.forEach(function(e){if(e.type===`text`)e.content=e.content.split(_).join(`<`);else if(e.type===`comment`)e.comment=e.comment.split(_).join(`<`);else{for(let t in e.attrs){let n=e.attrs[t];typeof n==`string`&&n.indexOf(_)>-1&&(e.attrs[t]=n.split(_).join(`<`))}e.children.length&&y(e.children)}})}function b(e,t){let n=t&&t.components||v,r=t&&t.allowedTags,i=!1;if(r){let t=typeof r==`function`?r:function(e){return r.indexOf(e)>-1},n=``,a=0;p.lastIndex=0;let o;for(;o=p.exec(e);){let r=o[0];n+=e.slice(a,o.index);let s=r.match(m);r.startsWith(`<!--`)||s&&t(s[1])?(n+=r,a=o.index+r.length):(i=!0,n+=_,a=o.index+1,p.lastIndex=a)}e=n+e.slice(a)}let a=[],o=[],s,c=-1,l=!1,u=0,d;if(e.indexOf(`<`)!==0){let t=e.indexOf(`<`);a.push({type:`text`,content:t===-1?e:e.substring(0,t)})}let b=[],x;for(;x=p.exec(e);)b.push(x);return b.forEach(function(e,t){let n=e[0];if(!n||n.startsWith(`<!--`))return;let r=0,i=0,a=-1,o=null;for(let e=0;e<n.length;e++){let t=n.charAt(e);o?t===o&&(o=null):t===`"`||t===`'`?o=t:t===`<`?(r++,r===2&&(a=e)):t===`>`&&i++}let s=a>-1&&/[a-zA-Z0-9\-!/]/.test(n.charAt(a+1));if(r>i&&s){let e=n.substring(0,a),r=n.substring(e.length);b[t][0]=r,b[t].index+=e.length}}),b.forEach(function(t,r){let i=t[0];if(!i)return;let p=t.index;if(p<u)return;if(l){if(i!==`</`+s.name+`>`)return;l=!1}let m=i.charAt(1)!==`/`,_=i.startsWith(`<!--`),v=p+i.length,y=e.charAt(v),x=b[r+1],S;if(y===`<`&&x){let t=e.substring(v,x.index);S=t.split(`<`).length>t.split(`>`).length}let C;if(_){let t=f(i);if(c<0)return a.push(t),a;C=o[c],C.children.push(t);let n=e.slice(v,x?x.index:void 0);return n.length>0&&C.children.push({type:`text`,content:n}),a}if(m){c++,s=f(i),s.type===`tag`&&n[s.name]&&(s.type=`component`,l=!0);let t=!1;if(!l&&!s.voidElement&&g.test(s.name)){t=!0,d||=e.toLowerCase();let n=d.indexOf(`</`+s.name.toLowerCase()+`>`,v),r=n===-1?e.length:n,i=e.slice(v,r);i&&s.children.push({type:`text`,content:i}),u=r}!s.voidElement&&!l&&!t&&y&&y!==`<`&&s.children.push({type:`text`,content:e.slice(v,x?x.index:void 0)}),c===0&&a.push(s),C=o[c-1],C&&C.children.push(s),o[c]=s}if((!m||s.voidElement)&&(c>-1&&(s.voidElement||s.name===i.slice(2,-1))&&(c--,s=c===-1?a:o[c]),!l&&(y!==`<`||S)&&y)){C=c===-1?a:o[c].children;let t=x?x.index:-1,n=e.slice(v,t===-1?void 0:t);h.test(n)&&(n=` `),(t>-1&&c+C.length>=0||n!==` `)&&C.push({type:`text`,content:n})}}),i&&y(a),a}function x(e){let t=[];for(let n in e)e[n]===null?t.push(n):t.push(n+`="`+String(e[n]).replace(/"/g,`&quot;`)+`"`);return t.length?` `+t.join(` `):``}function S(e,t){switch(t.type){case`text`:return e+t.content;case`tag`:{let n=t.voidElement&&t.name.toLowerCase()!==`!doctype`?`/>`:`>`;return e+=`<`+t.name+(t.attrs?x(t.attrs):``)+n,t.voidElement?e:e+t.children.reduce(S,``)+`</`+t.name+`>`}case`comment`:return e+=`<!--`+t.comment+`-->`,e}}function C(e){return e.reduce(function(e,t){return e+S(``,t)},``)}var w={parse:b,stringify:C},T=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);O(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},E={},D=(e,t,n,r)=>{O(n)&&E[n]||(O(n)&&(E[n]=new Date),T(e,t,n,r))},O=e=>typeof e==`string`,k=e=>typeof e==`object`&&!!e,A=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,j={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":`\xA0`,"&#160;":`\xA0`,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},M=e=>j[e],N=e=>e.replace(A,M),P={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:N,transDefaultProps:void 0},F=()=>P,I,L=()=>I,R=(e,t)=>{if(!e)return!1;let n=e.props?.children??e.children;return t?n.length>0:!!n},z=e=>{if(!e)return[];let t=e.props?.children??e.children;return e.props?.i18nIsDynamicList?V(t):t},B=e=>V(e).every(l.isValidElement),V=e=>Array.isArray(e)?e:[e],H=(e,t)=>{let n={...t};return n.props={...t.props,...e.props},n},U=e=>{let t={};if(!e)return t;let n=e=>{V(e).forEach(e=>{O(e)||(R(e)?n(z(e)):k(e)&&!(0,l.isValidElement)(e)&&Object.assign(t,e))})};return n(e),t},W=(e,t,n,r)=>{if(!e)return``;let i=``,a=V(e),o=t?.transSupportBasicHtmlNodes?t.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((e,a)=>{if(O(e))i+=`${e}`;else if((0,l.isValidElement)(e)){let{props:s,type:c}=e,l=Object.keys(s).length,u=o.indexOf(c)>-1,d=s.children;if(!d&&u&&!l){i+=`<${c}/>`;return}if(!d&&(!u||l)||s.i18nIsDynamicList){i+=`<${a}></${a}>`;return}if(u&&l<=1){let e=O(d)?d:W(d,t,n,r);i+=`<${c}>${e}</${c}>`;return}let f=W(d,t,n,r);i+=`<${a}>${f}</${a}>`}else if(e===null)T(n,`TRANS_NULL_VALUE`,`Passed in a null value as child`,{i18nKey:r});else if(k(e)){let{format:t,...a}=e,o=Object.keys(a);if(o.length===1){let e=t?`${o[0]}, ${t}`:o[0];i+=`{{${e}}}`;return}T(n,`TRANS_INVALID_OBJ`,`Invalid child - Object should only have keys {{ value, format }} (format is optional).`,{i18nKey:r,child:e})}else T(n,`TRANS_INVALID_VAR`,`Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.`,{i18nKey:r,child:e})}),i},G=(e,t,n,r,i,a,o)=>{if(n===``)return[];let s=i.transKeepBasicHtmlNodesFor||[],c=n&&new RegExp(s.map(e=>`<${e}`).join(`|`)).test(n);if(!e&&!t&&!c&&!o)return[n];let u=t??{},d=e=>{V(e).forEach(e=>{O(e)||(R(e)?d(z(e)):k(e)&&!(0,l.isValidElement)(e)&&Object.assign(u,e))})};d(e);let f=Object.keys(u),p=w.parse(`<0>${n}</0>`,{allowedTags:e=>/^\d+$/.test(e)||s.indexOf(e)>-1||f.indexOf(e)>-1}),m={...u,...a},h=(e,t,n)=>{let r=z(e),i=_(r,t.children,n);return B(r)&&i.length===0||e.props?.i18nIsDynamicList?r:i},g=(e,t,n,r,i)=>{e.dummy?(e.children=t,n.push((0,l.cloneElement)(e,{key:r},i?void 0:t))):n.push(...l.Children.map([e],e=>{if(e.type===l.Fragment||e.props?.i18nIsDynamicList!==void 0){let n={key:r};return e&&e.props&&Object.keys(e.props).forEach(t=>{t!==`children`&&t!==`i18nIsDynamicList`&&(n[t]=e.props[t])}),(0,l.createElement)(e.type,n,i?null:t)}let n={key:r};return e&&e.props&&Object.keys(e.props).forEach(t=>{t!==`ref`&&t!==`children`&&(n[t]=e.props[t])}),(0,l.cloneElement)(e,n,i?null:t)}))},_=(e,n,a)=>{let u=V(e),d=V(n),f={};return d.reduce((e,n,d)=>{let p=n.children?.[0]?.content&&r.services.interpolator.interpolate(n.children[0].content,m,r.language);if(n.type===`tag`){let v=u[parseInt(n.name,10)];!v&&t&&(v=t[n.name]),a.length===1&&!v&&(v=a[0][n.name]),v||={};let y={...n.attrs};o&&Object.keys(y).forEach(e=>{let t=y[e];O(t)&&(y[e]=N(t))});let b=Object.keys(y).length===0?v:H({props:y},v),x=(0,l.isValidElement)(b),S=x&&R(n,!0)&&!n.voidElement,C=c&&k(b)&&b.dummy&&!x,w=k(t)&&Object.hasOwnProperty.call(t,n.name);if(O(b)){let t=r.services.interpolator.interpolate(b,m,r.language);e.push(t)}else if(R(b)||S){let t=h(b,n,a);g(b,t,e,d)}else if(C){let t=_(u,n.children,a);g(b,t,e,d)}else if(Number.isNaN(parseFloat(n.name))){if(w){let t=h(b,n,a);g(b,t,e,d,n.voidElement)}else if(i.transSupportBasicHtmlNodes&&s.indexOf(n.name)>-1){if(n.voidElement)e.push((0,l.createElement)(n.name,{key:`${n.name}-${d}`}));else{let t=f[n.name]||0;f[n.name]=t+1;let r,i=0;for(let e=0;e<u.length;e+=1){let a=u[e];if((0,l.isValidElement)(a)&&a.type===n.name){if(i===t){r=a;break}i+=1}}let o=r?V(z(r)):u,s=_(o,n.children,a);e.push((0,l.createElement)(n.name,{key:`${n.name}-${d}`},s))}}else if(n.voidElement)e.push(`<${n.name} />`);else{let t=_(u,n.children,a);e.push(`<${n.name}>${t}</${n.name}>`)}}else if(k(b)&&!x){let t=n.children[0]?p:null;t&&e.push(t)}else g(b,p,e,d,n.children.length!==1||!p)}else if(n.type===`text`){let t=i.transWrapTextNodes,a=typeof i.unescape==`function`?i.unescape:F().unescape,s=o?a(r.services.interpolator.interpolate(n.content,m,r.language)):r.services.interpolator.interpolate(n.content,m,r.language);t?e.push((0,l.createElement)(t,{key:`${n.name}-${d}`},s)):e.push(s)}return e},[])};return z(_([{dummy:!0,children:e||[]}],p,V(e||[]))[0])},K=(e,t,n)=>{let r=e.key||t,i=(0,l.cloneElement)(e,{key:r});if(!i.props||!i.props.children||n.indexOf(`${t}/>`)<0&&n.indexOf(`${t} />`)<0)return i;function a(){return(0,l.createElement)(l.Fragment,null,i)}return(0,l.createElement)(a,{key:r})},q=(e,t)=>e.map((e,n)=>K(e,n,t)),J=(e,t)=>{let n={};return Object.keys(e).forEach(r=>{Object.assign(n,{[r]:K(e[r],r,t)})}),n},Y=(e,t,n,r)=>e?Array.isArray(e)?q(e,t):k(e)?J(e,t):(D(n,`TRANS_INVALID_COMPONENTS`,`<Trans /> "components" prop expects an object or array`,{i18nKey:r}),null):null,X=e=>!k(e)||Array.isArray(e)?!1:Object.keys(e).reduce((e,t)=>e&&Number.isNaN(Number.parseFloat(t)),!0);function Z({children:e,count:t,parent:r,i18nKey:i,context:a,tOptions:o={},values:s,defaults:c,components:u,ns:d,i18n:f,t:p,shouldUnescape:m,...h}){let g=f||L();if(!g)return D(g,`NO_I18NEXT_INSTANCE`,`Trans: You need to pass in an i18next instance using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`,{i18nKey:i}),e;let _=p||g.t.bind(g)||(e=>e),v={...F(),...g.options?.react},y=d||(_.ns?void 0:g.options?.defaultNS||`translation`);O(y)&&(y=[y]);let{transDefaultProps:b}=v,x=b?.tOptions?{...b.tOptions,...o}:o,S=m??b?.shouldUnescape,C=b?.values?{...b.values,...s}:s,w=b?.components?{...b.components,...u}:u,T=W(e,v,g,i),E=c||x?.defaultValue||T||v.transEmptyNodeValue||(typeof i==`function`?n(i):i),{hashTransKey:k}=v,A=i||(k?k(T||E):T||E);s=g.options?.interpolation?.defaultVariables?{...g.options.interpolation.defaultVariables,...C}:C;let j=U(e);j&&typeof j.count==`number`&&t===void 0&&(t=j.count);let M=s||t!==void 0&&!g.options?.interpolation?.alwaysFormat||!e?x.interpolation:{interpolation:{...x.interpolation,prefix:`#$?`,suffix:`?$#`}},N={...x,context:a||x.context,count:t,...s,...M,defaultValue:E,ns:y},P=A?_(A,N):E;P===A&&E&&(P=E);let I=Y(w,P,g,i),R=I||e,z=null;X(I)&&(z=I,R=e);let B=G(R,z,P,g,v,N,S),V=r??v.defaultTransParent;return V?(0,l.createElement)(V,h,B):B}function Q({children:e,count:t,parent:n,i18nKey:r,context:a,tOptions:o={},values:s,defaults:c,components:u,ns:d,i18n:f,t:p,shouldUnescape:m,...h}){let{i18n:g,defaultNS:_}=(0,l.useContext)(i)||{},v=f||g||L(),y=p||v?.t.bind(v);return Z({children:e,count:t,parent:n,i18nKey:r,context:a,tOptions:o,values:s,defaults:c,components:u,ns:d||(y?.ns?void 0:_||v?.options?.defaultNS),i18n:v,t:p,shouldUnescape:m,...h})}export{c as n,o as r,Q as t};
1
+ import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{Wn as t,vn as n}from"./default-CCI1vZxa.js";import{Za as r}from"./search-DfbsqO7M.js";import{c as i}from"./item-DQR89bKm.js";var a={name:`archive`,size:24,node:[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]};a.node;var o=r(a),s={name:`bell`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]};s.node;var c=r(s),l=e(t()),u={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,"!doctype":!0,"!DOCTYPE":!0},d=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?("[^"]*"|'[^']*')/g;function f(e){let t={type:`tag`,name:``,voidElement:!1,attrs:{},children:[]},n=e.match(/<\/?([^\s]+?)[/\s>]/);if(n&&(t.name=n[1],(u[n[1]]||e.charAt(e.length-2)===`/`)&&(t.voidElement=!0),t.name.startsWith(`!--`))){let t=e.indexOf(`-->`);return{type:`comment`,comment:t===-1?``:e.slice(4,t)}}let r=new RegExp(d),i=null;for(;i=r.exec(e),i!==null;)if(i[0].trim()){if(i[1]){let e=i[1].trim(),n=[e,null],a=e.indexOf(`=`);a>-1&&(n=[e.slice(0,a),e.slice(a+1)]),t.attrs[n[0]]=n[1],r.lastIndex--}else i[2]&&(t.attrs[i[2]]=i[3].trim().substring(1,i[3].length-1))}return t}var p=/<!--[\s\S]*?-->|<[a-zA-Z0-9\-!/](?:"[^"]*"|'[^']*'|[^'">])*>/g,m=/<\/?([^\s]+?)[/\s>]/,h=/^\s*$/,g=/^(script|style)$/i,_=`\0`,v=Object.create(null);function y(e){e.forEach(function(e){if(e.type===`text`)e.content=e.content.split(_).join(`<`);else if(e.type===`comment`)e.comment=e.comment.split(_).join(`<`);else{for(let t in e.attrs){let n=e.attrs[t];typeof n==`string`&&n.indexOf(_)>-1&&(e.attrs[t]=n.split(_).join(`<`))}e.children.length&&y(e.children)}})}function b(e,t){let n=t&&t.components||v,r=t&&t.allowedTags,i=!1;if(r){let t=typeof r==`function`?r:function(e){return r.indexOf(e)>-1},n=``,a=0;p.lastIndex=0;let o;for(;o=p.exec(e);){let r=o[0];n+=e.slice(a,o.index);let s=r.match(m);r.startsWith(`<!--`)||s&&t(s[1])?(n+=r,a=o.index+r.length):(i=!0,n+=_,a=o.index+1,p.lastIndex=a)}e=n+e.slice(a)}let a=[],o=[],s,c=-1,l=!1,u=0,d;if(e.indexOf(`<`)!==0){let t=e.indexOf(`<`);a.push({type:`text`,content:t===-1?e:e.substring(0,t)})}let b=[],x;for(;x=p.exec(e);)b.push(x);return b.forEach(function(e,t){let n=e[0];if(!n||n.startsWith(`<!--`))return;let r=0,i=0,a=-1,o=null;for(let e=0;e<n.length;e++){let t=n.charAt(e);o?t===o&&(o=null):t===`"`||t===`'`?o=t:t===`<`?(r++,r===2&&(a=e)):t===`>`&&i++}let s=a>-1&&/[a-zA-Z0-9\-!/]/.test(n.charAt(a+1));if(r>i&&s){let e=n.substring(0,a),r=n.substring(e.length);b[t][0]=r,b[t].index+=e.length}}),b.forEach(function(t,r){let i=t[0];if(!i)return;let p=t.index;if(p<u)return;if(l){if(i!==`</`+s.name+`>`)return;l=!1}let m=i.charAt(1)!==`/`,_=i.startsWith(`<!--`),v=p+i.length,y=e.charAt(v),x=b[r+1],S;if(y===`<`&&x){let t=e.substring(v,x.index);S=t.split(`<`).length>t.split(`>`).length}let C;if(_){let t=f(i);if(c<0)return a.push(t),a;C=o[c],C.children.push(t);let n=e.slice(v,x?x.index:void 0);return n.length>0&&C.children.push({type:`text`,content:n}),a}if(m){c++,s=f(i),s.type===`tag`&&n[s.name]&&(s.type=`component`,l=!0);let t=!1;if(!l&&!s.voidElement&&g.test(s.name)){t=!0,d||=e.toLowerCase();let n=d.indexOf(`</`+s.name.toLowerCase()+`>`,v),r=n===-1?e.length:n,i=e.slice(v,r);i&&s.children.push({type:`text`,content:i}),u=r}!s.voidElement&&!l&&!t&&y&&y!==`<`&&s.children.push({type:`text`,content:e.slice(v,x?x.index:void 0)}),c===0&&a.push(s),C=o[c-1],C&&C.children.push(s),o[c]=s}if((!m||s.voidElement)&&(c>-1&&(s.voidElement||s.name===i.slice(2,-1))&&(c--,s=c===-1?a:o[c]),!l&&(y!==`<`||S)&&y)){C=c===-1?a:o[c].children;let t=x?x.index:-1,n=e.slice(v,t===-1?void 0:t);h.test(n)&&(n=` `),(t>-1&&c+C.length>=0||n!==` `)&&C.push({type:`text`,content:n})}}),i&&y(a),a}function x(e){let t=[];for(let n in e)e[n]===null?t.push(n):t.push(n+`="`+String(e[n]).replace(/"/g,`&quot;`)+`"`);return t.length?` `+t.join(` `):``}function S(e,t){switch(t.type){case`text`:return e+t.content;case`tag`:{let n=t.voidElement&&t.name.toLowerCase()!==`!doctype`?`/>`:`>`;return e+=`<`+t.name+(t.attrs?x(t.attrs):``)+n,t.voidElement?e:e+t.children.reduce(S,``)+`</`+t.name+`>`}case`comment`:return e+=`<!--`+t.comment+`-->`,e}}function C(e){return e.reduce(function(e,t){return e+S(``,t)},``)}var w={parse:b,stringify:C},T=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);O(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},E={},D=(e,t,n,r)=>{O(n)&&E[n]||(O(n)&&(E[n]=new Date),T(e,t,n,r))},O=e=>typeof e==`string`,k=e=>typeof e==`object`&&!!e,A=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,j={"&amp;":`&`,"&#38;":`&`,"&lt;":`<`,"&#60;":`<`,"&gt;":`>`,"&#62;":`>`,"&apos;":`'`,"&#39;":`'`,"&quot;":`"`,"&#34;":`"`,"&nbsp;":`\xA0`,"&#160;":`\xA0`,"&copy;":`©`,"&#169;":`©`,"&reg;":`®`,"&#174;":`®`,"&hellip;":`…`,"&#8230;":`…`,"&#x2F;":`/`,"&#47;":`/`},M=e=>j[e],N=e=>e.replace(A,M),P={bindI18n:`languageChanged`,bindI18nStore:``,transEmptyNodeValue:``,transSupportBasicHtmlNodes:!0,transWrapTextNodes:``,transKeepBasicHtmlNodesFor:[`br`,`strong`,`i`,`p`],useSuspense:!0,unescape:N,transDefaultProps:void 0},F=()=>P,I,L=()=>I,R=(e,t)=>{if(!e)return!1;let n=e.props?.children??e.children;return t?n.length>0:!!n},z=e=>{if(!e)return[];let t=e.props?.children??e.children;return e.props?.i18nIsDynamicList?V(t):t},B=e=>V(e).every(l.isValidElement),V=e=>Array.isArray(e)?e:[e],H=(e,t)=>{let n={...t};return n.props={...t.props,...e.props},n},U=e=>{let t={};if(!e)return t;let n=e=>{V(e).forEach(e=>{O(e)||(R(e)?n(z(e)):k(e)&&!(0,l.isValidElement)(e)&&Object.assign(t,e))})};return n(e),t},W=(e,t,n,r)=>{if(!e)return``;let i=``,a=V(e),o=t?.transSupportBasicHtmlNodes?t.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((e,a)=>{if(O(e))i+=`${e}`;else if((0,l.isValidElement)(e)){let{props:s,type:c}=e,l=Object.keys(s).length,u=o.indexOf(c)>-1,d=s.children;if(!d&&u&&!l){i+=`<${c}/>`;return}if(!d&&(!u||l)||s.i18nIsDynamicList){i+=`<${a}></${a}>`;return}if(u&&l<=1){let e=O(d)?d:W(d,t,n,r);i+=`<${c}>${e}</${c}>`;return}let f=W(d,t,n,r);i+=`<${a}>${f}</${a}>`}else if(e===null)T(n,`TRANS_NULL_VALUE`,`Passed in a null value as child`,{i18nKey:r});else if(k(e)){let{format:t,...a}=e,o=Object.keys(a);if(o.length===1){let e=t?`${o[0]}, ${t}`:o[0];i+=`{{${e}}}`;return}T(n,`TRANS_INVALID_OBJ`,`Invalid child - Object should only have keys {{ value, format }} (format is optional).`,{i18nKey:r,child:e})}else T(n,`TRANS_INVALID_VAR`,`Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.`,{i18nKey:r,child:e})}),i},G=(e,t,n,r,i,a,o)=>{if(n===``)return[];let s=i.transKeepBasicHtmlNodesFor||[],c=n&&new RegExp(s.map(e=>`<${e}`).join(`|`)).test(n);if(!e&&!t&&!c&&!o)return[n];let u=t??{},d=e=>{V(e).forEach(e=>{O(e)||(R(e)?d(z(e)):k(e)&&!(0,l.isValidElement)(e)&&Object.assign(u,e))})};d(e);let f=Object.keys(u),p=w.parse(`<0>${n}</0>`,{allowedTags:e=>/^\d+$/.test(e)||s.indexOf(e)>-1||f.indexOf(e)>-1}),m={...u,...a},h=(e,t,n)=>{let r=z(e),i=_(r,t.children,n);return B(r)&&i.length===0||e.props?.i18nIsDynamicList?r:i},g=(e,t,n,r,i)=>{e.dummy?(e.children=t,n.push((0,l.cloneElement)(e,{key:r},i?void 0:t))):n.push(...l.Children.map([e],e=>{if(e.type===l.Fragment||e.props?.i18nIsDynamicList!==void 0){let n={key:r};return e&&e.props&&Object.keys(e.props).forEach(t=>{t!==`children`&&t!==`i18nIsDynamicList`&&(n[t]=e.props[t])}),(0,l.createElement)(e.type,n,i?null:t)}let n={key:r};return e&&e.props&&Object.keys(e.props).forEach(t=>{t!==`ref`&&t!==`children`&&(n[t]=e.props[t])}),(0,l.cloneElement)(e,n,i?null:t)}))},_=(e,n,a)=>{let u=V(e),d=V(n),f={};return d.reduce((e,n,d)=>{let p=n.children?.[0]?.content&&r.services.interpolator.interpolate(n.children[0].content,m,r.language);if(n.type===`tag`){let v=u[parseInt(n.name,10)];!v&&t&&(v=t[n.name]),a.length===1&&!v&&(v=a[0][n.name]),v||={};let y={...n.attrs};o&&Object.keys(y).forEach(e=>{let t=y[e];O(t)&&(y[e]=N(t))});let b=Object.keys(y).length===0?v:H({props:y},v),x=(0,l.isValidElement)(b),S=x&&R(n,!0)&&!n.voidElement,C=c&&k(b)&&b.dummy&&!x,w=k(t)&&Object.hasOwnProperty.call(t,n.name);if(O(b)){let t=r.services.interpolator.interpolate(b,m,r.language);e.push(t)}else if(R(b)||S){let t=h(b,n,a);g(b,t,e,d)}else if(C){let t=_(u,n.children,a);g(b,t,e,d)}else if(Number.isNaN(parseFloat(n.name))){if(w){let t=h(b,n,a);g(b,t,e,d,n.voidElement)}else if(i.transSupportBasicHtmlNodes&&s.indexOf(n.name)>-1){if(n.voidElement)e.push((0,l.createElement)(n.name,{key:`${n.name}-${d}`}));else{let t=f[n.name]||0;f[n.name]=t+1;let r,i=0;for(let e=0;e<u.length;e+=1){let a=u[e];if((0,l.isValidElement)(a)&&a.type===n.name){if(i===t){r=a;break}i+=1}}let o=r?V(z(r)):u,s=_(o,n.children,a);e.push((0,l.createElement)(n.name,{key:`${n.name}-${d}`},s))}}else if(n.voidElement)e.push(`<${n.name} />`);else{let t=_(u,n.children,a);e.push(`<${n.name}>${t}</${n.name}>`)}}else if(k(b)&&!x){let t=n.children[0]?p:null;t&&e.push(t)}else g(b,p,e,d,n.children.length!==1||!p)}else if(n.type===`text`){let t=i.transWrapTextNodes,a=typeof i.unescape==`function`?i.unescape:F().unescape,s=o?a(r.services.interpolator.interpolate(n.content,m,r.language)):r.services.interpolator.interpolate(n.content,m,r.language);t?e.push((0,l.createElement)(t,{key:`${n.name}-${d}`},s)):e.push(s)}return e},[])};return z(_([{dummy:!0,children:e||[]}],p,V(e||[]))[0])},K=(e,t,n)=>{let r=e.key||t,i=(0,l.cloneElement)(e,{key:r});if(!i.props||!i.props.children||n.indexOf(`${t}/>`)<0&&n.indexOf(`${t} />`)<0)return i;function a(){return(0,l.createElement)(l.Fragment,null,i)}return(0,l.createElement)(a,{key:r})},q=(e,t)=>e.map((e,n)=>K(e,n,t)),J=(e,t)=>{let n={};return Object.keys(e).forEach(r=>{Object.assign(n,{[r]:K(e[r],r,t)})}),n},Y=(e,t,n,r)=>e?Array.isArray(e)?q(e,t):k(e)?J(e,t):(D(n,`TRANS_INVALID_COMPONENTS`,`<Trans /> "components" prop expects an object or array`,{i18nKey:r}),null):null,X=e=>!k(e)||Array.isArray(e)?!1:Object.keys(e).reduce((e,t)=>e&&Number.isNaN(Number.parseFloat(t)),!0);function Z({children:e,count:t,parent:r,i18nKey:i,context:a,tOptions:o={},values:s,defaults:c,components:u,ns:d,i18n:f,t:p,shouldUnescape:m,...h}){let g=f||L();if(!g)return D(g,`NO_I18NEXT_INSTANCE`,`Trans: You need to pass in an i18next instance using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`,{i18nKey:i}),e;let _=p||g.t.bind(g)||(e=>e),v={...F(),...g.options?.react},y=d||(_.ns?void 0:g.options?.defaultNS||`translation`);O(y)&&(y=[y]);let{transDefaultProps:b}=v,x=b?.tOptions?{...b.tOptions,...o}:o,S=m??b?.shouldUnescape,C=b?.values?{...b.values,...s}:s,w=b?.components?{...b.components,...u}:u,T=W(e,v,g,i),E=c||x?.defaultValue||T||v.transEmptyNodeValue||(typeof i==`function`?n(i):i),{hashTransKey:k}=v,A=i||(k?k(T||E):T||E);s=g.options?.interpolation?.defaultVariables?{...g.options.interpolation.defaultVariables,...C}:C;let j=U(e);j&&typeof j.count==`number`&&t===void 0&&(t=j.count);let M=s||t!==void 0&&!g.options?.interpolation?.alwaysFormat||!e?x.interpolation:{interpolation:{...x.interpolation,prefix:`#$?`,suffix:`?$#`}},N={...x,context:a||x.context,count:t,...s,...M,defaultValue:E,ns:y},P=A?_(A,N):E;P===A&&E&&(P=E);let I=Y(w,P,g,i),R=I||e,z=null;X(I)&&(z=I,R=e);let B=G(R,z,P,g,v,N,S),V=r??v.defaultTransParent;return V?(0,l.createElement)(V,h,B):B}function Q({children:e,count:t,parent:n,i18nKey:r,context:a,tOptions:o={},values:s,defaults:c,components:u,ns:d,i18n:f,t:p,shouldUnescape:m,...h}){let{i18n:g,defaultNS:_}=(0,l.useContext)(i)||{},v=f||g||L(),y=p||v?.t.bind(v);return Z({children:e,count:t,parent:n,i18nKey:r,context:a,tOptions:o,values:s,defaults:c,components:u,ns:d||(y?.ns?void 0:_||v?.options?.defaultNS),i18n:v,t:p,shouldUnescape:m,...h})}export{c as n,o as r,Q as t};
@@ -0,0 +1 @@
1
+ import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{Cn as t,K as n,Mn as r,St as i,Vt as a,Wn as o,_n as s,bn as c,cn as l,gt as u,jn as d,q as f,r as p,xn as m,yn as h}from"./default-CCI1vZxa.js";import{$a as g,G as _,Gi as v,H as y,J as b,Ki as x,Lt as S,Pa as ee,Q as C,Qi as w,U as T,X as E,Y as D,Z as O,Za as te,Zi as k,at as A,ca as j,ct as ne,da as M,dr as N,ea as P,et as F,it as I,ko as L,la as R,mi as z,oa as B,ot as V,q as H,rt as re,sa as ie,st as U,ua as ae,xt as W,yo as oe}from"./search-DfbsqO7M.js";import{g as se}from"./item-DQR89bKm.js";import{l as ce,r as le}from"./project-lifecycle-VYecJuiP.js";import{r as ue}from"./CompositeItem-DLTRsada.js";import{t as de}from"./ellipsis-B0AE8ax3.js";import{t as fe}from"./invitations-Dp40BfHj.js";import{t as G}from"./forms-CkVpTx29.js";import{A as pe,D as me,E as he,M as ge,O as _e,T as ve,fn as ye,i as K,k as be,ln as xe,n as q,nn as Se,r as Ce,zt as J}from"./index-CZuFd4LM.js";import{t as we}from"./switch-CJTVGtE9.js";import{a as Te,i as Y,n as Ee,o as X,r as Z,t as De}from"./table-BLLjFPWD.js";import{t as Oe}from"./member-directory-XK0ZEGUq.js";var ke={name:`user-plus`,size:24,node:[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]};ke.node;var Ae=te(ke),Q=e(o(),1),$=p(),je={get local(){return s(`admin.instance.provider.local`)},get s3(){return s(`admin.instance.provider.s3`)},get postgres(){return s(`admin.instance.provider.postgres`)},get elasticsearch(){return s(`admin.instance.provider.elasticsearch`)},rabbitmq:`RabbitMQ`};function Me({data:e,section:t,onConfigure:n}){if(t===`general`)return(0,$.jsxs)(`section`,{children:[(0,$.jsx)(V,{title:s(`admin.instance.heading`),action:(0,$.jsx)(E,{label:s(`admin.instance.edit`),onClick:n,children:(0,$.jsx)(ue,{})})}),(0,$.jsx)(q,{title:s(`admin.instance.name`),description:e.name}),(0,$.jsx)(q,{title:s(`admin.instance.description`),description:e.description||s(`admin.instance.noDescription`)}),(0,$.jsx)(q,{title:s(`admin.instance.version`),children:(0,$.jsx)(`code`,{children:e.deployment.version})}),(0,$.jsx)(q,{title:s(`admin.instance.publicUrl`),children:(0,$.jsx)(_,{label:s(`admin.instance.publicUrl`),value:e.deployment.url,inline:!0})})]});let r=t===`storage`?e.storage:t===`search`?e.search:e.broker,i=s(t===`storage`?`admin.instance.section.storage`:t===`search`?`admin.instance.section.search`:`admin.instance.section.events`),a=r.source===`deployment`;return(0,$.jsxs)(`section`,{children:[(0,$.jsx)(V,{title:i,action:(0,$.jsx)(E,{label:s(a?`admin.instance.viewConfiguration`:`admin.instance.configure.${t}`),onClick:n,children:(0,$.jsx)(Se,{})})}),(0,$.jsx)(q,{title:s(`admin.instance.providerTitle`),description:je[r.provider],children:(0,$.jsx)(W,{variant:`secondary`,children:s(a?`admin.instance.deploymentManaged`:`admin.instance.instanceManaged`)})}),(0,$.jsx)(q,{title:s(t===`storage`?`admin.instance.transfers`:t===`search`?`admin.instance.indexStatus`:`admin.instance.connection`),description:t===`storage`?e.storage.provider===`s3`?s(`admin.instance.transfersS3`):s(`admin.instance.transfersLocal`):t===`search`?r.status===`builtin`?s(`admin.instance.searchBuiltIn`):s(`admin.instance.searchIndexed`):s(`admin.instance.eventsConnection`),children:(0,$.jsx)(W,{variant:r.status===`unavailable`?`destructive`:`outline`,children:r.status===`builtin`?s(`admin.instance.builtIn`):r.status===`ready`?s(t===`events`?`admin.instance.connected`:`admin.instance.upToDate`):s(`admin.instance.status.${r.status}`)})}),t===`storage`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{title:s(`admin.instance.pendingTransfers`),description:e.storage.pending?s(`admin.instance.pendingRemain`):s(`admin.instance.noPending`),children:e.storage.pending}),e.storage.settings&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{title:s(`admin.instance.bucket`),description:e.storage.settings.bucket}),(0,$.jsx)(_,{label:s(`admin.instance.storageEndpoint`),value:e.storage.settings.endpoint||`Amazon S3`})]}),(0,$.jsx)(q,{title:s(`admin.instance.backup`),description:e.locations.length?s(`admin.instance.backupBuckets`):s(`admin.instance.backupDatabase`)})]}),t===`search`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{title:s(`admin.instance.fallback`),description:s(`admin.instance.fallbackDescription`)}),e.search.settings&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_,{label:s(`admin.instance.searchEndpoint`),value:e.search.settings.url}),(0,$.jsx)(q,{title:s(`admin.instance.index`),description:e.search.settings.index})]})]}),t===`events`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(q,{title:s(`admin.instance.delivery`),description:s(`admin.instance.deliveryDescription`)}),e.broker.settings&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_,{label:s(`admin.instance.brokerEndpoint`),value:e.broker.settings.endpoint}),(0,$.jsx)(q,{title:s(`admin.instance.exchange`),description:e.broker.settings.exchange})]})]}),(0,$.jsx)(b,{error:r.error?Error(r.error):void 0})]})}function Ne({children:e,badge:t}){return(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-4 border-b py-3`,children:[e,(0,$.jsx)(W,{variant:`outline`,children:t})]})}function Pe({userId:e,onClose:t,onChanged:n}){let{shown:r,settled:i}=ve(e,e=>e),[a,o]=(0,Q.useState)(!1);return(0,$.jsx)(he,{open:!!e,onOpenChange:e=>{!e&&!a&&t()},onOpenChangeComplete:i,children:(0,$.jsx)(me,{className:`w-full! sm:max-w-lg!`,children:r&&(0,$.jsx)(Fe,{userId:r,pending:a,setPending:o,onClose:t,onChanged:n},r)})})}function Fe({userId:e,pending:t,setPending:r,onClose:i,onChanged:o}){let c=k(),[l,d]=(0,Q.useState)(null),[p,m]=(0,Q.useState)(),h=B(),_=P(`set_workspace_member`),y=g({queryKey:[`kanvil`,`user`,e],queryFn:()=>v.request(`/api/v1/admin/users/${encodeURIComponent(e)}`,R)}),w=y.data;async function E(e,t){r(!0),m(void 0);try{let n=await e();if(n&&typeof n==`object`&&`error`in n&&n.error){let e=n.error;throw Error(typeof e==`object`&&`message`in e?String(e.message):s(`admin.account.updateFailed`))}await o(),d(null),ee.success(t)}catch(e){throw m(e),e}finally{r(!1)}}return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(be,{className:`shrink-0 border-b pr-14`,children:[(0,$.jsx)(pe,{className:`mb-0`,children:w?.name??s(`admin.account.details`)}),(0,$.jsx)(_e,{className:`break-all`,children:w?.email})]}),(0,$.jsxs)(`div`,{className:`@container min-h-0 overflow-y-auto px-6 pb-8`,children:[(0,$.jsx)(b,{error:y.error??(l?void 0:p)}),y.isPending?(0,$.jsx)(C,{}):w&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`mb-7 flex flex-wrap items-center gap-4`,children:[(0,$.jsx)(ie,{name:w.name,image:w.image,className:`size-16 text-xl`}),(0,$.jsxs)(`div`,{className:`min-w-40 flex-1`,children:[(0,$.jsx)(W,{variant:w.banned?`destructive`:`secondary`,children:w.banned?s(`admin.users.disabled`):s(`admin.users.active`)}),(0,$.jsx)(`p`,{className:`mt-2 mb-0 text-xs text-muted-foreground`,children:s(`admin.account.joined`,{date:n(w.createdAt)})})]}),(0,$.jsxs)(z,{className:`ml-auto`,onClick:()=>{m(void 0),d(`profile`)},children:[(0,$.jsx)(ue,{}),s(`admin.account.edit`)]})]}),(0,$.jsx)(q,{title:s(`admin.account.instanceRole`),description:f(w.role)?s(`admin.account.adminDescription`):s(`admin.account.userDescription`),children:(0,$.jsx)(z,{onClick:()=>{m(void 0),d(`role`)},children:s(`admin.account.changeRole`)})}),(0,$.jsx)(q,{title:s(`admin.account.signInMethods`),description:ce(w.providers),children:(0,$.jsxs)(z,{onClick:()=>{m(void 0),d(`password`)},children:[(0,$.jsx)(xe,{}),s(`admin.account.setPassword`)]})}),(0,$.jsx)(q,{title:s(`admin.account.activeSessions`),description:s(`admin.account.sessions`,{count:w.sessionCount}),children:(0,$.jsx)(T,{label:s(`admin.account.revokeSessions`),description:s(`admin.account.revokeConfirm`,{name:w.name}),onConfirm:()=>E(()=>x.admin.revokeUserSessions({userId:w.id}),s(`admin.account.sessionsRevoked`))})}),w.id!==c.id&&(0,$.jsx)(q,{title:s(`admin.account.access`),description:w.banned?s(`admin.account.accessDisabled`):s(`admin.account.accessPreserved`),children:(0,$.jsx)(T,{label:w.banned?s(`admin.account.enable`):s(`admin.account.disable`),danger:!w.banned,description:w.banned?s(`admin.account.enableConfirm`,{name:w.name}):s(`admin.account.disableConfirm`,{name:w.name}),onConfirm:()=>E(()=>w.banned?x.admin.unbanUser({userId:w.id}):x.admin.banUser({userId:w.id,banReason:`Disabled by an instance administrator`}),w.banned?s(`admin.account.enabled`):s(`admin.account.disabledToast`))})}),w.id!==c.id&&(0,$.jsx)(le,{account:w,onDeleted:async()=>{i(),await o()}}),(0,$.jsxs)(`section`,{className:`pt-7`,children:[(0,$.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,$.jsx)(`h3`,{className:`mb-0`,children:s(`admin.account.workspaces`)}),(0,$.jsxs)(z,{size:`sm`,onClick:()=>{m(void 0),d(`workspace`)},children:[(0,$.jsx)(se,{}),s(`admin.account.addToWorkspace`)]})]}),w.workspaces.length?w.workspaces.map(e=>(0,$.jsx)(Ne,{badge:a[e.role],children:(0,$.jsx)(J,{to:`/workspaces/$workspaceId/settings`,params:{workspaceId:e.id},search:{section:`members`},onClick:i,className:`text-primary`,dir:`auto`,children:e.name})},e.id)):(0,$.jsx)(H,{title:s(`admin.account.noWorkspaces`),className:`py-5`})]}),!!w.projects.length&&(0,$.jsxs)(`section`,{className:`pt-7`,children:[(0,$.jsx)(`h3`,{children:s(`admin.account.projectAccess`)}),w.projects.map(e=>(0,$.jsx)(Ne,{badge:a[e.role],children:(0,$.jsx)(J,{to:`/projects/$projectId/settings`,params:{projectId:e.id},search:{section:`members`},onClick:i,className:`text-primary`,dir:`auto`,children:e.name})},e.id))]})]})]}),w&&(0,$.jsx)(F,{title:s(l===`profile`?`admin.account.edit`:l===`role`?`admin.account.changeRoleTitle`:l===`workspace`?`admin.account.addToWorkspace`:`admin.account.setPassword`),open:!!l,onOpenChange:e=>{e||d(null)},busy:t,children:(0,$.jsxs)(`form`,{onSubmit:e=>{e.preventDefault();let t=new FormData(e.currentTarget),n,r;if(l===`profile`)n=()=>x.admin.updateUser({userId:w.id,data:{name:G(t,`name`),email:G(t,`email`)}}),r=s(`admin.account.updated`);else if(l===`role`)n=()=>x.admin.setRole({userId:w.id,role:t.get(`role`)===`admin`?`admin`:`user`}),r=s(`admin.account.roleUpdated`);else if(l===`workspace`)n=()=>_.mutateAsync({workspaceId:G(t,`workspace`),email:w.email,role:G(t,`role`)===`reader`?`reader`:G(t,`role`)===`admin`?`admin`:`writer`}),r=s(`admin.account.workspaceAdded`);else{let e=G(t,`password`);if(e!==G(t,`confirm`)){m(Error(s(`admin.account.passwordMismatch`)));return}n=()=>v.request(`/api/v1/admin/users/${encodeURIComponent(w.id)}/password`,u,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:e})}),r=s(`admin.account.passwordSet`)}E(n,r).catch(()=>{})},children:[l===`profile`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(O,{label:s(`admin.account.name`),name:`name`,defaultValue:w.name,required:!0,maxLength:120,autoFocus:!0}),(0,$.jsx)(O,{label:s(`admin.account.email`),name:`email`,type:`email`,defaultValue:w.email,required:!0})]}):l===`role`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(U,{label:s(`admin.account.instanceRole`),name:`role`,defaultValue:f(w.role)?`admin`:`user`,children:[(0,$.jsx)(S,{value:`user`,children:s(`admin.account.user`)}),(0,$.jsx)(S,{value:`admin`,children:s(`admin.account.administrator`)})]}),(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:s(`admin.account.adminsNote`)})]}):l===`workspace`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(U,{label:s(`admin.account.workspace`),name:`workspace`,required:!0,children:h.data?.filter(e=>!w.workspaces.some(t=>t.id===e.id)).map(e=>(0,$.jsx)(S,{value:e.id,children:e.name},e.id))}),(0,$.jsxs)(U,{label:s(`admin.account.workspaceRole`),name:`role`,defaultValue:`writer`,children:[(0,$.jsx)(S,{value:`reader`,children:a.reader}),(0,$.jsx)(S,{value:`writer`,children:a.writer}),(0,$.jsx)(S,{value:`admin`,children:a.admin})]})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(O,{label:s(`admin.account.newPassword`),name:`password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:12,maxLength:128}),(0,$.jsx)(O,{label:s(`admin.account.confirmPassword`),name:`confirm`,type:`password`,autoComplete:`new-password`,required:!0,minLength:12,maxLength:128}),(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:s(`admin.account.passwordNote`)})]}),(0,$.jsx)(D,{error:p,pending:t,submitLabel:s(`admin.account.save`),pendingLabel:s(`common.state.saving`),onCancel:()=>d(null)})]},l)})]})}function Ie({onCreated:e,onCancel:t,pending:n,setPending:r}){let i=L(),[a,o]=(0,Q.useState)();async function c(t){t.preventDefault();let n=t.currentTarget,a=new FormData(n);r(!0),o(void 0);try{let t=await x.admin.createUser({name:G(a,`name`),email:G(a,`email`),password:G(a,`password`),role:a.get(`role`)===`admin`?`admin`:`user`});if(t.error)throw Error(t.error.message);await i.invalidateQueries({queryKey:[`kanvil`,`users`]}),e(t.data.user.id,t.data.user.email)}catch(e){o(e)}finally{r(!1)}}return(0,$.jsx)(`section`,{children:(0,$.jsxs)(`form`,{onSubmit:e=>{c(e)},children:[(0,$.jsx)(O,{label:s(`admin.users.name`),name:`name`,required:!0,maxLength:120,autoFocus:!0}),(0,$.jsx)(O,{label:s(`admin.users.email`),name:`email`,type:`email`,required:!0,autoComplete:`off`}),(0,$.jsx)(O,{label:s(`admin.users.initialPassword`),name:`password`,type:`password`,autoComplete:`new-password`,minLength:12,maxLength:128,required:!0}),(0,$.jsxs)(U,{label:s(`admin.users.instanceRole`),name:`role`,children:[(0,$.jsx)(S,{value:`user`,children:s(`admin.users.user`)}),(0,$.jsx)(S,{value:`admin`,children:s(`admin.users.administrator`)})]}),(0,$.jsx)(D,{error:a,pending:n,submitLabel:s(`admin.users.create`),pendingLabel:s(`admin.users.creating`),onCancel:t})]})})}function Le(){let e=L(),t=x.useSession(),[n,r]=(0,Q.useState)(!1),[i,a]=(0,Q.useState)(!1),[o,c]=(0,Q.useState)(``),[l,u]=(0,Q.useState)(`all`),[d,p]=(0,Q.useState)(`all`),[m,h]=(0,Q.useState)(0),[_,y]=(0,Q.useState)(null),w=g({queryKey:[`kanvil`,`users`,o,l,d,m],queryFn:()=>v.request(`/api/v1/admin/users?${new URLSearchParams({q:o,role:l,status:d,offset:String(m),limit:`25`})}`,ae),placeholderData:oe});async function T(){await Promise.all([e.invalidateQueries({queryKey:[`kanvil`]}),t.refetch()])}return(0,$.jsxs)(`section`,{children:[(0,$.jsx)(V,{title:s(`admin.users.title`),action:(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center justify-end gap-2`,children:[(0,$.jsx)(A,{label:s(`admin.users.search`),placeholder:s(`admin.users.searchPlaceholder`),value:o,onChange:e=>{c(e),h(0)}}),(0,$.jsx)(E,{label:s(`admin.users.new`),variant:`default`,onClick:()=>r(!0),children:(0,$.jsx)(Ae,{})})]})}),(0,$.jsxs)(`div`,{className:`mb-5 flex flex-wrap items-center gap-2`,children:[(0,$.jsxs)(U,{label:s(`admin.users.roleFilter`),labelHidden:!0,className:`mb-0 w-40`,value:l,onValueChange:e=>{e&&u(e),h(0)},children:[(0,$.jsx)(S,{value:`all`,children:s(`admin.users.allRoles`)}),(0,$.jsx)(S,{value:`admin`,children:s(`admin.users.administrators`)}),(0,$.jsx)(S,{value:`user`,children:s(`admin.users.users`)})]}),(0,$.jsxs)(U,{label:s(`admin.users.statusFilter`),labelHidden:!0,className:`mb-0 w-40`,value:d,onValueChange:e=>{e&&p(e),h(0)},children:[(0,$.jsx)(S,{value:`all`,children:s(`admin.users.allAccounts`)}),(0,$.jsx)(S,{value:`active`,children:s(`admin.users.active`)}),(0,$.jsx)(S,{value:`disabled`,children:s(`admin.users.disabled`)})]})]}),(0,$.jsx)(b,{error:w.error}),w.isPending?(0,$.jsx)(C,{}):w.data?.users.length?(0,$.jsx)(`div`,{"aria-busy":w.isFetching,children:(0,$.jsxs)(De,{mobileLayout:`rows`,"aria-label":s(`admin.users.title`),children:[(0,$.jsx)(Te,{children:(0,$.jsxs)(X,{children:[(0,$.jsx)(Y,{children:s(`admin.users.user`)}),(0,$.jsx)(Y,{children:s(`admin.users.role`)}),(0,$.jsx)(Y,{children:s(`admin.users.status`)}),(0,$.jsx)(Y,{children:s(`admin.users.joined`)}),(0,$.jsx)(Y,{children:(0,$.jsx)(`span`,{className:`sr-only`,children:s(`admin.users.actions`)})})]})}),(0,$.jsx)(Ee,{children:w.data.users.map(e=>(0,$.jsx)(ge,{name:e.name,email:e.email,onOpen:()=>y(e.id),children:(0,$.jsxs)(X,{children:[(0,$.jsx)(Z,{className:`whitespace-normal`,children:(0,$.jsx)(z,{variant:`ghost`,className:`h-auto max-w-full justify-start p-0 text-left hover:bg-transparent`,onClick:()=>y(e.id),children:(0,$.jsx)(j,{name:e.name,email:e.email,image:e.image})})}),(0,$.jsx)(Z,{"data-label":s(`admin.users.role`),children:(0,$.jsx)(W,{variant:`secondary`,children:f(e.role)?s(`admin.users.administrator`):s(`admin.users.user`)})}),(0,$.jsx)(Z,{"data-label":s(`admin.users.status`),children:(0,$.jsx)(W,{variant:e.banned?`destructive`:`outline`,children:e.banned?s(`admin.users.disabled`):s(`admin.users.active`)})}),(0,$.jsx)(Z,{"data-label":s(`admin.users.joined`),className:`text-xs text-muted-foreground`,children:(0,$.jsx)(I,{value:e.createdAt})}),(0,$.jsx)(Z,{children:(0,$.jsx)(z,{variant:`ghost`,size:`icon`,"aria-label":s(`admin.users.manage`,{name:e.name}),onClick:()=>y(e.id),children:(0,$.jsx)(de,{})})})]})},e.id))})]})}):(0,$.jsx)(H,{title:s(o||l!==`all`||d!==`all`?`admin.users.noMatches`:`admin.users.empty`),className:`py-12`}),(0,$.jsx)(re,{noun:s(`admin.users.pagerNoun`),offset:m,total:w.data?.total??0,size:25,onChange:h}),(0,$.jsx)(F,{title:s(`admin.users.create`),open:n,onOpenChange:r,busy:i,children:(0,$.jsx)(Ie,{pending:i,setPending:a,onCancel:()=>r(!1),onCreated:(e,t)=>{r(!1),c(``),u(`all`),p(`all`),h(0),y(e),ee.success(s(`admin.users.created`,{email:t}))}})}),(0,$.jsx)(Pe,{userId:_,onClose:()=>y(null),onChanged:T})]})}var Re=25;function ze(){let[e,t]=(0,Q.useState)(``),[n,r]=(0,Q.useState)(0),[i,a]=(0,Q.useState)(null),o=g({queryKey:[`kanvil`,`admin-workspaces`,e,n],queryFn:()=>v.request(`/api/v1/admin/workspaces?${new URLSearchParams({q:e,offset:String(n),limit:String(Re)})}`,M),placeholderData:oe});return(0,$.jsxs)(`section`,{children:[(0,$.jsx)(V,{title:s(`settings.workspaces.title`),action:(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center justify-end gap-2`,children:(0,$.jsx)(A,{label:s(`settings.workspaces.search`),placeholder:s(`settings.workspaces.searchPlaceholder`),value:e,onChange:e=>{t(e),r(0)}})})}),(0,$.jsx)(b,{error:o.error}),o.isPending?(0,$.jsx)(C,{}):o.data?.workspaces.length?(0,$.jsx)(`div`,{"aria-busy":o.isFetching,children:(0,$.jsxs)(De,{mobileLayout:`rows`,"aria-label":s(`settings.workspaces.title`),children:[(0,$.jsx)(Te,{children:(0,$.jsxs)(X,{children:[(0,$.jsx)(Y,{children:s(`settings.workspaces.workspace`)}),(0,$.jsx)(Y,{children:s(`settings.workspaces.administrators`)}),(0,$.jsx)(Y,{children:s(`settings.workspaces.members`)}),(0,$.jsx)(Y,{children:s(`settings.workspaces.projects`)}),(0,$.jsx)(Y,{children:s(`settings.workspaces.created`)}),(0,$.jsx)(Y,{children:(0,$.jsx)(`span`,{className:`sr-only`,children:s(`settings.workspaces.actions`)})})]})}),(0,$.jsx)(Ee,{children:o.data.workspaces.map(e=>(0,$.jsxs)(X,{children:[(0,$.jsx)(Z,{className:`whitespace-normal`,children:(0,$.jsxs)(z,{variant:`ghost`,className:`h-auto max-w-full flex-col items-start gap-0.5 p-0 text-left hover:bg-transparent`,onClick:()=>a(e),children:[(0,$.jsx)(`span`,{dir:`auto`,className:`font-medium wrap-anywhere whitespace-normal`,children:e.name}),(0,$.jsx)(`span`,{className:`font-mono text-xs font-normal text-muted-foreground`,children:e.slug})]})}),(0,$.jsx)(Z,{"data-label":s(`settings.workspaces.administrators`),className:`text-xs wrap-anywhere whitespace-normal`,children:e.administrators.length?l(e.administrators.map(e=>e.name)):(0,$.jsx)(W,{variant:`destructive`,children:s(`settings.workspaces.noAdministrator`)})}),(0,$.jsx)(Z,{"data-label":s(`settings.workspaces.members`),className:`tabular-nums`,children:e.memberCount}),(0,$.jsx)(Z,{"data-label":s(`settings.workspaces.projects`),className:`tabular-nums`,children:e.projectCount}),(0,$.jsx)(Z,{"data-label":s(`settings.workspaces.created`),className:`text-xs text-muted-foreground`,children:(0,$.jsx)(I,{value:e.createdAt})}),(0,$.jsx)(Z,{children:(0,$.jsx)(z,{variant:`ghost`,size:`icon`,"aria-label":s(`settings.workspaces.manage`,{name:e.name}),onClick:()=>a(e),children:(0,$.jsx)(de,{})})})]},e.id))})]})}):(0,$.jsx)(H,{title:s(e?`settings.workspaces.noMatches`:`settings.workspaces.empty`),className:`py-12`}),(0,$.jsx)(re,{noun:s(`settings.workspaces.pagerNoun`),offset:n,total:o.data?.total??0,size:Re,onChange:r}),(0,$.jsx)(Be,{workspace:i,onClose:()=>a(null)})]})}function Be({workspace:e,onClose:t}){let{shown:n,settled:r}=ve(e,e=>e.id),a=n?.id??``,o=g({...v.query(`list_workspace_members`,{workspaceId:a}),enabled:!!n}),c=g({...v.query(`list_projects`,{workspaceId:a,archived:`include`}),enabled:!!n}),l=g({...v.query(`list_workspace_roles`,{workspaceId:a}),enabled:!!n}),u=P(`set_workspace_member`);return(0,$.jsx)(he,{open:!!e,onOpenChange:e=>{!e&&!u.isPending&&t()},onOpenChangeComplete:r,children:(0,$.jsxs)(me,{className:`w-full! sm:max-w-lg!`,children:[(0,$.jsxs)(be,{className:`shrink-0 border-b pr-14`,children:[(0,$.jsx)(pe,{className:`mb-0`,children:n?.name??s(`settings.workspaces.workspace`)}),(0,$.jsx)(_e,{className:`font-mono`,children:n?.slug})]}),(0,$.jsxs)(`div`,{className:`@container min-h-0 overflow-y-auto px-6 pb-8`,children:[(0,$.jsx)(Oe,{people:o.data??[],pending:u.isPending,loading:o.isPending,error:o.error,canAdmin:!0,ownerId:n?.ownerId,scope:`workspace`,roles:l.data,authority:{admin:!0,capabilities:i},onChange:(e,t)=>u.mutateAsync({workspaceId:a,email:e,role:t})}),n&&(0,$.jsx)(fe,{workspaceId:n.id}),(0,$.jsxs)(`section`,{className:`pt-7`,children:[(0,$.jsx)(`h3`,{children:s(`settings.workspaces.projects`)}),(0,$.jsx)(b,{error:c.error}),c.isPending?(0,$.jsx)(C,{}):c.data?.length?c.data.map(e=>(0,$.jsx)(Ne,{badge:e.visibility===`private`?s(`settings.workspaces.private`):s(`settings.members.workspaceAccess`),children:(0,$.jsx)(J,{to:`/projects/$projectId/settings`,params:{projectId:e.id},search:{section:`members`},onClick:t,className:`text-primary`,children:e.name})},e.id)):(0,$.jsx)(H,{title:s(`settings.workspaces.noProjects`),className:`py-5`})]})]},n?.id)]})})}var Ve={queryKey:[`kanvil`,`instance`],queryFn:()=>v.request(`/api/v1/admin/instance`,h)};function He({section:e}){let t=g({...Ve,refetchOnMount:`always`,refetchInterval:[`search`,`storage`,`events`].includes(e)?5e3:!1});return t.data&&t.isFetchedAfterMount?(0,$.jsx)(Ue,{data:t.data,section:e},e):t.isPending||t.isFetching?(0,$.jsx)(C,{}):(0,$.jsx)(b,{error:t.error})}function Ue({data:e,section:n}){let i=L(),a=w(),[o,f]=(0,Q.useState)(()=>c(e)),[p,h]=(0,Q.useState)(!1),[g,x]=(0,Q.useState)(),[C,E]=(0,Q.useState)(``),[te,k]=(0,Q.useState)(!1),A=e.storage.source===`deployment`,j=e.search.source===`deployment`,M=e.broker.source===`deployment`,P=n===`storage`?A:n===`search`?j:n===`events`&&M,I=e=>f(t=>({...t,s3:{...t.s3,...e}})),R=e=>f(t=>({...t,elastic:{...t.elastic,...e}}));async function B(e,t,n=!1){x(void 0),E(``),h(!0);try{await e(),n?ee.success(t,{id:`instance-settings`}):E(t)}catch(e){x(e)}finally{h(!1)}}async function H(){let e=m(o,n===`authentication`);await v.request(`/api/v1/admin/instance`,u,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),f(e=>({...e,expectedVersion:e.expectedVersion+1,s3:{...e.s3,secretAccessKey:``},elastic:{...e.elastic,apiKey:``,password:``},rabbit:{...e.rabbit,url:``}})),await i.invalidateQueries({queryKey:[`kanvil`,`instance`]}),await i.invalidateQueries({queryKey:[`info`]}),k(!1)}return(0,$.jsxs)(Ce,{title:s(`admin.instance.title`),section:n,children:[[`general`,`storage`,`search`,`events`].map(t=>(0,$.jsx)(K,{value:t,children:(0,$.jsx)(Me,{data:e,section:t,onConfigure:()=>{f(c(e)),x(void 0),E(``),k(!0)}})},t)),!te&&n!==`authentication`&&(0,$.jsx)(b,{error:g}),(0,$.jsx)(F,{title:s(n===`general`?`admin.instance.edit`:n===`storage`?`admin.configure.storageTitle`:n===`search`?`admin.configure.searchTitle`:`admin.configure.eventsTitle`),open:te,onOpenChange:k,busy:p,children:(0,$.jsxs)(`form`,{className:`[&_section]:py-0 [&>[data-slot=field-set]>section:first-child]:pt-0`,onSubmit:e=>{e.preventDefault(),P||B(H,s(`admin.configure.saved`),!0)},children:[(0,$.jsxs)(N,{disabled:p,className:`gap-0`,children:[n===`general`&&(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`section`,{children:[(0,$.jsx)(`h2`,{children:s(`admin.instance.heading`)}),(0,$.jsx)(O,{label:s(`admin.configure.instanceName`),required:!0,maxLength:100,value:o.name,onChange:e=>f({...o,name:e.target.value})}),(0,$.jsx)(ne,{label:s(`admin.configure.instanceDescription`),maxLength:500,value:o.description,onChange:e=>f({...o,description:e.target.value})}),(0,$.jsx)(_,{label:s(`admin.instance.publicUrl`),value:e.deployment.url}),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:s(`admin.configure.publicUrlSource`)})]})}),n===`storage`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`section`,{children:[(0,$.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,$.jsx)(`h2`,{className:`mb-0`,children:s(`admin.instance.section.storage`)}),(0,$.jsx)(W,{variant:`secondary`,children:s(A?`admin.instance.deploymentManaged`:`admin.instance.instanceManaged`)})]}),(0,$.jsx)(`p`,{children:s(`admin.configure.storageIntro`)}),(0,$.jsxs)(U,{label:s(`admin.configure.storageProvider`),disabled:A,value:o.storageProvider,onValueChange:e=>f({...o,storageProvider:e===`s3`?`s3`:`local`}),children:[(0,$.jsx)(S,{value:`local`,children:s(`admin.instance.provider.local`)}),(0,$.jsx)(S,{value:`s3`,children:s(`admin.instance.provider.s3`)})]}),o.storageProvider===`local`?(0,$.jsx)(`p`,{children:s(`admin.configure.localDescription`)}):(0,$.jsxs)(N,{disabled:A,className:`gap-0`,children:[(0,$.jsx)(O,{label:s(`admin.configure.s3Endpoint`),type:`url`,placeholder:`https://s3.example.com`,value:o.s3.endpoint,onChange:e=>I({endpoint:e.target.value})}),(0,$.jsx)(`p`,{className:`-mt-2 text-xs`,children:s(`admin.configure.s3EndpointHint`)}),(0,$.jsxs)(`div`,{className:`grid grid-cols-1 gap-x-5 sm:grid-cols-2`,children:[(0,$.jsx)(O,{label:s(`admin.instance.bucket`),value:o.s3.bucket,required:!0,onChange:e=>I({bucket:e.target.value})}),(0,$.jsx)(O,{label:s(`admin.configure.region`),value:o.s3.region,required:!0,onChange:e=>I({region:e.target.value})})]}),(0,$.jsx)(O,{label:s(`admin.configure.prefix`),value:o.s3.prefix,onChange:e=>I({prefix:e.target.value})}),(0,$.jsx)(O,{label:s(`admin.configure.accessKeyId`),autoComplete:`off`,value:o.s3.accessKeyId,onChange:e=>I({accessKeyId:e.target.value})}),(0,$.jsx)(O,{label:s(`admin.configure.secretAccessKey`),type:`password`,autoComplete:`new-password`,value:o.s3.secretAccessKey,placeholder:e.storage.secretConfigured?s(`admin.configure.savedSecret`):s(`admin.configure.deploymentCredentials`),onChange:e=>I({secretAccessKey:e.target.value})}),(0,$.jsx)(y,{label:s(`admin.configure.pathStyle`),checked:o.s3.forcePathStyle,onCheckedChange:e=>I({forcePathStyle:e})})]}),o.storageProvider===`s3`&&(0,$.jsx)(z,{disabled:p,onClick:()=>{B(()=>v.request(`/api/v1/admin/storage/test`,u,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(o.s3)}),s(`admin.configure.storageVerified`))},children:s(`admin.configure.testStorage`)}),(0,$.jsx)(`p`,{className:`mt-4 text-xs`,role:`status`,children:e.storage.pending?s(`admin.configure.filesWaiting`,{count:e.storage.pending}):s(`admin.configure.transfersComplete`)}),e.storage.error&&(0,$.jsx)(b,{error:Error(e.storage.error)}),A&&(0,$.jsx)(`p`,{className:`mt-4 text-xs`,children:s(`admin.configure.storageDeployment`)})]}),e.locations.length>0&&(0,$.jsxs)(`section`,{children:[(0,$.jsx)(`h2`,{children:s(`admin.configure.locations`)}),e.locations.map(e=>(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 border-b py-2.5 text-xs wrap-anywhere [&>:first-child]:min-w-24 [&>:first-child]:flex-1`,children:[(0,$.jsxs)(`span`,{className:`grid gap-1`,children:[(0,$.jsx)(`strong`,{children:e.bucket}),(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[e.endpoint||`Amazon S3`,` / `,e.prefix]})]}),(0,$.jsx)(`span`,{children:s(`admin.configure.locationFiles`,{count:e.objects})})]},e.id)),(0,$.jsx)(`div`,{className:`mt-4`,children:(0,$.jsx)(T,{label:s(`admin.configure.cleanUp`),description:s(`admin.configure.cleanUpConfirm`),onConfirm:async()=>{await v.request(`/api/v1/admin/storage/cleanup`,r({removed:d()}),{method:`POST`}),await i.invalidateQueries({queryKey:[`kanvil`,`instance`]})}})}),(0,$.jsx)(`p`,{className:`mt-3 text-xs`,children:s(`admin.configure.cleanUpNote`)})]})]}),n===`search`&&(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`section`,{children:[(0,$.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,$.jsx)(`h2`,{className:`mb-0`,children:s(`admin.instance.section.search`)}),(0,$.jsx)(W,{variant:`secondary`,children:e.search.status===`builtin`?`PostgreSQL`:s(`admin.instance.status.${e.search.status}`)})]}),(0,$.jsxs)(U,{label:s(`admin.configure.searchProvider`),disabled:j,value:o.searchProvider,onValueChange:e=>f({...o,searchProvider:e===`elasticsearch`?`elasticsearch`:`postgres`}),children:[(0,$.jsx)(S,{value:`postgres`,children:s(`admin.configure.searchBuiltIn`)}),(0,$.jsx)(S,{value:`elasticsearch`,children:s(`admin.instance.provider.elasticsearch`)})]}),o.searchProvider===`elasticsearch`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(N,{disabled:j,className:`gap-0`,children:[(0,$.jsx)(O,{label:s(`admin.instance.searchEndpoint`),type:`url`,required:!0,value:o.elastic.url,onChange:e=>R({url:e.target.value})}),(0,$.jsx)(O,{label:s(`admin.configure.indexName`),required:!0,value:o.elastic.index,onChange:e=>R({index:e.target.value})}),(0,$.jsxs)(U,{label:s(`admin.configure.searchAuthentication`),value:o.elastic.auth,onValueChange:e=>R({auth:t.parse(e)}),children:[(0,$.jsx)(S,{value:`none`,children:s(`admin.configure.noAuthentication`)}),(0,$.jsx)(S,{value:`apiKey`,children:s(`admin.configure.apiKey`)}),(0,$.jsx)(S,{value:`basic`,children:s(`admin.configure.basic`)})]}),o.elastic.auth===`apiKey`&&(0,$.jsx)(O,{label:s(`admin.configure.searchApiKey`),type:`password`,autoComplete:`new-password`,placeholder:e.search.secretConfigured?s(`admin.configure.savedSecret`):s(`admin.configure.optional`),value:o.elastic.apiKey,onChange:e=>R({apiKey:e.target.value})}),o.elastic.auth===`basic`&&(0,$.jsxs)(`div`,{className:`grid grid-cols-1 gap-x-5 sm:grid-cols-2`,children:[(0,$.jsx)(O,{label:s(`admin.configure.searchUsername`),autoComplete:`off`,value:o.elastic.username,onChange:e=>R({username:e.target.value})}),(0,$.jsx)(O,{label:s(`admin.configure.searchPassword`),type:`password`,autoComplete:`new-password`,value:o.elastic.password,onChange:e=>R({password:e.target.value})})]})]}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(z,{onClick:()=>{B(()=>v.request(`/api/v1/admin/search/test`,u,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(o.elastic)}),s(`admin.configure.searchVerified`))},children:s(`admin.configure.testSearch`)}),e.search.provider===`elasticsearch`&&(0,$.jsx)(z,{onClick:()=>{B(()=>v.request(`/api/v1/admin/search/reindex`,u,{method:`POST`}),s(`admin.configure.rebuildQueued`))},children:s(`admin.configure.rebuild`)})]})]}),(0,$.jsx)(`p`,{className:`mt-5`,children:s(`admin.configure.searchNote`)}),e.search.error&&(0,$.jsx)(b,{error:Error(e.search.error)})]})}),n===`events`&&(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`section`,{children:[(0,$.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,$.jsx)(`h2`,{className:`mb-0`,children:s(`admin.instance.section.events`)}),(0,$.jsx)(W,{variant:`secondary`,children:e.broker.status===`builtin`?`PostgreSQL`:s(`admin.instance.status.${e.broker.status}`)})]}),(0,$.jsxs)(U,{label:s(`admin.configure.brokerProvider`),disabled:M,value:o.brokerProvider,onValueChange:e=>f({...o,brokerProvider:e===`rabbitmq`?`rabbitmq`:`postgres`}),children:[(0,$.jsx)(S,{value:`postgres`,children:s(`admin.configure.brokerBuiltIn`)}),(0,$.jsx)(S,{value:`rabbitmq`,children:`RabbitMQ`})]}),o.brokerProvider===`rabbitmq`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(N,{disabled:M,className:`gap-0`,children:[(0,$.jsx)(O,{label:s(`admin.configure.rabbitUrl`),type:`password`,autoComplete:`new-password`,value:o.rabbit.url,placeholder:e.broker.secretConfigured?s(`admin.configure.savedSecret`):`amqps://user:password@host/vhost`,onChange:e=>f({...o,rabbit:{...o.rabbit,url:e.target.value}})}),e.broker.settings&&(0,$.jsx)(_,{label:s(`admin.configure.savedBrokerEndpoint`),value:e.broker.settings.endpoint}),(0,$.jsx)(O,{label:s(`admin.configure.rabbitExchange`),required:!0,value:o.rabbit.exchange,onChange:e=>f({...o,rabbit:{...o.rabbit,exchange:e.target.value}})})]}),(0,$.jsx)(z,{onClick:()=>{B(()=>v.request(`/api/v1/admin/broker/test`,u,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...o.rabbit,url:o.rabbit.url||void 0})}),s(`admin.configure.brokerVerified`))},children:s(`admin.configure.testBroker`)})]}),(0,$.jsx)(`p`,{className:`mt-5`,children:s(`admin.configure.brokerNote`)}),M&&(0,$.jsx)(`p`,{className:`mt-4 text-xs`,children:s(`admin.configure.brokerDeployment`)}),e.broker.error&&(0,$.jsx)(b,{error:Error(e.broker.error)})]})})]}),[`general`,`storage`,`search`,`events`].includes(n)&&(0,$.jsxs)(`div`,{className:`sticky bottom-0 mt-6 flex flex-wrap items-center gap-3 border-t bg-background/95 py-4 backdrop-blur`,children:[(0,$.jsx)(z,{disabled:p,onClick:()=>k(!1),children:s(P?`common.action.done`:`common.action.cancel`)}),!P&&(0,$.jsx)(z,{variant:`default`,type:`submit`,disabled:p,children:s(p?`common.state.saving`:`admin.configure.save`)}),C&&(0,$.jsx)(`span`,{role:`status`,className:`text-sm text-muted-foreground`,children:C}),(0,$.jsx)(b,{error:g})]})]})}),(0,$.jsx)(K,{value:`users`,children:(0,$.jsx)(Le,{})}),(0,$.jsx)(K,{value:`workspaces`,children:(0,$.jsx)(ze,{})}),(0,$.jsx)(K,{value:`authentication`,children:(0,$.jsxs)(`section`,{children:[(0,$.jsx)(V,{title:s(`admin.authentication.title`)}),(0,$.jsxs)(`form`,{className:`mb-6`,onSubmit:e=>{e.preventDefault(),B(H,s(`admin.authentication.saved`),!0)},children:[(0,$.jsx)(q,{title:s(`admin.authentication.emailPassword`),description:s(`admin.authentication.emailPasswordDescription`),children:(0,$.jsx)(we,{"aria-label":s(`admin.authentication.emailPassword`),checked:o.authentication.emailPasswordEnabled,disabled:p,onCheckedChange:e=>f(t=>({...t,authentication:{...t.authentication,emailPasswordEnabled:e}}))})}),(0,$.jsx)(q,{title:s(`admin.authentication.ssoProvision`),description:s(`admin.authentication.ssoProvisionDescription`),children:(0,$.jsx)(we,{"aria-label":s(`admin.authentication.ssoProvision`),checked:o.authentication.ssoAutoProvision,disabled:p,onCheckedChange:e=>f(t=>({...t,authentication:{...t.authentication,ssoAutoProvision:e}}))})}),(0,$.jsx)(q,{title:s(`admin.authentication.registration`),children:s(`admin.authentication.registrationClosed`)}),(0,$.jsx)(q,{title:s(`admin.authentication.identityProvider`),children:e.deployment.oidc?.name??s(`admin.authentication.notConfigured`)}),(0,$.jsx)(q,{title:s(`admin.authentication.linkedProviders`),description:s(`admin.authentication.linkedProvidersDescription`),children:l(a.data?.providers.filter(e=>e.id!==`oidc`).map(e=>e.name)??[])||s(`admin.authentication.notConfigured`)}),(0,$.jsx)(D,{layout:`inline`,error:g,pending:p,submitLabel:s(`admin.authentication.save`),pendingLabel:s(`common.state.saving`),submitDisabled:o.authentication.emailPasswordEnabled===e.authentication.emailPasswordEnabled&&o.authentication.ssoAutoProvision===e.authentication.ssoAutoProvision})]}),e.deployment.oidc&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_,{label:s(`admin.authentication.discoveryUrl`),value:e.deployment.oidc.discoveryUrl}),(0,$.jsx)(_,{label:s(`admin.authentication.clientId`),value:e.deployment.oidc.clientId})]}),(0,$.jsx)(`p`,{children:s(`admin.authentication.oidcSetup`)}),(0,$.jsx)(`h3`,{children:s(`admin.authentication.consumers`)}),(0,$.jsx)(_,{label:`HTTP API`,value:`${e.deployment.url}/api/v1`}),(0,$.jsx)(_,{label:s(`admin.authentication.mcpEndpoint`),value:`${e.deployment.url}/mcp`}),(0,$.jsx)(_,{label:s(`admin.authentication.eventFeed`),value:`${e.deployment.url}/api/v1/events`}),(0,$.jsxs)(`a`,{className:`inline-flex items-center gap-2 text-primary`,href:`/api/openapi.json`,target:`_blank`,rel:`noreferrer`,children:[s(`admin.authentication.openApi`),(0,$.jsx)(ye,{className:`size-4`})]})]})})]})}export{He as AdminSettings};
@@ -1 +1 @@
1
- import{Za as e}from"./search-Cvetr1OK.js";var t={name:`archive-restore`,size:24,node:[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h2`,key:`tvwodi`}],[`path`,{d:`M20 8v11a2 2 0 0 1-2 2h-2`,key:`1gkqxj`}],[`path`,{d:`m9 15 3-3 3 3`,key:`1pd0qc`}],[`path`,{d:`M12 12v9`,key:`192myk`}]]};t.node;var n=e(t);export{n as t};
1
+ import{Za as e}from"./search-DfbsqO7M.js";var t={name:`archive-restore`,size:24,node:[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h2`,key:`tvwodi`}],[`path`,{d:`M20 8v11a2 2 0 0 1-2 2h-2`,key:`1gkqxj`}],[`path`,{d:`m9 15 3-3 3 3`,key:`1pd0qc`}],[`path`,{d:`M12 12v9`,key:`192myk`}]]};t.node;var n=e(t);export{n as t};
@@ -0,0 +1 @@
1
+ var e={common:{status:{backlog:`Gözləmə siyahısı`,todo:`Ediləcək`,in_progress:`İcrada`,in_review:`Yoxlamada`,done:`Hazırdır`,cancelled:`Ləğv edilib`},priority:{urgent:`Təcili`,high:`Yüksək`,medium:`Orta`,low:`Aşağı`,none:`Prioritet yoxdur`},kind:{feature:`Funksiya`,bug:`Xəta`,chore:`Rutin iş`,research:`Araşdırma`,documentation:`Sənədləşmə`},difficulty:{low:`Aşağı`,med:`Orta`,high:`Yüksək`,none:`Çətinlik yoxdur`},role:{reader:`Yalnız oxuma`,writer:`Redaktə edə bilər`,admin:`Administrator`},permission:{ticket:{write:{label:`Tiketləri redaktə etmək`,description:`Tiketləri yaratmaq, redaktə etmək, köçürmək, götürmək və şərh yazmaq; layihə yaratmaq`},delete:{label:`Tiketləri silmək`,description:`Tiketləri həmişəlik silmək`}},project:{manage:{label:`Layihələri idarə etmək`,description:`Layihə məlumatları, iş axını, etiketlər, sahələr, inteqrasiyalar və həyat dövrü`}},member:{manage:{label:`Üzvləri idarə etmək`,description:`Üzvləri əlavə etmək, dəyişmək və çıxarmaq`}},invitation:{manage:{label:`Dəvətləri idarə etmək`,description:`İnsanları e-poçtla dəvət etmək`}},sharing:{manage:{label:`Paylaşımı idarə etmək`,description:`İctimai yalnız oxuma keçidləri və təqvim lentləri`}},workspace:{manage:{label:`İş sahəsini idarə etmək`,description:`İş sahəsi məlumatları, ümumi etiketlər və rollar`}}},customFieldType:{text:`Mətn`,number:`Rəqəm`,date:`Tarix`,checkbox:`Qeyd qutusu`,select:`Seçim`,multiselect:`Çoxlu seçim`},customField:{removedOption:`Silinmiş seçim`,checked:`Bəli`},filterField:{status:`Status`,priority:`Prioritet`,kind:`Növ`,difficulty:`Çətinlik`,automation:`Agent hazırlığı`,label:`Etiket`,assigneeId:`İcraçı`,customField:`Sahə`},automationFilter:{ready:`Agentlər üçün hazırdır`,manual:`İnsan tələb edir`},sort:{priority:`Prioritet`,updated:`Son yenilənənlər`,created:`Son yaradılanlar`,title:`Başlıq`,labels:`Etiketlər`,due:`Son tarix`,start:`Başlama tarixi`,number:`Tiket nömrəsi`,status:`Status`,difficulty:`Çətinlik`,kind:`Növ`,assignee:`İcraçı`,manual:`Əl ilə`},due:{overdue:`Gecikmiş`,today:`Bu gün bitir`,week:`Bu həftə bitir`,scheduled:`Son tarixi var`,none:`Son tarix yoxdur`},relation:{blocks:{outgoing:`Bloklayır`,incoming:`Tərəfindən bloklanır`},related:{outgoing:`Əlaqəlidir`,incoming:`Əlaqəlidir`},duplicate:{outgoing:`Təkrarlayır`,incoming:`Tərəfindən təkrarlanır`},causes:{outgoing:`Səbəb olur`,incoming:`Səbəbi`},clones:{outgoing:`Klonlayır`,incoming:`Tərəfindən klonlanır`},implements:{outgoing:`Həyata keçirir`,incoming:`Tərəfindən həyata keçirilir`},reviews:{outgoing:`Yoxlayır`,incoming:`Tərəfindən yoxlanılır`}},remoteKind:{branch:`Budaq`,pull_request:`Pull request`,issue:`Məsələ`},notificationCategory:{assignment:`Təyinatlar`,status:`Status dəyişiklikləri`,comment:`Şərhlər`,mention:`İstinadlar`,update:`Digər yeniliklər`,due_soon:`Müddəti yaxınlaşır`,overdue:`Gecikmiş`},destinationEvent:{created:`Yeni tiketlər`},deliveryKind:{email:`E-poçt`,webhook:`Webhook`},change:{pull_request:{name:`Pull request`,opened:`Pull request açıldı`,draft:`Qaralama pull request`,merged:`Pull request birləşdirildi`,closed:`Pull request birləşdirilmədən bağlandı`},merge_request:{name:`Merge request`,opened:`Merge request açıldı`,draft:`Qaralama merge request`,merged:`Merge request birləşdirildi`,closed:`Merge request birləşdirilmədən bağlandı`},branchCreated:`Budaq yaradıldı`},issueLinkState:{active:`Sinxronlaşdırılır`,paused:`Dayandırılıb`,review:`Yoxlama tələb olunur`,creating:`Məsələ yaradılır`,unknown:`Yaradılma təsdiqlənməyib`},importStatus:{previewed:`İdxala hazırdır`,running:`İdxal edilir`,completed:`İdxal edildi`,failed:`Uğursuz oldu`,cancelled:`Ləğv edildi`},importProvider:{linear:{project:`Komanda`,setup:`Linear-da Settings › Security & access bölməsində şəxsi API açarı yaradın; oxuma icazəsi kifayətdir.`},jira:{project:`Layihə`,setup:`Jira Cloud hesabınızın e-poçtu və id.atlassian.com-dan alınan API tokeni ilə daxil olur; Data Center və Server şəxsi giriş tokenindən istifadə edir. Layihəyə baxış icazəsi kifayətdir.`},trello:{project:`Lövhə`,setup:`trello.com/power-ups/admin ünvanında idarə etdiyiniz Power-Up-ın API açarından və onun üçün yaradılmış tokendən istifadə edin; oxuma icazəsi kifayətdir.`},plane:{project:`Layihə`,setup:`Plane-də Profile settings › Personal access tokens bölməsində şəxsi giriş tokeni yaradın. Plane Cloud API ünvanı: https://api.plane.so; iş sahəsinin URL açarı onun veb ünvanının ilk hissəsidir.`},planka:{project:`Lövhə`,setup:`Lövhəni aça bilən PLANKA hesabı ilə daxil olun; Kanvil-in açdığı sessiya oxuma bitəndə başa çatır. PLANKA 2 administratorları bunun əvəzinə API açarları verə bilər.`},kaneo:{project:`Layihə`,setup:`Kaneo-da Settings › Account › Developer bölməsində API açarı yaradın.`}},plankaSignIn:{password:`İstifadəçi adı və şifrə`,api_key:`API açarı`},jiraEdition:{cloud:`Cloud`,data_center:`Data Center və ya Server`},event:{time_entry:{created:`Vaxt qeydi yaradıldı`,updated:`Vaxt qeydi yeniləndi`,deleted:`Vaxt qeydi silindi`},label:{created:`Etiket yaradıldı`,updated:`Etiket yeniləndi`,deleted:`Etiket silindi`},workflow:{created:`İş axını vəziyyəti əlavə edildi`,updated:`İş axını vəziyyəti dəyişdirildi`,deleted:`İş axını vəziyyəti silindi`},custom_field:{created:`Sahə yaradıldı`,updated:`Sahə yeniləndi`,deleted:`Sahə silindi`},ticket:{created:`Tiket yaradıldı`,updated:`Tiket yeniləndi`,deleted:`Tiket silindi`,moved:`Başqa layihədən köçürüldü`,moved_away:`Başqa layihəyə köçürüldü`,due_soon:`Müddəti yaxınlaşır`,overdue:`Gecikmiş`,claimed:`İş götürüldü`},claim:{renewed:`Götürmə yeniləndi`,released:`Götürmə buraxıldı`,recovered:`Götürmə bərpa edildi`},comment:{created:`Şərh əlavə edildi`,updated:`Şərh redaktə edildi`,deleted:`Şərh silindi`},relation:{added:`Əlaqə əlavə edildi`,removed:`Əlaqə silindi`},attachment:{created:`Fayl qoşuldu`,deleted:`Fayl silindi`},evidence:{added:`Sübut qoşuldu`},resource:{added:`Keçid əlavə edildi`,updated:`Keçid redaktə edildi`,removed:`Keçid silindi`},calendar_feed:{created:`Təqvim lenti yaradıldı`,revoked:`Təqvim lenti ləğv edildi`},project:{created:`Layihə yaradıldı`,updated:`Layihə yeniləndi`,archived:`Layihə arxivləşdirildi`,restored:`Layihə bərpa edildi`,transferred:`Layihə başqa iş sahəsinə köçürüldü`,deleted:`Layihə silindi`},membership:{updated:`Layihəyə giriş dəyişdirildi`},workspace:{owner_changed:`İş sahəsinin sahibi dəyişdirildi`},role:{created:`Rol yaradıldı`,updated:`Rol dəyişdirildi`,deleted:`Rol silindi`},invitation:{updated:`Dəvət dəyişdirildi`},destination:{created:`Təyinat əlavə edildi`,updated:`Təyinat dəyişdirildi`,deleted:`Təyinat silindi`},repository:{connected:`Repozitori qoşuldu`,updated:`Repozitori bağlantısı dəyişdirildi`,disconnected:`Repozitori ayrıldı`,received:`Repozitori webhooku alındı`},issue_link:{updated:`Məsələ sinxronizasiyası dəyişdirildi`}},error:{network:`Kanvil ilə əlaqə qurulmadı. Bağlantınızı yoxlayıb yenidən cəhd edin.`,fallback:`Sorğu tamamlana bilmədi`,input:`Daxil edilən məlumat`,code:{unauthorized:`Davam etmək üçün daxil olun.`,session_required:`Bu əməliyyat üçün daxil olmuş hesabdan istifadə edin.`,account_disabled:`Bu hesab deaktiv edilib.`,forbidden:`Bunu etməyə icazəniz yoxdur.`,insufficient_scope:`Bu giriş məlumatı bu əməliyyata icazə vermir.`,workspace_scope_required:`Bu əməliyyat üçün iş sahəsinə girişi olan hesabdan istifadə edin.`,invalid_origin:`Bu mənbəyə icazə verilmir.`,not_found:`Bu element tapılmadı və ya ona baxmaq icazəniz yoxdur.`,version_conflict:`Yükləndikdən sonra dəyişdirilib. Yenidən yükləyib təkrar cəhd edin.`,time_entry_conflict:`Bu istifadəçinin tapşırıqda artıq davam edən vaxt qeydi var.`,claim_conflict:`Bu tiket başqa işçidədir.`,idempotency_conflict:`Bu sorğu artıq başqa dəyişiklik üçün istifadə edilib.`,duplicate_repository:`Bu iş sahəsindəki başqa layihə bu repozitoriyaya bağlıdır.`,project_archived:`Dəyişməzdən əvvəl arxivləşdirilmiş layihəni bərpa edin.`,rate_limited:`Qısa müddətdə həddən artıq dəyişiklik. Gözləyib yenidən cəhd edin.`,snapshot_required:`Canlı lent geri qaldı. Davam etmək üçün yenidən yükləyin.`,request_failed:`Sorğu tamamlana bilmədi`}},action:{add:`Əlavə et`,apply:`Tətbiq et`,back:`Geri`,cancel:`Ləğv et`,clear:`Təmizlə`,close:`Bağla`,confirm:`Təsdiqlə`,continue:`Davam et`,copy:`Kopyala`,create:`Yarat`,delete:`Sil`,done:`Hazır`,edit:`Redaktə et`,open:`Aç`,remove:`Çıxar`,rename:`Adını dəyiş`,reset:`Sıfırla`,retry:`Yenidən cəhd et`,save:`Yadda saxla`,search:`Axtar`},state:{copied:`Kopyalandı`,loading:`Yüklənir…`,saved:`Yadda saxlanıldı`,saving:`Yadda saxlanılır…`,none:`Yoxdur`,unassigned:`Təyin edilməyib`},evidenceKind:{pull_request:`Pull request`,test:`Test`,review:`Yoxlama`,deployment:`Yerləşdirmə`,device:`Cihaz`,other:`Digər`},evidenceOutcome:{reported:`Bildirilib`,pending:`Gözləyir`,passed:`Uğurlu`,failed:`Uğursuz`},readinessReason:{project_archived:`Layihə arxivləşdirilib`,not_open:`Tiket “Ediləcək” vəziyyətində olmalı və arxivdə olmamalıdır`,not_enabled:`Agent işi aktivləşdirilməyib`,missing_description:`Təsvir əlavə edin`,missing_acceptance_criteria:`Qəbul meyarları əlavə edin`,missing_difficulty:`Çətinlik seçin`,duplicate:`Bu tiket təkrar kimi qeyd edilib`,claim_recovery_required:`Sahibliyi bərpa etməzdən əvvəl əvvəlki işçinin dayandığını təsdiqləyin`,claimed:`{{worker}} tərəfindən götürülüb`,dependency:`{{key}} tamamlanmayıb`},person:{deleted:`Silinmiş hesab`,former:`Keçmiş üzv`},signIn:{codeTitle:`Kodla daxil ol`,resetTitle:`Şifrəni sıfırla`,codeSent:`{{email}} ünvanının hesabı varsa, kod göndərilir. Kodun müddəti 10 dəqiqəyə bitir.`,code:`Kod`,newPassword:`Yeni şifrə`,sendCode:`Kodu e-poçtla göndər`,back:`Daxil olmaya qayıt`,resend:`Kodu yenidən göndər`,resent:`Kod yenidən göndərildi`,emailCode:`Daxil olma kodunu e-poçtla göndər`,forgot:`Şifrəni unutmusunuz?`,resetDone:`Şifrə sıfırlandı. Yeni şifrə ilə daxil olun.`,resetDoneTitle:`Şifrə sıfırlandı`,resetDoneBody:`Yeni şifrə ilə daxil olun.`,invalidCode:`Bu kod yanlışdır, artıq istifadə olunub və ya müddəti bitib. Etibarlı kod almaq üçün yenidən göndərin.`,localPassword:`Yerli şifrə`},language:{label:`Dil`,system:`Sistem standartı`}},shell:{ui:{showValue:`{{label, lowercase}} göstər`,hideValue:`{{label, lowercase}} gizlət`,previousPage:`Əvvəlki {{noun}}`,nextPage:`Növbəti {{noun}}`,pageRange:`{{from}}–{{to}} / {{total}}`,priority:`Prioritet: {{label}}`,working:`İcra olunur…`,searchPlaceholder:`Axtar…`,clearValue:`{{label, lowercase}} təmizlə`,copyValue:`{{label, lowercase}} kopyala`,copied:`{{value}} kopyalandı`},documentTitle:`{{name}} · Kanvil`,openKanvil:`Kanvil-i aç`,page:{home:`Əsas səhifə`,myWork:`Mənim işlərim`,inbox:`Gələnlər`,search:`Axtarış`,settings:`Parametrlər`,planning:`Planlaşdırma`,ticket:`Tiket`,tickets:`Tiketlər`,projects:`Layihələr`},connection:{restored:`Bağlantı bərpa edildi`,lost:`Bağlantı kəsildi`,reconnecting:`Yenidən qoşulur…`,reload:`Yenidən yüklə`,signIn:`Yenidən qoşulmaq üçün daxil olun`},app:{skipToContent:`Məzmuna keç`,assigned:`Sizə təyin edilənlər`,openCount_one:`{{count, number}} açıq`,openCount_other:`{{count, number}} açıq`,noAssigned:`Sizə təyin edilmiş açıq tiket yoxdur`,allInMyWork_one:`“Mənim işlərim”də hamısı ({{count, number}})`,allInMyWork_other:`“Mənim işlərim”də hamısı ({{count, number}})`,openMyWork:`“Mənim işlərim”i aç`,recentActivity:`Son fəaliyyət`,noActivity:`Hələ fəaliyyət yoxdur`,searchProjects:`Layihələrdə axtar`,projectCount_one:`{{count, number}} layihə`,projectCount_other:`{{count, number}} layihə`,noMatchingProjects:`Uyğun layihə yoxdur`,clearSearch:`Axtarışı təmizlə`,noWorkspaces:`Hələ iş sahəsi yoxdur`,noActiveProjects:`Aktiv layihə yoxdur`,noProjects:`Hələ layihə yoxdur`,archivedProjects:`Arxivləşdirilmiş layihələr`,archived:`Arxivləşdirilib`,noOpenTickets:`Açıq tiket yoxdur`,overdueCount_one:`{{count, number}} gecikmiş`,overdueCount_other:`{{count, number}} gecikmiş`,percentDone:`{{percent}} hazırdır`,nextDue:`növbəti son tarix <time/>`,projectSettingsFor:`{{name}} layihəsinin parametrləri`,pageNotFound:`Səhifə tapılmadı`,openHome:`Əsas səhifəni aç`,tryAgain:`Yenidən cəhd edin`,adminRequired:`Nüsxə administratoru girişi tələb olunur`,projectNotFound:`Layihə tapılmadı`,noWorkspaceSelected:`İş sahəsi seçilməyib`},auth:{signIn:`Daxil ol`,createOwner:`Sahib hesabınızı yaradın`,ownerHint:`İlk hesab bu nüsxəni idarə edir.`,invitedHint:`Dəvəti qəbul etmək üçün dəvət edilmiş e-poçt ünvanı ilə daxil olun.`,signInWith:`{{provider}} ilə daxil ol`,useEmail:`E-poçt və şifrədən istifadə et`,or:`və ya`,name:`Ad`,setupToken:`Quraşdırma tokeni`,setupTokenHint:`Nüsxə konfiqurasiyanızdakı KANVIL_SETUP_TOKEN dəyərindən istifadə edin.`,email:`E-poçt`,password:`Şifrə`,signingIn:`Daxil olunur…`,createAccount:`Hesab yarat`,consent:{expired:`Avtorizasiya sorğusunun müddəti bitib. Klientinizi yenidən qoşun.`,title:`{{client}} üçün icazə ver`,titleUnnamed:`Klientə icazə ver`,subtitle:`Bu klient hesabınız adından giriş istəyir. Layihə icazələri yenə də tətbiq olunur.`,deny:`Rədd et`,allow:`Girişə icazə ver`},invitation:{unavailable:`Dəvət əlçatan deyil`,join:`{{workspace}} iş sahəsinə qoşul`,invited:`Dəvət edilən`,from:`Göndərən`,access:`Giriş`,removedProjects:`Silinmiş layihələr`,wholeWorkspace:`Bütün iş sahəsi`,expires:`Bitmə tarixi`,expired:`Bu dəvətin müddəti bitib. İş sahəsi administratorundan yeni dəvət istəyin.`,revoked:`Bu dəvət ləğv edilib. İş sahəsi administratorundan yeni dəvət istəyin.`,accepted:`Bu dəvət artıq qəbul edilib. İş sahəsi administratorundan yeni dəvət istəyin.`,wrongAccount:`<account>{{current}}</account> kimi daxil olmusunuz. Qəbul etmək üçün {{invited}} kimi daxil olun.`,signOut:`Çıxış et`,joined:`{{workspace}} iş sahəsinə qoşuldunuz`,accept:`Dəvəti qəbul et`},callback:{cancelled:`Daxil olma ləğv edildi. Hazır olduqda yenidən cəhd edin.`,linkedElsewhere:`Bu identiklik artıq başqa Kanvil hesabına bağlanıb. Başqa identiklikdən istifadə edin və ya administratorunuzla əlaqə saxlayın.`,notLinked:`Bu identiklik heç bir Kanvil hesabına bağlanmayıb. Yerli hesabınızla daxil olub onu Parametrlərdə bağlayın.`,expired:`Daxil olma sorğusunun müddəti bitib və ya təsdiqlənə bilmədi. Bu ekrandan yenidən cəhd edin.`,emailMismatch:`İdentiklik provayderinin e-poçtu bağlana bilmədi. Administratorunuzla əlaqə saxlayın.`,failed:`Daxil olmaq mümkün olmadı. Yenidən cəhd edin və ya administratorunuzla əlaqə saxlayın.`}},you:`Siz`,inbox:{markAllRead:`Hamısını oxunmuş kimi qeyd et`,clearRead:`Oxunmuşları təmizlə`,cleared_one:`{{count, number}} oxunmuş bildiriş təmizləndi`,cleared_other:`{{count, number}} oxunmuş bildiriş təmizləndi`,unread:`Oxunmamış`,mentions:`İstinadlar`,all:`Bütün bildirişlər`,noUnread:`Oxunmamış bildiriş yoxdur`,noMentions:`İstinad yoxdur`,noNotifications:`Bildiriş yoxdur`,markUnread:`Oxunmamış kimi qeyd et`,markRead:`Oxunmuş kimi qeyd et`,dismiss:`Rədd et`},search:{field:`İş sahəsində axtar`,placeholder:`Tiketlər, layihələr, şərhlər, fəaliyyət üzrə axtar…`,tab:{all:`Hamısı`,project:`Layihələr`,ticket:`Tiketlər`,comment:`Şərhlər`,activity:`Fəaliyyət`},indexing:`Xarici axtarış yenilənir, ona görə tiket nəticələri PostgreSQL-dən gəlir.`,empty:`Tiketlər, layihələr, şərhlər və fəaliyyət üzrə axtarın`,noResults:`“{{query}}” üçün nəticə yoxdur`,results:`Axtarış nəticələri`,pages:`Axtarış səhifələri`,previous:`Əvvəlki`,next:`Növbəti`,type:{project:`Layihə`,ticket:`Tiket`,comment:`Şərh`,activity:`Fəaliyyət`}},column:{key:`Tiket`,labels:`Etiketlər`,scopes:`Əhatələr`,status:`Status`,priority:`Prioritet`,difficulty:`Çətinlik`,kind:`Növ`,assigneeId:`İcraçı`,startAt:`Başlama`,dueAt:`Son tarix`,createdAt:`Yaradılıb`,updatedAt:`Yenilənib`},public:{notShared:`Bu layihə paylaşılmayıb`,notSharedHint:`Keçid söndürülüb və ya heç vaxt mövcud olmayıb. Üzvlər oxumaq üçün daxil ola bilər.`,noTickets:`Tiket yoxdur`,ticketUnavailable:`Tiket əlçatan deyil`,backToTickets:`Tiketlərə qayıt`,description:`Təsvir`,noDescription:`_Təsvir yoxdur_`,acceptanceCriteria:`Qəbul meyarları`,noAcceptanceCriteria:`_Qəbul meyarları yoxdur_`,ticketProperties:`Tiket xüsusiyyətləri`,properties:`Xüsusiyyətlər`,status:`Status`,priority:`Prioritet`,kind:`Növ`,difficulty:`Çətinlik`,startDate:`Başlama tarixi`,dueDate:`Son tarix`,labels:`Etiketlər`,scopes:`Əhatələr`,created:`Yaradılıb`,updated:`Yenilənib`,relationships:`Əlaqələr`,parent:`Valideyn`,child:`Alt tiket`},sidebar:{workspace:`İş sahəsi`,unread_one:`{{count, number}} oxunmamış`,unread_other:`{{count, number}} oxunmamış`,userSettings:`İstifadəçi parametrləri`,administration:`İdarəetmə`,signOut:`Çıxış et`,projectSettings:`Layihə parametrləri`},workspace:{new:`Yeni iş sahəsi`,name:`İş sahəsinin adı`,key:`İş sahəsinin açarı`,create:`İş sahəsi yarat`,workspaces:`İş sahələri`,switch:`İş sahəsini dəyiş`,settings:`İş sahəsi parametrləri`},palette:{open:`Keç…`,title:`Keç`,description:`Layihə, tiket, səhifə və ya əməliyyat tapın`,placeholder:`Tiketlər, layihələr, səhifələr, əməliyyatlar üzrə axtar…`,searching:`Axtarılır…`,noResults:`Nəticə yoxdur`,jumpTo:`Keç`,openKey:`{{project}} layihəsində {{key}} aç`,resultsIn:`{{workspace}} üzrə nəticələr`,results:`Nəticələr`,seeAll_one:`Bütün {{count, number}} nəticəyə bax`,seeAll_other:`Bütün {{count, number}} nəticəyə bax`,actions:`Əməliyyatlar`,pages:`Səhifələr`,newTicketIn:`{{project}} layihəsində yeni tiket`,myTicketsIn:`{{project}} layihəsində mənim tiketlərim`,lightMode:`İşıqlı rejimə keç`,darkMode:`Qaranlıq rejimə keç`,keywords:{jump:`{{query}} keç aç jump open`,allResults:`bütün nəticələr {{query}}`,newTicket:`yeni tiket yarat`,myTickets:`mənim tiketlərim mənə təyin edilən`,lightMode:`işıqlı rejimə keç tema görünüş`,darkMode:`qaranlıq rejimə keç tema görünüş`,help:`klaviatura qısayolları kömək`,home:`əsas səhifə icmal bütün layihələr`,myWork:`mənim işlərim təyin edilmiş tiketlər`,search:`axtarış şərhlər fəaliyyət layihələr tiketlər`,inbox:`gələnlər bildirişlər`,settings:`parametrlər {{scope}} {{label}}`}},actionCategory:{general:`Ümumi`,ticketList:`Tiket siyahısı`,inbox:`Gələnlər`,ticket:`Tiket`,search:`Axtarış`,markdown:`Markdown`},action:{palette:`İstənilən yerə keç`,help:`Klaviatura qısayolları`,sidebar:`Yan paneli aç/bağla`,newTicket:`Yeni tiket`,search:`Tiketlərdə axtar`,highlight:`Növbəti və ya əvvəlki tiketi vurğula`,open:`Vurğulanmış tiketi aç`,preview:`Vurğulanmış tiketə siyahının yanında bax`,select:`Vurğulanmış tiketi seç`,properties:`Vurğulanmış tiketin statusunu, prioritetini və ya icraçısını təyin et`,inboxHighlight:`Növbəti və ya əvvəlki bildirişi vurğula`,inboxOpen:`Vurğulanmış bildirişin tiketini Gələnlərin yanında oxu`,inboxRead:`Vurğulanmış bildirişi oxunmuş və ya oxunmamış kimi qeyd et`,inboxDismiss:`Vurğulanmış bildirişi rədd et`,step:`Növbəti və ya əvvəlki tiketi aç`,edit:`Tiketi redaktə et`,save:`Tiketi və ya şərhi yadda saxla`,results:`Axtarış nəticələri arasında hərəkət et`,insertBlock:`Vizual redaktorda cədvəl, diaqram, fayl və ya başqa blok daxil et`},move:{top:{label:`Vurğulanmış tiketi ən yuxarı köçür`,menu:`Ən yuxarı köçür`},up:{label:`Vurğulanmış tiketi yuxarı köçür`,menu:`Yuxarı köçür`},down:{label:`Vurğulanmış tiketi aşağı köçür`,menu:`Aşağı köçür`},bottom:{label:`Vurğulanmış tiketi ən aşağı köçür`,menu:`Ən aşağı köçür`},previous:{label:`Vurğulanmış tiketi əvvəlki statusa köçür`,menu:`Əvvəlki statusa köçür`},next:{label:`Vurğulanmış tiketi növbəti statusa köçür`,menu:`Növbəti statusa köçür`}},copy:{link:{label:`Keçidi kopyala`,copied:`Tiket keçidi`},keyAndTitle:{label:`Açarı və başlığı kopyala`,copied:`Tiket`},title:{label:`Başlığı kopyala`,copied:`Başlıq`},markdown:{label:`Markdown kimi kopyala`,copied:`Markdown`},branch:{label:`Budaq adını kopyala`,copied:`Budaq adı`}},settingsNav:{account:`Hesab`,settings:`Parametrlər`,workspace:`İş sahəsi`,workspaceSettings:`İş sahəsi parametrləri`,projects:`Layihələr`,projectSettings:`Layihə parametrləri`,administration:`İdarəetmə`,section:{profile:`Profil və təhlükəsizlik`,appearance:`Görünüş`,preferences:`Seçimlər`,credentials:`API açarları`,notifications:`Bildirişlər`,general:`Ümumi`,members:`Üzvlər`,roles:`Rollar`,labels:`Etiketlər`,workflow:`İş axını`,fields:`Sahələr`,integrations:`İnteqrasiyalar`,calendar:`Təqvim lentləri`,storage:`Fayl yaddaşı`,search:`Axtarış`,events:`Hadisə çatdırılması`,users:`İstifadəçilər`,workspaces:`İş sahələri`,authentication:`Autentifikasiya`}},browser:{copyFailed:`Kopyalamaq alınmadı. Mətni seçib əl ilə kopyalayın.`,readFailed:`Fayl oxuna bilmədi`,encodeFailed:`Fayl kodlaşdırıla bilmədi`,imageTooBig:`10 MB-dan kiçik şəkil seçin.`,cannotResize:`Bu brauzer şəklin ölçüsünü dəyişə bilmir.`,prepareFailed:`Şəkil hazırlana bilmədi.`,stillTooLarge:`Ölçü dəyişdikdən sonra da bu şəkil çox böyükdür. Daha sadə şəkil seçin.`},primitive:{close:`Bağla`,more:`Daha çox`,breadcrumb:`naviqasiya zənciri`,sidebar:`Yan panel`,sidebarDescription:`Mobil yan paneli göstərir.`,toggleSidebar:`Yan paneli aç/bağla`,resizeSidebar:`Yan panelin ölçüsünü dəyiş`,expandSidebar:`Yan paneli genişləndir`,commandTitle:`Əmr paneli`,commandDescription:`İcra etmək üçün əmr axtarın…`}},ticket:{list:{manageViews:`Görünüşləri idarə et`,selectSection:`{{section}} tiketlərini seç`,expandSection:`{{section}} tiketlərini genişləndir`,collapseSection:`{{section}} tiketlərini yığ`,sectionTickets:`{{section}} tiketləri`,later:`Sonra`,selectAll:`Göstərilən bütün tiketləri seç`,selectTicket:`{{key}} seç`,title:`Başlıq`,all:`Hamısı`,planned:`Planlaşdırılmış`,archived:`Arxivləşdirilmiş`,allTickets:`Bütün tiketlər`,customView:`Fərdi görünüş`,sectionCount:`{{n, number}} {{section}}`,planning:`{{project}} planlaşdırması`,collection:`{{source}} ({{sections}})`,moved:`{{key}} köçürüldü`,movedTo:`{{key}} {{status}} statusuna köçürüldü`,movedAbove:`{{key}} {{neighbor}} üzərinə köçürüldü`,movedBelow:`{{key}} {{neighbor}} altına köçürüldü`,movedToAbove:`{{key}} {{status}} statusuna, {{neighbor}} üzərinə köçürüldü`,movedToBelow:`{{key}} {{status}} statusuna, {{neighbor}} altına köçürüldü`,emptyFiltered:`Uyğun tiket yoxdur`,emptyPlanning:`Planlaşdırılmış və ya arxivləşdirilmiş heç nə yoxdur`,emptyProject:`Hələ tiket yoxdur`,emptyWork:`Sizə təyin edilmiş açıq tiket yoxdur`,createFirst:`İlk tiketi yarat`,activeWork:`Aktiv iş`,views:`Tiket görünüşləri`,saveCurrentView:`Cari görünüşü yadda saxla`,deleteView:`{{name}} görünüşünü sil`,deleteViewConfirm:`{{name}} yadda saxlanılmış görünüşlərdən silinsin? Tiketlər dəyişməz qalır.`,planningLink:`Planlaşdırma`,newTicketShortcut:`Yeni tiket ({{shortcut}})`,saveView:`Görünüşü yadda saxla`,viewSaved:`Görünüş yadda saxlanıldı`,viewName:`Görünüşün adı`,retry:`Tiketləri yenidən yüklə`,board:`Tiket lövhəsi`,tickets:`Tiketlər`,resizeColumn:`{{column}} sütununun ölçüsünü dəyiş`,count_one:`{{count, number}} tiket`,count_other:`{{count, number}} tiket`,scheduledCount_one:`{{count, number}} planlaşdırılmış tiket`,scheduledCount_other:`{{count, number}} planlaşdırılmış tiket`},move:{destination:`Təyinat`,projectPlaceholder:`Layihəyə köçür…`,blockers:`Köçürməzdən əvvəl həll edin`,submit:`Tiketi köçür`,pending:`Köçürülür…`},picker:{placeholder:`Tiket seçin`,loading:`Tiket yüklənir…`,searchLabel:`{{label, lowercase}} axtar`,searchPlaceholder:`Başlıq və ya açar üzrə axtar…`,noParent:`Valideyn yoxdur`,searching:`Axtarılır…`,empty:`Tiket tapılmadı`},property:{status:`Status`,priority:`Prioritet`,kind:`Növ`,difficulty:`Çətinlik`,assignee:`İcraçı`,you:`{{name}} (siz)`,assignTo:`Təyin et…`,set:`{{label, lowercase}} təyin et…`,search:`{{label, lowercase}} axtar`,noMatches:`Uyğunluq yoxdur`},field:{mixed:`Qarışıq`,unchecked:`Xeyr`,noValue:`Dəyər yoxdur`},project:{label:`Layihə`,placeholder:`Layihədə yarat…`,search:`Layihələrdə axtar`},tags:{labels:`Etiketlər`,scopes:`Əhatələr`,summary:`{{label}}: {{tags}}`,edit:`{{label, lowercase}} redaktə et`,editValues:`{{label, lowercase}} redaktə et: {{tags}}`,editMixed:`{{label, lowercase}} redaktə et: qarışıq`,mixed:`Qarışıq {{label, lowercase}}`,none:`{{label}} yoxdur`,mixedNote:`Seçilmiş tiketlərin {{label, lowercase}} fərqlidir.`,clear:`{{label, lowercase}} təmizlə`,replace:`{{label, lowercase}} əvəz et`},tagInput:{remove:`{{label, lowercase}} {{tag}} çıxar`,addAnother:`Daha birini əlavə et…`,add:`{{label, lowercase}} əlavə et…`,choose:`{{label, lowercase}} seç`,chooseLabels:`Etiketləri seç`,searchPlaceholder:`Etiketlərdə axtar…`,searchLabel:`Layihə etiketlərində axtar`,empty:`Uyğun etiket yoxdur`},link:{previewUnavailable:`Önizləmə əlçatan deyil`},userPicker:{label:`Hesab`,placeholder:`Hesab seçin`,searchPlaceholder:`Ad və ya e-poçt üzrə axtar…`,searchLabel:`Hesablarda axtar`,useEmail:`{{email}} istifadə et`,emptyAnyAccount:`Üzv axtarın və ya mövcud hesabın e-poçtunu daxil edin.`,empty:`Uyğun üzv yoxdur`},date:{placeholder:`Tarix seçin`,clear:`{{label, lowercase}} təmizlə`,start:`Başlama tarixi`,startShort:`Başlama`,noStart:`Başlama tarixi yoxdur`,due:`Son tarix`,dueShort:`Son tarix`,noDue:`Son tarix yoxdur`},filter:{add:`Filtr əlavə et`,me:`Mən`,searchTickets:`Tiketlərdə axtar`,searchTicketsPlaceholder:`Tiketlərdə axtar…`,filters:`Filtrlər`,filtersActive:`Filtrlər ({{active, number}})`,due:`Son tarix`,anyDue:`İstənilən son tarix`,archived:`Arxivləşdirilmiş`,hideArchived:`Arxivləşdirilmişləri gizlət`,includeArchived:`Arxivləşdirilmişləri daxil et`,archivedOnly:`Yalnız arxivləşdirilmiş`,includingArchived:`Arxivləşdirilmişlər daxil`,reset:`Filtrləri sıfırla`,clear:`Filtrləri təmizlə`,active:`Aktiv tiket filtrləri`,searchChip:`Axtarış: {{query}}`,chipAny:`{{field}}:`,chipNone:`{{field}} deyil:`,notValues:`{{values}} deyil`,match:`{{label}} uyğunluğu`,is:`Bərabərdir`,isNot:`Bərabər deyil`,searchPlaceholder:`{{search}}…`,anyValue:{status:`Bütün statuslar`,priority:`Bütün prioritetlər`,kind:`Bütün növlər`,difficulty:`Bütün çətinliklər`,automation:`İstənilən hazırlıq`,label:`Bütün etiketlər`,assigneeId:`İstənilən şəxs`,customField:`İstənilən sahə dəyəri`},searchValues:{status:`Statuslarda axtar`,priority:`Prioritetlərdə axtar`,kind:`Növlərdə axtar`,difficulty:`Çətinliklərdə axtar`,automation:`Hazırlığı axtar`,label:`Etiketlərdə axtar`,assigneeId:`Şəxslərdə axtar`,customField:`Sahələrdə axtar`}},display:{title:`Görünüş`,orderBy:`Sıralama`,direction:`İstiqamət`,ascending:`Artan`,descending:`Azalan`,reset:`Görünüşü sıfırla`,groupBy:`Qruplaşdırma`,dueDate:`Son tarix`,layout:`Tərtibat`,list:`Siyahı`,board:`Lövhə`,backgrounds:`Layihə fonları`,show:`Göstər`,hide:`Gizlət`,rowSpacing:`Sətir aralığı`,compact:`Sıx`,comfortable:`Rahat`,labelDisplay:`Etiket görünüşü`,compactPreview:`Yığcam önizləmə`,allLabels:`Bütün etiketlər`,properties:`Xüsusiyyətlər`},selection:{region:`Seçilmiş tiketlər`,clear:`Seçimi təmizlə`,selected_one:`{{count, number}} seçilib`,selected_other:`{{count, number}} seçilib`,selectedOf_one:`{{count, number}} / {{total}}<wide> seçilib</wide>`,selectedOf_other:`{{count, number}} / {{total}}<wide> seçilib</wide>`,applied_one:`{{label}} {{count, number}} tiketə tətbiq edildi`,applied_other:`{{label}} {{count, number}} tiketə tətbiq edildi`,partlyApplied_one:`{{count, number}} tiketdən {{done, number}} tiketə tətbiq edildi`,partlyApplied_other:`{{count, number}} tiketdən {{done, number}} tiketə tətbiq edildi`,mixedDue:`Qarışıq son tarixlər`,fields:`Sahələr`,more:`Digər əməliyyatlar`,moveTo:`{{status}} statusuna köçür`,restoreChange:`Bərpa`,restore:`Seçilənləri bərpa et`,archive:`Seçilənləri arxivləşdir`,delete:`Seçilənləri sil`,deleteLimit:`Bir dəfəyə ən çox {{limit, number}} sil`,archiveConfirm_one:`{{collection}} mənbəyindən {{count, number}} tiket arxivləşdirilsin?`,archiveConfirm_other:`{{collection}} mənbəyindən {{count, number}} tiket arxivləşdirilsin?`,deleteConfirm_one:`{{collection}} mənbəyindən {{count, number}} tiket şərhləri, əlaqələri və qoşmaları ilə birlikdə həmişəlik silinsin? Seçimdən kənar alt tiketlər valideynini itirəcək.`,deleteConfirm_other:`{{collection}} mənbəyindən {{count, number}} tiket şərhləri, əlaqələri və qoşmaları ilə birlikdə həmişəlik silinsin? Seçimdən kənar alt tiketlər valideynini itirəcək.`,deleted_one:`{{count, number}} tiket silindi`,deleted_other:`{{count, number}} tiket silindi`},menu:{copied:`{{label}} kopyalandı`,open:`Tiketi aç`,preview:`Önizləmə`,newTab:`Yeni tabda aç`,edit:`Tiketi redaktə et`,editTitle:`{{key}} redaktə et`,duplicate:`Tiketin surətini çıxar`,created:`{{key}} yaradıldı`,move:`Köçür`,moveToProject:`Layihəyə köçür…`,moveTitle:`{{key}} köçür`,moved:`{{key}} olaraq köçürüldü`,follow:`Tiketi izlə`,unfollow:`Tiketi izləməyi dayandır`,archive:`Tiketi arxivləşdir`,unarchive:`Tiketi arxivdən çıxar`,delete:`Tiketi sil`,deleteConfirm:`{{key}}, onun şərhləri, əlaqələri və qoşmaları həmişəlik silinsin?`,openProject:`Layihəni aç`,projectLink:`Layihə keçidi`,copyLink:`Keçidi kopyala`,newTicket:`Yeni tiket`,projectSettings:`Layihə parametrləri`,manageAccount:`Hesabı idarə et`,email:`E-poçt`,copyEmail:`E-poçtu kopyala`},schedule:{range:`{{from}} – {{to}}`,calendar:`Təqvim`,timeline:`Zaman xətti`,today:`Bu gün`,previousMonth:`Əvvəlki ay`,nextMonth:`Növbəti ay`,previousWeeks:`Əvvəlki iki həftə`,nextWeeks:`Növbəti iki həftə`,emptyWeeks:`Bu həftələrdə planlaşdırılmış heç nə yoxdur`,monthTickets:`{{title}} tiketləri`,showDay_one:`{{day}} tarixindəki bütün {{count, number}} tiketi göstər`,showDay_other:`{{day}} tarixindəki bütün {{count, number}} tiketi göstər`,more_one:`daha {{count, number}}`,more_other:`daha {{count, number}}`,ticketColumn:`Tiket`,scheduledTickets:`Planlaşdırılmış tiketlər`},copy:{description:`Təsvir`,acceptanceCriteria:`Qəbul meyarları`}},detail:{field:{title:`Başlıq`,description:`Təsvir`,acceptanceCriteria:`Qəbul meyarları`,parent:`Valideyn`,parentTicket:`Valideyn tiket`,labels:`Etiketlər`,scopes:`Əhatələr`,holdReason:`Gözləmə səbəbi`,url:`URL`},page:{preview:`Tiket önizləməsi`,unavailable:`Tiket əlçatan deyil`,noProject:`Keçiddə tiketin layihəsi göstərilməyib.`,gone:`Bu tiket silinib və ya artıq ona girişiniz yoxdur.`,closePreview:`Önizləməni bağla`,openFullPage:`Tam səhifədə aç`,backToTickets:`Tiketlərə qayıt`,tickets:`Tiketlər`,previousTicket:`Əvvəlki tiket`,previousTicketShortcut:`Əvvəlki tiket (K)`,nextTicket:`Növbəti tiket`,nextTicketShortcut:`Növbəti tiket (J)`,position:`{{position, number}} / {{total, number}}`,subscribe:`Abunə ol`,unsubscribe:`Abunəlikdən çıx`,subscribed:`Yeniliklərə abunə oldunuz`,unsubscribed:`Abunəlik ləğv edildi`,archive:`Tiketi arxivləşdir`,unarchive:`Tiketi arxivdən çıxar`,archivedToast:`Tiket arxivləşdirildi`,unarchivedToast:`Tiket arxivdən çıxarıldı`,archived:`Arxivləşdirilib`,edit:`Tiketi redaktə et`,editShortcut:`Tiketi redaktə et (E)`,editTitle:`{{key}} redaktə et`,actions:`Tiket əməliyyatları`,copyKey:`Tiket açarını kopyala`,keyCopied:`{{key}} kopyalandı`,noDescription:`_Təsvir yoxdur_`,noAcceptanceCriteria:`_Qəbul meyarları yoxdur_`,coordination:`Tiket koordinasiyası`,properties:`Xüsusiyyətlər`,created:`Yaradılıb`,updated:`Yenilənib`},section:{discussion:`Müzakirə`,evidence:`Sübutlar`,activity:`Fəaliyyət`},readiness:{heading:`Agent hazırlığı`,ready:`Götürməyə hazırdır`,notReady:`Götürməyə hazır deyil`,hold:`Gözləmə: {{reason}}`,claimedUntil:`{{date}} tarixinədək <strong>{{worker}}</strong> tərəfindən götürülüb.`},claim:{release:`Götürməmi burax`,releaseDescription:`İşçiniz yazmağı dayandırdıqdan sonra sahiblik buraxılsın?`,recover:`Müddəti bitmiş götürməni bərpa et`,recoverHelp:`Əvvəlcə işçinin dayandığını təsdiqləyin.`,reason:`Bərpa səbəbi`,confirmed:`İşçinin dayandığını təsdiqləmişəm`,submit:`Sahibliyi bərpa et`},editor:{storageUnavailable:`Bu brauzer qaralamanızı yadda saxlaya bilmir. Yadda saxlayana qədər redaktoru açıq saxlayın.`,saved:`{{key}} yadda saxlanıldı`,created:`{{key}} yaradıldı`,properties:`Tiket xüsusiyyətləri`,readyForAgents:`Agentlər üçün hazırdır`,readyForAgentsHelp:`Tələblər, bloklayıcılar və sahiblik imkan verdikdə agentlər bu tiketi götürə bilər`,agents:`Agentlər`,notReady:`Hazır deyil`,moreProperties:`Daha çox xüsusiyyət`,holdPlaceholder:`İş niyə gözləməlidir?`,claimsNote:`Götürmələr yenə də tələblərdən, bloklayıcılardan və cari sahiblikdən asılıdır.`,restoreSize:`Redaktorun ölçüsünü bərpa et`,expand:`Redaktoru genişləndir`,staleTitle:`Bu tiket dəyişib.`,staleDescription:`Qaralamanız hələ {{version}} versiyasından istifadə edir; yadda saxlamaq üçün cari versiya tələb olunacaq.`,discardAndReload:`Qaralamanı at və yenidən yüklə`,titlePlaceholder:`Tiket başlığı`,descriptionPlaceholder:`Kontekst, tələblər və ya təkrarlama addımları əlavə edin…`,criteriaPlaceholder:`- [ ] Bunun tamamlandığını nə göstərəcək?`,removeCriteria:`Qəbul meyarlarını sil`,addCriteria:`Qəbul meyarları əlavə et`,savedLocally:`Qaralama bu cihazda yadda saxlanıldı`,notSavedLocally:`Qaralama yadda saxlanıla bilmədi`,discardDraft:`Qaralamanı at`,createMore:`Daha çox yarat`,save:`Tiketi yadda saxla`,create:`Tiket yarat`},resource:{removeConfirm:`{{name}} silinsin?`,uploading:`Yüklənir…`},attachment:{heading:`Qoşmalar`,tooLarge:`Hər biri 10 MB-dan böyük olmayan fayllar seçin.`,attached_one:`Fayl qoşuldu`,attached_other:`{{count, number}} fayl qoşuldu`,attach:`Fayl qoş`,emptyWritable:`Qoşma yoxdur. Faylları bura atın.`,empty:`Qoşma yoxdur`,remove:`Qoşmanı sil`,fileInput:`Fayl (10 MB-a qədər)`},evidence:{description:`Bu tiket üzərində işləyən insanların və inteqrasiyaların bildirdiyi keçidlər və nəticələr.`,add:`Sübut əlavə et`,empty:`Qoşulmuş sübut yoxdur`,added:`Sübut əlavə edildi`,kindLabel:`Növ`,outcomeLabel:`Bildirilən nəticə`,commit:`Commit (tam hash)`,note:`Qeyd`},link:{heading:`Keçidlər`,add:`Keçid əlavə et`,edit:`Keçidi redaktə et`,save:`Keçidi yadda saxla`,remove:`Keçidi sil`,empty:`Keçid yoxdur`,stateUnknown:`Vəziyyət naməlumdur`,remote:`{{kind}} · {{state}}`,remoteState:{open:`Açıq`,closed:`Bağlı`,merged:`Birləşdirilib`,draft:`Qaralama`,active:`Aktiv`,deleted:`Silinib`}},activity:{previous:`Əvvəlki fəaliyyət`,next:`Növbəti fəaliyyət`},relations:{heading:`Əlaqələr`,add:`Əlaqə əlavə et`,linkExisting:`Mövcud tiketi bağla`,newChild:`Yeni alt tiket`,newChildTitle:`{{key}} üçün yeni alt tiket`,children:`Alt tiketlər <count>{{done, number}}/{{total, number}}</count>`,previousChildren:`Əvvəlki alt tiketlər`,nextChildren:`Növbəti alt tiketlər`,empty:`Əlaqə yoxdur`,type:`Əlaqə`,ticket:`Tiket`,statusOf:`{{key}} statusu`,assigneeOf:`{{key}} icraçısı`,remove:{blocks:`“Bloklayır” əlaqəsini sil`,related:`“Əlaqəlidir” əlaqəsini sil`,duplicate:`“Təkrarlayır” əlaqəsini sil`,causes:`“Səbəb olur” əlaqəsini sil`,clones:`“Klonlayır” əlaqəsini sil`,implements:`“Həyata keçirir” əlaqəsini sil`,reviews:`“Yoxlayır” əlaqəsini sil`}},discussion:{empty:`Hələ şərh yoxdur`,previous:`Əvvəlki şərhlər`,next:`Növbəti şərhlər`,comment:`Şərh yaz`,placeholder:`Şərh yazın…`,posting:`Göndərilir…`,edited:`Redaktə edilib`,edit:`Şərhi redaktə et`,delete:`Şərhi sil`,deleteConfirm:`Bu şərh həmişəlik silinsin?`},markdown:{format:{heading:`Başlıq`,bold:`Qalın`,italic:`Kursiv`,link:`Keçid`,linkHelp:`Seçilmiş mətnə keçid əlavə et`,bullets:`Markerli siyahı`,numbers:`Nömrəli siyahı`,tasks:`Yoxlama siyahısı`,code:`Kod bloku`},formatting:`{{label}} formatlaşdırması`,editor:`{{label}} redaktoru`,insertFile:`Fayl daxil et`,insertFileInto:`{{label}} sahəsinə fayl daxil et`,write:`Yaz`,visual:`Vizual`,preview:`Önizləmə`,unsupported:`Bu mətndə vizual redaktorun saxlaya bilmədiyi Markdown var, məsələn, HTML və ya haşiyələr.`,nothingToPreview:`Önizləmək üçün heç nə yoxdur`,mention:`Üzvü qeyd et`,insertBlock:`Blok daxil et`,block:{quote:`Sitat`,table:`Cədvəl`,diagram:`Diaqram`,divider:`Ayırıcı`,file:`Fayl`},table:{addRow:`Sətir əlavə et`,addColumn:`Sütun əlavə et`,deleteRow:`Sətri sil`,deleteColumn:`Sütunu sil`,deleteTable:`Cədvəli sil`},linkAddress:`Keçid ünvanı`,diagram:`Diaqram`,diagramFailed:`Bu diaqram çəkilə bilmədi: {{error}}`,diagramSource:`Diaqram mənbəyi`}},settings:{account:{title:`Parametrlər`,security:`Daxil olma və təhlükəsizlik`,localPassword:`Yerli şifrə`,localPasswordDescription:`Şifrəni dəyişmək digər seanslarınızdan çıxış edir.`,changePassword:`Şifrəni dəyiş`,oidcLinked:`Eyni hesaba daxil olmaq üçün bu identiklik provayderindən istifadə edin.`,oidcUnlinked:`Bu provayder vasitəsilə daxil olmazdan əvvəl hesabınızı bağlayın.`,linked:`Bağlanıb`,link:`{{name}} bağla`,currentPassword:`Cari şifrə`,newPassword:`Yeni şifrə`,confirmPassword:`Yeni şifrəni təsdiqləyin`,passwordMismatch:`Yeni şifrələr uyğun gəlmir.`,passwordUpdated:`Şifrə yeniləndi. Digər seanslardan çıxış edildi.`},preferences:{behavior:`Davranış`,languageDescription:`Bu brauzerdə, o cümlədən daxil olma səhifəsində tətbiq olunur.`,weekStart:`Həftənin başlanğıcı`,weekStartDescription:`Bütün tarix seçicilərinə tətbiq olunur.`,weekStartLanguage:`Dil standartı`,sidebar:`Açılışda yan panel`,sidebarDescription:`Kanvil növbəti dəfə açılanda qüvvəyə minir.`,sidebarLast:`Son vəziyyətdə`,sidebarExpanded:`Genişləndirilmiş`,sidebarCollapsed:`Yığılmış`,ticketLists:`Tiket siyahıları`,reset:`Seçimləri sıfırla`,resetDescription:`Bu brauzerdə bu seçimləri standart dəyərlərə qaytarır.`,resetDone:`Seçimlər sıfırlandı`},notifications:{title:`Bildirişlər`,inbox:`Gələnlər`,inboxDescription:`İzlədiyiniz tiketlərin yenilikləri Kanvil-də görünür.`,inboxSwitch:`Abunə olunmuş tiket yenilikləri Gələnlərdə`,push:`Push bildirişləri`,pushDescription:`Qeydiyyatdan keçirdiyiniz cihazlara yenilikləri göndərin.`,pushUnavailable:`Bu nüsxədə push çatdırılması aktiv deyil.`,pushSwitch:`Qeydiyyatlı cihazlarda push bildirişləri`,categories:`Kateqoriyalar`,categorySwitch:`{{label}} bildirişləri`,reminder:`Müddət yaxınlaşma xatırlatması`,reminderDescription:`İzlənilən tiketin son tarixindən nə qədər əvvəl.`,reminderUnit:`Xatırlatma vahidi`,reminderAmount:`Xatırlatma miqdarı`,unit:{minutes:`Dəqiqə`,hours:`Saat`,days:`Gün`,weeks:`Həftə`}},layout:{nav:`Parametrlər`,section:`Parametrlər bölməsi`,nested:`{{parent}} · {{child}}`,name:`Ad`,description:`Təsvir`,descriptionPlaceholder:`Təsvir əlavə edin`,noDescription:`Təsvir yoxdur`,stale:`Bu başqa yerdə dəyişdirilib. Ləğv edib yenidən başlayın.`},profile:{title:`Profil`,displayName:`Görünən ad`,edit:`Profili redaktə et`,changePhoto:`Şəkli dəyiş`,removePhoto:`Şəkli sil`,photoFile:`Profil şəkli faylı`,photoUpdated:`Şəkil yeniləndi`,photoRemoved:`Şəkil silindi`,saved:`Profil yadda saxlanıldı`},credentials:{global:`Qlobal`,globalDescription:`Hesabınızın indi və gələcəkdə giriş əldə etdiyi bütün layihələrə və iş məkanlarına giriş.`,title:`API açarları`,description:`Skriptləri, inteqrasiyaları və agentləri ləğv edə biləcəyiniz girişlə qoşun.`,create:`API açarı yarat`,creating:`Yaradılır…`,created:`API açarı yaradıldı`,name:`Ad`,access:`Giriş`,projects:`Layihələr`,expires:`Bitmə tarixi`,actions:`Əməliyyatlar`,unavailableProject:`Əlçatan olmayan layihə`,untitled:`Adsız açar`,expired:`Müddəti bitib`,disabled:`Deaktiv`,custom:`Fərdi`,noProjects:`Layihəyə giriş yoxdur`,never:`Heç vaxt`,revoke:`API açarını ləğv et`,revokeNamed:`{{name}} ləğv edilsin? Ondan istifadə edən bağlantılar dərhal girişini itirəcək.`,revokeUnnamed:`Bu API açarı ləğv edilsin? Ondan istifadə edən bağlantılar dərhal girişini itirəcək.`,empty:`API açarı yoxdur`,emptyDescription:`Skript, inteqrasiya və ya agentin layihələrinizə girişi lazım olduqda açar yaradın.`,copyNow:`Bu açarı indi kopyalayın. Onu bir daha görə bilməyəcəksiniz.`,newKey:`Yeni API açarı`,copy:`API açarını kopyala`,noProjectTitle:`Əvvəlcə layihə seçin`,noProjectDescription:`API açarlarının ən azı bir layihəyə girişi olmalıdır.`,goToProjects:`Layihələrə keç`,keyName:`Açarın adı`,keyNamePlaceholder:`məs. Buraxılış avtomatlaşdırması`,projectAccess:`Layihəyə giriş`,findProject:`Layihə tap`,projectDescription:`{{key}} · {{workspace}}`,workspace:`İş sahəsi`,noMatches:`Uyğun layihə yoxdur`,roleLimit:`Mövcud layihə rolunuz bu açarın imkanlarını yenə də məhdudlaşdırır.`,accessLevel:`Giriş səviyyəsi`,preset:{read:`Yalnız oxuma`,write:`Oxuma və yazma`,automation:`Oxuma, yazma və iş götürmə`,custom:`Fərdi icazələr`},permission:{intake:{name:`Hesabat göndər`,description:`Yalnız karantində biletlər yaradır və onlara fayl əlavə edir. Biletləri oxuya və ya redaktə edə bilməz. Tək istifadə edin.`},read:{name:`Tiketləri oxumaq`,description:`Layihələrə, tiketlərə, şərhlərə və qoşmalara baxmaq.`},write:{name:`Tiketləri redaktə etmək`,description:`Tiketləri, şərhləri və qoşmaları yaratmaq və yeniləmək.`},claim:{name:`İş götürmək`,description:`Tiket sahibliyini götürmək, yeniləmək və buraxmaq.`},admin:{name:`Layihələri və iş məkanlarını idarə et`,description:`Rolunuzun icazə verdiyi layihə və iş məkanı parametrlərini və üzvlükləri dəyişin.`}},expiry:{7:`7 gün`,30:`30 gün`,90:`90 gün`,365:`1 il`,custom:`Fərdi tarix`,never:`Müddətsiz`},expiresOn:`Bitmə tarixi`,neverDescription:`Açar siz onu silənə qədər işləyir.`},calendarFeeds:{title:`Təqvim lentləri`,new:`Yeni təqvim lenti`,created:`Təqvim lenti yaradıldı`,create:`Lent yarat`,adminOnly:`Təqvim lentlərini layihə administratorları paylaşır və ləğv edir.`,labels:`Etiketlər`,everyLabel:`Bütün etiketlər`,stopped:`· Dayandırılıb: yaradanın artıq girişi yoxdur`,revoke:`{{name}} ləğv et`,revokeDescription:`{{name}} lentinə abunə olan təqvimlər dərhal yenilənməyi dayandırır. Tiketlər dəyişməz qalır.`,revoked:`Təqvim lenti ləğv edildi`,empty:`Təqvim lenti yoxdur`,copyNow:`Bu keçidi indi təqvim tətbiqinə kopyalayın. O, yalnız bir dəfə göstərilir və ona sahib olan hər kəs paylaşılan tiketləri oxuya bilər.`,link:`Lent keçidi`,name:`Lentin adı`,onlyLabels:`Yalnız bu etiketləri olan tiketlər`,explanation:`Lent başlama və ya son tarixi olan açıq, arxivləşdirilməmiş tiketləri {{zone}} saat qurşağında bütün günlük hadisələr kimi göstərir. Keçidə sahib olan hər kəs onların açarlarını, başlıqlarını, statuslarını, prioritetlərini və tarixlərini görür.`},project:{title:`Layihə parametrləri`,edit:`Layihəni redaktə et`,copyPrefix:`Tiket prefiksini kopyala`,saved:`Layihə yadda saxlanıldı`,noOpenTickets:`Açıq tiket yoxdur`,openTickets_one:`{{count, number}} açıq tiket`,openTickets_other:`{{count, number}} açıq tiket`,overdueTickets_one:`· {{count, number}} gecikmiş`,overdueTickets_other:`· {{count, number}} gecikmiş`,created:`· Yaradılıb: <time/>`,access:`Layihəyə giriş`,accessWorkspace:`İş sahəsi üzvləri girişi iş sahəsindəki rollarından alır.`,accessPrivate:`Bu layihəni yalnız əlavə etdiyiniz üzvlər və iş sahəsi administratorları görə bilər.`,accessUpdated:`Layihəyə giriş yeniləndi`,visibility:{workspace:`İş sahəsindəki hər kəs`,private:`Yalnız layihə üzvləri`},workspace:`İş sahəsi`,workspaceSettings:`İş sahəsi parametrləri`,prefix:`Tiket prefiksi`,prefixDescription:`Dəyişiklikdən sonra əvvəlki prefikslər və tiket açarları işləməyə davam edir.`,changePrefix:`Prefiksi dəyiş`,changePrefixTitle:`Tiket prefiksini dəyiş`,changePrefixDescription:`{{name}} layihəsindəki hər tiket yeni prefiksi alır və nömrəsini saxlayır.`,changing:`Dəyişdirilir…`,prefixChanged:`Tiketlər indi {{key}} istifadə edir`,repositories:`Repozitoriyalar`,repositoriesDescription:`Agentlər bu git remote ünvanlarından birini layihə ID-si kimi ötürə bilər.`,repositoriesInvalid:`Ən çoxu 20 git remote daxil edin, məsələn git@github.com:owner/repo.git.`,publicLink:`İctimai keçid`,publicDisclosure:`Keçidə sahib olan hər kəs bu layihədəki hər arxivləşdirilməmiş tiketin başlığını, təsvirini, qəbul meyarlarını, statusunu, prioritetini, növünü, çətinliyini, etiketlərini, əhatələrini, tarixlərini və digər tiketlərə keçidlərini oxuya bilər. İnsanlar, şərhlər, fəaliyyət, qoşmalar, sübutlar və götürmələr gizli qalır.`,publicOn:`İctimai keçid aktivdir`,publicOff:`İctimai keçid deaktivdir`,off:`Deaktiv`,copyPublicLink:`İctimai keçidi kopyala`,openPublic:`İctimai görünüşü aç`,stopSharing:`Paylaşımı dayandır`,share:`İctimai paylaş`,background:`Fon`,backgroundDescription:`Bu layihənin tiket siyahısı və lövhəsinin arxasında göstərilir.`,backgroundUpdated:`Fon yeniləndi`,backgroundRemoved:`Fon silindi`,currentBackground:`Cari fon`,uploading:`Yüklənir…`,replace:`Əvəz et`,upload:`Şəkil yüklə`,backgroundFile:`Layihə fonu faylı`},tickets_one:`{{count, number}} tiket`,tickets_other:`{{count, number}} tiket`,moveUp:`{{name}} yuxarı köçür`,moveDown:`{{name}} aşağı köçür`,workflow:{title:`İş axını`,new:`Yeni vəziyyət`,edit:`Vəziyyəti redaktə et`,editNamed:`{{name}} vəziyyətini redaktə et`,deleteNamed:`{{name}} vəziyyətini sil`,onlyState:`{{name}} yeganə “{{category}}” vəziyyətidir`,saved:`Vəziyyət yadda saxlanıldı`,name:`Vəziyyətin adı`,category:`Kateqoriya`,color:`Vəziyyətin rəngi`,categoryChange:`Onun tiketlərinin statusu {{status}} olaraq dəyişir.`,save:`Vəziyyəti yadda saxla`,delete:`Vəziyyəti sil`,deleteTitle:`{{name}} sil`,deleted:`Vəziyyət silindi`,reassign_one:`{{count, number}} tiketi buraya köçür:`,reassign_other:`{{count, number}} tiketi buraya köçür:`},labels:{title:`Etiketlər`,search:`Etiketlərdə axtar`,new:`Yeni etiket`,edit:`Etiketi redaktə et`,workspace:`İş sahəsi`,editNamed:`{{name}} etiketini redaktə et`,deleteNamed:`{{name}} etiketini sil`,deleteUsed_one:`{{name}} arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Bu etiketdən istifadə edən yadda saxlanılmış görünüşlərin etiket filtri silinəcək.`,deleteUsed_other:`{{name}} arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Bu etiketdən istifadə edən yadda saxlanılmış görünüşlərin etiket filtri silinəcək.`,deleteUsedShared_one:`{{name}} bütün layihələrdə arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Bu etiketdən istifadə edən yadda saxlanılmış görünüşlərin etiket filtri silinəcək.`,deleteUsedShared_other:`{{name}} bütün layihələrdə arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Bu etiketdən istifadə edən yadda saxlanılmış görünüşlərin etiket filtri silinəcək.`,deleteUnused:`İstifadə olunmayan {{name}} etiketi silinsin? Ondan istifadə edən yadda saxlanılmış görünüşlərin etiket filtri silinəcək.`,deleted:`Etiket silindi`,noMatches:`Uyğun etiket yoxdur`,empty:`Hələ etiket yoxdur`,saved:`Etiket yadda saxlanıldı`,name:`Etiketin adı`,color:`Etiketin rəngi`,rename:`Adı dəyişdirmək bu etiketi tiketlərdə və yadda saxlanılmış görünüşlərdə yeniləyir.`,renameShared:`Adı dəyişdirmək bu etiketi bütün layihələrdə tiketlərdə və yadda saxlanılmış görünüşlərdə yeniləyir.`,adopt:`Layihə etiketlərini mənimsə`,adoptDescription:`{{projects}} layihələrində müəyyən edilib. Onların tiketləri etiketi saxlayır və bu rəngi alır.`,save:`Etiketi yadda saxla`},fields:{title:`Sahələr`,new:`Yeni sahə`,edit:`Sahəni redaktə et`,editNamed:`{{name}} sahəsini redaktə et`,deleteNamed:`{{name}} sahəsini sil`,deleteUsed_one:`{{name}} silinsin və onun dəyərləri arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Yadda saxlanılmış görünüşlər bu sahə üzrə filtrlərini itirəcək.`,deleteUsed_other:`{{name}} silinsin və onun dəyərləri arxivləşdirilmişlər daxil {{count, number}} tiketdən çıxarılsın? Yadda saxlanılmış görünüşlər bu sahə üzrə filtrlərini itirəcək.`,deleteUnused:`İstifadə olunmayan {{name}} sahəsi silinsin? Yadda saxlanılmış görünüşlər bu sahə üzrə filtrlərini itirəcək.`,deleted:`Sahə silindi`,empty:`Hələ sahə yoxdur`,saved:`Sahə yadda saxlanıldı`,required:`Məcburi`,requiredDescription:`Yeni tiketlər üçün dəyər tələb olunur.`,defaultValue:`Standart: {{value}}`,default:`Standart`,name:`Sahənin adı`,type:`Tip`,options:`Seçimlər`,option:`Seçim {{number}}`,optionInline:`seçim {{number}}`,optionColor:`{{name}} rəngi`,removeOption:`{{name}} sil`,addOption:`Seçim əlavə et`,reassign:`{{name}} olan tiketlər`,clearValue:`Dəyəri təmizlə`,moveTo:`{{name}} seçiminə köçür`,save:`Sahəni yadda saxla`},lifecycle:{archivedToast:`Layihə arxivləşdirildi`,restoredToast:`Layihə bərpa edildi`,archivedNotice:`Arxivləşdirilib: <time/> · yalnız oxuma`,restore:`Bərpa et`,archive:`Arxivləşdir`,archivedDescription:`Arxivləşdirilib: <time/>. Onun tiketləri yalnız oxunur və siyahılarda, axtarışda, “Mənim işlərim”də, təqvim lentlərində və agent növbələrində görünmür.`,archiveDescription:`Layihəni siyahılardan, axtarışdan, “Mənim işlərim”dən, təqvim lentlərindən və agent növbələrindən gizlədir və tiketlərini yalnız oxunan edir. Tarixçə saxlanılır.`,archiveProject:`Layihəni arxivləşdir`,archiveConfirm:`{{name}} bərpa edilənə qədər layihə siyahılarından və agent növbələrindən çıxarılır. Götürülmüş tiketlər əvvəlcə buraxılmalıdır.`,blocker:`{{message}}: {{tickets}}`,row:{tickets:`Tiketlər`,losesAccess:`Girişini itirir`,gainsAccess:`Giriş əldə edir`,labelsCopied:`Kopyalanan etiketlər`,labelsMerged:`Birləşdirilən etiketlər`,followsRemoved:`Silinən izləmələr`,invitations:`Dəvətlər`,comments:`Şərhlər`,files:`Fayllar`,kept:`Saxlanılır`,projects:`Layihələr`,members:`Üzvlər`,sharedLabels:`Ümumi etiketlər`,signIn:`Daxil olma`,sessions:`Seanslar`,credentials:`Giriş məlumatları`,devices:`Cihazlar`,access:`Giriş`,claims:`Götürmələr`,imports:`İdxallar`,profile:`Profil`},transferTickets_one:`{{count, number}}, açarları və keçidləri saxlanılmaqla`,transferTickets_other:`{{count, number}}, açarları və keçidləri saxlanılmaqla`,noOne:`Heç kim`,transferInvitations_one:`{{count, number}} gözləyən dəvətdən layihə çıxarılır`,transferInvitations_other:`{{count, number}} gözləyən dəvətdən layihə çıxarılır`,files_one:`{{count, number}} · {{size}}`,files_other:`{{count, number}} · {{size}}`,keptProject_one:`{{count, number}} fəaliyyət qeydi və {{key}} prefiksi`,keptProject_other:`{{count, number}} fəaliyyət qeydi və {{key}} prefiksi`,keptWorkspace_one:`{{count, number}} fəaliyyət qeydi və {{slug}} URL açarı`,keptWorkspace_other:`{{count, number}} fəaliyyət qeydi və {{slug}} URL açarı`,archivedProject:`arxivləşdirilib`,membersLoseAccess_one:`{{count, number}} nəfər girişini itirir; hesabı qalır`,membersLoseAccess_other:`{{count, number}} nəfər girişini itirir; hesabları qalır`,pendingInvitations_one:`{{count, number}} gözləyir`,pendingInvitations_other:`{{count, number}} gözləyir`,move:`Köçür`,moveTitle:`{{name}} köçür`,moved:`{{name}} iş sahəsinə köçürüldü`,movedUnnamed:`İş sahəsinə köçürüldü`,destination:`Təyinat iş sahəsi`,moveProject:`Layihəni köçür`,moving:`Köçürülür…`,export:`İxrac`,exportDescription:`Tiketlər iş axını, sahələr, etiketlər, əlaqələr, şərhlər, sübutlar və keçidlərlə birlikdə versiyalı JSON kimi. Qoşmalar və fəaliyyət tarixçəsi burada qalır.`,exporting:`İxrac edilir…`,exportJson:`JSON ixrac et`,delete:`Sil`,deleteTitle:`{{name}} sil`,deleted:`{{name}} silindi`,typeToConfirm:`Təsdiqləmək üçün {{value}} yazın`,deleting:`Silinir…`,deleteProject:`Layihəni sil`,deleteProjectDescription:`Tiketləri, şərhləri və faylları həmişəlik silir. Fəaliyyət tarixçəsi qalır və {{key}} bir daha istifadə edilmir.`,signInAgain:`Yenidən daxil ol`,deleteWorkspace:`İş sahəsini sil`,deleteWorkspaceDescription:`İş sahəsindəki bütün layihələri tiketləri, şərhləri və faylları ilə birlikdə həmişəlik silir və üzvlərini çıxarır. Hesablar və fəaliyyət tarixçəsi qalır.`,noSignInMethods:`Bağlanmış daxil olma üsulu yoxdur`,sessions_one:`{{count, number}} seansdan çıxış edildi`,sessions_other:`{{count, number}} seansdan çıxış edildi`,credentials_one:`{{count, number}} API açarı və ya tətbiq bağlantısı ləğv edildi`,credentials_other:`{{count, number}} API açarı və ya tətbiq bağlantısı ləğv edildi`,devices_one:`{{count, number}} cihaz və ya bildiriş kanalı silindi`,devices_other:`{{count, number}} cihaz və ya bildiriş kanalı silindi`,workspaceCount_one:`{{count, number}} iş sahəsi`,workspaceCount_other:`{{count, number}} iş sahəsi`,directProjectCount_one:`{{count, number}} birbaşa layihə`,directProjectCount_other:`{{count, number}} birbaşa layihə`,accessWorkspaces:`{{workspaces}} silindi`,accessBoth:`{{workspaces}} və {{projects}} silindi`,claims_one:`{{count, number}} götürmə buraxıldı`,claims_other:`{{count, number}} götürmə buraxıldı`,imports_one:`{{count, number}} idxal ləğv edildi`,imports_other:`{{count, number}} idxal ləğv edildi`,profileErased:`Ad, e-poçt və şəkil silindi`,commentCount_one:`{{count, number}} şərh`,commentCount_other:`{{count, number}} şərh`,activityCount_one:`{{count, number}} fəaliyyət qeydi`,activityCount_other:`{{count, number}} fəaliyyət qeydi`,keptAccount:`{{tickets}}, {{comments}} və {{events}} “{{name}}” kimi göstərilir`,deleteAccount:`Hesabı sil`,deleteOwnAccount:`Daxil olma məlumatlarınızı, seanslarınızı, açarlarınızı, cihazlarınızı, üzvlüklərinizi və şəxsi məlumatlarınızı həmişəlik silir. Tiketlər, şərhlər və fəaliyyət qalır və “{{name}}” kimi göstərilir.`,deleteOtherAccount:`Bu hesabın daxil olma məlumatlarını, seanslarını, açarlarını, cihazlarını, üzvlüklərini və şəxsi məlumatlarını həmişəlik silir. Tiketlər, şərhlər və fəaliyyət qalır və “{{name}}” kimi göstərilir.`},icon:{change:`İkonu dəyiş`,title:`Layihə ikonu`,library:`İkon kitabxanası`,upload:`Şəkil yüklə`,search:`İkonlarda axtar`,searchPlaceholder:`İkonlarda axtar…`,color:`İkonun rəngi`,choose:`{{name}} seç`,noMatches:`Uyğun ikon yoxdur`,showMore:`Daha çox ikon göstər`,uploading:`Yüklənir…`,chooseImage:`Şəkil seç`,formats:`PNG, JPEG və ya WebP · 10 MB-a qədər`,file:`Layihə ikonu faylı`,reset:`İkonu sıfırla`},createProject:{title:`Yeni layihə`,inWorkspace:`{{name}} iş sahəsində`,everyoneLabel:`Bu iş sahəsindəki hər kəs`,name:`Layihənin adı`,namePlaceholder:`Mobil tətbiq`,create:`Layihə yarat`},workspace:{title:`İş sahəsi parametrləri`,owner:`Sahib`,noOwner:`Sahib yoxdur. Nüsxə administratoru təyin edə bilər.`,transfer:`Sahibliyi ötür`,transferring:`Ötürülür…`,transferred:`{{workspace}} artıq {{name}} istifadəçisinə məxsusdur`,newOwner:`Yeni sahib`,noEligible:`Sahiblik aktiv iş sahəsi administratoruna keçir. Əvvəlcə başqa bir üzvü administrator edin.`,chosenCan:`Bundan sonra {{name}} iş sahəsini ötürə və ya silə bilər.`,newOwnerCan:`Yeni sahib iş sahəsini ötürə və ya silə bilər.`,ownerStays:`{{name}} administrator olaraq qalır.`,unavailable:`İş sahəsi əlçatan deyil`,backToProjects:`Layihələrə qayıt`,name:`İş sahəsinin adı`,edit:`İş sahəsini redaktə et`,copyKey:`İş sahəsinin açarını kopyala`,saved:`İş sahəsi yadda saxlanıldı`,projects:`Layihələr`,projectCount_one:`Bu iş sahəsində girişiniz olan {{count, number}} layihə.`,projectCount_other:`Bu iş sahəsində girişiniz olan {{count, number}} layihə.`,viewProjects:`Layihələrə bax`,members:`Üzvlər`,membersDescription:`İş sahəsi rolları iş sahəsi girişindən istifadə edən layihələrə tətbiq olunur.`,manageMembers:`Üzvləri idarə et`},members:{title:`Üzvlər`,customRole:`Fərdi rol`,search:`Üzvlərdə axtar`,searchPlaceholder:`Ad və ya e-poçt…`,add:`Üzv əlavə et`,added:`Üzv əlavə edildi`,workspaceAccess:`İş sahəsi girişi`,owner:`Sahib`,roleFor:`{{name}} üçün rol`,useWorkspaceAccess:`İş sahəsi girişindən istifadə et`,remove:`Üzvü çıxar`,removeFromWorkspace:`{{name}} bu iş sahəsindən və onun bütün layihələrindən çıxarılsın?`,restoreAccess:`{{name}} üçün {{role}} iş sahəsi girişi bərpa edilsin?`,removeFromProject:`{{name}} üçün layihə girişi silinsin?`,noMatches:`Uyğun üzv yoxdur`,empty:`Üzv yoxdur`,projectRole:`Layihə rolu`,workspaceRole:`İş sahəsi rolu`},invitations:{title:`Dəvətlər`,invite:`E-poçtla dəvət et`,removedProjects:`Silinmiş layihələr`,wholeWorkspace:`Bütün iş sahəsi`,selectedProjects:`Seçilmiş layihələr`,expired:`Müddəti bitib`,expires:`Bitir: <time/>`,resend:`Dəvəti {{email}} ünvanına yenidən göndər`,revoke:`Dəvəti ləğv et`,revokeDescription:`{{email}} ünvanına göndərilən keçid işləməyi dayandıracaq.`,revoked:`Dəvət ləğv edildi`,empty:`Gözləyən dəvət yoxdur`,email:`E-poçt`,role:`Rol`,access:`Giriş`,projects:`Layihələr`,noProjects:`Bu iş sahəsində layihə yoxdur.`,linkExpires:`Keçidin bitmə müddəti`,inDays_one:`{{count, number}} gün sonra`,inDays_other:`{{count, number}} gün sonra`,submit:`Dəvət et`,link:`Dəvət keçidi`,copyLink:`Dəvət keçidini kopyala`,emailed:`{{email}} ünvanına göndərildi. Keçid həmin ünvan üçün bir dəfə işləyir.`,notEmailed:`Bu nüsxədə e-poçt konfiqurasiya edilməyib. Bu keçidi {{email}} ünvanına göndərin; o, həmin ünvan üçün bir dəfə işləyir.`,notEmailedUnknown:`Bu nüsxədə e-poçt konfiqurasiya edilməyib. Bu keçidi alıcıya göndərin; o, həmin ünvan üçün bir dəfə işləyir.`},workspaces:{title:`İş sahələri`,search:`İş sahələrində axtar`,searchPlaceholder:`Ad və ya URL açarı…`,noMatches:`Uyğun iş sahəsi yoxdur`,empty:`İş sahəsi yoxdur`,workspace:`İş sahəsi`,administrators:`Administratorlar`,members:`Üzvlər`,projects:`Layihələr`,created:`Yaradılıb`,actions:`Əməliyyatlar`,noAdministrator:`Administrator yoxdur`,manage:`{{name}} idarə et`,pagerNoun:`iş sahələri`,private:`Gizli`,noProjects:`Layihə yoxdur`},roles:{title:`Rollar`,new:`Yeni rol`,edit:`Rolu redaktə et`,builtIn:`Daxili`,readOnly:`Oxumadan başqa əməliyyat yoxdur`,memberships_one:`{{count, number}} üzvlük`,memberships_other:`{{count, number}} üzvlük`,editNamed:`{{name}} rolunu redaktə et`,deleteNamed:`{{name}} rolunu sil`,deleteUnused:`İstifadə olunmayan {{name}} rolu silinsin?`,deleted:`Rol silindi`,empty:`Rol yoxdur`,saved:`Rol yadda saxlanıldı`,name:`Rolun adı`,actions:`Əməliyyatlar`,everyoneReads:`Hər üzv çatdığı layihələri oxuya bilər.`,changesApply_one:`Dəyişikliklər bu rola malik {{count, number}} üzvlüyə dərhal tətbiq olunur.`,changesApply_other:`Dəyişikliklər bu rola malik {{count, number}} üzvlüyə dərhal tətbiq olunur.`,save:`Rolu yadda saxla`,delete:`Rolu sil`,reassignDescription_one:`{{count, number}} üzvlük {{name}} roluna malikdir. Keçəcəkləri rolu seçin.`,reassignDescription_other:`{{count, number}} üzvlük {{name}} roluna malikdir. Keçəcəkləri rolu seçin.`,moveTo:`Üzvləri bu rola köçür`},theme:{mode:{light:`İşıqlı`,dark:`Qaranlıq`,system:`Sistem`},aligned:`Uyğunlaşdırılıb`,hexColor:`Altırəqəmli hex rəngindən istifadə edin`,contrast:{light:`İşıqlı temanın mətn kontrastını ən azı 4.5:1-ə qədər artırın.`,dark:`Qaranlıq temanın mətn kontrastını ən azı 4.5:1-ə qədər artırın.`},fileTooLarge:`Tema faylları 100 KB-dan kiçik olmalıdır.`,tooMany:`Ən çox 50 fərdi tema saxlayın.`},appearance:{colorScheme:`Rəng sxemi`,theme:`Tema`,themes:`Temalar`,colorTheme:`Rəng teması`,search:`Temalarda axtar`,searchPlaceholder:`Temalarda axtar…`,create:`Tema yarat`,add:`Tema əlavə et`,importFile:`Tema faylını idxal et`,useMode:{light:`{{name}} işıqlı rejimindən istifadə et`,dark:`{{name}} qaranlıq rejimindən istifadə et`},modeOnly:{light:`Yalnız işıqlı rejim üçün istifadə et`,dark:`Yalnız qaranlıq rejim üçün istifadə et`},copyName:`{{name}} surəti`,duplicate:`{{name}} surətini çıxar`,edit:`{{name}} redaktə et`,export:`{{name}} ixrac et`,delete:`{{name}} sil`,deleteDescription:`{{name}} bu brauzerdən silinsin? Ondan istifadə edən işıqlı və ya qaranlıq görünüşlər əsas temanıza qayıdacaq.`,noMatches:`Uyğun tema yoxdur`,customTheme:`Fərdi tema`,name:`Temanın adı`,paletteColor:`{{mode}}: {{color, lowercase}}`,color:{background:`Fon`,foreground:`Mətn`,sidebar:`Yan panel`,primary:`Vurğu`,primaryForeground:`Vurğu mətni`},save:`Temanı yadda saxla`},color:{swatch:`{{color}} {{label, lowercase}}`,removeCustom:`{{hex}} fərdi rənglərdən sil`,custom:`Fərdi rəng`,default:`standart`,red:`qırmızı`,orange:`narıncı`,amber:`kəhrəba`,yellow:`sarı`,lime:`laym`,green:`yaşıl`,emerald:`zümrüd`,teal:`firuzəyi-yaşıl`,cyan:`mavi-yaşıl`,sky:`səma mavisi`,blue:`göy`,indigo:`indiqo`,violet:`bənövşəyi`,purple:`tünd bənövşəyi`,fuchsia:`fuksiya`,pink:`çəhrayı`,rose:`qızılgül`,gray:`boz`}},admin:{instance:{title:`İdarəetmə`,heading:`Nüsxə`,edit:`Nüsxəni redaktə et`,name:`Ad`,description:`Təsvir`,noDescription:`Təsvir yoxdur`,version:`Tətbiq versiyası`,publicUrl:`İctimai URL`,provider:{local:`Yerli PostgreSQL yaddaşı`,s3:`S3-uyğun obyekt yaddaşı`,postgres:`Daxili PostgreSQL`,elasticsearch:`Elasticsearch-uyğun axtarış`},section:{storage:`Fayl yaddaşı`,search:`Tiket axtarışı`,events:`Hadisə çatdırılması`},viewConfiguration:`Konfiqurasiyaya bax`,configure:{storage:`Yaddaşı konfiqurasiya et`,search:`Axtarışı konfiqurasiya et`,events:`Hadisə çatdırılmasını konfiqurasiya et`},providerTitle:`Provayder`,deploymentManaged:`Yerləşdirmə tərəfindən idarə olunur`,instanceManaged:`Nüsxə tərəfindən idarə olunur`,transfers:`Ötürmələr`,indexStatus:`İndeks statusu`,connection:`Bağlantı`,transfersS3:`Fayllar yerli olaraq yadda saxlanıldıqdan sonra obyekt yaddaşına köçürülür.`,transfersLocal:`Yeni fayllar PostgreSQL-də saxlanılır.`,searchBuiltIn:`Axtarış birbaşa PostgreSQL-də icra olunur.`,searchIndexed:`Tiket dəyişiklikləri arxa planda indeksləşdirilir.`,eventsConnection:`Bildirişlər istehlakçıları oyadır; PostgreSQL təkrar oxutma tarixçəsini saxlayır.`,builtIn:`Daxili`,connected:`Qoşulub`,upToDate:`Aktualdır`,status:{ready:`hazırdır`,transferring:`ötürülür`,indexing:`indeksləşdirilir`,connecting:`qoşulur`,unavailable:`əlçatan deyil`},pendingTransfers:`Gözləyən ötürmələr`,pendingRemain:`Ötürmə tamamlanana qədər bu fayllar PostgreSQL-dən əlçatan qalır.`,noPending:`Ötürülməyi gözləyən fayl yoxdur.`,bucket:`Bucket`,storageEndpoint:`Yaddaş ünvanı`,backup:`Ehtiyat nüsxə`,backupBuckets:`PostgreSQL-in və istinad edilən hər obyekt yaddaşı bucket-inin ehtiyat nüsxəsini çıxarın.`,backupDatabase:`Fayl baytları PostgreSQL ehtiyat nüsxənizə daxildir.`,fallback:`Ehtiyat variant`,fallbackDescription:`Xarici indeks geri qaldıqda və ya oflayn olduqda PostgreSQL axtarışı əlçatandır.`,searchEndpoint:`Axtarış ünvanı`,index:`İndeks`,delivery:`Çatdırılma`,deliveryDescription:`Davamlı hadisələr və təkrar oxutma PostgreSQL-də qalır. İstəyə bağlı broker oyanma siqnallarını paylayır.`,brokerEndpoint:`Broker ünvanı`,exchange:`Exchange`},configure:{storageTitle:`Fayl yaddaşını konfiqurasiya et`,searchTitle:`Tiket axtarışını konfiqurasiya et`,eventsTitle:`Hadisə çatdırılmasını konfiqurasiya et`,saved:`Nüsxə parametrləri yadda saxlanıldı`,instanceName:`Nüsxənin adı`,instanceDescription:`Nüsxənin təsviri`,publicUrlSource:`İctimai URL yerləşdirmənizdəki KANVIL_URL ilə təyin edilir.`,storageIntro:`Qoşmalar və profil şəkilləri bu provayderdən istifadə edir. Mövcud fayllar ilkin saxlanma yerində qalır.`,storageProvider:`Yaddaş provayderi`,localDescription:`Fayl baytları yerli verilənlər bazasında saxlanılır və PostgreSQL ehtiyat nüsxələrinə daxil edilir.`,s3Endpoint:`S3 ünvanı`,s3EndpointHint:`Amazon S3 üçün ünvanı boş saxlayın.`,region:`Region`,prefix:`Obyekt açarı prefiksi`,accessKeyId:`Giriş açarı ID-si`,secretAccessKey:`Gizli giriş açarı`,savedSecret:`Yadda saxlanılıb. Saxlamaq üçün boş buraxın.`,deploymentCredentials:`Göstərilmədikdə yerləşdirmənin giriş məlumatları`,pathStyle:`Yol üslublu bucket URL-lərindən istifadə et`,storageVerified:`Yaddaş bağlantısı təsdiqləndi`,testStorage:`Yaddaş bağlantısını yoxla`,filesWaiting_one:`{{count, number}} fayl ötürülməyi gözləyir. Gözləyən fayllar PostgreSQL-dən oxuna bilir.`,filesWaiting_other:`{{count, number}} fayl ötürülməyi gözləyir. Gözləyən fayllar PostgreSQL-dən oxuna bilir.`,transfersComplete:`Bütün fayl ötürmələri tamamlandı.`,storageDeployment:`Yaddaş KANVIL_STORAGE_PROVIDER və S3_* yerləşdirmə dəyişənləri ilə konfiqurasiya edilir.`,locations:`Mövcud saxlanma yerləri`,locationFiles_one:`{{count, number}} fayl`,locationFiles_other:`{{count, number}} fayl`,cleanUp:`İstifadə olunmayan faylları təmizlə`,cleanUpConfirm:`İstinad edilməyən fayllar və bir gündən köhnə uğursuz yükləmələr silinsin? Tiketlərə və ya profillərə qoşulmuş fayllar saxlanılır.`,cleanUpNote:`Təmizləmə həm də avtomatik işləyir. S3 obyektləri üçün verilənlər bazasının ehtiyat nüsxəsi ilə yanaşı bucket-in ehtiyat nüsxəsi lazımdır.`,searchProvider:`Axtarış provayderi`,searchBuiltIn:`Daxili PostgreSQL axtarışı`,indexName:`Kanvil indeksinin adı`,searchAuthentication:`Axtarış autentifikasiyası`,noAuthentication:`Autentifikasiya yoxdur`,apiKey:`API açarı`,basic:`İstifadəçi adı və şifrə`,searchApiKey:`Axtarış API açarı`,optional:`İstəyə bağlı`,searchUsername:`Axtarış istifadəçi adı`,searchPassword:`Axtarış şifrəsi`,searchVerified:`Axtarış bağlantısı təsdiqləndi`,testSearch:`Axtarış bağlantısını yoxla`,rebuildQueued:`Axtarışın yenidən qurulması növbəyə qoyuldu`,rebuild:`İndeksi yenidən qur`,searchNote:`İcazələr və filtrlər üçün PostgreSQL əsas mənbə olaraq qalır. Xarici indeks yenilənərkən və ya əlçatan olmadıqda axtarış PostgreSQL-ə keçir.`,brokerProvider:`Hadisə çatdırılması provayderi`,brokerBuiltIn:`Daxili PostgreSQL bildirişləri`,rabbitUrl:`RabbitMQ bağlantı URL-i`,savedBrokerEndpoint:`Yadda saxlanılmış broker ünvanı`,rabbitExchange:`RabbitMQ exchange`,brokerVerified:`RabbitMQ çatdırılması təsdiqləndi`,testBroker:`Broker bağlantısını yoxla`,brokerNote:`RabbitMQ təsdiqlənmiş hadisə oyanma siqnallarını Kanvil nüsxələrinə paylayır və arxa plan işçilərini oyadır. PostgreSQL davamlı hadisələri və gözləyən işləri saxlayır, broker əlçatan olmadıqda oyanma siqnallarını özü çatdırır.`,brokerDeployment:`Hadisə çatdırılması KANVIL_BROKER_PROVIDER və RABBITMQ_* yerləşdirmə dəyişənləri ilə konfiqurasiya edilir.`,save:`Nüsxə parametrlərini yadda saxla`},authentication:{title:`Autentifikasiya`,saved:`Autentifikasiya yadda saxlanıldı`,emailPassword:`E-poçt və şifrə ilə daxil olma`,emailPasswordDescription:`E-poçtla göndərilən daxil olma kodlarını və şifrə sıfırlamanı əhatə edir.`,ssoProvision:`SSO-dan istifadəçiləri avtomatik yarat`,ssoProvisionDescription:`Yeni SSO istifadəçilərinin dəvət edilənə qədər iş sahəsinə və ya layihəyə girişi olmur.`,registration:`İctimai e-poçt qeydiyyatı`,registrationClosed:`Bağlı`,identityProvider:`İdentiklik provayderi`,notConfigured:`Konfiqurasiya edilməyib`,linkedProviders:`Bağlı hesab provayderləri`,linkedProvidersDescription:`Yalnız onları bağlamış hesablarla daxil olmağa imkan verir; heç vaxt hesab yaratmır.`,save:`Autentifikasiyanı yadda saxla`,discoveryUrl:`OIDC kəşf URL-i`,clientId:`OIDC klient ID-si`,oidcSetup:`Yerləşdirmənizdə OIDC_DISCOVERY_URL, OIDC_CLIENT_ID, OIDC_CLIENT_SECRET və OIDC_NAME dəyərlərini və ya GITHUB_, GOOGLE_ ya da DISCORD_ üçün CLIENT_ID və CLIENT_SECRET cütünü konfiqurasiya edin, sonra Kanvil-i yenidən başladın. Provayder sirləri heç vaxt brauzerə qaytarılmır.`,consumers:`İstehlakçı interfeysləri`,mcpEndpoint:`MCP ünvanı`,eventFeed:`Real vaxt hadisə lenti`,openApi:`Open API spesifikasiyası`},users:{title:`İstifadəçilər`,search:`İstifadəçilərdə axtar`,searchPlaceholder:`Ad və ya e-poçt…`,new:`Yeni istifadəçi`,roleFilter:`Nüsxə rolu filtri`,allRoles:`Bütün rollar`,administrators:`Administratorlar`,users:`İstifadəçilər`,statusFilter:`Hesab statusu filtri`,allAccounts:`Bütün hesablar`,active:`Aktiv`,disabled:`Deaktiv`,noMatches:`Uyğun istifadəçi yoxdur`,empty:`İstifadəçi yoxdur`,user:`İstifadəçi`,role:`Rol`,status:`Status`,joined:`Qoşulub`,actions:`Əməliyyatlar`,administrator:`Administrator`,manage:`{{name}} idarə et`,pagerNoun:`istifadəçilər`,create:`Hesab yarat`,creating:`Yaradılır…`,created:`{{email}} yaradıldı`,name:`Ad`,email:`E-poçt`,initialPassword:`İlkin şifrə`,instanceRole:`Nüsxə rolu`},account:{details:`Hesab məlumatları`,joined:`Qoşulub: {{date}}`,edit:`Hesabı redaktə et`,instanceRole:`Nüsxə rolu`,adminDescription:`Bütün iş sahələrini, hesabları və yerləşdirmə parametrlərini idarə edə bilər.`,userDescription:`Girişi iş sahəsi və layihə rolları müəyyən edir.`,changeRole:`Rolu dəyiş`,changeRoleTitle:`Nüsxə rolunu dəyiş`,signInMethods:`Daxil olma üsulları`,setPassword:`Yerli şifrə təyin et`,activeSessions:`Aktiv seanslar`,sessions_one:`{{count, number}} seans`,sessions_other:`{{count, number}} seans`,revokeSessions:`Seansları ləğv et`,revokeConfirm:`{{name}} bütün cihazlardan çıxarılsın? API açarları aktiv qalır.`,sessionsRevoked:`Seanslar ləğv edildi`,access:`Hesaba giriş`,accessDisabled:`Daxil olma və API girişi deaktiv edilib.`,accessPreserved:`Hesabın deaktiv edilməsi tiketləri və fəaliyyət tarixçəsini saxlayır.`,enable:`Hesabı aktivləşdir`,disable:`Hesabı deaktiv et`,enableConfirm:`{{name}} üçün daxil olma bərpa edilsin?`,disableConfirm:`{{name}} üçün daxil olma və API girişi deaktiv edilsin və seansları ləğv edilsin?`,enabled:`Hesab aktivləşdirildi`,disabledToast:`Hesab deaktiv edildi`,updateFailed:`Hesab yenilənə bilmədi`,workspaces:`İş sahələri`,addToWorkspace:`İş sahəsinə əlavə et`,noWorkspaces:`İş sahəsi üzvlüyü yoxdur`,projectAccess:`Birbaşa layihə girişi`,updated:`Hesab yeniləndi`,roleUpdated:`Nüsxə rolu yeniləndi`,workspaceAdded:`İş sahəsi girişi əlavə edildi`,passwordMismatch:`Yeni şifrələr uyğun gəlmir.`,passwordSet:`Yerli şifrə təyin edildi və seanslar ləğv edildi`,name:`Ad`,email:`E-poçt`,user:`İstifadəçi`,administrator:`Administrator`,adminsNote:`Administratorlar bütün iş sahələrini, istifadəçiləri və nüsxə parametrlərini idarə edə bilər.`,workspace:`İş sahəsi`,workspaceRole:`İş sahəsi rolu`,newPassword:`Yeni şifrə`,confirmPassword:`Yeni şifrəni təsdiqləyin`,passwordNote:`Bu, yerli şifrə təyin edir və istifadəçini bütün cihazlardan çıxarır.`,save:`Dəyişiklikləri yadda saxla`},delivery:{field:{address:`E-poçt ünvanı`,server:`Server`,topic:`Mövzu`,accessToken:`Giriş tokeni`,applicationToken:`Tətbiq tokeni`,endpointUrl:`Ünvan URL-i`,signingSecret:`İmzalama sirri`,incomingWebhookUrl:`Daxil olan webhook URL-i`,webhookUrl:`Webhook URL-i`,channel:`Kanal`,botToken:`Bot tokeni`,chatId:`Çat ID-si`,chatIdPlaceholder:`-1001234567890 və ya @channel`,topicId:`Mövzu ID-si`,optional:`{{label}} (istəyə bağlı)`,removeSaved:`Yadda saxlanılmış {{label, lowercase}} sil`,savedSecret:`Yadda saxlanılıb · saxlamaq üçün boş buraxın`},failure:{blockedAddress:`Bu ünvana icazə verilmir`,redirectBlocked:`Ünvan yönləndirmə etdi`,dnsError:`Host tapılmadı`,networkError:`Qoşulmaq mümkün olmadı`,timeout:`Vaxt bitdi`,invalidEndpoint:`Yanlış ünvan`,emailUnavailable:`Bu serverdə e-poçt konfiqurasiya edilməyib`,smtpError:`Poçt serveri əlçatan deyil`,accessRevoked:`Onu qoşan administrator girişini itirib; yenidən qoşun`,repositoryMismatch:`Çatdırılma başqa repozitoridən gəldi`,http:`HTTP {{status}} ilə rədd edildi`,smtp:`Poçt serveri {{code}} cavabını verdi`},health:{delivery:{done:`Çatdırıldı: <time/>`,pending:`Göndərilir…`,none:`Hələ heç nə göndərilməyib`,failed:`{{reason}}`},access:{done:`Giriş yoxlanıldı: <time/>`,pending:`Giriş yoxlanılır…`,none:`Giriş yoxlanılmayıb`,failed:`Giriş yoxlaması: {{reason}}`},retrying:`yenidən cəhd edilir`},paused:`Dayandırılıb`,failing:`Uğursuz olur`,sendTest:`{{name}} üçün test göndər`,testQueued:`Test növbəyə qoyuldu`,resume:`{{name}} davam etdir`,pause:`{{name}} dayandır`,edit:`{{name}} redaktə et`,disconnect:`{{name}} ayır`,disconnected:`{{name}} ayrıldı`,name:`Ad`,type:`Tip`,channels:`Kanallar`,addChannel:`Kanal əlavə et`,noChannels:`Kanal yoxdur`,editChannel:`Kanalı redaktə et`,channelSaved:`Kanal yadda saxlanıldı`,channelRemoval:`{{name}} ayrılsın? Onun parametrləri və növbədəki bildirişləri silinəcək.`,sendFrom:`Bildirişləri buradan göndər`,routeOff:`Heç nə`,routeAll:`Bütün layihələr`,routeSelected:`Seçilmiş layihələr`,saveChannel:`Kanalı yadda saxla`,adminsOnly:`İnteqrasiyaları layihə administratorları idarə edir`,destinations:`Təyinatlar`,addDestination:`Təyinat əlavə et`,noDestinations:`Təyinat yoxdur`,editDestination:`Təyinatı redaktə et`,destinationSaved:`Təyinat yadda saxlanıldı`,destinationRemoval:`{{name}} ayrılsın? Onun parametrləri və növbədəki mesajları silinəcək.`,send:`Göndər`,saveDestination:`Təyinatı yadda saxla`},repository:{setup:{github:`Tokenin repozitoriyə oxuma girişi, şərh yazmaq və ya məsələləri sinxronlaşdırmaq üçün isə issue və pull request yazma girişi olmalıdır. Bu repozitorinin sətrindən kopyalanan URL, application/json məzmun tipi, bu sirr və Branch or tag creation, Branch or tag deletion, Issues, Issue comments və Pull requests hadisələri ilə GitHub webhooku əlavə edin.`,gitea:`Tokenə read:repository əhatəsi, şərh yazmaq və ya məsələləri sinxronlaşdırmaq üçün isə write:issue lazımdır. Bu repozitorinin sətrindən kopyalanan URL, application/json məzmun tipi, bu sirr və Create, Delete, Issues, Issue Label, Issue Comment və Pull Request hadisələri ilə Gitea webhooku əlavə edin.`,gitlab:`Tokenə read_api əhatəsi, şərh yazmaq və ya məsələləri sinxronlaşdırmaq üçün isə api lazımdır. Bu repozitorinin sətrindən kopyalanan URL, bu gizli token və Push, Issues, Comments və Merge request hadisələri ilə GitLab webhooku əlavə edin.`},noWebhook:`Webhook alınmayıb`,webhookReceived:`Webhook alındı: <time/>`,saved:`Repozitori yadda saxlanıldı`,title:`Repozitorilər`,connect:`Repozitori qoş`,empty:`Repozitori yoxdur`,checkAccess:`{{repository}} girişini yoxla`,accessQueued:`Giriş yoxlaması növbəyə qoyuldu`,copyWebhook:`{{repository}} üçün webhook URL-ini kopyala`,issueSync:`{{repository}} üçün məsələ sinxronizasiyası`,removal:`{{repository}} ayrılsın? Onun webhooku dərhal işləməyi dayandırır. Onun əlavə etdiyi keçidlər tiketlərdə qalır.`,edit:`Repozitorini redaktə et`,host:`Host`,serverUrl:`Server URL-i`,serverUrlOptional:`Server URL-i (istəyə bağlı)`,repository:`{{host}} repozitorisi`,nestedPlaceholder:`group/project`,placeholder:`owner/repository`,accessToken:`Giriş tokeni`,webhookSecret:`Webhook sirri`,savedSecret:`Yadda saxlanılıb · saxlamaq üçün boş buraxın`,commentOnLink:{pull_request:`Yeni bağlanmış məsələlərə və pull request-lərə şərh yaz`,merge_request:`Yeni bağlanmış məsələlərə və merge request-lərə şərh yaz`},moveTickets:`Bağlı tiketləri köçür`,noMove:`Köçürmə yoxdur`,save:`Repozitorini yadda saxla`},issueSync:{reason:{labels:`Onun sinxronizasiya etiketləri dəyişdi`,conflict:`Hər iki tərəfdə dəyişdirilib`,changedWhilePaused:`Repozitori dayandırılmış ikən məsələ dəyişdi`,unverified:`Hostun cavabı dəyişikliyi təsdiqləmədi`,claimConflict:`Tiket götürülüb`,invalidContent:`Məsələ tiketin icazə verdiyindən uzundur`},issuesSyncing_one:`{{count, number}} məsələ sinxronlaşdırılır`,issuesSyncing_other:`{{count, number}} məsələ sinxronlaşdırılır`,linksStopped_one:`{{count, number}} bağlantı dayandı`,linksStopped_other:`{{count, number}} bağlantı dayandı`,match:`Uyğunluq`,matchAny:`Bu etiketlərdən hər hansı biri`,matchAll:`Bu etiketlərin hamısı`,preview:{matching:`Sinxronizasiyanı davam etdir`,export:`Yaradılacaq yeni məsələlər`,pause:`Dayandırılacaq bağlantılar`,review:`Yoxlanılacaq bağlantılar`},applied:`Məsələ sinxronizasiyası tətbiq edildi`,title:`Məsələ sinxronizasiyası · {{repository}}`,outbound:`Kanvil → {{host}}`,exportTickets:`Tiketləri məsələ kimi ixrac et`,exportDescription:`Açıq tiketlər üçün yeni məsələ yaradılır; başlıq, təsvir, vəziyyət və yeni şərhlər uyğun saxlanılır.`,ticketLabels:`Yalnız bu etiketləri olan tiketlər`,everyTicket:`Bütün açıq tiketlər`,inbound:`{{host}} → Kanvil`,importIssues:`Məsələləri tiket kimi idxal et`,importDescription:`Açıq məsələlər {{host}} onları növbəti dəfə bildirəndə idxal edilir.`,issueLabels:`Yalnız bu etiketləri olan məsələlər`,everyIssue:`Bütün açıq məsələlər`,previewLabel:`Önizləmə`,previewAction:`Önizlə`,stopped:`Dayanmış bağlantılar · {{repository}}`,review:`Yoxla`,linkRemoved:`Bağlantı silindi`,resumed:`Sinxronizasiya bərpa edildi`,open:`Açıq`,closed:`Bağlı`,reviewTitle:`{{key}} yoxla`,mayExist:`{{host}}-da bu məsələ artıq ola bilər; yenidən yaratmazdan əvvəl yoxlayın.`,comparison:`Müqayisə`,field:{title:`başlıq`,description:`təsvir`,state:`vəziyyət`},notReported:`Bildirilməyib`,unlink:`Bağlantını kəs`,keepHost:`{{host}} versiyasını saxla`,keepKanvil:`Kanvil versiyasını saxla`,createAgain:`Məsələni yenidən yarat`,unlinkTicket:`{{key}} bağlantısını kəs`,unlinkConfirm:`{{key}} sinxronizasiyası dayandırılsın? Tiket də, məsələ də qalır.`},import:{count:{tickets:`Tiketlər`,workflow:`İş axını vəziyyətləri`,fields:`Fərdi sahələr`,labels:`Etiketlər`,relations:`Əlaqələr`,comments:`Şərhlər`,evidence:`Sübutlar`,links:`Keçidlər`},notExport:`Bu fayl Kanvil tiket ixracı deyil.`,progress_one:`{{status}} · {{count, number}} qeyddən {{done, number}}`,progress_other:`{{status}} · {{count, number}} qeyddən {{done, number}}`,progressFailed_one:`{{status}} · {{count, number}} qeyddən {{done, number}} · {{failed, number}} uğursuz`,progressFailed_other:`{{status}} · {{count, number}} qeyddən {{done, number}} · {{failed, number}} uğursuz`,title:`İdxal`,description:`Kanvil tiket ixracından və ya başqa izləmə sistemindən layihə yaradır: Linear, Jira, Trello, Plane, PLANKA və ya Kaneo.`,action:`Layihəni idxal et`,detailsOf:`{{name}} məlumatları`,details:`Məlumatlar`,exportFile:`Kanvil ixrac faylı`,source:`Mənbə`,file:`İxrac faylı`,jiraEdition:`Jira versiyası`,siteUrl:`Sayt URL-i`,accountEmail:`Hesab e-poçtu`,apiKey:`API açarı`,apiToken:`API tokeni`,personalToken:`Şəxsi giriş tokeni`,token:`Token`,apiUrl:`API URL-i`,workspaceSlug:`İş sahəsinin URL açarı`,signInWith:`Giriş üsulu`,username:`İstifadəçi adı və ya e-poçt`,password:`Şifrə`,checkConnection:`Bağlantı məlumatlarını yoxlayın`,noProjects:`Bu giriş məlumatları heç bir {{label, lowercase}} oxuya bilmir.`,includeComments:`Şərhləri daxil et`,projectName:`Layihənin adı`,start:`İdxal et`,connect:`Qoş`,preview:`Önizlə`,starting:`Başladılır…`,connecting:`Qoşulur…`,checking:`Yoxlanılır…`,matched:`Uyğunlaşdırılmış şəxslər`,unmatched:`Uyğunlaşdırılmamış şəxslər`,previewLabel:`İdxal önizləməsi`,errorPrefix:`Xəta: `,notePrefix:`Qeyd: `,progressLabel:`İdxal gedişatı`,notImported:`İdxal edilməyən qeydlər`,stop:`İdxalı dayandır`,openProject:`Layihəni aç`}},native:{"navigation.projectButton":`{{project}} ⌄`,"navigation.recentProjects":`Son layihələr`,"navigation.switchProject":`İş sahəsini və ya layihəni dəyiş`,labelValue:`{{label}}: {{value}}`,ui:{dismiss:`Bağla`,loading:`Yüklənir`},server:{url:`Server URL-i`,connect:`Qoş`,change:`Serveri dəyiş`,invalidOrigin:`Kanvil serverinizin yol və ya giriş məlumatları olmadan HTTP və ya HTTPS mənbəyindən istifadə edin.`,httpsRequired:`Kanvil serverinizə qoşulmaq üçün HTTPS-dən istifadə edin.`},login:{setupTitle:`Sahib hesabınızı yaradın`,signIn:`Daxil ol`,signingIn:`Daxil olunur…`,createAccount:`Hesab yarat`,signInWith:`{{provider}} ilə daxil ol`,name:`Ad`,setupToken:`Quraşdırma tokeni`,email:`E-poçt`,password:`Şifrə`},connection:{connecting:`qoşulur`,connected:`● Canlı`,offline:`Oflayn · keşlənmiş məlumat`,closed:`bağlıdır`,signedOut:`Yenidən qoşulmaq üçün daxil olun`},screen:{projects:`Layihələr`,inbox:`Gələnlər`,settings:`Parametrlər`,tickets:`Tiketlər`,ticket:`Tiket`,newTicket:`Yeni tiket`,editTicket:`Tiketi redaktə et`},projects:{empty:`Hələ layihə yoxdur`,new:`Yeni layihə`,name:`Layihənin adı`,prefix:`Tiket prefiksi`,description:`Təsvir`,create:`Layihə yarat`},tickets:{options:`Siyahı seçimləri`,expandAll:`Bütün bölmələri genişləndir`,collapseAll:`Bütün bölmələri yığ`,select:`Biletləri seç`,search:`Tiketlərdə axtar`,searchPlaceholder:`Başlıq, təsvir və ya açar`,allStatuses:`Bütün statuslar`,empty:`Uyğun tiket yoxdur`,count:`{{shown}} / {{total}}`},ticket:{priority:`Prioritet: {{priority}}`,noDifficulty:`Çətinlik göstərilməyib`,version:`v{{version}}`,starts:`Başlayır: {{date}}`,due:`Son tarix: {{date}}`},editor:{stale:`Bu tiket dəyişib. Yadda saxlanılmış qaralamanız hələ {{version}} versiyasından istifadə edir.`,discardDraft:`Qaralamanı at və yenidən yüklə`,title:`Başlıq`,noDifficulty:`Göstərilməyib`,labels:`Etiketlər (vergüllə ayrılmış)`,scopes:`Əhatələr (vergüllə ayrılmış)`,editMarkdown:`Markdown-u redaktə et`,previewMarkdown:`Markdown önizləməsi`,description:`Təsvir (Markdown)`,acceptanceCriteria:`Qəbul meyarları (Markdown)`,parent:`Valideyn tiketin ID-si`,automationReady:`Tələblər və asılılıqlar imkan verdikdə agentlər üçün hazırdır`,holdReason:`Gözləmə səbəbi`,draftSaved:`Qaralama bu cihazda yadda saxlanıldı`,save:`Tiketi yadda saxla`},detail:{archived:`Arxivləşdirilib`,subscribe:`Abunə ol`,unsubscribe:`Abunəlikdən çıx`,share:`Paylaş`,description:`Təsvir`,noDescription:`_Təsvir yoxdur_`,acceptanceCriteria:`Qəbul meyarları`,noAcceptanceCriteria:`_Qəbul meyarları yoxdur_`,fields:`Sahələr`,archive:{action:`Tiketi arxivləşdir`,title:`Tiket arxivləşdirilsin?`,message:`Bu tiket aktiv siyahılardan və agentlər üçün uyğunluqdan çıxarılsın?`},unarchive:{action:`Tiketi arxivdən çıxar`,title:`Tiket arxivdən çıxarılsın?`,message:`Bu tiket aktiv siyahılara qaytarılsın?`}},readiness:{title:`Agent hazırlığı`,ready:`Götürməyə hazırdır`,notReady:`Götürməyə hazır deyil`,hold:`Gözləmə: {{reason}}`,claimed:`{{time}} vaxtınadək {{worker}} tərəfindən götürülüb.`,release:{action:`Götürməmi burax`,title:`Götürmə buraxılsın?`,message:`Sahibliyi buraxmazdan əvvəl işçinizi dayandırın.`,confirm:`Burax`},recover:{action:`Müddəti bitmiş götürməni bərpa et`,explanation:`Əvvəlcə işçinin dayandığını təsdiqləyin.`,reason:`Bərpa səbəbi`,confirm:`İşçi dayandı · bərpa et`}},relations:{title:`Əlaqələr`,parent:`Valideyn · {{key}} · {{title}}`,openParent:`Valideyn tiketi aç`,children:`Alt tiketlər`,previousChildren:`Əvvəlki alt tiketlər`,nextChildren:`Növbəti alt tiketlər`,remove:`Əlaqəni sil`,removeTitle:`Əlaqə silinsin?`,add:`Əlaqə əlavə et`,find:`Tiket tap`,type:`Əlaqə`,ticket:`Tiket`,choose:`Tiket seçin`},discussion:{title:`Müzakirə`,previous:`Əvvəlki şərhlər`,next:`Növbəti şərhlər`,field:`Şərh (Markdown)`,submit:`Şərh yaz`,you:`Siz`,edit:`Şərhi redaktə et`,editField:`Şərh`,delete:`Şərhi sil`,deleteTitle:`Şərh silinsin?`,deleteMessage:`Bu şərh həmişəlik silinsin?`,save:`Şərhi yadda saxla`},attachments:{title:`Qoşmalar`,item:`{{name}} · {{size}} kB`,remove:`{{name}} sil`,removeTitle:`Qoşma silinsin?`,working:`İcra olunur…`,add:`Qoşma əlavə et`,tooLarge:`10 MB-dan böyük olmayan fayl seçin.`,sharingUnavailable:`Bu cihazda fayl paylaşımı əlçatan deyil.`},evidence:{title:`Sübutlar`,explanation:`Nəticələri onları təqdim edən hesablar bildirir.`,add:`Sübut əlavə et`,name:`Başlıq`,url:`URL`,outcome:`Bildirilən nəticə`,commit:`Commit (tam hash)`,note:`Qeyd`,save:`Sübutu yadda saxla`},activity:{title:`Fəaliyyət`,previous:`Əvvəlki fəaliyyət`,next:`Növbəti fəaliyyət`},inbox:{read:`Oxunub`,markAllRead:`Hamısını oxunmuş kimi qeyd et`,empty:`Bildiriş yoxdur`},notifications:{title:`Bildirişlər`,inApp:`Abunə olunmuş tiket yenilikləri Gələnlərdə`,push:`Push bildirişləri`,enableDevice:`Bu cihazda push-u aktivləşdir`,disableDevice:`Bu cihazda push-u deaktiv et`,unconfigured:`Bu quraşdırma push üçün Expo layihə ID-si və imzalama konfiqurasiyası tələb edir.`,noProjectId:`Bu quraşdırma push bildirişləri üçün Expo layihə ID-si tələb edir.`,permissionDenied:`Push-u aktivləşdirmək üçün cihaz parametrlərində bildirişlərə icazə verin.`,channel:`Tiket yenilikləri`},settings:{password:{title:`Yerli şifrə`,current:`Cari şifrə`,new:`Yeni şifrə`,change:`Şifrəni dəyiş`,updated:`Şifrə yeniləndi; digər seanslar ləğv edildi`},oidc:{linked:`Hesab bağlandı`,explanation:`Bu provayderlə daxil olmazdan əvvəl bu hesabı bağlayın.`,link:`{{provider}} bağla`},signOut:{action:`Çıxış et`,title:`Çıxış edilsin?`,message:`Bu hesabın keşlənmiş tiketləri və qaralamaları bu cihazdan silinəcək.`},changeServer:{title:`Server dəyişdirilsin?`,message:`Çıxış edilsin və bu hesabın yerli keşi və qaralamaları təmizlənsin?`}}}};export{e as default};
@@ -1 +1 @@
1
- import{c as e,l as t,o as n,s as r}from"./en-US-DKYSujv3.js";import{Dt as i}from"./index-nltuyQtq.js";var a={lessThanXSeconds:{one:`bir saniyədən az`,other:`{{count}} bir saniyədən az`},xSeconds:{one:`1 saniyə`,other:`{{count}} saniyə`},halfAMinute:`yarım dəqiqə`,lessThanXMinutes:{one:`bir dəqiqədən az`,other:`{{count}} bir dəqiqədən az`},xMinutes:{one:`bir dəqiqə`,other:`{{count}} dəqiqə`},aboutXHours:{one:`təxminən 1 saat`,other:`təxminən {{count}} saat`},xHours:{one:`1 saat`,other:`{{count}} saat`},xDays:{one:`1 gün`,other:`{{count}} gün`},aboutXWeeks:{one:`təxminən 1 həftə`,other:`təxminən {{count}} həftə`},xWeeks:{one:`1 həftə`,other:`{{count}} həftə`},aboutXMonths:{one:`təxminən 1 ay`,other:`təxminən {{count}} ay`},xMonths:{one:`1 ay`,other:`{{count}} ay`},aboutXYears:{one:`təxminən 1 il`,other:`təxminən {{count}} il`},xYears:{one:`1 il`,other:`{{count}} il`},overXYears:{one:`1 ildən çox`,other:`{{count}} ildən çox`},almostXYears:{one:`demək olar ki 1 il`,other:`demək olar ki {{count}} il`}},o=(e,t,n)=>{let r,i=a[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?r+` sonra`:r+` əvvəl`:r},s={date:t({formats:{full:`EEEE, do MMMM y 'il'`,long:`do MMMM y 'il'`,medium:`d MMM y 'il'`,short:`dd.MM.yyyy`},defaultWidth:`full`}),time:t({formats:{full:`H:mm:ss zzzz`,long:`H:mm:ss z`,medium:`H:mm:ss`,short:`H:mm`},defaultWidth:`full`}),dateTime:t({formats:{full:`{{date}} {{time}} - 'də'`,long:`{{date}} {{time}} - 'də'`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},c={lastWeek:`'sonuncu' eeee p -'də'`,yesterday:`'dünən' p -'də'`,today:`'bugün' p -'də'`,tomorrow:`'sabah' p -'də'`,nextWeek:`eeee p -'də'`,other:`P`},l=(e,t,n,r)=>c[e],u={narrow:[`e.ə`,`b.e`],abbreviated:[`e.ə`,`b.e`],wide:[`eramızdan əvvəl`,`bizim era`]},d={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`K1`,`K2`,`K3`,`K4`],wide:[`1ci kvartal`,`2ci kvartal`,`3cü kvartal`,`4cü kvartal`]},f={narrow:[`Y`,`F`,`M`,`A`,`M`,`İ`,`İ`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Yan`,`Fev`,`Mar`,`Apr`,`May`,`İyun`,`İyul`,`Avq`,`Sen`,`Okt`,`Noy`,`Dek`],wide:[`Yanvar`,`Fevral`,`Mart`,`Aprel`,`May`,`İyun`,`İyul`,`Avqust`,`Sentyabr`,`Oktyabr`,`Noyabr`,`Dekabr`]},p={narrow:[`B.`,`B.e`,`Ç.a`,`Ç.`,`C.a`,`C.`,`Ş.`],short:[`B.`,`B.e`,`Ç.a`,`Ç.`,`C.a`,`C.`,`Ş.`],abbreviated:[`Baz`,`Baz.e`,`Çər.a`,`Çər`,`Cüm.a`,`Cüm`,`Şə`],wide:[`Bazar`,`Bazar ertəsi`,`Çərşənbə axşamı`,`Çərşənbə`,`Cümə axşamı`,`Cümə`,`Şənbə`]},m={narrow:{am:`am`,pm:`pm`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},abbreviated:{am:`AM`,pm:`PM`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`}},h={narrow:{am:`a`,pm:`p`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},abbreviated:{am:`AM`,pm:`PM`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`}},g={1:`-inci`,5:`-inci`,8:`-inci`,70:`-inci`,80:`-inci`,2:`-nci`,7:`-nci`,20:`-nci`,50:`-nci`,3:`-üncü`,4:`-üncü`,100:`-üncü`,6:`-ncı`,9:`-uncu`,10:`-uncu`,30:`-uncu`,60:`-ıncı`,90:`-ıncı`},_=e=>{if(e===0)return e+`-ıncı`;let t=e%10,n=e%100-t,r=e>=100?100:null;return g[t]?g[t]:g[n]?g[n]:r===null?``:g[r]},v={code:`az`,formatDistance:o,formatLong:s,formatRelative:l,localize:{ordinalNumber:(e,t)=>{let n=Number(e);return n+_(n)},era:e({values:u,defaultWidth:`wide`}),quarter:e({values:d,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:e({values:f,defaultWidth:`wide`}),day:e({values:p,defaultWidth:`wide`}),dayPeriod:e({values:m,defaultWidth:`wide`,formattingValues:h,defaultFormattingWidth:`wide`})},match:{ordinalNumber:n({matchPattern:/^(\d+)(-?(ci|inci|nci|uncu|üncü|ncı))?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:r({matchPatterns:{narrow:/^(b|a)$/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)$/i,wide:/^(bizim eradan əvvəl|bizim era)$/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b$/i,/^(a|c)$/i]},defaultParseWidth:`any`}),quarter:r({matchPatterns:{narrow:/^[1234]$/i,abbreviated:/^K[1234]$/i,wide:/^[1234](ci)? kvartal$/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:r({matchPatterns:{narrow:/^[(?-i)yfmaisond]$/i,abbreviated:/^(Yan|Fev|Mar|Apr|May|İyun|İyul|Avq|Sen|Okt|Noy|Dek)$/i,wide:/^(Yanvar|Fevral|Mart|Aprel|May|İyun|İyul|Avgust|Sentyabr|Oktyabr|Noyabr|Dekabr)$/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^[(?-i)y]$/i,/^[(?-i)f]$/i,/^[(?-i)m]$/i,/^[(?-i)a]$/i,/^[(?-i)m]$/i,/^[(?-i)i]$/i,/^[(?-i)i]$/i,/^[(?-i)a]$/i,/^[(?-i)s]$/i,/^[(?-i)o]$/i,/^[(?-i)n]$/i,/^[(?-i)d]$/i],abbreviated:[/^Yan$/i,/^Fev$/i,/^Mar$/i,/^Apr$/i,/^May$/i,/^İyun$/i,/^İyul$/i,/^Avg$/i,/^Sen$/i,/^Okt$/i,/^Noy$/i,/^Dek$/i],wide:[/^Yanvar$/i,/^Fevral$/i,/^Mart$/i,/^Aprel$/i,/^May$/i,/^İyun$/i,/^İyul$/i,/^Avgust$/i,/^Sentyabr$/i,/^Oktyabr$/i,/^Noyabr$/i,/^Dekabr$/i]},defaultParseWidth:`narrow`}),day:r({matchPatterns:{narrow:/^(B\.|B\.e|Ç\.a|Ç\.|C\.a|C\.|Ş\.)$/i,short:/^(B\.|B\.e|Ç\.a|Ç\.|C\.a|C\.|Ş\.)$/i,abbreviated:/^(Baz\.e|Çər|Çər\.a|Cüm|Cüm\.a|Şə)$/i,wide:/^(Bazar|Bazar ertəsi|Çərşənbə axşamı|Çərşənbə|Cümə axşamı|Cümə|Şənbə)$/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^B\.$/i,/^B\.e$/i,/^Ç\.a$/i,/^Ç\.$/i,/^C\.a$/i,/^C\.$/i,/^Ş\.$/i],abbreviated:[/^Baz$/i,/^Baz\.e$/i,/^Çər\.a$/i,/^Çər$/i,/^Cüm\.a$/i,/^Cüm$/i,/^Şə$/i],wide:[/^Bazar$/i,/^Bazar ertəsi$/i,/^Çərşənbə axşamı$/i,/^Çərşənbə$/i,/^Cümə axşamı$/i,/^Cümə$/i,/^Şənbə$/i],any:[/^B\.$/i,/^B\.e$/i,/^Ç\.a$/i,/^Ç\.$/i,/^C\.a$/i,/^C\.$/i,/^Ş\.$/i]},defaultParseWidth:`any`}),dayPeriod:r({matchPatterns:{narrow:/^(a|p|gecəyarı|gün|səhər|gündüz|axşam|gecə)$/i,any:/^(am|pm|a\.m\.|p\.m\.|AM|PM|gecəyarı|gün|səhər|gündüz|axşam|gecə)$/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a$/i,pm:/^p$/i,midnight:/^gecəyarı$/i,noon:/^gün$/i,morning:/səhər$/i,afternoon:/gündüz$/i,evening:/axşam$/i,night:/gecə$/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:1},labels:{labelDayButton:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t.today&&(a=`Bu gün, ${a}`),t.selected&&(a=`${a}, seçilmiş`),a},labelMonthDropdown:`Ayı seçin`,labelNext:`Növbəti aya keç`,labelPrevious:`Əvvəlki aya keç`,labelWeekNumber:e=>`Həftə ${e}`,labelYearDropdown:`İli seçin`,labelGrid:(e,t,n)=>(n??new i(t)).formatMonthYear(e),labelGridcell:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t?.today&&(a=`Bu gün, ${a}`),a},labelNav:`Naviqasiya paneli`,labelWeekNumberHeader:`Həftə nömrəsi`,labelWeekday:(e,t,n)=>(n??new i(t)).format(e,`cccc`)}};export{v as az};
1
+ import{c as e,l as t,o as n,s as r}from"./en-US-DKYSujv3.js";import{Dt as i}from"./index-CZuFd4LM.js";var a={lessThanXSeconds:{one:`bir saniyədən az`,other:`{{count}} bir saniyədən az`},xSeconds:{one:`1 saniyə`,other:`{{count}} saniyə`},halfAMinute:`yarım dəqiqə`,lessThanXMinutes:{one:`bir dəqiqədən az`,other:`{{count}} bir dəqiqədən az`},xMinutes:{one:`bir dəqiqə`,other:`{{count}} dəqiqə`},aboutXHours:{one:`təxminən 1 saat`,other:`təxminən {{count}} saat`},xHours:{one:`1 saat`,other:`{{count}} saat`},xDays:{one:`1 gün`,other:`{{count}} gün`},aboutXWeeks:{one:`təxminən 1 həftə`,other:`təxminən {{count}} həftə`},xWeeks:{one:`1 həftə`,other:`{{count}} həftə`},aboutXMonths:{one:`təxminən 1 ay`,other:`təxminən {{count}} ay`},xMonths:{one:`1 ay`,other:`{{count}} ay`},aboutXYears:{one:`təxminən 1 il`,other:`təxminən {{count}} il`},xYears:{one:`1 il`,other:`{{count}} il`},overXYears:{one:`1 ildən çox`,other:`{{count}} ildən çox`},almostXYears:{one:`demək olar ki 1 il`,other:`demək olar ki {{count}} il`}},o=(e,t,n)=>{let r,i=a[e];return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?r+` sonra`:r+` əvvəl`:r},s={date:t({formats:{full:`EEEE, do MMMM y 'il'`,long:`do MMMM y 'il'`,medium:`d MMM y 'il'`,short:`dd.MM.yyyy`},defaultWidth:`full`}),time:t({formats:{full:`H:mm:ss zzzz`,long:`H:mm:ss z`,medium:`H:mm:ss`,short:`H:mm`},defaultWidth:`full`}),dateTime:t({formats:{full:`{{date}} {{time}} - 'də'`,long:`{{date}} {{time}} - 'də'`,medium:`{{date}}, {{time}}`,short:`{{date}}, {{time}}`},defaultWidth:`full`})},c={lastWeek:`'sonuncu' eeee p -'də'`,yesterday:`'dünən' p -'də'`,today:`'bugün' p -'də'`,tomorrow:`'sabah' p -'də'`,nextWeek:`eeee p -'də'`,other:`P`},l=(e,t,n,r)=>c[e],u={narrow:[`e.ə`,`b.e`],abbreviated:[`e.ə`,`b.e`],wide:[`eramızdan əvvəl`,`bizim era`]},d={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`K1`,`K2`,`K3`,`K4`],wide:[`1ci kvartal`,`2ci kvartal`,`3cü kvartal`,`4cü kvartal`]},f={narrow:[`Y`,`F`,`M`,`A`,`M`,`İ`,`İ`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Yan`,`Fev`,`Mar`,`Apr`,`May`,`İyun`,`İyul`,`Avq`,`Sen`,`Okt`,`Noy`,`Dek`],wide:[`Yanvar`,`Fevral`,`Mart`,`Aprel`,`May`,`İyun`,`İyul`,`Avqust`,`Sentyabr`,`Oktyabr`,`Noyabr`,`Dekabr`]},p={narrow:[`B.`,`B.e`,`Ç.a`,`Ç.`,`C.a`,`C.`,`Ş.`],short:[`B.`,`B.e`,`Ç.a`,`Ç.`,`C.a`,`C.`,`Ş.`],abbreviated:[`Baz`,`Baz.e`,`Çər.a`,`Çər`,`Cüm.a`,`Cüm`,`Şə`],wide:[`Bazar`,`Bazar ertəsi`,`Çərşənbə axşamı`,`Çərşənbə`,`Cümə axşamı`,`Cümə`,`Şənbə`]},m={narrow:{am:`am`,pm:`pm`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},abbreviated:{am:`AM`,pm:`PM`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`}},h={narrow:{am:`a`,pm:`p`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},abbreviated:{am:`AM`,pm:`PM`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`},wide:{am:`a.m.`,pm:`p.m.`,midnight:`gecəyarı`,noon:`gün`,morning:`səhər`,afternoon:`gündüz`,evening:`axşam`,night:`gecə`}},g={1:`-inci`,5:`-inci`,8:`-inci`,70:`-inci`,80:`-inci`,2:`-nci`,7:`-nci`,20:`-nci`,50:`-nci`,3:`-üncü`,4:`-üncü`,100:`-üncü`,6:`-ncı`,9:`-uncu`,10:`-uncu`,30:`-uncu`,60:`-ıncı`,90:`-ıncı`},_=e=>{if(e===0)return e+`-ıncı`;let t=e%10,n=e%100-t,r=e>=100?100:null;return g[t]?g[t]:g[n]?g[n]:r===null?``:g[r]},v={code:`az`,formatDistance:o,formatLong:s,formatRelative:l,localize:{ordinalNumber:(e,t)=>{let n=Number(e);return n+_(n)},era:e({values:u,defaultWidth:`wide`}),quarter:e({values:d,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:e({values:f,defaultWidth:`wide`}),day:e({values:p,defaultWidth:`wide`}),dayPeriod:e({values:m,defaultWidth:`wide`,formattingValues:h,defaultFormattingWidth:`wide`})},match:{ordinalNumber:n({matchPattern:/^(\d+)(-?(ci|inci|nci|uncu|üncü|ncı))?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:r({matchPatterns:{narrow:/^(b|a)$/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)$/i,wide:/^(bizim eradan əvvəl|bizim era)$/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^b$/i,/^(a|c)$/i]},defaultParseWidth:`any`}),quarter:r({matchPatterns:{narrow:/^[1234]$/i,abbreviated:/^K[1234]$/i,wide:/^[1234](ci)? kvartal$/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:r({matchPatterns:{narrow:/^[(?-i)yfmaisond]$/i,abbreviated:/^(Yan|Fev|Mar|Apr|May|İyun|İyul|Avq|Sen|Okt|Noy|Dek)$/i,wide:/^(Yanvar|Fevral|Mart|Aprel|May|İyun|İyul|Avgust|Sentyabr|Oktyabr|Noyabr|Dekabr)$/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^[(?-i)y]$/i,/^[(?-i)f]$/i,/^[(?-i)m]$/i,/^[(?-i)a]$/i,/^[(?-i)m]$/i,/^[(?-i)i]$/i,/^[(?-i)i]$/i,/^[(?-i)a]$/i,/^[(?-i)s]$/i,/^[(?-i)o]$/i,/^[(?-i)n]$/i,/^[(?-i)d]$/i],abbreviated:[/^Yan$/i,/^Fev$/i,/^Mar$/i,/^Apr$/i,/^May$/i,/^İyun$/i,/^İyul$/i,/^Avg$/i,/^Sen$/i,/^Okt$/i,/^Noy$/i,/^Dek$/i],wide:[/^Yanvar$/i,/^Fevral$/i,/^Mart$/i,/^Aprel$/i,/^May$/i,/^İyun$/i,/^İyul$/i,/^Avgust$/i,/^Sentyabr$/i,/^Oktyabr$/i,/^Noyabr$/i,/^Dekabr$/i]},defaultParseWidth:`narrow`}),day:r({matchPatterns:{narrow:/^(B\.|B\.e|Ç\.a|Ç\.|C\.a|C\.|Ş\.)$/i,short:/^(B\.|B\.e|Ç\.a|Ç\.|C\.a|C\.|Ş\.)$/i,abbreviated:/^(Baz\.e|Çər|Çər\.a|Cüm|Cüm\.a|Şə)$/i,wide:/^(Bazar|Bazar ertəsi|Çərşənbə axşamı|Çərşənbə|Cümə axşamı|Cümə|Şənbə)$/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^B\.$/i,/^B\.e$/i,/^Ç\.a$/i,/^Ç\.$/i,/^C\.a$/i,/^C\.$/i,/^Ş\.$/i],abbreviated:[/^Baz$/i,/^Baz\.e$/i,/^Çər\.a$/i,/^Çər$/i,/^Cüm\.a$/i,/^Cüm$/i,/^Şə$/i],wide:[/^Bazar$/i,/^Bazar ertəsi$/i,/^Çərşənbə axşamı$/i,/^Çərşənbə$/i,/^Cümə axşamı$/i,/^Cümə$/i,/^Şənbə$/i],any:[/^B\.$/i,/^B\.e$/i,/^Ç\.a$/i,/^Ç\.$/i,/^C\.a$/i,/^C\.$/i,/^Ş\.$/i]},defaultParseWidth:`any`}),dayPeriod:r({matchPatterns:{narrow:/^(a|p|gecəyarı|gün|səhər|gündüz|axşam|gecə)$/i,any:/^(am|pm|a\.m\.|p\.m\.|AM|PM|gecəyarı|gün|səhər|gündüz|axşam|gecə)$/i},defaultMatchWidth:`any`,parsePatterns:{any:{am:/^a$/i,pm:/^p$/i,midnight:/^gecəyarı$/i,noon:/^gün$/i,morning:/səhər$/i,afternoon:/gündüz$/i,evening:/axşam$/i,night:/gecə$/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:1},labels:{labelDayButton:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t.today&&(a=`Bu gün, ${a}`),t.selected&&(a=`${a}, seçilmiş`),a},labelMonthDropdown:`Ayı seçin`,labelNext:`Növbəti aya keç`,labelPrevious:`Əvvəlki aya keç`,labelWeekNumber:e=>`Həftə ${e}`,labelYearDropdown:`İli seçin`,labelGrid:(e,t,n)=>(n??new i(t)).formatMonthYear(e),labelGridcell:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t?.today&&(a=`Bu gün, ${a}`),a},labelNav:`Naviqasiya paneli`,labelWeekNumberHeader:`Həftə nömrəsi`,labelWeekday:(e,t,n)=>(n??new i(t)).format(e,`cccc`)}};export{v as az};
@@ -0,0 +1 @@
1
+ import{Ct as e,E as t,_n as n,nt as r}from"./default-CCI1vZxa.js";function i(e,n,r,i=[]){let o={kind:e};for(let s of a()[e]){let a=n[s.name]?.trim()??``;i.includes(s.name)?o[s.name]=``:a?o[s.name]=s.type===`number`?Number(a):a:r&&!t[e].includes(s.name)&&(o[s.name]=``)}return o}var a=()=>({email:[{name:`address`,label:n(`admin.delivery.field.address`),type:`email`}],ntfy:[{name:`server`,label:n(`admin.delivery.field.server`),type:`url`,placeholder:`https://ntfy.sh`,optional:!0},{name:`topic`,label:n(`admin.delivery.field.topic`)},{name:`token`,label:n(`admin.delivery.field.accessToken`),optional:!0}],gotify:[{name:`server`,label:n(`admin.delivery.field.server`),type:`url`,placeholder:`https://gotify.example.com`},{name:`token`,label:n(`admin.delivery.field.applicationToken`)}],webhook:[{name:`url`,label:n(`admin.delivery.field.endpointUrl`),type:`url`,placeholder:`https://`},{name:`secret`,label:n(`admin.delivery.field.signingSecret`),optional:!0}],slack:[{name:`url`,label:n(`admin.delivery.field.incomingWebhookUrl`),type:`url`}],discord:[{name:`url`,label:n(`admin.delivery.field.webhookUrl`),type:`url`}],mattermost:[{name:`url`,label:n(`admin.delivery.field.incomingWebhookUrl`),type:`url`},{name:`channel`,label:n(`admin.delivery.field.channel`),placeholder:`town-square`,optional:!0}],telegram:[{name:`token`,label:n(`admin.delivery.field.botToken`)},{name:`chatId`,label:n(`admin.delivery.field.chatId`),placeholder:n(`admin.delivery.field.chatIdPlaceholder`)},{name:`topicId`,label:n(`admin.delivery.field.topicId`),type:`number`,optional:!0}]}),o={edition:`cloud`,signIn:`password`,baseUrl:``,workspace:``,email:``,username:``,password:``,apiKey:``,token:``},s=e=>({name:`baseUrl`,label:n(`admin.import.siteUrl`),type:`url`,placeholder:e}),c={linear:()=>[{name:`token`,label:n(`admin.import.apiKey`),type:`password`}],jira:({edition:e})=>[{name:`edition`,label:n(`admin.import.jiraEdition`),choices:r},s(e===`cloud`?`https://example.atlassian.net`:`https://jira.example.com`),...e===`cloud`?[{name:`email`,label:n(`admin.import.accountEmail`),type:`email`},{name:`token`,label:n(`admin.import.apiToken`),type:`password`}]:[{name:`token`,label:n(`admin.import.personalToken`),type:`password`}]],trello:()=>[{name:`apiKey`,label:n(`admin.import.apiKey`),type:`password`},{name:`token`,label:n(`admin.import.token`),type:`password`}],plane:()=>[{...s(`https://api.plane.so`),label:n(`admin.import.apiUrl`)},{name:`workspace`,label:n(`admin.import.workspaceSlug`),placeholder:`my-team`},{name:`token`,label:n(`admin.import.apiToken`),type:`password`}],planka:({signIn:t})=>[s(`https://planka.example.com`),{name:`signIn`,label:n(`admin.import.signInWith`),choices:e},...t===`password`?[{name:`username`,label:n(`admin.import.username`)},{name:`password`,label:n(`admin.import.password`),type:`password`}]:[{name:`token`,label:n(`admin.import.apiKey`),type:`password`}]],kaneo:()=>[s(`https://kaneo.example.com`),{name:`token`,label:n(`admin.import.apiKey`),type:`password`}]},l={get blocked_address(){return n(`admin.delivery.failure.blockedAddress`)},get redirect_blocked(){return n(`admin.delivery.failure.redirectBlocked`)},get dns_error(){return n(`admin.delivery.failure.dnsError`)},get network_error(){return n(`admin.delivery.failure.networkError`)},get timeout(){return n(`admin.delivery.failure.timeout`)},get invalid_endpoint(){return n(`admin.delivery.failure.invalidEndpoint`)},get email_unavailable(){return n(`admin.delivery.failure.emailUnavailable`)},get smtp_error(){return n(`admin.delivery.failure.smtpError`)},get access_revoked(){return n(`admin.delivery.failure.accessRevoked`)},get repository_mismatch(){return n(`admin.delivery.failure.repositoryMismatch`)}},u=e=>l[e]??(e.startsWith(`http_`)?n(`admin.delivery.failure.http`,{status:e.slice(5)}):e.startsWith(`smtp_`)?n(`admin.delivery.failure.smtp`,{code:e.slice(5)}):e.replaceAll(`_`,` `));export{c as a,o as i,i as n,u as r,a as t};
@@ -1 +1 @@
1
- import{Za as e}from"./search-Cvetr1OK.js";var t={name:`corner-left-up`,size:24,node:[[`path`,{d:`M14 9 9 4 4 9`,key:`1af5af`}],[`path`,{d:`M20 20h-7a4 4 0 0 1-4-4V4`,key:`1blwi3`}]]};t.node;var n=e(t);export{n as t};
1
+ import{Za as e}from"./search-DfbsqO7M.js";var t={name:`corner-left-up`,size:24,node:[[`path`,{d:`M14 9 9 4 4 9`,key:`1af5af`}],[`path`,{d:`M20 20h-7a4 4 0 0 1-4-4V4`,key:`1blwi3`}]]};t.node;var n=e(t);export{n as t};
@@ -1 +1 @@
1
- import{c as e,l as t,o as n,s as r}from"./en-US-DKYSujv3.js";import{Dt as i}from"./index-nltuyQtq.js";var a={lessThanXSeconds:{standalone:{one:`weniger als 1 Sekunde`,other:`weniger als {{count}} Sekunden`},withPreposition:{one:`weniger als 1 Sekunde`,other:`weniger als {{count}} Sekunden`}},xSeconds:{standalone:{one:`1 Sekunde`,other:`{{count}} Sekunden`},withPreposition:{one:`1 Sekunde`,other:`{{count}} Sekunden`}},halfAMinute:{standalone:`eine halbe Minute`,withPreposition:`einer halben Minute`},lessThanXMinutes:{standalone:{one:`weniger als 1 Minute`,other:`weniger als {{count}} Minuten`},withPreposition:{one:`weniger als 1 Minute`,other:`weniger als {{count}} Minuten`}},xMinutes:{standalone:{one:`1 Minute`,other:`{{count}} Minuten`},withPreposition:{one:`1 Minute`,other:`{{count}} Minuten`}},aboutXHours:{standalone:{one:`etwa 1 Stunde`,other:`etwa {{count}} Stunden`},withPreposition:{one:`etwa 1 Stunde`,other:`etwa {{count}} Stunden`}},xHours:{standalone:{one:`1 Stunde`,other:`{{count}} Stunden`},withPreposition:{one:`1 Stunde`,other:`{{count}} Stunden`}},xDays:{standalone:{one:`1 Tag`,other:`{{count}} Tage`},withPreposition:{one:`1 Tag`,other:`{{count}} Tagen`}},aboutXWeeks:{standalone:{one:`etwa 1 Woche`,other:`etwa {{count}} Wochen`},withPreposition:{one:`etwa 1 Woche`,other:`etwa {{count}} Wochen`}},xWeeks:{standalone:{one:`1 Woche`,other:`{{count}} Wochen`},withPreposition:{one:`1 Woche`,other:`{{count}} Wochen`}},aboutXMonths:{standalone:{one:`etwa 1 Monat`,other:`etwa {{count}} Monate`},withPreposition:{one:`etwa 1 Monat`,other:`etwa {{count}} Monaten`}},xMonths:{standalone:{one:`1 Monat`,other:`{{count}} Monate`},withPreposition:{one:`1 Monat`,other:`{{count}} Monaten`}},aboutXYears:{standalone:{one:`etwa 1 Jahr`,other:`etwa {{count}} Jahre`},withPreposition:{one:`etwa 1 Jahr`,other:`etwa {{count}} Jahren`}},xYears:{standalone:{one:`1 Jahr`,other:`{{count}} Jahre`},withPreposition:{one:`1 Jahr`,other:`{{count}} Jahren`}},overXYears:{standalone:{one:`mehr als 1 Jahr`,other:`mehr als {{count}} Jahre`},withPreposition:{one:`mehr als 1 Jahr`,other:`mehr als {{count}} Jahren`}},almostXYears:{standalone:{one:`fast 1 Jahr`,other:`fast {{count}} Jahre`},withPreposition:{one:`fast 1 Jahr`,other:`fast {{count}} Jahren`}}},o=(e,t,n)=>{let r,i=n?.addSuffix?a[e].withPreposition:a[e].standalone;return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:`vor `+r:r},s={date:t({formats:{full:`EEEE, do MMMM y`,long:`do MMMM y`,medium:`do MMM y`,short:`dd.MM.y`},defaultWidth:`full`}),time:t({formats:{full:`HH:mm:ss zzzz`,long:`HH:mm:ss z`,medium:`HH:mm:ss`,short:`HH:mm`},defaultWidth:`full`}),dateTime:t({formats:{full:`{{date}} 'um' {{time}}`,long:`{{date}} 'um' {{time}}`,medium:`{{date}} {{time}}`,short:`{{date}} {{time}}`},defaultWidth:`full`})},c={lastWeek:`'letzten' eeee 'um' p`,yesterday:`'gestern um' p`,today:`'heute um' p`,tomorrow:`'morgen um' p`,nextWeek:`eeee 'um' p`,other:`P`},l=(e,t,n,r)=>c[e],u={narrow:[`v.Chr.`,`n.Chr.`],abbreviated:[`v.Chr.`,`n.Chr.`],wide:[`vor Christus`,`nach Christus`]},d={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1. Quartal`,`2. Quartal`,`3. Quartal`,`4. Quartal`]},f={narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mär`,`Apr`,`Mai`,`Jun`,`Jul`,`Aug`,`Sep`,`Okt`,`Nov`,`Dez`],wide:[`Januar`,`Februar`,`März`,`April`,`Mai`,`Juni`,`Juli`,`August`,`September`,`Oktober`,`November`,`Dezember`]},p={narrow:f.narrow,abbreviated:[`Jan.`,`Feb.`,`März`,`Apr.`,`Mai`,`Juni`,`Juli`,`Aug.`,`Sep.`,`Okt.`,`Nov.`,`Dez.`],wide:f.wide},m={code:`de`,formatDistance:o,formatLong:s,formatRelative:l,localize:{ordinalNumber:e=>Number(e)+`.`,era:e({values:u,defaultWidth:`wide`}),quarter:e({values:d,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:e({values:f,formattingValues:p,defaultWidth:`wide`}),day:e({values:{narrow:[`S`,`M`,`D`,`M`,`D`,`F`,`S`],short:[`So`,`Mo`,`Di`,`Mi`,`Do`,`Fr`,`Sa`],abbreviated:[`So.`,`Mo.`,`Di.`,`Mi.`,`Do.`,`Fr.`,`Sa.`],wide:[`Sonntag`,`Montag`,`Dienstag`,`Mittwoch`,`Donnerstag`,`Freitag`,`Samstag`]},defaultWidth:`wide`}),dayPeriod:e({values:{narrow:{am:`vm.`,pm:`nm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachm.`,evening:`Abend`,night:`Nacht`},abbreviated:{am:`vorm.`,pm:`nachm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachmittag`,evening:`Abend`,night:`Nacht`},wide:{am:`vormittags`,pm:`nachmittags`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachmittag`,evening:`Abend`,night:`Nacht`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`vm.`,pm:`nm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachm.`,evening:`abends`,night:`nachts`},abbreviated:{am:`vorm.`,pm:`nachm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachmittags`,evening:`abends`,night:`nachts`},wide:{am:`vormittags`,pm:`nachmittags`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachmittags`,evening:`abends`,night:`nachts`}},defaultFormattingWidth:`wide`})},match:{ordinalNumber:n({matchPattern:/^(\d+)(\.)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e)}),era:r({matchPatterns:{narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^v/i,/^n/i]},defaultParseWidth:`any`}),quarter:r({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:r({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(jänner|januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:r({matchPatterns:{narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:r({matchPatterns:{narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},defaultMatchWidth:`wide`,parsePatterns:{any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:4},labels:{labelDayButton:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t.today&&(a=`Heute, ${a}`),t.selected&&(a=`${a}, ausgewählt`),a},labelMonthDropdown:`Monat auswählen`,labelNext:`Zum nächsten Monat`,labelPrevious:`Zum vorherigen Monat`,labelWeekNumber:e=>`Woche ${e}`,labelYearDropdown:`Jahr auswählen`,labelGrid:(e,t,n)=>(n??new i(t)).formatMonthYear(e),labelGridcell:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t?.today&&(a=`Heute, ${a}`),a},labelNav:`Navigationsleiste`,labelWeekNumberHeader:`Wochennummer`,labelWeekday:(e,t,n)=>(n??new i(t)).format(e,`cccc`)}};export{m as de};
1
+ import{c as e,l as t,o as n,s as r}from"./en-US-DKYSujv3.js";import{Dt as i}from"./index-CZuFd4LM.js";var a={lessThanXSeconds:{standalone:{one:`weniger als 1 Sekunde`,other:`weniger als {{count}} Sekunden`},withPreposition:{one:`weniger als 1 Sekunde`,other:`weniger als {{count}} Sekunden`}},xSeconds:{standalone:{one:`1 Sekunde`,other:`{{count}} Sekunden`},withPreposition:{one:`1 Sekunde`,other:`{{count}} Sekunden`}},halfAMinute:{standalone:`eine halbe Minute`,withPreposition:`einer halben Minute`},lessThanXMinutes:{standalone:{one:`weniger als 1 Minute`,other:`weniger als {{count}} Minuten`},withPreposition:{one:`weniger als 1 Minute`,other:`weniger als {{count}} Minuten`}},xMinutes:{standalone:{one:`1 Minute`,other:`{{count}} Minuten`},withPreposition:{one:`1 Minute`,other:`{{count}} Minuten`}},aboutXHours:{standalone:{one:`etwa 1 Stunde`,other:`etwa {{count}} Stunden`},withPreposition:{one:`etwa 1 Stunde`,other:`etwa {{count}} Stunden`}},xHours:{standalone:{one:`1 Stunde`,other:`{{count}} Stunden`},withPreposition:{one:`1 Stunde`,other:`{{count}} Stunden`}},xDays:{standalone:{one:`1 Tag`,other:`{{count}} Tage`},withPreposition:{one:`1 Tag`,other:`{{count}} Tagen`}},aboutXWeeks:{standalone:{one:`etwa 1 Woche`,other:`etwa {{count}} Wochen`},withPreposition:{one:`etwa 1 Woche`,other:`etwa {{count}} Wochen`}},xWeeks:{standalone:{one:`1 Woche`,other:`{{count}} Wochen`},withPreposition:{one:`1 Woche`,other:`{{count}} Wochen`}},aboutXMonths:{standalone:{one:`etwa 1 Monat`,other:`etwa {{count}} Monate`},withPreposition:{one:`etwa 1 Monat`,other:`etwa {{count}} Monaten`}},xMonths:{standalone:{one:`1 Monat`,other:`{{count}} Monate`},withPreposition:{one:`1 Monat`,other:`{{count}} Monaten`}},aboutXYears:{standalone:{one:`etwa 1 Jahr`,other:`etwa {{count}} Jahre`},withPreposition:{one:`etwa 1 Jahr`,other:`etwa {{count}} Jahren`}},xYears:{standalone:{one:`1 Jahr`,other:`{{count}} Jahre`},withPreposition:{one:`1 Jahr`,other:`{{count}} Jahren`}},overXYears:{standalone:{one:`mehr als 1 Jahr`,other:`mehr als {{count}} Jahre`},withPreposition:{one:`mehr als 1 Jahr`,other:`mehr als {{count}} Jahren`}},almostXYears:{standalone:{one:`fast 1 Jahr`,other:`fast {{count}} Jahre`},withPreposition:{one:`fast 1 Jahr`,other:`fast {{count}} Jahren`}}},o=(e,t,n)=>{let r,i=n?.addSuffix?a[e].withPreposition:a[e].standalone;return r=typeof i==`string`?i:t===1?i.one:i.other.replace(`{{count}}`,String(t)),n?.addSuffix?n.comparison&&n.comparison>0?`in `+r:`vor `+r:r},s={date:t({formats:{full:`EEEE, do MMMM y`,long:`do MMMM y`,medium:`do MMM y`,short:`dd.MM.y`},defaultWidth:`full`}),time:t({formats:{full:`HH:mm:ss zzzz`,long:`HH:mm:ss z`,medium:`HH:mm:ss`,short:`HH:mm`},defaultWidth:`full`}),dateTime:t({formats:{full:`{{date}} 'um' {{time}}`,long:`{{date}} 'um' {{time}}`,medium:`{{date}} {{time}}`,short:`{{date}} {{time}}`},defaultWidth:`full`})},c={lastWeek:`'letzten' eeee 'um' p`,yesterday:`'gestern um' p`,today:`'heute um' p`,tomorrow:`'morgen um' p`,nextWeek:`eeee 'um' p`,other:`P`},l=(e,t,n,r)=>c[e],u={narrow:[`v.Chr.`,`n.Chr.`],abbreviated:[`v.Chr.`,`n.Chr.`],wide:[`vor Christus`,`nach Christus`]},d={narrow:[`1`,`2`,`3`,`4`],abbreviated:[`Q1`,`Q2`,`Q3`,`Q4`],wide:[`1. Quartal`,`2. Quartal`,`3. Quartal`,`4. Quartal`]},f={narrow:[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],abbreviated:[`Jan`,`Feb`,`Mär`,`Apr`,`Mai`,`Jun`,`Jul`,`Aug`,`Sep`,`Okt`,`Nov`,`Dez`],wide:[`Januar`,`Februar`,`März`,`April`,`Mai`,`Juni`,`Juli`,`August`,`September`,`Oktober`,`November`,`Dezember`]},p={narrow:f.narrow,abbreviated:[`Jan.`,`Feb.`,`März`,`Apr.`,`Mai`,`Juni`,`Juli`,`Aug.`,`Sep.`,`Okt.`,`Nov.`,`Dez.`],wide:f.wide},m={code:`de`,formatDistance:o,formatLong:s,formatRelative:l,localize:{ordinalNumber:e=>Number(e)+`.`,era:e({values:u,defaultWidth:`wide`}),quarter:e({values:d,defaultWidth:`wide`,argumentCallback:e=>e-1}),month:e({values:f,formattingValues:p,defaultWidth:`wide`}),day:e({values:{narrow:[`S`,`M`,`D`,`M`,`D`,`F`,`S`],short:[`So`,`Mo`,`Di`,`Mi`,`Do`,`Fr`,`Sa`],abbreviated:[`So.`,`Mo.`,`Di.`,`Mi.`,`Do.`,`Fr.`,`Sa.`],wide:[`Sonntag`,`Montag`,`Dienstag`,`Mittwoch`,`Donnerstag`,`Freitag`,`Samstag`]},defaultWidth:`wide`}),dayPeriod:e({values:{narrow:{am:`vm.`,pm:`nm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachm.`,evening:`Abend`,night:`Nacht`},abbreviated:{am:`vorm.`,pm:`nachm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachmittag`,evening:`Abend`,night:`Nacht`},wide:{am:`vormittags`,pm:`nachmittags`,midnight:`Mitternacht`,noon:`Mittag`,morning:`Morgen`,afternoon:`Nachmittag`,evening:`Abend`,night:`Nacht`}},defaultWidth:`wide`,formattingValues:{narrow:{am:`vm.`,pm:`nm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachm.`,evening:`abends`,night:`nachts`},abbreviated:{am:`vorm.`,pm:`nachm.`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachmittags`,evening:`abends`,night:`nachts`},wide:{am:`vormittags`,pm:`nachmittags`,midnight:`Mitternacht`,noon:`Mittag`,morning:`morgens`,afternoon:`nachmittags`,evening:`abends`,night:`nachts`}},defaultFormattingWidth:`wide`})},match:{ordinalNumber:n({matchPattern:/^(\d+)(\.)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e)}),era:r({matchPatterns:{narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^v/i,/^n/i]},defaultParseWidth:`any`}),quarter:r({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:`any`,valueCallback:e=>e+1}),month:r({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(jänner|januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},defaultMatchWidth:`wide`,parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:`any`}),day:r({matchPatterns:{narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},defaultMatchWidth:`wide`,parsePatterns:{any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},defaultParseWidth:`any`}),dayPeriod:r({matchPatterns:{narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},defaultMatchWidth:`wide`,parsePatterns:{any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},defaultParseWidth:`any`})},options:{weekStartsOn:1,firstWeekContainsDate:4},labels:{labelDayButton:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t.today&&(a=`Heute, ${a}`),t.selected&&(a=`${a}, ausgewählt`),a},labelMonthDropdown:`Monat auswählen`,labelNext:`Zum nächsten Monat`,labelPrevious:`Zum vorherigen Monat`,labelWeekNumber:e=>`Woche ${e}`,labelYearDropdown:`Jahr auswählen`,labelGrid:(e,t,n)=>(n??new i(t)).formatMonthYear(e),labelGridcell:(e,t,n,r)=>{let a=(r??new i(n)).format(e,`PPPP`);return t?.today&&(a=`Heute, ${a}`),a},labelNav:`Navigationsleiste`,labelWeekNumberHeader:`Wochennummer`,labelWeekday:(e,t,n)=>(n??new i(t)).format(e,`cccc`)}};export{m as de};