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.
Files changed (158) hide show
  1. package/.stylelintrc +1 -93
  2. package/CHANGELOG.md +56 -0
  3. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBar.vue +7 -1
  4. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBarLocale.vue +6 -3
  5. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposAdminBarUser.vue +2 -1
  6. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposContextModeAndSettings.vue +1 -0
  7. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposContextTitle.vue +3 -2
  8. package/modules/@apostrophecms/admin-bar/ui/apos/components/TheAposSavingIndicator.vue +6 -2
  9. package/modules/@apostrophecms/any-page-type/index.js +2 -2
  10. package/modules/@apostrophecms/area/ui/apos/components/AposAreaContextualMenu.vue +13 -7
  11. package/modules/@apostrophecms/area/ui/apos/components/AposAreaEditor.vue +4 -4
  12. package/modules/@apostrophecms/area/ui/apos/components/AposAreaExpandedMenu.vue +17 -11
  13. package/modules/@apostrophecms/area/ui/apos/components/AposAreaMenu.vue +13 -7
  14. package/modules/@apostrophecms/area/ui/apos/components/AposAreaMenuItem.vue +3 -0
  15. package/modules/@apostrophecms/area/ui/apos/components/AposAreaWidget.vue +36 -20
  16. package/modules/@apostrophecms/area/ui/apos/components/AposWidgetControls.vue +18 -11
  17. package/modules/@apostrophecms/busy/ui/apos/components/TheAposBusy.vue +6 -8
  18. package/modules/@apostrophecms/command-menu/index.js +12 -7
  19. package/modules/@apostrophecms/command-menu/ui/apos/components/AposCommandMenuKey.vue +9 -7
  20. package/modules/@apostrophecms/command-menu/ui/apos/components/AposCommandMenuShortcut.vue +28 -15
  21. package/modules/@apostrophecms/command-menu/ui/apos/components/TheAposCommandMenu.vue +44 -42
  22. package/modules/@apostrophecms/doc-type/index.js +2 -1
  23. package/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue +4 -3
  24. package/modules/@apostrophecms/file-tag/index.js +1 -1
  25. package/modules/@apostrophecms/global/index.js +29 -0
  26. package/modules/@apostrophecms/i18n/i18n/de.json +20 -0
  27. package/modules/@apostrophecms/i18n/i18n/en.json +1 -0
  28. package/modules/@apostrophecms/i18n/i18n/es.json +1 -0
  29. package/modules/@apostrophecms/i18n/i18n/fr.json +1 -0
  30. package/modules/@apostrophecms/i18n/i18n/it.json +1 -0
  31. package/modules/@apostrophecms/i18n/i18n/pt-BR.json +1 -0
  32. package/modules/@apostrophecms/i18n/i18n/sk.json +1 -0
  33. package/modules/@apostrophecms/i18n/ui/apos/components/AposI18nLocalize.vue +25 -17
  34. package/modules/@apostrophecms/i18n/ui/apos/components/AposI18nLocalizeErrors.vue +5 -4
  35. package/modules/@apostrophecms/image/index.js +2 -1
  36. package/modules/@apostrophecms/image/ui/apos/components/AposImageCropper.vue +1 -1
  37. package/modules/@apostrophecms/image/ui/apos/components/AposImageRelationshipEditor.vue +9 -8
  38. package/modules/@apostrophecms/image/ui/apos/components/AposMediaManager.vue +13 -10
  39. package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerDisplay.vue +11 -7
  40. package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerEditor.vue +12 -2
  41. package/modules/@apostrophecms/image/ui/apos/components/AposMediaManagerSelections.vue +8 -5
  42. package/modules/@apostrophecms/image/ui/apos/components/AposMediaUploader.vue +17 -8
  43. package/modules/@apostrophecms/image-tag/index.js +1 -1
  44. package/modules/@apostrophecms/login/ui/apos/components/AposLoginForm.vue +1 -0
  45. package/modules/@apostrophecms/login/ui/apos/components/AposResetPasswordForm.vue +1 -0
  46. package/modules/@apostrophecms/login/ui/apos/components/TheAposLogin.vue +16 -14
  47. package/modules/@apostrophecms/login/ui/apos/components/TheAposLoginHeader.vue +9 -4
  48. package/modules/@apostrophecms/modal/ui/apos/apps/AposModals.js +11 -59
  49. package/modules/@apostrophecms/modal/ui/apos/components/AposDocsManagerToolbar.vue +1 -0
  50. package/modules/@apostrophecms/modal/ui/apos/components/AposModal.vue +59 -55
  51. package/modules/@apostrophecms/modal/ui/apos/components/AposModalBody.vue +1 -0
  52. package/modules/@apostrophecms/modal/ui/apos/components/AposModalBreadcrumbs.vue +5 -0
  53. package/modules/@apostrophecms/modal/ui/apos/components/AposModalConfirm.vue +6 -10
  54. package/modules/@apostrophecms/modal/ui/apos/components/AposModalShareDraft.vue +14 -16
  55. package/modules/@apostrophecms/modal/ui/apos/components/AposModalTabs.vue +68 -5
  56. package/modules/@apostrophecms/modal/ui/apos/components/AposWidgetModalTabs.vue +15 -9
  57. package/modules/@apostrophecms/modal/ui/apos/components/TheAposModals.vue +48 -122
  58. package/modules/@apostrophecms/modal/ui/apos/composables/AposFocus.js +9 -6
  59. package/modules/@apostrophecms/modal/ui/apos/mixins/AposDocsManagerMixin.js +38 -36
  60. package/modules/@apostrophecms/notification/ui/apos/components/AposNotification.vue +15 -9
  61. package/modules/@apostrophecms/notification/ui/apos/components/TheAposNotifications.vue +2 -2
  62. package/modules/@apostrophecms/page/index.js +9 -6
  63. package/modules/@apostrophecms/page/ui/apos/components/AposPagesManager.vue +3 -4
  64. package/modules/@apostrophecms/page/ui/apos/logic/AposPagesManager.js +5 -10
  65. package/modules/@apostrophecms/page/views/notFound.html +5 -5
  66. package/modules/@apostrophecms/permission/ui/apos/components/AposPermissionGrid.vue +6 -2
  67. package/modules/@apostrophecms/piece-page-type/index.js +1 -0
  68. package/modules/@apostrophecms/piece-type/ui/apos/components/AposDocsManager.vue +8 -12
  69. package/modules/@apostrophecms/piece-type/ui/apos/components/AposDocsManagerSelectBox.vue +2 -2
  70. package/modules/@apostrophecms/piece-type/ui/apos/components/AposRelationshipEditor.vue +1 -2
  71. package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposRichTextWidgetEditor.vue +59 -41
  72. package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapDivider.vue +1 -0
  73. package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapMarks.vue +3 -1
  74. package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapStyles.vue +3 -1
  75. package/modules/@apostrophecms/rich-text-widget/ui/apos/components/AposTiptapTable.vue +2 -0
  76. package/modules/@apostrophecms/rich-text-widget/ui/apos/tiptap-extensions/Classes.js +1 -7
  77. package/modules/@apostrophecms/rich-text-widget/ui/apos/tiptap-extensions/Heading.js +10 -0
  78. package/modules/@apostrophecms/schema/lib/addFieldTypes.js +8 -3
  79. package/modules/@apostrophecms/schema/ui/apos/components/AposArrayEditor.vue +4 -6
  80. package/modules/@apostrophecms/schema/ui/apos/components/AposInputArea.vue +1 -0
  81. package/modules/@apostrophecms/schema/ui/apos/components/AposInputBoolean.vue +5 -2
  82. package/modules/@apostrophecms/schema/ui/apos/components/AposInputColor.vue +1 -0
  83. package/modules/@apostrophecms/schema/ui/apos/components/AposInputDateAndTime.vue +1 -1
  84. package/modules/@apostrophecms/schema/ui/apos/components/AposInputObject.vue +2 -0
  85. package/modules/@apostrophecms/schema/ui/apos/components/AposInputRadio.vue +1 -0
  86. package/modules/@apostrophecms/schema/ui/apos/components/AposInputRange.vue +14 -8
  87. package/modules/@apostrophecms/schema/ui/apos/components/AposInputRelationship.vue +4 -2
  88. package/modules/@apostrophecms/schema/ui/apos/components/AposInputSlug.vue +7 -1
  89. package/modules/@apostrophecms/schema/ui/apos/components/AposInputString.vue +3 -1
  90. package/modules/@apostrophecms/schema/ui/apos/components/AposInputWrapper.vue +35 -5
  91. package/modules/@apostrophecms/schema/ui/apos/components/AposSchema.vue +7 -4
  92. package/modules/@apostrophecms/schema/ui/apos/components/AposSearchList.vue +50 -15
  93. package/modules/@apostrophecms/schema/ui/apos/components/AposSubform.vue +5 -10
  94. package/modules/@apostrophecms/schema/ui/apos/logic/AposArrayEditor.js +19 -31
  95. package/modules/@apostrophecms/schema/ui/apos/logic/AposInputRelationship.js +3 -0
  96. package/modules/@apostrophecms/schema/ui/apos/logic/AposInputString.js +9 -0
  97. package/modules/@apostrophecms/schema/ui/apos/logic/AposInputWrapper.js +7 -0
  98. package/modules/@apostrophecms/schema/ui/apos/logic/AposSchema.js +11 -2
  99. package/modules/@apostrophecms/schema/ui/apos/logic/AposSearchList.js +3 -0
  100. package/modules/@apostrophecms/schema/ui/apos/mixins/AposInputMixin.js +5 -0
  101. package/modules/@apostrophecms/schema/ui/apos/scss/AposInputArray.scss +42 -9
  102. package/modules/@apostrophecms/search/index.js +1 -0
  103. package/modules/@apostrophecms/settings/index.js +33 -0
  104. package/modules/@apostrophecms/settings/ui/apos/components/AposSettingsManager.vue +6 -7
  105. package/modules/@apostrophecms/settings/ui/apos/logic/AposSettingsManager.js +0 -1
  106. package/modules/@apostrophecms/submitted-draft/index.js +26 -0
  107. package/modules/@apostrophecms/submitted-draft/ui/apos/components/AposSubmittedDraftIcon.vue +4 -4
  108. package/modules/@apostrophecms/template/views/templateError.html +4 -4
  109. package/modules/@apostrophecms/translation/ui/apos/components/AposTranslationIndicator.vue +2 -1
  110. package/modules/@apostrophecms/ui/ui/apos/components/AposAvatar.vue +3 -2
  111. package/modules/@apostrophecms/ui/ui/apos/components/AposButton.vue +62 -15
  112. package/modules/@apostrophecms/ui/ui/apos/components/AposButtonGroup.vue +8 -0
  113. package/modules/@apostrophecms/ui/ui/apos/components/AposButtonSplit.vue +9 -3
  114. package/modules/@apostrophecms/ui/ui/apos/components/AposCellContextMenu.vue +2 -0
  115. package/modules/@apostrophecms/ui/ui/apos/components/AposCellLabels.vue +1 -0
  116. package/modules/@apostrophecms/ui/ui/apos/components/AposCloudUploadIcon.vue +5 -5
  117. package/modules/@apostrophecms/ui/ui/apos/components/AposCombo.vue +7 -5
  118. package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenu.vue +8 -5
  119. package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenuDialog.vue +5 -3
  120. package/modules/@apostrophecms/ui/ui/apos/components/AposContextMenuItem.vue +22 -2
  121. package/modules/@apostrophecms/ui/ui/apos/components/AposEmptyState.vue +3 -1
  122. package/modules/@apostrophecms/ui/ui/apos/components/AposFile.vue +5 -1
  123. package/modules/@apostrophecms/ui/ui/apos/components/AposFilterMenu.vue +2 -1
  124. package/modules/@apostrophecms/ui/ui/apos/components/AposLabel.vue +1 -0
  125. package/modules/@apostrophecms/ui/ui/apos/components/AposMinMaxCount.vue +1 -0
  126. package/modules/@apostrophecms/ui/ui/apos/components/AposPager.vue +1 -0
  127. package/modules/@apostrophecms/ui/ui/apos/components/AposPagerDots.vue +3 -1
  128. package/modules/@apostrophecms/ui/ui/apos/components/AposSlat.vue +15 -2
  129. package/modules/@apostrophecms/ui/ui/apos/components/AposSlatList.vue +3 -1
  130. package/modules/@apostrophecms/ui/ui/apos/components/AposSpinner.vue +33 -7
  131. package/modules/@apostrophecms/ui/ui/apos/components/AposSubformPreview.vue +3 -2
  132. package/modules/@apostrophecms/ui/ui/apos/components/AposTag.vue +5 -3
  133. package/modules/@apostrophecms/ui/ui/apos/components/AposTagApply.vue +5 -2
  134. package/modules/@apostrophecms/ui/ui/apos/components/AposTagList.vue +5 -1
  135. package/modules/@apostrophecms/ui/ui/apos/components/AposTagListItem.vue +9 -1
  136. package/modules/@apostrophecms/ui/ui/apos/components/AposToggle.vue +13 -13
  137. package/modules/@apostrophecms/ui/ui/apos/components/AposTree.vue +1 -0
  138. package/modules/@apostrophecms/ui/ui/apos/components/AposTreeRows.vue +17 -7
  139. package/modules/@apostrophecms/ui/ui/apos/lib/vue.js +4 -0
  140. package/modules/@apostrophecms/ui/ui/apos/scss/global/_admin.scss +1 -1
  141. package/modules/@apostrophecms/ui/ui/apos/scss/global/_inputs.scss +28 -5
  142. package/modules/@apostrophecms/ui/ui/apos/scss/global/_scrollbars.scss +16 -0
  143. package/modules/@apostrophecms/ui/ui/apos/scss/global/_tables.scss +8 -3
  144. package/modules/@apostrophecms/ui/ui/apos/scss/global/_theme.scss +9 -8
  145. package/modules/@apostrophecms/ui/ui/apos/scss/global/_tooltips.scss +13 -7
  146. package/modules/@apostrophecms/ui/ui/apos/scss/global/import-all.scss +1 -1
  147. package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_input_mixins.scss +5 -3
  148. package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_mixins.scss +1 -0
  149. package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_responsive.scss +4 -3
  150. package/modules/@apostrophecms/ui/ui/apos/scss/mixins/_theme_mixins.scss +6 -0
  151. package/modules/@apostrophecms/ui/ui/apos/scss/shared/_table-rows.scss +6 -3
  152. package/modules/@apostrophecms/ui/ui/apos/stores/modal.js +180 -0
  153. package/modules/@apostrophecms/widget-type/ui/apos/components/AposWidgetEditor.vue +2 -2
  154. package/package.json +4 -4
  155. package/test/modules/@apostrophecms/search/views/index.html +1 -0
  156. package/test/pages.js +227 -0
  157. package/test/schemas.js +184 -0
  158. 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.menuItem.modifiers && this.menuItem.modifiers.includes('selected')) {
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
- flex-grow: 1;
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 scale-unlimited/declaration-strict-value */
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 0.2s ease;
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
  }
