apostrophe 4.3.2 → 4.4.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/.stylelintrc +1 -93
- package/CHANGELOG.md +56 -0
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBar.vue +7 -1
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBarLocale.vue +6 -3
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBarUser.vue +2 -1
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposContextModeAndSettings.vue +1 -0
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposContextTitle.vue +3 -2
- package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposSavingIndicator.vue +6 -2
- package/modules/@apostrophecms/any-page-type/index.js +2 -2
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaContextualMenu.vue +13 -7
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaEditor.vue +4 -4
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaExpandedMenu.vue +17 -11
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaMenu.vue +13 -7
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaMenuItem.vue +3 -0
- package/modules/@apostrophecms/area/ui/apos/components/AposAreaWidget.vue +36 -20
- package/modules/@apostrophecms/area/ui/apos/components/AposWidgetControls.vue +18 -11
- package/modules/@apostrophecms/busy/ui/apos/components/TheAposBusy.vue +6 -8
- package/modules/@apostrophecms/command-menu/index.js +12 -7
- package/modules/@apostrophecms/command-menu/ui/apos/components/AposCommandMenuKey.vue +9 -7
- package/modules/@apostrophecms/command-menu/ui/apos/components/AposCommandMenuShortcut.vue +28 -15
- package/modules/@apostrophecms/command-menu/ui/apos/components/TheAposCommandMenu.vue +44 -42
- package/modules/@apostrophecms/doc-type/index.js +2 -1
- package/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue +4 -3
- package/modules/@apostrophecms/file-tag/index.js +1 -1
- package/modules/@apostrophecms/global/index.js +29 -0
- package/modules/@apostrophecms/i18n/i18n/de.json +20 -0
- package/modules/@apostrophecms/i18n/i18n/en.json +1 -0
- package/modules/@apostrophecms/i18n/i18n/es.json +1 -0
- package/modules/@apostrophecms/i18n/i18n/fr.json +1 -0
- package/modules/@apostrophecms/i18n/i18n/it.json +1 -0
- package/modules/@apostrophecms/i18n/i18n/pt-BR.json +1 -0
- package/modules/@apostrophecms/i18n/i18n/sk.json +1 -0
- package/modules/@apostrophecms/i18n/ui/apos/components/AposI18nLocalize.vue +25 -17
- package/modules/@apostrophecms/i18n/ui/apos/components/AposI18nLocalizeErrors.vue +5 -4
- package/modules/@apostrophecms/image/index.js +2 -1
- package/modules/@apostrophecms/image/ui/apos/components/AposImageCropper.vue +1 -1
- package/modules/@apostrophecms/image/ui/apos/components/AposImageRelationshipEditor.vue +9 -8
- package/modules/@apostrophecms/image/ui/apos/components/AposMediaManager.vue +13 -10
- package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerDisplay.vue +11 -7
- package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerEditor.vue +12 -2
- package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerSelections.vue +8 -5
- package/modules/@apostrophecms/image/ui/apos/components/AposMediaUploader.vue +17 -8
- package/modules/@apostrophecms/image-tag/index.js +1 -1
- package/modules/@apostrophecms/login/ui/apos/components/AposLoginForm.vue +1 -0
- package/modules/@apostrophecms/login/ui/apos/components/AposResetPasswordForm.vue +1 -0
- package/modules/@apostrophecms/login/ui/apos/components/TheAposLogin.vue +16 -14
- package/modules/@apostrophecms/login/ui/apos/components/TheAposLoginHeader.vue +9 -4
- package/modules/@apostrophecms/modal/ui/apos/apps/AposModals.js +11 -59
- package/modules/@apostrophecms/modal/ui/apos/components/AposDocsManagerToolbar.vue +1 -0
- package/modules/@apostrophecms/modal/ui/apos/components/AposModal.vue +59 -55
- package/modules/@apostrophecms/modal/ui/apos/components/AposModalBody.vue +1 -0
- package/modules/@apostrophecms/modal/ui/apos/components/AposModalBreadcrumbs.vue +5 -0
- package/modules/@apostrophecms/modal/ui/apos/components/AposModalConfirm.vue +6 -10
- package/modules/@apostrophecms/modal/ui/apos/components/AposModalShareDraft.vue +14 -16
- package/modules/@apostrophecms/modal/ui/apos/components/AposModalTabs.vue +68 -5
- package/modules/@apostrophecms/modal/ui/apos/components/AposWidgetModalTabs.vue +15 -9
- package/modules/@apostrophecms/modal/ui/apos/components/TheAposModals.vue +48 -122
- package/modules/@apostrophecms/modal/ui/apos/composables/AposFocus.js +9 -6
- package/modules/@apostrophecms/modal/ui/apos/mixins/AposDocsManagerMixin.js +38 -36
- package/modules/@apostrophecms/notification/ui/apos/components/AposNotification.vue +15 -9
- package/modules/@apostrophecms/notification/ui/apos/components/TheAposNotifications.vue +2 -2
- package/modules/@apostrophecms/page/index.js +9 -6
- package/modules/@apostrophecms/page/ui/apos/components/AposPagesManager.vue +3 -4
- package/modules/@apostrophecms/page/ui/apos/logic/AposPagesManager.js +5 -10
- package/modules/@apostrophecms/page/views/notFound.html +5 -5
- package/modules/@apostrophecms/permission/ui/apos/components/AposPermissionGrid.vue +6 -2
- package/modules/@apostrophecms/piece-page-type/index.js +1 -0
- package/modules/@apostrophecms/piece-type/ui/apos/components/AposDocsManager.vue +8 -12
- package/modules/@apostrophecms/piece-type/ui/apos/components/AposDocsManagerSelectBox.vue +2 -2
- package/modules/@apostrophecms/piece-type/ui/apos/components/AposRelationshipEditor.vue +1 -2
- package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposRichTextWidgetEditor.vue +59 -41
- package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapDivider.vue +1 -0
- package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapMarks.vue +3 -1
- package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapStyles.vue +3 -1
- package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapTable.vue +2 -0
- package/modules/@apostrophecms/rich-text-widget/ui/apos/tiptap-extensions/Classes.js +1 -7
- package/modules/@apostrophecms/rich-text-widget/ui/apos/tiptap-extensions/Heading.js +10 -0
- package/modules/@apostrophecms/schema/lib/addFieldTypes.js +8 -3
- package/modules/@apostrophecms/schema/ui/apos/components/AposArrayEditor.vue +4 -6
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputArea.vue +1 -0
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputBoolean.vue +5 -2
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputColor.vue +1 -0
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputDateAndTime.vue +1 -1
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputObject.vue +2 -0
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputRadio.vue +1 -0
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputRange.vue +14 -8
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputRelationship.vue +4 -2
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputSlug.vue +7 -1
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputString.vue +3 -1
- package/modules/@apostrophecms/schema/ui/apos/components/AposInputWrapper.vue +35 -5
- package/modules/@apostrophecms/schema/ui/apos/components/AposSchema.vue +7 -4
- package/modules/@apostrophecms/schema/ui/apos/components/AposSearchList.vue +50 -15
- package/modules/@apostrophecms/schema/ui/apos/components/AposSubform.vue +5 -10
- package/modules/@apostrophecms/schema/ui/apos/logic/AposArrayEditor.js +19 -31
- package/modules/@apostrophecms/schema/ui/apos/logic/AposInputRelationship.js +3 -0
- package/modules/@apostrophecms/schema/ui/apos/logic/AposInputString.js +9 -0
- package/modules/@apostrophecms/schema/ui/apos/logic/AposInputWrapper.js +7 -0
- package/modules/@apostrophecms/schema/ui/apos/logic/AposSchema.js +11 -2
- package/modules/@apostrophecms/schema/ui/apos/logic/AposSearchList.js +3 -0
- package/modules/@apostrophecms/schema/ui/apos/mixins/AposInputMixin.js +5 -0
- package/modules/@apostrophecms/schema/ui/apos/scss/AposInputArray.scss +42 -9
- package/modules/@apostrophecms/search/index.js +1 -0
- package/modules/@apostrophecms/settings/index.js +33 -0
- package/modules/@apostrophecms/settings/ui/apos/components/AposSettingsManager.vue +6 -7
- package/modules/@apostrophecms/settings/ui/apos/logic/AposSettingsManager.js +0 -1
- package/modules/@apostrophecms/submitted-draft/index.js +26 -0
- package/modules/@apostrophecms/submitted-draft/ui/apos/components/AposSubmittedDraftIcon.vue +4 -4
- package/modules/@apostrophecms/template/views/templateError.html +4 -4
- package/modules/@apostrophecms/translation/ui/apos/components/AposTranslationIndicator.vue +2 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposAvatar.vue +3 -2
- package/modules/@apostrophecms/ui/ui/apos/components/AposButton.vue +62 -15
- package/modules/@apostrophecms/ui/ui/apos/components/AposButtonGroup.vue +8 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposButtonSplit.vue +9 -3
- package/modules/@apostrophecms/ui/ui/apos/components/AposCellContextMenu.vue +2 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposCellLabels.vue +1 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposCloudUploadIcon.vue +5 -5
- package/modules/@apostrophecms/ui/ui/apos/components/AposCombo.vue +7 -5
- package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenu.vue +8 -5
- package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenuDialog.vue +5 -3
- package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenuItem.vue +22 -2
- package/modules/@apostrophecms/ui/ui/apos/components/AposEmptyState.vue +3 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposFile.vue +5 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposFilterMenu.vue +2 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposLabel.vue +1 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposMinMaxCount.vue +1 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposPager.vue +1 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposPagerDots.vue +3 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposSlat.vue +15 -2
- package/modules/@apostrophecms/ui/ui/apos/components/AposSlatList.vue +3 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposSpinner.vue +33 -7
- package/modules/@apostrophecms/ui/ui/apos/components/AposSubformPreview.vue +3 -2
- package/modules/@apostrophecms/ui/ui/apos/components/AposTag.vue +5 -3
- package/modules/@apostrophecms/ui/ui/apos/components/AposTagApply.vue +5 -2
- package/modules/@apostrophecms/ui/ui/apos/components/AposTagList.vue +5 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposTagListItem.vue +9 -1
- package/modules/@apostrophecms/ui/ui/apos/components/AposToggle.vue +13 -13
- package/modules/@apostrophecms/ui/ui/apos/components/AposTree.vue +1 -0
- package/modules/@apostrophecms/ui/ui/apos/components/AposTreeRows.vue +17 -7
- package/modules/@apostrophecms/ui/ui/apos/lib/vue.js +4 -0
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_admin.scss +1 -1
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_inputs.scss +28 -5
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_scrollbars.scss +16 -0
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_tables.scss +8 -3
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_theme.scss +9 -8
- package/modules/@apostrophecms/ui/ui/apos/scss/global/_tooltips.scss +13 -7
- package/modules/@apostrophecms/ui/ui/apos/scss/global/import-all.scss +1 -1
- package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_input_mixins.scss +5 -3
- package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_mixins.scss +1 -0
- package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_responsive.scss +4 -3
- package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_theme_mixins.scss +6 -0
- package/modules/@apostrophecms/ui/ui/apos/scss/shared/_table-rows.scss +6 -3
- package/modules/@apostrophecms/ui/ui/apos/stores/modal.js +180 -0
- package/modules/@apostrophecms/widget-type/ui/apos/components/AposWidgetEditor.vue +2 -2
- package/package.json +4 -4
- package/test/modules/@apostrophecms/search/views/index.html +1 -0
- package/test/pages.js +227 -0
- package/test/schemas.js +184 -0
- package/test/search.js +49 -13
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
:class="modifiers"
|
|
6
6
|
:tabindex="tabindex"
|
|
7
7
|
data-apos-test="context-menu-item"
|
|
8
|
+
:data-apos-test-selected="selected"
|
|
9
|
+
:data-apos-test-danger="danger"
|
|
10
|
+
:data-apos-test-disabled="disabled"
|
|
8
11
|
@click="click"
|
|
9
12
|
>
|
|
10
13
|
{{ $t(label) }}
|
|
@@ -27,6 +30,15 @@ export default {
|
|
|
27
30
|
tabindex() {
|
|
28
31
|
return this.open ? '0' : '-1';
|
|
29
32
|
},
|
|
33
|
+
selected() {
|
|
34
|
+
return this.menuItem.modifiers?.includes('selected');
|
|
35
|
+
},
|
|
36
|
+
danger() {
|
|
37
|
+
return this.menuItem.modifiers?.includes('danger');
|
|
38
|
+
},
|
|
39
|
+
disabled() {
|
|
40
|
+
return this.menuItem.modifiers?.includes('disabled');
|
|
41
|
+
},
|
|
30
42
|
modifiers() {
|
|
31
43
|
const classes = [];
|
|
32
44
|
if (this.menuItem.modifiers) {
|
|
@@ -38,7 +50,7 @@ export default {
|
|
|
38
50
|
},
|
|
39
51
|
label() {
|
|
40
52
|
let label = this.menuItem.label;
|
|
41
|
-
if (this.
|
|
53
|
+
if (this.selected) {
|
|
42
54
|
label = {
|
|
43
55
|
key: 'apostrophe:selectedMenuItem',
|
|
44
56
|
label: this.$t(this.menuItem.label)
|
|
@@ -62,31 +74,37 @@ export default {
|
|
|
62
74
|
|
|
63
75
|
.apos-context-menu__button {
|
|
64
76
|
@include type-base;
|
|
65
|
-
|
|
77
|
+
|
|
66
78
|
display: inline-block;
|
|
79
|
+
flex-grow: 1;
|
|
67
80
|
width: 100%;
|
|
68
81
|
padding: 10px 20px;
|
|
69
82
|
border: none;
|
|
70
83
|
color: var(--a-base-1);
|
|
71
84
|
text-align: left;
|
|
72
85
|
background-color: var(--a-background-primary);
|
|
86
|
+
|
|
73
87
|
&:hover {
|
|
74
88
|
cursor: pointer;
|
|
75
89
|
color: var(--a-text-primary);
|
|
76
90
|
}
|
|
91
|
+
|
|
77
92
|
&:focus {
|
|
78
93
|
outline: none;
|
|
79
94
|
color: var(--a-text-primary);
|
|
80
95
|
}
|
|
96
|
+
|
|
81
97
|
&:active {
|
|
82
98
|
color: var(--a-base-1);
|
|
83
99
|
}
|
|
84
100
|
|
|
85
101
|
&--danger {
|
|
86
102
|
color: var(--a-danger);
|
|
103
|
+
|
|
87
104
|
&:hover {
|
|
88
105
|
color: var(--a-danger-button-hover);
|
|
89
106
|
}
|
|
107
|
+
|
|
90
108
|
&:focus, &:active {
|
|
91
109
|
color: var(--a-danger-button-active);
|
|
92
110
|
}
|
|
@@ -94,6 +112,7 @@ export default {
|
|
|
94
112
|
|
|
95
113
|
&--primary {
|
|
96
114
|
color: var(--a-primary);
|
|
115
|
+
|
|
97
116
|
&:hover,
|
|
98
117
|
&:focus,
|
|
99
118
|
&:active {
|
|
@@ -103,6 +122,7 @@ export default {
|
|
|
103
122
|
|
|
104
123
|
&--disabled {
|
|
105
124
|
color: var(--a-base-5);
|
|
125
|
+
|
|
106
126
|
&:hover,
|
|
107
127
|
&:focus,
|
|
108
128
|
&:active {
|
|
@@ -33,11 +33,13 @@ export default {
|
|
|
33
33
|
|
|
34
34
|
.apos-title {
|
|
35
35
|
@include type-title;
|
|
36
|
+
|
|
36
37
|
margin: 0 0 10px;
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
.apos-hint {
|
|
40
41
|
@include type-base;
|
|
42
|
+
|
|
41
43
|
font-style: italic;
|
|
42
44
|
line-height: var(--a-line-tallest);
|
|
43
45
|
color: var(--a-base-1);
|
|
@@ -46,7 +48,7 @@ export default {
|
|
|
46
48
|
|
|
47
49
|
.apos-emoji {
|
|
48
50
|
// Variable sizes are less important for icons.
|
|
49
|
-
/* stylelint-disable-next-line
|
|
51
|
+
/* stylelint-disable-next-line declaration-property-unit-allowed-list */
|
|
50
52
|
font-size: 34px;
|
|
51
53
|
}
|
|
52
54
|
</style>
|
|
@@ -163,20 +163,24 @@ export default {
|
|
|
163
163
|
.apos-file-dropzone {
|
|
164
164
|
@include apos-button-reset();
|
|
165
165
|
@include type-base;
|
|
166
|
+
|
|
166
167
|
display: block;
|
|
167
168
|
margin: 10px 0;
|
|
168
169
|
padding: 20px;
|
|
169
170
|
border: 2px dashed var(--a-base-8);
|
|
170
171
|
border-radius: var(--a-border-radius);
|
|
171
|
-
transition: all
|
|
172
|
+
transition: all 200ms ease;
|
|
173
|
+
|
|
172
174
|
&:hover {
|
|
173
175
|
border-color: var(--a-primary);
|
|
174
176
|
background-color: var(--a-base-10);
|
|
175
177
|
}
|
|
178
|
+
|
|
176
179
|
&:active,
|
|
177
180
|
&:focus {
|
|
178
181
|
border: 2px solid var(--a-primary);
|
|
179
182
|
}
|
|
183
|
+
|
|
180
184
|
&.apos-is-disabled {
|
|
181
185
|
color: var(--a-base-4);
|
|
182
186
|
background-color: var(--a-base-7);
|
|
@@ -144,14 +144,15 @@ export default {
|
|
|
144
144
|
.apos-filters-menu :deep(.apos-field__label) {
|
|
145
145
|
display: block;
|
|
146
146
|
width: 100%;
|
|
147
|
+
margin-bottom: 10px;
|
|
147
148
|
padding-bottom: 10px;
|
|
148
149
|
border-bottom: 1px solid var(--a-base-9);
|
|
149
150
|
color: var(--a-base-3);
|
|
150
|
-
margin-bottom: 10px;
|
|
151
151
|
}
|
|
152
152
|
|
|
153
153
|
.apos-filters-menu__set {
|
|
154
154
|
margin-bottom: 30px;
|
|
155
|
+
|
|
155
156
|
&:last-child {
|
|
156
157
|
margin-bottom: 0;
|
|
157
158
|
}
|
|
@@ -52,14 +52,16 @@ export default {
|
|
|
52
52
|
display: flex;
|
|
53
53
|
list-style-type: none;
|
|
54
54
|
}
|
|
55
|
+
|
|
55
56
|
.apos-pager-dots__button {
|
|
56
57
|
@include apos-button-reset();
|
|
58
|
+
|
|
57
59
|
width: 12px;
|
|
58
60
|
height: 12px;
|
|
59
61
|
border-radius: 50%;
|
|
60
62
|
background-color: var(--a-primary-light-40);
|
|
61
63
|
margin-right: 20px;
|
|
62
|
-
transition: all
|
|
64
|
+
transition: all 300ms ease;
|
|
63
65
|
}
|
|
64
66
|
|
|
65
67
|
.apos-pager-dots__button.apos-is-active {
|
|
@@ -221,6 +221,8 @@ export default {
|
|
|
221
221
|
|
|
222
222
|
<style lang="scss" scoped>
|
|
223
223
|
.apos-slat {
|
|
224
|
+
@include apos-transition();
|
|
225
|
+
|
|
224
226
|
display: flex;
|
|
225
227
|
align-items: center;
|
|
226
228
|
justify-content: space-between;
|
|
@@ -229,7 +231,6 @@ export default {
|
|
|
229
231
|
border-radius: var(--a-border-radius);
|
|
230
232
|
background-color: var(--a-base-9);
|
|
231
233
|
color: var(--a-text-primary);
|
|
232
|
-
@include apos-transition();
|
|
233
234
|
|
|
234
235
|
&.apos-is-disabled {
|
|
235
236
|
.apos-slat__control--view {
|
|
@@ -241,9 +242,11 @@ export default {
|
|
|
241
242
|
cursor: grab;
|
|
242
243
|
background-color: var(--a-base-7);
|
|
243
244
|
}
|
|
245
|
+
|
|
244
246
|
&:active {
|
|
245
247
|
cursor: grabbing;
|
|
246
248
|
}
|
|
249
|
+
|
|
247
250
|
&:active,
|
|
248
251
|
&:focus {
|
|
249
252
|
background-color: var(--a-base-7);
|
|
@@ -255,6 +258,7 @@ export default {
|
|
|
255
258
|
&:active {
|
|
256
259
|
cursor: default;
|
|
257
260
|
}
|
|
261
|
+
|
|
258
262
|
&:hover,
|
|
259
263
|
&:active,
|
|
260
264
|
&:focus {
|
|
@@ -270,13 +274,16 @@ export default {
|
|
|
270
274
|
.apos-slat.apos-is-selected,
|
|
271
275
|
.apos-slat.apos-is-selected:focus {
|
|
272
276
|
background-color: var(--a-primary);
|
|
277
|
+
|
|
273
278
|
&,
|
|
274
279
|
:deep(.apos-button) {
|
|
275
280
|
color: var(--a-white);
|
|
276
281
|
}
|
|
282
|
+
|
|
277
283
|
&:hover {
|
|
278
284
|
background-color: var(--a-primary-dark-10);
|
|
279
285
|
}
|
|
286
|
+
|
|
280
287
|
.apos-slat__label {
|
|
281
288
|
color: var(--a-white);
|
|
282
289
|
}
|
|
@@ -284,6 +291,7 @@ export default {
|
|
|
284
291
|
|
|
285
292
|
.apos-slat-list__item--disabled {
|
|
286
293
|
opacity: 0.5;
|
|
294
|
+
|
|
287
295
|
&:hover {
|
|
288
296
|
cursor: not-allowed;
|
|
289
297
|
}
|
|
@@ -293,6 +301,7 @@ export default {
|
|
|
293
301
|
display: flex;
|
|
294
302
|
align-items: center;
|
|
295
303
|
max-width: 75%;
|
|
304
|
+
|
|
296
305
|
&:deep(.trigger) {
|
|
297
306
|
/* This gets inline positioned and has doesn't provide an extra class to beef up, sorry */
|
|
298
307
|
/* stylelint-disable-next-line declaration-no-important */
|
|
@@ -302,6 +311,7 @@ export default {
|
|
|
302
311
|
|
|
303
312
|
.apos-slat__label {
|
|
304
313
|
@include type-small;
|
|
314
|
+
|
|
305
315
|
overflow: hidden;
|
|
306
316
|
margin-left: 5px;
|
|
307
317
|
white-space: nowrap;
|
|
@@ -324,8 +334,9 @@ export default {
|
|
|
324
334
|
}
|
|
325
335
|
|
|
326
336
|
.fade-enter-active, .fade-leave-active {
|
|
327
|
-
transition: opacity
|
|
337
|
+
transition: opacity 500ms;
|
|
328
338
|
}
|
|
339
|
+
|
|
329
340
|
.fade-enter, .fade-leave-to {
|
|
330
341
|
opacity: 0;
|
|
331
342
|
}
|
|
@@ -337,6 +348,7 @@ export default {
|
|
|
337
348
|
|
|
338
349
|
.apos-slat__size {
|
|
339
350
|
@include type-small;
|
|
351
|
+
|
|
340
352
|
margin-right: 5px;
|
|
341
353
|
}
|
|
342
354
|
|
|
@@ -346,6 +358,7 @@ export default {
|
|
|
346
358
|
|
|
347
359
|
.apos-slat__extension {
|
|
348
360
|
@include type-help;
|
|
361
|
+
|
|
349
362
|
display: inline-block;
|
|
350
363
|
padding: 4px;
|
|
351
364
|
background-color: var(--a-generic);
|
|
@@ -187,7 +187,7 @@ export default {
|
|
|
187
187
|
<style lang="scss" scoped>
|
|
188
188
|
.apos-slat-list :deep(.apos-slat) {
|
|
189
189
|
margin-bottom: 5px;
|
|
190
|
-
transition: all
|
|
190
|
+
transition: all 400ms;
|
|
191
191
|
max-width: $input-max-width * 0.65;
|
|
192
192
|
}
|
|
193
193
|
|
|
@@ -202,6 +202,7 @@ export default {
|
|
|
202
202
|
|
|
203
203
|
.apos-slat-list {
|
|
204
204
|
@include apos-list-reset();
|
|
205
|
+
|
|
205
206
|
min-height: 20px;
|
|
206
207
|
max-width: $input-max-width;
|
|
207
208
|
}
|
|
@@ -212,6 +213,7 @@ export default {
|
|
|
212
213
|
|
|
213
214
|
.apos-slat-limit {
|
|
214
215
|
@include type-help;
|
|
216
|
+
|
|
215
217
|
margin: 10px 0 0;
|
|
216
218
|
text-align: center;
|
|
217
219
|
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
>
|
|
12
12
|
<defs>
|
|
13
13
|
<linearGradient id="linear-gradient" x1="-280.32" y1="390.11" x2="-279.82" y2="390.9" gradientTransform="matrix(22.2, 0, 0, -22.2, 6233.2, 8673.92)" gradientUnits="userSpaceOnUse">
|
|
14
|
-
<stop offset="0" stop-color="
|
|
15
|
-
<stop offset="1" stop-color="
|
|
14
|
+
<stop offset="0" :stop-color="stopColorLight" />
|
|
15
|
+
<stop offset="1" :stop-color="stopColorDark" />
|
|
16
16
|
</linearGradient>
|
|
17
17
|
<linearGradient id="linear-gradient-2" x1="-276.41" y1="379.82" x2="-276.72" y2="379.33" gradientTransform="matrix(17.69, 0, 0, -13.7, 4908.02, 5205.92)" gradientUnits="userSpaceOnUse">
|
|
18
|
-
<stop offset="0" stop-color="
|
|
19
|
-
<stop offset="1" stop-color="
|
|
18
|
+
<stop offset="0" :stop-color="stopColorLight" />
|
|
19
|
+
<stop offset="1" :stop-color="stopColorDark" />
|
|
20
20
|
</linearGradient>
|
|
21
21
|
</defs>
|
|
22
22
|
<path class="apos-spinner__svg-track" d="M11.5.32a11.1,11.1,0,1,0,11.1,11.1A11.1,11.1,0,0,0,11.5.32Zm0,5.2a5.9,5.9,0,1,1-5.9,5.9A5.9,5.9,0,0,1,11.5,5.52Z" fill="url(#linear-gradient)" />
|
|
@@ -57,10 +57,25 @@
|
|
|
57
57
|
module.exports = {
|
|
58
58
|
name: 'AposSpinner',
|
|
59
59
|
props: {
|
|
60
|
+
/**
|
|
61
|
+
* In the normal `weight` mode, it's the only supported value.
|
|
62
|
+
* In `heavy` mode, this would be the "darker" color.
|
|
63
|
+
*/
|
|
60
64
|
color: {
|
|
61
65
|
type: String,
|
|
62
66
|
default: '--a-primary'
|
|
63
67
|
},
|
|
68
|
+
/**
|
|
69
|
+
* In `heavy` mode, this would be the "lighter" color.
|
|
70
|
+
* Ignored in the normal `weight` mode.
|
|
71
|
+
*/
|
|
72
|
+
colorLight: {
|
|
73
|
+
type: String,
|
|
74
|
+
default: '--a-primary-transparent-50'
|
|
75
|
+
},
|
|
76
|
+
/**
|
|
77
|
+
* The weight of the spinner. Can be `normal` or `heavy`.
|
|
78
|
+
*/
|
|
64
79
|
weight: {
|
|
65
80
|
type: String,
|
|
66
81
|
default: 'normal'
|
|
@@ -74,6 +89,13 @@ module.exports = {
|
|
|
74
89
|
|
|
75
90
|
return 'color: var(--a-primary);';
|
|
76
91
|
},
|
|
92
|
+
stopColorLight() {
|
|
93
|
+
const color = this.colorLight || this.color;
|
|
94
|
+
return color?.startsWith('--') ? `var(${color})` : color;
|
|
95
|
+
},
|
|
96
|
+
stopColorDark() {
|
|
97
|
+
return this.color?.startsWith('--') ? `var(${this.color})` : this.color;
|
|
98
|
+
},
|
|
77
99
|
className() {
|
|
78
100
|
return `apos-spinner--${this.weight}`;
|
|
79
101
|
}
|
|
@@ -86,24 +108,26 @@ module.exports = {
|
|
|
86
108
|
position: relative;
|
|
87
109
|
width: 17px;
|
|
88
110
|
height: 17px;
|
|
111
|
+
|
|
89
112
|
&--heavy {
|
|
90
113
|
width: 27px;
|
|
91
114
|
height: 27px;
|
|
92
115
|
}
|
|
93
116
|
}
|
|
117
|
+
|
|
94
118
|
.apos-spinner__svg {
|
|
95
119
|
max-width: 100%;
|
|
96
120
|
max-height: 100%;
|
|
97
121
|
}
|
|
98
122
|
|
|
99
123
|
.apos-spinner__svg-track {
|
|
100
|
-
animation:
|
|
124
|
+
animation: counter-clockwise 2000 infinite linear;
|
|
101
125
|
transform-origin: 50% 50%;
|
|
102
126
|
transform: scale(100, 100);
|
|
103
127
|
}
|
|
104
128
|
|
|
105
129
|
.apos-spinner__svg-spinner {
|
|
106
|
-
animation: clockwise
|
|
130
|
+
animation: clockwise 1000ms infinite linear;
|
|
107
131
|
transform-origin: 50% 50%;
|
|
108
132
|
transform: scale(100, 100);
|
|
109
133
|
}
|
|
@@ -112,15 +136,17 @@ module.exports = {
|
|
|
112
136
|
from {
|
|
113
137
|
transform: rotate(0deg);
|
|
114
138
|
}
|
|
139
|
+
|
|
115
140
|
to {
|
|
116
141
|
transform: rotate(359deg);
|
|
117
142
|
}
|
|
118
143
|
}
|
|
119
144
|
|
|
120
|
-
@keyframes
|
|
145
|
+
@keyframes counter-clockwise {
|
|
121
146
|
from {
|
|
122
147
|
transform: rotate(0deg);
|
|
123
148
|
}
|
|
149
|
+
|
|
124
150
|
to {
|
|
125
151
|
transform: rotate(-359deg);
|
|
126
152
|
}
|
|
@@ -109,12 +109,13 @@ function inferFieldValues(schema, values, $t) {
|
|
|
109
109
|
<style lang="scss" scoped>
|
|
110
110
|
.apos-subform-preview {
|
|
111
111
|
display: grid;
|
|
112
|
-
grid-template-columns: 1fr 2fr;
|
|
113
|
-
padding: $spacing-double 0;
|
|
114
112
|
align-items: center;
|
|
113
|
+
padding: $spacing-double 0;
|
|
114
|
+
grid-template-columns: 1fr 2fr;
|
|
115
115
|
|
|
116
116
|
&__value {
|
|
117
117
|
@include type-base;
|
|
118
|
+
|
|
118
119
|
line-height: 1;
|
|
119
120
|
// color: var(--a-base-1);
|
|
120
121
|
color: var(--a-text-primary);
|
|
@@ -35,19 +35,21 @@ export default {
|
|
|
35
35
|
<style lang="scss" scoped>
|
|
36
36
|
.apos-tag {
|
|
37
37
|
@include type-base;
|
|
38
|
+
|
|
38
39
|
display: inline-flex;
|
|
40
|
+
align-items: center;
|
|
41
|
+
justify-content: center;
|
|
39
42
|
padding: 6px 12px;
|
|
43
|
+
color: var(--a-base-8);
|
|
40
44
|
border-radius: var(--a-border-radius);
|
|
41
45
|
background-color: var(--a-base-1);
|
|
42
|
-
color: var(--a-base-8);
|
|
43
|
-
align-items: center;
|
|
44
|
-
justify-content: center;
|
|
45
46
|
}
|
|
46
47
|
|
|
47
48
|
.apos-tag__remove {
|
|
48
49
|
position: relative;
|
|
49
50
|
top: 1px;
|
|
50
51
|
margin-right: 5px;
|
|
52
|
+
|
|
51
53
|
&:hover {
|
|
52
54
|
cursor: pointer;
|
|
53
55
|
}
|
|
@@ -310,6 +310,7 @@ export default {
|
|
|
310
310
|
|
|
311
311
|
.apos-apply-tag-menu__tags {
|
|
312
312
|
@include apos-list-reset();
|
|
313
|
+
|
|
313
314
|
max-height: 160px;
|
|
314
315
|
overflow-y: auto;
|
|
315
316
|
margin-top: 15px;
|
|
@@ -324,13 +325,14 @@ export default {
|
|
|
324
325
|
|
|
325
326
|
.apos-apply-tag-menu__empty {
|
|
326
327
|
display: flex;
|
|
327
|
-
align-items: center;
|
|
328
328
|
flex-direction: column;
|
|
329
|
+
align-items: center;
|
|
329
330
|
padding: 40px 0 20px;
|
|
330
331
|
}
|
|
331
332
|
|
|
332
333
|
.apos-apply-tag-menu__empty-message {
|
|
333
334
|
@include type-base;
|
|
335
|
+
|
|
334
336
|
margin-bottom: 20px;
|
|
335
337
|
max-width: 240px;
|
|
336
338
|
text-align: center;
|
|
@@ -344,11 +346,12 @@ export default {
|
|
|
344
346
|
// Variable sizes are less important for icons.
|
|
345
347
|
/* stylelint-disable-next-line scale-unlimited/declaration-strict-value */
|
|
346
348
|
@include type-title;
|
|
349
|
+
|
|
347
350
|
margin: 0;
|
|
348
351
|
}
|
|
349
352
|
|
|
350
353
|
.fade-enter-active, .fade-leave-active {
|
|
351
|
-
transition: all
|
|
354
|
+
transition: all 500ms;
|
|
352
355
|
}
|
|
353
356
|
|
|
354
357
|
.fade-enter, .fade-leave-to {
|
|
@@ -61,14 +61,18 @@ export default {
|
|
|
61
61
|
width: 100%;
|
|
62
62
|
height: 100%;
|
|
63
63
|
}
|
|
64
|
+
|
|
64
65
|
.apos-tag-list__inner {
|
|
65
66
|
margin: 30px 0 0 30px;
|
|
66
67
|
}
|
|
68
|
+
|
|
67
69
|
.apos-tag-list__title {
|
|
68
70
|
@include type-base;
|
|
71
|
+
|
|
69
72
|
margin-bottom: 15px;
|
|
70
73
|
color: var(--a-base-3);
|
|
71
74
|
}
|
|
75
|
+
|
|
72
76
|
.apos-tag-list__items {
|
|
73
77
|
@include apos-list-reset();
|
|
74
78
|
}
|
|
@@ -76,8 +80,8 @@ export default {
|
|
|
76
80
|
.apos-tag-list__empty {
|
|
77
81
|
display: flex;
|
|
78
82
|
flex-direction: column;
|
|
79
|
-
justify-content: center;
|
|
80
83
|
align-items: center;
|
|
84
|
+
justify-content: center;
|
|
81
85
|
width: 100%;
|
|
82
86
|
height: 100%;
|
|
83
87
|
margin: 0 1rem;
|
|
@@ -50,32 +50,40 @@ export default {
|
|
|
50
50
|
display: block;
|
|
51
51
|
margin-bottom: 7.5px;
|
|
52
52
|
}
|
|
53
|
+
|
|
53
54
|
.apos-tag-list__button {
|
|
54
55
|
@include apos-button-reset();
|
|
56
|
+
@include apos-transition($what: all, $duration: 0.1s, $ease: ease-in-out);
|
|
57
|
+
|
|
55
58
|
display: flex;
|
|
56
59
|
align-items: center;
|
|
57
60
|
padding: 2px 0;
|
|
58
61
|
border-radius: 5px;
|
|
59
62
|
background: transparent;
|
|
60
|
-
|
|
63
|
+
|
|
61
64
|
&.apos-is-active {
|
|
62
65
|
color: var(--a-primary);
|
|
66
|
+
|
|
63
67
|
.apos-tag-list__icon {
|
|
64
68
|
opacity: 1;
|
|
65
69
|
}
|
|
66
70
|
}
|
|
71
|
+
|
|
67
72
|
&:hover,
|
|
68
73
|
&:focus {
|
|
69
74
|
color: var(--a-primary);
|
|
75
|
+
|
|
70
76
|
.apos-tag-list__icon {
|
|
71
77
|
color: var(--a-primary);
|
|
72
78
|
opacity: 1;
|
|
73
79
|
}
|
|
74
80
|
}
|
|
81
|
+
|
|
75
82
|
&:hover.apos-is-active,
|
|
76
83
|
&:focus.apos-is-active {
|
|
77
84
|
color: var(--a-primary);
|
|
78
85
|
}
|
|
86
|
+
|
|
79
87
|
&:focus {
|
|
80
88
|
outline: none;
|
|
81
89
|
color: var(--a-primary-dark-15);
|
|
@@ -31,37 +31,37 @@ export default {
|
|
|
31
31
|
};
|
|
32
32
|
</script>
|
|
33
33
|
<style scoped lang='scss'>
|
|
34
|
-
$
|
|
35
|
-
$
|
|
36
|
-
$
|
|
34
|
+
$toggle-height: 13px;
|
|
35
|
+
$toggle-width: $toggle-height * 1.7;
|
|
36
|
+
$btn-size: $toggle-height;
|
|
37
37
|
|
|
38
38
|
.apos-toggle {
|
|
39
39
|
&__slider {
|
|
40
|
-
box-sizing: content-box;
|
|
41
40
|
position: relative;
|
|
42
|
-
|
|
43
|
-
width: $
|
|
44
|
-
height: $
|
|
41
|
+
box-sizing: content-box;
|
|
42
|
+
width: $toggle-width;
|
|
43
|
+
height: $toggle-height;
|
|
45
44
|
padding: 4px;
|
|
45
|
+
border-radius: 34px;
|
|
46
46
|
cursor: pointer;
|
|
47
47
|
background-color: var(--a-base-3);
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
&::before {
|
|
50
50
|
content: '';
|
|
51
51
|
position: absolute;
|
|
52
|
-
width: $
|
|
53
|
-
height: $
|
|
52
|
+
width: $btn-size;
|
|
53
|
+
height: $btn-size;
|
|
54
54
|
border-radius: 50%;
|
|
55
55
|
background-color: var(--a-white);
|
|
56
|
-
transition: all
|
|
56
|
+
transition: all 300ms ease-out;
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
&__slider--activated {
|
|
61
61
|
background-color: var(--a-primary);
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
transform: translateX(calc($
|
|
63
|
+
&::before {
|
|
64
|
+
transform: translateX(calc($toggle-width - $btn-size));
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
}
|