gnui 1.2.19 → 1.2.20

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 +339 -134
  2. package/dist/js/gnui.js +339 -134
  3. package/dist/js/gnui.min.js +6 -6
  4. package/dist/styles/default.css +10600 -20758
  5. package/dist/styles/gpi.css +10630 -20788
  6. package/dist/styles/green24.css +11263 -21435
  7. package/dist/styles/insights.css +10616 -20775
  8. package/dist/styles/nac.css +10628 -20795
  9. package/dist/styles/ztnac.css +11263 -21436
  10. package/package.json +3 -2
  11. package/styleguide/assets/components.js +58 -3
  12. package/styleguide/assets/js/gnui.js +339 -134
  13. package/styleguide/assets/js/gnui.min.js +6 -6
  14. package/styleguide/assets/styles/default.css +10600 -20758
  15. package/styleguide/assets/styles/gpi.css +10630 -20788
  16. package/styleguide/assets/styles/green24.css +11263 -21435
  17. package/styleguide/assets/styles/insights.css +10616 -20775
  18. package/styleguide/assets/styles/nac.css +10628 -20795
  19. package/styleguide/assets/styles/ztnac.css +11263 -21436
  20. package/styleguide/category/COLOR/index.html +1 -1
  21. package/styleguide/category/COMPONENT/Alert(js)/index.html +1 -1
  22. package/styleguide/category/COMPONENT/Bignumber/index.html +1 -1
  23. package/styleguide/category/COMPONENT/Breadcrumb/index.html +1 -1
  24. package/styleguide/category/COMPONENT/Calendar(js)/index.html +1 -1
  25. package/styleguide/category/COMPONENT/Card/index.html +1 -1
  26. package/styleguide/category/COMPONENT/Chart(js)/index.html +1 -1
  27. package/styleguide/category/COMPONENT/Datagrid(js)/index.html +1 -1
  28. package/styleguide/category/COMPONENT/Datalist(js)/index.html +1 -1
  29. package/styleguide/category/COMPONENT/Growl(js)/index.html +1 -1
  30. package/styleguide/category/COMPONENT/JsonView(js)/index.html +1 -1
  31. package/styleguide/category/COMPONENT/Loader(js)/index.html +1 -1
  32. package/styleguide/category/COMPONENT/MenuButton(js)/index.html +169 -21
  33. package/styleguide/category/COMPONENT/Message(js)/index.html +1 -1
  34. package/styleguide/category/COMPONENT/Modal(js)/index.html +1 -1
  35. package/styleguide/category/COMPONENT/Pagination(js)/index.html +1 -1
  36. package/styleguide/category/COMPONENT/Panel/index.html +1 -1
  37. package/styleguide/category/COMPONENT/Progressbar(js)/index.html +1 -1
  38. package/styleguide/category/COMPONENT/Tab(js)/index.html +1 -1
  39. package/styleguide/category/COMPONENT/Tagcloud(js)/index.html +1 -1
  40. package/styleguide/category/COMPONENT/Tooltip(js)/index.html +1 -1
  41. package/styleguide/category/COMPONENT/Tree(js)/index.html +16 -1
  42. package/styleguide/category/CONTROLS/Button(js)/index.html +1 -1
  43. package/styleguide/category/CONTROLS/Checkbox/index.html +1 -1
  44. package/styleguide/category/CONTROLS/Colorpicker(js)/index.html +1 -1
  45. package/styleguide/category/CONTROLS/Datepicker(js)/index.html +1 -1
  46. package/styleguide/category/CONTROLS/Dropdown(js)/index.html +67 -10
  47. package/styleguide/category/CONTROLS/File/index.html +1 -1
  48. package/styleguide/category/CONTROLS/Form/Control/index.html +1 -1
  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 +1 -1
  52. package/styleguide/category/CONTROLS/MultiText(js)/index.html +1 -1
  53. package/styleguide/category/CONTROLS/Picklist(js)/index.html +67 -13
  54. package/styleguide/category/CONTROLS/Radio/index.html +1 -1
  55. package/styleguide/category/CONTROLS/Select/index.html +1 -1
  56. package/styleguide/category/CONTROLS/SelectButton(js)/index.html +2 -2
  57. package/styleguide/category/CONTROLS/Slider/index.html +1 -1
  58. package/styleguide/category/CONTROLS/SortableList(js)/index.html +2 -2
  59. package/styleguide/category/CONTROLS/Switch(js)/index.html +1 -1
  60. package/styleguide/category/CONTROLS/SyntaxInput(js)/index.html +1 -1
  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 +1 -1
  64. package/styleguide/category/ELEMENTS/Icon/index.html +1 -1
  65. package/styleguide/category/ELEMENTS/Image/index.html +1 -1
  66. package/styleguide/category/ELEMENTS/List/index.html +1 -1
  67. package/styleguide/category/ELEMENTS/Table/index.html +1 -1
  68. package/styleguide/category/ELEMENTS/Tag/index.html +1 -1
  69. package/styleguide/category/ELEMENTS/Title/index.html +1 -1
  70. package/styleguide/category/LAYOUT/Container/index.html +1 -1
  71. package/styleguide/category/LAYOUT/Grid/index.html +1 -1
  72. package/styleguide/category/LAYOUT/Splitter(js)/index.html +1 -1
  73. package/styleguide/category/UTILITY/index.html +1 -1
  74. package/styleguide/category/Utils/index.html +1 -1
  75. package/styleguide/color.html +1 -1
  76. package/styleguide/index.html +1 -1
  77. package/styleguide/tag/javascript/index.html +4446 -4172
  78. package/styleguide/tag/v.0.1.0/index.html +5259 -4985