@@ -37,6 +37,7 @@ export default {
37
37
  border: 1px solid var(--a-base-8);
38
38
  border-radius: var(--a-border-radius);
39
39
  font-size: var(--a-type-tiny);
40
+
40
41
  &:hover {
41
42
  cursor: auto;
42
43
  }
@@ -103,6 +103,7 @@ export default {
103
103
  <style lang="scss" scoped>
104
104
  .apos-min-max-count {
105
105
  @include type-help;
106
+
106
107
  display: flex;
107
108
  flex-grow: 1;
108
109
  margin-bottom: $spacing-base;
@@ -98,6 +98,7 @@ export default {
98
98
  <style lang="scss" scoped>
99
99
  .apos-pager {
100
100
  @include type-base;
101
+
101
102
  display: inline-flex;
102
103
  align-items: center;
103
104
  }
@@ -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 0.3s ease;
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 0.5s;
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 0.4s;
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="#cca9ff" />
15
- <stop offset="1" stop-color="#6516dd" />
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="#c8a2ff" />
19
- <stop offset="1" stop-color="#6516dd" />
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: counterClockwise 2s infinite linear;
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 1s infinite linear;
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 counterClockwise {
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 0.5s;
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
- @include apos-transition(all, 0.1s, ease-in-out);
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
- $toggleHeight: 13px;
35
- $toggleWidth: $toggleHeight * 1.7;
36
- $btnSize: $toggleHeight;
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
- border-radius: 34px;
43
- width: $toggleWidth;
44
- height: $toggleHeight;
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
- &:before {
49
+ &::before {
50
50
  content: '';
51
51
  position: absolute;
52
- width: $btnSize;
53
- height: $btnSize;
52
+ width: $btn-size;
53
+ height: $btn-size;
54
54
  border-radius: 50%;
55
55
  background-color: var(--a-white);
56
- transition: all 0.3s ease-out;
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
- &:before {
64
- transform: translateX(calc($toggleWidth - $btnSize));
63
+ &::before {
64
+ transform: translateX(calc($toggle-width - $btn-size));
65
65
  }
66
66
  }
67
67
  }
@@ -203,6 +203,7 @@ export default {
203
203
 
204
204
  .apos-tree {
205
205
  @include type-base;
206
+
206
207
  color: var(--a-text-primary);
207
208
  }
208
209