gnui 1.2.16 → 1.2.18

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 +772 -111
  2. package/dist/js/gnui.js +772 -111
  3. package/dist/js/gnui.min.js +6 -6
  4. package/dist/styles/default.css +1018 -108
  5. package/dist/styles/gpi.css +1018 -108
  6. package/dist/styles/green24.css +1229 -289
  7. package/dist/styles/insights.css +1018 -108
  8. package/dist/styles/nac.css +1019 -109
  9. package/dist/styles/ztnac.css +1205 -265
  10. package/package.json +2 -2
  11. package/styleguide/assets/components.js +216 -9
  12. package/styleguide/assets/js/gnui.js +772 -111
  13. package/styleguide/assets/js/gnui.min.js +6 -6
  14. package/styleguide/assets/styles/default.css +1018 -108
  15. package/styleguide/assets/styles/gpi.css +1018 -108
  16. package/styleguide/assets/styles/green24.css +1229 -289
  17. package/styleguide/assets/styles/insights.css +1018 -108
  18. package/styleguide/assets/styles/nac.css +1019 -109
  19. package/styleguide/assets/styles/ztnac.css +1205 -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 {
@@ -15408,7 +15638,6 @@ tag:
15408
15638
  }
15409
15639
  .gn-dropdown.is-open .dropdown-items {
15410
15640
  display: block;
15411
- max-width: 100%;
15412
15641
  }
15413
15642
  .gn-dropdown.is-top .dropdown-items {
15414
15643
  top: auto;
@@ -16028,15 +16257,15 @@ tag:
16028
16257
  color: rgba(0, 0, 0, 0.7);
16029
16258
  }
16030
16259
  .gn-dropdown.is-help .dropdown-label {
16031
- color: hsl(203, 96%, 43%);
16032
- border-color: hsl(203, 96%, 43%);
16260
+ color: #3681a5;
16261
+ border-color: #3681a5;
16033
16262
  }
16034
16263
  .gn-dropdown.is-help .dropdown-icon {
16035
- color: hsl(203, 96%, 33%);
16264
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
16036
16265
  }
16037
16266
  .gn-dropdown.is-help .dropdown-item.is-active {
16038
16267
  color: #fff;
16039
- background-color: hsl(203, 96%, 43%);
16268
+ background-color: #3681a5;
16040
16269
  }
16041
16270
  .gn-dropdown.is-help .dropdown-item.is-unselectable {
16042
16271
  cursor: default;
@@ -16046,23 +16275,23 @@ tag:
16046
16275
  background-color: inherit;
16047
16276
  }
16048
16277
  .gn-dropdown.is-help .dropdown-item .gn-checks input[type=checkbox]:checked + label:before {
16049
- color: hsl(203, 96%, 43%);
16050
- border-color: hsl(203, 96%, 43%);
16278
+ color: #3681a5;
16279
+ border-color: #3681a5;
16051
16280
  }
16052
16281
  .gn-dropdown.is-help .dropdown-item.is-hover,
16053
16282
  .gn-dropdown.is-help .dropdown-item:hover {
16054
- color: hsl(203, 96%, 43%);
16055
- background-color: hsl(203, 96%, 96%);
16283
+ color: #3681a5;
16284
+ background-color: #fff;
16056
16285
  }
16057
16286
  .gn-dropdown.is-help.is-disabled .dropdown-label {
16058
16287
  cursor: not-allowed;
16059
16288
  }
16060
16289
  .gn-dropdown.is-help.is-disabled .dropdown-item:hover label {
16061
- color: hsl(203, 96%, 43%);
16290
+ color: #3681a5;
16062
16291
  }
16063
16292
  .gn-dropdown.is-help.is-disabled .dropdown-item.is-active:hover {
16064
16293
  color: #fff;
16065
- background-color: hsl(203, 96%, 43%);
16294
+ background-color: #3681a5;
16066
16295
  }
16067
16296
  .gn-dropdown.is-help.is-disabled .dropdown-item.is-active:hover label {
16068
16297
  color: #fff;
@@ -16228,15 +16457,15 @@ tag:
16228
16457
  color: #fff;
16229
16458
  }
16230
16459
  .gn-dropdown.is-guide .dropdown-label {
16231
- color: #0487da;
16232
- border-color: #0487da;
16460
+ color: #3681a5;
16461
+ border-color: #3681a5;
16233
16462
  }
