gnui 1.2.17 → 1.2.19
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.
- package/dist/js/gnui.esm.js +736 -96
- package/dist/js/gnui.js +736 -96
- package/dist/js/gnui.min.js +6 -6
- package/dist/styles/default.css +1019 -108
- package/dist/styles/gpi.css +1019 -108
- package/dist/styles/green24.css +1230 -289
- package/dist/styles/insights.css +1019 -108
- package/dist/styles/nac.css +969 -58
- package/dist/styles/ztnac.css +1206 -265
- package/package.json +1 -1
- package/styleguide/assets/components.js +216 -9
- package/styleguide/assets/js/gnui.js +736 -96
- package/styleguide/assets/js/gnui.min.js +6 -6
- package/styleguide/assets/styles/default.css +1019 -108
- package/styleguide/assets/styles/gpi.css +1019 -108
- package/styleguide/assets/styles/green24.css +1230 -289
- package/styleguide/assets/styles/insights.css +1019 -108
- package/styleguide/assets/styles/nac.css +969 -58
- package/styleguide/assets/styles/ztnac.css +1206 -265
- package/styleguide/category/COLOR/index.html +2 -2
- package/styleguide/category/COMPONENT/Alert(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Bignumber/index.html +2 -2
- package/styleguide/category/COMPONENT/Breadcrumb/index.html +2 -2
- package/styleguide/category/COMPONENT/Calendar(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Card/index.html +2 -2
- package/styleguide/category/COMPONENT/Chart(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Datagrid(js)/index.html +136 -9
- package/styleguide/category/COMPONENT/Datalist(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Growl(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/JsonView(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Loader(js)/index.html +21 -4
- package/styleguide/category/COMPONENT/MenuButton(js)/index.html +74 -6
- package/styleguide/category/COMPONENT/Message(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Modal(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Pagination(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Panel/index.html +2 -2
- package/styleguide/category/COMPONENT/Progressbar(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Tab(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Tagcloud(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Tooltip(js)/index.html +2 -2
- package/styleguide/category/COMPONENT/Tree(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Button(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Checkbox/index.html +2 -2
- package/styleguide/category/CONTROLS/Colorpicker(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Datepicker(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Dropdown(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/File/index.html +2 -2
- package/styleguide/category/CONTROLS/Form/Control/index.html +2 -2
- package/styleguide/category/CONTROLS/Form/Field/index.html +2 -2
- package/styleguide/category/CONTROLS/Form/Plain/index.html +2 -2
- package/styleguide/category/CONTROLS/Input/index.html +2 -2
- package/styleguide/category/CONTROLS/MultiText(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Picklist(js)/index.html +28 -18
- package/styleguide/category/CONTROLS/Radio/index.html +2 -2
- package/styleguide/category/CONTROLS/Select/index.html +2 -2
- package/styleguide/category/CONTROLS/SelectButton(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Slider/index.html +2 -2
- package/styleguide/category/CONTROLS/SortableList(js)/index.html +487 -0
- package/styleguide/category/CONTROLS/Switch(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/SyntaxInput(js)/index.html +2 -2
- package/styleguide/category/CONTROLS/Textarea/index.html +2 -2
- package/styleguide/category/CONTROLS/Time(js)/index.html +2 -2
- package/styleguide/category/ELEMENTS/Box/index.html +2 -2
- package/styleguide/category/ELEMENTS/Icon/index.html +2 -2
- package/styleguide/category/ELEMENTS/Image/index.html +2 -2
- package/styleguide/category/ELEMENTS/List/index.html +2 -2
- package/styleguide/category/ELEMENTS/Table/index.html +2 -2
- package/styleguide/category/ELEMENTS/Tag/index.html +2 -2
- package/styleguide/category/ELEMENTS/Title/index.html +2 -2
- package/styleguide/category/LAYOUT/Container/index.html +2 -2
- package/styleguide/category/LAYOUT/Grid/index.html +2 -2
- package/styleguide/category/LAYOUT/Splitter(js)/index.html +2 -2
- package/styleguide/category/UTILITY/index.html +2 -2
- package/styleguide/category/Utils/index.html +2 -2
- package/styleguide/color.html +2 -2
- package/styleguide/index.html +2 -2
- package/styleguide/tag/javascript/index.html +608 -31
- package/styleguide/tag/v.0.1.0/index.html +608 -31
package/dist/styles/nac.css
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
transform: translateX(100%);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
.gn-container:not(:last-child), .gn-tagcloud:not(:last-child), .gn-tab:not(:last-child), .gn-progressbar:not(:last-child), .gn-picklist:not(:last-child), .gn-panel-3:not(:last-child), .gn-panel-2:not(:last-child), .gn-pagination:not(:last-child), .gn-message:not(:last-child), .gn-jsonview .jsonview-header:not(:last-child), .gn-growl:not(:last-child), .gn-gcolor:not(:last-child), .gn-card:not(:last-child), .gn-breadcrumb:not(:last-child), .gn-bignumber:not(:last-child), .gn-alert:not(:last-child), .gn-slider:not(:last-child), .gn-multitext:not(:last-child), .gn-field:not(:last-child), .gn-title:not(:last-child),
|
|
21
|
+
.gn-container:not(:last-child), .gn-tagcloud:not(:last-child), .gn-tab:not(:last-child), .gn-progressbar:not(:last-child), .gn-sortablelist:not(:last-child), .gn-picklist:not(:last-child), .gn-panel-3:not(:last-child), .gn-panel-2:not(:last-child), .gn-pagination:not(:last-child), .gn-message:not(:last-child), .gn-jsonview .jsonview-header:not(:last-child), .gn-growl:not(:last-child), .gn-gcolor:not(:last-child), .gn-card:not(:last-child), .gn-breadcrumb:not(:last-child), .gn-bignumber:not(:last-child), .gn-alert:not(:last-child), .gn-slider:not(:last-child), .gn-multitext:not(:last-child), .gn-field:not(:last-child), .gn-title:not(:last-child),
|
|
22
22
|
.gn-sub-title:not(:last-child), .gn-table:not(:last-child), .gn-list:not(:last-child), .gn-box-no-line:not(:last-child), .gn-box:not(:last-child) {
|
|
23
23
|
margin-bottom: 1rem;
|
|
24
24
|
}
|
|
@@ -2708,7 +2708,7 @@ tag:
|
|
|
2708
2708
|
}
|
|
2709
2709
|
.gn-icon-ext::before {
|
|
2710
2710
|
content: "\f15b";
|
|
2711
|
-
font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free";
|
|
2711
|
+
font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
2712
2712
|
font-weight: 300;
|
|
2713
2713
|
font-size: 1.6rem;
|
|
2714
2714
|
}
|
|
@@ -4217,10 +4217,6 @@ tag:
|
|
|
4217
4217
|
display: block;
|
|
4218
4218
|
word-break: break-word;
|
|
4219
4219
|
}
|
|
4220
|
-
.gn-title:not(:last-child),
|
|
4221
|
-
.gn-sub-title:not(:last-child) {
|
|
4222
|
-
margin-bottom: 1rem;
|
|
4223
|
-
}
|
|
4224
4220
|
|
|
4225
4221
|
.gn-title {
|
|
4226
4222
|
color: #535353;
|
|
@@ -5490,6 +5486,7 @@ compile: true
|
|
|
5490
5486
|
```ejs
|
|
5491
5487
|
<button name="new-button"></button>
|
|
5492
5488
|
<button name="new-button2"></button>
|
|
5489
|
+
<button name="new-button-submenu">편집 메뉴</button>
|
|
5493
5490
|
```
|
|
5494
5491
|
|
|
5495
5492
|
````
|
|
@@ -5529,6 +5526,51 @@ compile: true
|
|
|
5529
5526
|
value: 'menu2'
|
|
5530
5527
|
}]
|
|
5531
5528
|
});
|
|
5529
|
+
// 서브메뉴 예시
|
|
5530
|
+
Gn.create('menubutton', {
|
|
5531
|
+
target: 'button[name=new-button-submenu]',
|
|
5532
|
+
size: 'normal',
|
|
5533
|
+
textSets: {
|
|
5534
|
+
buttonText: '편집 메뉴'
|
|
5535
|
+
},
|
|
5536
|
+
onSelect: function (value, text, menu, e) {
|
|
5537
|
+
console.log('선택된 메뉴:', { value: value, text: text, menu: menu });
|
|
5538
|
+
},
|
|
5539
|
+
data: [
|
|
5540
|
+
{
|
|
5541
|
+
text: '파일',
|
|
5542
|
+
value: 'file',
|
|
5543
|
+
child: [
|
|
5544
|
+
{ text: '새 파일', value: 'file-new' },
|
|
5545
|
+
{ text: '열기', value: 'file-open' },
|
|
5546
|
+
{
|
|
5547
|
+
text: '최근 파일',
|
|
5548
|
+
value: 'file-recent',
|
|
5549
|
+
child: [
|
|
5550
|
+
{ text: 'document.txt', value: 'file-recent-1' },
|
|
5551
|
+
{ text: 'image.png', value: 'file-recent-2' }
|
|
5552
|
+
]
|
|
5553
|
+
},
|
|
5554
|
+
{ text: '저장', value: 'file-save', disabled: true },
|
|
5555
|
+
{ text: '다른 이름으로 저장', value: 'file-saveas' }
|
|
5556
|
+
]
|
|
5557
|
+
},
|
|
5558
|
+
{
|
|
5559
|
+
text: '편집',
|
|
5560
|
+
value: 'edit',
|
|
5561
|
+
actived: true,
|
|
5562
|
+
child: [
|
|
5563
|
+
{ text: '실행 취소', value: 'edit-undo' },
|
|
5564
|
+
{ text: '다시 실행', value: 'edit-redo' }
|
|
5565
|
+
]
|
|
5566
|
+
},
|
|
5567
|
+
{
|
|
5568
|
+
text: '도움말',
|
|
5569
|
+
value: 'help',
|
|
5570
|
+
disabled: true
|
|
5571
|
+
}
|
|
5572
|
+
]
|
|
5573
|
+
});
|
|
5532
5574
|
````
|
|
5533
5575
|
|
|
5534
5576
|
|
|
@@ -5585,15 +5627,21 @@ compile: true
|
|
|
5585
5627
|
</tr>
|
|
5586
5628
|
<tr>
|
|
5587
5629
|
<td colspan="2">data</td>
|
|
5588
|
-
<td>Array[{value, text,
|
|
5630
|
+
<td>Array[{value, text, html, child, disabled, actived}]</td>
|
|
5589
5631
|
<td></td>
|
|
5590
|
-
<td>메뉴 목록에 출력할
|
|
5632
|
+
<td>메뉴 목록에 출력할 목록<br/>- value: 메뉴 값<br/>- text: 메뉴 텍스트<br/>- html: HTML로 렌더링할 내용<br/>- child: 하위 메뉴 배열 (최대 2단계)<br/>- disabled: 비활성화 여부 (boolean)<br/>- actived: 활성화 상태 표시 여부</td>
|
|
5633
|
+
</tr>
|
|
5634
|
+
<tr>
|
|
5635
|
+
<td colspan="2">disabled</td>
|
|
5636
|
+
<td>boolean</td>
|
|
5637
|
+
<td>false</td>
|
|
5638
|
+
<td>버튼 비활성화 여부</td>
|
|
5591
5639
|
</tr>
|
|
5592
5640
|
<tr>
|
|
5593
5641
|
<td colspan="2">onSelect</td>
|
|
5594
|
-
<td>function(value, text)</td>
|
|
5642
|
+
<td>function(value, text, menu, e)</td>
|
|
5595
5643
|
<td></td>
|
|
5596
|
-
<td>메뉴 선택 시 수행될
|
|
5644
|
+
<td>메뉴 선택 시 수행될 이벤트<br/>- value: 선택된 메뉴의 값<br/>- text: 선택된 메뉴의 텍스트<br/>- menu: 선택된 메뉴 객체<br/>- e: MouseEvent 객체</td>
|
|
5597
5645
|
</tr>
|
|
5598
5646
|
</tbody>
|
|
5599
5647
|
</table>
|
|
@@ -5612,6 +5660,21 @@ compile: true
|
|
|
5612
5660
|
<td>void</td>
|
|
5613
5661
|
<td>버튼명을 변경한다.</td>
|
|
5614
5662
|
</tr>
|
|
5663
|
+
<tr>
|
|
5664
|
+
<td>reRender(data: Array)</td>
|
|
5665
|
+
<td>void</td>
|
|
5666
|
+
<td>메뉴 데이터를 전달받아 DOM을 다시 생성한다.</td>
|
|
5667
|
+
</tr>
|
|
5668
|
+
<tr>
|
|
5669
|
+
<td>disabled()</td>
|
|
5670
|
+
<td>void</td>
|
|
5671
|
+
<td>버튼을 비활성화한다.</td>
|
|
5672
|
+
</tr>
|
|
5673
|
+
<tr>
|
|
5674
|
+
<td>enabled()</td>
|
|
5675
|
+
<td>void</td>
|
|
5676
|
+
<td>버튼을 활성화한다.</td>
|
|
5677
|
+
</tr>
|
|
5615
5678
|
</tbody>
|
|
5616
5679
|
</table>
|
|
5617
5680
|
*/
|
|
@@ -5699,6 +5762,47 @@ compile: true
|
|
|
5699
5762
|
color: #fff;
|
|
5700
5763
|
background-color: #88b50f;
|
|
5701
5764
|
}
|
|
5765
|
+
.gn-menuButton .menuButton-menu.is-disabled {
|
|
5766
|
+
pointer-events: none;
|
|
5767
|
+
opacity: 0.5;
|
|
5768
|
+
}
|
|
5769
|
+
.gn-menuButton .menuButton-menu.is-actived {
|
|
5770
|
+
background-color: hsl(0, 0%, 100%);
|
|
5771
|
+
}
|
|
5772
|
+
.gn-menuButton .menuButton-menu.has-submenu .menuButton-menu-content {
|
|
5773
|
+
display: flex;
|
|
5774
|
+
align-items: center;
|
|
5775
|
+
justify-content: space-between;
|
|
5776
|
+
width: 100%;
|
|
5777
|
+
}
|
|
5778
|
+
.gn-menuButton .menuButton-menu.has-submenu .menuButton-menu-arrow {
|
|
5779
|
+
margin-left: 10px;
|
|
5780
|
+
display: inline-flex;
|
|
5781
|
+
align-items: center;
|
|
5782
|
+
}
|
|
5783
|
+
.gn-menuButton .menuButton-menu .menuButton-submenu {
|
|
5784
|
+
display: none;
|
|
5785
|
+
position: absolute;
|
|
5786
|
+
left: 100%;
|
|
5787
|
+
top: 0;
|
|
5788
|
+
min-width: 150px;
|
|
5789
|
+
background-color: hsl(0, 0%, 100%);
|
|
5790
|
+
border: 1px solid #bebebe;
|
|
5791
|
+
border-radius: 2px;
|
|
5792
|
+
z-index: 21;
|
|
5793
|
+
padding: 0.35rem;
|
|
5794
|
+
}
|
|
5795
|
+
.gn-menuButton .menuButton-menu .menuButton-submenu .menuButton-menu {
|
|
5796
|
+
color: hsl(0, 0%, 29%);
|
|
5797
|
+
cursor: pointer;
|
|
5798
|
+
}
|
|
5799
|
+
.gn-menuButton .menuButton-menu .menuButton-submenu .menuButton-menu:hover {
|
|
5800
|
+
color: #fff;
|
|
5801
|
+
background-color: #88b50f;
|
|
5802
|
+
}
|
|
5803
|
+
.gn-menuButton .menuButton-menu:hover > .menuButton-submenu {
|
|
5804
|
+
display: block;
|
|
5805
|
+
}
|
|
5702
5806
|
.gn-menuButton.is-white button {
|
|
5703
5807
|
color: hsl(0, 0%, 100%);
|
|
5704
5808
|
border-color: hsl(0, 0%, 100%);
|
|
@@ -9484,7 +9588,7 @@ tag:
|
|
|
9484
9588
|
}
|
|
9485
9589
|
.gn-select::after {
|
|
9486
9590
|
content: "\f107";
|
|
9487
|
-
font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
9591
|
+
font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
9488
9592
|
font-weight: 900;
|
|
9489
9593
|
position: absolute;
|
|
9490
9594
|
right: 0.5rem;
|
|
@@ -12646,9 +12750,13 @@ tag:
|
|
|
12646
12750
|
```ejs
|
|
12647
12751
|
<div class="new-grid"></div>
|
|
12648
12752
|
|
|
12649
|
-
<div style="width: 100%; height:
|
|
12753
|
+
<div style="width: 100%; height: 100px; overflow-x: auto; margin-top: 20px;">
|
|
12650
12754
|
<div class="new-grid2"></div>
|
|
12651
12755
|
</div>
|
|
12756
|
+
|
|
12757
|
+
<div style="width: 100%; height: 350px; overflow-x: auto; margin-top: 20px;">
|
|
12758
|
+
<div class="new-grid3"></div>
|
|
12759
|
+
</div>
|
|
12652
12760
|
```
|
|
12653
12761
|
````
|
|
12654
12762
|
Gn.create('datagrid', {
|
|
@@ -12761,19 +12869,122 @@ Gn.create('datagrid', {
|
|
|
12761
12869
|
})
|
|
12762
12870
|
Gn.create('datagrid', {
|
|
12763
12871
|
target: '.new-grid2',
|
|
12872
|
+
headers: [
|
|
12873
|
+
{
|
|
12874
|
+
label: 'no',
|
|
12875
|
+
key: 'number',
|
|
12876
|
+
onSelect: function () {
|
|
12877
|
+
// eslint-disable-next-line prefer-rest-params
|
|
12878
|
+
console.log(arguments);
|
|
12879
|
+
},
|
|
12880
|
+
template: function (k, d) {
|
|
12881
|
+
return '<span>' + d[k] + '</span>';
|
|
12882
|
+
},
|
|
12883
|
+
draggable: true,
|
|
12884
|
+
sortable: true,
|
|
12885
|
+
sort: 'asc'
|
|
12886
|
+
},
|
|
12887
|
+
{
|
|
12888
|
+
label: '제목',
|
|
12889
|
+
key: 'title',
|
|
12890
|
+
style: {
|
|
12891
|
+
width: '250px'
|
|
12892
|
+
},
|
|
12893
|
+
className: 'has-text-right',
|
|
12894
|
+
draggable: true,
|
|
12895
|
+
bodyClass: 'has-text-left',
|
|
12896
|
+
sortable: true
|
|
12897
|
+
},
|
|
12898
|
+
{
|
|
12899
|
+
label: '날짜',
|
|
12900
|
+
key: 'date',
|
|
12901
|
+
style: {
|
|
12902
|
+
width: '150px'
|
|
12903
|
+
},
|
|
12904
|
+
className: 'has-text-center',
|
|
12905
|
+
bodyClass: 'has-text-left'
|
|
12906
|
+
}
|
|
12907
|
+
],
|
|
12908
|
+
data: [
|
|
12909
|
+
{
|
|
12910
|
+
number: '1',
|
|
12911
|
+
title: '하나',
|
|
12912
|
+
date: '2020-09-19',
|
|
12913
|
+
desc: 'hello, world',
|
|
12914
|
+
child: [
|
|
12915
|
+
{
|
|
12916
|
+
number: '1-1',
|
|
12917
|
+
title: '1-하나',
|
|
12918
|
+
date: '2020-09-19'
|
|
12919
|
+
},
|
|
12920
|
+
{
|
|
12921
|
+
number: '1-2',
|
|
12922
|
+
title: '1-둘',
|
|
12923
|
+
date: '2020-09-19',
|
|
12924
|
+
desc: 'hello, world',
|
|
12925
|
+
child: [
|
|
12926
|
+
{
|
|
12927
|
+
number: '1-2-1',
|
|
12928
|
+
title: '1-둘-1',
|
|
12929
|
+
date: '2020-09-19',
|
|
12930
|
+
desc: 'hello, world',
|
|
12931
|
+
child: [
|
|
12932
|
+
{
|
|
12933
|
+
number: '1-2-1-1',
|
|
12934
|
+
title: '1-둘-1-1',
|
|
12935
|
+
desc: 'hello, world',
|
|
12936
|
+
date: '2020-09-19'
|
|
12937
|
+
}
|
|
12938
|
+
]
|
|
12939
|
+
}
|
|
12940
|
+
]
|
|
12941
|
+
}
|
|
12942
|
+
],
|
|
12943
|
+
color: 'is-danger-light'
|
|
12944
|
+
},
|
|
12945
|
+
{
|
|
12946
|
+
number: '2',
|
|
12947
|
+
title: '둘',
|
|
12948
|
+
date: '2020-09-19',
|
|
12949
|
+
desc: 'hello, world'
|
|
12950
|
+
}
|
|
12951
|
+
],
|
|
12952
|
+
hasHeader: false,
|
|
12953
|
+
hasCheck: true,
|
|
12954
|
+
hasDelete: true,
|
|
12955
|
+
textSets: {
|
|
12956
|
+
deleteConfirmMessage: '파일을 삭제하시겠습니까?'
|
|
12957
|
+
},
|
|
12958
|
+
// onDelete 에서 false 를 반환하면 해당 행 삭제를 취소할 수 있다.
|
|
12959
|
+
onDelete: (data, index) => {
|
|
12960
|
+
console.log(data, index);
|
|
12961
|
+
// 예) 특정 조건에 따라 삭제 취소
|
|
12962
|
+
// if (index === 0) {
|
|
12963
|
+
// return false;
|
|
12964
|
+
// }
|
|
12965
|
+
}
|
|
12966
|
+
})
|
|
12967
|
+
Gn.create('datagrid', {
|
|
12968
|
+
target: '.new-grid3',
|
|
12764
12969
|
headers: [
|
|
12765
12970
|
{
|
|
12766
12971
|
label: 'row data numbers',
|
|
12767
12972
|
key: 'number',
|
|
12768
12973
|
style: { width: '50px' },
|
|
12769
12974
|
sortable: true,
|
|
12770
|
-
draggable: true
|
|
12975
|
+
draggable: true,
|
|
12976
|
+
template: function (k, d) {
|
|
12977
|
+
return '<span>' + d[k] + '</span>';
|
|
12978
|
+
}
|
|
12771
12979
|
},
|
|
12772
12980
|
{
|
|
12773
12981
|
label: '제목',
|
|
12774
12982
|
key: 'title',
|
|
12775
12983
|
sortable: true,
|
|
12776
|
-
draggable: true
|
|
12984
|
+
draggable: true,
|
|
12985
|
+
template: function (k, d) {
|
|
12986
|
+
return '<span>' + d[k] + '</span>';
|
|
12987
|
+
}
|
|
12777
12988
|
},
|
|
12778
12989
|
{
|
|
12779
12990
|
label: '날짜를 표시하는 컬럼입니다',
|
|
@@ -12836,8 +13047,6 @@ Gn.create('datagrid', {
|
|
|
12836
13047
|
paginator: {
|
|
12837
13048
|
rows: 30
|
|
12838
13049
|
},
|
|
12839
|
-
hasDelete: true,
|
|
12840
|
-
fixHeader: true,
|
|
12841
13050
|
onChange: updatedData => {
|
|
12842
13051
|
console.log(updatedData)
|
|
12843
13052
|
}
|
|
@@ -12952,7 +13161,7 @@ Gn.create('datagrid', {
|
|
|
12952
13161
|
<b>color:is-warning-light</b> => 행의 색 변경</td>
|
|
12953
13162
|
</tr>
|
|
12954
13163
|
<tr>
|
|
12955
|
-
<td rowspan="
|
|
13164
|
+
<td rowspan="4">textSets</td>
|
|
12956
13165
|
<td>noData</td>
|
|
12957
13166
|
<td>string</td>
|
|
12958
13167
|
<td>No records available.</td>
|
|
@@ -12970,6 +13179,12 @@ Gn.create('datagrid', {
|
|
|
12970
13179
|
<td></td>
|
|
12971
13180
|
<td>삭제버튼 헤더표시문구</td>
|
|
12972
13181
|
</tr>
|
|
13182
|
+
<tr>
|
|
13183
|
+
<td>deleteConfirmMessage</td>
|
|
13184
|
+
<td>string</td>
|
|
13185
|
+
<td></td>
|
|
13186
|
+
<td>삭제 확인 창 표시문구 - 삭제 버튼 클릭시 확인 창 출력</td>
|
|
13187
|
+
</tr>
|
|
12973
13188
|
<tr>
|
|
12974
13189
|
<td colspan="2">childField</td>
|
|
12975
13190
|
<td>string</td>
|
|
@@ -12994,6 +13209,12 @@ Gn.create('datagrid', {
|
|
|
12994
13209
|
<td>false</td>
|
|
12995
13210
|
<td>삭제버튼 생성 여부</td>
|
|
12996
13211
|
</tr>
|
|
13212
|
+
<tr>
|
|
13213
|
+
<td colspan="2">hasHeader</td>
|
|
13214
|
+
<td>boolean</td>
|
|
13215
|
+
<td>true</td>
|
|
13216
|
+
<td>헤더 생성 여부</td>
|
|
13217
|
+
</tr>
|
|
12997
13218
|
<tr>
|
|
12998
13219
|
<td colspan="2">readonly</td>
|
|
12999
13220
|
<td>boolean</td>
|
|
@@ -13091,6 +13312,12 @@ Gn.create('datagrid', {
|
|
|
13091
13312
|
<td></td>
|
|
13092
13313
|
<td>이동, 삭제 등의 데이터 변경이 있는 경우, 변경된 데이터를 가져오기 위한 이벤트핸들러</td>
|
|
13093
13314
|
</tr>
|
|
13315
|
+
<tr>
|
|
13316
|
+
<td colspan="2">onDelete</td>
|
|
13317
|
+
<td>function(deletedData, index)</td>
|
|
13318
|
+
<td>deletedData, index 를 인자로 받으며, false 를 반환하면 해당 행 삭제를 취소한다.</td>
|
|
13319
|
+
<td>삭제 버튼 클릭 시 삭제 대상 데이터와 인덱스를 받을 수 있는 이벤트핸들러<br>onChange 보다 먼저 동작하며, onDelete 에서 false 를 반환하면 실제 삭제 및 onChange 호출이 수행되지 않는다.</td>
|
|
13320
|
+
</tr>
|
|
13094
13321
|
</tbody>
|
|
13095
13322
|
</table>
|
|
13096
13323
|
|
|
@@ -13276,11 +13503,11 @@ Gn.create('datagrid', {
|
|
|
13276
13503
|
}
|
|
13277
13504
|
.gn-datagrid .gn-datagrid-body-row .is-toggler::before {
|
|
13278
13505
|
content: "\f0d7";
|
|
13279
|
-
font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
13506
|
+
font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
13280
13507
|
font-weight: 700;
|
|
13281
13508
|
}
|
|
13282
13509
|
.gn-datagrid .gn-datagrid-body-row.has-child[data-depth="0"] .is-toggler {
|
|
13283
|
-
margin-left: -
|
|
13510
|
+
margin-left: -6px;
|
|
13284
13511
|
}
|
|
13285
13512
|
.gn-datagrid .gn-datagrid-body-row.is-collapsed .is-toggler::before {
|
|
13286
13513
|
content: "\f0da";
|
|
@@ -13480,6 +13707,9 @@ Gn.create('datagrid', {
|
|
|
13480
13707
|
.gn-datagrid.has-left-padding .gn-datagrid-body-row:not(.has-child)[data-depth="0"] .gn-datagrid-body-cell:first-child {
|
|
13481
13708
|
padding-left: 15px;
|
|
13482
13709
|
}
|
|
13710
|
+
.gn-datagrid.is-headless .gn-datagrid-body-row:first-child {
|
|
13711
|
+
border-top: 1px solid #bebebe;
|
|
13712
|
+
}
|
|
13483
13713
|
.gn-datagrid .gn-datagrid-header-cell {
|
|
13484
13714
|
border-right: 1px solid #bebebe;
|
|
13485
13715
|
padding: 0.55rem;
|
|
@@ -17194,11 +17424,21 @@ tag:
|
|
|
17194
17424
|
<div class="gn-loader is-info"></div>
|
|
17195
17425
|
```
|
|
17196
17426
|
|
|
17427
|
+
```html
|
|
17428
|
+
<div class="gn-loader is-inline"></div>
|
|
17429
|
+
<div class="gn-loader is-inline is-success"></div>
|
|
17430
|
+
<div class="gn-loader is-inline is-warning"></div>
|
|
17431
|
+
<div class="gn-loader is-inline is-danger"></div>
|
|
17432
|
+
<div class="gn-loader is-inline is-info"></div>
|
|
17433
|
+
<div class="gn-loader is-inline is-primary"></div>
|
|
17434
|
+
```
|
|
17435
|
+
|
|
17197
17436
|
### 타입
|
|
17198
17437
|
|
|
17199
17438
|
```html
|
|
17200
17439
|
<div class="gn-loader is-bounce"></div><br>
|
|
17201
17440
|
<div class="gn-loader is-move"></div>
|
|
17441
|
+
<div class="gn-loader is-inline"></div><br>
|
|
17202
17442
|
```
|
|
17203
17443
|
|
|
17204
17444
|
### 생성 옵션
|
|
@@ -17258,7 +17498,7 @@ Gn.create('button', {
|
|
|
17258
17498
|
<td colspan="2">type</td>
|
|
17259
17499
|
<td>string</td>
|
|
17260
17500
|
<td></td>
|
|
17261
|
-
<td>'bounce','move','
|
|
17501
|
+
<td>'inline','bounce','move','</td>
|
|
17262
17502
|
</tr>
|
|
17263
17503
|
<tr>
|
|
17264
17504
|
<td colspan="2">positionX</td>
|
|
@@ -17367,6 +17607,7 @@ Gn.create('button', {
|
|
|
17367
17607
|
.gn-loader.is-small {
|
|
17368
17608
|
width: 15px;
|
|
17369
17609
|
height: 15px;
|
|
17610
|
+
border-width: 5px;
|
|
17370
17611
|
}
|
|
17371
17612
|
.gn-loader.is-normal {
|
|
17372
17613
|
width: 25px;
|
|
@@ -17452,6 +17693,82 @@ Gn.create('button', {
|
|
|
17452
17693
|
border: 13px solid #88b50f;
|
|
17453
17694
|
animation: move 1.5s ease-in-out infinite alternate;
|
|
17454
17695
|
}
|
|
17696
|
+
.gn-loader.is-inline {
|
|
17697
|
+
border: 0;
|
|
17698
|
+
position: relative;
|
|
17699
|
+
margin-left: 10px;
|
|
17700
|
+
margin-right: 10px;
|
|
17701
|
+
animation-delay: -0.12s;
|
|
17702
|
+
background: #e1e1e1;
|
|
17703
|
+
}
|
|
17704
|
+
.gn-loader.is-inline, .gn-loader.is-inline::before, .gn-loader.is-inline::after {
|
|
17705
|
+
display: inline-block !important;
|
|
17706
|
+
width: 3px;
|
|
17707
|
+
height: 3px;
|
|
17708
|
+
animation: colorPulse 1.4s ease-in-out infinite;
|
|
17709
|
+
border-radius: 50%;
|
|
17710
|
+
}
|
|
17711
|
+
.gn-loader.is-inline::before, .gn-loader.is-inline::after {
|
|
17712
|
+
content: "";
|
|
17713
|
+
position: absolute;
|
|
17714
|
+
top: 0;
|
|
17715
|
+
}
|
|
17716
|
+
.gn-loader.is-inline::before {
|
|
17717
|
+
animation-delay: -0.24s;
|
|
17718
|
+
margin-left: -8px;
|
|
17719
|
+
}
|
|
17720
|
+
.gn-loader.is-inline::after {
|
|
17721
|
+
animation-delay: 0s;
|
|
17722
|
+
margin-left: 8px;
|
|
17723
|
+
}
|
|
17724
|
+
.gn-loader.is-inline.is-white, .gn-loader.is-inline.is-white::before, .gn-loader.is-inline.is-white::after {
|
|
17725
|
+
animation-name: colorPulse-white;
|
|
17726
|
+
}
|
|
17727
|
+
.gn-loader.is-inline.is-black, .gn-loader.is-inline.is-black::before, .gn-loader.is-inline.is-black::after {
|
|
17728
|
+
animation-name: colorPulse-black;
|
|
17729
|
+
}
|
|
17730
|
+
.gn-loader.is-inline.is-light, .gn-loader.is-inline.is-light::before, .gn-loader.is-inline.is-light::after {
|
|
17731
|
+
animation-name: colorPulse-light;
|
|
17732
|
+
}
|
|
17733
|
+
.gn-loader.is-inline.is-dark, .gn-loader.is-inline.is-dark::before, .gn-loader.is-inline.is-dark::after {
|
|
17734
|
+
animation-name: colorPulse-dark;
|
|
17735
|
+
}
|
|
17736
|
+
.gn-loader.is-inline.is-primary, .gn-loader.is-inline.is-primary::before, .gn-loader.is-inline.is-primary::after {
|
|
17737
|
+
animation-name: colorPulse-primary;
|
|
17738
|
+
}
|
|
17739
|
+
.gn-loader.is-inline.is-link, .gn-loader.is-inline.is-link::before, .gn-loader.is-inline.is-link::after {
|
|
17740
|
+
animation-name: colorPulse-link;
|
|
17741
|
+
}
|
|
17742
|
+
.gn-loader.is-inline.is-info, .gn-loader.is-inline.is-info::before, .gn-loader.is-inline.is-info::after {
|
|
17743
|
+
animation-name: colorPulse-info;
|
|
17744
|
+
}
|
|
17745
|
+
.gn-loader.is-inline.is-cancel, .gn-loader.is-inline.is-cancel::before, .gn-loader.is-inline.is-cancel::after {
|
|
17746
|
+
animation-name: colorPulse-cancel;
|
|
17747
|
+
}
|
|
17748
|
+
.gn-loader.is-inline.is-success, .gn-loader.is-inline.is-success::before, .gn-loader.is-inline.is-success::after {
|
|
17749
|
+
animation-name: colorPulse-success;
|
|
17750
|
+
}
|
|
17751
|
+
.gn-loader.is-inline.is-warning, .gn-loader.is-inline.is-warning::before, .gn-loader.is-inline.is-warning::after {
|
|
17752
|
+
animation-name: colorPulse-warning;
|
|
17753
|
+
}
|
|
17754
|
+
.gn-loader.is-inline.is-danger, .gn-loader.is-inline.is-danger::before, .gn-loader.is-inline.is-danger::after {
|
|
17755
|
+
animation-name: colorPulse-danger;
|
|
17756
|
+
}
|
|
17757
|
+
.gn-loader.is-inline.is-trans, .gn-loader.is-inline.is-trans::before, .gn-loader.is-inline.is-trans::after {
|
|
17758
|
+
animation-name: colorPulse-trans;
|
|
17759
|
+
}
|
|
17760
|
+
.gn-loader.is-inline.is-help, .gn-loader.is-inline.is-help::before, .gn-loader.is-inline.is-help::after {
|
|
17761
|
+
animation-name: colorPulse-help;
|
|
17762
|
+
}
|
|
17763
|
+
.gn-loader.is-inline.is-plain, .gn-loader.is-inline.is-plain::before, .gn-loader.is-inline.is-plain::after {
|
|
17764
|
+
animation-name: colorPulse-plain;
|
|
17765
|
+
}
|
|
17766
|
+
.gn-loader.is-inline.is-secondary, .gn-loader.is-inline.is-secondary::before, .gn-loader.is-inline.is-secondary::after {
|
|
17767
|
+
animation-name: colorPulse-secondary;
|
|
17768
|
+
}
|
|
17769
|
+
.gn-loader.is-inline.is-mono, .gn-loader.is-inline.is-mono::before, .gn-loader.is-inline.is-mono::after {
|
|
17770
|
+
animation-name: colorPulse-mono;
|
|
17771
|
+
}
|
|
17455
17772
|
|
|
17456
17773
|
@keyframes load-spin {
|
|
17457
17774
|
0% {
|
|
@@ -17480,6 +17797,210 @@ Gn.create('button', {
|
|
|
17480
17797
|
transform: translateX(15px);
|
|
17481
17798
|
}
|
|
17482
17799
|
}
|
|
17800
|
+
@keyframes colorPulse {
|
|
17801
|
+
0%, 70%, 100% {
|
|
17802
|
+
background: #e1e1e1;
|
|
17803
|
+
/* 비활성 색상 */
|
|
17804
|
+
transform: scale(1);
|
|
17805
|
+
}
|
|
17806
|
+
35% {
|
|
17807
|
+
background: #88b50f;
|
|
17808
|
+
/* 활성 색상 */
|
|
17809
|
+
transform: scale(1.1);
|
|
17810
|
+
}
|
|
17811
|
+
}
|
|
17812
|
+
@keyframes colorPulse-white {
|
|
17813
|
+
0%, 70%, 100% {
|
|
17814
|
+
background: hsl(0, 0%, 71%);
|
|
17815
|
+
/* 비활성 색상 */
|
|
17816
|
+
transform: scale(1);
|
|
17817
|
+
}
|
|
17818
|
+
35% {
|
|
17819
|
+
background: hsl(0, 0%, 100%);
|
|
17820
|
+
/* 활성 색상 */
|
|
17821
|
+
transform: scale(1.1);
|
|
17822
|
+
}
|
|
17823
|
+
}
|
|
17824
|
+
@keyframes colorPulse-black {
|
|
17825
|
+
0%, 70%, 100% {
|
|
17826
|
+
background: hsl(0, 0%, 86%);
|
|
17827
|
+
/* 비활성 색상 */
|
|
17828
|
+
transform: scale(1);
|
|
17829
|
+
}
|
|
17830
|
+
35% {
|
|
17831
|
+
background: hsl(0, 0%, 4%);
|
|
17832
|
+
/* 활성 색상 */
|
|
17833
|
+
transform: scale(1.1);
|
|
17834
|
+
}
|
|
17835
|
+
}
|
|
17836
|
+
@keyframes colorPulse-light {
|
|
17837
|
+
0%, 70%, 100% {
|
|
17838
|
+
background: hsl(0, 0%, 93%);
|
|
17839
|
+
/* 비활성 색상 */
|
|
17840
|
+
transform: scale(1);
|
|
17841
|
+
}
|
|
17842
|
+
35% {
|
|
17843
|
+
background: hsl(0, 0%, 96%);
|
|
17844
|
+
/* 활성 색상 */
|
|
17845
|
+
transform: scale(1.1);
|
|
17846
|
+
}
|
|
17847
|
+
}
|
|
17848
|
+
@keyframes colorPulse-dark {
|
|
17849
|
+
0%, 70%, 100% {
|
|
17850
|
+
background: hsl(0, 0%, 86%);
|
|
17851
|
+
/* 비활성 색상 */
|
|
17852
|
+
transform: scale(1);
|
|
17853
|
+
}
|
|
17854
|
+
35% {
|
|
17855
|
+
background: hsl(0, 0%, 20%);
|
|
17856
|
+
/* 활성 색상 */
|
|
17857
|
+
transform: scale(1.1);
|
|
17858
|
+
}
|
|
17859
|
+
}
|
|
17860
|
+
@keyframes colorPulse-primary {
|
|
17861
|
+
0%, 70%, 100% {
|
|
17862
|
+
background: rgb(248.7551020408, 253.4387755102, 236.1612244898);
|
|
17863
|
+
/* 비활성 색상 */
|
|
17864
|
+
transform: scale(1);
|
|
17865
|
+
}
|
|
17866
|
+
35% {
|
|
17867
|
+
background: #88b50f;
|
|
17868
|
+
/* 활성 색상 */
|
|
17869
|
+
transform: scale(1.1);
|
|
17870
|
+
}
|
|
17871
|
+
}
|
|
17872
|
+
@keyframes colorPulse-link {
|
|
17873
|
+
0%, 70%, 100% {
|
|
17874
|
+
background: hsl(217, 71%, 96%);
|
|
17875
|
+
/* 비활성 색상 */
|
|
17876
|
+
transform: scale(1);
|
|
17877
|
+
}
|
|
17878
|
+
35% {
|
|
17879
|
+
background: hsl(217, 71%, 53%);
|
|
17880
|
+
/* 활성 색상 */
|
|
17881
|
+
transform: scale(1.1);
|
|
17882
|
+
}
|
|
17883
|
+
}
|
|
17884
|
+
@keyframes colorPulse-info {
|
|
17885
|
+
0%, 70%, 100% {
|
|
17886
|
+
background: hsl(204, 71%, 96%);
|
|
17887
|
+
/* 비활성 색상 */
|
|
17888
|
+
transform: scale(1);
|
|
17889
|
+
}
|
|
17890
|
+
35% {
|
|
17891
|
+
background: hsl(204, 71%, 53%);
|
|
17892
|
+
/* 활성 색상 */
|
|
17893
|
+
transform: scale(1.1);
|
|
17894
|
+
}
|
|
17895
|
+
}
|
|
17896
|
+
@keyframes colorPulse-cancel {
|
|
17897
|
+
0%, 70%, 100% {
|
|
17898
|
+
background: hsl(0, 0%, 96%);
|
|
17899
|
+
/* 비활성 색상 */
|
|
17900
|
+
transform: scale(1);
|
|
17901
|
+
}
|
|
17902
|
+
35% {
|
|
17903
|
+
background: hsl(0, 0%, 71%);
|
|
17904
|
+
/* 활성 색상 */
|
|
17905
|
+
transform: scale(1.1);
|
|
17906
|
+
}
|
|
17907
|
+
}
|
|
17908
|
+
@keyframes colorPulse-success {
|
|
17909
|
+
0%, 70%, 100% {
|
|
17910
|
+
background: hsl(141, 53%, 96%);
|
|
17911
|
+
/* 비활성 색상 */
|
|
17912
|
+
transform: scale(1);
|
|
17913
|
+
}
|
|
17914
|
+
35% {
|
|
17915
|
+
background: hsl(141, 53%, 53%);
|
|
17916
|
+
/* 활성 색상 */
|
|
17917
|
+
transform: scale(1.1);
|
|
17918
|
+
}
|
|
17919
|
+
}
|
|
17920
|
+
@keyframes colorPulse-warning {
|
|
17921
|
+
0%, 70%, 100% {
|
|
17922
|
+
background: hsl(38, 100%, 96%);
|
|
17923
|
+
/* 비활성 색상 */
|
|
17924
|
+
transform: scale(1);
|
|
17925
|
+
}
|
|
17926
|
+
35% {
|
|
17927
|
+
background: hsl(38, 100%, 50%);
|
|
17928
|
+
/* 활성 색상 */
|
|
17929
|
+
transform: scale(1.1);
|
|
17930
|
+
}
|
|
17931
|
+
}
|
|
17932
|
+
@keyframes colorPulse-danger {
|
|
17933
|
+
0%, 70%, 100% {
|
|
17934
|
+
background: hsl(348, 86%, 96%);
|
|
17935
|
+
/* 비활성 색상 */
|
|
17936
|
+
transform: scale(1);
|
|
17937
|
+
}
|
|
17938
|
+
35% {
|
|
17939
|
+
background: hsl(348, 86%, 61%);
|
|
17940
|
+
/* 활성 색상 */
|
|
17941
|
+
transform: scale(1.1);
|
|
17942
|
+
}
|
|
17943
|
+
}
|
|
17944
|
+
@keyframes colorPulse-trans {
|
|
17945
|
+
0%, 70%, 100% {
|
|
17946
|
+
background: hsl(0, 0%, 100%);
|
|
17947
|
+
/* 비활성 색상 */
|
|
17948
|
+
transform: scale(1);
|
|
17949
|
+
}
|
|
17950
|
+
35% {
|
|
17951
|
+
background: hsl(0, 0%, 100%);
|
|
17952
|
+
/* 활성 색상 */
|
|
17953
|
+
transform: scale(1.1);
|
|
17954
|
+
}
|
|
17955
|
+
}
|
|
17956
|
+
@keyframes colorPulse-help {
|
|
17957
|
+
0%, 70%, 100% {
|
|
17958
|
+
background: hsl(203, 96%, 96%);
|
|
17959
|
+
/* 비활성 색상 */
|
|
17960
|
+
transform: scale(1);
|
|
17961
|
+
}
|
|
17962
|
+
35% {
|
|
17963
|
+
background: hsl(203, 96%, 43%);
|
|
17964
|
+
/* 활성 색상 */
|
|
17965
|
+
transform: scale(1.1);
|
|
17966
|
+
}
|
|
17967
|
+
}
|
|
17968
|
+
@keyframes colorPulse-plain {
|
|
17969
|
+
0%, 70%, 100% {
|
|
17970
|
+
background: #ffffff;
|
|
17971
|
+
/* 비활성 색상 */
|
|
17972
|
+
transform: scale(1);
|
|
17973
|
+
}
|
|
17974
|
+
35% {
|
|
17975
|
+
background: #ece8e8;
|
|
17976
|
+
/* 활성 색상 */
|
|
17977
|
+
transform: scale(1.1);
|
|
17978
|
+
}
|
|
17979
|
+
}
|
|
17980
|
+
@keyframes colorPulse-secondary {
|
|
17981
|
+
0%, 70%, 100% {
|
|
17982
|
+
background: rgb(234.6, 246.9169811321, 255);
|
|
17983
|
+
/* 비활성 색상 */
|
|
17984
|
+
transform: scale(1);
|
|
17985
|
+
}
|
|
17986
|
+
35% {
|
|
17987
|
+
background: #0080d4;
|
|
17988
|
+
/* 활성 색상 */
|
|
17989
|
+
transform: scale(1.1);
|
|
17990
|
+
}
|
|
17991
|
+
}
|
|
17992
|
+
@keyframes colorPulse-mono {
|
|
17993
|
+
0%, 70%, 100% {
|
|
17994
|
+
background: rgb(244.8, 244.8, 244.8);
|
|
17995
|
+
/* 비활성 색상 */
|
|
17996
|
+
transform: scale(1);
|
|
17997
|
+
}
|
|
17998
|
+
35% {
|
|
17999
|
+
background: #656565;
|
|
18000
|
+
/* 활성 색상 */
|
|
18001
|
+
transform: scale(1.1);
|
|
18002
|
+
}
|
|
18003
|
+
}
|
|
17483
18004
|
/*
|
|
17484
18005
|
---
|
|
17485
18006
|
name: Message
|
|
@@ -19048,22 +19569,26 @@ tag:
|
|
|
19048
19569
|
```
|
|
19049
19570
|
````
|
|
19050
19571
|
Gn.create('picklist', {
|
|
19051
|
-
target: '.new-picklist',
|
|
19052
|
-
data
|
|
19572
|
+
target: '.new-picklist',
|
|
19573
|
+
data: {
|
|
19053
19574
|
source: [
|
|
19054
|
-
{ value: '
|
|
19055
|
-
{ value: '
|
|
19056
|
-
{ value: '
|
|
19057
|
-
{ value: 'item4', text: '항목4' },
|
|
19058
|
-
{ value: 'item5', text: '항목5' },
|
|
19059
|
-
{ value: 'item6', text: '항목6' },
|
|
19060
|
-
{ value: 'item7', text: '항목7' },
|
|
19061
|
-
{ value: 'item8', text: '항목8' }
|
|
19575
|
+
{ value: '항목1', text: 'item1', html: '<span class="gn-tag is-primary">항목1</span> item1' },
|
|
19576
|
+
{ value: '항목2', text: 'item2', html: '<span class="gn-tag is-danger">항목2</span> item2' },
|
|
19577
|
+
{ value: '항목3', text: 'item3', html: '<span class="gn-tag is-warning">항목3</span> item3' }
|
|
19062
19578
|
],
|
|
19063
|
-
target: [
|
|
19579
|
+
target: [
|
|
19580
|
+
{ value: '항목4', text: 'item4', html: '<span class="gn-tag is-help">항목4</span> item4' },
|
|
19581
|
+
{ value: '항목5', text: 'item5', html: '<span class="gn-tag is-success">항목5</span> item5' }
|
|
19582
|
+
]
|
|
19064
19583
|
},
|
|
19584
|
+
hasSourceSearch: true,
|
|
19585
|
+
hasTargetSearch: true,
|
|
19065
19586
|
width: '80%',
|
|
19066
|
-
height: 180
|
|
19587
|
+
height: 180,
|
|
19588
|
+
onChange: function (s, t) {
|
|
19589
|
+
console.log(s, t);
|
|
19590
|
+
},
|
|
19591
|
+
orderable: 'target'
|
|
19067
19592
|
});
|
|
19068
19593
|
Gn.create('picklist', {
|
|
19069
19594
|
target: '.new-picklist-v',
|
|
@@ -19100,15 +19625,21 @@ tag:
|
|
|
19100
19625
|
<tr>
|
|
19101
19626
|
<td rowspan="2">data</td>
|
|
19102
19627
|
<td>source</td>
|
|
19103
|
-
<td>array[{value: string|array, text: string}]</td>
|
|
19628
|
+
<td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
|
|
19104
19629
|
<td></td>
|
|
19105
|
-
<td>source 항목
|
|
19630
|
+
<td>source 항목 배열<br>
|
|
19631
|
+
html: 옵션 html(html이 있는 경우 text가 있는 항목만 선택 가능하다.)<br>
|
|
19632
|
+
icon : <a href="https://fontawesome.com/cheatsheet?from=io" target="_blank">font awesome <span class="gn-icon is-small"><i class="fas fa-external-link-alt"></i></span></a> solid icon name
|
|
19633
|
+
</td>
|
|
19106
19634
|
</tr>
|
|
19107
19635
|
<tr>
|
|
19108
19636
|
<td>target</td>
|
|
19109
|
-
<td>array[{value: string|array, text: string}]</td>
|
|
19637
|
+
<td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
|
|
19110
19638
|
<td></td>
|
|
19111
|
-
<td>target 항목
|
|
19639
|
+
<td>target 항목 배열<br>
|
|
19640
|
+
html: 옵션 html(html이 있는 경우 text가 있는 항목만 선택 가능하다.)<br>
|
|
19641
|
+
icon : <a href="https://fontawesome.com/cheatsheet?from=io" target="_blank">font awesome <span class="gn-icon is-small"><i class="fas fa-external-link-alt"></i></span></a> solid icon name
|
|
19642
|
+
</td>
|
|
19112
19643
|
</tr>
|
|
19113
19644
|
<tr>
|
|
19114
19645
|
<td rowspan="3">textSets</td>
|
|
@@ -19262,23 +19793,17 @@ tag:
|
|
|
19262
19793
|
.gn-picklist .picklist-caption + .dropdown-items {
|
|
19263
19794
|
border-radius: 0 0 2px 2px;
|
|
19264
19795
|
}
|
|
19265
|
-
.gn-picklist .
|
|
19796
|
+
.gn-picklist .gn-dropdown {
|
|
19797
|
+
display: block;
|
|
19798
|
+
}
|
|
19799
|
+
.gn-picklist .picklist-source,
|
|
19800
|
+
.gn-picklist .picklist-target {
|
|
19266
19801
|
display: flex;
|
|
19267
19802
|
flex-basis: calc(50% - 16px);
|
|
19268
19803
|
width: calc(50% - 16px);
|
|
19269
19804
|
flex-grow: 0;
|
|
19270
19805
|
flex-shrink: 0;
|
|
19271
19806
|
}
|
|
19272
|
-
.gn-picklist .picklist-source > .gn-dropdown {
|
|
19273
|
-
order: 2;
|
|
19274
|
-
width: 100%;
|
|
19275
|
-
}
|
|
19276
|
-
.gn-picklist .picklist-source .picklist-controls {
|
|
19277
|
-
order: 1;
|
|
19278
|
-
}
|
|
19279
|
-
.gn-picklist .gn-dropdown {
|
|
19280
|
-
display: block;
|
|
19281
|
-
}
|
|
19282
19807
|
.gn-picklist .picklist-source.no-controls,
|
|
19283
19808
|
.gn-picklist .picklist-target.no-controls {
|
|
19284
19809
|
flex-basis: calc(50% - 45px);
|
|
@@ -19289,23 +19814,22 @@ tag:
|
|
|
19289
19814
|
width: 100%;
|
|
19290
19815
|
height: 100%;
|
|
19291
19816
|
}
|
|
19292
|
-
.gn-picklist.
|
|
19293
|
-
.gn-picklist .picklist-target {
|
|
19294
|
-
display: flex;
|
|
19295
|
-
flex-basis: calc(50% - 16px);
|
|
19296
|
-
width: calc(50% - 16px);
|
|
19297
|
-
flex-grow: 0;
|
|
19298
|
-
flex-shrink: 0;
|
|
19299
|
-
}
|
|
19300
|
-
.gn-picklist.is-vertical .picklist-source > .gn-dropdown,
|
|
19817
|
+
.gn-picklist .picklist-source > .gn-dropdown,
|
|
19301
19818
|
.gn-picklist .picklist-target > .gn-dropdown {
|
|
19302
19819
|
order: 1;
|
|
19303
19820
|
width: 100%;
|
|
19304
19821
|
}
|
|
19305
|
-
.gn-picklist
|
|
19822
|
+
.gn-picklist .picklist-source .picklist-controls,
|
|
19306
19823
|
.gn-picklist .picklist-target .picklist-controls {
|
|
19307
19824
|
order: 2;
|
|
19308
19825
|
}
|
|
19826
|
+
.gn-picklist .picklist-source > .gn-dropdown {
|
|
19827
|
+
order: 2;
|
|
19828
|
+
width: 100%;
|
|
19829
|
+
}
|
|
19830
|
+
.gn-picklist .picklist-source .picklist-controls {
|
|
19831
|
+
order: 1;
|
|
19832
|
+
}
|
|
19309
19833
|
.gn-picklist .picklist-controls {
|
|
19310
19834
|
margin: 0.5rem;
|
|
19311
19835
|
}
|
|
@@ -19315,6 +19839,16 @@ tag:
|
|
|
19315
19839
|
.gn-picklist.is-vertical {
|
|
19316
19840
|
flex-direction: column;
|
|
19317
19841
|
}
|
|
19842
|
+
.gn-picklist.is-vertical .picklist-source,
|
|
19843
|
+
.gn-picklist.is-vertical .picklist-target {
|
|
19844
|
+
width: calc(100% - 32px);
|
|
19845
|
+
}
|
|
19846
|
+
.gn-picklist.is-vertical .picklist-source > .gn-dropdown {
|
|
19847
|
+
order: 1;
|
|
19848
|
+
}
|
|
19849
|
+
.gn-picklist.is-vertical .picklist-source .picklist-controls {
|
|
19850
|
+
order: 2;
|
|
19851
|
+
}
|
|
19318
19852
|
.gn-picklist.is-vertical > .picklist-controls {
|
|
19319
19853
|
width: 90%;
|
|
19320
19854
|
width: calc(100% - 50px);
|
|
@@ -19325,6 +19859,382 @@ tag:
|
|
|
19325
19859
|
box-shadow: 0 0 0 0.1em rgba(241.077, 70.023, 104.2338, 0.7);
|
|
19326
19860
|
}
|
|
19327
19861
|
|
|
19862
|
+
/*
|
|
19863
|
+
---
|
|
19864
|
+
name: SortableList
|
|
19865
|
+
category:
|
|
19866
|
+
- CONTROLS/SortableList(js)
|
|
19867
|
+
tag:
|
|
19868
|
+
- v.0.1.0
|
|
19869
|
+
- javascript
|
|
19870
|
+
---
|
|
19871
|
+
### 기본 사용
|
|
19872
|
+
|
|
19873
|
+
```html
|
|
19874
|
+
<div class="gn-sortablelist">
|
|
19875
|
+
<div class="sortablelist-controls gn-control is-small has-arrange is-vertical is-center">
|
|
19876
|
+
<button type="button" class="gn-button is-outline">
|
|
19877
|
+
<span class="gn-icon">
|
|
19878
|
+
<i class="fas fa-angle-double-up"></i>
|
|
19879
|
+
</span>
|
|
19880
|
+
</button>
|
|
19881
|
+
<button type="button" class="gn-button is-outline">
|
|
19882
|
+
<span class="gn-icon">
|
|
19883
|
+
<i class="fas fa-angle-up"></i>
|
|
19884
|
+
</span>
|
|
19885
|
+
</button>
|
|
19886
|
+
<button type="button" class="gn-button is-outline">
|
|
19887
|
+
<span class="gn-icon">
|
|
19888
|
+
<i class="fas fa-angle-down"></i>
|
|
19889
|
+
</span>
|
|
19890
|
+
</button>
|
|
19891
|
+
<button type="button" class="gn-button is-outline">
|
|
19892
|
+
<span class="gn-icon">
|
|
19893
|
+
<i class="fas fa-angle-double-down"></i>
|
|
19894
|
+
</span>
|
|
19895
|
+
</button>
|
|
19896
|
+
</div>
|
|
19897
|
+
<div class="gn-dropdown is-opened sortablelist-items">
|
|
19898
|
+
<div class="dropdown-items">
|
|
19899
|
+
<ul class="sortablelist-rows">
|
|
19900
|
+
<li class="dropdown-item">항목 1</li>
|
|
19901
|
+
<li class="dropdown-item">항목 2</li>
|
|
19902
|
+
<li class="dropdown-item">항목 3</li>
|
|
19903
|
+
<li class="dropdown-item">항목 4</li>
|
|
19904
|
+
</ul>
|
|
19905
|
+
</div>
|
|
19906
|
+
</div>
|
|
19907
|
+
</div>
|
|
19908
|
+
```
|
|
19909
|
+
|
|
19910
|
+
### 버튼 우측 배치
|
|
19911
|
+
|
|
19912
|
+
```html
|
|
19913
|
+
<div class="gn-sortablelist">
|
|
19914
|
+
<div class="gn-dropdown is-opened sortablelist-items">
|
|
19915
|
+
<div class="dropdown-items">
|
|
19916
|
+
<ul class="sortablelist-rows">
|
|
19917
|
+
<li class="dropdown-item">항목 1</li>
|
|
19918
|
+
<li class="dropdown-item">항목 2</li>
|
|
19919
|
+
<li class="dropdown-item">항목 3</li>
|
|
19920
|
+
</ul>
|
|
19921
|
+
</div>
|
|
19922
|
+
</div>
|
|
19923
|
+
<div class="sortablelist-controls gn-control is-small has-arrange is-vertical is-center is-right">
|
|
19924
|
+
<button type="button" class="gn-button is-outline">
|
|
19925
|
+
<span class="gn-icon">
|
|
19926
|
+
<i class="fas fa-angle-double-up"></i>
|
|
19927
|
+
</span>
|
|
19928
|
+
</button>
|
|
19929
|
+
<button type="button" class="gn-button is-outline">
|
|
19930
|
+
<span class="gn-icon">
|
|
19931
|
+
<i class="fas fa-angle-up"></i>
|
|
19932
|
+
</span>
|
|
19933
|
+
</button>
|
|
19934
|
+
<button type="button" class="gn-button is-outline">
|
|
19935
|
+
<span class="gn-icon">
|
|
19936
|
+
<i class="fas fa-angle-down"></i>
|
|
19937
|
+
</span>
|
|
19938
|
+
</button>
|
|
19939
|
+
<button type="button" class="gn-button is-outline">
|
|
19940
|
+
<span class="gn-icon">
|
|
19941
|
+
<i class="fas fa-angle-double-down"></i>
|
|
19942
|
+
</span>
|
|
19943
|
+
</button>
|
|
19944
|
+
</div>
|
|
19945
|
+
</div>
|
|
19946
|
+
```
|
|
19947
|
+
|
|
19948
|
+
### 생성 옵션
|
|
19949
|
+
```ejs
|
|
19950
|
+
<div class="new-sortablelist"></div>
|
|
19951
|
+
<div class="new-sortablelist-drag"></div>
|
|
19952
|
+
<div class="new-sortablelist-cols"></div>
|
|
19953
|
+
```
|
|
19954
|
+
````
|
|
19955
|
+
// 단일 컬럼
|
|
19956
|
+
Gn.create('sortablelist', {
|
|
19957
|
+
target: '.new-sortablelist',
|
|
19958
|
+
data: [
|
|
19959
|
+
{ value: '1', text: '항목 1' },
|
|
19960
|
+
{ value: '2', text: '항목 2' },
|
|
19961
|
+
{ value: '3', text: '항목 3' },
|
|
19962
|
+
{ value: '4', text: '항목 4' },
|
|
19963
|
+
{ value: '5', text: '항목 5' },
|
|
19964
|
+
{ value: '6', text: '항목 6' },
|
|
19965
|
+
{ value: '7', text: '항목 7' },
|
|
19966
|
+
{ value: '8', text: '항목 8' },
|
|
19967
|
+
{ value: '9', text: '항목 9' },
|
|
19968
|
+
{ value: '10', text: '항목 10' }
|
|
19969
|
+
]
|
|
19970
|
+
});
|
|
19971
|
+
// 드래그 앤 드롭
|
|
19972
|
+
Gn.create('sortablelist', {
|
|
19973
|
+
target: '.new-sortablelist-drag',
|
|
19974
|
+
data: [
|
|
19975
|
+
{ value: 'a', text: '항목 A' },
|
|
19976
|
+
{ value: 'b', text: '항목 B' },
|
|
19977
|
+
{ value: 'c', text: '항목 C' },
|
|
19978
|
+
{ value: 'd', text: '항목 D' },
|
|
19979
|
+
{ value: 'e', text: '항목 E' },
|
|
19980
|
+
{ value: 'f', text: '항목 F' },
|
|
19981
|
+
{ value: 'g', text: '항목 G' },
|
|
19982
|
+
{ value: 'h', text: '항목 H' },
|
|
19983
|
+
{ value: 'i', text: '항목 I' },
|
|
19984
|
+
{ value: 'j', text: '항목 J' }
|
|
19985
|
+
],
|
|
19986
|
+
draggable: true
|
|
19987
|
+
});
|
|
19988
|
+
// 다중 컬럼
|
|
19989
|
+
Gn.create('sortablelist', {
|
|
19990
|
+
target: '.new-sortablelist-cols',
|
|
19991
|
+
buttonPosition: 'right',
|
|
19992
|
+
data: [
|
|
19993
|
+
{ value: 'x1', cols: ['항목1', '카테고리A', '1000'] },
|
|
19994
|
+
{ value: 'x2', cols: ['항목2', '카테고리B', '2000'] },
|
|
19995
|
+
{ value: 'x3', cols: ['항목3', '카테고리C', '3000'] },
|
|
19996
|
+
{ value: 'x4', cols: ['항목4', '카테고리D', '4000'] },
|
|
19997
|
+
{ value: 'x5', cols: ['항목5', '카테고리E', '5000'] },
|
|
19998
|
+
{ value: 'x6', cols: ['항목6', '카테고리F', '6000'] },
|
|
19999
|
+
{ value: 'x7', cols: ['항목7', '카테고리G', '7000'] },
|
|
20000
|
+
{ value: 'x8', cols: ['항목8', '카테고리H', '8000'] },
|
|
20001
|
+
{ value: 'x9', cols: ['항목9', '카테고리I', '9000'] },
|
|
20002
|
+
{ value: 'x10', cols: ['항목10', '카테고리J', '10000'] }
|
|
20003
|
+
]
|
|
20004
|
+
});
|
|
20005
|
+
````
|
|
20006
|
+
|
|
20007
|
+
### 데이터 모델 (SortableListItem)
|
|
20008
|
+
|
|
20009
|
+
<table class="gn-table is-full is-border">
|
|
20010
|
+
<thead>
|
|
20011
|
+
<th>필드</th>
|
|
20012
|
+
<th>type</th>
|
|
20013
|
+
<th>필수</th>
|
|
20014
|
+
<th>description</th>
|
|
20015
|
+
</thead>
|
|
20016
|
+
<tbody>
|
|
20017
|
+
<tr>
|
|
20018
|
+
<td>value</td>
|
|
20019
|
+
<td>string</td>
|
|
20020
|
+
<td>Y</td>
|
|
20021
|
+
<td>고유 값 (빈 문자열 불가)</td>
|
|
20022
|
+
</tr>
|
|
20023
|
+
<tr>
|
|
20024
|
+
<td>text</td>
|
|
20025
|
+
<td>string</td>
|
|
20026
|
+
<td>N</td>
|
|
20027
|
+
<td>단일 컬럼 표시 텍스트</td>
|
|
20028
|
+
</tr>
|
|
20029
|
+
<tr>
|
|
20030
|
+
<td>cols</td>
|
|
20031
|
+
<td>string[]</td>
|
|
20032
|
+
<td>N</td>
|
|
20033
|
+
<td>다중 컬럼 표시 값 배열</td>
|
|
20034
|
+
</tr>
|
|
20035
|
+
</tbody>
|
|
20036
|
+
</table>
|
|
20037
|
+
|
|
20038
|
+
### 옵션
|
|
20039
|
+
<table class="gn-table is-full is-border">
|
|
20040
|
+
<thead>
|
|
20041
|
+
<th colspan="2">name</th>
|
|
20042
|
+
<th>type</th>
|
|
20043
|
+
<th>default</th>
|
|
20044
|
+
<th>description</th>
|
|
20045
|
+
</thead>
|
|
20046
|
+
<tbody>
|
|
20047
|
+
<tr>
|
|
20048
|
+
<td colspan="2">target</td>
|
|
20049
|
+
<td>string</td>
|
|
20050
|
+
<td></td>
|
|
20051
|
+
<td>sortablelist를 표시할 대상의 선택자(selector)</td>
|
|
20052
|
+
</tr>
|
|
20053
|
+
<tr>
|
|
20054
|
+
<td colspan="2">data</td>
|
|
20055
|
+
<td>SortableListItem[]</td>
|
|
20056
|
+
<td></td>
|
|
20057
|
+
<td>sortablelist에 표시할 데이터 배열</td>
|
|
20058
|
+
</tr>
|
|
20059
|
+
<tr>
|
|
20060
|
+
<td colspan="2">buttonPosition</td>
|
|
20061
|
+
<td>left | right</td>
|
|
20062
|
+
<td>left</td>
|
|
20063
|
+
<td>순서 변경 버튼 위치</td>
|
|
20064
|
+
</tr>
|
|
20065
|
+
<tr>
|
|
20066
|
+
<td colspan="2">draggable</td>
|
|
20067
|
+
<td>boolean</td>
|
|
20068
|
+
<td>false</td>
|
|
20069
|
+
<td>드래그 앤 드롭 순서 변경 활성화 여부</td>
|
|
20070
|
+
</tr>
|
|
20071
|
+
<tr>
|
|
20072
|
+
<td>textSets</td>
|
|
20073
|
+
<td>noData</td>
|
|
20074
|
+
<td>string</td>
|
|
20075
|
+
<td>No records available.</td>
|
|
20076
|
+
<td>데이터가 없을 경우 출력 메시지</td>
|
|
20077
|
+
</tr>
|
|
20078
|
+
<tr>
|
|
20079
|
+
<td colspan="2">disabled</td>
|
|
20080
|
+
<td>boolean</td>
|
|
20081
|
+
<td>false</td>
|
|
20082
|
+
<td>컴포넌트 비활성화 여부</td>
|
|
20083
|
+
</tr>
|
|
20084
|
+
<tr>
|
|
20085
|
+
<td colspan="2">width</td>
|
|
20086
|
+
<td>number, string</td>
|
|
20087
|
+
<td>100%</td>
|
|
20088
|
+
<td>컴포넌트 너비</td>
|
|
20089
|
+
</tr>
|
|
20090
|
+
<tr>
|
|
20091
|
+
<td colspan="2">height</td>
|
|
20092
|
+
<td>number, string</td>
|
|
20093
|
+
<td>150</td>
|
|
20094
|
+
<td>리스트 높이 (미지정 시 150)</td>
|
|
20095
|
+
</tr>
|
|
20096
|
+
<tr>
|
|
20097
|
+
<td colspan="2">onChange</td>
|
|
20098
|
+
<td>function(data)</td>
|
|
20099
|
+
<td></td>
|
|
20100
|
+
<td>데이터 변경 시 발생 이벤트</td>
|
|
20101
|
+
</tr>
|
|
20102
|
+
</tbody>
|
|
20103
|
+
</table>
|
|
20104
|
+
|
|
20105
|
+
### 메소드
|
|
20106
|
+
|
|
20107
|
+
<table class="gn-table is-full is-border">
|
|
20108
|
+
<thead>
|
|
20109
|
+
<th>name</th>
|
|
20110
|
+
<th>return</th>
|
|
20111
|
+
<th>description</th>
|
|
20112
|
+
</thead>
|
|
20113
|
+
<tbody>
|
|
20114
|
+
<tr>
|
|
20115
|
+
<td>getData()</td>
|
|
20116
|
+
<td>SortableListItem[]</td>
|
|
20117
|
+
<td>현재 데이터 배열을 반환한다.</td>
|
|
20118
|
+
</tr>
|
|
20119
|
+
<tr>
|
|
20120
|
+
<td>setData(data: SortableListItem[]})</td>
|
|
20121
|
+
<td>void</td>
|
|
20122
|
+
<td>데이터 배열을 설정하고 다시 렌더링한다.</td>
|
|
20123
|
+
</tr>
|
|
20124
|
+
<tr>
|
|
20125
|
+
<td>disable()</td>
|
|
20126
|
+
<td>void</td>
|
|
20127
|
+
<td>컴포넌트를 비활성화한다.</td>
|
|
20128
|
+
</tr>
|
|
20129
|
+
<tr>
|
|
20130
|
+
<td>enable()</td>
|
|
20131
|
+
<td>void</td>
|
|
20132
|
+
<td>컴포넌트를 활성화한다.</td>
|
|
20133
|
+
</tr>
|
|
20134
|
+
</tbody>
|
|
20135
|
+
</table>
|
|
20136
|
+
|
|
20137
|
+
*/
|
|
20138
|
+
.gn-sortablelist {
|
|
20139
|
+
display: flex;
|
|
20140
|
+
align-items: stretch;
|
|
20141
|
+
-webkit-user-select: none;
|
|
20142
|
+
-moz-user-select: none;
|
|
20143
|
+
user-select: none;
|
|
20144
|
+
}
|
|
20145
|
+
.gn-sortablelist .gn-dropdown {
|
|
20146
|
+
display: block;
|
|
20147
|
+
}
|
|
20148
|
+
.gn-sortablelist .sortablelist-items {
|
|
20149
|
+
flex: 1 1 auto;
|
|
20150
|
+
}
|
|
20151
|
+
.gn-sortablelist .sortablelist-controls {
|
|
20152
|
+
margin: 0.5rem;
|
|
20153
|
+
}
|
|
20154
|
+
.gn-sortablelist .sortablelist-controls .gn-button {
|
|
20155
|
+
padding: 0.25rem 0.75rem;
|
|
20156
|
+
}
|
|
20157
|
+
.gn-sortablelist .sortablelist-controls.is-right {
|
|
20158
|
+
order: 2;
|
|
20159
|
+
margin-left: 0.5rem;
|
|
20160
|
+
margin-right: 0;
|
|
20161
|
+
justify-content: center;
|
|
20162
|
+
}
|
|
20163
|
+
.gn-sortablelist .sortablelist-rows {
|
|
20164
|
+
margin: 0;
|
|
20165
|
+
padding: 0;
|
|
20166
|
+
list-style: none;
|
|
20167
|
+
}
|
|
20168
|
+
.gn-sortablelist .sortablelist-cols {
|
|
20169
|
+
display: flex;
|
|
20170
|
+
gap: 0.5rem;
|
|
20171
|
+
width: 100%;
|
|
20172
|
+
}
|
|
20173
|
+
.gn-sortablelist .sortablelist-col {
|
|
20174
|
+
flex: 1 1 0;
|
|
20175
|
+
min-width: 0;
|
|
20176
|
+
}
|
|
20177
|
+
.gn-sortablelist .dropdown-item.is-empty {
|
|
20178
|
+
color: hsl(0, 0%, 48%);
|
|
20179
|
+
}
|
|
20180
|
+
.gn-sortablelist .dropdown-item.is-dragging {
|
|
20181
|
+
opacity: 0.6;
|
|
20182
|
+
}
|
|
20183
|
+
.gn-sortablelist .dropdown-item.is-group-dragging {
|
|
20184
|
+
outline: 1px dashed hsl(0, 0%, 71%);
|
|
20185
|
+
}
|
|
20186
|
+
.gn-sortablelist .dropdown-item.is-drag-over-top,
|
|
20187
|
+
.gn-sortablelist .dropdown-item.is-drag-over-bottom {
|
|
20188
|
+
background-color: hsl(0, 0%, 96%);
|
|
20189
|
+
}
|
|
20190
|
+
.gn-sortablelist .dropdown-item.is-drag-over-top {
|
|
20191
|
+
box-shadow: inset 0 2px 0 0 #88b50f;
|
|
20192
|
+
}
|
|
20193
|
+
.gn-sortablelist .dropdown-item.is-drag-over-bottom {
|
|
20194
|
+
box-shadow: inset 0 -2px 0 0 #88b50f;
|
|
20195
|
+
}
|
|
20196
|
+
|
|
20197
|
+
.sortablelist-drag-preview {
|
|
20198
|
+
position: absolute;
|
|
20199
|
+
top: -9999px;
|
|
20200
|
+
left: -9999px;
|
|
20201
|
+
display: inline-flex;
|
|
20202
|
+
align-items: flex-start;
|
|
20203
|
+
gap: 8px;
|
|
20204
|
+
padding: 6px 10px;
|
|
20205
|
+
border-radius: 8px;
|
|
20206
|
+
background-color: hsl(0, 0%, 20%);
|
|
20207
|
+
color: hsl(0, 0%, 98%);
|
|
20208
|
+
font-size: 12px;
|
|
20209
|
+
line-height: 1;
|
|
20210
|
+
}
|
|
20211
|
+
|
|
20212
|
+
.sortablelist-drag-preview::before {
|
|
20213
|
+
content: attr(data-count);
|
|
20214
|
+
min-width: 18px;
|
|
20215
|
+
height: 18px;
|
|
20216
|
+
padding: 0 6px;
|
|
20217
|
+
border-radius: 999px;
|
|
20218
|
+
background-color: hsl(0, 0%, 98%);
|
|
20219
|
+
color: hsl(0, 0%, 20%);
|
|
20220
|
+
font-size: 11px;
|
|
20221
|
+
line-height: 18px;
|
|
20222
|
+
text-align: center;
|
|
20223
|
+
}
|
|
20224
|
+
|
|
20225
|
+
.sortablelist-drag-preview-list {
|
|
20226
|
+
display: flex;
|
|
20227
|
+
flex-direction: column;
|
|
20228
|
+
gap: 4px;
|
|
20229
|
+
}
|
|
20230
|
+
|
|
20231
|
+
.sortablelist-drag-preview .dropdown-item.is-ghost {
|
|
20232
|
+
padding: 4px 8px;
|
|
20233
|
+
background-color: hsl(0, 0%, 18%);
|
|
20234
|
+
border-radius: 4px;
|
|
20235
|
+
color: hsl(0, 0%, 98%);
|
|
20236
|
+
}
|
|
20237
|
+
|
|
19328
20238
|
/*
|
|
19329
20239
|
---
|
|
19330
20240
|
name: Progressbar
|
|
@@ -19904,6 +20814,7 @@ tag:
|
|
|
19904
20814
|
.gn-tab > ul {
|
|
19905
20815
|
display: flex;
|
|
19906
20816
|
border-bottom: 1px solid #bebebe;
|
|
20817
|
+
padding-bottom: 0px;
|
|
19907
20818
|
}
|
|
19908
20819
|
.gn-tab.is-center > ul {
|
|
19909
20820
|
justify-content: center;
|
|
@@ -21053,7 +21964,7 @@ Gn.create('tree', {
|
|
|
21053
21964
|
}
|
|
21054
21965
|
.gn-tree li .tree-item .is-toggler::before {
|
|
21055
21966
|
content: "\f0da";
|
|
21056
|
-
font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
21967
|
+
font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
|
|
21057
21968
|
font-weight: 900;
|
|
21058
21969
|
}
|
|
21059
21970
|
.gn-tree li .tree-item + ul {
|