ghost 5.121.0 → 5.125.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/components/tryghost-i18n-5.125.0.tgz +0 -0
- package/core/built/admin/assets/admin-x-activitypub/admin-x-activitypub.js +14017 -14035
- package/core/built/admin/assets/admin-x-settings/{CodeEditorView-03f7aa4d.mjs → CodeEditorView-aba69ca9.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +1 -1
- package/core/built/admin/assets/admin-x-settings/{index-eea9098a.mjs → index-87586072.mjs} +4 -4
- package/core/built/admin/assets/admin-x-settings/{index-b0484a21.mjs → index-b3cfde97.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/{modals-85a92c66.mjs → modals-890d62ee.mjs} +1669 -1618
- package/core/built/admin/assets/{chunk.383.77dd3c8cbac5f464c6da.js → chunk.383.3dcd1102188f9d5e0467.js} +7 -7
- package/core/built/admin/assets/{chunk.524.22c1abc09947848be03d.js → chunk.524.941ec85306915cc99529.js} +6 -6
- package/core/built/admin/assets/{chunk.582.a7cbc2ce76922c8870bc.js → chunk.582.8630d65a7f549773e183.js} +7 -7
- package/core/built/admin/assets/{ghost-1c91950af9d6f9cee826820f056e0025.js → ghost-f727599c675fb8dac2cbfae7bec4d7cc.js} +141 -132
- package/core/built/admin/assets/posts/posts.js +71680 -41896
- package/core/built/admin/assets/stats/stats.js +35194 -35499
- package/core/built/admin/index.html +4 -4
- package/core/frontend/public/ghost-stats.min.js +3 -3
- package/core/frontend/src/ghost-stats/ghost-stats.js +0 -12
- package/core/server/api/endpoints/previews.js +25 -4
- package/core/server/api/endpoints/stats.js +50 -0
- package/core/server/data/importer/importers/data/SettingsImporter.js +1 -1
- package/core/server/data/migrations/versions/5.122/2025-06-03-19-32-57-change-default-for-newsletters-button-color.js +37 -0
- package/core/server/data/migrations/versions/5.124/2025-06-06-23-12-11-create-site-uuid-setting.js +16 -0
- package/core/server/data/schema/default-settings/default-settings.json +5 -0
- package/core/server/data/schema/schema.js +1 -1
- package/core/server/data/tinybird/endpoints/api_top_pages.pipe +1 -0
- package/core/server/data/tinybird/fixtures/analytics_events.ndjson +31 -31
- package/core/server/data/tinybird/pipes/mv_hits.pipe +51 -11
- package/core/server/data/tinybird/tests/api_top_pages.yaml +7 -0
- package/core/server/models/newsletter.js +1 -0
- package/core/server/models/settings.js +5 -2
- package/core/server/services/adapter-manager/AdapterManager.js +5 -1
- package/core/server/services/comments/CommentsServiceEmails.js +8 -6
- package/core/server/services/email-service/EmailRenderer.js +80 -23
- package/core/server/services/email-service/email-templates/partials/paywall.hbs +56 -33
- package/core/server/services/email-service/email-templates/partials/styles.hbs +129 -4
- package/core/server/services/email-service/email-templates/template.hbs +1 -1
- package/core/server/services/koenig/node-renderers/button-renderer.js +1 -21
- package/core/server/services/koenig/node-renderers/call-to-action-renderer.js +10 -44
- package/core/server/services/koenig/node-renderers/header-v2-renderer.js +15 -31
- package/core/server/services/koenig/node-renderers/horizontalrule-renderer.js +43 -2
- package/core/server/services/koenig/node-renderers/product-renderer.js +0 -1
- package/core/server/services/koenig/render-partials/email-button.js +127 -21
- package/core/server/services/koenig/render-utils/stylex.js +104 -0
- package/core/server/services/settings/settings-utils.js +39 -1
- package/core/server/services/stats/MembersStatsService.js +129 -5
- package/core/server/services/stats/PostsStatsService.js +281 -1
- package/core/server/services/stats/StatsService.js +23 -1
- package/core/server/services/stats/utils/tinybird.js +25 -5
- package/core/server/web/api/endpoints/admin/routes.js +2 -0
- package/package.json +13 -13
- package/tsconfig.tsbuildinfo +1 -1
- package/yarn.lock +851 -310
- package/components/tryghost-i18n-5.121.0.tgz +0 -0
- package/core/frontend/src/utils/session-storage.js +0 -68
- /package/core/built/admin/assets/{chunk.383.77dd3c8cbac5f464c6da.js.LICENSE.txt → chunk.383.3dcd1102188f9d5e0467.js.LICENSE.txt} +0 -0
|
Binary file
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility functions for session storage and ID management
|
|
3
|
-
*/
|
|
4
|
-
import { v4 as uuidv4 } from 'uuid';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Get a session ID from storage
|
|
8
|
-
*
|
|
9
|
-
* @param {string} key - The storage key
|
|
10
|
-
* @param {Storage} storage - The storage object (localStorage or sessionStorage)
|
|
11
|
-
* @returns {string|null} Session ID if valid, null otherwise
|
|
12
|
-
*/
|
|
13
|
-
export function getSessionId(key, storage) {
|
|
14
|
-
const serializedItem = storage.getItem(key);
|
|
15
|
-
|
|
16
|
-
if (!serializedItem) {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
let item = null;
|
|
21
|
-
try {
|
|
22
|
-
item = JSON.parse(serializedItem);
|
|
23
|
-
} catch (error) {
|
|
24
|
-
return null;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
if (typeof item !== 'object' || item === null) {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
const now = new Date();
|
|
32
|
-
if (now.getTime() > item.expiry) {
|
|
33
|
-
storage.removeItem(key);
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return item.value;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Set or create a session ID in storage
|
|
42
|
-
*
|
|
43
|
-
* @param {string} key - The storage key
|
|
44
|
-
* @param {Storage} storage - The storage object (localStorage or sessionStorage)
|
|
45
|
-
* @param {number} [ttlHours=4] - Time to live in hours
|
|
46
|
-
* @returns {string} The session ID
|
|
47
|
-
*/
|
|
48
|
-
export function setSessionId(key, storage, ttlHours = 4) {
|
|
49
|
-
const sessionId = getSessionId(key, storage) || uuidv4();
|
|
50
|
-
const now = new Date();
|
|
51
|
-
const item = {
|
|
52
|
-
value: sessionId,
|
|
53
|
-
expiry: now.getTime() + (ttlHours * 3600 * 1000)
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
storage.setItem(key, JSON.stringify(item));
|
|
57
|
-
return sessionId;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Get the appropriate storage object based on preference
|
|
62
|
-
*
|
|
63
|
-
* @param {string} method - Storage method ('localStorage' or 'sessionStorage')
|
|
64
|
-
* @returns {Storage} The storage object
|
|
65
|
-
*/
|
|
66
|
-
export function getStorageObject(method) {
|
|
67
|
-
return method === 'localStorage' ? localStorage : sessionStorage;
|
|
68
|
-
}
|