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.
Files changed (78) hide show
  1. package/dist/js/gnui.esm.js +736 -96
  2. package/dist/js/gnui.js +736 -96
  3. package/dist/js/gnui.min.js +6 -6
  4. package/dist/styles/default.css +1019 -108
  5. package/dist/styles/gpi.css +1019 -108
  6. package/dist/styles/green24.css +1230 -289
  7. package/dist/styles/insights.css +1019 -108
  8. package/dist/styles/nac.css +969 -58
  9. package/dist/styles/ztnac.css +1206 -265
  10. package/package.json +1 -1
  11. package/styleguide/assets/components.js +216 -9
  12. package/styleguide/assets/js/gnui.js +736 -96
  13. package/styleguide/assets/js/gnui.min.js +6 -6
  14. package/styleguide/assets/styles/default.css +1019 -108
  15. package/styleguide/assets/styles/gpi.css +1019 -108
  16. package/styleguide/assets/styles/green24.css +1230 -289
  17. package/styleguide/assets/styles/insights.css +1019 -108
  18. package/styleguide/assets/styles/nac.css +969 -58
  19. package/styleguide/assets/styles/ztnac.css +1206 -265
  20. package/styleguide/category/COLOR/index.html +2 -2
  21. package/styleguide/category/COMPONENT/Alert(js)/index.html +2 -2
  22. package/styleguide/category/COMPONENT/Bignumber/index.html +2 -2
  23. package/styleguide/category/COMPONENT/Breadcrumb/index.html +2 -2
  24. package/styleguide/category/COMPONENT/Calendar(js)/index.html +2 -2
  25. package/styleguide/category/COMPONENT/Card/index.html +2 -2
  26. package/styleguide/category/COMPONENT/Chart(js)/index.html +2 -2
  27. package/styleguide/category/COMPONENT/Datagrid(js)/index.html +136 -9
  28. package/styleguide/category/COMPONENT/Datalist(js)/index.html +2 -2
  29. package/styleguide/category/COMPONENT/Growl(js)/index.html +2 -2
  30. package/styleguide/category/COMPONENT/JsonView(js)/index.html +2 -2
  31. package/styleguide/category/COMPONENT/Loader(js)/index.html +21 -4
  32. package/styleguide/category/COMPONENT/MenuButton(js)/index.html +74 -6
  33. package/styleguide/category/COMPONENT/Message(js)/index.html +2 -2
  34. package/styleguide/category/COMPONENT/Modal(js)/index.html +2 -2
  35. package/styleguide/category/COMPONENT/Pagination(js)/index.html +2 -2
  36. package/styleguide/category/COMPONENT/Panel/index.html +2 -2
  37. package/styleguide/category/COMPONENT/Progressbar(js)/index.html +2 -2
  38. package/styleguide/category/COMPONENT/Tab(js)/index.html +2 -2
  39. package/styleguide/category/COMPONENT/Tagcloud(js)/index.html +2 -2
  40. package/styleguide/category/COMPONENT/Tooltip(js)/index.html +2 -2
  41. package/styleguide/category/COMPONENT/Tree(js)/index.html +2 -2
  42. package/styleguide/category/CONTROLS/Button(js)/index.html +2 -2
  43. package/styleguide/category/CONTROLS/Checkbox/index.html +2 -2
  44. package/styleguide/category/CONTROLS/Colorpicker(js)/index.html +2 -2
  45. package/styleguide/category/CONTROLS/Datepicker(js)/index.html +2 -2
  46. package/styleguide/category/CONTROLS/Dropdown(js)/index.html +2 -2
  47. package/styleguide/category/CONTROLS/File/index.html +2 -2
  48. package/styleguide/category/CONTROLS/Form/Control/index.html +2 -2
  49. package/styleguide/category/CONTROLS/Form/Field/index.html +2 -2
  50. package/styleguide/category/CONTROLS/Form/Plain/index.html +2 -2
  51. package/styleguide/category/CONTROLS/Input/index.html +2 -2
  52. package/styleguide/category/CONTROLS/MultiText(js)/index.html +2 -2
  53. package/styleguide/category/CONTROLS/Picklist(js)/index.html +28 -18
  54. package/styleguide/category/CONTROLS/Radio/index.html +2 -2
  55. package/styleguide/category/CONTROLS/Select/index.html +2 -2
  56. package/styleguide/category/CONTROLS/SelectButton(js)/index.html +2 -2
  57. package/styleguide/category/CONTROLS/Slider/index.html +2 -2
  58. package/styleguide/category/CONTROLS/SortableList(js)/index.html +487 -0
  59. package/styleguide/category/CONTROLS/Switch(js)/index.html +2 -2
  60. package/styleguide/category/CONTROLS/SyntaxInput(js)/index.html +2 -2
  61. package/styleguide/category/CONTROLS/Textarea/index.html +2 -2
  62. package/styleguide/category/CONTROLS/Time(js)/index.html +2 -2
  63. package/styleguide/category/ELEMENTS/Box/index.html +2 -2
  64. package/styleguide/category/ELEMENTS/Icon/index.html +2 -2
  65. package/styleguide/category/ELEMENTS/Image/index.html +2 -2
  66. package/styleguide/category/ELEMENTS/List/index.html +2 -2
  67. package/styleguide/category/ELEMENTS/Table/index.html +2 -2
  68. package/styleguide/category/ELEMENTS/Tag/index.html +2 -2
  69. package/styleguide/category/ELEMENTS/Title/index.html +2 -2
  70. package/styleguide/category/LAYOUT/Container/index.html +2 -2
  71. package/styleguide/category/LAYOUT/Grid/index.html +2 -2
  72. package/styleguide/category/LAYOUT/Splitter(js)/index.html +2 -2
  73. package/styleguide/category/UTILITY/index.html +2 -2
  74. package/styleguide/category/Utils/index.html +2 -2
  75. package/styleguide/color.html +2 -2
  76. package/styleguide/index.html +2 -2
  77. package/styleguide/tag/javascript/index.html +608 -31
  78. package/styleguide/tag/v.0.1.0/index.html +608 -31
@@ -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
  }
@@ -682,16 +682,16 @@ tag:
682
682
  }
683
683
 
684
684
  .has-text-help {
685
- color: hsl(203, 96%, 43%) !important;
685
+ color: #3681a5 !important;
686
686
  }
687
687
 
688
688
  .has-color-help {
689
- background-color: hsl(203, 96%, 43%) !important;
689
+ background-color: #3681a5 !important;
690
690
  color: #fff !important;
691
691
  }
692
692
 
693
693
  .has-border-help {
694
- border-color: hsl(203, 96%, 43%) !important;
694
+ border-color: #3681a5 !important;
695
695
  }
696
696
 
697
697
  .has-text-plain {
@@ -747,16 +747,16 @@ tag:
747
747
  }
748
748
 
749
749
  .has-text-guide {
750
- color: #0487da !important;
750
+ color: #3681a5 !important;
751
751
  }
752
752
 
753
753
  .has-color-guide {
754
- background-color: #0487da !important;
754
+ background-color: #3681a5 !important;
755
755
  color: #fff !important;
756
756
  }
757
757
 
758
758
  .has-border-guide {
759
- border-color: #0487da !important;
759
+ border-color: #3681a5 !important;
760
760
  }
761
761
 
762
762
  .has-text-size1 {
@@ -1584,33 +1584,33 @@ tag:
1584
1584
  border-color: hsl(0, 0%, 29%);
1585
1585
  }
1586
1586
  .gn-icon.is-help {
1587
- color: hsl(203, 96%, 43%);
1587
+ color: #3681a5;
1588
1588
  }
1589
1589
  .gn-icon.is-help[role=button]:hover, .gn-icon.is-help[role=button].is-hover {
1590
- color: hsl(203, 96%, 43%);
1590
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1591
1591
  }
1592
1592
  .gn-icon.is-help.is-circle, .gn-icon.is-help.is-rect {
1593
1593
  color: #fff;
1594
1594
  border-color: #fff;
1595
- background-color: hsl(203, 96%, 43%);
1595
+ background-color: #3681a5;
1596
1596
  }
1597
1597
  .gn-icon.is-help.is-circle[role=button]:hover, .gn-icon.is-help.is-circle[role=button].is-hover, .gn-icon.is-help.is-rect[role=button]:hover, .gn-icon.is-help.is-rect[role=button].is-hover {
1598
- color: hsl(203, 96%, 43%);
1599
- border-color: hsl(203, 96%, 43%);
1600
- background-color: hsl(203, 96%, 38%);
1598
+ color: #3681a5;
1599
+ border-color: #3681a5;
1600
+ background-color: rgb(47.7123287671, 113.9794520548, 145.7876712329);
1601
1601
  }
1602
1602
  .gn-icon.is-help.is-circle.is-outline, .gn-icon.is-help.is-rect.is-outline {
1603
- background-color: hsl(203, 96%, 96%);
1604
- color: hsl(203, 96%, 43%);
1605
- border-color: hsl(203, 96%, 43%);
1603
+ background-color: #fff;
1604
+ color: rgb(54.0739726027, 129.1767123288, 165.2260273973);
1605
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1606
1606
  border-width: 1px;
1607
1607
  border-style: solid;
1608
1608
  border-radius: 2px;
1609
1609
  }
1610
1610
  .gn-icon.is-help.is-circle.is-outline[role=button]:hover, .gn-icon.is-help.is-circle.is-outline[role=button].is-hover, .gn-icon.is-help.is-rect.is-outline[role=button]:hover, .gn-icon.is-help.is-rect.is-outline[role=button].is-hover {
1611
- background-color: hsl(203, 96%, 43%);
1611
+ background-color: #3681a5;
1612
1612
  color: #fff;
1613
- border-color: hsl(203, 96%, 43%);
1613
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1614
1614
  }
1615
1615
  .gn-icon.is-plain {
1616
1616
  color: #fff;
@@ -1729,33 +1729,33 @@ tag:
1729
1729
  border-color: rgb(221.3358870968, 18.3641129032, 22.2302419355);
1730
1730
  }
1731
1731
  .gn-icon.is-guide {
1732
- color: #0487da;
1732
+ color: #3681a5;
1733
1733
  }
1734
1734
  .gn-icon.is-guide[role=button]:hover, .gn-icon.is-guide[role=button].is-hover {
1735
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
1735
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1736
1736
  }
1737
1737
  .gn-icon.is-guide.is-circle, .gn-icon.is-guide.is-rect {
1738
1738
  color: #fff;
1739
1739
  border-color: #fff;
1740
- background-color: #0487da;
1740
+ background-color: #3681a5;
1741
1741
  }
1742
1742
  .gn-icon.is-guide.is-circle[role=button]:hover, .gn-icon.is-guide.is-circle[role=button].is-hover, .gn-icon.is-guide.is-rect[role=button]:hover, .gn-icon.is-guide.is-rect[role=button].is-hover {
1743
- color: #0487da;
1744
- border-color: #0487da;
1745
- background-color: rgb(3.5405405405, 119.4932432432, 192.9594594595);
1743
+ color: #3681a5;
1744
+ border-color: #3681a5;
1745
+ background-color: rgb(47.7123287671, 113.9794520548, 145.7876712329);
1746
1746
  }
1747
1747
  .gn-icon.is-guide.is-circle.is-outline, .gn-icon.is-guide.is-rect.is-outline {
1748
1748
  background-color: #fff;
1749
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
1750
- border-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
1749
+ color: rgb(54.0739726027, 129.1767123288, 165.2260273973);
1750
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1751
1751
  border-width: 1px;
1752
1752
  border-style: solid;
1753
1753
  border-radius: 2px;
1754
1754
  }
1755
1755
  .gn-icon.is-guide.is-circle.is-outline[role=button]:hover, .gn-icon.is-guide.is-circle.is-outline[role=button].is-hover, .gn-icon.is-guide.is-rect.is-outline[role=button]:hover, .gn-icon.is-guide.is-rect.is-outline[role=button].is-hover {
1756
- background-color: #0487da;
1756
+ background-color: #3681a5;
1757
1757
  color: #fff;
1758
- border-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
1758
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
1759
1759
  }
1760
1760
 
1761
1761
  .gn-flag {
@@ -2800,7 +2800,7 @@ tag:
2800
2800
  }
2801
2801
  .gn-icon-ext::before {
2802
2802
  content: "\f15b";
2803
- font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free";
2803
+ font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
2804
2804
  font-weight: 300;
2805
2805
  font-size: 1.6rem;
2806
2806
  }
@@ -3567,19 +3567,19 @@ tag:
3567
3567
  color: hsl(0, 0%, 29%);
3568
3568
  }
3569
3569
  .gn-tag.is-help {
3570
- background-color: hsl(203, 96%, 43%);
3570
+ background-color: #3681a5;
3571
3571
  color: #fff;
3572
3572
  }
3573
3573
  .gn-tag.is-help.is-outline {
3574
3574
  background-color: transparent;
3575
- color: hsl(203, 96%, 43%);
3576
- border-color: hsl(203, 96%, 43%);
3575
+ color: #3681a5;
3576
+ border-color: #3681a5;
3577
3577
  border-width: 1px;
3578
3578
  border-style: solid;
3579
3579
  }
3580
3580
  .gn-tag.is-help-light {
3581
- background-color: hsl(203, 96%, 96%);
3582
- color: hsl(203, 96%, 43%);
3581
+ background-color: #fff;
3582
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
3583
3583
  }
3584
3584
  .gn-tag.is-plain {
3585
3585
  background-color: #fff;
@@ -3642,19 +3642,19 @@ tag:
3642
3642
  color: rgb(221.3358870968, 18.3641129032, 22.2302419355);
3643
3643
  }
3644
3644
  .gn-tag.is-guide {
3645
- background-color: #0487da;
3645
+ background-color: #3681a5;
3646
3646
  color: #fff;
3647
3647
  }