@@ -148,7 +148,7 @@
148
148
  </div>
149
149
 
150
150
 
151
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
151
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
152
152
  </div>
153
153
  </div>
154
154
  </div>
@@ -410,7 +410,7 @@
410
410
  </div>
411
411
 
412
412
 
413
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
413
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
414
414
  </div>
415
415
  </div>
416
416
  </div>
@@ -261,7 +261,7 @@
261
261
  </div>
262
262
 
263
263
 
264
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
264
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
265
265
  </div>
266
266
  </div>
267
267
  </div>
@@ -316,7 +316,7 @@
316
316
  </div>
317
317
 
318
318
 
319
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
319
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
320
320
  </div>
321
321
  </div>
322
322
  </div>
@@ -234,7 +234,7 @@
234
234
  </div>
235
235
 
236
236
 
237
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
237
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
238
238
  </div>
239
239
  </div>
240
240
  </div>
@@ -176,7 +176,7 @@
176
176
  </div>
177
177
 
178
178
 
179
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
179
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
180
180
  </div>
181
181
  </div>
182
182
  </div>
@@ -547,7 +547,7 @@
547
547
  </div>
548
548
 
549
549
 
550
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
550
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
551
551
  </div>
552
552
  </div>
553
553
  </div>
@@ -803,7 +803,7 @@ Gn<span class="token punctuation" >.</span><span class="token function" >create<
803
803
  </div>
804
804
 
805
805
 
806
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
806
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
807
807
  </div>
808
808
  </div>
809
809
  </div>
@@ -463,7 +463,7 @@ Gn<span class="token punctuation" >.</span><span class="token function" >create<
463
463
  </div>
464
464
 
465
465
 
466
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
466
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
467
467
  </div>
468
468
  </div>
469
469
  </div>
@@ -343,7 +343,7 @@
343
343
  </div>
344
344
 
345
345
 
346
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
346
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
347
347
  </div>
348
348
  </div>
349
349
  </div>
@@ -1126,7 +1126,7 @@
1126
1126
  </div>
1127
1127
 
1128
1128
 
1129
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
1129
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
1130
1130
  </div>
1131
1131
  </div>
1132
1132
  </div>
@@ -304,7 +304,7 @@ Gn<span class="token punctuation" >.</span><span class="token function" >create<
304
304
  </div>
305
305
 
306
306
 
307
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
307
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
308
308
  </div>
309
309
  </div>
310
310
  </div>
@@ -122,7 +122,7 @@
122
122
 
123
123
  <div class="aigis-module MenuButton">
124
124
  <h2 class="aigis-module__heading" id="MenuButton">MenuButton</h2>
125
- <div class="aigis-module__filepath">/scss/controls/button.scss</div>
125
+ <div class="aigis-module__filepath">/scss/components/menubutton.scss</div>
126
126
  <div class="aigis-tags">
127
127
 
128
128
  <span class="gn-tag">v.0.1.0</span>
