diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2e1d939..c378780 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,11 @@
+## 1.0.7 - 2020-04-15
+### Improved
+- Improved some UI elements to better fit with Craft 3.4
+- Added automatic slug generation when creating a tag
+
+### Fixed
+- Fix JS error when trying to replace a tag (Fixes #13)
+
## 1.0.6 - 2020-01-15
### Fixed
- Fix issue with pgsql when usage column is enabled
diff --git a/composer.json b/composer.json
index 55af605..0d03984 100644
--- a/composer.json
+++ b/composer.json
@@ -2,7 +2,7 @@
"name": "ether/tags",
"description": "A tag manager for Craft 3",
"type": "craft-plugin",
- "version": "1.0.6",
+ "version": "1.0.7",
"keywords": [
"craft",
"cms",
diff --git a/src/templates/_edit.twig b/src/templates/_edit.twig
index 9e4e11f..b42f3b6 100644
--- a/src/templates/_edit.twig
+++ b/src/templates/_edit.twig
@@ -69,6 +69,16 @@
{% endif %}
+ {% if tag.id %}
+
+
+ {% endif %}
{% endblock %}
@@ -105,7 +115,7 @@
{% block details %}
- {% endif %}
+ {% endif %}#}
{{ forms.textField({
label: 'Slug'|t('app'),
@@ -134,7 +144,8 @@
autocapitalize: false,
value: tag.slug,
placeholder: 'Enter slug'|t('app'),
- errors: (tag.getErrors('slug')|merge(tag.getErrors('uri')))
+ errors: (tag.getErrors('slug')|merge(tag.getErrors('uri'))),
+ first: true
}) }}
@@ -151,3 +162,11 @@
{% endif %}
{% endblock %}
+
+{% if not tag.slug %}
+ {% js %}
+ window.slugGenerator = new Craft.SlugGenerator('#title', '#slug', {
+ charMap: {{ craft.cp.getAsciiCharMap(tag.site.language)|json_encode|raw }}
+ });
+ {% endjs %}
+{% endif %}
\ No newline at end of file
diff --git a/src/web/assets/TagIndex.js b/src/web/assets/TagIndex.js
index cc74148..ebc461a 100644
--- a/src/web/assets/TagIndex.js
+++ b/src/web/assets/TagIndex.js
@@ -111,7 +111,7 @@ Craft.TagsIndex = Craft.BaseElementIndex.extend({
for (let i = 0, l = this.editableGroups.length; i < l; ++i) {
let group = this.editableGroups[i];
- if (isIndex || group.id !== selectedGroup.id) {
+ if (isIndex || (selectedGroup && group.id !== selectedGroup.id)) {
href = this._getGroupTriggerHref(group);
label =
isIndex