3648
3648
  .gn-tag.is-guide.is-outline {
3649
3649
  background-color: transparent;
3650
- color: #0487da;
3651
- border-color: #0487da;
3650
+ color: #3681a5;
3651
+ border-color: #3681a5;
3652
3652
  border-width: 1px;
3653
3653
  border-style: solid;
3654
3654
  }
3655
3655
  .gn-tag.is-guide-light {
3656
3656
  background-color: #fff;
3657
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
3657
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
3658
3658
  }
3659
3659
  .gn-tag.is-round {
3660
3660
  border-radius: 290486px;
@@ -4197,23 +4197,23 @@ tag:
4197
4197
  .gn-table tr.is-help,
4198
4198
  .gn-table td.is-help,
4199
4199
  .gn-table th.is-help {
4200
- background-color: hsl(203, 96%, 43%);
4200
+ background-color: #3681a5;
4201
4201
  color: #fff;
4202
4202
  }
4203
4203
  .gn-table tr.is-help:hover,
4204
4204
  .gn-table td.is-help:hover,
4205
4205
  .gn-table th.is-help:hover {
4206
- background-color: hsl(203, 96%, 40%);
4206
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
4207
4207
  }
4208
4208
  .gn-table tr.is-help-light,
4209
4209
  .gn-table td.is-help-light,
4210
4210
  .gn-table th.is-help-light {
4211
- background-color: hsl(203, 96%, 96%);
4211
+ background-color: #fff;
4212
4212
  }
4213
4213
  .gn-table tr.is-help-light:hover,
4214
4214
  .gn-table td.is-help-light:hover,
4215
4215
  .gn-table th.is-help-light:hover {
4216
- background-color: hsl(203, 96%, 93%);
4216
+ background-color: rgb(247.35, 247.35, 247.35);
4217
4217
  }
4218
4218
  .gn-table tr.is-plain,
4219
4219
  .gn-table td.is-plain,
@@ -4302,13 +4302,13 @@ tag:
4302
4302
  .gn-table tr.is-guide,
4303
4303
  .gn-table td.is-guide,
4304
4304
  .gn-table th.is-guide {
4305
- background-color: #0487da;
4305
+ background-color: #3681a5;
4306
4306
  color: #fff;
4307
4307
  }
4308
4308
  .gn-table tr.is-guide:hover,
4309
4309
  .gn-table td.is-guide:hover,
4310
4310
  .gn-table th.is-guide:hover {
4311
- background-color: rgb(3.7243243243, 125.6959459459, 202.9756756757);
4311
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
4312
4312
  }
4313
4313
  .gn-table tr.is-guide-light,
4314
4314
  .gn-table td.is-guide-light,
@@ -4381,10 +4381,6 @@ tag:
4381
4381
  display: block;
4382
4382
  word-break: break-word;
4383
4383
  }
4384
- .gn-title:not(:last-child),
4385
- .gn-sub-title:not(:last-child) {
4386
- margin-bottom: 1rem;
4387
- }
4388
4384
 
4389
4385
  .gn-title {
4390
4386
  color: #000;
@@ -5434,44 +5430,44 @@ compile: true
5434
5430
  border-color: rgba(0, 0, 0, 0.7);
5435
5431
  }
5436
5432
  .gn-button.is-help {
5437
- background-color: hsl(203, 96%, 43%);
5433
+ background-color: #3681a5;
5438
5434
  color: #fff;
5439
- border-color: hsl(203, 96%, 43%);
5435
+ border-color: #3681a5;
5440
5436
  }
5441
5437
  .gn-button.is-help:hover, .gn-button.is-help.is-hover {
5442
- background-color: hsl(203, 96%, 43%);
5438
+ background-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5443
5439
  color: #fff;
5444
- border-color: hsl(203, 96%, 43%);
5440
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5445
5441
  }
5446
5442
  .gn-button.is-help.is-disabled:hover, .gn-button.is-help.is-disabled.is-hover {
5447
- background-color: hsl(203, 96%, 43%);
5443
+ background-color: #3681a5;
5448
5444
  color: #fff;
5449
- border-color: hsl(203, 96%, 43%);
5445
+ border-color: #3681a5;
5450
5446
  }
5451
5447
  .gn-button.is-help:focus, .gn-button.is-help.is-focus {
5452
5448
  color: rgb(229.5, 229.5, 229.5);
5453
5449
  }
5454
5450
  .gn-button.is-help:active, .gn-button.is-help.is-active {
5455
- background-color: hsl(203, 96%, 43%);
5451
+ background-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5456
5452
  color: #fff;
5457
5453
  }
5458
5454
  .gn-button.is-help.is-outline {
5459
- background-color: hsl(203, 96%, 96%);
5460
- color: hsl(203, 96%, 43%);
5461
- border-color: hsl(203, 96%, 43%);
5455
+ background-color: #fff;
5456
+ color: rgb(54.0739726027, 129.1767123288, 165.2260273973);
5457
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5462
5458
  }
5463
5459
  .gn-button.is-help.is-outline:hover, .gn-button.is-help.is-outline.is-hover {
5464
- background-color: hsl(203, 96%, 43%);
5460
+ background-color: #3681a5;
5465
5461
  color: #fff;
5466
- border-color: hsl(203, 96%, 43%);
5462
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5467
5463
  }
5468
5464
  .gn-button.is-help.is-outline.is-disabled:hover, .gn-button.is-help.is-outline.is-disabled.is-hover {
5469
- background-color: hsl(203, 96%, 96%);
5470
- color: hsl(203, 96%, 43%);
5465
+ background-color: #fff;
5466
+ color: #3681a5;
5471
5467
  }
5472
5468
  .gn-button.is-help.is-invert {
5473
5469
  background-color: #fff;
5474
- color: hsl(203, 96%, 43%);
5470
+ color: #3681a5;
5475
5471
  border-color: #fff;
5476
5472
  }
5477
5473
  .gn-button.is-help.is-invert:hover, .gn-button.is-help.is-invert.is-hover {
@@ -5480,7 +5476,7 @@ compile: true
5480
5476
  }
5481
5477
  .gn-button.is-help.is-invert.is-disabled:hover, .gn-button.is-help.is-invert.is-disabled.is-hover {
5482
5478
  background-color: #fff;
5483
- color: hsl(203, 96%, 43%);
5479
+ color: #3681a5;
5484
5480
  border-color: #fff;
5485
5481
  }
5486
5482
  .gn-button.is-plain {
@@ -5684,44 +5680,44 @@ compile: true
5684
5680
  border-color: #fff;
5685
5681
  }
5686
5682
  .gn-button.is-guide {
5687
- background-color: #0487da;
5683
+ background-color: #3681a5;
5688
5684
  color: #fff;
5689
- border-color: #0487da;
5685
+ border-color: #3681a5;
5690
5686
  }
5691
5687
  .gn-button.is-guide:hover, .gn-button.is-guide.is-hover {
5692
- background-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5688
+ background-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5693
5689
  color: #fff;
5694
- border-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5690
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5695
5691
  }
5696
5692
  .gn-button.is-guide.is-disabled:hover, .gn-button.is-guide.is-disabled.is-hover {
5697
- background-color: #0487da;
5693
+ background-color: #3681a5;
5698
5694
  color: #fff;
5699
- border-color: #0487da;
5695
+ border-color: #3681a5;
5700
5696
  }
5701
5697
  .gn-button.is-guide:focus, .gn-button.is-guide.is-focus {
5702
5698
  color: rgb(229.5, 229.5, 229.5);
5703
5699
  }
5704
5700
  .gn-button.is-guide:active, .gn-button.is-guide.is-active {
5705
- background-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5701
+ background-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5706
5702
  color: #fff;
5707
5703
  }
5708
5704
  .gn-button.is-guide.is-outline {
5709
5705
  background-color: #fff;
5710
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5711
- border-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5706
+ color: rgb(54.0739726027, 129.1767123288, 165.2260273973);
5707
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5712
5708
  }
5713
5709
  .gn-button.is-guide.is-outline:hover, .gn-button.is-guide.is-outline.is-hover {
5714
- background-color: #0487da;
5710
+ background-color: #3681a5;
5715
5711
  color: #fff;
5716
- border-color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
5712
+ border-color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
5717
5713
  }
5718
5714
  .gn-button.is-guide.is-outline.is-disabled:hover, .gn-button.is-guide.is-outline.is-disabled.is-hover {
5719
5715
  background-color: #fff;
5720
- color: #0487da;
5716
+ color: #3681a5;
5721
5717
  }
5722
5718
  .gn-button.is-guide.is-invert {
5723
5719
  background-color: #fff;
5724
- color: #0487da;
5720
+ color: #3681a5;
5725
5721
  border-color: #fff;
5726
5722
  }
5727
5723
  .gn-button.is-guide.is-invert:hover, .gn-button.is-guide.is-invert.is-hover {
@@ -5730,7 +5726,7 @@ compile: true
5730
5726
  }
5731
5727
  .gn-button.is-guide.is-invert.is-disabled:hover, .gn-button.is-guide.is-invert.is-disabled.is-hover {
5732
5728
  background-color: #fff;
5733
- color: #0487da;
5729
+ color: #3681a5;
5734
5730
  border-color: #fff;
5735
5731
  }
5736
5732
 
@@ -5754,6 +5750,7 @@ compile: true
5754
5750
  ```ejs
5755
5751
  <button name="new-button"></button>
5756
5752
  <button name="new-button2"></button>
5753
+ <button name="new-button-submenu">편집 메뉴</button>
5757
5754
  ```
5758
5755
 
5759
5756
  ````
@@ -5793,6 +5790,51 @@ compile: true
5793
5790
  value: 'menu2'
5794
5791
  }]
5795
5792
  });
5793
+ // 서브메뉴 예시
5794
+ Gn.create('menubutton', {
5795
+ target: 'button[name=new-button-submenu]',
5796
+ size: 'normal',
5797
+ textSets: {
5798
+ buttonText: '편집 메뉴'
5799
+ },
5800
+ onSelect: function (value, text, menu, e) {
5801
+ console.log('선택된 메뉴:', { value: value, text: text, menu: menu });
5802
+ },
5803
+ data: [
5804
+ {
5805
+ text: '파일',
5806
+ value: 'file',
5807
+ child: [
5808
+ { text: '새 파일', value: 'file-new' },
5809
+ { text: '열기', value: 'file-open' },
5810
+ {
5811
+ text: '최근 파일',
5812
+ value: 'file-recent',
5813
+ child: [
5814
+ { text: 'document.txt', value: 'file-recent-1' },
5815
+ { text: 'image.png', value: 'file-recent-2' }
5816
+ ]
5817
+ },
5818
+ { text: '저장', value: 'file-save', disabled: true },
5819
+ { text: '다른 이름으로 저장', value: 'file-saveas' }
5820
+ ]
5821
+ },
5822
+ {
5823
+ text: '편집',
5824
+ value: 'edit',
5825
+ actived: true,
5826
+ child: [
5827
+ { text: '실행 취소', value: 'edit-undo' },
5828
+ { text: '다시 실행', value: 'edit-redo' }
5829
+ ]
5830
+ },
5831
+ {
5832
+ text: '도움말',
5833
+ value: 'help',
5834
+ disabled: true
5835
+ }
5836
+ ]
5837
+ });
5796
5838
  ````
5797
5839
 
5798
5840
 
@@ -5849,15 +5891,21 @@ compile: true
5849
5891
  </tr>
5850
5892
  <tr>
5851
5893
  <td colspan="2">data</td>
5852
- <td>Array[{value, text, _html_}]</td>
5894
+ <td>Array[{value, text, html, child, disabled, actived}]</td>
5853
5895
  <td></td>
5854
- <td>메뉴 목록에 출력할 목록</td>
5896
+ <td>메뉴 목록에 출력할 목록<br/>- value: 메뉴 값<br/>- text: 메뉴 텍스트<br/>- html: HTML로 렌더링할 내용<br/>- child: 하위 메뉴 배열 (최대 2단계)<br/>- disabled: 비활성화 여부 (boolean)<br/>- actived: 활성화 상태 표시 여부</td>
5897
+ </tr>
5898
+ <tr>
5899
+ <td colspan="2">disabled</td>
5900
+ <td>boolean</td>
5901
+ <td>false</td>
5902
+ <td>버튼 비활성화 여부</td>
5855
5903
  </tr>
5856
5904
  <tr>
5857
5905
  <td colspan="2">onSelect</td>
5858
- <td>function(value, text)</td>
5906
+ <td>function(value, text, menu, e)</td>
5859
5907
  <td></td>
5860
- <td>메뉴 선택 시 수행될 이벤트</td>
5908
+ <td>메뉴 선택 시 수행될 이벤트<br/>- value: 선택된 메뉴의 값<br/>- text: 선택된 메뉴의 텍스트<br/>- menu: 선택된 메뉴 객체<br/>- e: MouseEvent 객체</td>
5861
5909
  </tr>
5862
5910
  </tbody>
5863
5911
  </table>
@@ -5876,6 +5924,21 @@ compile: true
5876
5924
  <td>void</td>
5877
5925
  <td>버튼명을 변경한다.</td>
5878
5926
  </tr>
5927
+ <tr>
5928
+ <td>reRender(data: Array)</td>
5929
+ <td>void</td>
5930
+ <td>메뉴 데이터를 전달받아 DOM을 다시 생성한다.</td>
5931
+ </tr>
5932
+ <tr>
5933
+ <td>disabled()</td>
5934
+ <td>void</td>
5935
+ <td>버튼을 비활성화한다.</td>
5936
+ </tr>
5937
+ <tr>
5938
+ <td>enabled()</td>
5939
+ <td>void</td>
5940
+ <td>버튼을 활성화한다.</td>
5941
+ </tr>
5879
5942
  </tbody>
5880
5943
  </table>
5881
5944
  */
@@ -5963,6 +6026,47 @@ compile: true
5963
6026
  color: #fff;
5964
6027
  background-color: #88b50f;
5965
6028
  }