16234
16463
  .gn-dropdown.is-guide .dropdown-icon {
16235
- color: rgb(3.0810810811, 103.9864864865, 167.9189189189);
16464
+ color: rgb(41.4246575342, 98.9589041096, 126.5753424658);
16236
16465
  }
16237
16466
  .gn-dropdown.is-guide .dropdown-item.is-active {
16238
16467
  color: #fff;
16239
- background-color: #0487da;
16468
+ background-color: #3681a5;
16240
16469
  }
16241
16470
  .gn-dropdown.is-guide .dropdown-item.is-unselectable {
16242
16471
  cursor: default;
@@ -16246,23 +16475,23 @@ tag:
16246
16475
  background-color: inherit;
16247
16476
  }
16248
16477
  .gn-dropdown.is-guide .dropdown-item .gn-checks input[type=checkbox]:checked + label:before {
16249
- color: #0487da;
16250
- border-color: #0487da;
16478
+ color: #3681a5;
16479
+ border-color: #3681a5;
16251
16480
  }
16252
16481
  .gn-dropdown.is-guide .dropdown-item.is-hover,
16253
16482
  .gn-dropdown.is-guide .dropdown-item:hover {
16254
- color: #0487da;
16483
+ color: #3681a5;
16255
16484
  background-color: #fff;
16256
16485
  }
16257
16486
  .gn-dropdown.is-guide.is-disabled .dropdown-label {
16258
16487
  cursor: not-allowed;
16259
16488
  }
16260
16489
  .gn-dropdown.is-guide.is-disabled .dropdown-item:hover label {
16261
- color: #0487da;
16490
+ color: #3681a5;
16262
16491
  }
16263
16492
  .gn-dropdown.is-guide.is-disabled .dropdown-item.is-active:hover {
16264
16493
  color: #fff;
16265
- background-color: #0487da;
16494
+ background-color: #3681a5;
16266
16495
  }
16267
16496
  .gn-dropdown.is-guide.is-disabled .dropdown-item.is-active:hover label {
16268
16497
  color: #fff;
@@ -16711,10 +16940,10 @@ tag:
16711
16940
  border-color: hsl(0, 0%, 100%);
16712
16941
  }
16713
16942
  .gn-growl.is-help {
16714
- color: hsl(203, 96%, 43%);
16943
+ color: #3681a5;
16715
16944
  background-color: #fff;
16716
- background-color: hsl(203, 96%, 96%);
16717
- border-color: hsl(203, 96%, 43%);
16945
+ background-color: #fff;
16946
+ border-color: #3681a5;
16718
16947
  }
16719
16948
  .gn-growl.is-plain {
16720
16949
  color: #fff;
@@ -16741,10 +16970,10 @@ tag:
16741
16970
  border-color: #e51317;
16742
16971
  }
16743
16972
  .gn-growl.is-guide {
16744
- color: #0487da;
16973
+ color: #3681a5;
16745
16974
  background-color: #fff;
16746
16975
  background-color: #fff;
16747
- border-color: #0487da;
16976
+ border-color: #3681a5;
16748
16977
  }
16749
16978
 
