doc-survival-kit 1.0.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.
package/diagrammes.js ADDED
@@ -0,0 +1,231 @@
1
+ var diagrammesDefaut = [
2
+ {
3
+ "id": 1700000000010,
4
+ "titre": "Architecture example",
5
+ "shapes": [
6
+ {
7
+ "id": "s1",
8
+ "type": "rounded",
9
+ "x": 100,
10
+ "y": 322,
11
+ "w": 130,
12
+ "h": 50,
13
+ "text": "Client Web",
14
+ "color": "t-sky"
15
+ },
16
+ {
17
+ "id": "s2",
18
+ "type": "rect",
19
+ "x": 306,
20
+ "y": 324,
21
+ "w": 130,
22
+ "h": 50,
23
+ "text": "API Gateway",
24
+ "color": "t-green"
25
+ },
26
+ {
27
+ "id": "s3",
28
+ "type": "rect",
29
+ "x": 531,
30
+ "y": 228,
31
+ "w": 130,
32
+ "h": 50,
33
+ "text": "Auth Service",
34
+ "color": "t-violet"
35
+ },
36
+ {
37
+ "id": "s4",
38
+ "type": "rect",
39
+ "x": 530,
40
+ "y": 387,
41
+ "w": 130,
42
+ "h": 50,
43
+ "text": "Data Service",
44
+ "color": "t-amber"
45
+ },
46
+ {
47
+ "id": "s5",
48
+ "type": "db",
49
+ "x": 793,
50
+ "y": 414,
51
+ "w": 126,
52
+ "h": 99,
53
+ "text": "PostgreSQL",
54
+ "color": "t-rose"
55
+ },
56
+ {
57
+ "id": "s6",
58
+ "type": "cloud",
59
+ "x": 880,
60
+ "y": 101,
61
+ "w": 110,
62
+ "h": 65,
63
+ "text": "OAuth 2.0",
64
+ "color": "t-teal"
65
+ },
66
+ {
67
+ "id": "p2",
68
+ "type": "postit",
69
+ "x": 45,
70
+ "y": 134,
71
+ "w": 218,
72
+ "h": 125,
73
+ "text": "Créer une forme\n7 types : rect, arrondi,\nDB, cloud, texte,\npost-it. Choisir l'outil\npuis clic sur le canvas.",
74
+ "color": "t-amber"
75
+ },
76
+ {
77
+ "id": "p3",
78
+ "type": "postit",
79
+ "x": 772,
80
+ "y": 521,
81
+ "w": 175,
82
+ "h": 100,
83
+ "text": "Déplacer & Redim.\nDrag sur une forme\npour la déplacer.\nPoignée orange\nbas-droit = resize.",
84
+ "color": "t-green"
85
+ },
86
+ {
87
+ "id": "p4",
88
+ "type": "postit",
89
+ "x": 753,
90
+ "y": 208,
91
+ "w": 165,
92
+ "h": 100,
93
+ "text": "Flèches\nOutil → puis clic\nsource → cible.\nOu drag depuis un\npoint de connexion.",
94
+ "color": "t-violet"
95
+ },
96
+ {
97
+ "id": "p5",
98
+ "type": "postit",
99
+ "x": 16,
100
+ "y": 392,
101
+ "w": 175,
102
+ "h": 120,
103
+ "text": "Éditer le texte\nDouble-clic sur\nune forme ou flèche.\nOu bouton stylo\ndans la palette.",
104
+ "color": "t-sky"
105
+ },
106
+ {
107
+ "id": "p6",
108
+ "type": "postit",
109
+ "x": 16,
110
+ "y": 522,
111
+ "w": 175,
112
+ "h": 120,
113
+ "text": "Couleurs\nSélectionner une forme\npuis cliquer dans\nla palette qui\napparaît en haut.",
114
+ "color": "t-sky"
115
+ },
116
+ {
117
+ "id": "p8",
118
+ "type": "postit",
119
+ "x": 752,
120
+ "y": -59,
121
+ "w": 165,
122
+ "h": 120,
123
+ "text": "Sauvegarder\nLe bouton vert\n'enregistrer' apparaît\ndès qu'il y a\ndes modifications.",
124
+ "color": "t-violet"
125
+ },
126
+ {
127
+ "id": "p9",
128
+ "type": "postit",
129
+ "x": 1198,
130
+ "y": 509,
131
+ "w": 175,
132
+ "h": 120,
133
+ "text": "Shift+clic\nAjouter ou retirer\nune forme de la\nsélection active.\nCouleur = tout le groupe.",
134
+ "color": "t-sky"
135
+ },
136
+ {
137
+ "id": "p10",
138
+ "type": "postit",
139
+ "x": 1383,
140
+ "y": 510,
141
+ "w": 175,
142
+ "h": 120,
143
+ "text": "Lasso\nShift+drag sur fond\nvide pour capturer\ntoutes les formes\ndans la zone.",
144
+ "color": "t-green"
145
+ },
146
+ {
147
+ "id": "p11",
148
+ "type": "postit",
149
+ "x": 1290,
150
+ "y": 638,
151
+ "w": 175,
152
+ "h": 120,
153
+ "text": "Déplacer le groupe\nClic-drag sur une\nforme sélectionnée\ndéplace tout le\ngroupe ensemble.",
154
+ "color": "t-rose"
155
+ },
156
+ {
157
+ "id": "s1774268807966",
158
+ "type": "postit",
159
+ "x": 44,
160
+ "y": -5,
161
+ "w": 222,
162
+ "h": 111,
163
+ "text": "Bienvenue dans diagrammes !",
164
+ "color": "t-amber"
165
+ },
166
+ {
167
+ "id": "s1774269105490",
168
+ "type": "postit",
169
+ "x": 1107,
170
+ "y": 159,
171
+ "w": 305,
172
+ "h": 115,
173
+ "text": "Zoom & Navigation\n\nMolette = zoom centré sur curseur.\nDrag fond vide = déplacer la vue.",
174
+ "color": "t-amber"
175
+ },
176
+ {
177
+ "id": "s1774269591962",
178
+ "type": "postit",
179
+ "x": 618,
180
+ "y": 758,
181
+ "w": 402,
182
+ "h": 183,
183
+ "text": "GOLDEN FEATURE !\n\nCOLLER VOS IMAGES (CAPTURES D'ECRAN)\nDIRECTEMENT DANS CE BOARD !!!!",
184
+ "color": "t-rose"
185
+ },
186
+ {
187
+ "id": "s1774270331736",
188
+ "type": "image",
189
+ "x": 976,
190
+ "y": 643,
191
+ "w": 181,
192
+ "h": 280,
193
+ "text": "",
194
+ "color": "",
195
+ "src": "images/img_1774270331723.png"
196
+ }
197
+ ],
198
+ "arrows": [
199
+ {
200
+ "id": "a1",
201
+ "from": "s1",
202
+ "to": "s2",
203
+ "label": "HTTPS"
204
+ },
205
+ {
206
+ "id": "a2",
207
+ "from": "s2",
208
+ "to": "s3",
209
+ "label": ""
210
+ },
211
+ {
212
+ "id": "a3",
213
+ "from": "s2",
214
+ "to": "s4",
215
+ "label": ""
216
+ },
217
+ {
218
+ "id": "a4",
219
+ "from": "s4",
220
+ "to": "s5",
221
+ "label": "SQL"
222
+ },
223
+ {
224
+ "id": "a5",
225
+ "from": "s3",
226
+ "to": "s6",
227
+ "label": ""
228
+ }
229
+ ]
230
+ }
231
+ ];
package/i18n/en.js ADDED
@@ -0,0 +1,186 @@
1
+ var i18n_en = {
2
+ page_title: "Dashboard",
3
+ page_title_admin: "Administration — doc-survival-kit",
4
+
5
+ // Panel titles
6
+ panel_taches_title: "myTasks",
7
+ panel_notes_title: "myNotes",
8
+ panel_liens_title: "myLinks",
9
+
10
+ // mesTaches
11
+ taches_subtitle: "everything I need to do",
12
+ taches_input_placeholder: "New task…",
13
+ taches_priority_normal: "Normal",
14
+ taches_priority_urgent: "Urgent",
15
+ taches_priority_later: "Later",
16
+ taches_filter_all: "All",
17
+ taches_filter_todo: "To do",
18
+ taches_filter_done: "Done",
19
+ taches_filter_urgent: "Urgent",
20
+ taches_filter_normal: "Normal",
21
+ taches_filter_later: "Later",
22
+ taches_empty: "Nothing here yet.",
23
+ taches_delete_title: "Delete",
24
+
25
+ // mesNotes
26
+ notes_subtitle: "everything I need to remember",
27
+ notes_btn_save: "save",
28
+ notes_btn_edit_mode: "edit mode",
29
+ notes_btn_quit_edit_mode: "read mode",
30
+ notes_btn_add: "+ new note",
31
+ notes_empty: "No notes yet.",
32
+ notes_btn_copy: "copy",
33
+ notes_btn_copied: "copied ✓",
34
+ notes_btn_edit_bloc: "edit",
35
+ notes_btn_add_bloc: "+ add a block",
36
+ notes_btn_edit_note: "edit",
37
+ notes_btn_expand: "Expand",
38
+ notes_btn_collapse: "Collapse",
39
+ notes_btn_expand_all: "expand all",
40
+ notes_btn_collapse_all: "collapse all",
41
+
42
+ // mesLiens
43
+ liens_subtitle: "everything I don't want to lose",
44
+ liens_btn_save: "save",
45
+ liens_btn_edit_mode: "edit mode",
46
+ liens_btn_expand_all: "expand all",
47
+ liens_btn_collapse_all: "collapse all",
48
+ liens_btn_expand: "Expand",
49
+ liens_btn_collapse: "Collapse",
50
+ liens_btn_quit_edit_mode: "read mode",
51
+ liens_btn_add_cat: "+ new category",
52
+ liens_add_link_title: "Add a link",
53
+ liens_del_cat_title: "Delete category",
54
+ liens_edit_link_title: "Edit link",
55
+ liens_del_link_title: "Delete link",
56
+
57
+ // Colors
58
+ color_green: "Green",
59
+ color_violet: "Violet",
60
+ color_amber: "Amber",
61
+ color_sky: "Sky blue",
62
+ color_rose: "Rose",
63
+ color_teal: "Teal",
64
+
65
+ // Common modals
66
+ cancel: "Cancel",
67
+ irreversible: "This action is irreversible.",
68
+ irreversible_delete: "Delete",
69
+
70
+ // Modal category
71
+ modal_cat_title: "New category",
72
+ modal_cat_label_name: "Name",
73
+ modal_cat_placeholder_name: "e.g. Reading list…",
74
+ modal_cat_label_color: "Color",
75
+ modal_cat_btn_add: "Add",
76
+
77
+ // Modal link
78
+ modal_lien_title: "New link",
79
+ modal_lien_label_name: "Name",
80
+ modal_lien_placeholder_name: "e.g. Figma",
81
+ modal_lien_label_desc: "Description",
82
+ modal_lien_placeholder_desc: "e.g. UI design tool",
83
+ modal_lien_label_url: "URL",
84
+ modal_lien_btn_add: "Add",
85
+
86
+ // Modal edit link
87
+ modal_edit_lien_title: "Edit link",
88
+ modal_edit_lien_btn_save: "Save",
89
+
90
+ // Modal confirm delete link
91
+ modal_suppr_lien_title: "Delete this link?",
92
+
93
+ // Modal confirm delete category
94
+ modal_suppr_cat_title: "Delete this category?",
95
+ modal_suppr_cat_msg:
96
+ "All links in this category will also be deleted. This action is irreversible.",
97
+
98
+ // Modal first save (links & notes)
99
+ modal_first_save_title: "First save",
100
+ modal_first_save_intro:
101
+ "A dialog box will open to select the project folder.",
102
+ modal_first_save_navigate: "Navigate to the folder containing the file:",
103
+ modal_first_save_once:
104
+ "This step will only happen once. Subsequent saves will be direct.",
105
+ modal_first_save_error_liens:
106
+ "File not found in this folder. Please select the folder containing <strong>mesLiens.js</strong>.",
107
+ modal_first_save_error_notes:
108
+ "File not found in this folder. Please select the folder containing <strong>mesNotes.js</strong>.",
109
+ modal_first_save_btn_choose: "Choose folder",
110
+
111
+ // Modal note
112
+ modal_note_title: "New note",
113
+ modal_note_label_titre: "Title",
114
+ modal_note_placeholder: "e.g. Git shortcuts…",
115
+ modal_note_label_color: "Color",
116
+ modal_note_btn_create: "Create",
117
+
118
+ // Modal edit note
119
+ modal_edit_note_title: "Edit note",
120
+ modal_edit_note_btn_save: "Save",
121
+
122
+ // Modal confirm delete note
123
+ modal_suppr_note_title: "Delete this note?",
124
+ modal_suppr_note_msg:
125
+ "All blocks in this note will also be deleted. This action is irreversible.",
126
+
127
+ // Modal block
128
+ modal_bloc_label_type: "Type",
129
+ modal_bloc_type_b: "Title",
130
+ modal_bloc_type_p: "Text",
131
+ modal_bloc_type_pre: "Code",
132
+ modal_bloc_type_ul: "Bullet list",
133
+ modal_bloc_type_table: "Table",
134
+ modal_bloc_label_content: "Content",
135
+ modal_bloc_new: "New block",
136
+ modal_bloc_edit: "Edit block",
137
+ modal_bloc_placeholder_ul: "One item per line…",
138
+ modal_bloc_placeholder_pre: "Code…",
139
+ modal_bloc_placeholder_b: "Title…",
140
+ modal_bloc_placeholder_p: "Text…",
141
+ modal_bloc_placeholder_table: "Header 1 | Header 2 | Header 3\nValue A | Value B | Value C\nValue D | Value E | Value F",
142
+ modal_bloc_btn_save: "Save",
143
+
144
+ // Modal confirm delete block
145
+ modal_suppr_bloc_title: "Delete this block?",
146
+
147
+ // Diagrams
148
+ diag_page_title: "Diagrams",
149
+ diag_btn_save: "save",
150
+ diag_btn_new: "+ New",
151
+ diag_my_diagrams: "My diagrams",
152
+ diag_new_diagram: "New diagram",
153
+ diag_tool_select: "Select / Move",
154
+ diag_tool_rect: "Rectangle",
155
+ diag_tool_rounded: "Rounded rectangle",
156
+ diag_tool_db: "Database",
157
+ diag_tool_cloud: "External service / Cloud",
158
+ diag_tool_text: "Free text",
159
+ diag_tool_postit: "Post-it (no arrow connection)",
160
+ diag_tool_arrow: "Arrow (click source → click target, or drag from a connection dot)",
161
+ diag_tool_delete: "Delete selection (Del)",
162
+ diag_first_save_error: "File not found. Select the folder containing <strong>diagrammes.js</strong>.",
163
+ diag_edit_text: "Edit text",
164
+
165
+ // Admin
166
+ admin_subtitle: "data reset",
167
+ admin_why_title: "Why this page?",
168
+ admin_why_p1:
169
+ "The application stores your data in two places in your browser: <strong>localStorage</strong> (tasks, notes, links) and <strong>IndexedDB</strong> (the file handle for direct saving).",
170
+ admin_why_p2:
171
+ "This data <strong>is not deleted</strong> by clearing the cache or closing the browser. This page lets you erase it cleanly, for example to start fresh or resolve a sync issue between the file and the browser.",
172
+ admin_why_p3:
173
+ "<strong>Warning:</strong> these actions are irreversible. If you haven't saved your changes to <code>mesLiens.js</code> and <code>mesNotes.js</code>, your data will be lost.",
174
+ admin_ls_label: "Clear localStorage",
175
+ admin_ls_desc:
176
+ "Deletes all tasks, notes and links stored in the browser. On next load, the application will start from the default data in <code>mesLiens.js</code> and <code>mesNotes.js</code>.",
177
+ admin_idb_label: "Delete IndexedDB",
178
+ admin_idb_desc:
179
+ "Clears the stored file handle for direct saving. The next save will prompt you to select the project folder again, as on first use.",
180
+ admin_execute_btn: "execute selected actions",
181
+ admin_feedback_ls: "localStorage cleared.",
182
+ admin_feedback_idb: "IndexedDB deleted.",
183
+ admin_feedback_return: "Return to the dashboard to see the changes.",
184
+ admin_lang_title: "Langue / Language",
185
+ admin_lang_applied: "Language applied.",
186
+ };
package/i18n/fr.js ADDED
@@ -0,0 +1,187 @@
1
+ var i18n_fr = {
2
+ page_title: "Dashboard",
3
+ page_title_admin: "Administration — doc-survival-kit",
4
+
5
+ // Titres des panels
6
+ panel_taches_title: "mesTaches",
7
+ panel_notes_title: "mesNotes",
8
+ panel_liens_title: "mesLiens",
9
+
10
+ // mesTaches
11
+ taches_subtitle: "tout ce que je dois faire",
12
+ taches_input_placeholder: "Nouvelle tâche…",
13
+ taches_priority_normal: "Normal",
14
+ taches_priority_urgent: "Urgent",
15
+ taches_priority_later: "Plus tard",
16
+ taches_filter_all: "Tout",
17
+ taches_filter_todo: "À faire",
18
+ taches_filter_done: "Fait",
19
+ taches_filter_urgent: "Urgent",
20
+ taches_filter_normal: "Normal",
21
+ taches_filter_later: "Plus tard",
22
+ taches_empty: "Rien ici pour l'instant.",
23
+ taches_delete_title: "Supprimer",
24
+
25
+ // mesNotes
26
+ notes_subtitle: "tout ce que je dois hélas retenir",
27
+ notes_btn_save: "enregistrer",
28
+ notes_btn_edit_mode: "mode édition",
29
+ notes_btn_quit_edit_mode: "mode lecture",
30
+ notes_btn_add: "+ nouvelle note",
31
+ notes_empty: "Aucune note pour l'instant.",
32
+ notes_btn_copy: "copier",
33
+ notes_btn_copied: "copié ✓",
34
+ notes_btn_edit_bloc: "modifier",
35
+ notes_btn_add_bloc: "+ ajouter un bloc",
36
+ notes_btn_edit_note: "modifier",
37
+ notes_btn_expand: "Développer",
38
+ notes_btn_collapse: "Réduire",
39
+ notes_btn_expand_all: "tout développer",
40
+ notes_btn_collapse_all: "tout réduire",
41
+
42
+ // mesLiens
43
+ liens_subtitle: "tout ce que je ne veux pas perdre",
44
+ liens_btn_save: "enregistrer",
45
+ liens_btn_edit_mode: "mode édition",
46
+ liens_btn_expand_all: "tout développer",
47
+ liens_btn_collapse_all: "tout réduire",
48
+ liens_btn_expand: "Développer",
49
+ liens_btn_collapse: "Réduire",
50
+ liens_btn_quit_edit_mode: "mode lecture",
51
+ liens_btn_add_cat: "+ nouvelle catégorie",
52
+ liens_add_link_title: "Ajouter un lien",
53
+ liens_del_cat_title: "Supprimer la catégorie",
54
+ liens_edit_link_title: "Modifier le lien",
55
+ liens_del_link_title: "Supprimer le lien",
56
+
57
+ // Couleurs
58
+ color_green: "Vert",
59
+ color_violet: "Violet",
60
+ color_amber: "Ambre",
61
+ color_sky: "Bleu ciel",
62
+ color_rose: "Rose",
63
+ color_teal: "Teal",
64
+
65
+ // Commun modales
66
+ cancel: "Annuler",
67
+ irreversible: "Cette action est irréversible.",
68
+ irreversible_delete: "Supprimer",
69
+
70
+ // Modal catégorie
71
+ modal_cat_title: "Nouvelle catégorie",
72
+ modal_cat_label_name: "Nom",
73
+ modal_cat_placeholder_name: "ex : Lectures…",
74
+ modal_cat_label_color: "Couleur",
75
+ modal_cat_btn_add: "Ajouter",
76
+
77
+ // Modal lien
78
+ modal_lien_title: "Nouveau lien",
79
+ modal_lien_label_name: "Nom",
80
+ modal_lien_placeholder_name: "ex : Figma",
81
+ modal_lien_label_desc: "Description",
82
+ modal_lien_placeholder_desc: "ex : Outil de design UI",
83
+ modal_lien_label_url: "URL",
84
+ modal_lien_btn_add: "Ajouter",
85
+
86
+ // Modal edit lien
87
+ modal_edit_lien_title: "Modifier le lien",
88
+ modal_edit_lien_btn_save: "Enregistrer",
89
+
90
+ // Modal confirm suppr lien
91
+ modal_suppr_lien_title: "Supprimer le lien ?",
92
+
93
+ // Modal confirm suppr cat
94
+ modal_suppr_cat_title: "Supprimer la catégorie ?",
95
+ modal_suppr_cat_msg:
96
+ "Tous les liens de cette catégorie seront également supprimés. Cette action est irréversible.",
97
+
98
+ // Modal première sauvegarde (liens & notes)
99
+ modal_first_save_title: "Première sauvegarde",
100
+ modal_first_save_intro:
101
+ "Une boîte de dialogue va s'ouvrir pour sélectionner le dossier du projet.",
102
+ modal_first_save_navigate: "Navigue jusqu'au dossier contenant le fichier :",
103
+ modal_first_save_once:
104
+ "Cette étape n'aura lieu qu'une seule fois. Les sauvegardes suivantes seront directes.",
105
+ modal_first_save_error_liens:
106
+ "Fichier introuvable dans ce dossier. Sélectionne le dossier qui contient <strong>mesLiens.js</strong>.",
107
+ modal_first_save_error_notes:
108
+ "Fichier introuvable dans ce dossier. Sélectionne le dossier qui contient <strong>mesNotes.js</strong>.",
109
+ modal_first_save_btn_choose: "Choisir le dossier",
110
+
111
+ // Modal note
112
+ modal_note_title: "Nouvelle note",
113
+ modal_note_label_titre: "Titre",
114
+ modal_note_placeholder: "ex : Raccourcis Git…",
115
+ modal_note_label_color: "Couleur",
116
+ modal_note_btn_create: "Créer",
117
+
118
+ // Modal edit note
119
+ modal_edit_note_title: "Modifier la note",
120
+ modal_edit_note_btn_save: "Enregistrer",
121
+
122
+ // Modal confirm suppr note
123
+ modal_suppr_note_title: "Supprimer la note ?",
124
+ modal_suppr_note_msg:
125
+ "Tous les blocs de cette note seront également supprimés. Cette action est irréversible.",
126
+
127
+ // Modal bloc
128
+ modal_bloc_label_type: "Type",
129
+ modal_bloc_type_b: "Titre",
130
+ modal_bloc_type_p: "Texte",
131
+ modal_bloc_type_pre: "Code",
132
+ modal_bloc_type_ul: "Liste à puces",
133
+ modal_bloc_type_table: "Tableau",
134
+ modal_bloc_label_content: "Contenu",
135
+ modal_bloc_new: "Nouveau bloc",
136
+ modal_bloc_edit: "Modifier le bloc",
137
+ modal_bloc_placeholder_ul: "Un élément par ligne…",
138
+ modal_bloc_placeholder_pre: "Code…",
139
+ modal_bloc_placeholder_b: "Titre…",
140
+ modal_bloc_placeholder_p: "Texte…",
141
+ modal_bloc_placeholder_table: "En-tête 1 | En-tête 2 | En-tête 3\nValeur A | Valeur B | Valeur C\nValeur D | Valeur E | Valeur F",
142
+ modal_bloc_btn_save: "Enregistrer",
143
+
144
+ // Modal confirm suppr bloc
145
+ modal_suppr_bloc_title: "Supprimer le bloc ?",
146
+
147
+ // Diagrammes
148
+ diag_page_title: "Diagrammes",
149
+ diag_btn_save: "enregistrer",
150
+ diag_btn_new: "+ Nouveau",
151
+ diag_my_diagrams: "Mes diagrammes",
152
+ diag_new_diagram: "Nouveau diagramme",
153
+ diag_tool_select: "Sélectionner / Déplacer",
154
+ diag_tool_rect: "Rectangle",
155
+ diag_tool_rounded: "Rectangle arrondi",
156
+ diag_tool_db: "Base de données",
157
+ diag_tool_cloud: "Service externe / Cloud",
158
+ diag_tool_text: "Texte libre",
159
+ diag_tool_postit: "Post-it (sans connexion de flèche)",
160
+ diag_tool_arrow: "Flèche (clic source → clic cible, ou drag depuis un point de connexion)",
161
+ diag_tool_delete: "Supprimer la sélection (Del)",
162
+ diag_first_save_error: "Fichier introuvable. Sélectionne le dossier contenant <strong>diagrammes.js</strong>.",
163
+ diag_edit_text: "Modifier le texte",
164
+
165
+ // Admin
166
+ admin_subtitle: "réinitialisation des données",
167
+ admin_why_title: "Pourquoi cette page ?",
168
+ admin_why_p1:
169
+ "L'application stocke tes données à deux endroits dans ton navigateur : le <strong>localStorage</strong> (tâches, notes, liens) et l'<strong>IndexedDB</strong> (le handle du fichier pour la sauvegarde directe).",
170
+ admin_why_p2:
171
+ "Ces données <strong>ne sont pas supprimées</strong> en vidant le cache classique ou en fermant le navigateur. Cette page te permet de les effacer proprement, par exemple pour repartir d'une installation vierge ou résoudre un problème de synchronisation entre le fichier et le navigateur.",
172
+ admin_why_p3:
173
+ "<strong>Attention :</strong> ces actions sont irréversibles. Si tu n'as pas sauvegardé tes modifications dans les fichiers <code>mesLiens.js</code> et <code>mesNotes.js</code>, tes données seront perdues.",
174
+ admin_ls_label: "Effacer le localStorage",
175
+ admin_ls_desc:
176
+ "Supprime toutes les tâches, notes et liens mémorisés dans le navigateur. Au prochain chargement, l'application repart des données par défaut contenues dans <code>mesLiens.js</code> et <code>mesNotes.js</code>.",
177
+ admin_idb_label: "Supprimer l'IndexedDB",
178
+ admin_idb_desc:
179
+ "Efface le handle de fichier mémorisé pour la sauvegarde directe. La prochaine sauvegarde te demandera à nouveau de sélectionner le dossier du projet, comme lors de la première utilisation.",
180
+ admin_execute_btn: "exécuter les actions sélectionnées",
181
+ admin_feedback_ls: "localStorage effacé.",
182
+ admin_feedback_idb: "IndexedDB supprimée.",
183
+ admin_feedback_return:
184
+ "Retourne sur le dashboard pour constater les changements.",
185
+ admin_lang_title: "Langue / Language",
186
+ admin_lang_applied: "Langue appliquée.",
187
+ };
package/i18n/i18n.js ADDED
@@ -0,0 +1,27 @@
1
+ (function () {
2
+ var lang = localStorage.getItem("lang") || "fr";
3
+ window.t = lang === "en" ? i18n_en : i18n_fr;
4
+
5
+ function applyI18n() {
6
+ document.querySelectorAll("[data-i18n]").forEach(function (el) {
7
+ var key = el.getAttribute("data-i18n");
8
+ if (window.t[key] !== undefined) el.textContent = window.t[key];
9
+ });
10
+ document.querySelectorAll("[data-i18n-html]").forEach(function (el) {
11
+ var key = el.getAttribute("data-i18n-html");
12
+ if (window.t[key] !== undefined) el.innerHTML = window.t[key];
13
+ });
14
+ document.querySelectorAll("[data-i18n-placeholder]").forEach(function (el) {
15
+ var key = el.getAttribute("data-i18n-placeholder");
16
+ if (window.t[key] !== undefined) el.placeholder = window.t[key];
17
+ });
18
+ document.querySelectorAll("[data-i18n-title]").forEach(function (el) {
19
+ var key = el.getAttribute("data-i18n-title");
20
+ if (window.t[key] !== undefined) el.title = window.t[key];
21
+ });
22
+ document.documentElement.lang = lang === "en" ? "en" : "fr";
23
+ }
24
+
25
+ window.applyI18n = applyI18n;
26
+ document.addEventListener("DOMContentLoaded", applyI18n);
27
+ })();
Binary file
Binary file