Skip to content

Commit 9664bcc

Browse files
committed
add message type
1 parent 70bfdd4 commit 9664bcc

File tree

1 file changed

+49
-6
lines changed

1 file changed

+49
-6
lines changed

index.html

+49-6
Original file line numberDiff line numberDiff line change
@@ -110,14 +110,40 @@
110110
"uri": "<<uri>>"
111111
}
112112
}
113+
`
114+
var baseContentsSendMessageItem = `
115+
{
116+
"type": "box",
117+
"layout": "vertical",
118+
"contents": [
119+
{
120+
"type": "text",
121+
"text": "<<template>>",
122+
"color": "#2D558F",
123+
"wrap": true,
124+
"align": "center"
125+
}
126+
],
127+
"paddingStart": "xl",
128+
"paddingEnd": "xl",
129+
"paddingTop": "md",
130+
"paddingBottom": "md",
131+
"action": {
132+
"type": "message",
133+
"label": "<<template>>",
134+
"text": "<<template>>"
135+
}
136+
}
113137
`
114138

115139
// テンプレートを使ってjsonを生成する
116140
generateJson = function (title, itemsArray) {
117141
var contents = []
118142
var contentItems = itemsArray.forEach(item => {
119143
let jsonStr;
120-
if (item.uri) {
144+
if (item.isSendMessage) {
145+
jsonStr = baseContentsSendMessageItem.replace(/<<template>>/g, item.label)
146+
} else if (item.uri) {
121147
jsonStr = baseContentsLinkItem.replace(/<<label>>/g, item.label).replace(/<<uri>>/g, item.uri)
122148
} else {
123149
jsonStr = baseContentsItem.replace(/<<template>>/g, item.label)
@@ -140,13 +166,19 @@
140166
// アイテム要素を追加
141167
$("#items").append(`
142168
<div class="item-wrap" >
143-
<div class="col-sm-6">
169+
<div class="col-sm-5">
144170
<input type="text" class="form-control item" id="item">
145171
</div>
146172
<div class="col-sm-4">
147173
<input type="text" class="form-control item" id="url-item">
148174
</div>
149175
<div class="col-sm-2">
176+
<input class="form-check-input" type="checkbox" value="" id="isSendMessage">
177+
<label class="form-check-label" for="isSendMessage">
178+
isSendMessage
179+
</label>
180+
</div>
181+
<div class="col-sm-1">
150182
<button class="btn btn-primary btn-sm remove-item">Remove</button>
151183
</div>
152184
</div>
@@ -166,23 +198,27 @@
166198
// 配列内部のオブジェクト型は以下
167199
// {
168200
// label: <>,
169-
// uri: <>
201+
// uri: <>,
202+
// isSendMessage: boolean
170203
// }
171204

172205
$(".item-wrap").each(function() {
173206
const label = $(this).find("#item").val();
174207
const uri = $(this).find("#url-item").val();
208+
const isSendMessage = $(this).find("#isSendMessage").prop('checked');
175209
if (!label) {
176210
// skip
177211
} else if (!uri) {
178212
items.push({
179213
label,
180-
uri: null
214+
uri: null,
215+
isSendMessage
181216
})
182217
} else {
183218
items.push({
184219
label,
185-
uri
220+
uri,
221+
isSendMessage
186222
})
187223
}
188224
});
@@ -231,15 +267,22 @@
231267

232268
<label for="item">Items:</label>
233269
<label for="url-item">2つめのボックスはURI(URIアクションの場合はここにURIを入力)</label>
270+
<label for="isSendMessage">3つめのチェックボックスはSendMessageLinkにするかどうか(URIの入力よりも優先する)</label>
234271
<div class="row" id="items">
235272
<div class="item-wrap" >
236-
<div class="col-sm-6">
273+
<div class="col-sm-5">
237274
<input type="text" class="form-control item" id="item">
238275
</div>
239276
<div class="col-sm-4">
240277
<input type="text" class="form-control item" id="url-item">
241278
</div>
242279
<div class="col-sm-2">
280+
<input class="form-check-input" type="checkbox" value="" id="isSendMessage">
281+
<label class="form-check-label" for="isSendMessage">
282+
isSendMessage
283+
</label>
284+
</div>
285+
<div class="col-sm-1">
243286
<button class="btn btn-primary btn-sm remove-item">Remove</button>
244287
</div>
245288
</div>

0 commit comments

Comments
 (0)