domma-cms 0.44.0 → 0.45.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/CLAUDE.md +53 -53
- package/README.md +27 -27
- package/admin/css/admin.css +1 -1
- package/admin/dist/domma/domma-tools.css +3 -3
- package/admin/dist/domma/domma-tools.min.js +3 -3
- package/admin/index.html +2 -2
- package/admin/js/app.js +1 -1
- package/admin/js/lib/card-builder.js +2 -2
- package/admin/js/lib/crud-tutorial.js +1 -1
- package/admin/js/lib/effect-defs.js +1 -1
- package/admin/js/lib/effects-builder.js +1 -1
- package/admin/js/lib/image-editor.js +1 -1
- package/admin/js/lib/markdown-toolbar.js +2 -2
- package/admin/js/lib/project-context.js +1 -1
- package/admin/js/lib/project-quick-create.js +1 -1
- package/admin/js/lib/scribe-composer.js +1 -1
- package/admin/js/lib/server-restart.js +1 -1
- package/admin/js/lib/shortcode-context-menu.js +2 -2
- package/admin/js/lib/simple-editor.js +1 -1
- package/admin/js/lib/themes.js +1 -1
- package/admin/js/lib/timeline-builder.js +1 -1
- package/admin/js/templates/action-editor.html +8 -8
- package/admin/js/templates/api-endpoint-editor.html +7 -7
- package/admin/js/templates/api-endpoints.html +1 -1
- package/admin/js/templates/api-reference.html +1 -1
- package/admin/js/templates/block-editor.html +6 -6
- package/admin/js/templates/collection-editor.html +1 -1
- package/admin/js/templates/component-editor.html +2 -2
- package/admin/js/templates/dashboard/cache.html +3 -3
- package/admin/js/templates/dashboard/journeys.html +3 -3
- package/admin/js/templates/dashboard/kpi-strip.html +3 -3
- package/admin/js/templates/dashboard/top-pages.html +1 -1
- package/admin/js/templates/dashboard/traffic-chart.html +1 -1
- package/admin/js/templates/docs/api-actions.html +1 -1
- package/admin/js/templates/docs/api-collections.html +4 -4
- package/admin/js/templates/docs/api-pages.html +2 -2
- package/admin/js/templates/docs/api-plugins.html +1 -1
- package/admin/js/templates/docs/api-settings.html +2 -2
- package/admin/js/templates/docs/api-users.html +1 -1
- package/admin/js/templates/docs/components-howto.html +4 -4
- package/admin/js/templates/docs/components-reference.html +21 -21
- package/admin/js/templates/docs/components-rules.html +14 -14
- package/admin/js/templates/docs/components-walkthrough.html +13 -13
- package/admin/js/templates/docs/tutorial-crud.html +49 -49
- package/admin/js/templates/docs/tutorial-forms.html +4 -4
- package/admin/js/templates/docs/tutorial-plugin.html +10 -10
- package/admin/js/templates/docs/usage-actions.html +6 -6
- package/admin/js/templates/docs/usage-cta-shortcode.html +9 -9
- package/admin/js/templates/docs/usage-dconfig.html +4 -4
- package/admin/js/templates/docs/usage-navigation.html +1 -1
- package/admin/js/templates/docs/usage-pages.html +1 -1
- package/admin/js/templates/docs/usage-shortcodes.html +24 -24
- package/admin/js/templates/docs/usage-users-roles.html +3 -3
- package/admin/js/templates/docs/usage-views.html +4 -4
- package/admin/js/templates/documentation.html +1 -1
- package/admin/js/templates/effects.html +752 -752
- package/admin/js/templates/form-editor.html +5 -5
- package/admin/js/templates/forms.html +17 -17
- package/admin/js/templates/login.html +5 -5
- package/admin/js/templates/menu-editor.html +10 -10
- package/admin/js/templates/my-profile.html +17 -17
- package/admin/js/templates/navigation.html +11 -11
- package/admin/js/templates/notifications.html +1 -1
- package/admin/js/templates/page-editor.html +4 -4
- package/admin/js/templates/pro-docs.html +14 -14
- package/admin/js/templates/role-editor.html +70 -70
- package/admin/js/templates/roles.html +10 -10
- package/admin/js/templates/settings.html +10 -10
- package/admin/js/templates/tutorials.html +3 -3
- package/admin/js/templates/view-editor.html +15 -15
- package/admin/js/views/action-editor.js +1 -1
- package/admin/js/views/actions-list.js +1 -1
- package/admin/js/views/api-endpoint-editor.js +2 -2
- package/admin/js/views/api-endpoints.js +2 -2
- package/admin/js/views/api-tokens.js +3 -3
- package/admin/js/views/blocks.js +2 -2
- package/admin/js/views/collection-editor.js +1 -1
- package/admin/js/views/collection-entries.js +1 -1
- package/admin/js/views/collections.js +1 -1
- package/admin/js/views/component-editor.js +1 -1
- package/admin/js/views/components.js +4 -4
- package/admin/js/views/dashboard/widgets/cache.js +1 -1
- package/admin/js/views/dashboard/widgets/journeys.js +1 -1
- package/admin/js/views/dashboard/widgets/kpi-strip.js +1 -1
- package/admin/js/views/form-editor.js +7 -7
- package/admin/js/views/form-submissions.js +1 -1
- package/admin/js/views/forms.js +1 -1
- package/admin/js/views/layouts.js +1 -1
- package/admin/js/views/login.js +2 -2
- package/admin/js/views/menu-editor.js +3 -3
- package/admin/js/views/menu-locations.js +1 -1
- package/admin/js/views/menus.js +3 -3
- package/admin/js/views/navigation.js +8 -8
- package/admin/js/views/page-editor.js +40 -40
- package/admin/js/views/pages.js +3 -3
- package/admin/js/views/plugin-code.js +2 -2
- package/admin/js/views/plugins.js +1 -1
- package/admin/js/views/project-settings.js +1 -1
- package/admin/js/views/projects.js +1 -1
- package/admin/js/views/roles.js +1 -1
- package/admin/js/views/user-editor.js +1 -1
- package/admin/js/views/users.js +3 -3
- package/admin/js/views/view-editor.js +1 -1
- package/admin/js/views/view-preview.js +1 -1
- package/admin/js/views/views-list.js +1 -1
- package/bin/cli.js +8 -8
- package/bin/lib/config-merge.js +44 -44
- package/bin/update.js +16 -16
- package/config/plugins.json +1 -1
- package/package.json +2 -2
- package/plugins/_template/admin/views/index.js +1 -1
- package/plugins/_template/config.js +1 -1
- package/plugins/_template/plugin.js +1 -1
- package/plugins/analytics/admin/templates/analytics.html +3 -3
- package/plugins/analytics/admin/views/analytics.js +1 -1
- package/plugins/analytics/config.js +1 -1
- package/plugins/analytics/plugin.js +4 -4
- package/plugins/analytics/plugin.json +1 -1
- package/plugins/analytics/public/inject-body.html +2 -2
- package/plugins/analytics/public/inject-head.html +1 -1
- package/plugins/blog/admin/templates/blog.html +4 -4
- package/plugins/blog/admin/views/blog.js +3 -3
- package/plugins/blog/admin/views/categories.js +2 -2
- package/plugins/blog/admin/views/comments.js +4 -4
- package/plugins/blog/admin/views/post-editor.js +1 -1
- package/plugins/blog/plugin.js +2 -2
- package/plugins/blog/plugin.json +4 -4
- package/plugins/contacts/admin/views/contacts.js +8 -8
- package/plugins/contacts/plugin.js +4 -4
- package/plugins/contacts/plugin.json +1 -1
- package/plugins/invoice/admin/templates/editor.html +6 -6
- package/plugins/invoice/admin/templates/index.html +4 -4
- package/plugins/invoice/admin/views/editor.js +3 -3
- package/plugins/invoice/admin/views/index.js +4 -4
- package/plugins/invoice/admin/views/issuers.js +1 -1
- package/plugins/invoice/admin/views/party-view.js +3 -3
- package/plugins/invoice/admin/views/receivers.js +1 -1
- package/plugins/invoice/config.js +1 -1
- package/plugins/invoice/plugin.js +1 -1
- package/plugins/invoice/plugin.json +4 -4
- package/plugins/notes/admin/views/notes.js +4 -4
- package/plugins/notes/plugin.js +1 -1
- package/plugins/notes/plugin.json +1 -1
- package/plugins/site-search/admin/templates/site-search.html +3 -3
- package/plugins/site-search/admin/views/site-search.js +1 -1
- package/plugins/site-search/config.js +1 -1
- package/plugins/site-search/plugin.js +4 -4
- package/plugins/site-search/plugin.json +1 -1
- package/plugins/surveys/admin/templates/results.html +1 -1
- package/plugins/surveys/admin/templates/survey-editor.html +4 -4
- package/plugins/surveys/admin/views/audience.js +6 -6
- package/plugins/surveys/admin/views/results.js +3 -3
- package/plugins/surveys/admin/views/survey-editor.js +1 -1
- package/plugins/surveys/admin/views/surveys.js +2 -2
- package/plugins/surveys/plugin.js +1 -1
- package/plugins/surveys/plugin.json +4 -4
- package/plugins/theme-switcher/admin/views/theme-switcher.js +1 -1
- package/plugins/theme-switcher/plugin.json +3 -3
- package/plugins/theme-switcher/public/inject-body.html +28 -28
- package/plugins/theme-switcher/public/inject-head.html +1 -1
- package/plugins/todo/plugin.js +1 -1
- package/public/css/forms.css +1 -1
- package/public/js/collection-browser.js +1 -1
- package/public/js/collection-context.js +1 -1
- package/public/js/form-logic-engine.js +1 -1
- package/public/js/forms.js +2 -1
- package/public/js/site.js +1 -1
- package/scripts/build.js +14 -14
- package/scripts/create-plugin.js +2 -2
- package/scripts/fresh.js +2 -2
- package/scripts/gen-instance-secret.js +1 -1
- package/scripts/pro.js +12 -12
- package/scripts/reset.js +2 -2
- package/scripts/setup.js +15 -15
- package/scripts/users.js +5 -5
- package/scripts/verify-assets.mjs +6 -6
- package/server/config.js +1 -1
- package/server/middleware/auth.js +253 -253
- package/server/middleware/managerAuth.js +3 -3
- package/server/routes/api/actions.js +4 -4
- package/server/routes/api/api-endpoints.js +7 -7
- package/server/routes/api/api-tokens.js +5 -5
- package/server/routes/api/auth.js +309 -309
- package/server/routes/api/blocks.js +3 -3
- package/server/routes/api/collections.js +18 -18
- package/server/routes/api/dashboard.js +5 -5
- package/server/routes/api/effects.js +2 -2
- package/server/routes/api/endpoints-public.js +5 -5
- package/server/routes/api/forms.js +47 -47
- package/server/routes/api/menu-locations.js +3 -3
- package/server/routes/api/menus.js +7 -7
- package/server/routes/api/navigation.js +42 -42
- package/server/routes/api/notifications.js +2 -2
- package/server/routes/api/pages.js +14 -2
- package/server/routes/api/plugin-marketplace.js +3 -3
- package/server/routes/api/plugins.js +6 -6
- package/server/routes/api/projects.js +9 -9
- package/server/routes/api/scaffold.js +7 -7
- package/server/routes/api/settings.js +6 -6
- package/server/routes/api/sidebar.js +1 -1
- package/server/routes/api/users.js +5 -5
- package/server/routes/api/versions.js +1 -1
- package/server/routes/api/views.js +1 -1
- package/server/routes/docs-public.js +3 -3
- package/server/routes/public.js +14 -14
- package/server/server.js +34 -16
- package/server/services/actions.js +19 -19
- package/server/services/adapters/FileAdapter.js +2 -2
- package/server/services/adapters/MongoAdapter.js +5 -5
- package/server/services/apiEndpoints.js +15 -15
- package/server/services/apiTokens.js +7 -7
- package/server/services/blocks.js +13 -13
- package/server/services/cache/drivers/MemoryDriver.js +3 -3
- package/server/services/cache/drivers/NoneDriver.js +1 -1
- package/server/services/cache/index.js +5 -5
- package/server/services/collections.js +14 -14
- package/server/services/components.js +9 -9
- package/server/services/connectionManager.js +4 -4
- package/server/services/content.js +25 -2
- package/server/services/docs.js +14 -14
- package/server/services/email.js +167 -167
- package/server/services/filterEngine.js +6 -6
- package/server/services/forms.js +18 -10
- package/server/services/health.js +1 -1
- package/server/services/hooks.js +7 -7
- package/server/services/images.js +4 -4
- package/server/services/managerClient.js +1 -1
- package/server/services/markdown.js +79 -79
- package/server/services/menuRender.js +5 -5
- package/server/services/menus-migration.js +3 -3
- package/server/services/menus.js +31 -31
- package/server/services/permissionRegistry.js +1 -1
- package/server/services/pluginFiles.js +5 -5
- package/server/services/pluginInstaller.js +17 -17
- package/server/services/pluginScaffold.js +1 -1
- package/server/services/plugins.js +17 -17
- package/server/services/presetCollections.js +2 -2
- package/server/services/projects.js +35 -26
- package/server/services/recipes/contact-list.json +1 -1
- package/server/services/recipes/onboarding.json +8 -8
- package/server/services/references.js +8 -8
- package/server/services/renderer.js +9 -9
- package/server/services/roles.js +9 -9
- package/server/services/rowAccess.js +10 -10
- package/server/services/scaffolder.js +30 -30
- package/server/services/sidebar-migration.js +10 -10
- package/server/services/sitemap.js +1 -1
- package/server/services/userProfiles.js +199 -199
- package/server/services/userRoles.js +7 -7
- package/server/services/users.js +302 -302
- package/server/services/versions.js +3 -3
- package/server/services/viewPipeline.js +6 -6
- package/server/services/views.js +11 -11
- package/server/templates/page.html +5 -5
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
<h3>Creating an Action</h3>
|
|
15
15
|
<ol>
|
|
16
16
|
<li>Navigate to <strong>Data → Actions</strong> and click <strong>New Action</strong>.</li>
|
|
17
|
-
<li><strong>General tab</strong>
|
|
18
|
-
<li><strong>Trigger tab</strong>
|
|
17
|
+
<li><strong>General tab</strong> - enter a title and select the target collection.</li>
|
|
18
|
+
<li><strong>Trigger tab</strong> - configure the button label, icon, and optional confirmation
|
|
19
19
|
message.
|
|
20
20
|
</li>
|
|
21
|
-
<li><strong>Steps tab</strong>
|
|
21
|
+
<li><strong>Steps tab</strong> - add steps in order. Each step runs sequentially; if one fails the
|
|
22
22
|
action stops.
|
|
23
23
|
</li>
|
|
24
|
-
<li><strong>Access tab</strong>
|
|
24
|
+
<li><strong>Access tab</strong> - select which roles can trigger this action.</li>
|
|
25
25
|
<li>Click <strong>Save Action</strong>. The button will appear on the collection's entry list.
|
|
26
26
|
</li>
|
|
27
27
|
</ol>
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
</tr>
|
|
101
101
|
</tbody>
|
|
102
102
|
</table>
|
|
103
|
-
<p><strong>Example</strong>
|
|
103
|
+
<p><strong>Example</strong> - approve an application and notify by email:</p>
|
|
104
104
|
<pre class="code-block"><code>Step 1: updateField field=status value=approved
|
|
105
105
|
Step 2: updateField field=approvedAt value={{now}}
|
|
106
106
|
Step 3: email to={{entry.data.email}}
|
|
@@ -110,7 +110,7 @@ Step 3: email to={{entry.data.email}}
|
|
|
110
110
|
<h3>Partial Execution</h3>
|
|
111
111
|
<p>Actions are <strong>not transactional</strong>. If a step fails, the action stops and returns the
|
|
112
112
|
number of steps completed so far (<code>stepsCompleted</code>). Steps that already ran are
|
|
113
|
-
<strong>not rolled back</strong>. Design step order with this in mind
|
|
113
|
+
<strong>not rolled back</strong>. Design step order with this in mind - put irreversible steps
|
|
114
114
|
(delete, email) last.</p>
|
|
115
115
|
|
|
116
116
|
<h3>After a deleteEntry step</h3>
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
<tr>
|
|
31
31
|
<td><code>action</code></td>
|
|
32
32
|
<td>Yes</td>
|
|
33
|
-
<td
|
|
33
|
+
<td>-</td>
|
|
34
34
|
<td>Action slug</td>
|
|
35
35
|
</tr>
|
|
36
36
|
<tr>
|
|
37
37
|
<td><code>entry</code></td>
|
|
38
38
|
<td>Yes</td>
|
|
39
|
-
<td
|
|
39
|
+
<td>-</td>
|
|
40
40
|
<td>Entry UUID to act on</td>
|
|
41
41
|
</tr>
|
|
42
42
|
<tr>
|
|
@@ -54,19 +54,19 @@
|
|
|
54
54
|
<tr>
|
|
55
55
|
<td><code>icon</code></td>
|
|
56
56
|
<td>No</td>
|
|
57
|
-
<td
|
|
57
|
+
<td>-</td>
|
|
58
58
|
<td>Domma icon name</td>
|
|
59
59
|
</tr>
|
|
60
60
|
<tr>
|
|
61
61
|
<td><code>size</code></td>
|
|
62
62
|
<td>No</td>
|
|
63
|
-
<td
|
|
63
|
+
<td>-</td>
|
|
64
64
|
<td>sm · md · lg</td>
|
|
65
65
|
</tr>
|
|
66
66
|
<tr>
|
|
67
67
|
<td><code>confirm</code></td>
|
|
68
68
|
<td>No</td>
|
|
69
|
-
<td
|
|
69
|
+
<td>-</td>
|
|
70
70
|
<td>Confirmation prompt before executing</td>
|
|
71
71
|
</tr>
|
|
72
72
|
</tbody>
|
|
@@ -91,8 +91,8 @@
|
|
|
91
91
|
<tbody>
|
|
92
92
|
<tr>
|
|
93
93
|
<td><code>cta</code></td>
|
|
94
|
-
<td
|
|
95
|
-
<td>Action slug
|
|
94
|
+
<td>-</td>
|
|
95
|
+
<td>Action slug - enables per-entry buttons</td>
|
|
96
96
|
</tr>
|
|
97
97
|
<tr>
|
|
98
98
|
<td><code>cta-label</code></td>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
</tr>
|
|
102
102
|
<tr>
|
|
103
103
|
<td><code>cta-icon</code></td>
|
|
104
|
-
<td
|
|
104
|
+
<td>-</td>
|
|
105
105
|
<td>Domma icon name</td>
|
|
106
106
|
</tr>
|
|
107
107
|
<tr>
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
</tr>
|
|
112
112
|
<tr>
|
|
113
113
|
<td><code>cta-confirm</code></td>
|
|
114
|
-
<td
|
|
114
|
+
<td>-</td>
|
|
115
115
|
<td>Confirmation prompt</td>
|
|
116
116
|
</tr>
|
|
117
117
|
</tbody>
|
|
@@ -7,18 +7,18 @@
|
|
|
7
7
|
<div class="col-12">
|
|
8
8
|
<div class="docs-body">
|
|
9
9
|
|
|
10
|
-
<p>DConfig lets you wire up declarative behaviour on any public page
|
|
10
|
+
<p>DConfig lets you wire up declarative behaviour on any public page - no JavaScript required. Define
|
|
11
11
|
event
|
|
12
12
|
handlers and class toggles in JSON; the page runtime applies them automatically on load.</p>
|
|
13
13
|
|
|
14
14
|
<p>DConfig can be set in two ways, and both are merged at runtime (inline shortcode wins on selector
|
|
15
15
|
conflict):</p>
|
|
16
16
|
<ul>
|
|
17
|
-
<li><strong>Page editor</strong>
|
|
17
|
+
<li><strong>Page editor</strong> - the <em>DConfig</em> collapsible section accepts a JSON blob
|
|
18
18
|
stored in page
|
|
19
19
|
frontmatter and injected as <code>window.__CMS_DCONFIG__</code>.
|
|
20
20
|
</li>
|
|
21
|
-
<li><strong>Inline shortcode</strong>
|
|
21
|
+
<li><strong>Inline shortcode</strong> - place one or more <code>[dconfig]…[/dconfig]</code> blocks
|
|
22
22
|
directly in
|
|
23
23
|
the page body Markdown.
|
|
24
24
|
</li>
|
|
@@ -116,7 +116,7 @@ Content goes here.
|
|
|
116
116
|
|
|
117
117
|
<h3>Multiple selectors</h3>
|
|
118
118
|
<p>Any number of selectors can appear in one block. Selectors are matched with
|
|
119
|
-
<code>document.querySelector</code>
|
|
119
|
+
<code>document.querySelector</code> - use IDs, classes, or attribute selectors.</p>
|
|
120
120
|
<pre class="code-block"><code>[dconfig]
|
|
121
121
|
{
|
|
122
122
|
"#show-btn": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
<h3>Dropdowns</h3>
|
|
15
15
|
<p>Nest items under a parent using the drag-and-drop tree in the Navigation editor. Child items are
|
|
16
16
|
stored under
|
|
17
|
-
the <code>items</code> key
|
|
17
|
+
the <code>items</code> key - the public navbar renders them as a dropdown.</p>
|
|
18
18
|
|
|
19
19
|
<h3>External links</h3>
|
|
20
20
|
<p>Set the URL to a full <code>https://</code> address to link outside the site. Leave blank for
|
|
@@ -54,7 +54,7 @@ updatedAt: 2026-03-01 # auto-set on save
|
|
|
54
54
|
Your Markdown content goes here.</code></pre>
|
|
55
55
|
|
|
56
56
|
<h3>Drafts</h3>
|
|
57
|
-
<p>Pages with <code>status: draft</code> are never served on the public site
|
|
57
|
+
<p>Pages with <code>status: draft</code> are never served on the public site - they return a 404.
|
|
58
58
|
Toggle status
|
|
59
59
|
in the Page Editor to publish.</p>
|
|
60
60
|
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
<tbody>
|
|
24
24
|
<tr>
|
|
25
25
|
<td><code>[grid cols="N" gap="N"]...[/grid]</code></td>
|
|
26
|
-
<td>CSS Grid container
|
|
26
|
+
<td>CSS Grid container - N columns (1-12), optional gap (1-6)</td>
|
|
27
27
|
</tr>
|
|
28
28
|
<tr>
|
|
29
29
|
<td><code>[row gap="N"]...[/row]</code></td>
|
|
30
|
-
<td>Flexbox row
|
|
30
|
+
<td>Flexbox row - columns share width equally</td>
|
|
31
31
|
</tr>
|
|
32
32
|
<tr>
|
|
33
33
|
<td><code>[col span="N"]...[/col]</code></td>
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
<tbody>
|
|
48
48
|
<tr>
|
|
49
49
|
<td><code>[card title="..."]...[/card]</code></td>
|
|
50
|
-
<td>Styled card. Supports 6 variants, ~44 gradients and 33 layouts
|
|
50
|
+
<td>Styled card. Supports 6 variants, ~44 gradients and 33 layouts - see the
|
|
51
51
|
<strong>Cards</strong> subsection below.
|
|
52
52
|
</td>
|
|
53
53
|
</tr>
|
|
@@ -88,11 +88,11 @@
|
|
|
88
88
|
</tbody>
|
|
89
89
|
</table>
|
|
90
90
|
|
|
91
|
-
<h3>Cards
|
|
91
|
+
<h3>Cards - variants, gradients & layouts</h3>
|
|
92
92
|
<p>The <code>[card]</code> shortcode is the most configurable component in the system. It has three
|
|
93
93
|
layers you can mix freely: <strong>variant</strong> (the overall visual style), <strong>gradient</strong>
|
|
94
94
|
(colour palette, used with <code>variant="gradient"</code> or any layout that accepts a gradient),
|
|
95
|
-
and <strong>layout</strong> (the internal structure
|
|
95
|
+
and <strong>layout</strong> (the internal structure - header/body/footer, image position, sub-tags,
|
|
96
96
|
etc.). Every layout accepts every variant, gradient and universal attribute listed below.</p>
|
|
97
97
|
<pre><code>[card variant="gradient" gradient="ocean" layout="icon-top" icon="star" title="Fast"]
|
|
98
98
|
Body content in **Markdown** is supported.
|
|
@@ -109,7 +109,7 @@ Body content in **Markdown** is supported.
|
|
|
109
109
|
<tbody>
|
|
110
110
|
<tr>
|
|
111
111
|
<td><code>clean</code></td>
|
|
112
|
-
<td>Flat, minimal chrome
|
|
112
|
+
<td>Flat, minimal chrome - no border, subtle background</td>
|
|
113
113
|
</tr>
|
|
114
114
|
<tr>
|
|
115
115
|
<td><code>gradient</code></td>
|
|
@@ -126,7 +126,7 @@ Body content in **Markdown** is supported.
|
|
|
126
126
|
</tr>
|
|
127
127
|
<tr>
|
|
128
128
|
<td><code>dark</code></td>
|
|
129
|
-
<td>Dark background with inverted text
|
|
129
|
+
<td>Dark background with inverted text - good on light pages</td>
|
|
130
130
|
</tr>
|
|
131
131
|
<tr>
|
|
132
132
|
<td><code>glow</code></td>
|
|
@@ -134,13 +134,13 @@ Body content in **Markdown** is supported.
|
|
|
134
134
|
</tr>
|
|
135
135
|
<tr>
|
|
136
136
|
<td><code>primary</code></td>
|
|
137
|
-
<td>Legacy alias
|
|
137
|
+
<td>Legacy alias - adds <code>card-primary</code> class for backwards compatibility</td>
|
|
138
138
|
</tr>
|
|
139
139
|
</tbody>
|
|
140
140
|
</table>
|
|
141
141
|
|
|
142
142
|
<h4>Built-in gradients</h4>
|
|
143
|
-
<p>Shipped in <code>public/css/</code>
|
|
143
|
+
<p>Shipped in <code>public/css/</code> - available on every install. Default when
|
|
144
144
|
<code>gradient</code> is omitted: <code>indigo</code>.</p>
|
|
145
145
|
<p><code>arctic</code>, <code>aurora</code>, <code>dusk</code>, <code>fire</code>, <code>forest</code>,
|
|
146
146
|
<code>gold</code>, <code>indigo</code>, <code>lagoon</code>, <code>lime</code>,
|
|
@@ -148,7 +148,7 @@ Body content in **Markdown** is supported.
|
|
|
148
148
|
<code>sunset</code></p>
|
|
149
149
|
|
|
150
150
|
<h4>Project-specific gradients</h4>
|
|
151
|
-
<p>Defined in <code>content/custom.css</code> on this site only
|
|
151
|
+
<p>Defined in <code>content/custom.css</code> on this site only - fresh installs will not have
|
|
152
152
|
these unless the CSS is copied over.</p>
|
|
153
153
|
<p><strong>Single-tone:</strong> <code>purple</code>, <code>blue</code>, <code>green</code>,
|
|
154
154
|
<code>night</code></p>
|
|
@@ -162,7 +162,7 @@ Body content in **Markdown** is supported.
|
|
|
162
162
|
<code>silver-dark</code>, <code>charcoal-dark</code>, <code>christmas-dark</code>,
|
|
163
163
|
<code>unicorn-dark</code>, <code>dreamy-dark</code>, <code>grayve-dark</code>,
|
|
164
164
|
<code>mint-dark</code>, <code>wedding-dark</code></p>
|
|
165
|
-
<p class="text-muted"><small>Gradient names are not validated
|
|
165
|
+
<p class="text-muted"><small>Gradient names are not validated - a typo falls through to the
|
|
166
166
|
default background with no warning. Use <code>/test-card-gradients</code> to preview every
|
|
167
167
|
palette.</small></p>
|
|
168
168
|
|
|
@@ -311,7 +311,7 @@ Body content in **Markdown** is supported.
|
|
|
311
311
|
<tr>
|
|
312
312
|
<td><code>icon-top</code></td>
|
|
313
313
|
<td><code>icon</code>, <code>title</code>, <code>subtitle</code></td>
|
|
314
|
-
<td>Large centred icon above title
|
|
314
|
+
<td>Large centred icon above title - good for feature grids</td>
|
|
315
315
|
</tr>
|
|
316
316
|
<tr>
|
|
317
317
|
<td><code>icon-inline</code></td>
|
|
@@ -387,7 +387,7 @@ Body content in **Markdown** is supported.
|
|
|
387
387
|
<tr>
|
|
388
388
|
<td><code>location-map</code></td>
|
|
389
389
|
<td><code>address</code>, <code>title</code></td>
|
|
390
|
-
<td>Placeholder map panel + address block (static
|
|
390
|
+
<td>Placeholder map panel + address block (static - no live map)</td>
|
|
391
391
|
</tr>
|
|
392
392
|
</tbody>
|
|
393
393
|
</table>
|
|
@@ -407,7 +407,7 @@ Body content in **Markdown** is supported.
|
|
|
407
407
|
<td><code>icon</code>, <code>title</code>, <code>subtitle</code>,
|
|
408
408
|
<code>tags</code> (comma-separated)
|
|
409
409
|
</td>
|
|
410
|
-
<td>Circular avatar + name + role + pill tags
|
|
410
|
+
<td>Circular avatar + name + role + pill tags - team / author cards</td>
|
|
411
411
|
</tr>
|
|
412
412
|
<tr>
|
|
413
413
|
<td><code>quote-testimonial</code></td>
|
|
@@ -416,7 +416,7 @@ Body content in **Markdown** is supported.
|
|
|
416
416
|
</tr>
|
|
417
417
|
<tr>
|
|
418
418
|
<td><code>rating-review</code></td>
|
|
419
|
-
<td><code>rating</code> (0
|
|
419
|
+
<td><code>rating</code> (0-5), <code>title</code>, <code>subtitle</code>,
|
|
420
420
|
<code>verified</code> (flag)
|
|
421
421
|
</td>
|
|
422
422
|
<td>Star rating + review body + reviewer attribution</td>
|
|
@@ -437,7 +437,7 @@ Body content in **Markdown** is supported.
|
|
|
437
437
|
<tr>
|
|
438
438
|
<td><code>stat-metric</code></td>
|
|
439
439
|
<td><code>title</code> (label), <code>value</code>, <code>delta</code>,
|
|
440
|
-
<code>progress</code> (0
|
|
440
|
+
<code>progress</code> (0-100)
|
|
441
441
|
</td>
|
|
442
442
|
<td>Big-number KPI tile with delta arrow and optional progress bar</td>
|
|
443
443
|
</tr>
|
|
@@ -493,12 +493,12 @@ Body content in **Markdown** is supported.
|
|
|
493
493
|
<tr>
|
|
494
494
|
<td><code>tag-cloud</code></td>
|
|
495
495
|
<td><code>title</code>, <code>tags</code> (comma-separated)</td>
|
|
496
|
-
<td>Coloured pill list
|
|
496
|
+
<td>Coloured pill list - topic tags, skills, categories</td>
|
|
497
497
|
</tr>
|
|
498
498
|
<tr>
|
|
499
499
|
<td><code>timeline-entry</code></td>
|
|
500
500
|
<td><code>title</code>, <code>subtitle</code> (date), <code>badge</code> (tag)</td>
|
|
501
|
-
<td>Single dot-on-line timeline entry
|
|
501
|
+
<td>Single dot-on-line timeline entry - stack several for a history list</td>
|
|
502
502
|
</tr>
|
|
503
503
|
</tbody>
|
|
504
504
|
</table>
|
|
@@ -572,7 +572,7 @@ Body content in **Markdown** is supported.
|
|
|
572
572
|
</table>
|
|
573
573
|
|
|
574
574
|
<h4>Sub-tag reference</h4>
|
|
575
|
-
<p>These are child tags accepted by specific layouts
|
|
575
|
+
<p>These are child tags accepted by specific layouts - they are not shortcodes in their own right
|
|
576
576
|
and only render inside a matching parent card.</p>
|
|
577
577
|
<table class="table table-sm">
|
|
578
578
|
<thead>
|
|
@@ -586,7 +586,7 @@ Body content in **Markdown** is supported.
|
|
|
586
586
|
<tr>
|
|
587
587
|
<td><code>[feature]text[/feature]</code></td>
|
|
588
588
|
<td><code>pricing</code>, <code>feature-comparison</code></td>
|
|
589
|
-
<td><code>excluded</code> (flag, comparison only)
|
|
589
|
+
<td><code>excluded</code> (flag, comparison only) - renders as a cross instead of a tick
|
|
590
590
|
</td>
|
|
591
591
|
</tr>
|
|
592
592
|
<tr>
|
|
@@ -607,7 +607,7 @@ Body content in **Markdown** is supported.
|
|
|
607
607
|
<tr>
|
|
608
608
|
<td><code>[milestone done]text[/milestone]</code></td>
|
|
609
609
|
<td><code>progress-goal</code></td>
|
|
610
|
-
<td><code>done</code> (flag)
|
|
610
|
+
<td><code>done</code> (flag) - filled dot if present, hollow otherwise</td>
|
|
611
611
|
</tr>
|
|
612
612
|
</tbody>
|
|
613
613
|
</table>
|
|
@@ -681,7 +681,7 @@ Body content in **Markdown** is supported.
|
|
|
681
681
|
<td><code>field=value</code> or<br><code>f1=v1,f2=v2</code></td>
|
|
682
682
|
<td>Row filter (simple equality only, AND'd across comma-separated predicates). Example:
|
|
683
683
|
<code>where="tab=developers"</code> or
|
|
684
|
-
<code>where="tier=free,featured=true"</code>. No OR, no comparison operators
|
|
684
|
+
<code>where="tier=free,featured=true"</code>. No OR, no comparison operators -
|
|
685
685
|
use a saved View for anything more complex.
|
|
686
686
|
</td>
|
|
687
687
|
</tr>
|
|
@@ -703,7 +703,7 @@ Body content in **Markdown** is supported.
|
|
|
703
703
|
<tr>
|
|
704
704
|
<td><code>fields</code></td>
|
|
705
705
|
<td>comma-separated field names</td>
|
|
706
|
-
<td>Column filter
|
|
706
|
+
<td>Column filter - only these fields are shown (table/cards/list displays only).
|
|
707
707
|
</td>
|
|
708
708
|
</tr>
|
|
709
709
|
<tr>
|
|
@@ -776,7 +776,7 @@ Body content in **Markdown** is supported.
|
|
|
776
776
|
</tr>
|
|
777
777
|
<tr>
|
|
778
778
|
<td><code>[dconfig]{...}[/dconfig]</code></td>
|
|
779
|
-
<td>Declarative click handlers and class toggles
|
|
779
|
+
<td>Declarative click handlers and class toggles - no JavaScript needed</td>
|
|
780
780
|
</tr>
|
|
781
781
|
</tbody>
|
|
782
782
|
</table>
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
<tbody>
|
|
23
23
|
<tr>
|
|
24
24
|
<td><strong>Admin</strong></td>
|
|
25
|
-
<td>Full access
|
|
25
|
+
<td>Full access - users, plugins, settings, all content.</td>
|
|
26
26
|
</tr>
|
|
27
27
|
<tr>
|
|
28
28
|
<td><strong>Manager</strong></td>
|
|
@@ -42,11 +42,11 @@
|
|
|
42
42
|
<h3>Authentication</h3>
|
|
43
43
|
<p>The admin panel uses JWT Bearer tokens. Tokens are stored in the browser and automatically
|
|
44
44
|
refreshed.
|
|
45
|
-
Sessions expire according to <code>config/auth.json</code>
|
|
45
|
+
Sessions expire according to <code>config/auth.json</code> - default is 24 hours.</p>
|
|
46
46
|
|
|
47
47
|
<h3>Views & Actions</h3>
|
|
48
48
|
<p>Views and Actions are pro-only features that require a MongoDB connection.
|
|
49
|
-
Both roles
|
|
49
|
+
Both roles - Admin and Manager - can create, edit, and run Views and Actions.</p>
|
|
50
50
|
<table class="table table-sm">
|
|
51
51
|
<thead>
|
|
52
52
|
<tr>
|
|
@@ -14,16 +14,16 @@
|
|
|
14
14
|
<h3>Creating a View</h3>
|
|
15
15
|
<ol>
|
|
16
16
|
<li>Navigate to <strong>Data → Views</strong> and click <strong>New View</strong>.</li>
|
|
17
|
-
<li><strong>Source tab</strong>
|
|
17
|
+
<li><strong>Source tab</strong> - enter a title, choose the primary source collection, and select
|
|
18
18
|
the MongoDB connection.
|
|
19
19
|
</li>
|
|
20
|
-
<li><strong>Pipeline tab</strong>
|
|
20
|
+
<li><strong>Pipeline tab</strong> - add aggregation stages in order. Each stage has a type and a
|
|
21
21
|
JSON config object.
|
|
22
22
|
</li>
|
|
23
|
-
<li><strong>Display tab</strong>
|
|
23
|
+
<li><strong>Display tab</strong> - choose table or list mode, set page size, and optionally define
|
|
24
24
|
column definitions.
|
|
25
25
|
</li>
|
|
26
|
-
<li><strong>Access tab</strong>
|
|
26
|
+
<li><strong>Access tab</strong> - select which roles can access this view and whether it is
|
|
27
27
|
publicly accessible.
|
|
28
28
|
</li>
|
|
29
29
|
<li>Click <strong>Save View</strong>, then use <strong>Preview</strong> to execute and inspect the
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<div class="docs-body">
|
|
8
8
|
|
|
9
9
|
<p class="lead">
|
|
10
|
-
Task-by-task reference for running a Domma CMS site. Pick a topic below
|
|
10
|
+
Task-by-task reference for running a Domma CMS site. Pick a topic below - each opens as its own
|
|
11
11
|
page, and every topic is also listed under <strong>Documentation → Usage</strong> in the sidebar.
|
|
12
12
|
</p>
|
|
13
13
|
|