nodebb-plugin-customize 4.0.3 → 4.1.1

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.
@@ -55,6 +55,7 @@ const renderAdmin = async (req, res) => {
55
55
  listTemplates(),
56
56
  ]);
57
57
  res.render('admin/plugins/customize', {
58
+ title: 'Customize',
58
59
  version,
59
60
  templates: templates.map((x) => ({
60
61
  path: x.path,
@@ -1 +1 @@
1
- {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../lib/controllers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../lib/controllers.ts"],"names":[],"mappings":"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"}
@@ -1,119 +1,132 @@
1
- <div class="card">
2
- <div class="card-header">
3
- <h3 class="card-title">Translation Customizations</h3>
4
- </div>
5
- <table class="table">
6
- <thead>
7
- <tr>
8
- <th>Language</th>
9
- <th>Namespace</th>
10
- <th>Key</th>
11
- <th>Original</th>
12
- <th>Replacement</th>
13
- <th></th>
14
- </tr>
15
- </thead>
16
- <tbody id="translations-list">
17
- <!-- IMPORT partials/admin/plugins/customize/translations-list.tpl -->
18
- </tbody>
19
- <tfoot>
20
- <tr id="translation-edit" class="translation">
21
- <td>
22
- <select id="translation-edit-language">
23
- <option value="">---</option>
24
- {{{each languages}}}
25
- <option value="{./code}" {{{if ./selected}}}selected{{{end}}}>{./name} ({./code})</option>
26
- {{{end}}}
27
- </select>
28
- </td>
29
- <td>
30
- <select id="translation-edit-namespace">
31
- <option value="">---</option>
32
- {{{each namespaces}}}
33
- <option value="{./name}">{./name}</option>
34
- {{{end}}}
35
- </select>
36
- </td>
37
- <td>
38
- <select id="translation-edit-key">
39
- <!-- automatically fetch possible keys and autopopulate this -->
40
- </select>
41
- </td>
42
- <td>
43
- <span id="translation-edit-original"><!-- original goes here --></span>
44
- </td>
45
- <td>
46
- <!-- set to original value at first -->
47
- <textarea id="translation-edit-value"></textarea>
48
- </td>
49
- <td>
50
- <button class="btn btn-submit" id="translation-edit-submit"><i class="fa fa-fw fa-check"></i></button>
51
- </td>
52
- </tr>
53
- </tfoot>
54
- </table>
55
- </div>
1
+ <div class="acp-page-container" style="max-width: 1200px;">
2
+ <div component="settings/main/header" class="row border-bottom py-2 m-0 sticky-top acp-page-main-header align-items-center">
3
+ <div class="col-12 col-md-8 px-0 mb-1 mb-md-0">
4
+ <h4 class="fw-bold tracking-tight mb-0">{title}</h4>
5
+ </div>
6
+ <div class="col-12 col-md-4 px-0 px-md-3">
7
+ <button id="build" class="btn btn-primary btn-sm fw-semibold ff-secondary w-100 text-center text-nowrap">[[admin/admin:save-changes]]</button>
8
+ </div>
9
+ </div>
56
10
 
57
- <div class="card">
58
- <div class="card-header">
59
- <h3 class="card-title">Template Customizations</h3>
60
- </div>
61
- <table class="table">
62
- <thead>
63
- <tr>
64
- <th>Template</th>
65
- <th>Diff</th>
66
- <th></th>
67
- </tr>
68
- </thead>
69
- <tbody id="templates-list">
70
- <!-- IMPORT partials/admin/plugins/customize/templates-list.tpl -->
71
- </tbody>
72
- <tfoot>
73
- <tr id="template-edit" class="template">
74
- <td>
75
- <select id="template-edit-path">
76
- <option value="">---</option>
77
- {{{each templatePaths}}}
78
- <option value="{@value}">{@value}</option>
79
- {{{end}}}
80
- </select>
81
- </td>
82
- <td>
83
- <pre class="diff-preview"><code id="template-edit-diff"><!-- diff goes here --></code></pre>
84
- </td>
85
- <td>
86
- <button class="btn btn-primary" id="template-edit-open" data-bs-toggle="modal" data-bs-target="#template-edit-modal"><i class="fa fa-fw fa-pencil"></i></a>
87
- <button class="btn btn-success" id="template-edit-submit"><i class="fa fa-fw fa-check"></i></button>
88
- </td>
89
- </tr>
90
- </tfoot>
91
- </table>
92
- </div>
11
+ <div class="row m-0">
12
+ <div id="spy-container" class="col-12 px-0 mb-4" tabindex="0">
13
+ <div class="card">
14
+ <div class="card-header">
15
+ <h4 class="card-title">Translation Customizations</h4>
16
+ </div>
17
+ <table class="table">
18
+ <thead>
19
+ <tr>
20
+ <th>Language</th>
21
+ <th>Namespace</th>
22
+ <th>Key</th>
23
+ <th>Original</th>
24
+ <th>Replacement</th>
25
+ <th></th>
26
+ </tr>
27
+ </thead>
28
+ <tbody id="translations-list">
29
+ <!-- IMPORT partials/admin/plugins/customize/translations-list.tpl -->
30
+ </tbody>
31
+ <tfoot>
32
+ <tr id="translation-edit" class="translation">
33
+ <td>
34
+ <select id="translation-edit-language" class="form-select">
35
+ <option value="">---</option>
36
+ {{{each languages}}}
37
+ <option value="{./code}" {{{if ./selected}}}selected{{{end}}}>{./name} ({./code})</option>
38
+ {{{end}}}
39
+ </select>
40
+ </td>
41
+ <td>
42
+ <select id="translation-edit-namespace" class="form-select">
43
+ <option value="">---</option>
44
+ {{{each namespaces}}}
45
+ <option value="{./name}">{./name}</option>
46
+ {{{end}}}
47
+ </select>
48
+ </td>
49
+ <td>
50
+ <select id="translation-edit-key" class="form-select">
51
+ <!-- automatically fetch possible keys and autopopulate this -->
52
+ </select>
53
+ </td>
54
+ <td>
55
+ <span id="translation-edit-original"><!-- original goes here --></span>
56
+ </td>
57
+ <td>
58
+ <!-- set to original value at first -->
59
+ <textarea id="translation-edit-value" class="form-control"></textarea>
60
+ </td>
61
+ <td>
62
+ <button class="btn btn-ghost" id="translation-edit-submit"><i class="fa fa-fw fa-check text-success"></i></button>
63
+ </td>
64
+ </tr>
65
+ </tfoot>
66
+ </table>
67
+ </div>
93
68
 
94
- <div class="modal fade" id="template-edit-modal" tabindex="-1" role="dialog" aria-labelledby="template-edit-modal-label">
95
- <div class="modal-dialog modal-fullscreen" role="document">
96
- <div class="modal-content">
97
- <div class="modal-header">
98
- <h4 class="modal-title" id="template-edit-modal-label">Edit Template Customization</h4>
99
- <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><span aria-hidden="true"></span></button>
100
- </div>
101
- <div class="modal-body row">
102
- <div class="col-md" id="template-edit-old"></div>
103
- <div class="col-md" id="template-edit-value"></div>
104
- </div>
105
- <div class="modal-footer">
106
- <button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Done</button>
107
- </div>
108
- </div>
109
- </div>
69
+ <div class="card">
70
+ <div class="card-header">
71
+ <h4 class="card-title">Template Customizations</h4>
72
+ </div>
73
+ <table class="table">
74
+ <thead>
75
+ <tr>
76
+ <th>Template</th>
77
+ <th>Diff</th>
78
+ <th></th>
79
+ </tr>
80
+ </thead>
81
+ <tbody id="templates-list">
82
+ <!-- IMPORT partials/admin/plugins/customize/templates-list.tpl -->
83
+ </tbody>
84
+ <tfoot>
85
+ <tr id="template-edit" class="template">
86
+ <td>
87
+ <select id="template-edit-path" class="form-select">
88
+ <option value="">---</option>
89
+ {{{each templatePaths}}}
90
+ <option value="{@value}">{@value}</option>
91
+ {{{end}}}
92
+ </select>
93
+ </td>
94
+ <td>
95
+ <pre class="diff-preview"><code id="template-edit-diff"><!-- diff goes here --></code></pre>
96
+ </td>
97
+ <td>
98
+ <div class="d-flex gap-2">
99
+ <button class="btn btn-sm btn-primary" id="template-edit-open" data-bs-toggle="modal" data-bs-target="#template-edit-modal"><i class="fa fa-fw fa-pencil"></i></a>
100
+ <button class="btn btn-sm btn-success" id="template-edit-submit"><i class="fa fa-fw fa-check"></i></button>
101
+ </div>
102
+ </td>
103
+ </tr>
104
+ </tfoot>
105
+ </table>
106
+ </div>
107
+
108
+ <div class="modal fade" id="template-edit-modal" tabindex="-1" role="dialog" aria-labelledby="template-edit-modal-label">
109
+ <div class="modal-dialog modal-fullscreen" role="document">
110
+ <div class="modal-content">
111
+ <div class="modal-header">
112
+ <h4 class="modal-title" id="template-edit-modal-label">Edit Template Customization</h4>
113
+ <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><span aria-hidden="true"></span></button>
114
+ </div>
115
+ <div class="modal-body row">
116
+ <div class="col-md" id="template-edit-old"></div>
117
+ <div class="col-md" id="template-edit-value"></div>
118
+ </div>
119
+ <div class="modal-footer">
120
+ <button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Done</button>
121
+ </div>
122
+ </div>
123
+ </div>
124
+ </div>
125
+ </div>
126
+ </div>
110
127
  </div>
111
128
 
112
- <button
113
- id="build"
114
- class="edit btn btn-primary position-fixed bottom-0 end-0 px-3 py-2 mb-4 me-4 rounded-circle fs-4"
115
- type="button" style="width: 64px; height: 64px;"
116
- title="[[admin/plugins/customize:build_description]]"
117
- >
118
- <i class="fa fa-fw fas fa-hammer"></i>
119
- </button>
129
+
130
+
131
+
132
+
@@ -77,6 +77,7 @@ const renderAdmin: RequestHandler = async (req, res) => {
77
77
  listTemplates(),
78
78
  ]);
79
79
  res.render('admin/plugins/customize', {
80
+ title: 'Customize',
80
81
  version,
81
82
  templates: templates.map((x) => ({
82
83
  path: x.path,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nodebb-plugin-customize",
3
- "version": "4.0.3",
3
+ "version": "4.1.1",
4
4
  "description": "Customize NodeBB translations and templates",
5
5
  "main": "build/lib",
6
6
  "author": "Peter Jaszkowiak <p.jaszkow@gmail.com> (https://github.com/pitaj)",
@@ -10,7 +10,7 @@
10
10
  "url": "https://github.com/NodeBB/nodebb-plugin-customize.git"
11
11
  },
12
12
  "nbbpm": {
13
- "compatibility": "^3.0.0"
13
+ "compatibility": "^3.2.0 || ^4.0.0"
14
14
  },
15
15
  "keywords": [
16
16
  "nodebb",
@@ -1,119 +1,132 @@
1
- <div class="card">
2
- <div class="card-header">
3
- <h3 class="card-title">Translation Customizations</h3>
4
- </div>
5
- <table class="table">
6
- <thead>
7
- <tr>
8
- <th>Language</th>
9
- <th>Namespace</th>
10
- <th>Key</th>
11
- <th>Original</th>
12
- <th>Replacement</th>
13
- <th></th>
14
- </tr>
15
- </thead>
16
- <tbody id="translations-list">
17
- <!-- IMPORT partials/admin/plugins/customize/translations-list.tpl -->
18
- </tbody>
19
- <tfoot>
20
- <tr id="translation-edit" class="translation">
21
- <td>
22
- <select id="translation-edit-language">
23
- <option value="">---</option>
24
- {{{each languages}}}
25
- <option value="{./code}" {{{if ./selected}}}selected{{{end}}}>{./name} ({./code})</option>
26
- {{{end}}}
27
- </select>
28
- </td>
29
- <td>
30
- <select id="translation-edit-namespace">
31
- <option value="">---</option>
32
- {{{each namespaces}}}
33
- <option value="{./name}">{./name}</option>
34
- {{{end}}}
35
- </select>
36
- </td>
37
- <td>
38
- <select id="translation-edit-key">
39
- <!-- automatically fetch possible keys and autopopulate this -->
40
- </select>
41
- </td>
42
- <td>
43
- <span id="translation-edit-original"><!-- original goes here --></span>
44
- </td>
45
- <td>
46
- <!-- set to original value at first -->
47
- <textarea id="translation-edit-value"></textarea>
48
- </td>
49
- <td>
50
- <button class="btn btn-submit" id="translation-edit-submit"><i class="fa fa-fw fa-check"></i></button>
51
- </td>
52
- </tr>
53
- </tfoot>
54
- </table>
55
- </div>
1
+ <div class="acp-page-container" style="max-width: 1200px;">
2
+ <div component="settings/main/header" class="row border-bottom py-2 m-0 sticky-top acp-page-main-header align-items-center">
3
+ <div class="col-12 col-md-8 px-0 mb-1 mb-md-0">
4
+ <h4 class="fw-bold tracking-tight mb-0">{title}</h4>
5
+ </div>
6
+ <div class="col-12 col-md-4 px-0 px-md-3">
7
+ <button id="build" class="btn btn-primary btn-sm fw-semibold ff-secondary w-100 text-center text-nowrap">[[admin/admin:save-changes]]</button>
8
+ </div>
9
+ </div>
56
10
 
57
- <div class="card">
58
- <div class="card-header">
59
- <h3 class="card-title">Template Customizations</h3>
60
- </div>
61
- <table class="table">
62
- <thead>
63
- <tr>
64
- <th>Template</th>
65
- <th>Diff</th>
66
- <th></th>
67
- </tr>
68
- </thead>
69
- <tbody id="templates-list">
70
- <!-- IMPORT partials/admin/plugins/customize/templates-list.tpl -->
71
- </tbody>
72
- <tfoot>
73
- <tr id="template-edit" class="template">
74
- <td>
75
- <select id="template-edit-path">
76
- <option value="">---</option>
77
- {{{each templatePaths}}}
78
- <option value="{@value}">{@value}</option>
79
- {{{end}}}
80
- </select>
81
- </td>
82
- <td>
83
- <pre class="diff-preview"><code id="template-edit-diff"><!-- diff goes here --></code></pre>
84
- </td>
85
- <td>
86
- <button class="btn btn-primary" id="template-edit-open" data-bs-toggle="modal" data-bs-target="#template-edit-modal"><i class="fa fa-fw fa-pencil"></i></a>
87
- <button class="btn btn-success" id="template-edit-submit"><i class="fa fa-fw fa-check"></i></button>
88
- </td>
89
- </tr>
90
- </tfoot>
91
- </table>
92
- </div>
11
+ <div class="row m-0">
12
+ <div id="spy-container" class="col-12 px-0 mb-4" tabindex="0">
13
+ <div class="card">
14
+ <div class="card-header">
15
+ <h4 class="card-title">Translation Customizations</h4>
16
+ </div>
17
+ <table class="table">
18
+ <thead>
19
+ <tr>
20
+ <th>Language</th>
21
+ <th>Namespace</th>
22
+ <th>Key</th>
23
+ <th>Original</th>
24
+ <th>Replacement</th>
25
+ <th></th>
26
+ </tr>
27
+ </thead>
28
+ <tbody id="translations-list">
29
+ <!-- IMPORT partials/admin/plugins/customize/translations-list.tpl -->
30
+ </tbody>
31
+ <tfoot>
32
+ <tr id="translation-edit" class="translation">
33
+ <td>
34
+ <select id="translation-edit-language" class="form-select">
35
+ <option value="">---</option>
36
+ {{{each languages}}}
37
+ <option value="{./code}" {{{if ./selected}}}selected{{{end}}}>{./name} ({./code})</option>
38
+ {{{end}}}
39
+ </select>
40
+ </td>
41
+ <td>
42
+ <select id="translation-edit-namespace" class="form-select">
43
+ <option value="">---</option>
44
+ {{{each namespaces}}}
45
+ <option value="{./name}">{./name}</option>
46
+ {{{end}}}
47
+ </select>
48
+ </td>
49
+ <td>
50
+ <select id="translation-edit-key" class="form-select">
51
+ <!-- automatically fetch possible keys and autopopulate this -->
52
+ </select>
53
+ </td>
54
+ <td>
55
+ <span id="translation-edit-original"><!-- original goes here --></span>
56
+ </td>
57
+ <td>
58
+ <!-- set to original value at first -->
59
+ <textarea id="translation-edit-value" class="form-control"></textarea>
60
+ </td>
61
+ <td>
62
+ <button class="btn btn-ghost" id="translation-edit-submit"><i class="fa fa-fw fa-check text-success"></i></button>
63
+ </td>
64
+ </tr>
65
+ </tfoot>
66
+ </table>
67
+ </div>
93
68
 
94
- <div class="modal fade" id="template-edit-modal" tabindex="-1" role="dialog" aria-labelledby="template-edit-modal-label">
95
- <div class="modal-dialog modal-fullscreen" role="document">
96
- <div class="modal-content">
97
- <div class="modal-header">
98
- <h4 class="modal-title" id="template-edit-modal-label">Edit Template Customization</h4>
99
- <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><span aria-hidden="true"></span></button>
100
- </div>
101
- <div class="modal-body row">
102
- <div class="col-md" id="template-edit-old"></div>
103
- <div class="col-md" id="template-edit-value"></div>
104
- </div>
105
- <div class="modal-footer">
106
- <button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Done</button>
107
- </div>
108
- </div>
109
- </div>
69
+ <div class="card">
70
+ <div class="card-header">
71
+ <h4 class="card-title">Template Customizations</h4>
72
+ </div>
73
+ <table class="table">
74
+ <thead>
75
+ <tr>
76
+ <th>Template</th>
77
+ <th>Diff</th>
78
+ <th></th>
79
+ </tr>
80
+ </thead>
81
+ <tbody id="templates-list">
82
+ <!-- IMPORT partials/admin/plugins/customize/templates-list.tpl -->
83
+ </tbody>
84
+ <tfoot>
85
+ <tr id="template-edit" class="template">
86
+ <td>
87
+ <select id="template-edit-path" class="form-select">
88
+ <option value="">---</option>
89
+ {{{each templatePaths}}}
90
+ <option value="{@value}">{@value}</option>
91
+ {{{end}}}
92
+ </select>
93
+ </td>
94
+ <td>
95
+ <pre class="diff-preview"><code id="template-edit-diff"><!-- diff goes here --></code></pre>
96
+ </td>
97
+ <td>
98
+ <div class="d-flex gap-2">
99
+ <button class="btn btn-sm btn-primary" id="template-edit-open" data-bs-toggle="modal" data-bs-target="#template-edit-modal"><i class="fa fa-fw fa-pencil"></i></a>
100
+ <button class="btn btn-sm btn-success" id="template-edit-submit"><i class="fa fa-fw fa-check"></i></button>
101
+ </div>
102
+ </td>
103
+ </tr>
104
+ </tfoot>
105
+ </table>
106
+ </div>
107
+
108
+ <div class="modal fade" id="template-edit-modal" tabindex="-1" role="dialog" aria-labelledby="template-edit-modal-label">
109
+ <div class="modal-dialog modal-fullscreen" role="document">
110
+ <div class="modal-content">
111
+ <div class="modal-header">
112
+ <h4 class="modal-title" id="template-edit-modal-label">Edit Template Customization</h4>
113
+ <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><span aria-hidden="true"></span></button>
114
+ </div>
115
+ <div class="modal-body row">
116
+ <div class="col-md" id="template-edit-old"></div>
117
+ <div class="col-md" id="template-edit-value"></div>
118
+ </div>
119
+ <div class="modal-footer">
120
+ <button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">Done</button>
121
+ </div>
122
+ </div>
123
+ </div>
124
+ </div>
125
+ </div>
126
+ </div>
110
127
  </div>
111
128
 
112
- <button
113
- id="build"
114
- class="edit btn btn-primary position-fixed bottom-0 end-0 px-3 py-2 mb-4 me-4 rounded-circle fs-4"
115
- type="button" style="width: 64px; height: 64px;"
116
- title="[[admin/plugins/customize:build_description]]"
117
- >
118
- <i class="fa fa-fw fas fa-hammer"></i>
119
- </button>
129
+
130
+
131
+
132
+