maglevcms 1.4.0 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/components/maglev/content/image.rb +1 -1
- data/app/controllers/maglev/api/assets_controller.rb +3 -3
- data/app/controllers/maglev/application_controller.rb +5 -0
- data/app/controllers/maglev/assets_controller.rb +1 -1
- data/app/controllers/maglev/editor_controller.rb +12 -3
- data/app/frontend/admin/controllers/screenshot_controller.js +5 -1
- data/app/frontend/editor/App.vue +1 -1
- data/app/frontend/editor/components/dynamic-form/dynamic-input.vue +17 -18
- data/app/frontend/editor/components/dynamic-form/index.vue +1 -1
- data/app/frontend/editor/components/header-nav/device-toggler.vue +1 -1
- data/app/frontend/editor/components/header-nav/index.vue +3 -3
- data/app/frontend/editor/components/header-nav/locale-toggler/index.vue +4 -4
- data/app/frontend/editor/components/header-nav/preview-toggler.vue +3 -3
- data/app/frontend/editor/components/header-nav/publish-button.vue +3 -3
- data/app/frontend/editor/components/header-nav/save-button.vue +1 -1
- data/app/frontend/editor/components/icon-library/index.vue +1 -1
- data/app/frontend/editor/components/image-library/index.vue +2 -2
- data/app/frontend/editor/components/image-library/list-item.vue +1 -1
- data/app/frontend/editor/components/image-library/uploader.vue +1 -1
- data/app/frontend/editor/components/kit/accordion.vue +8 -3
- data/app/frontend/editor/components/kit/checkbox-input.vue +1 -1
- data/app/frontend/editor/components/kit/collection-item-input.vue +7 -4
- data/app/frontend/editor/components/kit/color-input/core-input.vue +17 -12
- data/app/frontend/editor/components/kit/color-input/preset-button.vue +14 -10
- data/app/frontend/editor/components/kit/color-input/preset-dropdown.vue +8 -7
- data/app/frontend/editor/components/kit/color-input.vue +2 -4
- data/app/frontend/editor/components/kit/confirmation-button.vue +3 -3
- data/app/frontend/editor/components/kit/divider.vue +4 -4
- data/app/frontend/editor/components/kit/dropdown.vue +1 -1
- data/app/frontend/editor/components/kit/hint.vue +3 -3
- data/app/frontend/editor/components/kit/icon-input.vue +4 -4
- data/app/frontend/editor/components/kit/icon.vue +7 -2
- data/app/frontend/editor/components/kit/image-input.vue +5 -5
- data/app/frontend/editor/components/kit/index.js +25 -25
- data/app/frontend/editor/components/kit/link-input.vue +6 -6
- data/app/frontend/editor/components/kit/list-item-button.vue +2 -2
- data/app/frontend/editor/components/kit/modal-root.vue +3 -3
- data/app/frontend/editor/components/kit/modal.vue +2 -2
- data/app/frontend/editor/components/kit/page-icon.vue +2 -2
- data/app/frontend/editor/components/kit/pagination/index.vue +3 -3
- data/app/frontend/editor/components/kit/rich-text-input/block-button.vue +10 -10
- data/app/frontend/editor/components/kit/rich-text-input/menu-button.vue +1 -1
- data/app/frontend/editor/components/kit/rich-text-input/table-button.vue +18 -12
- data/app/frontend/editor/components/kit/rich-text-input.vue +1 -1
- data/app/frontend/editor/components/kit/search-input.vue +3 -3
- data/app/frontend/editor/components/kit/select-input.vue +19 -5
- data/app/frontend/editor/components/kit/simple-select.vue +1 -1
- data/app/frontend/editor/components/kit/submit-button.vue +4 -4
- data/app/frontend/editor/components/kit/tabs.vue +2 -2
- data/app/frontend/editor/components/kit/text-input.vue +1 -1
- data/app/frontend/editor/components/kit/textarea-input.vue +1 -1
- data/app/frontend/editor/components/link-picker/email.vue +1 -1
- data/app/frontend/editor/components/link-picker/index.vue +1 -1
- data/app/frontend/editor/components/link-picker/page.vue +5 -5
- data/app/frontend/editor/components/link-picker/url.vue +2 -2
- data/app/frontend/editor/components/page/edit.vue +3 -3
- data/app/frontend/editor/components/page/form/main.vue +3 -3
- data/app/frontend/editor/components/page/form/seo.vue +5 -5
- data/app/frontend/editor/components/page/list/list-item.vue +12 -12
- data/app/frontend/editor/components/page/new.vue +3 -3
- data/app/frontend/editor/components/section-block-pane/index.vue +1 -1
- data/app/frontend/editor/components/section-block-pane/setting-list.vue +1 -1
- data/app/frontend/editor/components/section-highlighter/bottom-actions.vue +1 -1
- data/app/frontend/editor/components/section-highlighter/top-left-actions.vue +7 -3
- data/app/frontend/editor/components/section-highlighter/top-right-actions.vue +9 -6
- data/app/frontend/editor/components/section-list/list-item.vue +12 -5
- data/app/frontend/editor/components/section-pane/block-list/list-item.vue +3 -3
- data/app/frontend/editor/components/section-pane/block-list/new-block-button.vue +4 -4
- data/app/frontend/editor/components/section-pane/block-tree/new-nested-block-button.vue +4 -4
- data/app/frontend/editor/components/section-pane/block-tree/tree-node.vue +2 -2
- data/app/frontend/editor/components/section-pane/index.vue +2 -2
- data/app/frontend/editor/components/section-pane/setting-list.vue +1 -1
- data/app/frontend/editor/components/sidebar-nav.vue +5 -5
- data/app/frontend/editor/components/style-pane/index.vue +1 -1
- data/app/frontend/editor/components/theme-section-list/index.vue +2 -2
- data/app/frontend/editor/components/theme-section-list/list-item.vue +1 -1
- data/app/frontend/editor/layouts/slide-pane.vue +1 -1
- data/app/frontend/editor/locales/index.js +5 -2
- data/app/frontend/editor/misc/utils.js +10 -7
- data/app/frontend/editor/mixins/global.js +1 -1
- data/app/frontend/editor/services/api.js +2 -2
- data/app/frontend/editor/services/image.js +6 -2
- data/app/frontend/editor/services/section.js +1 -0
- data/app/frontend/editor/store/actions/page.js +1 -1
- data/app/frontend/editor/store/getters.js +1 -1
- data/app/frontend/editor/views/content-pane.vue +9 -5
- data/app/frontend/editor/views/page-preview.vue +5 -1
- data/app/frontend/editor/views/pages/index.vue +1 -1
- data/app/frontend/live-preview-client/rails.js +1 -1
- data/app/frontend/live-preview-client/run-scripts.js +22 -24
- data/app/models/maglev/asset.rb +14 -0
- data/app/models/maglev/page/search_concern.rb +2 -1
- data/app/models/maglev/page.rb +18 -0
- data/app/models/maglev/page_path.rb +17 -0
- data/app/models/maglev/site.rb +24 -0
- data/db/migrate/20200824085207_create_maglev_sites.rb +2 -1
- data/db/migrate/20200824104648_create_maglev_pages.rb +2 -1
- data/db/migrate/20201206172020_create_maglev_assets.rb +2 -1
- data/db/migrate/20210830085101_create_maglev_page_paths.rb +3 -2
- data/lib/maglev/engine.rb +1 -0
- data/lib/maglev/migration.rb +20 -0
- data/lib/maglev/version.rb +1 -1
- data/lib/maglev.rb +7 -0
- data/lib/tasks/maglev_tasks.rake +1 -1
- data/package.json +21 -17
- data/{postcss.config.js → postcss.config.cjs} +1 -1
- data/yarn.lock +1171 -1009
- metadata +23 -9
- data/.eslintrc.js +0 -49
@@ -8,17 +8,17 @@
|
|
8
8
|
<span v-if="isDefaultState" data-button-label>{{ defaultLabel }}</span>
|
9
9
|
|
10
10
|
<span v-if="isInProgressState" class="flex items-center justify-center">
|
11
|
-
<icon name="ri-loader-4-line" spin color="#fff" key="progress" />
|
11
|
+
<uikit-icon name="ri-loader-4-line" spin color="#fff" key="progress" />
|
12
12
|
<span class="ml-2" data-button-label>{{ inProgressLabel }}</span>
|
13
13
|
</span>
|
14
14
|
|
15
15
|
<span v-if="isSuccessState" class="flex items-center justify-center">
|
16
|
-
<icon name="ri-check-line" color="#fff" key="success" />
|
16
|
+
<uikit-icon name="ri-check-line" color="#fff" key="success" />
|
17
17
|
<span class="ml-2" data-button-label>{{ successLabel }}</span>
|
18
18
|
</span>
|
19
19
|
|
20
20
|
<span v-if="isFailState" class="flex items-center justify-center">
|
21
|
-
<icon name="ri-alert-line" color="#fff" key="fail" />
|
21
|
+
<uikit-icon name="ri-alert-line" color="#fff" key="fail" />
|
22
22
|
<span class="ml-2" data-button-label>{{ failLabel }}</span>
|
23
23
|
</span>
|
24
24
|
</button>
|
@@ -26,7 +26,7 @@
|
|
26
26
|
|
27
27
|
<script>
|
28
28
|
export default {
|
29
|
-
name: '
|
29
|
+
name: 'UIKitSubmitButton',
|
30
30
|
props: {
|
31
31
|
type: {
|
32
32
|
type: String,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
v-for="(tab, index) in tabs"
|
9
9
|
:key="`tab-${index}`"
|
10
10
|
type="button"
|
11
|
-
class="
|
11
|
+
class="py-1 pb-0 px-4 block hover:text-editor-primary focus:outline-none border-b-2 z-10"
|
12
12
|
:class="{
|
13
13
|
'text-gray-500 border-transparent': index !== currentIndex,
|
14
14
|
'text-editor-primary font-medium border-editor-primary':
|
@@ -43,7 +43,7 @@
|
|
43
43
|
|
44
44
|
<script>
|
45
45
|
export default {
|
46
|
-
name: '
|
46
|
+
name: 'UIKitTabs',
|
47
47
|
props: {
|
48
48
|
tabs: { type: Array, default: () => [] },
|
49
49
|
firstIndex: { type: Number, default: 0 },
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div>
|
3
|
-
<select-input
|
3
|
+
<uikit-select-input
|
4
4
|
:label="$t(`linkPicker.page.input.label`)"
|
5
5
|
:placeholder="$t(`linkPicker.page.input.placeholder`)"
|
6
6
|
:searchEnabled="true"
|
@@ -23,10 +23,10 @@
|
|
23
23
|
</span>
|
24
24
|
</div>
|
25
25
|
</template>
|
26
|
-
</select-input>
|
26
|
+
</uikit-select-input>
|
27
27
|
|
28
28
|
<div class="mt-6" v-if="hasPageSections">
|
29
|
-
<select-input
|
29
|
+
<uikit-select-input
|
30
30
|
:label="$t(`linkPicker.page.sectionInput.label`)"
|
31
31
|
:placeholder="$t(`linkPicker.page.sectionInput.placeholder`)"
|
32
32
|
:emptyLabel="$t(`linkPicker.page.sectionInput.emptyLabel`)"
|
@@ -42,10 +42,10 @@
|
|
42
42
|
<span class="font-bold">{{ item.name }}</span>
|
43
43
|
</div>
|
44
44
|
</template>
|
45
|
-
</select-input>
|
45
|
+
</uikit-select-input>
|
46
46
|
</div>
|
47
47
|
|
48
|
-
<checkbox-input
|
48
|
+
<uikit-checkbox-input
|
49
49
|
:label="$t(`linkPicker.shared.newWindowInput.label`)"
|
50
50
|
name="openNewWindow"
|
51
51
|
class="mt-6"
|
@@ -1,12 +1,12 @@
|
|
1
1
|
<template>
|
2
2
|
<div>
|
3
|
-
<text-input
|
3
|
+
<uikit-text-input
|
4
4
|
:label="$t(`linkPicker.url.input.label`)"
|
5
5
|
name="href"
|
6
6
|
v-model="hrefInput"
|
7
7
|
/>
|
8
8
|
|
9
|
-
<checkbox-input
|
9
|
+
<uikit-checkbox-input
|
10
10
|
:label="$t(`linkPicker.shared.newWindowInput.label`)"
|
11
11
|
name="openNewWindow"
|
12
12
|
class="mt-6"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="flex flex-col flex-1 overflow-y-hidden">
|
3
|
-
<tabs
|
3
|
+
<uikit-tabs
|
4
4
|
:tabs="tabs"
|
5
5
|
:otherProps="{ page: editedPage, errors }"
|
6
6
|
sharedClass="px-1/2"
|
@@ -8,7 +8,7 @@
|
|
8
8
|
@on-change="onChange"
|
9
9
|
/>
|
10
10
|
<div class="mt-auto">
|
11
|
-
<submit-button
|
11
|
+
<uikit-submit-button
|
12
12
|
type="button"
|
13
13
|
class="big-submit-button"
|
14
14
|
defaultColorClass="bg-editor-primary"
|
@@ -17,7 +17,7 @@
|
|
17
17
|
@click="updatePage"
|
18
18
|
>
|
19
19
|
{{ $t('page.edit.submitButton') }}
|
20
|
-
</submit-button>
|
20
|
+
</uikit-submit-button>
|
21
21
|
<button
|
22
22
|
class="cancel-button"
|
23
23
|
v-if="insideModal"
|
@@ -1,13 +1,13 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="mt-2 grid grid-cols-1 gap-4">
|
3
|
-
<text-input
|
3
|
+
<uikit-text-input
|
4
4
|
:label="$t(`page.form.title`)"
|
5
5
|
name="title"
|
6
6
|
v-model="titleInput"
|
7
7
|
:error="errors.title"
|
8
8
|
/>
|
9
9
|
|
10
|
-
<text-input
|
10
|
+
<uikit-text-input
|
11
11
|
:label="$t(`page.form.path`)"
|
12
12
|
name="path"
|
13
13
|
v-model="pathInput"
|
@@ -15,7 +15,7 @@
|
|
15
15
|
v-if="!isPageIndex || !page.id"
|
16
16
|
/>
|
17
17
|
|
18
|
-
<checkbox-input
|
18
|
+
<uikit-checkbox-input
|
19
19
|
:label="$t(`page.form.visible`)"
|
20
20
|
:placeholder="$t(`page.form.visiblePlaceholder`)"
|
21
21
|
name="visible"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="mt-2 grid grid-cols-1 gap-4">
|
3
|
-
<textarea-input
|
3
|
+
<uikit-textarea-input
|
4
4
|
:label="$t(`page.form.seoTitle`)"
|
5
5
|
name="seo-title"
|
6
6
|
:max-length="60"
|
@@ -8,7 +8,7 @@
|
|
8
8
|
v-model="seoTitleInput"
|
9
9
|
/>
|
10
10
|
|
11
|
-
<textarea-input
|
11
|
+
<uikit-textarea-input
|
12
12
|
:label="$t(`page.form.metaDescription`)"
|
13
13
|
name="meta-description"
|
14
14
|
:max-length="155"
|
@@ -16,7 +16,7 @@
|
|
16
16
|
v-model="metaDescriptionInput"
|
17
17
|
/>
|
18
18
|
|
19
|
-
<textarea-input
|
19
|
+
<uikit-textarea-input
|
20
20
|
:label="$t(`page.form.ogTitle`)"
|
21
21
|
name="og-title"
|
22
22
|
:max-length="60"
|
@@ -24,7 +24,7 @@
|
|
24
24
|
v-model="ogTitleInput"
|
25
25
|
/>
|
26
26
|
|
27
|
-
<textarea-input
|
27
|
+
<uikit-textarea-input
|
28
28
|
:label="$t(`page.form.ogDescription`)"
|
29
29
|
name="og-description"
|
30
30
|
:max-length="200"
|
@@ -32,7 +32,7 @@
|
|
32
32
|
v-model="ogDescriptionInput"
|
33
33
|
/>
|
34
34
|
|
35
|
-
<image-input
|
35
|
+
<uikit-image-input
|
36
36
|
:label="$t(`page.form.ogImageUrl`)"
|
37
37
|
name="og-image-url"
|
38
38
|
:hasAltText="false"
|
@@ -6,9 +6,9 @@
|
|
6
6
|
:to="{ name: 'editPage', params: { pageId: page.path } }"
|
7
7
|
class="flex flex-grow items-center text-gray-800"
|
8
8
|
>
|
9
|
-
<page-icon :page="page" />
|
9
|
+
<uikit-page-icon :page="page" />
|
10
10
|
<span class="ml-4">{{ page.title }}</span>
|
11
|
-
<icon
|
11
|
+
<uikit-icon
|
12
12
|
class="ml-4 text-gray-400"
|
13
13
|
name="ri-eye-off-line"
|
14
14
|
size="1rem"
|
@@ -16,12 +16,12 @@
|
|
16
16
|
/>
|
17
17
|
</router-link>
|
18
18
|
<div class="ml-auto pr-2 relative">
|
19
|
-
<dropdown v-on="$listeners">
|
19
|
+
<uikit-dropdown v-on="$listeners">
|
20
20
|
<template v-slot:button>
|
21
21
|
<button
|
22
22
|
class="px-1 py-1 rounded-full bg-editor-primary bg-opacity-0 hover:text-gray-900 text-gray-600 focus:outline-none hover:bg-opacity-10 transition-colors duration-200"
|
23
23
|
>
|
24
|
-
<icon name="ri-more-2-fill" size="1.25rem" />
|
24
|
+
<uikit-icon name="ri-more-2-fill" size="1.25rem" />
|
25
25
|
</button>
|
26
26
|
</template>
|
27
27
|
<template v-slot:content>
|
@@ -30,7 +30,7 @@
|
|
30
30
|
class="flex items-center px-4 py-4 hover:bg-gray-100 transition-colors duration-200 focus:outline-none"
|
31
31
|
@click.stop="openEditPageModal"
|
32
32
|
>
|
33
|
-
<icon name="ri-settings-5-line" />
|
33
|
+
<uikit-icon name="ri-settings-5-line" />
|
34
34
|
<span class="ml-2 whitespace-nowrap">{{
|
35
35
|
$t('page.list.item.edit')
|
36
36
|
}}</span>
|
@@ -39,7 +39,7 @@
|
|
39
39
|
class="flex items-center px-4 py-4 hover:bg-gray-100 transition-colors duration-200 focus:outline-none"
|
40
40
|
@click.stop="clonePage"
|
41
41
|
>
|
42
|
-
<icon name="ri-file-copy-line" />
|
42
|
+
<uikit-icon name="ri-file-copy-line" />
|
43
43
|
<span class="ml-2">{{ $t('page.list.item.clone') }}</span>
|
44
44
|
</button>
|
45
45
|
<button
|
@@ -47,7 +47,7 @@
|
|
47
47
|
@click.stop="hidePage"
|
48
48
|
v-if="isVisible"
|
49
49
|
>
|
50
|
-
<icon name="ri-eye-off-line" />
|
50
|
+
<uikit-icon name="ri-eye-off-line" />
|
51
51
|
<span class="ml-2">{{ $t('page.list.item.hide') }}</span>
|
52
52
|
</button>
|
53
53
|
<button
|
@@ -55,10 +55,10 @@
|
|
55
55
|
@click.stop="showPage"
|
56
56
|
v-if="!isVisible"
|
57
57
|
>
|
58
|
-
<icon name="ri-eye-line" />
|
58
|
+
<uikit-icon name="ri-eye-line" />
|
59
59
|
<span class="ml-2">{{ $t('page.list.item.show') }}</span>
|
60
60
|
</button>
|
61
|
-
<confirmation-button
|
61
|
+
<uikit-confirmation-button
|
62
62
|
@confirm="deletePage"
|
63
63
|
ref="deleteDropdown"
|
64
64
|
v-if="!isIndexPage"
|
@@ -66,13 +66,13 @@
|
|
66
66
|
<button
|
67
67
|
class="flex items-center w-full px-4 py-4 hover:bg-gray-100 transition-colors duration-200 focus:outline-none"
|
68
68
|
>
|
69
|
-
<icon name="delete-bin-line" />
|
69
|
+
<uikit-icon name="delete-bin-line" />
|
70
70
|
<span class="ml-2">{{ $t('page.list.item.delete') }}</span>
|
71
71
|
</button>
|
72
|
-
</confirmation-button>
|
72
|
+
</uikit-confirmation-button>
|
73
73
|
</div>
|
74
74
|
</template>
|
75
|
-
</dropdown>
|
75
|
+
</uikit-dropdown>
|
76
76
|
</div>
|
77
77
|
</div>
|
78
78
|
</template>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="flex flex-col flex-1 overflow-y-hidden">
|
3
|
-
<tabs
|
3
|
+
<uikit-tabs
|
4
4
|
:tabs="tabs"
|
5
5
|
:otherProps="{ page, errors }"
|
6
6
|
sharedClass="px-1/2"
|
@@ -8,7 +8,7 @@
|
|
8
8
|
@on-change="onChange"
|
9
9
|
/>
|
10
10
|
<div class="mt-auto">
|
11
|
-
<submit-button
|
11
|
+
<uikit-submit-button
|
12
12
|
type="button"
|
13
13
|
class="big-submit-button"
|
14
14
|
defaultColorClass="bg-editor-primary"
|
@@ -17,7 +17,7 @@
|
|
17
17
|
@click="createPage"
|
18
18
|
>
|
19
19
|
{{ $t('page.new.submitButton') }}
|
20
|
-
</submit-button>
|
20
|
+
</uikit-submit-button>
|
21
21
|
<button class="cancel-button" @click="$emit('on-close')">
|
22
22
|
{{ $t('page.new.cancelButton') }}
|
23
23
|
</button>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
@click="moveHoveredSection('up')"
|
13
13
|
v-if="displayMoveArrows"
|
14
14
|
>
|
15
|
-
<icon name="arrow-up-s-line" />
|
15
|
+
<uikit-icon name="arrow-up-s-line" />
|
16
16
|
</button>
|
17
17
|
<button
|
18
18
|
type="button"
|
@@ -20,7 +20,7 @@
|
|
20
20
|
@click="moveHoveredSection('down')"
|
21
21
|
v-if="displayMoveArrows"
|
22
22
|
>
|
23
|
-
<icon name="arrow-down-s-line" />
|
23
|
+
<uikit-icon name="arrow-down-s-line" />
|
24
24
|
</button>
|
25
25
|
</div>
|
26
26
|
</template>
|
@@ -35,7 +35,11 @@ export default {
|
|
35
35
|
},
|
36
36
|
computed: {
|
37
37
|
name() {
|
38
|
-
return
|
38
|
+
return (
|
39
|
+
this.$st(
|
40
|
+
`${this.currentI18nScope}.sections.${this.sectionType}.name`,
|
41
|
+
) || this.hoveredSection.name
|
42
|
+
)
|
39
43
|
},
|
40
44
|
sectionType() {
|
41
45
|
return this.hoveredSection.definition.id
|
@@ -15,7 +15,7 @@
|
|
15
15
|
@keypress.enter="navigate"
|
16
16
|
class="ml-2 button"
|
17
17
|
>
|
18
|
-
<icon name="ri-pencil-line" />
|
18
|
+
<uikit-icon name="ri-pencil-line" />
|
19
19
|
</button>
|
20
20
|
</router-link>
|
21
21
|
|
@@ -35,7 +35,7 @@
|
|
35
35
|
@keypress.enter="navigate"
|
36
36
|
class="ml-2 button"
|
37
37
|
>
|
38
|
-
<icon name="ri-play-list-add-line" />
|
38
|
+
<uikit-icon name="ri-play-list-add-line" />
|
39
39
|
</button>
|
40
40
|
</router-link>
|
41
41
|
|
@@ -55,15 +55,18 @@
|
|
55
55
|
@keypress.enter="navigate"
|
56
56
|
class="ml-2 button"
|
57
57
|
>
|
58
|
-
<icon name="ri-settings-5-line" />
|
58
|
+
<uikit-icon name="ri-settings-5-line" />
|
59
59
|
</button>
|
60
60
|
</router-link>
|
61
61
|
|
62
|
-
<confirmation-button
|
62
|
+
<uikit-confirmation-button
|
63
|
+
class="ml-2 pointer-events-auto"
|
64
|
+
@confirm="remove"
|
65
|
+
>
|
63
66
|
<div class="button">
|
64
|
-
<icon name="delete-bin-line" />
|
67
|
+
<uikit-icon name="delete-bin-line" />
|
65
68
|
</div>
|
66
|
-
</confirmation-button>
|
69
|
+
</uikit-confirmation-button>
|
67
70
|
</div>
|
68
71
|
</template>
|
69
72
|
|
@@ -8,13 +8,16 @@
|
|
8
8
|
>
|
9
9
|
<span>{{ name | truncate(40) }}</span>
|
10
10
|
</router-link>
|
11
|
-
<confirmation-button
|
11
|
+
<uikit-confirmation-button
|
12
|
+
@confirm="removeSection(section.id)"
|
13
|
+
v-on="$listeners"
|
14
|
+
>
|
12
15
|
<button
|
13
16
|
class="px-1 py-1 rounded-full bg-gray-600 bg-opacity-0 hover:text-gray-900 text-gray-600 focus:outline-none hover:bg-opacity-10 transition-colors duration-200"
|
14
17
|
>
|
15
|
-
<icon name="ri-close-line" size="1.25rem" />
|
18
|
+
<uikit-icon name="ri-close-line" size="1.25rem" />
|
16
19
|
</button>
|
17
|
-
</confirmation-button>
|
20
|
+
</uikit-confirmation-button>
|
18
21
|
</div>
|
19
22
|
</template>
|
20
23
|
|
@@ -28,8 +31,12 @@ export default {
|
|
28
31
|
},
|
29
32
|
computed: {
|
30
33
|
name() {
|
31
|
-
return
|
32
|
-
|
34
|
+
return (
|
35
|
+
this.$st(
|
36
|
+
`${this.currentI18nScope}.sections.${this.section.type}.name`,
|
37
|
+
) || this.section.name
|
38
|
+
)
|
39
|
+
},
|
33
40
|
},
|
34
41
|
methods: {
|
35
42
|
...mapActions(['removeSection']),
|
@@ -22,12 +22,12 @@
|
|
22
22
|
</router-link>
|
23
23
|
<div class="flex items-center">
|
24
24
|
<slot name="actions"></slot>
|
25
|
-
<confirmation-button
|
25
|
+
<uikit-confirmation-button
|
26
26
|
@confirm="removeSectionBlock(sectionBlock.id)"
|
27
27
|
v-on="$listeners"
|
28
28
|
>
|
29
|
-
<list-item-button iconName="ri-close-line" />
|
30
|
-
</confirmation-button>
|
29
|
+
<uikit-list-item-button iconName="ri-close-line" />
|
30
|
+
</uikit-confirmation-button>
|
31
31
|
</div>
|
32
32
|
</div>
|
33
33
|
</template>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div v-if="hasTypes" class="w-full button-wrapper">
|
3
|
-
<dropdown
|
3
|
+
<uikit-dropdown
|
4
4
|
ref="dropdown"
|
5
5
|
placement="top"
|
6
6
|
v-on="$listeners"
|
@@ -8,7 +8,7 @@
|
|
8
8
|
>
|
9
9
|
<template v-slot:button>
|
10
10
|
<button class="big-submit-button bg-editor-primary">
|
11
|
-
<icon name="ri-add-line" size="1.5rem" />
|
11
|
+
<uikit-icon name="ri-add-line" size="1.5rem" />
|
12
12
|
<span class="ml-3">{{ $t('sectionPane.blockList.add') }}</span>
|
13
13
|
</button>
|
14
14
|
</template>
|
@@ -24,13 +24,13 @@
|
|
24
24
|
</button>
|
25
25
|
</div>
|
26
26
|
</template>
|
27
|
-
</dropdown>
|
27
|
+
</uikit-dropdown>
|
28
28
|
<button
|
29
29
|
class="big-submit-button bg-editor-primary"
|
30
30
|
@click="addSectionBlock"
|
31
31
|
v-else
|
32
32
|
>
|
33
|
-
<icon name="ri-add-line" size="1.5rem" />
|
33
|
+
<uikit-icon name="ri-add-line" size="1.5rem" />
|
34
34
|
<span class="ml-3">{{ $t('sectionPane.blockList.add') }}</span>
|
35
35
|
</button>
|
36
36
|
</div>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="w-full">
|
3
|
-
<dropdown
|
3
|
+
<uikit-dropdown
|
4
4
|
placement="left"
|
5
5
|
ref="dropdown"
|
6
6
|
:fullWidth="true"
|
@@ -8,7 +8,7 @@
|
|
8
8
|
v-if="hasMultipleTypes"
|
9
9
|
>
|
10
10
|
<template v-slot:button>
|
11
|
-
<list-item-button iconName="ri-add-line" />
|
11
|
+
<uikit-list-item-button iconName="ri-add-line" />
|
12
12
|
</template>
|
13
13
|
<template v-slot:content>
|
14
14
|
<div class="w-full flex flex-col">
|
@@ -22,8 +22,8 @@
|
|
22
22
|
</button>
|
23
23
|
</div>
|
24
24
|
</template>
|
25
|
-
</dropdown>
|
26
|
-
<list-item-button
|
25
|
+
</uikit-dropdown>
|
26
|
+
<uikit-list-item-button
|
27
27
|
iconName="ri-add-line"
|
28
28
|
@click.native="addNestedSectionBlock"
|
29
29
|
v-else
|
@@ -14,13 +14,13 @@
|
|
14
14
|
v-on="$listeners"
|
15
15
|
/>
|
16
16
|
|
17
|
-
<list-item-button
|
17
|
+
<uikit-list-item-button
|
18
18
|
iconName="arrow-up-s-line"
|
19
19
|
@click.native="moveSectionBlockUp"
|
20
20
|
v-if="index > 0"
|
21
21
|
/>
|
22
22
|
|
23
|
-
<list-item-button
|
23
|
+
<uikit-list-item-button
|
24
24
|
iconName="arrow-down-s-line"
|
25
25
|
@click.native="moveSectionBlockDown"
|
26
26
|
v-if="!last"
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<template>
|
2
|
-
<tabs
|
2
|
+
<uikit-tabs
|
3
3
|
:tabs="tabs"
|
4
4
|
:firstIndex="tabIndexFromRoute"
|
5
5
|
:otherProps="{ sectionId: currentSection.id, settingId }"
|
@@ -71,7 +71,7 @@ export default {
|
|
71
71
|
return this.currentSectionDefinition.blocksPresentation === 'tree'
|
72
72
|
? BlockTree
|
73
73
|
: BlockList
|
74
|
-
}
|
74
|
+
},
|
75
75
|
},
|
76
76
|
methods: {
|
77
77
|
findTabIndexFromRoute() {
|
@@ -17,7 +17,7 @@
|
|
17
17
|
}"
|
18
18
|
v-tooltip.right="$t('sidebarNav.addNewSectionTooltip')"
|
19
19
|
>
|
20
|
-
<icon name="add-box-line" size="1.5rem" />
|
20
|
+
<uikit-icon name="add-box-line" size="1.5rem" />
|
21
21
|
</router-link>
|
22
22
|
</li>
|
23
23
|
<li>
|
@@ -30,7 +30,7 @@
|
|
30
30
|
}"
|
31
31
|
v-tooltip.right="$t('sidebarNav.managePageSectionsTooltip')"
|
32
32
|
>
|
33
|
-
<icon name="ri-stack-line" size="1.5rem" />
|
33
|
+
<uikit-icon name="ri-stack-line" size="1.5rem" />
|
34
34
|
</router-link>
|
35
35
|
</li>
|
36
36
|
<li v-if="hasStyle">
|
@@ -43,7 +43,7 @@
|
|
43
43
|
}"
|
44
44
|
v-tooltip.right="$t('sidebarNav.editStyleTooltip')"
|
45
45
|
>
|
46
|
-
<icon name="ri-drop-line" size="1.25rem" />
|
46
|
+
<uikit-icon name="ri-drop-line" size="1.25rem" />
|
47
47
|
</router-link>
|
48
48
|
</li>
|
49
49
|
<li>
|
@@ -53,7 +53,7 @@
|
|
53
53
|
@click.prevent="openImageLibraryModal"
|
54
54
|
v-tooltip.right="$t('sidebarNav.openImageLibraryTooltip')"
|
55
55
|
>
|
56
|
-
<icon name="image-line" size="1.5rem" />
|
56
|
+
<uikit-icon name="image-line" size="1.5rem" />
|
57
57
|
</a>
|
58
58
|
</li>
|
59
59
|
<li v-if="false">
|
@@ -83,7 +83,7 @@
|
|
83
83
|
class="flex justify-center py-5 -ml-4 -mr-4 hover:bg-editor-primary hover:bg-opacity-5 transition-colors duration-200"
|
84
84
|
v-tooltip.right="$t('sidebarNav.leaveEditorTooltip')"
|
85
85
|
>
|
86
|
-
<icon name="logout-box-r-line" size="1.5rem" />
|
86
|
+
<uikit-icon name="logout-box-r-line" size="1.5rem" />
|
87
87
|
</a>
|
88
88
|
</li>
|
89
89
|
</ol>
|