beyond-rails 0.0.261 → 0.0.266
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.
- checksums.yaml +4 -4
- data/src/js/components/Modal.js +1 -0
- data/src/js/components/SearchDropdown.js +1 -0
- data/src/js/components/TagInput.js +33 -15
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 805f3abdc89e3ba6a80306075b91a7a3a0f75760a97755d07ca5a40ecce2326d
|
4
|
+
data.tar.gz: 9b0c72b2864035924f833226877d10c38f18e0e43d01de5f55115ebcf7f1f3fb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7219f2a16076bed1de20e2a149a92f92e595ec8a25427d36eab1fbb78ae5cf9036195017524d8a3c73e93a87bf4a876e876c9cbe933bc9283708fa2a23825a39
|
7
|
+
data.tar.gz: b7aa777f115fbd0c822e5fe8cf0994ff09d7a4af90b4e7bbed0adaf43bd93b3cb192ed033159b09b1b7b03ffe6d86d283b0373150c07198b97aa7065fb29d08b
|
data/src/js/components/Modal.js
CHANGED
@@ -68,11 +68,11 @@ export default class TagInput {
|
|
68
68
|
return nextWidth
|
69
69
|
}
|
70
70
|
|
71
|
-
shake() {
|
71
|
+
shake(duration = 500) {
|
72
72
|
this.dom.classList.add('shake')
|
73
73
|
setTimeout(() => {
|
74
74
|
this.dom.classList.remove('shake')
|
75
|
-
},
|
75
|
+
}, duration)
|
76
76
|
}
|
77
77
|
|
78
78
|
setTagAttrs(id, rows = [], options = {}) {
|
@@ -107,47 +107,63 @@ export default class TagInput {
|
|
107
107
|
}
|
108
108
|
}
|
109
109
|
|
110
|
-
getTag(
|
110
|
+
getTag(row) {
|
111
111
|
|
112
|
-
|
112
|
+
this.id += 1
|
113
|
+
|
114
|
+
const id = this.id
|
115
|
+
const classname = row.classname ? ` ${row.classname}` : ''
|
113
116
|
const tag = document.createElement('div')
|
114
117
|
|
115
118
|
tag.className = 'tag' + classname
|
116
|
-
tag.textContent =
|
119
|
+
tag.textContent = row.text
|
117
120
|
|
118
121
|
const btn = document.createElement('button')
|
119
122
|
btn.type = 'button'
|
120
123
|
|
121
124
|
// https://wesbos.com/times-html-entity-close-button
|
122
125
|
btn.textContent = '×'
|
123
|
-
const handleBtnClick =
|
126
|
+
const handleBtnClick = event => {
|
124
127
|
this.tags = this.tags.filter(row => row.elem !== tag)
|
125
128
|
btn.removeEventListener('click', handleBtnClick)
|
126
129
|
tag.remove()
|
127
|
-
|
130
|
+
|
131
|
+
if (event) {
|
132
|
+
this.change({
|
133
|
+
type: 'remove',
|
134
|
+
removedId: id,
|
135
|
+
tags: this.tags.slice()
|
136
|
+
})
|
137
|
+
}
|
128
138
|
}
|
129
139
|
btn.addEventListener('click', handleBtnClick)
|
130
140
|
tag.appendChild(btn)
|
131
|
-
this.id += 1
|
132
141
|
|
133
|
-
return { id
|
142
|
+
return { id, elem: tag, remove: handleBtnClick, ...row }
|
134
143
|
}
|
135
144
|
|
136
145
|
setTags(rows) {
|
146
|
+
this.tags.forEach(tag => tag.remove())
|
137
147
|
const { dom, inputDiv } = this
|
138
|
-
const tags = rows.map(row => this.getTag(row
|
148
|
+
const tags = rows.map(row => this.getTag(row))
|
139
149
|
tags.forEach(tag => {
|
140
150
|
dom.insertBefore(tag.elem, inputDiv)
|
141
151
|
})
|
142
152
|
this.tags = tags
|
143
|
-
this.change(
|
153
|
+
this.change({
|
154
|
+
type: 'set',
|
155
|
+
tags: this.tags.slice()
|
156
|
+
})
|
144
157
|
}
|
145
158
|
|
146
|
-
addTag(
|
147
|
-
const tag = this.getTag(
|
159
|
+
addTag(row, type = 'add') {
|
160
|
+
const tag = this.getTag(row)
|
148
161
|
this.tags.push(tag)
|
149
162
|
this.dom.insertBefore(tag.elem, this.inputDiv)
|
150
|
-
this.change(
|
163
|
+
this.change({
|
164
|
+
type,
|
165
|
+
tags: this.tags.slice()
|
166
|
+
})
|
151
167
|
}
|
152
168
|
|
153
169
|
async addTagIfNeeded() {
|
@@ -159,7 +175,9 @@ export default class TagInput {
|
|
159
175
|
}
|
160
176
|
input.value = ''
|
161
177
|
suggestInput.value = ''
|
162
|
-
|
178
|
+
|
179
|
+
const row = Object.assign({}, res, { text: inputValue })
|
180
|
+
this.addTag(row, 'input')
|
163
181
|
}
|
164
182
|
|
165
183
|
removeTagIfNeeded() {
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beyond-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.266
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kmsheng
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-12-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sassc
|