@@ -140,20 +140,70 @@
140
140
  </li>
141
141
  </ul>
142
142
  </div> -->
143
- <h3 id="-">생성 옵션</h3>
143
+ <h3 id="-">기본 사용</h3>
144
+ <div class="aigis-preview">
145
+ <div class="gn-menuButton">
146
+ <button type="button">
147
+ <span class="gn-icon is-small menuButton-icon">
148
+ <i class="fas fa-caret-down"></i>
149
+ </span>
150
+ <span class="menuButton-text">메뉴버튼</span>
151
+ </button>
152
+ <div class="menuButton-menus">
153
+ <ul>
154
+ <li class="menuButton-menu">
155
+ <span class="menuButton-menu-content">
156
+ <span class="menuButton-menu-text">menu1</span>
157
+ </span>
158
+ </li>
159
+ <li class="menuButton-menu">
160
+ <span class="menuButton-menu-content">
161
+ <span class="menuButton-menu-text">menu2</span>
162
+ </span>
163
+ </li>
164
+ </ul>
165
+ </div>
166
+ </div></div>
167
+
168
+ <pre><code class="language-html"><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>div</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>gn-menuButton<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
169
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >type</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>button<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
170
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>gn-icon is-small menuButton-icon<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
171
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>i</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>fas fa-caret-down<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>i</span><span class="token punctuation" >></span></span>
172
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
173
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-text<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>메뉴버튼<span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
174
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
175
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>div</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menus<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
176
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>ul</span><span class="token punctuation" >></span></span>
177
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>li</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
178
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu-content<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
179
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu-text<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>menu1<span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
180
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
181
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>li</span><span class="token punctuation" >></span></span>
182
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>li</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
183
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu-content<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>
184
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>span</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>menuButton-menu-text<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>menu2<span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
185
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>span</span><span class="token punctuation" >></span></span>
186
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>li</span><span class="token punctuation" >></span></span>
187
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>ul</span><span class="token punctuation" >></span></span>
188
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>div</span><span class="token punctuation" >></span></span>
189
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>div</span><span class="token punctuation" >></span></span>
190
+ </code></pre>
191
+ <h3 id="-">생성 옵션</h3>
144
192
  <div class="aigis-preview">
145
193
 
146
- <button name="new-button"></button>
147
- <button name="new-button2"></button>
148
- <button name="new-button-submenu">편집 메뉴</button>
194
+ <button class="new-button"></button>
195
+ <button class="new-menubutton-cols"></button>
196
+ <button class="new-button2"></button>
197
+ <button class="new-button-submenu">편집 메뉴</button>
149
198
  </div>
150
199
 
151
- <pre><code class="language-ejs"> <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >name</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
152
- <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >name</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button2<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
153
- <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >name</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button-submenu<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>편집 메뉴<span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
200
+ <pre><code class="language-ejs"> <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
201
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-menubutton-cols<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
202
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button2<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span><span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
203
+ <span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;</span>button</span> <span class="token attr-name" >class</span><span class="token attr-value" ><span class="token punctuation" >=</span><span class="token punctuation" >"</span>new-button-submenu<span class="token punctuation" >"</span></span><span class="token punctuation" >></span></span>편집 메뉴<span class="token tag" ><span class="token tag" ><span class="token punctuation" >&lt;/</span>button</span><span class="token punctuation" >></span></span>
154
204
  </code></pre>
155
205
  <pre><code> Gn<span class="token punctuation" >.</span><span class="token function" >create</span><span class="token punctuation" >(</span><span class="token string" >'menubutton'</span><span class="token punctuation" >,</span> {
156
- target<span class="token punctuation" >:</span> <span class="token string" >'button[name=new-button]'</span><span class="token punctuation" >,</span>
206
+ target<span class="token punctuation" >:</span> <span class="token string" >'.new-button'</span><span class="token punctuation" >,</span>
157
207
  size<span class="token punctuation" >:</span> <span class="token string" >'normal'</span><span class="token punctuation" >,</span>
158
208
  textSets<span class="token punctuation" >:</span>{
159
209
  buttonText<span class="token punctuation" >:</span> <span class="token string" >'메뉴버튼'</span>
@@ -176,8 +226,33 @@
176
226
  value<span class="token punctuation" >:</span> <span class="token string" >'exit'</span>
177
227
  }<span class="token punctuation" >]</span><span class="token punctuation" >]</span>