6029
+ .gn-menuButton .menuButton-menu.is-disabled {
6030
+ pointer-events: none;
6031
+ opacity: 0.5;
6032
+ }
6033
+ .gn-menuButton .menuButton-menu.is-actived {
6034
+ background-color: #b5bdbd !important;
6035
+ }
6036
+ .gn-menuButton .menuButton-menu.has-submenu .menuButton-menu-content {
6037
+ display: flex;
6038
+ align-items: center;
6039
+ justify-content: space-between;
6040
+ width: 100%;
6041
+ }
6042
+ .gn-menuButton .menuButton-menu.has-submenu .menuButton-menu-arrow {
6043
+ margin-left: 10px;
6044
+ display: inline-flex;
6045
+ align-items: center;
6046
+ }
6047
+ .gn-menuButton .menuButton-menu .menuButton-submenu {
6048
+ display: none;
6049
+ position: absolute;
6050
+ left: 100%;
6051
+ top: 0;
6052
+ min-width: 150px;
6053
+ background-color: hsl(0, 0%, 100%);
6054
+ border: 1px solid hsl(0, 0%, 86%);
6055
+ border-radius: 2px;
6056
+ z-index: 21;
6057
+ padding: 0.35rem;
6058
+ }
6059
+ .gn-menuButton .menuButton-menu .menuButton-submenu .menuButton-menu {
6060
+ color: hsl(0, 0%, 29%);
6061
+ cursor: pointer;
6062
+ }
6063
+ .gn-menuButton .menuButton-menu .menuButton-submenu .menuButton-menu:hover {
6064
+ color: #fff;
6065
+ background-color: #88b50f;
6066
+ }
6067
+ .gn-menuButton .menuButton-menu:hover > .menuButton-submenu {
6068
+ display: block;
6069
+ }
5966
6070
  .gn-menuButton.is-white button {
5967
6071
  color: hsl(0, 0%, 100%);
5968
6072
  border-color: hsl(0, 0%, 100%);
@@ -6156,20 +6260,20 @@ compile: true
6156
6260
  background-color: hsl(0, 0%, 100%);
6157
6261
  }
6158
6262
  .gn-menuButton.is-help button {
6159
- color: hsl(203, 96%, 43%);
6160
- border-color: hsl(203, 96%, 43%);
6263
+ color: #3681a5;
6264
+ border-color: #3681a5;
6161
6265
  }
6162
6266
  .gn-menuButton.is-help .menuButton-icon {
6163
- color: hsl(203, 96%, 33%);
6267
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
6164
6268
  }
6165
6269
  .gn-menuButton.is-help .menuButton-item.is-active {
6166
6270
  color: #fff;
6167
- background-color: hsl(203, 96%, 43%);
6271
+ background-color: #3681a5;
6168
6272
  }
6169
6273
  .gn-menuButton.is-help .menuButton-item.is-hover,
6170
6274
  .gn-menuButton.is-help .menuButton-item:hover {
6171
- color: hsl(203, 96%, 43%);
6172
- background-color: hsl(203, 96%, 96%);
6275
+ color: #3681a5;
6276
+ background-color: #fff;
6173
6277
  }
6174
6278
  .gn-menuButton.is-plain button {
6175
6279
  color: #fff;
@@ -6236,19 +6340,19 @@ compile: true
6236
6340
  background-color: #ffcecf;
6237
6341
  }
6238
6342
  .gn-menuButton.is-guide button {
6239
- color: #0487da;
6240
- border-color: #0487da;
6343
+ color: #3681a5;
6344
+ border-color: #3681a5;
6241
6345
  }
6242
6346
  .gn-menuButton.is-guide .menuButton-icon {
6243
- color: rgb(3.0810810811, 103.9864864865, 167.9189189189);
6347
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
6244
6348
  }
6245
6349
  .gn-menuButton.is-guide .menuButton-item.is-active {
6246
6350
  color: #fff;
6247
- background-color: #0487da;
6351
+ background-color: #3681a5;
6248
6352
  }
6249
6353
  .gn-menuButton.is-guide .menuButton-item.is-hover,
6250
6354
  .gn-menuButton.is-guide .menuButton-item:hover {
6251
- color: #0487da;
6355
+ color: #3681a5;
6252
6356
  background-color: #fff;
6253
6357
  }
6254
6358
  .gn-menuButton.is-simple button {
@@ -7726,25 +7830,25 @@ tag:
7726
7830
  border-color: hsla(0, 0%, -5%, 0.7);
7727
7831
  }
7728
7832
  .gn-file.is-help {
7729
- background-color: hsl(203, 96%, 43%);
7833
+ background-color: #3681a5;
7730
7834
  color: #fff;
7731
- border-color: hsl(203, 96%, 43%);
7835
+ border-color: #3681a5;
7732
7836
  }
7733
7837
  .gn-file.is-help:hover, .gn-file.is-help.is-hover {
7734
- background-color: hsl(203, 96%, 40%);
7838
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
7735
7839
  color: #fff;
7736
7840
  }
7737
7841
  .gn-file.is-help.is-outline {
7738
7842
  background-color: transparent;
7739
- color: hsl(203, 96%, 43%);
7843
+ color: #3681a5;
7740
7844
  }
7741
7845
  .gn-file.is-help.is-outline:hover, .gn-file.is-help.is-outline.is-hover {
7742
- background-color: hsl(203, 96%, 43%);
7846
+ background-color: #3681a5;
7743
7847
  color: #fff;
7744
7848
  }
7745
7849
  .gn-file.is-help.is-invert {
7746
7850
  background-color: #fff;
7747
- color: hsl(203, 96%, 43%);
7851
+ color: #3681a5;
7748
7852
  border-color: #fff;
7749
7853
  }
7750
7854
  .gn-file.is-help.is-invert:hover, .gn-file.is-help.is-invert.is-hover {
@@ -7856,25 +7960,25 @@ tag:
7856
7960
  border-color: rgb(242.25, 242.25, 242.25);
7857
7961
  }
7858
7962
  .gn-file.is-guide {
7859
- background-color: #0487da;
7963
+ background-color: #3681a5;
7860
7964
  color: #fff;
7861
- border-color: #0487da;
7965
+ border-color: #3681a5;
7862
7966
  }
7863
7967
  .gn-file.is-guide:hover, .gn-file.is-guide.is-hover {
7864
- background-color: rgb(3.7243243243, 125.6959459459, 202.9756756757);
7968
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
7865
7969
  color: #fff;
7866
7970
  }
7867
7971
  .gn-file.is-guide.is-outline {
7868
7972
  background-color: transparent;
7869
- color: #0487da;
7973
+ color: #3681a5;
7870
7974
  }
7871
7975
  .gn-file.is-guide.is-outline:hover, .gn-file.is-guide.is-outline.is-hover {
7872
- background-color: #0487da;
7976
+ background-color: #3681a5;
7873
7977
  color: #fff;
7874
7978
  }
7875
7979
  .gn-file.is-guide.is-invert {
7876
7980
  background-color: #fff;
7877
- color: #0487da;
7981
+ color: #3681a5;
7878
7982
  border-color: #fff;
7879
7983
  }
7880
7984
  .gn-file.is-guide.is-invert:hover, .gn-file.is-guide.is-invert.is-hover {
@@ -8333,19 +8437,19 @@ tag:
8333
8437
  color: hsl(0, 0%, 29%);
8334
8438
  }
8335
8439
  .gn-plain.is-help {
8336
- background-color: hsl(203, 96%, 43%);
8440
+ background-color: #3681a5;
8337
8441
  color: #fff;
8338
8442
  }
8339
8443
  .gn-plain.is-help.is-outline {
8340
8444
  background-color: transparent;
8341
- color: hsl(203, 96%, 43%);
8342
- border-color: hsl(203, 96%, 43%);
8445
+ color: #3681a5;
8446
+ border-color: #3681a5;
8343
8447
  border-width: 1px;
8344
8448
  border-style: solid;
8345
8449
  }
8346
8450
  .gn-plain.is-help-light {
8347
- background-color: hsl(203, 96%, 96%);
8348
- color: hsl(203, 96%, 43%);
8451
+ background-color: #fff;
8452
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
8349
8453
  }
8350
8454
  .gn-plain.is-plain {
8351
8455
  background-color: #fff;
@@ -8408,19 +8512,19 @@ tag:
8408
8512
  color: rgb(221.3358870968, 18.3641129032, 22.2302419355);
8409
8513
  }
8410
8514
  .gn-plain.is-guide {
8411
- background-color: #0487da;
8515
+ background-color: #3681a5;
8412
8516
  color: #fff;
8413
8517
  }
8414
8518
  .gn-plain.is-guide.is-outline {
8415
8519
  background-color: transparent;
8416
- color: #0487da;
8417
- border-color: #0487da;
8520
+ color: #3681a5;
8521
+ border-color: #3681a5;
8418
8522
  border-width: 1px;
8419
8523
  border-style: solid;
8420
8524
  }
8421
8525
  .gn-plain.is-guide-light {
8422
8526
  background-color: #fff;
8423
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
8527
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
8424
8528
  }
8425
8529
 
