/
list_item.js
106 lines (74 loc) · 2.54 KB
/
list_item.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
'use strict'
var eLayout = {
row: 'list-item-row-layout',
box: 'list-item-box-layout'
}
class cListElement {
constructor(_Parts, _LayoutRatio) {
this.Parts = _Parts
this.LayoutRatio = _LayoutRatio
}
}
function buildListItem(_JsonObject, _Layout) {
let Container = document.createElement('li')
for (let i = 0; i < _JsonObject.Parts.length; i ++) {
Container.append(_JsonObject.Parts[i])
}
Container.classList.add(_Layout)
Container.style.gridTemplateColumns = _JsonObject.LayoutRatio
return Container
}
function getListItemPart(_Container, _Position) {
return _Container.children[_Position]
}
// ---------------------------------------------------------------------------------------------------------------------
function getImagePart(_Artwork) {
let ImageElement = document.createElement('img')
ImageElement.src = _Artwork
return ImageElement
}
function getBoldTextPart(_Text) {
let TextElement = document.createElement('div')
TextElement.innerHTML = sanitizeString(_Text)
TextElement.classList.add('list-item-bold-text')
return TextElement
}
function getTextPart(_Text) {
let TextElement = document.createElement('div')
TextElement.innerHTML = sanitizeString(_Text)
TextElement.classList.add('list-item-text')
return TextElement
}
function getDescriptionPart(_Icon, _Text) {
let TextElement = document.createElement('div')
TextElement.innerHTML = _Icon
TextElement.title = sanitizeString(_Text)
TextElement.classList.add('list-item-description')
TextElement.classList.add('list-item-icon')
return TextElement
}
function getSubTextPart(_Text) {
let TextElement = document.createElement('div')
TextElement.innerHTML = sanitizeString(_Text)
TextElement.classList.add('list-item-sub-text')
return TextElement
}
function getFlagPart(_Text, _Color, _BackgroundColor) {
let FlagElement = document.createElement('div')
FlagElement.innerHTML = sanitizeString(_Text)
FlagElement.style.color = _Color
FlagElement.style.backgroundColor = _BackgroundColor
FlagElement.classList.add('list-item-flag')
return FlagElement
}
function getTextButtonPart(_Text) {
let ButtonElement = document.createElement('button')
ButtonElement.text = sanitizeString(_Text)
return ButtonElement
}
function getIconButtonPart(_Icon) {
let IconButtonElement = document.createElement('div')
IconButtonElement.innerHTML = _Icon
IconButtonElement.classList.add('list-item-icon')
return IconButtonElement
}