feat(sync): nom par defaut neutre (data.json), et plus de clavier pendant une synchro
Un fichier nomme "vault-sync.json" annonce un coffre a qui parcourt la liste des depots ; le contenu est chiffre, le nom ne l'etait pas. Les configurations existantes gardent leur nom - c'est l'URL complete qui est enregistree - et le QR du poste ne raccourcit plus que le nom par defaut courant, sinon le telephone rallongerait vers un autre fichier. Synchroniser coffre ferme ouvre d'abord le coffre : ce chemin depliait le clavier de recherche au milieu d'une synchro. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1839,14 +1839,18 @@ document.addEventListener('input', function (ev) {
|
||||
});
|
||||
|
||||
// L'inverse, pour l'affichage : l'URL d'API se relit comme l'adresse du depot.
|
||||
// Meme nom par defaut que le poste - les deux doivent designer le meme
|
||||
// fichier. Un depot configure avec un autre nom garde son URL complete.
|
||||
var SYNC_DEFAULT_FILE = 'data.json';
|
||||
|
||||
function shortRepoUrl(u) {
|
||||
var g = /^https:\/\/api\.github\.com\/repos\/([^\/]+)\/([^\/]+)\/contents\/(.+)$/i.exec(u || '');
|
||||
if (g) return 'https://github.com/' + g[1] + '/' + g[2] +
|
||||
(g[3] === 'vault-sync.json' ? '' : '/blob/main/' + g[3]);
|
||||
(g[3] === SYNC_DEFAULT_FILE ? '' : '/blob/main/' + g[3]);
|
||||
var m = /^(https?:\/\/[^\/]+)\/api\/v1\/repos\/([^\/]+)\/([^\/]+)\/contents\/(.+)$/i.exec(u || '');
|
||||
if (!m) return u;
|
||||
return m[1] + '/' + m[2] + '/' + m[3] +
|
||||
(m[4] === 'vault-sync.json' ? '' : '/src/branch/main/' + m[4]);
|
||||
(m[4] === SYNC_DEFAULT_FILE ? '' : '/src/branch/main/' + m[4]);
|
||||
}
|
||||
function normalizeRepoUrl(u) {
|
||||
u = u.replace(/\s+/g, '');
|
||||
@@ -1855,10 +1859,10 @@ function normalizeRepoUrl(u) {
|
||||
// GITHUB : l'adresse du depot est sur github.com, l'API sur api.github.com.
|
||||
var g = u.match(/^https?:\/\/(www\.)?github\.com\/([^\/]+)\/([^\/]+?)(?:\.git)?(?:\/blob\/[^\/]+\/(.+?))?\/?$/i);
|
||||
if (g) return 'https://api.github.com/repos/' + g[2] + '/' + g[3] +
|
||||
'/contents/' + (g[4] || 'vault-sync.json');
|
||||
'/contents/' + (g[4] || SYNC_DEFAULT_FILE);
|
||||
var m = u.match(/^(https?:\/\/[^\/]+)\/([^\/]+)\/([^\/]+?)(?:\.git)?(?:\/src\/branch\/[^\/]+\/(.+?))?\/?$/i);
|
||||
if (!m) return u;
|
||||
return m[1] + '/api/v1/repos/' + m[2] + '/' + m[3] + '/contents/' + (m[4] || 'vault-sync.json');
|
||||
return m[1] + '/api/v1/repos/' + m[2] + '/' + m[3] + '/contents/' + (m[4] || SYNC_DEFAULT_FILE);
|
||||
}
|
||||
// Pas de Save pour ces deux-la : une case se voit cochee, elle s'applique.
|
||||
['sBack', 'sKbd'].forEach(function (id) {
|
||||
|
||||
Reference in New Issue
Block a user