@@ -35,6 +35,7 @@
:selected-item="selectedItem"
:delete="removeNode"
:append="addNode"
+ :duplicate="duplicateNode"
:drop="handleDrop"
:config="config"
/>
@@ -46,7 +47,7 @@
>
{{ config.translation.click }}
@@ -77,19 +78,19 @@
required: true
}
},
- data: function() {
+ data() {
return {
list: [],
selectedItem: null
};
},
computed: {
- jsonList: function() {
+ jsonList() {
return JSON.stringify(this.list);
}
},
watch: {
- jsonList: function (newValue) {
+ jsonList (newValue) {
this.updateSerializedNodes(newValue)
}
},
@@ -116,13 +117,13 @@
},
methods: {
uuid,
- setSelectedNode: function(item) {
+ setSelectedNode(item) {
this.selectedItem = item;
},
- removeNode: function(list, index) {
+ removeNode(list, index) {
list.splice(index, 1);
},
- addNode: function(target) {
+ addNode(target) {
target.push({
id: this.uuid(),
uuid: this.uuid(),
@@ -131,12 +132,32 @@
content: null,
image: null,
image_alt_text: '',
+ image_width: null,
+ image_height: null,
node_template: null,
submenu_template: null,
columns: [],
- is_active: 0
+ is_active: 0,
+ customer_groups: []
});
},
+ setUniqueIds(node) {
+ if (node !== null) {
+ node = {
+ ...node,
+ id: this.uuid(),
+ uuid: this.uuid()
+ };
+ if (node.columns?.length) {
+ node.columns = node.columns.map(this.setUniqueIds);
+ }
+ }
+ return node;
+ },
+ duplicateNode(list, index) {
+ const newNode = this.setUniqueIds(list[index])
+ list.splice(++index, 0, newNode);
+ },
handleDrop(data) {
data.item.uuid = this.uuid();
data.list.splice(data.index, 0, data.item);
diff --git a/view/adminhtml/web/vue/field-type/autocomplete-lazy.vue b/view/adminhtml/web/vue/field-type/autocomplete-lazy.vue
index e4e7a7d1..44997000 100644
--- a/view/adminhtml/web/vue/field-type/autocomplete-lazy.vue
+++ b/view/adminhtml/web/vue/field-type/autocomplete-lazy.vue
@@ -23,7 +23,7 @@
:required="required"
@input="setValue"
>
-
+
{{ node.raw.full_label }}
@@ -37,7 +37,7 @@
:disabled="isDisabled"
:required="required"
>
-
+
{{ option.label }}
@@ -106,7 +106,7 @@
initialLoaded: false
}),
computed: {
- placeholder: function() {
+ placeholder() {
return this.config.translation.pleaseSelect + ' ' + this.label.toLocaleLowerCase();
},
loadedOptions() {
diff --git a/view/adminhtml/web/vue/field-type/autocomplete.vue b/view/adminhtml/web/vue/field-type/autocomplete.vue
index 41a08c64..47777185 100644
--- a/view/adminhtml/web/vue/field-type/autocomplete.vue
+++ b/view/adminhtml/web/vue/field-type/autocomplete.vue
@@ -20,7 +20,7 @@
:clearable="false"
:required="required"
>
-
+
{{ node.raw.full_label }}
@@ -34,7 +34,7 @@
:disabled="isDisabled"
:required="required"
>
-
+
{{ option.label }}
@@ -129,21 +129,21 @@
},
set(option) {
if (option && typeof option === 'object') {
- this.item[this.itemKey] = option.value.toString();
- this.item[this.itemIdKey] = option.id.toString();
+ this.$set(this.item, this.itemKey, option.value.toString());
+ this.$set(this.item, this.itemIdKey, option.id.toString());
}
else if (option && typeof option === 'string') {
- this.item[this.itemKey] = option;
+ this.$set(this.item, this.itemKey, option);
}
else {
- this.item[this.itemKey] = this.defaultSelectedOption ? this.defaultSelectedOption.value.toString() : '';
+ this.$set(this.item, this.itemKey, this.defaultSelectedOption ? this.defaultSelectedOption.value.toString() : '');
}
}
},
- placeholder: function() {
+ placeholder() {
return this.config.translation.pleaseSelect + ' ' + this.label.toLocaleLowerCase();
},
- optionsTree: function() {
+ optionsTree() {
const hashTable = {},
optionsTree = [];
diff --git a/view/adminhtml/web/vue/field-type/checkbox.vue b/view/adminhtml/web/vue/field-type/checkbox.vue
index cb7b7992..19b097b5 100644
--- a/view/adminhtml/web/vue/field-type/checkbox.vue
+++ b/view/adminhtml/web/vue/field-type/checkbox.vue
@@ -66,18 +66,18 @@ define(["Vue"], function(Vue) {
required: true
}
},
- data: function() {
+ data() {
return {
fieldId: '',
checkboxValue: this.value === '1' ? true : false
}
},
watch: {
- checkboxValue: function(newValue) {
+ checkboxValue(newValue) {
this.item.is_active = newValue ? '1' : '0';
}
},
- mounted: function() {
+ mounted() {
this.fieldId = 'snowmenu_' + this.id + '_' + this._uid;
},
template: template
diff --git a/view/adminhtml/web/vue/field-type/image-upload.vue b/view/adminhtml/web/vue/field-type/image-upload.vue
index 54318920..6d42f840 100644
--- a/view/adminhtml/web/vue/field-type/image-upload.vue
+++ b/view/adminhtml/web/vue/field-type/image-upload.vue
@@ -109,7 +109,7 @@
required: true
}
},
- data: function() {
+ data() {
return {
isDragging: false,
fieldId: '',
@@ -128,15 +128,15 @@
labelFileIsUploading: $t('Uploading file ...'),
}
},
- mounted: function() {
+ mounted() {
this.fieldId = 'snowmenu_' + this.id + '_' + this._uid;
},
methods: {
- setItemImage: function(file, url) {
+ setItemImage(file, url) {
this.item.image = file;
this.item.image_url = url;
},
- uploadFileToServer: function() {
+ uploadFileToServer() {
this.fileIsUploading = true;
var formData = new FormData();
@@ -158,6 +158,10 @@
if (response.file) {
this.setItemImage(response.file, response.url);
}
+ if (response.size) {
+ this.item.image_width = response.size.image_width;
+ this.item.image_height = response.size.image_heigth;
+ }
}.bind(this),
error: function() {
$('body').trigger('processStop');
@@ -171,7 +175,7 @@
});
},
- removeItemImage: function(e) {
+ removeItemImage(e) {
e.preventDefault();
if (!this.item.image) {
@@ -200,20 +204,22 @@
complete: function() {
this.setItemImage('', '');
$('body').trigger('processStop');
+ this.item.image_width = null;
+ this.item.image_height = null;
}.bind(this)
});
},
- removeNewFile: function() {
+ removeNewFile() {
this.$refs.fileUpload.value = '';
this.previewImage = '';
},
- assignImage: function(e) {
+ assignImage(e) {
this.previewImage = e.target.result;
},
- previewUploadImage: function(file) {
+ previewUploadImage(file) {
this.file = file;
if (file.type && file.type.indexOf('image') === -1) {
@@ -228,28 +234,28 @@
reader.readAsDataURL(file);
},
- chooseFile: function(e) {
+ chooseFile(e) {
e.preventDefault();
this.$refs.fileUpload.click()
},
- onDragEnter: function(e) {
+ onDragEnter(e) {
e.preventDefault();
this.isDragging = true;
},
- onDragLeave: function(e) {
+ onDragLeave(e) {
e.preventDefault();
this.isDragging = false;
},
- onDrop: function(e) {
+ onDrop(e) {
e.preventDefault();
e.stopPropagation();
this.previewUploadImage(e.dataTransfer.files[0])
},
- updateFile: function(event){
+ updateFile(event){
this.uploadError = '';
this.previewUploadImage(event.target.files[0]);
event.preventDefault();
diff --git a/view/adminhtml/web/vue/field-type/simple-field.vue b/view/adminhtml/web/vue/field-type/simple-field.vue
index 4fca646a..6dda6088 100644
--- a/view/adminhtml/web/vue/field-type/simple-field.vue
+++ b/view/adminhtml/web/vue/field-type/simple-field.vue
@@ -41,16 +41,16 @@
default: null
}
},
- data: function() {
+ data() {
return {
fieldId: ''
}
},
- mounted: function() {
+ mounted() {
this.fieldId = 'snowmenu_' + this.id + '_' + this._uid;
},
methods: {
- updateValue: function(value) {
+ updateValue(value) {
this.$emit('input', value);
}
},
diff --git a/view/adminhtml/web/vue/menu-type.vue b/view/adminhtml/web/vue/menu-type.vue
index 6479f277..db3c6e38 100644
--- a/view/adminhtml/web/vue/menu-type.vue
+++ b/view/adminhtml/web/vue/menu-type.vue
@@ -17,6 +17,7 @@
-
+
+
-
+
+
+
+ {{ config.translation.customerGroupsDescription }}
+
+
+
+
+
+
+
+
+
+
+
+
+
{{ templatesLabel }}
@@ -105,7 +147,7 @@
required: true
}
},
- data: function() {
+ data() {
return {
draft: {},
isNodeActiveLabel: $t('Enabled'),
@@ -119,7 +161,7 @@
}
},
computed: {
- isTemplateSectionVisible: function() {
+ isTemplateSectionVisible() {
var nodeId = this.templateList['node'],
submenuId = this.templateList['submenu'],
typeData = this.config.fieldData[this.item['type']];
@@ -130,7 +172,7 @@
return false;
},
- options: function() {
+ options() {
var list = [];
for (type in this.config.nodeTypes) {
list.push({
@@ -140,15 +182,15 @@
}
return list;
},
- templateOptions: function() {
+ templateOptions() {
return this.templateOptionsData[this.item['type']] || [];
},
- showImage: function() {
+ showImage() {
return ['category', 'product', 'custom_url'].includes(this.item.type);
}
},
methods: {
- changeType: function(selected) {
+ changeType(selected) {
if (selected && typeof selected === 'object') {
var type = this.item.type,
value = selected.value;
@@ -165,7 +207,7 @@
this.item['type'] = value;
}
},
- getOptionLabel: function(option) {
+ getOptionLabel(option) {
if (typeof option === 'object') {
return option.label;
}
diff --git a/view/adminhtml/web/vue/menu-type/cms-block.vue b/view/adminhtml/web/vue/menu-type/cms-block.vue
index 51eaa04e..b50c72b7 100644
--- a/view/adminhtml/web/vue/menu-type/cms-block.vue
+++ b/view/adminhtml/web/vue/menu-type/cms-block.vue
@@ -4,6 +4,7 @@
:description="config.translation.blockId"
:item="item"
item-key="content"
+ item-id-key="selected_item_id"
:options="config.fieldData.cms_block.snowMenuAutoCompleteField.options"
:config="config"
/>
diff --git a/view/adminhtml/web/vue/nested-list.vue b/view/adminhtml/web/vue/nested-list.vue
index c4a69416..ba33d76f 100644
--- a/view/adminhtml/web/vue/nested-list.vue
+++ b/view/adminhtml/web/vue/nested-list.vue
@@ -6,16 +6,22 @@
:selected="selectedEvent"
:delete="deleteEvent"
:append="appendEvent"
+ :duplicate="duplicateEvent"
:wrapper="list"
:class="{'selected': selectedItem === item}"
>
-
+
-
+
@@ -83,7 +113,8 @@
:selected-item="selectedItem"
:delete="deleteEvent"
:append="append"
- :drop="drop"
+ :duplicate="duplicate"
+ :drop="handleDrop"
:config="config"
/>
@@ -94,7 +125,7 @@
>
{{ config.translation.click }}
@@ -139,6 +170,10 @@
type: Function,
required: true
},
+ duplicate: {
+ type: Function,
+ required: true
+ },
append: {
type: Function,
required: true
@@ -152,42 +187,76 @@
required: true
},
},
- data: function() {
+ data() {
return {
editItem: false,
- collapsed: true
+ collapsed: true,
+ draggedOver: false,
+ dragCounter: 0,
+ isDragging: false,
}
},
methods: {
- selectedEvent: function(item) {
+ selectedEvent(item) {
if (typeof(this.selected) === 'function') {
this.selected(item);
}
},
- appendEvent: function(list, index) {
+ appendEvent(list, index) {
this.editItem = false;
this.collapsed = false;
if (typeof(this.append) === 'function') {
this.append(list[index].columns);
}
},
- deleteEvent: function(list, index) {
+ duplicateEvent(list, index) {
+ if (typeof(this.duplicate) === 'function') {
+ this.duplicate(list, index);
+ }
+ },
+ deleteEvent(list, index) {
this.editItem = false;
if (typeof(this.delete) === 'function') {
this.delete(list, index);
}
},
- getNodeType: function(type) {
+ getNodeType(type) {
var nodeType = '';
if (type) {
nodeType = '(' + this.$root.config.nodeTypes[type] + ')';
}
return nodeType;
},
- editNode: function() {
+ editNode() {
this.editItem = !this.editItem;
this.collapsed = !this.editItem;
- }
+ },
+ dragover() {
+ this.isDragging = true;
+ },
+ dragenter() {
+ this.dragCounter++;
+ setTimeout(() => {
+ if (this.isDragging) {
+ this.draggedOver = true;
+ }
+ }, 500)
+ },
+ dragleave() {
+ this.dragCounter--;
+ this.isDragging = false;
+ setTimeout(() => {
+ if (this.dragCounter === 0) {
+ this.draggedOver = false;
+ }
+ }, 500)
+ },
+ handleDrop(data) {
+ this.drop(data)
+ this.draggedOver = false;
+ this.dragCounter = 0;
+ this.collapsed = false;
+ },
},
template: template
});
diff --git a/view/frontend/templates/hyva-menu-footer/menu/node_type/category.phtml b/view/frontend/templates/hyva-menu-footer/menu/node_type/category.phtml
index 0288bf48..25782224 100644
--- a/view/frontend/templates/hyva-menu-footer/menu/node_type/category.phtml
+++ b/view/frontend/templates/hyva-menu-footer/menu/node_type/category.phtml
@@ -4,6 +4,8 @@ $nodeId = $block->getId();
$categoryUrl = $block->getCategoryUrl($nodeId) ?: '#';
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
$title = $block->getTitle();
$nodeClasses = $block->getNodeClasses();
?>
@@ -17,6 +19,8 @@ $nodeClasses = $block->getNodeClasses();
src="= $escaper->escapeUrl($imageUrl) ?>"
alt="= $escaper->escapeHtmlAttr($imageAltText) ?>"
loading="lazy"
+ width="= $escaper->escapeHtmlAttr($imageWidth) ?>"
+ height="= $escaper->escapeHtmlAttr($imageHeight) ?>"
/>
diff --git a/view/frontend/templates/hyva-menu-footer/menu/node_type/custom_url.phtml b/view/frontend/templates/hyva-menu-footer/menu/node_type/custom_url.phtml
index c7c42a91..9ea914ef 100644
--- a/view/frontend/templates/hyva-menu-footer/menu/node_type/custom_url.phtml
+++ b/view/frontend/templates/hyva-menu-footer/menu/node_type/custom_url.phtml
@@ -3,6 +3,8 @@
$nodeId = $block->getId();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
$content = $block->getContent();
$title = $block->getTitle();
$dataAttribute = 'data-menu="menu-' . $nodeId . '"';
@@ -22,6 +24,8 @@ $nodeClasses = $block->getNodeClasses();
@@ -43,6 +47,8 @@ $nodeClasses = $block->getNodeClasses();
getTitle();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
$nodeClasses = $block->getNodeClasses();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
?>
diff --git a/view/frontend/templates/hyva-topmenu-desktop/menu.phtml b/view/frontend/templates/hyva-topmenu-desktop/menu.phtml
index 9a02831d..f1a96957 100644
--- a/view/frontend/templates/hyva-topmenu-desktop/menu.phtml
+++ b/view/frontend/templates/hyva-topmenu-desktop/menu.phtml
@@ -55,7 +55,10 @@ $uniqueId = '_' . uniqid();
class="snowdog-topmenu-desktop container lg:block"
aria-label="= $escaper->escapeHtmlAttr(__('Main menu')) ?>"
>
-
+
getNodes() as $node): ?>
getLevel() + 1;
@@ -75,7 +78,6 @@ $uniqueId = '_' . uniqid();
'bg-white rounded-t-lg shadow-md' : '= /* @noEscape */ !!$children ?>' && openSubmenuId === '= /* @noEscape */ (string) $nodeId ?>'
}"
@mouseenter="openSubmenuId = '= /* @noEscape */ (string) $nodeId ?>'"
- @mouseleave="openSubmenuId = null"
@keydown.escape="onSubmenuEscape"
>
diff --git a/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/category.phtml b/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/category.phtml
index cb6b6a40..788935dc 100644
--- a/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/category.phtml
+++ b/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/category.phtml
@@ -4,6 +4,8 @@ $nodeId = $block->getId();
$categoryUrl = $block->getCategoryUrl($nodeId) ?: '#';
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
$title = $block->getTitle();
$nodeClasses = $block->getNodeClasses();
?>
@@ -17,6 +19,8 @@ $nodeClasses = $block->getNodeClasses();
src="= $escaper->escapeUrl($imageUrl) ?>"
alt="= $escaper->escapeHtmlAttr($imageAltText) ?>"
loading="lazy"
+ width="= $escaper->escapeHtmlAttr($imageWidth) ?>"
+ height="= $escaper->escapeHtmlAttr($imageHeight) ?>"
/>
diff --git a/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/custom_url.phtml b/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/custom_url.phtml
index c35ced35..00d3e23f 100644
--- a/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/custom_url.phtml
+++ b/view/frontend/templates/hyva-topmenu-desktop/menu/node_type/custom_url.phtml
@@ -3,6 +3,8 @@
$nodeId = $block->getId();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
$content = $block->getContent();
$title = $block->getTitle();
$dataAttribute = 'data-menu="menu-' . $nodeId . '"';
@@ -22,6 +24,8 @@ $nodeClasses = $block->getNodeClasses();
@@ -43,6 +47,8 @@ $nodeClasses = $block->getNodeClasses();
getTitle();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
$nodeClasses = $block->getNodeClasses();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
?>
diff --git a/view/frontend/templates/menu/node_type/category.phtml b/view/frontend/templates/menu/node_type/category.phtml
index f9bc2e45..2fffe385 100644
--- a/view/frontend/templates/menu/node_type/category.phtml
+++ b/view/frontend/templates/menu/node_type/category.phtml
@@ -7,6 +7,8 @@ $categoryUrl = $categoryUrl ?: '#';
$dataAttribute = '';
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
if ($block->getIsViewAllLink()) {
$title = __('View All');
@@ -34,5 +36,7 @@ if ($block->getIsViewAllLink()) {
src="= $block->escapeUrl($imageUrl); ?>"
alt="= $block->escapeHtmlAttr($imageAltText); ?>"
loading="lazy"
+ width="= $escaper->escapeHtmlAttr($imageWidth) ?>"
+ height="= $escaper->escapeHtmlAttr($imageHeight) ?>"
/>
diff --git a/view/frontend/templates/menu/node_type/custom_url.phtml b/view/frontend/templates/menu/node_type/custom_url.phtml
index 640e27f0..eff8bdee 100644
--- a/view/frontend/templates/menu/node_type/custom_url.phtml
+++ b/view/frontend/templates/menu/node_type/custom_url.phtml
@@ -4,6 +4,8 @@ $attributes = [];
$class = $block->getMenuClass();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
$content = $block->getContent();
if ($block->getIsViewAllLink()) {
@@ -44,5 +46,7 @@ $allAttributes = implode(' ', $attributes);
src="= $block->escapeUrl($imageUrl); ?>"
alt="= $block->escapeHtmlAttr($imageAltText); ?>"
loading="lazy"
+ width="= $escaper->escapeHtmlAttr($imageWidth) ?>"
+ height="= $escaper->escapeHtmlAttr($imageHeight) ?>"
/>
diff --git a/view/frontend/templates/menu/node_type/product.phtml b/view/frontend/templates/menu/node_type/product.phtml
index 6a4a9598..12cb1ffc 100644
--- a/view/frontend/templates/menu/node_type/product.phtml
+++ b/view/frontend/templates/menu/node_type/product.phtml
@@ -14,6 +14,8 @@ $classLink = $block->getIsRoot() ? $class . '__link' : $class . '__inner-link';
$title = $block->getTitle();
$imageUrl = $block->getImageUrl();
$imageAltText = $block->getImageAltText();
+$imageWidth = $block->getImageWidth();
+$imageHeight = $block->getImageHeight();
if ($nodeId) {
$dataAttribute = ' data-menu="menu-' . $nodeId . '"';
@@ -32,5 +34,7 @@ if ($nodeId) {
src="= $block->escapeUrl($imageUrl); ?>"
alt="= $block->escapeHtmlAttr($imageAltText); ?>"
loading="lazy"
+ width="= $escaper->escapeHtmlAttr($imageWidth) ?>"
+ height="= $escaper->escapeHtmlAttr($imageHeight) ?>"
/>
diff --git a/yarn.lock b/yarn.lock
index e96fb622..c91ec4f4 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -184,21 +184,7 @@ cssesc@^3.0.0:
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
-debug@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
- integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
- dependencies:
- ms "^2.1.1"
-
-debug@^4.3.2:
- version "4.3.2"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
- integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
- dependencies:
- ms "2.1.2"
-
-debug@^4.3.4:
+debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
@@ -543,7 +529,7 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.2:
dependencies:
brace-expansion "^1.1.7"
-ms@2.1.2, ms@^2.1.1:
+ms@2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==