@raketa-cloud/admin 0.0.29 → 0.0.31
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/package.json +1 -1
- package/src/cloud/ArticleRevisions.js +30 -1
- package/src/cloud/Articles.js +22 -9
- package/src/cloud/EventRevisions.js +40 -1
- package/src/cloud/Events.js +32 -11
- package/src/cloud/PageRevisions.js +20 -1
- package/src/cloud/Pages.js +13 -7
- package/src/cloud/RaketaClient.js +76 -0
- package/src/handlers/article_revisions/CodeHandler.js +18 -34
- package/src/handlers/article_revisions/GeneralHandler.js +19 -38
- package/src/handlers/article_revisions/LocksHandler.js +11 -6
- package/src/handlers/article_revisions/MetaHandler.js +18 -34
- package/src/handlers/article_revisions/TagHandler.js +23 -29
- package/src/handlers/article_revisions/UnlocksHandler.js +1 -1
- package/src/handlers/article_revisions/VisualHandler.js +18 -28
- package/src/handlers/articles/ArticlesHandler.js +11 -25
- package/src/handlers/articles/DeletesHandler.js +4 -4
- package/src/handlers/articles/TranslationsHandler.js +30 -56
- package/src/handlers/articles/URLsHandler.js +7 -7
- package/src/handlers/event_revisions/CodeHandler.js +22 -36
- package/src/handlers/event_revisions/GeneralHandler.js +22 -42
- package/src/handlers/event_revisions/LocksHandler.js +7 -6
- package/src/handlers/event_revisions/MetaHandler.js +22 -36
- package/src/handlers/event_revisions/TagHandler.js +25 -29
- package/src/handlers/event_revisions/VisualHandler.js +22 -30
- package/src/handlers/events/DeletesHandler.js +4 -4
- package/src/handlers/events/EventsHandler.js +13 -27
- package/src/handlers/events/TranslationsHandler.js +35 -58
- package/src/handlers/events/URLsHandler.js +7 -7
- package/src/handlers/page_revisions/CodeHandler.js +8 -34
- package/src/handlers/page_revisions/GeneralHandler.js +10 -37
- package/src/handlers/page_revisions/LocksHandler.js +11 -6
- package/src/handlers/page_revisions/MetaHandler.js +8 -34
- package/src/handlers/page_revisions/TagHandler.js +16 -27
- package/src/handlers/page_revisions/VisualHandler.js +8 -28
- package/src/handlers/pages/DeletesHandler.js +4 -4
- package/src/handlers/pages/PagesHandler.js +7 -24
- package/src/handlers/pages/TranslationsHandler.js +23 -45
- package/src/handlers/pages/URLsHandler.js +7 -7
- package/src/helpers/FormBuilder.js +1 -2
- package/src/tests/handlers/RedirectsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/create_form.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/edit_form.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/index.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/show.test.js +1 -1
- package/src/tests/handlers/RedirectsHandler.test/update.test.js +1 -1
- package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/article_revisions/CodesHandler.test/edit_form.test.js +7 -7
- package/src/tests/handlers/article_revisions/CodesHandler.test/update.test.js +37 -19
- package/src/tests/handlers/article_revisions/GeneralHandler.test/edit_form.test.js +5 -11
- package/src/tests/handlers/article_revisions/GeneralHandler.test/update.test.js +36 -28
- package/src/tests/handlers/article_revisions/MetaHandler.test/edit_form.test.js +7 -8
- package/src/tests/handlers/article_revisions/MetaHandler.test/update.test.js +41 -25
- package/src/tests/handlers/article_revisions/PublishesHandler.test/create.test.js +2 -2
- package/src/tests/handlers/article_revisions/PublishesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/article_revisions/TagHandler.test/edit_form.test.js +10 -7
- package/src/tests/handlers/article_revisions/TagHandler.test/update.test.js +20 -14
- package/src/tests/handlers/article_revisions/VisualHandler.test.test/edit_form.test.js +7 -6
- package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +30 -19
- package/src/tests/handlers/article_revisions/WidgetHandler.test/show.test.js +2 -2
- package/src/tests/handlers/article_revisions/WidgetHandler.test/update.test.js +2 -2
- package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +53 -29
- package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +3 -3
- package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +2 -2
- package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +3 -3
- package/src/tests/handlers/articles/ClonesHandler.test/create.test.js +1 -1
- package/src/tests/handlers/articles/DeletesHandler.test/create.test.js +4 -4
- package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/articles/URLsHandler.test/create.test.js +6 -6
- package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/event_revisions/CodesHandler.test/edit_form.test.js +11 -7
- package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +43 -19
- package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/event_revisions/GeneralHandler.test/edit_form.test.js +7 -13
- package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +42 -32
- package/src/tests/handlers/event_revisions/MetaHandler.test/edit_form.test.js +11 -8
- package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +47 -25
- package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +2 -2
- package/src/tests/handlers/event_revisions/PublishesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/event_revisions/TagHandler.test/edit_form.test.js +14 -7
- package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +26 -14
- package/src/tests/handlers/event_revisions/VisualHandler.test.test/edit_form.test.js +11 -6
- package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +36 -19
- package/src/tests/handlers/event_revisions/WidgetHandler.test/show.test.js +2 -2
- package/src/tests/handlers/event_revisions/WidgetHandler.test/update.test.js +2 -2
- package/src/tests/handlers/events/ClonesHandler.test/create.test.js +1 -1
- package/src/tests/handlers/events/DeletesHandler.test/create.test.js +4 -4
- package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/events/EventsHandler.test/create.test.js +53 -37
- package/src/tests/handlers/events/EventsHandler.test/create_form.test.js +3 -3
- package/src/tests/handlers/events/EventsHandler.test/index.test.js +2 -2
- package/src/tests/handlers/events/EventsHandler.test/show.test.js +3 -3
- package/src/tests/handlers/events/URLsHandler.test/create.test.js +6 -6
- package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/page_revisions/CodesHandler.test/edit_form.test.js +10 -8
- package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +30 -17
- package/src/tests/handlers/page_revisions/GeneralHandler.test/edit_form.test.js +3 -11
- package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +38 -22
- package/src/tests/handlers/page_revisions/MetaHandler.test/edit_form.test.js +2 -8
- package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +37 -23
- package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +1 -1
- package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +2 -2
- package/src/tests/handlers/page_revisions/PublishesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +1 -1
- package/src/tests/handlers/page_revisions/TagHandler.test/edit_form.test.js +3 -7
- package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +11 -12
- package/src/tests/handlers/page_revisions/VisualHandler.test.test/edit_form.test.js +10 -7
- package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +23 -17
- package/src/tests/handlers/page_revisions/WidgetHandler.test/show.test.js +2 -2
- package/src/tests/handlers/page_revisions/WidgetHandler.test/update.test.js +2 -2
- package/src/tests/handlers/pages/ConesHandler.test/create.test.js +1 -1
- package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +4 -4
- package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +2 -2
- package/src/tests/handlers/pages/PagesHandler.test/create.test.js +50 -27
- package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +3 -3
- package/src/tests/handlers/pages/PagesHandler.test/index.test.js +2 -2
- package/src/tests/handlers/pages/PagesHandler.test/show.test.js +3 -3
- package/src/tests/handlers/pages/URLsHandler.test/create.test.js +6 -6
- package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +2 -2
- package/src/tests/support/factory.js +5 -2
- package/src/utils.js +12 -0
- package/src/views/_shared/_credentials_input.ejs +31 -0
- package/src/views/_shared/_layout_input.ejs +5 -0
- package/src/views/article_revisions/_nav.ejs +5 -5
- package/src/views/article_revisions/codes/edit_form.ejs +17 -6
- package/src/views/article_revisions/general/edit_form.ejs +10 -36
- package/src/views/article_revisions/locks/create_form.ejs +4 -4
- package/src/views/article_revisions/meta/edit_form.ejs +7 -7
- package/src/views/article_revisions/tags/edit_form.ejs +5 -5
- package/src/views/article_revisions/visuals/edit_form.ejs +5 -9
- package/src/views/articles/_form.ejs +6 -37
- package/src/views/articles/deletes/create_form.ejs +9 -9
- package/src/views/articles/translations/_form.ejs +14 -46
- package/src/views/articles/urls/create_form.ejs +5 -5
- package/src/views/event_revisions/_nav.ejs +5 -5
- package/src/views/event_revisions/codes/edit_form.ejs +17 -6
- package/src/views/event_revisions/general/edit_form.ejs +12 -38
- package/src/views/event_revisions/locks/create_form.ejs +4 -4
- package/src/views/event_revisions/meta/edit_form.ejs +7 -7
- package/src/views/event_revisions/tags/edit_form.ejs +5 -5
- package/src/views/event_revisions/visuals/edit_form.ejs +5 -9
- package/src/views/events/_form.ejs +8 -39
- package/src/views/events/deletes/create_form.ejs +9 -9
- package/src/views/events/translations/_form.ejs +16 -47
- package/src/views/events/urls/create_form.ejs +5 -5
- package/src/views/layouts/application.ejs +57 -35
- package/src/views/page_revisions/_nav.ejs +5 -5
- package/src/views/page_revisions/codes/edit_form.ejs +17 -6
- package/src/views/page_revisions/general/edit_form.ejs +8 -35
- package/src/views/page_revisions/locks/create_form.ejs +4 -4
- package/src/views/page_revisions/meta/edit_form.ejs +7 -7
- package/src/views/page_revisions/publishes/_form.ejs +9 -9
- package/src/views/page_revisions/tags/edit_form.ejs +5 -5
- package/src/views/page_revisions/visuals/edit_form.ejs +5 -9
- package/src/views/pages/_form.ejs +5 -36
- package/src/views/pages/deletes/create_form.ejs +9 -9
- package/src/views/pages/translations/_form.ejs +13 -45
- package/src/views/pages/urls/create_form.ejs +5 -5
|
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(articleID) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { parent_id: articleID },
|
|
12
12
|
locale: "en",
|
|
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(revisionID) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { id: revisionID },
|
|
12
12
|
locale: "en",
|
|
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(revision) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { parent_id: revision.id },
|
|
12
12
|
locale: "en",
|
|
@@ -15,7 +15,9 @@ function buildCtx(revision) {
|
|
|
15
15
|
|
|
16
16
|
describe("Article revision code settings", () => {
|
|
17
17
|
test("edit_form when a revision exists", async () => {
|
|
18
|
-
const revision = Factory.build("article_revision"
|
|
18
|
+
const revision = Factory.build("article_revision", {
|
|
19
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
20
|
+
});
|
|
19
21
|
const ctx = buildCtx(revision);
|
|
20
22
|
|
|
21
23
|
const mockFind = jest
|
|
@@ -28,11 +30,9 @@ describe("Article revision code settings", () => {
|
|
|
28
30
|
|
|
29
31
|
expect(result).toEqual({
|
|
30
32
|
assigns: {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
scripts: JSON.stringify([]),
|
|
35
|
-
structured_data: JSON.stringify({}),
|
|
33
|
+
resource: {
|
|
34
|
+
...revision,
|
|
35
|
+
publishAt: "2024-10-10T07:05:00",
|
|
36
36
|
},
|
|
37
37
|
errors: {},
|
|
38
38
|
_translations: [],
|
|
@@ -6,11 +6,11 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(revision, updateSettings) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { parent_id: revision.id },
|
|
12
12
|
resourceParams: {
|
|
13
|
-
|
|
13
|
+
resource: updateSettings,
|
|
14
14
|
},
|
|
15
15
|
locale: "en",
|
|
16
16
|
resourceConfig: {
|
|
@@ -22,11 +22,17 @@ function buildCtx(revision, updateSettings) {
|
|
|
22
22
|
|
|
23
23
|
describe("Article revision code settings", () => {
|
|
24
24
|
test("update successful", async () => {
|
|
25
|
-
const revision = Factory.build("article_revision"
|
|
25
|
+
const revision = Factory.build("article_revision", {
|
|
26
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
27
|
+
});
|
|
26
28
|
|
|
27
29
|
const updateSettings = {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
settings: {
|
|
31
|
+
codes: {
|
|
32
|
+
scripts: JSON.stringify([{ type: "bla" }]),
|
|
33
|
+
structured_data: JSON.stringify({ type: "article" }),
|
|
34
|
+
},
|
|
35
|
+
},
|
|
30
36
|
};
|
|
31
37
|
|
|
32
38
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -50,16 +56,16 @@ describe("Article revision code settings", () => {
|
|
|
50
56
|
title: revision.title,
|
|
51
57
|
visibility: revision.visibility,
|
|
52
58
|
publishAt: revision.publishAt,
|
|
53
|
-
widgets:
|
|
59
|
+
widgets: revision.widgets,
|
|
54
60
|
tags: revision.tags.map((t) => t.id),
|
|
55
61
|
categories: revision.categories.map((c) => c.id),
|
|
56
|
-
settings:
|
|
62
|
+
settings: {
|
|
57
63
|
...revision.settings,
|
|
58
64
|
codes: {
|
|
59
65
|
scripts: [{ type: "bla" }],
|
|
60
66
|
structured_data: { type: "article" },
|
|
61
67
|
},
|
|
62
|
-
}
|
|
68
|
+
},
|
|
63
69
|
});
|
|
64
70
|
|
|
65
71
|
expect(result).toEqual({
|
|
@@ -68,11 +74,17 @@ describe("Article revision code settings", () => {
|
|
|
68
74
|
});
|
|
69
75
|
|
|
70
76
|
test("update failed", async () => {
|
|
71
|
-
const revision = Factory.build("article_revision"
|
|
77
|
+
const revision = Factory.build("article_revision", {
|
|
78
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
79
|
+
});
|
|
72
80
|
|
|
73
81
|
const updateSettings = {
|
|
74
|
-
|
|
75
|
-
|
|
82
|
+
settings: {
|
|
83
|
+
codes: {
|
|
84
|
+
scripts: JSON.stringify([{ type: "bla" }]),
|
|
85
|
+
structured_data: JSON.stringify({ type: "article" }),
|
|
86
|
+
},
|
|
87
|
+
},
|
|
76
88
|
};
|
|
77
89
|
|
|
78
90
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -96,27 +108,33 @@ describe("Article revision code settings", () => {
|
|
|
96
108
|
title: revision.title,
|
|
97
109
|
visibility: revision.visibility,
|
|
98
110
|
publishAt: revision.publishAt,
|
|
99
|
-
widgets:
|
|
111
|
+
widgets: revision.widgets,
|
|
100
112
|
tags: revision.tags.map((t) => t.id),
|
|
101
113
|
categories: revision.categories.map((c) => c.id),
|
|
102
|
-
settings:
|
|
114
|
+
settings: {
|
|
103
115
|
...revision.settings,
|
|
104
116
|
codes: {
|
|
105
117
|
scripts: [{ type: "bla" }],
|
|
106
118
|
structured_data: { type: "article" },
|
|
107
119
|
},
|
|
108
|
-
}
|
|
120
|
+
},
|
|
109
121
|
});
|
|
110
122
|
|
|
111
123
|
expect(result).toEqual({
|
|
112
124
|
assigns: {
|
|
113
|
-
|
|
114
|
-
...
|
|
115
|
-
|
|
116
|
-
|
|
125
|
+
resource: {
|
|
126
|
+
...revision,
|
|
127
|
+
publishAt: "2024-10-10T07:05:00",
|
|
128
|
+
settings: {
|
|
129
|
+
...revision.settings,
|
|
130
|
+
codes: {
|
|
131
|
+
scripts: [{ type: "bla" }],
|
|
132
|
+
structured_data: { type: "article" },
|
|
133
|
+
},
|
|
134
|
+
},
|
|
117
135
|
},
|
|
118
136
|
errors: {
|
|
119
|
-
|
|
137
|
+
resource: { generalError: "some error" },
|
|
120
138
|
},
|
|
121
139
|
_translations: [],
|
|
122
140
|
},
|
|
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
articles: new Articles({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
articles: new Articles(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
locale: "en",
|
|
@@ -32,15 +32,9 @@ describe("Article revision genereal settings", () => {
|
|
|
32
32
|
|
|
33
33
|
expect(result).toEqual({
|
|
34
34
|
assigns: {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
title: revision.title,
|
|
39
|
-
slug: revision.slug,
|
|
40
|
-
visibility: revision.visibility,
|
|
41
|
-
publish_at: "2024-08-30T16:05:00",
|
|
42
|
-
username: revision.settings?.credentials?.user || "",
|
|
43
|
-
password: revision.settings?.credentials?.password || "",
|
|
35
|
+
resource: {
|
|
36
|
+
...revision,
|
|
37
|
+
publishAt: "2024-08-30T16:05:00",
|
|
44
38
|
},
|
|
45
39
|
errors: {},
|
|
46
40
|
visibilityOptions: ctx.client.articles.visibilityOptions(),
|
|
@@ -7,12 +7,12 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision, updateSettings) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
articles: new Articles({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
articles: new Articles(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
resourceParams: {
|
|
15
|
-
|
|
15
|
+
resource: updateSettings,
|
|
16
16
|
},
|
|
17
17
|
locale: "en",
|
|
18
18
|
resourceConfig: {
|
|
@@ -30,9 +30,13 @@ describe("Article revision general settings", () => {
|
|
|
30
30
|
title: "Updated title",
|
|
31
31
|
slug: "/updated-url",
|
|
32
32
|
visibility: "protected",
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
publishAt: "2024-08-30T19:05",
|
|
34
|
+
settings: {
|
|
35
|
+
credentials: {
|
|
36
|
+
user: "user",
|
|
37
|
+
password: "admin123!@#",
|
|
38
|
+
},
|
|
39
|
+
},
|
|
36
40
|
};
|
|
37
41
|
|
|
38
42
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -56,16 +60,13 @@ describe("Article revision general settings", () => {
|
|
|
56
60
|
title: updateSettings.title,
|
|
57
61
|
visibility: updateSettings.visibility,
|
|
58
62
|
publishAt: "2024-08-30T19:05:00Z",
|
|
59
|
-
widgets:
|
|
63
|
+
widgets: revision.widgets,
|
|
60
64
|
tags: revision.tags.map((t) => t.id),
|
|
61
65
|
categories: revision.categories.map((c) => c.id),
|
|
62
|
-
settings:
|
|
66
|
+
settings: {
|
|
63
67
|
...revision.settings,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
password: updateSettings.password,
|
|
67
|
-
},
|
|
68
|
-
}),
|
|
68
|
+
...updateSettings.settings,
|
|
69
|
+
},
|
|
69
70
|
});
|
|
70
71
|
|
|
71
72
|
expect(result).toEqual({
|
|
@@ -80,9 +81,13 @@ describe("Article revision general settings", () => {
|
|
|
80
81
|
title: "Updated title",
|
|
81
82
|
slug: "/updated-url",
|
|
82
83
|
visibility: "protected",
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
publishAt: "2024-08-30T19:05",
|
|
85
|
+
settings: {
|
|
86
|
+
credentials: {
|
|
87
|
+
user: "user",
|
|
88
|
+
password: "admin123!@#",
|
|
89
|
+
},
|
|
90
|
+
},
|
|
86
91
|
};
|
|
87
92
|
|
|
88
93
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -106,27 +111,30 @@ describe("Article revision general settings", () => {
|
|
|
106
111
|
title: updateSettings.title,
|
|
107
112
|
visibility: updateSettings.visibility,
|
|
108
113
|
publishAt: "2024-08-30T19:05:00Z",
|
|
109
|
-
widgets:
|
|
114
|
+
widgets: revision.widgets,
|
|
110
115
|
tags: revision.tags.map((t) => t.id),
|
|
111
116
|
categories: revision.categories.map((c) => c.id),
|
|
112
|
-
settings:
|
|
117
|
+
settings: {
|
|
113
118
|
...revision.settings,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
password: updateSettings.password,
|
|
117
|
-
},
|
|
118
|
-
}),
|
|
119
|
+
...updateSettings.settings,
|
|
120
|
+
},
|
|
119
121
|
});
|
|
120
122
|
|
|
121
123
|
expect(result).toEqual({
|
|
122
124
|
assigns: {
|
|
123
|
-
|
|
124
|
-
...
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
resource: {
|
|
126
|
+
...revision,
|
|
127
|
+
slug: updateSettings.slug,
|
|
128
|
+
title: updateSettings.title,
|
|
129
|
+
visibility: updateSettings.visibility,
|
|
130
|
+
publishAt: "2024-08-30T19:05:00",
|
|
131
|
+
settings: {
|
|
132
|
+
...revision.settings,
|
|
133
|
+
...updateSettings.settings,
|
|
134
|
+
},
|
|
127
135
|
},
|
|
128
136
|
errors: {
|
|
129
|
-
|
|
137
|
+
resource: { slug: "has invalid format" },
|
|
130
138
|
},
|
|
131
139
|
visibilityOptions: ctx.client.articles.visibilityOptions(),
|
|
132
140
|
_translations: [],
|
|
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(revision) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { parent_id: revision.id },
|
|
12
12
|
locale: "en",
|
|
@@ -15,7 +15,9 @@ function buildCtx(revision) {
|
|
|
15
15
|
|
|
16
16
|
describe("Article revision meta settings", () => {
|
|
17
17
|
test("edit_form when a revision exists", async () => {
|
|
18
|
-
const revision = Factory.build("article_revision"
|
|
18
|
+
const revision = Factory.build("article_revision", {
|
|
19
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
20
|
+
});
|
|
19
21
|
const ctx = buildCtx(revision);
|
|
20
22
|
|
|
21
23
|
const mockFind = jest
|
|
@@ -28,12 +30,9 @@ describe("Article revision meta settings", () => {
|
|
|
28
30
|
|
|
29
31
|
expect(result).toEqual({
|
|
30
32
|
assigns: {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
title: revision.settings.meta.title,
|
|
35
|
-
description: revision.settings.meta.description,
|
|
36
|
-
image: revision.settings.meta.image,
|
|
33
|
+
resource: {
|
|
34
|
+
...revision,
|
|
35
|
+
publishAt: "2024-10-10T07:05:00",
|
|
37
36
|
},
|
|
38
37
|
errors: {},
|
|
39
38
|
_translations: [],
|
|
@@ -6,11 +6,11 @@ import Factory from "../../../support/factory";
|
|
|
6
6
|
function buildCtx(revision, updateSettings) {
|
|
7
7
|
return {
|
|
8
8
|
client: {
|
|
9
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
9
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
10
10
|
},
|
|
11
11
|
params: { parent_id: revision.id },
|
|
12
12
|
resourceParams: {
|
|
13
|
-
|
|
13
|
+
resource: updateSettings,
|
|
14
14
|
},
|
|
15
15
|
locale: "en",
|
|
16
16
|
resourceConfig: {
|
|
@@ -22,12 +22,18 @@ function buildCtx(revision, updateSettings) {
|
|
|
22
22
|
|
|
23
23
|
describe("Article revision meta settings", () => {
|
|
24
24
|
test("update successful", async () => {
|
|
25
|
-
const revision = Factory.build("article_revision"
|
|
25
|
+
const revision = Factory.build("article_revision", {
|
|
26
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
27
|
+
});
|
|
26
28
|
|
|
27
29
|
const updateSettings = {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
settings: {
|
|
31
|
+
meta: {
|
|
32
|
+
title: "An open graph title",
|
|
33
|
+
description: "An open graph description",
|
|
34
|
+
image: JSON.stringify({ id: 42 }),
|
|
35
|
+
},
|
|
36
|
+
},
|
|
31
37
|
};
|
|
32
38
|
|
|
33
39
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -51,17 +57,16 @@ describe("Article revision meta settings", () => {
|
|
|
51
57
|
title: revision.title,
|
|
52
58
|
visibility: revision.visibility,
|
|
53
59
|
publishAt: revision.publishAt,
|
|
54
|
-
widgets:
|
|
60
|
+
widgets: revision.widgets,
|
|
55
61
|
tags: revision.tags.map((t) => t.id),
|
|
56
62
|
categories: revision.categories.map((c) => c.id),
|
|
57
|
-
settings:
|
|
63
|
+
settings: {
|
|
58
64
|
...revision.settings,
|
|
59
65
|
meta: {
|
|
60
|
-
|
|
61
|
-
description: updateSettings.description,
|
|
66
|
+
...updateSettings.settings.meta,
|
|
62
67
|
image: { id: 42 },
|
|
63
68
|
},
|
|
64
|
-
}
|
|
69
|
+
},
|
|
65
70
|
});
|
|
66
71
|
|
|
67
72
|
expect(result).toEqual({
|
|
@@ -70,12 +75,18 @@ describe("Article revision meta settings", () => {
|
|
|
70
75
|
});
|
|
71
76
|
|
|
72
77
|
test("update failed", async () => {
|
|
73
|
-
const revision = Factory.build("article_revision"
|
|
78
|
+
const revision = Factory.build("article_revision", {
|
|
79
|
+
publishAt: "2024-10-10T07:05:00Z",
|
|
80
|
+
});
|
|
74
81
|
|
|
75
82
|
const updateSettings = {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
83
|
+
settings: {
|
|
84
|
+
meta: {
|
|
85
|
+
title: "An open graph title",
|
|
86
|
+
description: "An open graph description",
|
|
87
|
+
image: JSON.stringify({ id: 42 }),
|
|
88
|
+
},
|
|
89
|
+
},
|
|
79
90
|
};
|
|
80
91
|
|
|
81
92
|
const ctx = buildCtx(revision, updateSettings);
|
|
@@ -99,28 +110,33 @@ describe("Article revision meta settings", () => {
|
|
|
99
110
|
title: revision.title,
|
|
100
111
|
visibility: revision.visibility,
|
|
101
112
|
publishAt: revision.publishAt,
|
|
102
|
-
widgets:
|
|
113
|
+
widgets: revision.widgets,
|
|
103
114
|
tags: revision.tags.map((t) => t.id),
|
|
104
115
|
categories: revision.categories.map((c) => c.id),
|
|
105
|
-
settings:
|
|
116
|
+
settings: {
|
|
106
117
|
...revision.settings,
|
|
107
118
|
meta: {
|
|
108
|
-
|
|
109
|
-
description: updateSettings.description,
|
|
119
|
+
...updateSettings.settings.meta,
|
|
110
120
|
image: { id: 42 },
|
|
111
121
|
},
|
|
112
|
-
}
|
|
122
|
+
},
|
|
113
123
|
});
|
|
114
124
|
|
|
115
125
|
expect(result).toEqual({
|
|
116
126
|
assigns: {
|
|
117
|
-
|
|
118
|
-
...
|
|
119
|
-
|
|
120
|
-
|
|
127
|
+
resource: {
|
|
128
|
+
...revision,
|
|
129
|
+
publishAt: "2024-10-10T07:05:00",
|
|
130
|
+
settings: {
|
|
131
|
+
...revision.settings,
|
|
132
|
+
meta: {
|
|
133
|
+
...updateSettings.settings.meta,
|
|
134
|
+
image: { id: 42 },
|
|
135
|
+
},
|
|
136
|
+
},
|
|
121
137
|
},
|
|
122
138
|
errors: {
|
|
123
|
-
|
|
139
|
+
resource: { generalError: "some error" },
|
|
124
140
|
},
|
|
125
141
|
_translations: [],
|
|
126
142
|
},
|
|
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision, resourceParams) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
articles: new Articles({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
articles: new Articles(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
resourceParams,
|
|
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
articles: new Articles({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
articles: new Articles(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
locale: "en",
|
|
@@ -4,7 +4,7 @@ import ArticleRevisions from "../../../../cloud/ArticleRevisions";
|
|
|
4
4
|
function buildCtx(articleID, version) {
|
|
5
5
|
return {
|
|
6
6
|
client: {
|
|
7
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
7
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
8
8
|
},
|
|
9
9
|
params: { parent_id: articleID },
|
|
10
10
|
resourceParams: { version },
|
|
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
tags: new Tags({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
tags: new Tags(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
locale: "en",
|
|
@@ -21,7 +21,10 @@ describe("Article revision tags settings", () => {
|
|
|
21
21
|
Factory.build("tag", { id: 42 }),
|
|
22
22
|
Factory.build("tag", { id: 69 }),
|
|
23
23
|
];
|
|
24
|
-
const revision = Factory.build("article_revision", {
|
|
24
|
+
const revision = Factory.build("article_revision", {
|
|
25
|
+
tags: [tags[0]],
|
|
26
|
+
publishAt: "2024-10-10T07:00:00Z",
|
|
27
|
+
});
|
|
25
28
|
const ctx = buildCtx(revision);
|
|
26
29
|
|
|
27
30
|
const mockFind = jest
|
|
@@ -41,10 +44,10 @@ describe("Article revision tags settings", () => {
|
|
|
41
44
|
|
|
42
45
|
expect(result).toEqual({
|
|
43
46
|
assigns: {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
tags:
|
|
47
|
+
resource: {
|
|
48
|
+
...revision,
|
|
49
|
+
publishAt: "2024-10-10T07:00:00",
|
|
50
|
+
tags: [tags[0].id],
|
|
48
51
|
},
|
|
49
52
|
tags: tags,
|
|
50
53
|
errors: {},
|
|
@@ -7,12 +7,12 @@ import Factory from "../../../support/factory";
|
|
|
7
7
|
function buildCtx(revision, updateSettings) {
|
|
8
8
|
return {
|
|
9
9
|
client: {
|
|
10
|
-
articleRevisions: new ArticleRevisions({}, "token"),
|
|
11
|
-
tags: new Tags({}, "token"),
|
|
10
|
+
articleRevisions: new ArticleRevisions(() => ({}), "token"),
|
|
11
|
+
tags: new Tags(() => ({}), "token"),
|
|
12
12
|
},
|
|
13
13
|
params: { parent_id: revision.id },
|
|
14
14
|
resourceParams: {
|
|
15
|
-
|
|
15
|
+
resource: updateSettings,
|
|
16
16
|
},
|
|
17
17
|
locale: "en",
|
|
18
18
|
resourceConfig: {
|
|
@@ -28,7 +28,10 @@ describe("Article revision tags settings", () => {
|
|
|
28
28
|
Factory.build("tag", { id: 42 }),
|
|
29
29
|
Factory.build("tag", { id: 69 }),
|
|
30
30
|
];
|
|
31
|
-
const revision = Factory.build("article_revision", {
|
|
31
|
+
const revision = Factory.build("article_revision", {
|
|
32
|
+
tags: [tags[0]],
|
|
33
|
+
publishAt: "2024-10-10T07:00:00Z",
|
|
34
|
+
});
|
|
32
35
|
|
|
33
36
|
const updateSettings = {
|
|
34
37
|
tags: [tags.map((t) => t.id)],
|
|
@@ -55,10 +58,10 @@ describe("Article revision tags settings", () => {
|
|
|
55
58
|
title: revision.title,
|
|
56
59
|
visibility: revision.visibility,
|
|
57
60
|
publishAt: revision.publishAt,
|
|
58
|
-
widgets:
|
|
61
|
+
widgets: revision.widgets,
|
|
59
62
|
tags: updateSettings.tags,
|
|
60
63
|
categories: revision.categories.map((c) => c.id),
|
|
61
|
-
settings:
|
|
64
|
+
settings: revision.settings,
|
|
62
65
|
});
|
|
63
66
|
|
|
64
67
|
expect(result).toEqual({
|
|
@@ -71,7 +74,10 @@ describe("Article revision tags settings", () => {
|
|
|
71
74
|
Factory.build("tag", { id: 42 }),
|
|
72
75
|
Factory.build("tag", { id: 69 }),
|
|
73
76
|
];
|
|
74
|
-
const revision = Factory.build("article_revision", {
|
|
77
|
+
const revision = Factory.build("article_revision", {
|
|
78
|
+
tags: [tags[0]],
|
|
79
|
+
publishAt: "2024-10-10T07:00:00Z",
|
|
80
|
+
});
|
|
75
81
|
|
|
76
82
|
const updateSettings = {
|
|
77
83
|
tags: [tags.map((t) => t.id)],
|
|
@@ -104,22 +110,22 @@ describe("Article revision tags settings", () => {
|
|
|
104
110
|
title: revision.title,
|
|
105
111
|
visibility: revision.visibility,
|
|
106
112
|
publishAt: revision.publishAt,
|
|
107
|
-
widgets:
|
|
113
|
+
widgets: revision.widgets,
|
|
108
114
|
tags: updateSettings.tags,
|
|
109
115
|
categories: revision.categories.map((c) => c.id),
|
|
110
|
-
settings:
|
|
116
|
+
settings: revision.settings,
|
|
111
117
|
});
|
|
112
118
|
expect(mockTags).toHaveBeenCalledWith("en");
|
|
113
119
|
|
|
114
120
|
expect(result).toEqual({
|
|
115
121
|
assigns: {
|
|
116
|
-
|
|
117
|
-
...
|
|
118
|
-
|
|
119
|
-
|
|
122
|
+
resource: {
|
|
123
|
+
...revision,
|
|
124
|
+
tags: updateSettings.tags,
|
|
125
|
+
publishAt: "2024-10-10T07:00:00",
|
|
120
126
|
},
|
|
121
127
|
errors: {
|
|
122
|
-
|
|
128
|
+
resource: { generalError: "some error" },
|
|
123
129
|
},
|
|
124
130
|
tags: tags,
|
|
125
131
|
_translations: [],
|