16750
16979
  /*
@@ -17835,11 +18064,21 @@ tag:
17835
18064
  <div class="gn-loader is-info"></div>
17836
18065
  ```
17837
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
+
17838
18076
  ### 타입
17839
18077
 
17840
18078
  ```html
17841
18079
  <div class="gn-loader is-bounce"></div><br>
17842
18080
  <div class="gn-loader is-move"></div>
18081
+ <div class="gn-loader is-inline"></div><br>
17843
18082
  ```
17844
18083
 
17845
18084
  ### 생성 옵션
@@ -17899,7 +18138,7 @@ Gn.create('button', {
17899
18138
  <td colspan="2">type</td>
17900
18139
  <td>string</td>
17901
18140
  <td></td>
17902
- <td>'bounce','move','circle'</td>
18141
+ <td>'inline','bounce','move','</td>
17903
18142
  </tr>
17904
18143
  <tr>
17905
18144
  <td colspan="2">positionX</td>
@@ -18008,6 +18247,7 @@ Gn.create('button', {
18008
18247
  .gn-loader.is-small {
18009
18248
  width: 15px;
18010
18249
  height: 15px;
18250
+ border-width: 5px;
18011
18251
  }
18012
18252
  .gn-loader.is-normal {
18013
18253
  width: 25px;
@@ -18070,7 +18310,7 @@ Gn.create('button', {
18070
18310
  border-top: 9px solid #f3f3f3;
18071
18311
  }
18072
18312
  .gn-loader.is-help {
18073
- border: 9px solid hsl(203, 96%, 43%);
18313
+ border: 9px solid #3681a5;
18074
18314
  border-top: 9px solid #f3f3f3;
18075
18315
  }
18076
18316
  .gn-loader.is-plain {
@@ -18090,7 +18330,7 @@ Gn.create('button', {
18090
18330
  border-top: 9px solid #f3f3f3;
18091
18331
  }
18092
18332
  .gn-loader.is-guide {
18093
- border: 9px solid #0487da;
18333
+ border: 9px solid #3681a5;
18094
18334
  border-top: 9px solid #f3f3f3;
18095
18335
  }
18096
18336
  .gn-loader.is-bounce {
@@ -18101,6 +18341,88 @@ Gn.create('button', {
18101
18341
  border: 13px solid #88b50f;
18102
18342
  animation: move 1.5s ease-in-out infinite alternate;
18103
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
+ }
18104
18426
 
18105
18427
  @keyframes load-spin {
18106
18428
  0% {
@@ -18129,7 +18451,235 @@ Gn.create('button', {
18129
18451
  transform: translateX(15px);
18130
18452
  }
18131
18453
  }
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
+ /*
18133
18683
  ---
18134
18684
  name: Message
18135
18685
  category:
@@ -18512,9 +19062,9 @@ Eu velit aliqua eiusmod eiusmod occaecat ullamco fugiat sunt occaecat excepteur.
18512
19062
  border-color: hsl(0, 0%, 100%);
18513
19063
  }
18514
19064
  .gn-message.is-help {
18515
- color: hsl(203, 96%, 43%);
18516
- background-color: hsl(203, 96%, 96%);
18517
- border-color: hsl(203, 96%, 43%);
19065
+ color: #3681a5;
19066
+ background-color: #fff;
19067
+ border-color: #3681a5;
18518
19068
  }
18519
19069
  .gn-message.is-plain {
18520
19070
  color: #fff;
@@ -18537,9 +19087,9 @@ Eu velit aliqua eiusmod eiusmod occaecat ullamco fugiat sunt occaecat excepteur.
18537
19087
  border-color: #e51317;
18538
19088
  }
18539
19089
  .gn-message.is-guide {
18540
- color: #0487da;
19090
+ color: #3681a5;
18541
19091
  background-color: #fff;
18542
- border-color: #0487da;
19092
+ border-color: #3681a5;
18543
19093
  }
18544
19094
 
18545
19095
  /*
@@ -18924,7 +19474,7 @@ tag:
18924
19474
  color: rgba(0, 0, 0, 0.7);
18925
19475
  }
18926
19476
  .gn-modal .modal-header.is-help {
18927
- background-color: hsl(203, 96%, 43%);
19477
+ background-color: #3681a5;
18928
19478
  color: #fff;
18929
19479
  }
18930
19480
  .gn-modal .modal-header.is-plain {
@@ -18944,7 +19494,7 @@ tag:
18944
19494
  color: #fff;
18945
19495
  }
18946
19496
  .gn-modal .modal-header.is-guide {
18947
- background-color: #0487da;
19497
+ background-color: #3681a5;
18948
19498
  color: #fff;
18949
19499
  }
18950
19500
  .gn-modal .modal-header .modal-control {
@@ -19715,22 +20265,26 @@ tag:
19715
20265
  ```
19716
20266
  ````
19717
20267
  Gn.create('picklist', {
19718
- target: '.new-picklist',
19719
- data : {
20268
+ target: '.new-picklist',
20269
+ data: {
19720
20270
  source: [
19721
- { value: 'item1', text: '항목1' },
19722
- { value: 'item2', text: '항목2' },
19723
- { value: 'item5', text: '항목3' },
19724
- { value: 'item4', text: '항목4' },
19725
- { value: 'item5', text: '항목5' },
19726
- { value: 'item6', text: '항목6' },
19727
- { value: 'item7', text: '항목7' },
19728
- { 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' }
19729
20274
  ],
19730
- 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
+ ]
19731
20279
  },
20280
+ hasSourceSearch: true,
20281
+ hasTargetSearch: true,
19732
20282
  width: '80%',
19733
- height: 180
20283
+ height: 180,
20284
+ onChange: function (s, t) {
20285
+ console.log(s, t);
20286
+ },
20287
+ orderable: 'target'
19734
20288
  });
19735
20289
  Gn.create('picklist', {
19736
20290
  target: '.new-picklist-v',
@@ -19767,15 +20321,21 @@ tag:
19767
20321
  <tr>
19768
20322
  <td rowspan="2">data</td>
19769
20323
  <td>source</td>
19770
- <td>array[{value: string|array, text: string}]</td>
20324
+ <td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
19771
20325
  <td></td>
19772
- <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>
19773
20330
  </tr>
19774
20331
  <tr>
19775
20332
  <td>target</td>
19776
- <td>array[{value: string|array, text: string}]</td>
20333
+ <td>array[{value: string|array, text: string, html?: string, icon?:string}]</td>
19777
20334
  <td></td>
19778
- <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>
19779
20339
  </tr>
19780
20340
  <tr>
19781
20341
  <td rowspan="3">textSets</td>
@@ -19929,23 +20489,17 @@ tag:
19929
20489
  .gn-picklist .picklist-caption + .dropdown-items {
19930
20490
  border-radius: 0 0 2px 2px;
19931
20491
  }
19932
- .gn-picklist .picklist-source {
20492
+ .gn-picklist .gn-dropdown {
20493
+ display: block;
20494
+ }
20495
+ .gn-picklist .picklist-source,
20496
+ .gn-picklist .picklist-target {
19933
20497
  display: flex;
19934
20498
  flex-basis: calc(50% - 16px);
19935
20499
  width: calc(50% - 16px);
19936
20500
  flex-grow: 0;
19937
20501
  flex-shrink: 0;
19938
20502
  }
19939
- .gn-picklist .picklist-source > .gn-dropdown {
19940
- order: 2;
19941
- width: 100%;
19942
- }
19943
- .gn-picklist .picklist-source .picklist-controls {
19944
- order: 1;
19945
- }
19946
- .gn-picklist .gn-dropdown {
19947
- display: block;
19948
- }
19949
20503
  .gn-picklist .picklist-source.no-controls,
19950
20504
  .gn-picklist .picklist-target.no-controls {
19951
20505
  flex-basis: calc(50% - 45px);
@@ -19956,23 +20510,22 @@ tag:
19956
20510
  width: 100%;
19957
20511
  height: 100%;
19958
20512
  }
19959
- .gn-picklist.is-vertical .picklist-source,
19960
- .gn-picklist .picklist-target {
19961
- display: flex;
19962
- flex-basis: calc(50% - 16px);
19963
- width: calc(50% - 16px);
19964
- flex-grow: 0;
19965
- flex-shrink: 0;
19966
- }
19967
- .gn-picklist.is-vertical .picklist-source > .gn-dropdown,
20513
+ .gn-picklist .picklist-source > .gn-dropdown,
19968
20514
  .gn-picklist .picklist-target > .gn-dropdown {
19969
20515
  order: 1;
19970
20516
  width: 100%;
19971
20517
  }
19972
- .gn-picklist.is-vertical .picklist-source .picklist-controls,
20518
+ .gn-picklist .picklist-source .picklist-controls,
19973
20519
  .gn-picklist .picklist-target .picklist-controls {
19974
20520
  order: 2;
19975
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
+ }
19976
20529
  .gn-picklist .picklist-controls {
19977
20530
  margin: 0.5rem;
19978
20531
  }
@@ -19982,6 +20535,16 @@ tag:
19982
20535
  .gn-picklist.is-vertical {
19983
20536
  flex-direction: column;
19984
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
+ }
19985
20548
  .gn-picklist.is-vertical > .picklist-controls {
19986
20549
  width: 90%;
19987
20550
  width: calc(100% - 50px);
@@ -19992,6 +20555,382 @@ tag:
19992
20555
  box-shadow: 0 0 0 0.1em rgba(241.077, 70.023, 104.2338, 0.7);
19993
20556
  }
19994
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
+
19995
20934
  /*
19996
20935
  ---
19997
20936
  name: Progressbar
@@ -20278,10 +21217,10 @@ tag:
20278
21217
  color: rgba(0, 0, 0, 0.7);
20279
21218
  }
20280
21219
  .gn-progressbar.is-help {
20281
- background-color: hsl(203, 96%, 93%);
21220
+ background-color: rgb(247.35, 247.35, 247.35);
20282
21221
  }
20283
21222
  .gn-progressbar.is-help > span.gauge {
20284
- background-color: hsl(203, 96%, 43%);
21223
+ background-color: #3681a5;
20285
21224
  }
20286
21225
  .gn-progressbar.is-help > span.figure.inner {
20287
21226
  color: #fff;
@@ -20326,7 +21265,7 @@ tag:
20326
21265
  background-color: rgb(247.35, 247.35, 247.35);
20327
21266
  }
20328
21267
  .gn-progressbar.is-guide > span.gauge {
20329
- background-color: #0487da;
21268
+ background-color: #3681a5;
20330
21269
  }
20331
21270
  .gn-progressbar.is-guide > span.figure.inner {
20332
21271
  color: #fff;
@@ -20588,7 +21527,8 @@ tag:
20588
21527
  }
20589
21528
  .gn-tab > ul {
20590
21529
  display: flex;
20591
- border-bottom: 3px solid #bebebe;
21530
+ border-bottom: 1px solid #bebebe;
21531
+ padding-bottom: 2px;
20592
21532
  }
20593
21533
  .gn-tab.is-center > ul {
20594
21534
  justify-content: center;
@@ -21403,18 +22343,18 @@ tag:
21403
22343
  border-left-color: hsl(0, 0%, 100%);
21404
22344
  }
21405
22345
  .gn-tooltip.is-help {
21406
- color: hsl(203, 96%, 43%);
22346
+ color: #3681a5;
21407
22347
  background-color: hsl(0, 0%, 96%);
21408
- background-color: hsl(203, 96%, 96%);
21409
- border-color: hsl(203, 96%, 43%);
22348
+ background-color: #fff;
22349
+ border-color: #3681a5;
21410
22350
  }
21411
22351
  .gn-tooltip.is-help::before {
21412
22352
  background-color: hsl(0, 0%, 96%);
21413
22353
  }
21414
22354
  .gn-tooltip.is-help::before {
21415
- background: hsl(203, 96%, 96%);
21416
- border-top-color: hsl(203, 96%, 43%);
21417
- border-left-color: hsl(203, 96%, 43%);
22355
+ background: #fff;
22356
+ border-top-color: #3681a5;
22357
+ border-left-color: #3681a5;
21418
22358
  }
21419
22359
  .gn-tooltip.is-plain {
21420
22360
  color: #fff;
@@ -21473,18 +22413,18 @@ tag:
21473
22413
  border-left-color: #e51317;
21474
22414
  }
21475
22415
  .gn-tooltip.is-guide {
21476
- color: #0487da;
22416
+ color: #3681a5;
21477
22417
  background-color: hsl(0, 0%, 96%);
21478
22418
  background-color: #fff;
21479
- border-color: #0487da;
22419
+ border-color: #3681a5;
21480
22420
  }
21481
22421
  .gn-tooltip.is-guide::before {
21482
22422
  background-color: hsl(0, 0%, 96%);
21483
22423
  }
21484
22424
  .gn-tooltip.is-guide::before {
21485
22425
  background: #fff;
21486
- border-top-color: #0487da;
21487
- border-left-color: #0487da;
22426
+ border-top-color: #3681a5;
22427
+ border-left-color: #3681a5;
21488
22428
  }
21489
22429
 
21490
22430
  /*
@@ -21766,7 +22706,7 @@ Gn.create('tree', {
21766
22706
  }
21767
22707
  .gn-tree li .tree-item .is-toggler::before {
21768
22708
  content: "\f0da";
21769
- 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";
21770
22710
  font-weight: 900;
21771
22711
  }
21772
22712
  .gn-tree li .tree-item + ul {
@@ -21870,7 +22810,7 @@ Gn.create('tree', {
21870
22810
  color: hsl(0, 0%, 100%);
21871
22811
  }
21872
22812
  .gn-tree.is-help .tree-item.is-active {
21873
- color: hsl(203, 96%, 43%);
22813
+ color: #3681a5;
21874
22814
  }
21875
22815
  .gn-tree.is-plain .tree-item.is-active {
21876
22816
  color: #fff;
@@ -21885,7 +22825,7 @@ Gn.create('tree', {
21885
22825
  color: #e51317;
21886
22826
  }
21887
22827
  .gn-tree.is-guide .tree-item.is-active {
21888
- color: #0487da;
22828
+ color: #3681a5;
21889
22829
  }
21890
22830
  .gn-tree.is-borderless li {
21891
22831
  padding-left: calc(0.75em + 0.5rem);