178
228
  }<span class="token punctuation" >)</span><span class="token comment" spellcheck="true">;</span>
229
+ <span class="token operator" >/</span><span class="token operator" >/</span> 다중 컬럼 모드 생성 옵션
230
+ Gn<span class="token punctuation" >.</span><span class="token function" >create</span><span class="token punctuation" >(</span><span class="token string" >'menubutton'</span><span class="token punctuation" >,</span> {
231
+ target<span class="token punctuation" >:</span> <span class="token string" >'.new-menubutton-cols'</span><span class="token punctuation" >,</span>
232
+ size<span class="token punctuation" >:</span> <span class="token string" >'normal'</span><span class="token punctuation" >,</span>
233
+ textSets<span class="token punctuation" >:</span> {
234
+ buttonText<span class="token punctuation" >:</span> <span class="token string" >'다중 컬럼 메뉴'</span>
235
+ }<span class="token punctuation" >,</span>
236
+ onSelect<span class="token punctuation" >:</span> function <span class="token punctuation" >(</span>menu<span class="token punctuation" >)</span> {
237
+ console<span class="token punctuation" >.</span><span class="token function" >log</span><span class="token punctuation" >(</span><span class="token string" >'선택된 메뉴는 '</span> <span class="token operator" >+</span> menu<span class="token punctuation" >)</span><span class="token comment" spellcheck="true">;</span>
238
+ }<span class="token punctuation" >,</span>
239
+ data<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>
240
+ {
241
+ value<span class="token punctuation" >:</span> <span class="token string" >'menu1'</span><span class="token punctuation" >,</span>
242
+ cols<span class="token punctuation" >:</span> <span class="token punctuation" >[</span><span class="token string" >'item1'</span><span class="token punctuation" >,</span> <span class="token string" >'1'</span><span class="token punctuation" >,</span> <span class="token string" >'상세정보1'</span><span class="token punctuation" >]</span>
243
+ }<span class="token punctuation" >,</span>
244
+ {
245
+ value<span class="token punctuation" >:</span> <span class="token string" >'menu2'</span><span class="token punctuation" >,</span>
246
+ cols<span class="token punctuation" >:</span> <span class="token punctuation" >[</span><span class="token string" >'item2'</span><span class="token punctuation" >,</span> <span class="token string" >'2'</span><span class="token punctuation" >,</span> <span class="token string" >'상세정보2'</span><span class="token punctuation" >]</span>
247
+ }<span class="token punctuation" >,</span>
248
+ {
249
+ value<span class="token punctuation" >:</span> <span class="token string" >'menu3'</span><span class="token punctuation" >,</span>
250
+ cols<span class="token punctuation" >:</span> <span class="token punctuation" >[</span><span class="token string" >'item3'</span><span class="token punctuation" >,</span> <span class="token string" >'3'</span><span class="token punctuation" >,</span> <span class="token string" >'상세정보3'</span><span class="token punctuation" >]</span>
251
+ }
252
+ <span class="token punctuation" >]</span>
253
+ }<span class="token punctuation" >)</span><span class="token comment" spellcheck="true">;</span>
179
254
  Gn<span class="token punctuation" >.</span><span class="token function" >create</span><span class="token punctuation" >(</span><span class="token string" >'menubutton'</span><span class="token punctuation" >,</span> {
180
- target<span class="token punctuation" >:</span> <span class="token string" >'button[name=new-button2]'</span><span class="token punctuation" >,</span>
255
+ target<span class="token punctuation" >:</span> <span class="token string" >'.new-button2'</span><span class="token punctuation" >,</span>
181
256
  style<span class="token punctuation" >:</span> <span class="token string" >'simple'</span><span class="token punctuation" >,</span>
182
257
  icon<span class="token punctuation" >:</span> <span class="token string" >'list'</span><span class="token punctuation" >,</span>
183
258
  data<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>{
@@ -190,7 +265,7 @@
190
265
  }<span class="token punctuation" >)</span><span class="token comment" spellcheck="true">;</span>
191
266
  <span class="token operator" >/</span><span class="token operator" >/</span> 서브메뉴 예시
192
267
  Gn<span class="token punctuation" >.</span><span class="token function" >create</span><span class="token punctuation" >(</span><span class="token string" >'menubutton'</span><span class="token punctuation" >,</span> {
193
- target<span class="token punctuation" >:</span> <span class="token string" >'button[name=new-button-submenu]'</span><span class="token punctuation" >,</span>
268
+ target<span class="token punctuation" >:</span> <span class="token string" >'.new-button-submenu'</span><span class="token punctuation" >,</span>
194
269
  size<span class="token punctuation" >:</span> <span class="token string" >'normal'</span><span class="token punctuation" >,</span>
195
270
  textSets<span class="token punctuation" >:</span> {
196
271
  buttonText<span class="token punctuation" >:</span> <span class="token string" >'편집 메뉴'</span>
@@ -210,30 +285,103 @@
210
285
  value<span class="token punctuation" >:</span> <span class="token string" >'file-recent'</span><span class="token punctuation" >,</span>
211
286
  child<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>
212
287
  { text<span class="token punctuation" >:</span> <span class="token string" >'document.txt'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-recent-1'</span> }<span class="token punctuation" >,</span>
213
- { text<span class="token punctuation" >:</span> <span class="token string" >'image.png'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-recent-2'</span> }
288
+ { text<span class="token punctuation" >:</span> <span class="token string" >'image.png'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-recent-2'</span> }<span class="token punctuation" >,</span>
289
+ { text<span class="token punctuation" >:</span> <span class="token string" >'project.json'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-recent-3'</span> }
214
290
  <span class="token punctuation" >]</span>
215
291
  }<span class="token punctuation" >,</span>
216
- { text<span class="token punctuation" >:</span> <span class="token string" >'저장'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-save'</span><span class="token punctuation" >,</span> disabled<span class="token punctuation" >:</span> <span class="token boolean" >true</span> }<span class="token punctuation" >,</span>
292
+ { text<span class="token punctuation" >:</span> <span class="token string" >'저장'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-save'</span> }<span class="token punctuation" >,</span>
217
293
  { text<span class="token punctuation" >:</span> <span class="token string" >'다른 이름으로 저장'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'file-saveas'</span> }
218
294
  <span class="token punctuation" >]</span>
219
295
  }<span class="token punctuation" >,</span>
220
296
  {
221
297
  text<span class="token punctuation" >:</span> <span class="token string" >'편집'</span><span class="token punctuation" >,</span>
222
298
  value<span class="token punctuation" >:</span> <span class="token string" >'edit'</span><span class="token punctuation" >,</span>
223
- actived<span class="token punctuation" >:</span> <span class="token boolean" >true</span><span class="token punctuation" >,</span>
224
299
  child<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>
225
300
  { text<span class="token punctuation" >:</span> <span class="token string" >'실행 취소'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'edit-undo'</span> }<span class="token punctuation" >,</span>
226
- { text<span class="token punctuation" >:</span> <span class="token string" >'다시 실행'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'edit-redo'</span> }
301
+ { text<span class="token punctuation" >:</span> <span class="token string" >'다시 실행'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'edit-redo'</span><span class="token punctuation" >,</span> actived<span class="token punctuation" >:</span> <span class="token boolean" >true</span> }<span class="token punctuation" >,</span>
302
+ { text<span class="token punctuation" >:</span> <span class="token string" >'복사'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'edit-copy'</span> }<span class="token punctuation" >,</span>
303
+ { text<span class="token punctuation" >:</span> <span class="token string" >'붙여넣기'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'edit-paste'</span> }
304
+ <span class="token punctuation" >]</span>
305
+ }<span class="token punctuation" >,</span>
306
+ {
307
+ text<span class="token punctuation" >:</span> <span class="token string" >'보기'</span><span class="token punctuation" >,</span>
308
+ value<span class="token punctuation" >:</span> <span class="token string" >'view'</span><span class="token punctuation" >,</span>
309
+ child<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>
310
+ {
311
+ text<span class="token punctuation" >:</span> <span class="token string" >'확대/축소'</span><span class="token punctuation" >,</span>
312
+ value<span class="token punctuation" >:</span> <span class="token string" >'view-zoom'</span><span class="token punctuation" >,</span>
313
+ disabled<span class="token punctuation" >:</span> <span class="token boolean" >true</span><span class="token punctuation" >,</span>
314
+ child<span class="token punctuation" >:</span> <span class="token punctuation" >[</span>
315
+ { text<span class="token punctuation" >:</span> <span class="token string" >'확대'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'view-zoom-in'</span> }<span class="token punctuation" >,</span>
316
+ { text<span class="token punctuation" >:</span> <span class="token string" >'축소'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'view-zoom-out'</span> }<span class="token punctuation" >,</span>
317
+ { text<span class="token punctuation" >:</span> <span class="token string" >'원본 크기'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'view-zoom-reset'</span> }
318
+ <span class="token punctuation" >]</span>
319
+ }<span class="token punctuation" >,</span>
320
+ { text<span class="token punctuation" >:</span> <span class="token string" >'전체 화면'</span><span class="token punctuation" >,</span> value<span class="token punctuation" >:</span> <span class="token string" >'view-fullscreen'</span> }
227
321
  <span class="token punctuation" >]</span>
228
322
  }<span class="token punctuation" >,</span>
229
323
  {
230
324
  text<span class="token punctuation" >:</span> <span class="token string" >'도움말'</span><span class="token punctuation" >,</span>
231
- value<span class="token punctuation" >:</span> <span class="token string" >'help'</span><span class="token punctuation" >,</span>
232
- disabled<span class="token punctuation" >:</span> <span class="token boolean" >true</span>
325
+ value<span class="token punctuation" >:</span> <span class="token string" >'help'</span>
233
326
  }
234
327
  <span class="token punctuation" >]</span>
235
328
  }<span class="token punctuation" >)</span><span class="token comment" spellcheck="true">;</span>
236
- </code></pre><table class="gn-table is-full is-border">
329
+ </code></pre><h3 id="-menubuttonitem-">데이터 모델 (MenuButtonItem)</h3>
330
+ <table class="gn-table is-full is-border">
331
+ <thead>
332
+ <th>필드</th>
333
+ <th>type</th>
334
+ <th>필수</th>
335
+ <th>description</th>
336
+ </thead>
337
+ <tbody>
338
+ <tr>
339
+ <td>value</td>
340
+ <td>string</td>
341
+ <td>Y</td>
342
+ <td>메뉴 값 (고유 값)</td>
343
+ </tr>
344
+ <tr>
345
+ <td>text</td>
346
+ <td>string</td>
347
+ <td>N</td>
348
+ <td>단일 컬럼 표시 텍스트</td>
349
+ </tr>
350
+ <tr>
351
+ <td>cols</td>
352
+ <td>string[]</td>
353
+ <td>N</td>
354
+ <td>다중 컬럼 표시 값 배열</td>
355
+ </tr>
356
+ <tr>
357
+ <td>html</td>
358
+ <td>string</td>
359
+ <td>N</td>
360
+ <td>HTML로 렌더링할 내용 (html이 있는 경우 text/cols 대신 사용, text가 있는 항목만 선택 가능)</td>
361
+ </tr>
362
+ <tr>
363
+ <td>child</td>
364
+ <td>MenuButtonItem[]</td>
365
+ <td>N</td>
366
+ <td>하위 메뉴 배열 (최대 2단계)</td>
367
+ </tr>
368
+ <tr>
369
+ <td>disabled</td>
370
+ <td>boolean</td>
371
+ <td>N</td>
372
+ <td>비활성화 여부</td>
373
+ </tr>
374
+ <tr>
375
+ <td>actived</td>
376
+ <td>boolean</td>
377
+ <td>N</td>
378
+ <td>활성화 상태 표시 여부</td>
379
+ </tr>
380
+ </tbody>
381
+ </table>
382
+
383
+
384
+ <table class="gn-table is-full is-border">
237
385
  <thead>
238
386
  <th colspan="2">name</th>
239
387
  <th>type</th>
@@ -286,9 +434,9 @@
286
434
  </tr>
287
435
  <tr>
288
436
  <td colspan="2">data</td>
289
- <td>Array[{value, text, html, child, disabled, actived}]</td>
437
+ <td>MenuButtonItem[]</td>
290
438
  <td></td>
291
- <td>메뉴 목록에 출력할 목록<br/>- value: 메뉴 값<br/>- text: 메뉴 텍스트<br/>- html: HTML로 렌더링할 내용<br/>- child: 하위 메뉴 배열 (최대 2단계)<br/>- disabled: 비활성화 여부 (boolean)<br/>- actived: 활성화 상태 표시 여부</td>
439
+ <td>메뉴 목록에 출력할 데이터 배열<br/>- MenuButtonItem 참조<br/><br/><strong>참고:</strong> 표시 우선순위는 html &gt; cols &gt; text 입니다. html 항목은 text가 있는 경우만 선택 가능하며, html이 있으면 cols는 무시됩니다. html이 있으면 하위 메뉴는 렌더링되지 않습니다.</td>
292
440
  </tr>
293
441
  <tr>
294
442
  <td colspan="2">disabled</td>
@@ -341,7 +489,7 @@
341
489
  </div>
342
490
 
343
491
 
344
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
492
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
345
493
  </div>
346
494
  </div>
347
495
  </div>
@@ -507,7 +507,7 @@ Eu velit aliqua eiusmod eiusmod occaecat ullamco fugiat sunt occaecat excepteur.
507
507
  </div>
508
508
 
509
509
 
510
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
510
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
511
511
  </div>
512
512
  </div>
513
513
  </div>
@@ -436,7 +436,7 @@
436
436
  </div>
437
437
 
438
438
 
439
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
439
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
440
440
  </div>
441
441
  </div>
442
442
  </div>
@@ -437,7 +437,7 @@
437
437
  </div>
438
438
 
439
439
 
440
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
440
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
441
441
  </div>
442
442
  </div>
443
443
  </div>
@@ -318,7 +318,7 @@
318
318
  </div>
319
319
 
320
320
 
321
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
321
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
322
322
  </div>
323
323
  </div>
324
324
  </div>
@@ -305,7 +305,7 @@
305
305
  </div>
306
306
 
307
307
 
308
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
308
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
309
309
  </div>
310
310
  </div>
311
311
  </div>
@@ -465,7 +465,7 @@
465
465
  </div>
466
466
 
467
467
 
468
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
468
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
469
469
  </div>
470
470
  </div>
471
471
  </div>
@@ -252,7 +252,7 @@
252
252
  </div>
253
253
 
254
254
 
255
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
255
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
256
256
  </div>
257
257
  </div>
258
258
  </div>
@@ -404,7 +404,7 @@
404
404
  </div>
405
405
 
406
406
 
407
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
407
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
408
408
  </div>
409
409
  </div>
410
410
  </div>
@@ -367,6 +367,21 @@
367
367
  <td>void</td>
368
368
  <td>열려있는 child 데이터를 축소한다. </td>
369
369
  </tr>
370
+ <tr>
371
+ <td>expandAll()</td>
372
+ <td>void</td>
373
+ <td>모든 노드를 확장한다.</td>
374
+ </tr>
375
+ <tr>
376
+ <td>checkAll()</td>
377
+ <td>void</td>
378
+ <td>모든 노드를 체크한다. <b>hasCheck: true</b>일 때만 유효하며, 그 외에는 no-op이다.</td>
379
+ </tr>
380
+ <tr>
381
+ <td>uncheckAll()</td>
382
+ <td>void</td>
383
+ <td>모든 노드의 체크를 해제한다. <b>hasCheck: true</b>일 때만 유효하며, 그 외에는 no-op이다.</td>
384
+ </tr>
370
385
  <tr>
371
386
  <td>getChecked(withStatus: Boolean = false)</td>
372
387
  <td>array</td>
@@ -396,7 +411,7 @@
396
411
  </div>
397
412
 
398
413
 
399
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
414
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
400
415
  </div>
401
416
  </div>
402
417
  </div>
@@ -457,7 +457,7 @@
457
457
  </div>
458
458
 
459
459
 
460
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
460
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
461
461
  </div>
462
462
  </div>
463
463
  </div>
@@ -186,7 +186,7 @@
186
186
  </div>
187
187
 
188
188
 
189
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
189
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
190
190
  </div>
191
191
  </div>
192
192
  </div>
@@ -277,7 +277,7 @@
277
277
  </div>
278
278
 
279
279
 
280
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
280
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
281
281
  </div>
282
282
  </div>
283
283
  </div>
@@ -321,7 +321,7 @@
321
321
  </div>
322
322
 
323
323
 
324
- <footer class="aigis-footer">Last update at 2026/01/25 22:45</footer>
324
+ <footer class="aigis-footer">Last update at 2026/02/04 13:16</footer>
325
325
  </div>
326
326
  </div>
327
327
  </div>