8426
8530
  /*
@@ -8577,7 +8681,7 @@ tag:
8577
8681
  color: hsl(0, 0%, 100%);
8578
8682
  }
8579
8683
  .gn-field.is-help {
8580
- color: hsl(203, 96%, 43%);
8684
+ color: #3681a5;
8581
8685
  }
8582
8686
  .gn-field.is-plain {
8583
8687
  color: #fff;
@@ -8592,7 +8696,7 @@ tag:
8592
8696
  color: #e51317;
8593
8697
  }
8594
8698
  .gn-field.is-guide {
8595
- color: #0487da;
8699
+ color: #3681a5;
8596
8700
  }
8597
8701
  .gn-field .gn-label {
8598
8702
  color: hsl(0, 0%, 21%);
@@ -8649,7 +8753,7 @@ tag:
8649
8753
  color: hsl(0, 0%, 100%);
8650
8754
  }
8651
8755
  .gn-field .gn-label.is-help {
8652
- color: hsl(203, 96%, 43%);
8756
+ color: #3681a5;
8653
8757
  }
8654
8758
  .gn-field .gn-label.is-plain {
8655
8759
  color: #fff;
@@ -8664,7 +8768,7 @@ tag:
8664
8768
  color: #e51317;
8665
8769
  }
8666
8770
  .gn-field .gn-label.is-guide {
8667
- color: #0487da;
8771
+ color: #3681a5;
8668
8772
  }
8669
8773
 
8670
8774
  /*
@@ -8952,12 +9056,12 @@ tag:
8952
9056
  }
8953
9057
  .gn-input.is-help,
8954
9058
  .gn-textarea.is-help {
8955
- border-color: hsl(203, 96%, 43%);
9059
+ border-color: #3681a5;
8956
9060
  }
8957
9061
  .gn-input.is-help:hover, .gn-input.is-help.is-hover,
8958
9062
  .gn-textarea.is-help:hover,
8959
9063
  .gn-textarea.is-help.is-hover {
8960
- background-color: hsl(203, 96%, 96%);
9064
+ background-color: #fff;
8961
9065
  }
8962
9066
  .gn-input.is-plain,
8963
9067
  .gn-textarea.is-plain {
@@ -8997,7 +9101,7 @@ tag:
8997
9101
  }
8998
9102
  .gn-input.is-guide,
8999
9103
  .gn-textarea.is-guide {
9000
- border-color: #0487da;
9104
+ border-color: #3681a5;
9001
9105
  }
9002
9106
  .gn-input.is-guide:hover, .gn-input.is-guide.is-hover,
9003
9107
  .gn-textarea.is-guide:hover,
@@ -9254,19 +9358,19 @@ tag:
9254
9358
  color: hsl(0, 0%, 29%);
9255
9359
  }
9256
9360
  .gn-plain2.is-help {
9257
- background-color: hsl(203, 96%, 43%);
9361
+ background-color: #3681a5;
9258
9362
  color: #fff;
9259
9363
  }
9260
9364
  .gn-plain2.is-help.is-outline {
9261
9365
  background-color: transparent;
9262
- color: hsl(203, 96%, 43%);
9263
- border-color: hsl(203, 96%, 43%);
9366
+ color: #3681a5;
9367
+ border-color: #3681a5;
9264
9368
  border-width: 1px;
9265
9369
  border-style: solid;
9266
9370
  }
9267
9371
  .gn-plain2.is-help-light {
9268
- background-color: hsl(203, 96%, 96%);
9269
- color: hsl(203, 96%, 43%);
9372
+ background-color: #fff;
9373
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
9270
9374
  }
9271
9375
  .gn-plain2.is-plain {
9272
9376
  background-color: #fff;
@@ -9329,19 +9433,19 @@ tag:
9329
9433
  color: rgb(221.3358870968, 18.3641129032, 22.2302419355);
9330
9434
  }
9331
9435
  .gn-plain2.is-guide {
9332
- background-color: #0487da;
9436
+ background-color: #3681a5;
9333
9437
  color: #fff;
9334
9438
  }
9335
9439
  .gn-plain2.is-guide.is-outline {
9336
9440
  background-color: transparent;
9337
- color: #0487da;
9338
- border-color: #0487da;
9441
+ color: #3681a5;
9442
+ border-color: #3681a5;
9339
9443
  border-width: 1px;
9340
9444
  border-style: solid;
9341
9445
  }
9342
9446
  .gn-plain2.is-guide-light {
9343
9447
  background-color: #fff;
9344
- color: rgb(3.9513513514, 133.3581081081, 215.3486486486);
9448
+ color: rgb(55.3315068493, 132.1808219178, 169.0684931507);
9345
9449
  }
9346
9450
 
9347
9451
  .is-invalid > .gn-input,
@@ -9922,7 +10026,7 @@ tag:
9922
10026
  }
9923
10027
  .gn-select::after {
9924
10028
  content: "\f107";
9925
- font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
10029
+ font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
9926
10030
  font-weight: 900;
9927
10031
  position: absolute;
9928
10032
  right: 0.5rem;
@@ -10089,11 +10193,11 @@ tag:
10089
10193
  color: hsl(0, 0%, 100%);
10090
10194
  }
10091
10195
  .gn-select.is-help select {
10092
- color: hsl(203, 96%, 43%);
10093
- border-color: hsl(203, 96%, 43%);
10196
+ color: #3681a5;
10197
+ border-color: #3681a5;
10094
10198
  }
10095
10199
  .gn-select.is-help::after {
10096
- color: hsl(203, 96%, 43%);
10200
+ color: #3681a5;
10097
10201
  }
10098
10202
  .gn-select.is-plain select {
10099
10203
  color: #fff;
@@ -10124,11 +10228,11 @@ tag:
10124
10228
  color: #e51317;
10125
10229
  }
10126
10230
  .gn-select.is-guide select {
10127
- color: #0487da;
10128
- border-color: #0487da;
10231
+ color: #3681a5;
10232
+ border-color: #3681a5;
10129
10233
  }
10130
10234
  .gn-select.is-guide::after {
10131
- color: #0487da;
10235
+ color: #3681a5;
10132
10236
  }
10133
10237
 
10134
10238
  .is-invalid > .gn-select select,
@@ -10394,16 +10498,16 @@ tag:
10394
10498
  background-color: hsl(0, 0%, 94%);
10395
10499
  }
10396
10500
  .gn-slider.is-help {
10397
- background-color: hsl(203, 96%, 93%);
10501
+ background-color: rgb(247.35, 247.35, 247.35);
10398
10502
  }
10399
10503
  .gn-slider.is-help::-webkit-slider-thumb, .gn-slider.is-help::-ms-thumb {
10400
- background-color: hsl(203, 96%, 43%);
10504
+ background-color: #3681a5;
10401
10505
  }
10402
10506
  .gn-slider.is-help::-webkit-slider-thumb:hover, .gn-slider.is-help:active::-webkit-slider-thumb, .gn-slider.is-help::-ms-thumb:hover, .gn-slider.is-help:active::-ms-thumb {
10403
- background-color: hsl(203, 96%, 40%);
10507
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
10404
10508
  }
10405
10509
  .gn-slider.is-help:hover {
10406
- background-color: hsl(203, 96%, 90%);
10510
+ background-color: rgb(239.7, 239.7, 239.7);
10407
10511
  }
10408
10512
  .gn-slider.is-plain {
10409
10513
  background-color: rgb(109.7020408163, 146.0005102041, 12.0994897959);
@@ -10457,10 +10561,10 @@ tag:
10457
10561
  background-color: rgb(247.35, 247.35, 247.35);
10458
10562
  }
10459
10563
  .gn-slider.is-guide::-webkit-slider-thumb, .gn-slider.is-guide::-ms-thumb {
10460
- background-color: #0487da;
10564
+ background-color: #3681a5;
10461
10565
  }
10462
10566
  .gn-slider.is-guide::-webkit-slider-thumb:hover, .gn-slider.is-guide:active::-webkit-slider-thumb, .gn-slider.is-guide::-ms-thumb:hover, .gn-slider.is-guide:active::-ms-thumb {
10463
- background-color: rgb(3.7243243243, 125.6959459459, 202.9756756757);
10567
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
10464
10568
  }
10465
10569
  .gn-slider.is-guide:hover {
10466
10570
  background-color: rgb(239.7, 239.7, 239.7);
@@ -10776,7 +10880,7 @@ tag:
10776
10880
  background: hsl(0, 0%, 100%);
10777
10881
  }
10778
10882
  .gn-switch.is-help input:checked + .switch-toggle {
10779
- background: hsl(203, 96%, 43%);
10883
+ background: #3681a5;
10780
10884
  }
10781
10885
  .gn-switch.is-plain input:checked + .switch-toggle {
10782
10886
  background: #fff;
@@ -10791,7 +10895,7 @@ tag:
10791
10895
  background: #e51317;
10792
10896
  }
10793
10897
  .gn-switch.is-guide input:checked + .switch-toggle {
10794
- background: #0487da;
10898
+ background: #3681a5;
10795
10899
  }
10796
10900
 
10797
10901
  .is-invalid > .gn-switch .switch-toggle,
@@ -11671,11 +11775,11 @@ tag:
11671
11775
  background-color: hsl(0, 0%, 94%);
11672
11776
  }
11673
11777
  .gn-alert.is-help {
11674
- background-color: hsl(203, 96%, 43%);
11778
+ background-color: #3681a5;
11675
11779
  color: #fff;
11676
11780
  }
11677
11781
  .gn-alert.is-help > .is-close:hover {
11678
- background-color: hsl(203, 96%, 37%);
11782
+ background-color: rgb(46.4547945205, 110.9753424658, 141.9452054795);
11679
11783
  }
11680
11784
  .gn-alert.is-plain {
11681
11785
  background-color: #fff;
@@ -11706,11 +11810,11 @@ tag:
11706
11810
  background-color: rgb(200.7443548387, 16.6556451613, 20.1620967742);
11707
11811
  }
11708
11812
  .gn-alert.is-guide {
11709
- background-color: #0487da;
11813
+ background-color: #3681a5;
11710
11814
  color: #fff;
11711
11815
  }
11712
11816
  .gn-alert.is-guide > .is-close:hover {
11713
- background-color: rgb(3.4486486486, 116.3918918919, 187.9513513514);
11817
+ background-color: rgb(46.4547945205, 110.9753424658, 141.9452054795);
11714
11818
  }
11715
11819
 
11716
11820
  /*
@@ -11905,9 +12009,9 @@ tag:
11905
12009
  color: hsl(0, 0%, 29%);
11906
12010
  }
11907
12011
  .gn-bignumber.is-help {
11908
- border-color: hsl(203, 96%, 43%);
11909
- color: hsl(203, 96%, 40%);
11910
- background-color: hsl(203, 96%, 96%);
12012
+ border-color: #3681a5;
12013
+ color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
12014
+ background-color: #fff;
11911
12015
  }
11912
12016
  .gn-bignumber.is-plain {
11913
12017
  border-color: #fff;
@@ -11930,8 +12034,8 @@ tag:
11930
12034
  background-color: #ffcecf;
11931
12035
  }
11932
12036
  .gn-bignumber.is-guide {
11933
- border-color: #0487da;
11934
- color: rgb(3.7243243243, 125.6959459459, 202.9756756757);
12037
+ border-color: #3681a5;
12038
+ color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
11935
12039
  background-color: #fff;
11936
12040
  }
11937
12041
 
@@ -13118,7 +13222,7 @@ category:
13118
13222
  color: rgba(0, 0, 0, 0.7);
13119
13223
  }
13120
13224
  .gn-gcolor.is-help {
13121
- background-color: hsl(203, 96%, 43%);
13225
+ background-color: #3681a5;
13122
13226
  color: #fff;
13123
13227
  }
13124
13228
  .gn-gcolor.is-plain {
@@ -13138,7 +13242,7 @@ category:
13138
13242
  color: #fff;
13139
13243
  }
13140
13244
  .gn-gcolor.is-guide {
13141
- background-color: #0487da;
13245
+ background-color: #3681a5;
13142
13246
  color: #fff;
13143
13247
  }
13144
13248
 
@@ -13160,9 +13264,13 @@ tag:
13160
13264
  ```ejs
13161
13265
  <div class="new-grid"></div>
13162
13266
 
13163
- <div style="width: 100%; height: 350px; overflow-x: auto; margin-top: 20px;">
13267
+ <div style="width: 100%; height: 100px; overflow-x: auto; margin-top: 20px;">
13164
13268
  <div class="new-grid2"></div>
13165
13269
  </div>
13270
+
13271
+ <div style="width: 100%; height: 350px; overflow-x: auto; margin-top: 20px;">
13272
+ <div class="new-grid3"></div>
13273
+ </div>
13166
13274
  ```
13167
13275
  ````
13168
13276
  Gn.create('datagrid', {
@@ -13275,19 +13383,122 @@ Gn.create('datagrid', {
13275
13383
  })
13276
13384
  Gn.create('datagrid', {
13277
13385
  target: '.new-grid2',
13386
+ headers: [
13387
+ {
13388
+ label: 'no',
13389
+ key: 'number',
13390
+ onSelect: function () {
13391
+ // eslint-disable-next-line prefer-rest-params
13392
+ console.log(arguments);
13393
+ },
13394
+ template: function (k, d) {
13395
+ return '<span>' + d[k] + '</span>';
13396
+ },
13397
+ draggable: true,
13398
+ sortable: true,
13399
+ sort: 'asc'
13400
+ },
13401
+ {
13402
+ label: '제목',
13403
+ key: 'title',
13404
+ style: {
13405
+ width: '250px'
13406
+ },
13407
+ className: 'has-text-right',
13408
+ draggable: true,
13409
+ bodyClass: 'has-text-left',
13410
+ sortable: true
13411
+ },
13412
+ {
13413
+ label: '날짜',
13414
+ key: 'date',
13415
+ style: {
13416
+ width: '150px'
13417
+ },
13418
+ className: 'has-text-center',
13419
+ bodyClass: 'has-text-left'
13420
+ }
13421
+ ],
13422
+ data: [
13423
+ {
13424
+ number: '1',
13425
+ title: '하나',
13426
+ date: '2020-09-19',
13427
+ desc: 'hello, world',
13428
+ child: [
13429
+ {
13430
+ number: '1-1',
13431
+ title: '1-하나',
13432
+ date: '2020-09-19'
13433
+ },
13434
+ {
13435
+ number: '1-2',
13436
+ title: '1-둘',
13437
+ date: '2020-09-19',
13438
+ desc: 'hello, world',
13439
+ child: [
13440
+ {
13441
+ number: '1-2-1',
13442
+ title: '1-둘-1',
13443
+ date: '2020-09-19',
13444
+ desc: 'hello, world',
13445
+ child: [
13446
+ {
13447
+ number: '1-2-1-1',
13448
+ title: '1-둘-1-1',
13449
+ desc: 'hello, world',
13450
+ date: '2020-09-19'
13451
+ }
13452
+ ]
13453
+ }
13454
+ ]
13455
+ }
13456
+ ],
13457
+ color: 'is-danger-light'
13458
+ },
13459
+ {
13460
+ number: '2',
13461
+ title: '둘',
13462
+ date: '2020-09-19',
13463
+ desc: 'hello, world'
13464
+ }
13465
+ ],
13466
+ hasHeader: false,
13467
+ hasCheck: true,
13468
+ hasDelete: true,
13469
+ textSets: {
13470
+ deleteConfirmMessage: '파일을 삭제하시겠습니까?'
13471
+ },
13472
+ // onDelete 에서 false 를 반환하면 해당 행 삭제를 취소할 수 있다.
13473
+ onDelete: (data, index) => {
13474
+ console.log(data, index);
13475
+ // 예) 특정 조건에 따라 삭제 취소
13476
+ // if (index === 0) {
13477
+ // return false;
13478
+ // }
13479
+ }
13480
+ })
13481
+ Gn.create('datagrid', {
13482
+ target: '.new-grid3',
13278
13483
  headers: [
13279
13484
  {
13280
13485
  label: 'row data numbers',
13281
13486
  key: 'number',
13282
13487
  style: { width: '50px' },
13283
13488
  sortable: true,
13284
- draggable: true
13489
+ draggable: true,
13490
+ template: function (k, d) {
13491
+ return '<span>' + d[k] + '</span>';
13492
+ }
13285
13493
  },
13286
13494
  {
13287
13495
  label: '제목',
13288
13496
  key: 'title',
13289
13497
  sortable: true,
13290
- draggable: true
13498
+ draggable: true,
13499
+ template: function (k, d) {
13500
+ return '<span>' + d[k] + '</span>';
13501
+ }
13291
13502
  },
13292
13503
  {
13293
13504
  label: '날짜를 표시하는 컬럼입니다',
@@ -13350,8 +13561,6 @@ Gn.create('datagrid', {
13350
13561
  paginator: {
13351
13562
  rows: 30
13352
13563
  },
13353
- hasDelete: true,
13354
- fixHeader: true,
13355
13564
  onChange: updatedData => {
13356
13565
  console.log(updatedData)
13357
13566
  }
@@ -13466,7 +13675,7 @@ Gn.create('datagrid', {
13466
13675
  <b>color:is-warning-light</b> => 행의 색 변경</td>
13467
13676
  </tr>
13468
13677
  <tr>
13469
- <td rowspan="3">textSets</td>
13678
+ <td rowspan="4">textSets</td>
13470
13679
  <td>noData</td>
13471
13680
  <td>string</td>
13472
13681
  <td>No records available.</td>
@@ -13484,6 +13693,12 @@ Gn.create('datagrid', {
13484
13693
  <td></td>
13485
13694
  <td>삭제버튼 헤더표시문구</td>
13486
13695
  </tr>
13696
+ <tr>
13697
+ <td>deleteConfirmMessage</td>
13698
+ <td>string</td>
13699
+ <td></td>
13700
+ <td>삭제 확인 창 표시문구 - 삭제 버튼 클릭시 확인 창 출력</td>
13701
+ </tr>
13487
13702
  <tr>
13488
13703
  <td colspan="2">childField</td>
13489
13704
  <td>string</td>
@@ -13508,6 +13723,12 @@ Gn.create('datagrid', {
13508
13723
  <td>false</td>
13509
13724
  <td>삭제버튼 생성 여부</td>
13510
13725
  </tr>
13726
+ <tr>
13727
+ <td colspan="2">hasHeader</td>
13728
+ <td>boolean</td>
13729
+ <td>true</td>
13730
+ <td>헤더 생성 여부</td>
13731
+ </tr>
13511
13732
  <tr>
13512
13733
  <td colspan="2">readonly</td>
13513
13734
  <td>boolean</td>
@@ -13605,6 +13826,12 @@ Gn.create('datagrid', {
13605
13826
  <td></td>
13606
13827
  <td>이동, 삭제 등의 데이터 변경이 있는 경우, 변경된 데이터를 가져오기 위한 이벤트핸들러</td>
13607
13828
  </tr>
13829
+ <tr>
13830
+ <td colspan="2">onDelete</td>
13831
+ <td>function(deletedData, index)</td>
13832
+ <td>deletedData, index 를 인자로 받으며, false 를 반환하면 해당 행 삭제를 취소한다.</td>
13833
+ <td>삭제 버튼 클릭 시 삭제 대상 데이터와 인덱스를 받을 수 있는 이벤트핸들러<br>onChange 보다 먼저 동작하며, onDelete 에서 false 를 반환하면 실제 삭제 및 onChange 호출이 수행되지 않는다.</td>
13834
+ </tr>
13608
13835
  </tbody>
13609
13836
  </table>
13610
13837
 
@@ -13790,11 +14017,11 @@ Gn.create('datagrid', {
13790
14017
  }
13791
14018
  .gn-datagrid .gn-datagrid-body-row .is-toggler::before {
13792
14019
  content: "\f0d7";
13793
- font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
14020
+ font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
13794
14021
  font-weight: 700;
13795
14022
  }
13796
14023
  .gn-datagrid .gn-datagrid-body-row.has-child[data-depth="0"] .is-toggler {
13797
- margin-left: -3px;
14024
+ margin-left: -6px;
13798
14025
  }
13799
14026
  .gn-datagrid .gn-datagrid-body-row.is-collapsed .is-toggler::before {
13800
14027
  content: "\f0da";
@@ -13944,16 +14171,16 @@ Gn.create('datagrid', {
13944
14171
  background-color: hsl(0, 0%, 97%);
13945
14172
  }
13946
14173
  .gn-datagrid .gn-datagrid-body-row.is-help {
13947
- background-color: hsl(203, 96%, 43%);
14174
+ background-color: #3681a5;
13948
14175
  }
13949
14176
  .gn-datagrid .gn-datagrid-body-row.is-help.is-hover .gn-datagrid-body-cell, .gn-datagrid .gn-datagrid-body-row.is-help:hover .gn-datagrid-body-cell {
13950
- background-color: hsl(203, 96%, 40%);
14177
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
13951
14178
  }
13952
14179
  .gn-datagrid .gn-datagrid-body-row.is-help-light {
13953
- background-color: hsl(203, 96%, 96%);
14180
+ background-color: #fff;
13954
14181
  }
13955
14182
  .gn-datagrid .gn-datagrid-body-row.is-help-light.is-hover .gn-datagrid-body-cell, .gn-datagrid .gn-datagrid-body-row.is-help-light:hover .gn-datagrid-body-cell {
13956
- background-color: hsl(203, 96%, 93%);
14183
+ background-color: rgb(247.35, 247.35, 247.35);
13957
14184
  }
13958
14185
  .gn-datagrid .gn-datagrid-body-row.is-plain {
13959
14186
  background-color: #fff;
@@ -14004,10 +14231,10 @@ Gn.create('datagrid', {
14004
14231
  background-color: rgb(255, 190.7, 192.012244898);
14005
14232
  }
14006
14233
  .gn-datagrid .gn-datagrid-body-row.is-guide {
14007
- background-color: #0487da;
14234
+ background-color: #3681a5;
14008
14235
  }
14009
14236
  .gn-datagrid .gn-datagrid-body-row.is-guide.is-hover .gn-datagrid-body-cell, .gn-datagrid .gn-datagrid-body-row.is-guide:hover .gn-datagrid-body-cell {
14010
- background-color: rgb(3.7243243243, 125.6959459459, 202.9756756757);
14237
+ background-color: rgb(50.2273972603, 119.9876712329, 153.4726027397);
14011
14238
  }
14012
14239
  .gn-datagrid .gn-datagrid-body-row.is-guide-light {
14013
14240
  background-color: #fff;
@@ -14018,6 +14245,9 @@ Gn.create('datagrid', {
14018
14245
  .gn-datagrid.has-left-padding .gn-datagrid-body-row:not(.has-child)[data-depth="0"] .gn-datagrid-body-cell:first-child {
14019
14246
  padding-left: 15px;
14020
14247
  }
14248
+ .gn-datagrid.is-headless .gn-datagrid-body-row:first-child {
14249
+ border-top: 1px solid hsl(0, 0%, 86%);
14250
+ }
14021
14251
  .gn-datagrid .gn-datagrid-header-cell {
14022
14252
  border-right: 1px solid hsl(0, 0%, 86%);
14023
14253
  padding: 0.55rem;
@@ -14260,9 +14490,9 @@ Gn.create('datagrid', {
14260
14490
  border-color: hsl(0, 0%, 100%);
14261
14491
  }
14262
14492
  .gn-datagrid.is-help {
14263
- color: hsl(203, 96%, 43%);
14264
- background-color: hsl(203, 96%, 96%);
14265
- border-color: hsl(203, 96%, 43%);
14493
+ color: #3681a5;
14494
+ background-color: #fff;
14495
+ border-color: #3681a5;
14266
14496
  }
14267
14497
  .gn-datagrid.is-plain {
14268
14498
  color: #fff;
@@ -14285,9 +14515,9 @@ Gn.create('datagrid', {
14285
14515
  border-color: #e51317;
14286
14516
  }
14287
14517
  .gn-datagrid.is-guide {
14288
- color: #0487da;
14518
+ color: #3681a5;
14289
14519
  background-color: #fff;
14290
- border-color: #0487da;
14520
+ border-color: #3681a5;
14291
14521
  }
14292
14522
 
14293
14523
  .btn-container {
@@ -16027,15 +16257,15 @@ tag:
16027
16257
  color: rgba(0, 0, 0, 0.7);
16028
16258
  }
16029
16259
  .gn-dropdown.is-help .dropdown-label {
16030
- color: hsl(203, 96%, 43%);
16031
- border-color: hsl(203, 96%, 43%);
16260
+ color: #3681a5;
16261
+ border-color: #3681a5;
16032
16262
  }
16033
16263
  .gn-dropdown.is-help .dropdown-icon {
16034
- color: hsl(203, 96%, 33%);
16264
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
16035
16265
  }
16036
16266
  .gn-dropdown.is-help .dropdown-item.is-active {
16037
16267
  color: #fff;
16038
- background-color: hsl(203, 96%, 43%);
16268
+ background-color: #3681a5;
16039
16269
  }
16040
16270
  .gn-dropdown.is-help .dropdown-item.is-unselectable {
16041
16271
  cursor: default;
@@ -16045,23 +16275,23 @@ tag:
16045
16275
  background-color: inherit;
16046
16276
  }
16047
16277
  .gn-dropdown.is-help .dropdown-item .gn-checks input[type=checkbox]:checked + label:before {
16048
- color: hsl(203, 96%, 43%);
16049
- border-color: hsl(203, 96%, 43%);
16278
+ color: #3681a5;
16279
+ border-color: #3681a5;
16050
16280
  }
16051
16281
  .gn-dropdown.is-help .dropdown-item.is-hover,
16052
16282
  .gn-dropdown.is-help .dropdown-item:hover {
16053
- color: hsl(203, 96%, 43%);
16054
- background-color: hsl(203, 96%, 96%);
16283
+ color: #3681a5;
16284
+ background-color: #fff;
16055
16285
  }
16056
16286
  .gn-dropdown.is-help.is-disabled .dropdown-label {
16057
16287
  cursor: not-allowed;
16058
16288
  }
16059
16289
  .gn-dropdown.is-help.is-disabled .dropdown-item:hover label {
16060
- color: hsl(203, 96%, 43%);
16290
+ color: #3681a5;
16061
16291
  }
16062
16292
  .gn-dropdown.is-help.is-disabled .dropdown-item.is-active:hover {
16063
16293
  color: #fff;
16064
- background-color: hsl(203, 96%, 43%);
16294
+ background-color: #3681a5;
16065
16295
  }
16066
16296
  .gn-dropdown.is-help.is-disabled .dropdown-item.is-active:hover label {
16067
16297
  color: #fff;
@@ -16227,15 +16457,15 @@ tag:
16227
16457
  color: #fff;
16228
16458
  }
16229
16459
  .gn-dropdown.is-guide .dropdown-label {
16230
- color: #0487da;
16231
- border-color: #0487da;
16460
+ color: #3681a5;
16461
+ border-color: #3681a5;
16232
16462
  }
16233
16463
  .gn-dropdown.is-guide .dropdown-icon {
16234
- color: rgb(3.0810810811, 103.9864864865, 167.9189189189);
16464
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
16235
16465
  }
16236
16466
  .gn-dropdown.is-guide .dropdown-item.is-active {
16237
16467
  color: #fff;
16238
- background-color: #0487da;
16468
+ background-color: #3681a5;
16239
16469
  }
16240
16470
  .gn-dropdown.is-guide .dropdown-item.is-unselectable {
16241
16471
  cursor: default;
@@ -16245,23 +16475,23 @@ tag:
16245
16475
  background-color: inherit;
16246
16476
  }
16247
16477
  .gn-dropdown.is-guide .dropdown-item .gn-checks input[type=checkbox]:checked + label:before {
16248
- color: #0487da;
16249
- border-color: #0487da;
16478
+ color: #3681a5;
16479
+ border-color: #3681a5;
16250
16480
  }
16251
16481
  .gn-dropdown.is-guide .dropdown-item.is-hover,
16252
16482
  .gn-dropdown.is-guide .dropdown-item:hover {
16253
- color: #0487da;
16483
+ color: #3681a5;
16254
16484
  background-color: #fff;
16255
16485
  }
16256
16486
  .gn-dropdown.is-guide.is-disabled .dropdown-label {
16257
16487
  cursor: not-allowed;
16258
16488
  }
16259
16489
  .gn-dropdown.is-guide.is-disabled .dropdown-item:hover label {
16260
- color: #0487da;
16490
+ color: #3681a5;
16261
16491
  }
16262
16492
  .gn-dropdown.is-guide.is-disabled .dropdown-item.is-active:hover {
16263
16493
  color: #fff;
16264
- background-color: #0487da;
16494
+ background-color: #3681a5;
16265
16495
  }
16266
16496
  .gn-dropdown.is-guide.is-disabled .dropdown-item.is-active:hover label {
16267
16497
  color: #fff;
@@ -16710,10 +16940,10 @@ tag:
16710
16940
  border-color: hsl(0, 0%, 100%);
16711
16941
  }
16712
16942
  .gn-growl.is-help {
16713
- color: hsl(203, 96%, 43%);
16943
+ color: #3681a5;
16944
+ background-color: #fff;
16714
16945
  background-color: #fff;
16715
- background-color: hsl(203, 96%, 96%);
16716
- border-color: hsl(203, 96%, 43%);
16946
+ border-color: #3681a5;
16717
16947
  }
16718
16948
  .gn-growl.is-plain {
16719
16949
  color: #fff;
@@ -16740,10 +16970,10 @@ tag:
16740
16970
  border-color: #e51317;
16741
16971
  }
16742
16972
  .gn-growl.is-guide {
16743
- color: #0487da;
16973
+ color: #3681a5;
16744
16974
  background-color: #fff;
16745
16975
  background-color: #fff;
16746
- border-color: #0487da;
16976
+ border-color: #3681a5;
16747
16977
  }
16748
16978
 
16749
16979
  /*
@@ -17834,11 +18064,21 @@ tag:
17834
18064
  <div class="gn-loader is-info"></div>
17835
18065
  ```
17836
18066
 
18067
+ ```html
18068
+ <div class="gn-loader is-inline"></div>
18069
+ <div class="gn-loader is-inline is-success"></div>
18070
+ <div class="gn-loader is-inline is-warning"></div>
18071
+ <div class="gn-loader is-inline is-danger"></div>
18072
+ <div class="gn-loader is-inline is-info"></div>
18073
+ <div class="gn-loader is-inline is-primary"></div>
18074
+ ```
18075
+
17837
18076
  ### 타입
17838
18077
 
17839
18078
  ```html
17840
18079
  <div class="gn-loader is-bounce"></div><br>
17841
18080
  <div class="gn-loader is-move"></div>
18081
+ <div class="gn-loader is-inline"></div><br>
17842
18082
  ```
17843
18083
 
17844
18084
  ### 생성 옵션
@@ -17898,7 +18138,7 @@ Gn.create('button', {
17898
18138
  <td colspan="2">type</td>
17899
18139
  <td>string</td>
17900
18140
  <td></td>
17901
- <td>'bounce','move','circle'</td>
18141
+ <td>'inline','bounce','move','</td>
17902
18142
  </tr>
17903
18143
  <tr>
17904
18144
  <td colspan="2">positionX</td>
@@ -18007,6 +18247,7 @@ Gn.create('button', {
18007
18247
  .gn-loader.is-small {
18008
18248
  width: 15px;
18009
18249
  height: 15px;
18250
+ border-width: 5px;
18010
18251
  }
18011
18252
  .gn-loader.is-normal {
18012
18253
  width: 25px;
@@ -18069,7 +18310,7 @@ Gn.create('button', {
18069
18310
  border-top: 9px solid #f3f3f3;
18070
18311
  }
18071
18312
  .gn-loader.is-help {
18072
- border: 9px solid hsl(203, 96%, 43%);
18313
+ border: 9px solid #3681a5;
18073
18314
  border-top: 9px solid #f3f3f3;
18074
18315
  }
18075
18316
  .gn-loader.is-plain {
@@ -18089,7 +18330,7 @@ Gn.create('button', {
18089
18330
  border-top: 9px solid #f3f3f3;
18090
18331
  }
18091
18332
  .gn-loader.is-guide {
18092
- border: 9px solid #0487da;
18333
+ border: 9px solid #3681a5;
18093
18334
  border-top: 9px solid #f3f3f3;
18094
18335
  }
18095
18336
  .gn-loader.is-bounce {
@@ -18100,6 +18341,88 @@ Gn.create('button', {
18100
18341
  border: 13px solid #88b50f;
18101
18342
  animation: move 1.5s ease-in-out infinite alternate;
18102
18343
  }
18344
+ .gn-loader.is-inline {
18345
+ border: 0;
18346
+ position: relative;
18347
+ margin-left: 10px;
18348
+ margin-right: 10px;
18349
+ animation-delay: -0.12s;
18350
+ background: hsl(0, 0%, 96%);
18351
+ }
18352
+ .gn-loader.is-inline, .gn-loader.is-inline::before, .gn-loader.is-inline::after {
18353
+ display: inline-block !important;
18354
+ width: 3px;
18355
+ height: 3px;
18356
+ animation: colorPulse 1.4s ease-in-out infinite;
18357
+ border-radius: 50%;
18358
+ }
18359
+ .gn-loader.is-inline::before, .gn-loader.is-inline::after {
18360
+ content: "";
18361
+ position: absolute;
18362
+ top: 0;
18363
+ }
18364
+ .gn-loader.is-inline::before {
18365
+ animation-delay: -0.24s;
18366
+ margin-left: -8px;
18367
+ }
18368
+ .gn-loader.is-inline::after {
18369
+ animation-delay: 0s;
18370
+ margin-left: 8px;
18371
+ }
18372
+ .gn-loader.is-inline.is-white, .gn-loader.is-inline.is-white::before, .gn-loader.is-inline.is-white::after {
18373
+ animation-name: colorPulse-white;
18374
+ }
18375
+ .gn-loader.is-inline.is-black, .gn-loader.is-inline.is-black::before, .gn-loader.is-inline.is-black::after {
18376
+ animation-name: colorPulse-black;
18377
+ }
18378
+ .gn-loader.is-inline.is-light, .gn-loader.is-inline.is-light::before, .gn-loader.is-inline.is-light::after {
18379
+ animation-name: colorPulse-light;
18380
+ }
18381
+ .gn-loader.is-inline.is-dark, .gn-loader.is-inline.is-dark::before, .gn-loader.is-inline.is-dark::after {
18382
+ animation-name: colorPulse-dark;
18383
+ }
18384
+ .gn-loader.is-inline.is-primary, .gn-loader.is-inline.is-primary::before, .gn-loader.is-inline.is-primary::after {
18385
+ animation-name: colorPulse-primary;
18386
+ }
18387
+ .gn-loader.is-inline.is-link, .gn-loader.is-inline.is-link::before, .gn-loader.is-inline.is-link::after {
18388
+ animation-name: colorPulse-link;
18389
+ }
18390
+ .gn-loader.is-inline.is-info, .gn-loader.is-inline.is-info::before, .gn-loader.is-inline.is-info::after {
18391
+ animation-name: colorPulse-info;
18392
+ }
18393
+ .gn-loader.is-inline.is-cancel, .gn-loader.is-inline.is-cancel::before, .gn-loader.is-inline.is-cancel::after {
18394
+ animation-name: colorPulse-cancel;
18395
+ }
18396
+ .gn-loader.is-inline.is-success, .gn-loader.is-inline.is-success::before, .gn-loader.is-inline.is-success::after {
18397
+ animation-name: colorPulse-success;
18398
+ }
18399
+ .gn-loader.is-inline.is-warning, .gn-loader.is-inline.is-warning::before, .gn-loader.is-inline.is-warning::after {
18400
+ animation-name: colorPulse-warning;
18401
+ }
18402
+ .gn-loader.is-inline.is-danger, .gn-loader.is-inline.is-danger::before, .gn-loader.is-inline.is-danger::after {
18403
+ animation-name: colorPulse-danger;
18404
+ }
18405
+ .gn-loader.is-inline.is-trans, .gn-loader.is-inline.is-trans::before, .gn-loader.is-inline.is-trans::after {
18406
+ animation-name: colorPulse-trans;
18407
+ }
18408
+ .gn-loader.is-inline.is-help, .gn-loader.is-inline.is-help::before, .gn-loader.is-inline.is-help::after {
18409
+ animation-name: colorPulse-help;
18410
+ }
18411
+ .gn-loader.is-inline.is-plain, .gn-loader.is-inline.is-plain::before, .gn-loader.is-inline.is-plain::after {
18412
+ animation-name: colorPulse-plain;
18413
+ }
18414
+ .gn-loader.is-inline.is-secondary, .gn-loader.is-inline.is-secondary::before, .gn-loader.is-inline.is-secondary::after {
18415
+ animation-name: colorPulse-secondary;
18416
+ }
18417
+ .gn-loader.is-inline.is-mono, .gn-loader.is-inline.is-mono::before, .gn-loader.is-inline.is-mono::after {
18418
+ animation-name: colorPulse-mono;
18419
+ }
18420
+ .gn-loader.is-inline.is-error, .gn-loader.is-inline.is-error::before, .gn-loader.is-inline.is-error::after {
18421
+ animation-name: colorPulse-error;
18422
+ }
18423
+ .gn-loader.is-inline.is-guide, .gn-loader.is-inline.is-guide::before, .gn-loader.is-inline.is-guide::after {
18424
+ animation-name: colorPulse-guide;
18425
+ }
18103
18426
 
18104
18427
  @keyframes load-spin {
18105
18428
  0% {
@@ -18128,8 +18451,236 @@ Gn.create('button', {
18128
18451
  transform: translateX(15px);
18129
18452
  }
18130
18453
  }
18131
- /*
18132
- ---
18454
+ @keyframes colorPulse {
18455
+ 0%, 70%, 100% {
18456
+ background: hsl(0, 0%, 96%);
18457
+ /* 비활성 색상 */
18458
+ transform: scale(1);
18459
+ }
18460
+ 35% {
18461
+ background: #88b50f;
18462
+ /* 활성 색상 */
18463
+ transform: scale(1.1);
18464
+ }
18465
+ }
18466
+ @keyframes colorPulse-white {
18467
+ 0%, 70%, 100% {
18468
+ background: hsl(0, 0%, 71%);
18469
+ /* 비활성 색상 */
18470
+ transform: scale(1);
18471
+ }
18472
+ 35% {
18473
+ background: hsl(0, 0%, 100%);
18474
+ /* 활성 색상 */
18475
+ transform: scale(1.1);
18476
+ }
18477
+ }
18478
+ @keyframes colorPulse-black {
18479
+ 0%, 70%, 100% {
18480
+ background: hsl(0, 0%, 86%);
18481
+ /* 비활성 색상 */
18482
+ transform: scale(1);
18483
+ }
18484
+ 35% {
18485
+ background: hsl(0, 0%, 4%);
18486
+ /* 활성 색상 */
18487
+ transform: scale(1.1);
18488
+ }
18489
+ }
18490
+ @keyframes colorPulse-light {
18491
+ 0%, 70%, 100% {
18492
+ background: hsl(0, 0%, 93%);
18493
+ /* 비활성 색상 */
18494
+ transform: scale(1);
18495
+ }
18496
+ 35% {
18497
+ background: hsl(0, 0%, 96%);
18498
+ /* 활성 색상 */
18499
+ transform: scale(1.1);
18500
+ }
18501
+ }
18502
+ @keyframes colorPulse-dark {
18503
+ 0%, 70%, 100% {
18504
+ background: hsl(0, 0%, 86%);
18505
+ /* 비활성 색상 */
18506
+ transform: scale(1);
18507
+ }
18508
+ 35% {
18509
+ background: hsl(0, 0%, 20%);
18510
+ /* 활성 색상 */
18511
+ transform: scale(1.1);
18512
+ }
18513
+ }
18514
+ @keyframes colorPulse-primary {
18515
+ 0%, 70%, 100% {
18516
+ background: rgb(248.7551020408, 253.4387755102, 236.1612244898);
18517
+ /* 비활성 색상 */
18518
+ transform: scale(1);
18519
+ }
18520
+ 35% {
18521
+ background: #88b50f;
18522
+ /* 활성 색상 */
18523
+ transform: scale(1.1);
18524
+ }
18525
+ }
18526
+ @keyframes colorPulse-link {
18527
+ 0%, 70%, 100% {
18528
+ background: hsl(217, 71%, 96%);
18529
+ /* 비활성 색상 */
18530
+ transform: scale(1);
18531
+ }
18532
+ 35% {
18533
+ background: hsl(217, 71%, 53%);
18534
+ /* 활성 색상 */
18535
+ transform: scale(1.1);
18536
+ }
18537
+ }
18538
+ @keyframes colorPulse-info {
18539
+ 0%, 70%, 100% {
18540
+ background: #dae9ff;
18541
+ /* 비활성 색상 */
18542
+ transform: scale(1);
18543
+ }
18544
+ 35% {
18545
+ background: #0087ff;
18546
+ /* 활성 색상 */
18547
+ transform: scale(1.1);
18548
+ }
18549
+ }
18550
+ @keyframes colorPulse-cancel {
18551
+ 0%, 70%, 100% {
18552
+ background: rgb(244.8, 244.8, 244.8);
18553
+ /* 비활성 색상 */
18554
+ transform: scale(1);
18555
+ }
18556
+ 35% {
18557
+ background: #b5b5b5;
18558
+ /* 활성 색상 */
18559
+ transform: scale(1.1);
18560
+ }
18561
+ }
18562
+ @keyframes colorPulse-success {
18563
+ 0%, 70%, 100% {
18564
+ background: #c7f1c8;
18565
+ /* 비활성 색상 */
18566
+ transform: scale(1);
18567
+ }
18568
+ 35% {
18569
+ background: #218801;
18570
+ /* 활성 색상 */
18571
+ transform: scale(1.1);
18572
+ }
18573
+ }
18574
+ @keyframes colorPulse-warning {
18575
+ 0%, 70%, 100% {
18576
+ background: #fce4c7;
18577
+ /* 비활성 색상 */
18578
+ transform: scale(1);
18579
+ }
18580
+ 35% {
18581
+ background: #d67400;
18582
+ /* 활성 색상 */
18583
+ transform: scale(1.1);
18584
+ }
18585
+ }
18586
+ @keyframes colorPulse-danger {
18587
+ 0%, 70%, 100% {
18588
+ background: #ffcecf;
18589
+ /* 비활성 색상 */
18590
+ transform: scale(1);
18591
+ }
18592
+ 35% {
18593
+ background: #e51317;
18594
+ /* 활성 색상 */
18595
+ transform: scale(1.1);
18596
+ }
18597
+ }
18598
+ @keyframes colorPulse-trans {
18599
+ 0%, 70%, 100% {
18600
+ background: hsl(0, 0%, 100%);
18601
+ /* 비활성 색상 */
18602
+ transform: scale(1);
18603
+ }
18604
+ 35% {
18605
+ background: hsl(0, 0%, 100%);
18606
+ /* 활성 색상 */
18607
+ transform: scale(1.1);
18608
+ }
18609
+ }
18610
+ @keyframes colorPulse-help {
18611
+ 0%, 70%, 100% {
18612
+ background: #fff;
18613
+ /* 비활성 색상 */
18614
+ transform: scale(1);
18615
+ }
18616
+ 35% {
18617
+ background: #3681a5;
18618
+ /* 활성 색상 */
18619
+ transform: scale(1.1);
18620
+ }
18621
+ }
18622
+ @keyframes colorPulse-plain {
18623
+ 0%, 70%, 100% {
18624
+ background: rgb(120.3183673469, 160.1295918367, 13.2704081633);
18625
+ /* 비활성 색상 */
18626
+ transform: scale(1);
18627
+ }
18628
+ 35% {
18629
+ background: #fff;
18630
+ /* 활성 색상 */
18631
+ transform: scale(1.1);
18632
+ }
18633
+ }
18634
+ @keyframes colorPulse-secondary {
18635
+ 0%, 70%, 100% {
18636
+ background: rgb(234.6, 246.9169811321, 255);
18637
+ /* 비활성 색상 */
18638
+ transform: scale(1);
18639
+ }
18640
+ 35% {
18641
+ background: #0080d4;
18642
+ /* 활성 색상 */
18643
+ transform: scale(1.1);
18644
+ }
18645
+ }
18646
+ @keyframes colorPulse-mono {
18647
+ 0%, 70%, 100% {
18648
+ background: rgb(244.8, 244.8, 244.8);
18649
+ /* 비활성 색상 */
18650
+ transform: scale(1);
18651
+ }
18652
+ 35% {
18653
+ background: #656565;
18654
+ /* 활성 색상 */
18655
+ transform: scale(1.1);
18656
+ }
18657
+ }
18658
+ @keyframes colorPulse-error {
18659
+ 0%, 70%, 100% {
18660
+ background: #ffcecf;
18661
+ /* 비활성 색상 */
18662
+ transform: scale(1);
18663
+ }
18664
+ 35% {
18665
+ background: #e51317;
18666
+ /* 활성 색상 */
18667
+ transform: scale(1.1);
18668
+ }
18669
+ }
18670
+ @keyframes colorPulse-guide {
18671
+ 0%, 70%, 100% {
18672
+ background: #fff;
18673
+ /* 비활성 색상 */
18674
+ transform: scale(1);
18675
+ }
18676
+ 35% {
18677
+ background: #3681a5;
18678
+ /* 활성 색상 */
18679
+ transform: scale(1.1);
18680
+ }
18681
+ }
18682
+ /*
18683
+ ---
18133
18684
  name: Message
18134
18685
  category:
18135
18686
  - COMPONENT/Message(js)
@@ -18511,9 +19062,9 @@ Eu velit aliqua eiusmod eiusmod occaecat ullamco fugiat sunt occaecat excepteur.
18511
19062
  border-color: hsl(0, 0%, 100%);
18512
19063
  }
18513
19064
  .gn-message.is-help {
18514
- color: hsl(203, 96%, 43%);
18515
- background-color: hsl(203, 96%, 96%);
18516
- border-color: hsl(203, 96%, 43%);
19065
+ color: #3681a5;
19066
+ background-color: #fff;
19067
+ border-color: #3681a5;
18517
19068
  }
18518
19069
  .gn-message.is-plain {
18519
19070
  color: #fff;
@@ -18536,9 +19087,9 @@ Eu velit aliqua eiusmod eiusmod occaecat ullamco fugiat sunt occaecat excepteur.
18536
19087
  border-color: #e51317;
18537
19088
  }
18538
19089
  .gn-message.is-guide {
18539
- color: #0487da;
19090
+ color: #3681a5;
18540
19091
  background-color: #fff;
18541
- border-color: #0487da;
19092
+ border-color: #3681a5;
18542
19093
  }
18543
19094
 
18544
19095
  /*
@@ -18923,7 +19474,7 @@ tag:
18923
19474
  color: rgba(0, 0, 0, 0.7);
18924
19475
  }
18925
19476
  .gn-modal .modal-header.is-help {
18926
- background-color: hsl(203, 96%, 43%);
19477
+ background-color: #3681a5;
18927
19478
  color: #fff;
18928
19479
  }
18929
19480
  .gn-modal .modal-header.is-plain {
@@ -18943,7 +19494,7 @@ tag:
18943
19494
  color: #fff;
18944
19495
  }
18945
19496
  .gn-modal .modal-header.is-guide {
18946
- background-color: #0487da;
19497
+ background-color: #3681a5;
18947
19498
  color: #fff;
18948
19499
  }
18949
19500
  .gn-modal .modal-header .modal-control {
@@ -19714,22 +20265,26 @@ tag:
19714
20265
  ```
19715
20266
  ````
19716
20267
  Gn.create('picklist', {
19717
- target: '.new-picklist',
19718
- data : {
20268
+ target: '.new-picklist',
20269
+ data: {
19719
20270
  source: [
19720
- { value: 'item1', text: '항목1' },
19721
- { value: 'item2', text: '항목2' },
19722
- { value: 'item5', text: '항목3' },
19723
- { value: 'item4', text: '항목4' },
19724
- { value: 'item5', text: '항목5' },
19725
- { value: 'item6', text: '항목6' },
19726
- { value: 'item7', text: '항목7' },
19727
- { value: 'item8', text: '항목8' }
20271
+ { value: '항목1', text: 'item1', html: '<span class="gn-tag is-primary">항목1</span> item1' },
20272
+ { value: '항목2', text: 'item2', html: '<span class="gn-tag is-danger">항목2</span> item2' },
20273
+ { value: '항목3', text: 'item3', html: '<span class="gn-tag is-warning">항목3</span> item3' }
19728
20274
  ],
19729
- target: [],
20275
+ target: [
20276
+ { value: '항목4', text: 'item4', html: '<span class="gn-tag is-help">항목4</span> item4' },
20277
+ { value: '항목5', text: 'item5', html: '<span class="gn-tag is-success">항목5</span> item5' }
20278
+ ]
19730
20279
  },
20280
+ hasSourceSearch: true,
20281
+ hasTargetSearch: true,
19731
20282
  width: '80%',
19732
- height: 180
20283
+ height: 180,
20284
+ onChange: function (s, t) {
20285
+ console.log(s, t);
20286
+ },
20287
+ orderable: 'target'
19733
20288
  });
19734
20289
  Gn.create('picklist', {
19735
20290
  target: '.new-picklist-v',
@@ -19766,15 +20321,21 @@ tag:
19766
20321
  <tr>
19767
20322
  <td rowspan="2">data</td>
19768
20323
  <td>source</td>
19769
- <td>array[{value: string|array, text: string}]</td>
20324
+ <td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
19770
20325
  <td></td>
19771
- <td>source 항목 배열</td>
20326
+ <td>source 항목 배열<br>
20327
+ html: 옵션 html(html이 있는 경우 text가 있는 항목만 선택 가능하다.)<br>
20328
+ 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
20329
+ </td>
19772
20330
  </tr>
19773
20331
  <tr>
19774
20332
  <td>target</td>
19775
- <td>array[{value: string|array, text: string}]</td>
20333
+ <td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
19776
20334
  <td></td>
19777
- <td>target 항목 배열</td>
20335
+ <td>target 항목 배열<br>
20336
+ html: 옵션 html(html이 있는 경우 text가 있는 항목만 선택 가능하다.)<br>
20337
+ 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
20338
+ </td>
19778
20339
  </tr>
19779
20340
  <tr>
19780
20341
  <td rowspan="3">textSets</td>
@@ -19928,23 +20489,17 @@ tag:
19928
20489
  .gn-picklist .picklist-caption + .dropdown-items {
19929
20490
  border-radius: 0 0 2px 2px;
19930
20491
  }
19931
- .gn-picklist .picklist-source {
20492
+ .gn-picklist .gn-dropdown {
20493
+ display: block;
20494
+ }
20495
+ .gn-picklist .picklist-source,
20496
+ .gn-picklist .picklist-target {
19932
20497
  display: flex;
19933
20498
  flex-basis: calc(50% - 16px);
19934
20499
  width: calc(50% - 16px);
19935
20500
  flex-grow: 0;
19936
20501
  flex-shrink: 0;
19937
20502
  }
19938
- .gn-picklist .picklist-source > .gn-dropdown {
19939
- order: 2;
19940
- width: 100%;
19941
- }
19942
- .gn-picklist .picklist-source .picklist-controls {
19943
- order: 1;
19944
- }
19945
- .gn-picklist .gn-dropdown {
19946
- display: block;
19947
- }
19948
20503
  .gn-picklist .picklist-source.no-controls,
19949
20504
  .gn-picklist .picklist-target.no-controls {
19950
20505
  flex-basis: calc(50% - 45px);
@@ -19955,23 +20510,22 @@ tag:
19955
20510
  width: 100%;
19956
20511
  height: 100%;
19957
20512
  }
19958
- .gn-picklist.is-vertical .picklist-source,
19959
- .gn-picklist .picklist-target {
19960
- display: flex;
19961
- flex-basis: calc(50% - 16px);
19962
- width: calc(50% - 16px);
19963
- flex-grow: 0;
19964
- flex-shrink: 0;
19965
- }
19966
- .gn-picklist.is-vertical .picklist-source > .gn-dropdown,
20513
+ .gn-picklist .picklist-source > .gn-dropdown,
19967
20514
  .gn-picklist .picklist-target > .gn-dropdown {
19968
20515
  order: 1;
19969
20516
  width: 100%;
19970
20517
  }
19971
- .gn-picklist.is-vertical .picklist-source .picklist-controls,
20518
+ .gn-picklist .picklist-source .picklist-controls,
19972
20519
  .gn-picklist .picklist-target .picklist-controls {
19973
20520
  order: 2;
19974
20521
  }
20522
+ .gn-picklist .picklist-source > .gn-dropdown {
20523
+ order: 2;
20524
+ width: 100%;
20525
+ }
20526
+ .gn-picklist .picklist-source .picklist-controls {
20527
+ order: 1;
20528
+ }
19975
20529
  .gn-picklist .picklist-controls {
19976
20530
  margin: 0.5rem;
19977
20531
  }
@@ -19981,6 +20535,16 @@ tag:
19981
20535
  .gn-picklist.is-vertical {
19982
20536
  flex-direction: column;
19983
20537
  }
20538
+ .gn-picklist.is-vertical .picklist-source,
20539
+ .gn-picklist.is-vertical .picklist-target {
20540
+ width: calc(100% - 32px);
20541
+ }
20542
+ .gn-picklist.is-vertical .picklist-source > .gn-dropdown {
20543
+ order: 1;
20544
+ }
20545
+ .gn-picklist.is-vertical .picklist-source .picklist-controls {
20546
+ order: 2;
20547
+ }
19984
20548
  .gn-picklist.is-vertical > .picklist-controls {
19985
20549
  width: 90%;
19986
20550
  width: calc(100% - 50px);
@@ -19991,6 +20555,382 @@ tag:
19991
20555
  box-shadow: 0 0 0 0.1em rgba(241.077, 70.023, 104.2338, 0.7);
19992
20556
  }
19993
20557
 
20558
+ /*
20559
+ ---
20560
+ name: SortableList
20561
+ category:
20562
+ - CONTROLS/SortableList(js)
20563
+ tag:
20564
+ - v.0.1.0
20565
+ - javascript
20566
+ ---
20567
+ ### 기본 사용
20568
+
20569
+ ```html
20570
+ <div class="gn-sortablelist">
20571
+ <div class="sortablelist-controls gn-control is-small has-arrange is-vertical is-center">
20572
+ <button type="button" class="gn-button is-outline">
20573
+ <span class="gn-icon">
20574
+ <i class="fas fa-angle-double-up"></i>
20575
+ </span>
20576
+ </button>
20577
+ <button type="button" class="gn-button is-outline">
20578
+ <span class="gn-icon">
20579
+ <i class="fas fa-angle-up"></i>
20580
+ </span>
20581
+ </button>
20582
+ <button type="button" class="gn-button is-outline">
20583
+ <span class="gn-icon">
20584
+ <i class="fas fa-angle-down"></i>
20585
+ </span>
20586
+ </button>
20587
+ <button type="button" class="gn-button is-outline">
20588
+ <span class="gn-icon">
20589
+ <i class="fas fa-angle-double-down"></i>
20590
+ </span>
20591
+ </button>
20592
+ </div>
20593
+ <div class="gn-dropdown is-opened sortablelist-items">
20594
+ <div class="dropdown-items">
20595
+ <ul class="sortablelist-rows">
20596
+ <li class="dropdown-item">항목 1</li>
20597
+ <li class="dropdown-item">항목 2</li>
20598
+ <li class="dropdown-item">항목 3</li>
20599
+ <li class="dropdown-item">항목 4</li>
20600
+ </ul>
20601
+ </div>
20602
+ </div>
20603
+ </div>
20604
+ ```
20605
+
20606
+ ### 버튼 우측 배치
20607
+
20608
+ ```html
20609
+ <div class="gn-sortablelist">
20610
+ <div class="gn-dropdown is-opened sortablelist-items">
20611
+ <div class="dropdown-items">
20612
+ <ul class="sortablelist-rows">
20613
+ <li class="dropdown-item">항목 1</li>
20614
+ <li class="dropdown-item">항목 2</li>
20615
+ <li class="dropdown-item">항목 3</li>
20616
+ </ul>
20617
+ </div>
20618
+ </div>
20619
+ <div class="sortablelist-controls gn-control is-small has-arrange is-vertical is-center is-right">
20620
+ <button type="button" class="gn-button is-outline">
20621
+ <span class="gn-icon">
20622
+ <i class="fas fa-angle-double-up"></i>
20623
+ </span>
20624
+ </button>
20625
+ <button type="button" class="gn-button is-outline">
20626
+ <span class="gn-icon">
20627
+ <i class="fas fa-angle-up"></i>
20628
+ </span>
20629
+ </button>
20630
+ <button type="button" class="gn-button is-outline">
20631
+ <span class="gn-icon">
20632
+ <i class="fas fa-angle-down"></i>
20633
+ </span>
20634
+ </button>
20635
+ <button type="button" class="gn-button is-outline">
20636
+ <span class="gn-icon">
20637
+ <i class="fas fa-angle-double-down"></i>
20638
+ </span>
20639
+ </button>
20640
+ </div>
20641
+ </div>
20642
+ ```
20643
+
20644
+ ### 생성 옵션
20645
+ ```ejs
20646
+ <div class="new-sortablelist"></div>
20647
+ <div class="new-sortablelist-drag"></div>
20648
+ <div class="new-sortablelist-cols"></div>
20649
+ ```
20650
+ ````
20651
+ // 단일 컬럼
20652
+ Gn.create('sortablelist', {
20653
+ target: '.new-sortablelist',
20654
+ data: [
20655
+ { value: '1', text: '항목 1' },
20656
+ { value: '2', text: '항목 2' },
20657
+ { value: '3', text: '항목 3' },
20658
+ { value: '4', text: '항목 4' },
20659
+ { value: '5', text: '항목 5' },
20660
+ { value: '6', text: '항목 6' },
20661
+ { value: '7', text: '항목 7' },
20662
+ { value: '8', text: '항목 8' },
20663
+ { value: '9', text: '항목 9' },
20664
+ { value: '10', text: '항목 10' }
20665
+ ]
20666
+ });
20667
+ // 드래그 앤 드롭
20668
+ Gn.create('sortablelist', {
20669
+ target: '.new-sortablelist-drag',
20670
+ data: [
20671
+ { value: 'a', text: '항목 A' },
20672
+ { value: 'b', text: '항목 B' },
20673
+ { value: 'c', text: '항목 C' },
20674
+ { value: 'd', text: '항목 D' },
20675
+ { value: 'e', text: '항목 E' },
20676
+ { value: 'f', text: '항목 F' },
20677
+ { value: 'g', text: '항목 G' },
20678
+ { value: 'h', text: '항목 H' },
20679
+ { value: 'i', text: '항목 I' },
20680
+ { value: 'j', text: '항목 J' }
20681
+ ],
20682
+ draggable: true
20683
+ });
20684
+ // 다중 컬럼
20685
+ Gn.create('sortablelist', {
20686
+ target: '.new-sortablelist-cols',
20687
+ buttonPosition: 'right',
20688
+ data: [
20689
+ { value: 'x1', cols: ['항목1', '카테고리A', '1000'] },
20690
+ { value: 'x2', cols: ['항목2', '카테고리B', '2000'] },
20691
+ { value: 'x3', cols: ['항목3', '카테고리C', '3000'] },
20692
+ { value: 'x4', cols: ['항목4', '카테고리D', '4000'] },
20693
+ { value: 'x5', cols: ['항목5', '카테고리E', '5000'] },
20694
+ { value: 'x6', cols: ['항목6', '카테고리F', '6000'] },
20695
+ { value: 'x7', cols: ['항목7', '카테고리G', '7000'] },
20696
+ { value: 'x8', cols: ['항목8', '카테고리H', '8000'] },
20697
+ { value: 'x9', cols: ['항목9', '카테고리I', '9000'] },
20698
+ { value: 'x10', cols: ['항목10', '카테고리J', '10000'] }
20699
+ ]
20700
+ });
20701
+ ````
20702
+
20703
+ ### 데이터 모델 (SortableListItem)
20704
+
20705
+ <table class="gn-table is-full is-border">
20706
+ <thead>
20707
+ <th>필드</th>
20708
+ <th>type</th>
20709
+ <th>필수</th>
20710
+ <th>description</th>
20711
+ </thead>
20712
+ <tbody>
20713
+ <tr>
20714
+ <td>value</td>
20715
+ <td>string</td>
20716
+ <td>Y</td>
20717
+ <td>고유 값 (빈 문자열 불가)</td>
20718
+ </tr>
20719
+ <tr>
20720
+ <td>text</td>
20721
+ <td>string</td>
20722
+ <td>N</td>
20723
+ <td>단일 컬럼 표시 텍스트</td>
20724
+ </tr>
20725
+ <tr>
20726
+ <td>cols</td>
20727
+ <td>string[]</td>
20728
+ <td>N</td>
20729
+ <td>다중 컬럼 표시 값 배열</td>
20730
+ </tr>
20731
+ </tbody>
20732
+ </table>
20733
+
20734
+ ### 옵션
20735
+ <table class="gn-table is-full is-border">
20736
+ <thead>
20737
+ <th colspan="2">name</th>
20738
+ <th>type</th>
20739
+ <th>default</th>
20740
+ <th>description</th>
20741
+ </thead>
20742
+ <tbody>
20743
+ <tr>
20744
+ <td colspan="2">target</td>
20745
+ <td>string</td>
20746
+ <td></td>
20747
+ <td>sortablelist를 표시할 대상의 선택자(selector)</td>
20748
+ </tr>
20749
+ <tr>
20750
+ <td colspan="2">data</td>
20751
+ <td>SortableListItem[]</td>
20752
+ <td></td>
20753
+ <td>sortablelist에 표시할 데이터 배열</td>
20754
+ </tr>
20755
+ <tr>
20756
+ <td colspan="2">buttonPosition</td>
20757
+ <td>left | right</td>
20758
+ <td>left</td>
20759
+ <td>순서 변경 버튼 위치</td>
20760
+ </tr>
20761
+ <tr>
20762
+ <td colspan="2">draggable</td>
20763
+ <td>boolean</td>
20764
+ <td>false</td>
20765
+ <td>드래그 앤 드롭 순서 변경 활성화 여부</td>
20766
+ </tr>
20767
+ <tr>
20768
+ <td>textSets</td>
20769
+ <td>noData</td>
20770
+ <td>string</td>
20771
+ <td>No records available.</td>
20772
+ <td>데이터가 없을 경우 출력 메시지</td>
20773
+ </tr>
20774
+ <tr>
20775
+ <td colspan="2">disabled</td>
20776
+ <td>boolean</td>
20777
+ <td>false</td>
20778
+ <td>컴포넌트 비활성화 여부</td>
20779
+ </tr>
20780
+ <tr>
20781
+ <td colspan="2">width</td>
20782
+ <td>number, string</td>
20783
+ <td>100%</td>
20784
+ <td>컴포넌트 너비</td>
20785
+ </tr>
20786
+ <tr>
20787
+ <td colspan="2">height</td>
20788
+ <td>number, string</td>
20789
+ <td>150</td>
20790
+ <td>리스트 높이 (미지정 시 150)</td>
20791
+ </tr>
20792
+ <tr>
20793
+ <td colspan="2">onChange</td>
20794
+ <td>function(data)</td>
20795
+ <td></td>
20796
+ <td>데이터 변경 시 발생 이벤트</td>
20797
+ </tr>
20798
+ </tbody>
20799
+ </table>
20800
+
20801
+ ### 메소드
20802
+
20803
+ <table class="gn-table is-full is-border">
20804
+ <thead>
20805
+ <th>name</th>
20806
+ <th>return</th>
20807
+ <th>description</th>
20808
+ </thead>
20809
+ <tbody>
20810
+ <tr>
20811
+ <td>getData()</td>
20812
+ <td>SortableListItem[]</td>
20813
+ <td>현재 데이터 배열을 반환한다.</td>
20814
+ </tr>
20815
+ <tr>
20816
+ <td>setData(data: SortableListItem[]})</td>
20817
+ <td>void</td>
20818
+ <td>데이터 배열을 설정하고 다시 렌더링한다.</td>
20819
+ </tr>
20820
+ <tr>
20821
+ <td>disable()</td>
20822
+ <td>void</td>
20823
+ <td>컴포넌트를 비활성화한다.</td>
20824
+ </tr>
20825
+ <tr>
20826
+ <td>enable()</td>
20827
+ <td>void</td>
20828
+ <td>컴포넌트를 활성화한다.</td>
20829
+ </tr>
20830
+ </tbody>
20831
+ </table>
20832
+
20833
+ */
20834
+ .gn-sortablelist {
20835
+ display: flex;
20836
+ align-items: stretch;
20837
+ -webkit-user-select: none;
20838
+ -moz-user-select: none;
20839
+ user-select: none;
20840
+ }
20841
+ .gn-sortablelist .gn-dropdown {
20842
+ display: block;
20843
+ }
20844
+ .gn-sortablelist .sortablelist-items {
20845
+ flex: 1 1 auto;
20846
+ }
20847
+ .gn-sortablelist .sortablelist-controls {
20848
+ margin: 0.5rem;
20849
+ }
20850
+ .gn-sortablelist .sortablelist-controls .gn-button {
20851
+ padding: 0.25rem 0.75rem;
20852
+ }
20853
+ .gn-sortablelist .sortablelist-controls.is-right {
20854
+ order: 2;
20855
+ margin-left: 0.5rem;
20856
+ margin-right: 0;
20857
+ justify-content: center;
20858
+ }
20859
+ .gn-sortablelist .sortablelist-rows {
20860
+ margin: 0;
20861
+ padding: 0;
20862
+ list-style: none;
20863
+ }
20864
+ .gn-sortablelist .sortablelist-cols {
20865
+ display: flex;
20866
+ gap: 0.5rem;
20867
+ width: 100%;
20868
+ }
20869
+ .gn-sortablelist .sortablelist-col {
20870
+ flex: 1 1 0;
20871
+ min-width: 0;
20872
+ }
20873
+ .gn-sortablelist .dropdown-item.is-empty {
20874
+ color: hsl(0, 0%, 48%);
20875
+ }
20876
+ .gn-sortablelist .dropdown-item.is-dragging {
20877
+ opacity: 0.6;
20878
+ }
20879
+ .gn-sortablelist .dropdown-item.is-group-dragging {
20880
+ outline: 1px dashed hsl(0, 0%, 71%);
20881
+ }
20882
+ .gn-sortablelist .dropdown-item.is-drag-over-top,
20883
+ .gn-sortablelist .dropdown-item.is-drag-over-bottom {
20884
+ background-color: hsl(0, 0%, 96%);
20885
+ }
20886
+ .gn-sortablelist .dropdown-item.is-drag-over-top {
20887
+ box-shadow: inset 0 2px 0 0 #88b50f;
20888
+ }
20889
+ .gn-sortablelist .dropdown-item.is-drag-over-bottom {
20890
+ box-shadow: inset 0 -2px 0 0 #88b50f;
20891
+ }
20892
+
20893
+ .sortablelist-drag-preview {
20894
+ position: absolute;
20895
+ top: -9999px;
20896
+ left: -9999px;
20897
+ display: inline-flex;
20898
+ align-items: flex-start;
20899
+ gap: 8px;
20900
+ padding: 6px 10px;
20901
+ border-radius: 8px;
20902
+ background-color: hsl(0, 0%, 20%);
20903
+ color: hsl(0, 0%, 98%);
20904
+ font-size: 12px;
20905
+ line-height: 1;
20906
+ }
20907
+
20908
+ .sortablelist-drag-preview::before {
20909
+ content: attr(data-count);
20910
+ min-width: 18px;
20911
+ height: 18px;
20912
+ padding: 0 6px;
20913
+ border-radius: 999px;
20914
+ background-color: hsl(0, 0%, 98%);
20915
+ color: hsl(0, 0%, 20%);
20916
+ font-size: 11px;
20917
+ line-height: 18px;
20918
+ text-align: center;
20919
+ }
20920
+
20921
+ .sortablelist-drag-preview-list {
20922
+ display: flex;
20923
+ flex-direction: column;
20924
+ gap: 4px;
20925
+ }
20926
+
20927
+ .sortablelist-drag-preview .dropdown-item.is-ghost {
20928
+ padding: 4px 8px;
20929
+ background-color: hsl(0, 0%, 18%);
20930
+ border-radius: 4px;
20931
+ color: hsl(0, 0%, 98%);
20932
+ }
20933
+
19994
20934
  /*
19995
20935
  ---
19996
20936
  name: Progressbar
@@ -20277,10 +21217,10 @@ tag:
20277
21217
  color: rgba(0, 0, 0, 0.7);
20278
21218
  }
20279
21219
  .gn-progressbar.is-help {
20280
- background-color: hsl(203, 96%, 93%);
21220
+ background-color: rgb(247.35, 247.35, 247.35);
20281
21221
  }
20282
21222
  .gn-progressbar.is-help > span.gauge {
20283
- background-color: hsl(203, 96%, 43%);
21223
+ background-color: #3681a5;
20284
21224
  }
20285
21225
  .gn-progressbar.is-help > span.figure.inner {
20286
21226
  color: #fff;
@@ -20325,7 +21265,7 @@ tag:
20325
21265
  background-color: rgb(247.35, 247.35, 247.35);
20326
21266
  }
20327
21267
  .gn-progressbar.is-guide > span.gauge {
20328
- background-color: #0487da;
21268
+ background-color: #3681a5;
20329
21269
  }
20330
21270
  .gn-progressbar.is-guide > span.figure.inner {
20331
21271
  color: #fff;
@@ -20587,7 +21527,8 @@ tag:
20587
21527
  }
20588
21528
  .gn-tab > ul {
20589
21529
  display: flex;
20590
- border-bottom: 3px solid #bebebe;
21530
+ border-bottom: 1px solid #bebebe;
21531
+ padding-bottom: 2px;
20591
21532
  }
20592
21533
  .gn-tab.is-center > ul {
20593
21534
  justify-content: center;
@@ -21402,18 +22343,18 @@ tag:
21402
22343
  border-left-color: hsl(0, 0%, 100%);
21403
22344
  }
21404
22345
  .gn-tooltip.is-help {
21405
- color: hsl(203, 96%, 43%);
22346
+ color: #3681a5;
21406
22347
  background-color: hsl(0, 0%, 96%);
21407
- background-color: hsl(203, 96%, 96%);
21408
- border-color: hsl(203, 96%, 43%);
22348
+ background-color: #fff;
22349
+ border-color: #3681a5;
21409
22350
  }
21410
22351
  .gn-tooltip.is-help::before {
21411
22352
  background-color: hsl(0, 0%, 96%);
21412
22353
  }
21413
22354
  .gn-tooltip.is-help::before {
21414
- background: hsl(203, 96%, 96%);
21415
- border-top-color: hsl(203, 96%, 43%);
21416
- border-left-color: hsl(203, 96%, 43%);
22355
+ background: #fff;
22356
+ border-top-color: #3681a5;
22357
+ border-left-color: #3681a5;
21417
22358
  }
21418
22359
  .gn-tooltip.is-plain {
21419
22360
  color: #fff;
@@ -21472,18 +22413,18 @@ tag:
21472
22413
  border-left-color: #e51317;
21473
22414
  }
21474
22415
  .gn-tooltip.is-guide {
21475
- color: #0487da;
22416
+ color: #3681a5;
21476
22417
  background-color: hsl(0, 0%, 96%);
21477
22418
  background-color: #fff;
21478
- border-color: #0487da;
22419
+ border-color: #3681a5;
21479
22420
  }
21480
22421
  .gn-tooltip.is-guide::before {
21481
22422
  background-color: hsl(0, 0%, 96%);
21482
22423
  }
21483
22424
  .gn-tooltip.is-guide::before {
21484
22425
  background: #fff;
21485
- border-top-color: #0487da;
21486
- border-left-color: #0487da;
22426
+ border-top-color: #3681a5;
22427
+ border-left-color: #3681a5;
21487
22428
  }
21488
22429
 
21489
22430
  /*
@@ -21765,7 +22706,7 @@ Gn.create('tree', {
21765
22706
  }
21766
22707
  .gn-tree li .tree-item .is-toggler::before {
21767
22708
  content: "\f0da";
21768
- font-family: "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
22709
+ font-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
21769
22710
  font-weight: 900;
21770
22711
  }
21771
22712
  .gn-tree li .tree-item + ul {
@@ -21869,7 +22810,7 @@ Gn.create('tree', {
21869
22810
  color: hsl(0, 0%, 100%);
21870
22811
  }
21871
22812
  .gn-tree.is-help .tree-item.is-active {
21872
- color: hsl(203, 96%, 43%);
22813
+ color: #3681a5;
21873
22814
  }
21874
22815
  .gn-tree.is-plain .tree-item.is-active {
21875
22816
  color: #fff;
@@ -21884,7 +22825,7 @@ Gn.create('tree', {
21884
22825
  color: #e51317;
21885
22826
  }
21886
22827
  .gn-tree.is-guide .tree-item.is-active {
21887
- color: #0487da;
22828
+ color: #3681a5;
21888
22829
  }
21889
22830
  .gn-tree.is-borderless li {
21890
22831
  padding-left: calc(0.75em + 0.5rem);