@ncds/ui-admin 1.6.3 → 1.6.4-alpha.0

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 (260) hide show
  1. package/mcp/bin/server.d.ts +1 -0
  2. package/mcp/bin/server.js +62 -0
  3. package/mcp/bin/server.mjs +14 -0
  4. package/mcp/bin/tools/getComponentHtml.d.ts +3 -0
  5. package/mcp/bin/tools/getComponentHtml.js +30 -0
  6. package/mcp/bin/tools/getComponentProps.d.ts +3 -0
  7. package/mcp/bin/tools/getComponentProps.js +16 -0
  8. package/mcp/bin/tools/listComponents.d.ts +3 -0
  9. package/mcp/bin/tools/listComponents.js +15 -0
  10. package/mcp/bin/tools/searchComponent.d.ts +3 -0
  11. package/mcp/bin/tools/searchComponent.js +20 -0
  12. package/mcp/bin/tools/validateHtml.d.ts +10 -0
  13. package/mcp/bin/tools/validateHtml.js +142 -0
  14. package/mcp/bin/types.d.ts +28 -0
  15. package/mcp/bin/types.js +5 -0
  16. package/mcp/bin/utils/dataLoader.d.ts +11 -0
  17. package/mcp/bin/utils/dataLoader.js +68 -0
  18. package/mcp/bin/utils/logger.d.ts +18 -0
  19. package/mcp/bin/utils/logger.js +27 -0
  20. package/mcp/bin/utils/response.d.ts +23 -0
  21. package/mcp/bin/utils/response.js +31 -0
  22. package/mcp/bin/version.d.ts +1 -0
  23. package/mcp/bin/version.js +4 -0
  24. package/mcp/data/.gitkeep +0 -0
  25. package/mcp/data/_meta.json +7 -0
  26. package/mcp/data/badge-group.json +73 -0
  27. package/mcp/data/badge.json +86 -0
  28. package/mcp/data/bread-crumb.json +22 -0
  29. package/mcp/data/breadcrumb.json +31 -0
  30. package/mcp/data/button-group.json +65 -0
  31. package/mcp/data/button.json +114 -0
  32. package/mcp/data/carousel-arrow.json +59 -0
  33. package/mcp/data/carousel-number-group.json +57 -0
  34. package/mcp/data/carousel.json +22 -0
  35. package/mcp/data/checkbox.json +31 -0
  36. package/mcp/data/combobox.json +114 -0
  37. package/mcp/data/date-picker.json +77 -0
  38. package/mcp/data/divider.json +56 -0
  39. package/mcp/data/dot.json +55 -0
  40. package/mcp/data/dropdown.json +81 -0
  41. package/mcp/data/empty-state.json +34 -0
  42. package/mcp/data/featured-icon.json +83 -0
  43. package/mcp/data/file-input.json +76 -0
  44. package/mcp/data/horizontal-tab.json +71 -0
  45. package/mcp/data/image-file-input.json +97 -0
  46. package/mcp/data/input.json +104 -0
  47. package/mcp/data/modal.json +85 -0
  48. package/mcp/data/notification.json +116 -0
  49. package/mcp/data/number-input.json +128 -0
  50. package/mcp/data/pagination.json +65 -0
  51. package/mcp/data/password-input.json +47 -0
  52. package/mcp/data/progress-bar.json +51 -0
  53. package/mcp/data/progress-circle.json +54 -0
  54. package/mcp/data/radio.json +31 -0
  55. package/mcp/data/range-date-picker-with-buttons.json +64 -0
  56. package/mcp/data/range-date-picker.json +55 -0
  57. package/mcp/data/select-dropdown.json +32 -0
  58. package/mcp/data/select.json +64 -0
  59. package/mcp/data/selectbox.json +129 -0
  60. package/mcp/data/slider.json +57 -0
  61. package/mcp/data/spinner.json +54 -0
  62. package/mcp/data/switch.json +71 -0
  63. package/mcp/data/tab.json +122 -0
  64. package/mcp/data/tag.json +66 -0
  65. package/mcp/data/textarea.json +88 -0
  66. package/mcp/data/toggle.json +59 -0
  67. package/mcp/data/tooltip.json +123 -0
  68. package/mcp/data/vertical-tab.json +64 -0
  69. package/mcp/templates/.mcp.json.example +8 -0
  70. package/mcp/templates/README.md +31 -0
  71. package/package.json +24 -3
  72. package/dist/cjs/assets/scripts/comboBox.js +0 -280
  73. package/dist/cjs/assets/scripts/datePicker.js +0 -706
  74. package/dist/cjs/assets/scripts/featuredIcon.js +0 -95
  75. package/dist/cjs/assets/scripts/fileInput/FileInput.js +0 -183
  76. package/dist/cjs/assets/scripts/fileInput/FileInputModel.js +0 -246
  77. package/dist/cjs/assets/scripts/fileInput/FileInputView.js +0 -455
  78. package/dist/cjs/assets/scripts/fileInput/const/classNames.js +0 -35
  79. package/dist/cjs/assets/scripts/fileInput/const/index.js +0 -27
  80. package/dist/cjs/assets/scripts/fileInput/const/types.js +0 -13
  81. package/dist/cjs/assets/scripts/fileInput/index.js +0 -44
  82. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInput.js +0 -187
  83. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputModel.js +0 -255
  84. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputView.js +0 -354
  85. package/dist/cjs/assets/scripts/imageFileInput/const/classNames.js +0 -41
  86. package/dist/cjs/assets/scripts/imageFileInput/const/index.js +0 -27
  87. package/dist/cjs/assets/scripts/imageFileInput/const/types.js +0 -13
  88. package/dist/cjs/assets/scripts/imageFileInput/index.js +0 -44
  89. package/dist/cjs/assets/scripts/index.js +0 -30
  90. package/dist/cjs/assets/scripts/modal/Modal.js +0 -116
  91. package/dist/cjs/assets/scripts/modal/ModalActions.js +0 -128
  92. package/dist/cjs/assets/scripts/modal/ModalContent.js +0 -46
  93. package/dist/cjs/assets/scripts/modal/ModalHeader.js +0 -115
  94. package/dist/cjs/assets/scripts/modal/const/classNames.js +0 -41
  95. package/dist/cjs/assets/scripts/modal/const/index.js +0 -27
  96. package/dist/cjs/assets/scripts/modal/const/types.js +0 -5
  97. package/dist/cjs/assets/scripts/modal/index.js +0 -61
  98. package/dist/cjs/assets/scripts/modal/utils/contentUtils.js +0 -35
  99. package/dist/cjs/assets/scripts/notification/FloatingNotification.js +0 -180
  100. package/dist/cjs/assets/scripts/notification/FullWidthNotification.js +0 -120
  101. package/dist/cjs/assets/scripts/notification/MessageNotification.js +0 -146
  102. package/dist/cjs/assets/scripts/notification/Notification.js +0 -116
  103. package/dist/cjs/assets/scripts/notification/const/classNames.js +0 -50
  104. package/dist/cjs/assets/scripts/notification/const/icons.js +0 -45
  105. package/dist/cjs/assets/scripts/notification/const/index.js +0 -87
  106. package/dist/cjs/assets/scripts/notification/const/sizes.js +0 -54
  107. package/dist/cjs/assets/scripts/notification/const/types.js +0 -14
  108. package/dist/cjs/assets/scripts/notification/index.js +0 -92
  109. package/dist/cjs/assets/scripts/notification/utils.js +0 -92
  110. package/dist/cjs/assets/scripts/progress-bar/ProgressBar.js +0 -272
  111. package/dist/cjs/assets/scripts/progress-bar/index.js +0 -12
  112. package/dist/cjs/assets/scripts/selectBox.js +0 -319
  113. package/dist/cjs/assets/scripts/shared/ButtonCloseX.js +0 -46
  114. package/dist/cjs/assets/scripts/tab.js +0 -40
  115. package/dist/cjs/assets/scripts/tag/Tag.js +0 -268
  116. package/dist/cjs/assets/scripts/tag/const/classNames.js +0 -24
  117. package/dist/cjs/assets/scripts/tag/const/index.js +0 -38
  118. package/dist/cjs/assets/scripts/tag/const/sizes.js +0 -13
  119. package/dist/cjs/assets/scripts/tag/const/types.js +0 -5
  120. package/dist/cjs/assets/scripts/tag/index.js +0 -44
  121. package/dist/cjs/assets/scripts/tooltip/Tooltip.js +0 -380
  122. package/dist/cjs/assets/scripts/tooltip/TooltipLayerManager.js +0 -84
  123. package/dist/cjs/assets/scripts/tooltip/const/classNames.js +0 -29
  124. package/dist/cjs/assets/scripts/tooltip/const/constants.js +0 -56
  125. package/dist/cjs/assets/scripts/tooltip/const/icons.js +0 -15
  126. package/dist/cjs/assets/scripts/tooltip/const/index.js +0 -123
  127. package/dist/cjs/assets/scripts/tooltip/const/templates.js +0 -49
  128. package/dist/cjs/assets/scripts/tooltip/const/types.js +0 -5
  129. package/dist/cjs/assets/scripts/tooltip/index.js +0 -57
  130. package/dist/cjs/assets/scripts/tooltip/utils.js +0 -41
  131. package/dist/cjs/assets/scripts/utils/unifiedBox/DOMRenderer.js +0 -384
  132. package/dist/cjs/assets/scripts/utils/unifiedBox/DropdownModel.js +0 -368
  133. package/dist/cjs/assets/scripts/utils/unifiedBox/UnifiedBoxController.js +0 -681
  134. package/dist/cjs/assets/scripts/utils/unifiedBox/UnifiedBoxManager.js +0 -711
  135. package/dist/esm/assets/scripts/comboBox.js +0 -275
  136. package/dist/esm/assets/scripts/datePicker.js +0 -699
  137. package/dist/esm/assets/scripts/featuredIcon.js +0 -90
  138. package/dist/esm/assets/scripts/fileInput/FileInput.js +0 -178
  139. package/dist/esm/assets/scripts/fileInput/FileInputModel.js +0 -241
  140. package/dist/esm/assets/scripts/fileInput/FileInputView.js +0 -450
  141. package/dist/esm/assets/scripts/fileInput/const/classNames.js +0 -25
  142. package/dist/esm/assets/scripts/fileInput/const/index.js +0 -2
  143. package/dist/esm/assets/scripts/fileInput/const/types.js +0 -7
  144. package/dist/esm/assets/scripts/fileInput/index.js +0 -9
  145. package/dist/esm/assets/scripts/imageFileInput/ImageFileInput.js +0 -182
  146. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputModel.js +0 -250
  147. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputView.js +0 -349
  148. package/dist/esm/assets/scripts/imageFileInput/const/classNames.js +0 -30
  149. package/dist/esm/assets/scripts/imageFileInput/const/index.js +0 -2
  150. package/dist/esm/assets/scripts/imageFileInput/const/types.js +0 -7
  151. package/dist/esm/assets/scripts/imageFileInput/index.js +0 -9
  152. package/dist/esm/assets/scripts/index.js +0 -28
  153. package/dist/esm/assets/scripts/modal/Modal.js +0 -110
  154. package/dist/esm/assets/scripts/modal/ModalActions.js +0 -123
  155. package/dist/esm/assets/scripts/modal/ModalContent.js +0 -41
  156. package/dist/esm/assets/scripts/modal/ModalHeader.js +0 -110
  157. package/dist/esm/assets/scripts/modal/const/classNames.js +0 -31
  158. package/dist/esm/assets/scripts/modal/const/index.js +0 -2
  159. package/dist/esm/assets/scripts/modal/const/types.js +0 -1
  160. package/dist/esm/assets/scripts/modal/index.js +0 -15
  161. package/dist/esm/assets/scripts/modal/utils/contentUtils.js +0 -28
  162. package/dist/esm/assets/scripts/notification/FloatingNotification.js +0 -176
  163. package/dist/esm/assets/scripts/notification/FullWidthNotification.js +0 -115
  164. package/dist/esm/assets/scripts/notification/MessageNotification.js +0 -141
  165. package/dist/esm/assets/scripts/notification/Notification.js +0 -111
  166. package/dist/esm/assets/scripts/notification/const/classNames.js +0 -44
  167. package/dist/esm/assets/scripts/notification/const/icons.js +0 -39
  168. package/dist/esm/assets/scripts/notification/const/index.js +0 -4
  169. package/dist/esm/assets/scripts/notification/const/sizes.js +0 -48
  170. package/dist/esm/assets/scripts/notification/const/types.js +0 -8
  171. package/dist/esm/assets/scripts/notification/index.js +0 -11
  172. package/dist/esm/assets/scripts/notification/utils.js +0 -79
  173. package/dist/esm/assets/scripts/progress-bar/ProgressBar.js +0 -267
  174. package/dist/esm/assets/scripts/progress-bar/index.js +0 -1
  175. package/dist/esm/assets/scripts/selectBox.js +0 -314
  176. package/dist/esm/assets/scripts/shared/ButtonCloseX.js +0 -38
  177. package/dist/esm/assets/scripts/tab.js +0 -35
  178. package/dist/esm/assets/scripts/tag/Tag.js +0 -263
  179. package/dist/esm/assets/scripts/tag/const/classNames.js +0 -16
  180. package/dist/esm/assets/scripts/tag/const/index.js +0 -3
  181. package/dist/esm/assets/scripts/tag/const/sizes.js +0 -7
  182. package/dist/esm/assets/scripts/tag/const/types.js +0 -1
  183. package/dist/esm/assets/scripts/tag/index.js +0 -9
  184. package/dist/esm/assets/scripts/tooltip/Tooltip.js +0 -375
  185. package/dist/esm/assets/scripts/tooltip/TooltipLayerManager.js +0 -79
  186. package/dist/esm/assets/scripts/tooltip/const/classNames.js +0 -23
  187. package/dist/esm/assets/scripts/tooltip/const/constants.js +0 -50
  188. package/dist/esm/assets/scripts/tooltip/const/icons.js +0 -9
  189. package/dist/esm/assets/scripts/tooltip/const/index.js +0 -4
  190. package/dist/esm/assets/scripts/tooltip/const/templates.js +0 -42
  191. package/dist/esm/assets/scripts/tooltip/const/types.js +0 -1
  192. package/dist/esm/assets/scripts/tooltip/index.js +0 -10
  193. package/dist/esm/assets/scripts/tooltip/utils.js +0 -35
  194. package/dist/esm/assets/scripts/utils/unifiedBox/DOMRenderer.js +0 -379
  195. package/dist/esm/assets/scripts/utils/unifiedBox/DropdownModel.js +0 -363
  196. package/dist/esm/assets/scripts/utils/unifiedBox/UnifiedBoxController.js +0 -676
  197. package/dist/esm/assets/scripts/utils/unifiedBox/UnifiedBoxManager.js +0 -706
  198. package/dist/types/assets/scripts/comboBox.d.ts +0 -91
  199. package/dist/types/assets/scripts/datePicker.d.ts +0 -87
  200. package/dist/types/assets/scripts/featuredIcon.d.ts +0 -23
  201. package/dist/types/assets/scripts/fileInput/FileInput.d.ts +0 -67
  202. package/dist/types/assets/scripts/fileInput/FileInputModel.d.ts +0 -70
  203. package/dist/types/assets/scripts/fileInput/FileInputView.d.ts +0 -77
  204. package/dist/types/assets/scripts/fileInput/const/classNames.d.ts +0 -17
  205. package/dist/types/assets/scripts/fileInput/const/index.d.ts +0 -3
  206. package/dist/types/assets/scripts/fileInput/const/types.d.ts +0 -132
  207. package/dist/types/assets/scripts/fileInput/index.d.ts +0 -4
  208. package/dist/types/assets/scripts/imageFileInput/ImageFileInput.d.ts +0 -64
  209. package/dist/types/assets/scripts/imageFileInput/ImageFileInputModel.d.ts +0 -74
  210. package/dist/types/assets/scripts/imageFileInput/ImageFileInputView.d.ts +0 -80
  211. package/dist/types/assets/scripts/imageFileInput/const/classNames.d.ts +0 -20
  212. package/dist/types/assets/scripts/imageFileInput/const/index.d.ts +0 -3
  213. package/dist/types/assets/scripts/imageFileInput/const/types.d.ts +0 -126
  214. package/dist/types/assets/scripts/imageFileInput/index.d.ts +0 -4
  215. package/dist/types/assets/scripts/index.d.ts +0 -33
  216. package/dist/types/assets/scripts/modal/Modal.d.ts +0 -28
  217. package/dist/types/assets/scripts/modal/ModalActions.d.ts +0 -19
  218. package/dist/types/assets/scripts/modal/ModalContent.d.ts +0 -14
  219. package/dist/types/assets/scripts/modal/ModalHeader.d.ts +0 -16
  220. package/dist/types/assets/scripts/modal/const/classNames.d.ts +0 -23
  221. package/dist/types/assets/scripts/modal/const/index.d.ts +0 -3
  222. package/dist/types/assets/scripts/modal/const/types.d.ts +0 -62
  223. package/dist/types/assets/scripts/modal/index.d.ts +0 -8
  224. package/dist/types/assets/scripts/modal/utils/contentUtils.d.ts +0 -11
  225. package/dist/types/assets/scripts/notification/FloatingNotification.d.ts +0 -25
  226. package/dist/types/assets/scripts/notification/FullWidthNotification.d.ts +0 -22
  227. package/dist/types/assets/scripts/notification/MessageNotification.d.ts +0 -23
  228. package/dist/types/assets/scripts/notification/Notification.d.ts +0 -22
  229. package/dist/types/assets/scripts/notification/const/classNames.d.ts +0 -44
  230. package/dist/types/assets/scripts/notification/const/icons.d.ts +0 -26
  231. package/dist/types/assets/scripts/notification/const/index.d.ts +0 -6
  232. package/dist/types/assets/scripts/notification/const/sizes.d.ts +0 -33
  233. package/dist/types/assets/scripts/notification/const/types.d.ts +0 -20
  234. package/dist/types/assets/scripts/notification/index.d.ts +0 -8
  235. package/dist/types/assets/scripts/notification/utils.d.ts +0 -9
  236. package/dist/types/assets/scripts/progress-bar/ProgressBar.d.ts +0 -68
  237. package/dist/types/assets/scripts/progress-bar/index.d.ts +0 -2
  238. package/dist/types/assets/scripts/selectBox.d.ts +0 -77
  239. package/dist/types/assets/scripts/shared/ButtonCloseX.d.ts +0 -6
  240. package/dist/types/assets/scripts/tab.d.ts +0 -8
  241. package/dist/types/assets/scripts/tag/Tag.d.ts +0 -28
  242. package/dist/types/assets/scripts/tag/const/classNames.d.ts +0 -12
  243. package/dist/types/assets/scripts/tag/const/index.d.ts +0 -4
  244. package/dist/types/assets/scripts/tag/const/sizes.d.ts +0 -8
  245. package/dist/types/assets/scripts/tag/const/types.d.ts +0 -34
  246. package/dist/types/assets/scripts/tag/index.d.ts +0 -4
  247. package/dist/types/assets/scripts/tooltip/Tooltip.d.ts +0 -55
  248. package/dist/types/assets/scripts/tooltip/TooltipLayerManager.d.ts +0 -22
  249. package/dist/types/assets/scripts/tooltip/const/classNames.d.ts +0 -18
  250. package/dist/types/assets/scripts/tooltip/const/constants.d.ts +0 -34
  251. package/dist/types/assets/scripts/tooltip/const/icons.d.ts +0 -5
  252. package/dist/types/assets/scripts/tooltip/const/index.d.ts +0 -6
  253. package/dist/types/assets/scripts/tooltip/const/templates.d.ts +0 -17
  254. package/dist/types/assets/scripts/tooltip/const/types.d.ts +0 -15
  255. package/dist/types/assets/scripts/tooltip/index.d.ts +0 -7
  256. package/dist/types/assets/scripts/tooltip/utils.d.ts +0 -3
  257. package/dist/types/assets/scripts/utils/unifiedBox/DOMRenderer.d.ts +0 -108
  258. package/dist/types/assets/scripts/utils/unifiedBox/DropdownModel.d.ts +0 -158
  259. package/dist/types/assets/scripts/utils/unifiedBox/UnifiedBoxController.d.ts +0 -171
  260. package/dist/types/assets/scripts/utils/unifiedBox/UnifiedBoxManager.d.ts +0 -99
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- Notification: true,
8
- FullWidthNotification: true,
9
- FloatingNotification: true,
10
- MessageNotification: true,
11
- SVG_ICONS: true,
12
- CLASS_NAMES: true,
13
- ICON_MAP: true,
14
- FLOATING_ICON_MAP: true,
15
- FULL_WIDTH_ICON_MAP: true
16
- };
17
- Object.defineProperty(exports, "CLASS_NAMES", {
18
- enumerable: true,
19
- get: function () {
20
- return _const.CLASS_NAMES;
21
- }
22
- });
23
- Object.defineProperty(exports, "FLOATING_ICON_MAP", {
24
- enumerable: true,
25
- get: function () {
26
- return _const.FLOATING_ICON_MAP;
27
- }
28
- });
29
- Object.defineProperty(exports, "FULL_WIDTH_ICON_MAP", {
30
- enumerable: true,
31
- get: function () {
32
- return _const.FULL_WIDTH_ICON_MAP;
33
- }
34
- });
35
- Object.defineProperty(exports, "FloatingNotification", {
36
- enumerable: true,
37
- get: function () {
38
- return _FloatingNotification.FloatingNotification;
39
- }
40
- });
41
- Object.defineProperty(exports, "FullWidthNotification", {
42
- enumerable: true,
43
- get: function () {
44
- return _FullWidthNotification.FullWidthNotification;
45
- }
46
- });
47
- Object.defineProperty(exports, "ICON_MAP", {
48
- enumerable: true,
49
- get: function () {
50
- return _const.ICON_MAP;
51
- }
52
- });
53
- Object.defineProperty(exports, "MessageNotification", {
54
- enumerable: true,
55
- get: function () {
56
- return _MessageNotification.MessageNotification;
57
- }
58
- });
59
- Object.defineProperty(exports, "Notification", {
60
- enumerable: true,
61
- get: function () {
62
- return _Notification.Notification;
63
- }
64
- });
65
- Object.defineProperty(exports, "SVG_ICONS", {
66
- enumerable: true,
67
- get: function () {
68
- return _const.SVG_ICONS;
69
- }
70
- });
71
- var _Notification = require("./Notification");
72
- var _FullWidthNotification = require("./FullWidthNotification");
73
- var _FloatingNotification = require("./FloatingNotification");
74
- var _MessageNotification = require("./MessageNotification");
75
- var _utils = require("./utils");
76
- Object.keys(_utils).forEach(function (key) {
77
- if (key === "default" || key === "__esModule") return;
78
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
79
- if (key in exports && exports[key] === _utils[key]) return;
80
- Object.defineProperty(exports, key, {
81
- enumerable: true,
82
- get: function () {
83
- return _utils[key];
84
- }
85
- });
86
- });
87
- var _const = require("./const");
88
- // 전역 등록 ( 추후 index.ts와 개별동작 할 수 있게끔 대비 )
89
- if (typeof window !== 'undefined') {
90
- window.ncua = window.ncua || {};
91
- window.ncua.Notification = Notification;
92
- }
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.bindNotificationEvents = bindNotificationEvents;
7
- exports.buildClassName = buildClassName;
8
- exports.createWrapperElement = createWrapperElement;
9
- exports.isMobile = void 0;
10
- exports.renderActions = renderActions;
11
- exports.renderSupportingText = renderSupportingText;
12
- exports.setupAutoClose = setupAutoClose;
13
- var _const = require("./const");
14
- var _breakpoint = require("../../../src/constant/breakpoint");
15
- // 공통 유틸리티 함수들
16
- function createWrapperElement(baseClass, color, className) {
17
- var wrapper = document.createElement('div');
18
- wrapper.className = buildClassName(baseClass, color, className);
19
- wrapper.setAttribute('role', 'alert');
20
- return wrapper;
21
- }
22
- function buildClassName(baseClass, color, className) {
23
- var classes = [baseClass, "".concat(baseClass, "--").concat(color)];
24
- if (className) {
25
- classes.push(className);
26
- }
27
- return classes.join(' ');
28
- }
29
- function renderSupportingText(supportingText, className, supportTextLink) {
30
- if (!supportingText) return '';
31
- if (supportTextLink) {
32
- return "<a href=\"".concat(supportTextLink, "\" class=\"ncua-full-width-notification__link\"><span class=\"").concat(className, "\">").concat(supportingText, "</span></a>");
33
- }
34
- return "<span class=\"".concat(className, "\">").concat(supportingText, "</span>");
35
- }
36
- function renderActions(actions, wrapperClass) {
37
- // 액션이 없으면 빈 문자열 반환
38
- if (!actions || actions.length === 0) {
39
- return '';
40
- }
41
- var buttonsHtml = actions.map(function (action) {
42
- var buttonHtml = "\n <button \n class=\"ncua-btn ncua-btn--sm ncua-btn--".concat(action.hierarchy || 'text', "\"\n data-action=\"").concat(action.label, "-").concat(action.hierarchy, "\"\n >\n ").concat(action.label, "\n </button>");
43
- return buttonHtml;
44
- }).join('');
45
- return "<div class=\"".concat(wrapperClass, "\">").concat(buttonsHtml, "</div>");
46
- }
47
- // 공통 이벤트 처리
48
- function bindNotificationEvents(element, actions, onClose, onRemove) {
49
- element.addEventListener('click', function (event) {
50
- var target = event.target;
51
- // 닫기 버튼 클릭 처리
52
- if (target.matches(".".concat(_const.CLASS_NAMES.FULL_WIDTH.CLOSE_BUTTON, ", .").concat(_const.CLASS_NAMES.FLOATING.CLOSE_BUTTON)) || target.closest(".".concat(_const.CLASS_NAMES.FULL_WIDTH.CLOSE_BUTTON, ", .").concat(_const.CLASS_NAMES.FLOATING.CLOSE_BUTTON)) || target.closest(".".concat(_const.CLASS_NAMES.MESSAGE.CLOSE_BUTTON))) {
53
- onClose === null || onClose === void 0 ? void 0 : onClose();
54
- onRemove === null || onRemove === void 0 ? void 0 : onRemove();
55
- return;
56
- }
57
- // 액션 버튼 클릭 처리
58
- var actionButton = target.closest('.ncua-btn[data-action]');
59
- if (actionButton && actions) {
60
- var actionData = actionButton.getAttribute('data-action');
61
- if (actionData) {
62
- var matchedAction = null;
63
- for (var _i = 0, actions_1 = actions; _i < actions_1.length; _i++) {
64
- var action = actions_1[_i];
65
- var expectedDataAction = "".concat(action.label, "-").concat(action.hierarchy || 'link');
66
- if (actionData === expectedDataAction) {
67
- matchedAction = action;
68
- break;
69
- }
70
- }
71
- if (matchedAction === null || matchedAction === void 0 ? void 0 : matchedAction.onClick) {
72
- matchedAction.onClick();
73
- }
74
- }
75
- }
76
- });
77
- }
78
- // 자동 닫기 설정
79
- function setupAutoClose(autoClose, onClose, onRemove) {
80
- if (autoClose > 0) {
81
- return window.setTimeout(function () {
82
- onClose === null || onClose === void 0 ? void 0 : onClose();
83
- onRemove === null || onRemove === void 0 ? void 0 : onRemove();
84
- }, autoClose);
85
- }
86
- return undefined;
87
- }
88
- // Mobile detection utility
89
- var isMobile = function () {
90
- return window.innerWidth <= parseInt(_breakpoint.BREAKPOINT.mobile);
91
- };
92
- exports.isMobile = isMobile;
@@ -1,272 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ProgressBar = void 0;
7
- /**
8
- * ProgressBar 클래스
9
- * 프로그레스 바를 생성하고 관리하는 역할을 합니다.
10
- */
11
- var __assign = void 0 && (void 0).__assign || function () {
12
- __assign = Object.assign || function (t) {
13
- for (var s, i = 1, n = arguments.length; i < n; i++) {
14
- s = arguments[i];
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
16
- }
17
- return t;
18
- };
19
- return __assign.apply(this, arguments);
20
- };
21
- /**
22
- * 값을 0-100 범위로 제한
23
- */
24
- function clampValue(value) {
25
- return Math.min(Math.max(0, value), 100);
26
- }
27
- /**
28
- * 색상 이름을 fill 색상 클래스명으로 변환
29
- */
30
- function getFillColorClass(color) {
31
- if (!color) return '';
32
- var normalizedColor = color.toLowerCase().trim();
33
- return "ncua-progress-bar__fill--color-".concat(normalizedColor);
34
- }
35
- /**
36
- * 색상 이름을 label 색상 클래스명으로 변환
37
- */
38
- function getLabelColorClass(color) {
39
- if (!color) return '';
40
- var normalizedColor = color.toLowerCase().trim();
41
- return "ncua-progress-bar__label--color-".concat(normalizedColor);
42
- }
43
- /**
44
- * ProgressBar 클래스
45
- */
46
- var ProgressBar = exports.ProgressBar = /** @class */function () {
47
- function ProgressBar(options) {
48
- if (options === void 0) {
49
- options = {};
50
- }
51
- this.element = null;
52
- this.options = __assign({
53
- showZeroLabel: false,
54
- valueToPercent: true
55
- }, options);
56
- }
57
- /**
58
- * segments 처리 로직
59
- */
60
- ProgressBar.prototype.processSegments = function () {
61
- var _a;
62
- var _b = this.options,
63
- segments = _b.segments,
64
- label = _b.label,
65
- valueToPercent = _b.valueToPercent;
66
- var hasSegments = Boolean(segments && segments.length > 0);
67
- var segmentCount = (_a = segments === null || segments === void 0 ? void 0 : segments.length) !== null && _a !== void 0 ? _a : 0;
68
- if (hasSegments) {
69
- // segment가 2개 이상일 때만 valueToPercent 적용 (기본값: true)
70
- var shouldApplyValueToPercent = segmentCount >= 2 && valueToPercent !== false;
71
- var segmentsToProcess = segments;
72
- // valueToPercent 적용: segments의 합계를 100%로 규정하고 비율로 계산
73
- if (shouldApplyValueToPercent) {
74
- // 원본 값들의 합계 계산
75
- var originalTotal_1 = segmentsToProcess.reduce(function (sum, seg) {
76
- return sum + seg.value;
77
- }, 0);
78
- if (originalTotal_1 > 0) {
79
- // 각 segment를 합계 대비 비율로 변환 (합계를 100%로 규정)
80
- segmentsToProcess = segmentsToProcess.map(function (segment) {
81
- return {
82
- value: segment.value / originalTotal_1 * 100,
83
- color: segment.color
84
- };
85
- });
86
- }
87
- }
88
- // 각 값 제한 (0-100 범위)
89
- var limitedSegments = segmentsToProcess.map(function (segment) {
90
- return {
91
- value: clampValue(segment.value),
92
- color: segment.color
93
- };
94
- });
95
- // 전체 합계 계산
96
- var actualTotal_1 = limitedSegments.reduce(function (sum, seg) {
97
- return sum + seg.value;
98
- }, 0);
99
- var total_1 = Math.min(actualTotal_1, 100);
100
- // 모든 segments를 좌측에서부터 연속적으로 배치 (비율로 계산)
101
- var processed = limitedSegments.map(function (segment) {
102
- return __assign(__assign({}, segment), {
103
- width: actualTotal_1 > 0 ? segment.value / actualTotal_1 * total_1 : 0
104
- });
105
- });
106
- // segment의 개수가 2이상일때는 bottom 라벨로 고정
107
- var effectiveLabel = segmentCount >= 2 ? 'bottom' : label;
108
- // floating label 스타일
109
- var progressValueStyle = effectiveLabel === 'top-float' || effectiveLabel === 'bottom-float' ? {
110
- '--progress-value': "".concat(total_1, "%")
111
- } : undefined;
112
- return {
113
- totalValue: total_1,
114
- displayValue: "".concat(total_1.toFixed(0), "%"),
115
- processedSegments: processed,
116
- effectiveLabel: effectiveLabel,
117
- progressValueStyle: progressValueStyle
118
- };
119
- }
120
- // value만 있을 때는 valueToPercent 무시 (이미 퍼센트로 간주)
121
- if (this.options.value !== undefined) {
122
- var clamped = clampValue(this.options.value);
123
- var effectiveLabel = label;
124
- var progressValueStyle = effectiveLabel === 'top-float' || effectiveLabel === 'bottom-float' ? {
125
- '--progress-value': "".concat(clamped, "%")
126
- } : undefined;
127
- return {
128
- totalValue: clamped,
129
- displayValue: "".concat(clamped.toFixed(0), "%"),
130
- processedSegments: [],
131
- effectiveLabel: effectiveLabel,
132
- progressValueStyle: progressValueStyle
133
- };
134
- }
135
- return {
136
- totalValue: 0,
137
- displayValue: '0%',
138
- processedSegments: [],
139
- effectiveLabel: label,
140
- progressValueStyle: undefined
141
- };
142
- };
143
- /**
144
- * 단일 라벨 HTML 생성
145
- */
146
- ProgressBar.prototype.renderSingleLabel = function (labelType, displayValue, totalValue) {
147
- // 0%이고 showZeroLabel이 false면 라벨 표시하지 않음
148
- if (totalValue === 0 && !this.options.showZeroLabel) {
149
- return '';
150
- }
151
- return "<span class=\"ncua-progress-bar__label ncua-progress-bar__label-".concat(labelType, "\">").concat(displayValue, "</span>");
152
- };
153
- /**
154
- * segments 라벨 HTML 생성
155
- */
156
- ProgressBar.prototype.renderSegmentLabels = function (segments, segmentCount) {
157
- var _this = this;
158
- if (segmentCount < 2) return '';
159
- var labels = [];
160
- segments.forEach(function (segment, index) {
161
- // 0%이고 showZeroLabel이 false면 라벨 표시하지 않음
162
- if (segment.value === 0 && !_this.options.showZeroLabel) {
163
- return;
164
- }
165
- var leftPosition = 0;
166
- for (var i = 0; i < index; i++) {
167
- leftPosition += segments[i].width;
168
- }
169
- // 0%일 때는 segment 시작 위치에 맞추되, 라벨이 게이지 바를 넘어가지 않도록 조정
170
- // 그 외에는 중앙에 정렬
171
- var isZero = segment.value === 0;
172
- // 0%일 때는 약간의 오프셋을 주어 자연스럽게 보이도록 함 (라벨 너비의 절반 정도)
173
- var labelPosition = isZero ? Math.max(0, leftPosition - 1) : leftPosition + segment.width / 2;
174
- var transform = isZero ? 'translateX(0)' : 'translateX(-50%)';
175
- var colorClass = getLabelColorClass(segment.color);
176
- labels.push("<span class=\"ncua-progress-bar__label ncua-progress-bar__label--segment ".concat(colorClass, "\" style=\"left: ").concat(labelPosition, "%; transform: ").concat(transform, ";\">").concat(segment.value.toFixed(0), "%</span>"));
177
- });
178
- return labels.length > 0 ? "<div class=\"ncua-progress-bar__labels--multiple\">".concat(labels.join(''), "</div>") : '';
179
- };
180
- /**
181
- * segment bar HTML 생성
182
- */
183
- ProgressBar.prototype.renderSegmentBar = function (segments) {
184
- var fills = [];
185
- segments.forEach(function (segment, index) {
186
- var classes = ['ncua-progress-bar__fill', index === 0 ? 'ncua-progress-bar__fill--first' : '', index === segments.length - 1 ? 'ncua-progress-bar__fill--last' : '', getFillColorClass(segment.color)].filter(Boolean).join(' ');
187
- fills.push("<div class=\"".concat(classes, "\" style=\"width: ").concat(segment.width, "%;\"></div>"));
188
- });
189
- return fills.join('');
190
- };
191
- /**
192
- * HTML 문자열 생성
193
- */
194
- ProgressBar.prototype.toHTML = function () {
195
- var _a, _b;
196
- var _c = this.processSegments(),
197
- totalValue = _c.totalValue,
198
- displayValue = _c.displayValue,
199
- processedSegments = _c.processedSegments,
200
- effectiveLabel = _c.effectiveLabel,
201
- progressValueStyle = _c.progressValueStyle;
202
- var hasSegments = Boolean(this.options.segments && this.options.segments.length > 0);
203
- var segmentCount = (_b = (_a = this.options.segments) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
204
- var isFloatingLabel = effectiveLabel === 'top-float' || effectiveLabel === 'bottom-float';
205
- // 스타일 문자열 생성
206
- var styleString = progressValueStyle ? "style=\"".concat(Object.entries(progressValueStyle).map(function (_a) {
207
- var key = _a[0],
208
- value = _a[1];
209
- return "".concat(key.replace(/([A-Z])/g, '-$1').toLowerCase(), ": ").concat(value);
210
- }).join('; '), "\"") : '';
211
- // segment가 1개이거나 value만 있을 때는 동일하게 처리 (단일 progress bar)
212
- var isSingleBar = segmentCount < 2; // segment가 0개 또는 1개일 때
213
- if (isSingleBar) {
214
- var fillColorClass = hasSegments && segmentCount === 1 ? getFillColorClass(processedSegments[0].color) : '';
215
- var floatingLabel_1 = isFloatingLabel ? this.renderSingleLabel(effectiveLabel, displayValue, totalValue) : '';
216
- var rightLabel_1 = effectiveLabel === 'right' ? this.renderSingleLabel('right', displayValue, totalValue) : '';
217
- var bottomLabel_1 = effectiveLabel === 'bottom' ? this.renderSingleLabel('bottom', displayValue, totalValue) : '';
218
- // 단일 progress bar일 때는 text-align: left를 위한 클래스 추가
219
- var singleSegmentClass = 'ncua-progress-bar--single-segment';
220
- return "<div class=\"ncua-progress-bar ncua-progress-bar-".concat(effectiveLabel || '', " ").concat(singleSegmentClass, "\" ").concat(styleString, ">\n ").concat(floatingLabel_1, "\n <div class=\"ncua-progress-bar__content\">\n <div class=\"ncua-progress-bar__bar\">\n <div class=\"ncua-progress-bar__fill ").concat(fillColorClass, "\" style=\"width: ").concat(totalValue, "%;\" aria-valuenow=\"").concat(totalValue, "\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n ").concat(rightLabel_1, "\n </div>\n ").concat(bottomLabel_1, "\n</div>");
221
- }
222
- // 일반 케이스
223
- var floatingLabel = isFloatingLabel ? this.renderSingleLabel(effectiveLabel, displayValue, totalValue) : '';
224
- var rightLabel = effectiveLabel === 'right' ? this.renderSingleLabel('right', displayValue, totalValue) : '';
225
- var bottomLabel = effectiveLabel === 'bottom' ? this.renderSingleLabel('bottom', displayValue, totalValue) : '';
226
- var segmentLabels = hasSegments && segmentCount >= 2 ? this.renderSegmentLabels(processedSegments, segmentCount) : '';
227
- var segmentBar = hasSegments ? this.renderSegmentBar(processedSegments) : "<div class=\"ncua-progress-bar__fill\" style=\"width: ".concat(totalValue, "%;\" aria-valuenow=\"").concat(totalValue, "\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>");
228
- var segmentsClass = hasSegments ? 'ncua-progress-bar__bar--segments' : '';
229
- return "<div class=\"ncua-progress-bar ncua-progress-bar-".concat(effectiveLabel || '', "\" ").concat(styleString, ">\n ").concat(floatingLabel, "\n <div class=\"ncua-progress-bar__content\">\n <div class=\"ncua-progress-bar__bar ").concat(segmentsClass, "\">\n ").concat(segmentBar, "\n </div>\n ").concat(rightLabel, "\n </div>\n ").concat(hasSegments && segmentCount >= 2 ? segmentLabels : bottomLabel, "\n</div>");
230
- };
231
- /**
232
- * DOM 요소 생성
233
- */
234
- ProgressBar.prototype.toElement = function () {
235
- var div = document.createElement('div');
236
- div.innerHTML = this.toHTML();
237
- this.element = div.firstElementChild;
238
- return this.element;
239
- };
240
- /**
241
- * 요소 반환
242
- */
243
- ProgressBar.prototype.getElement = function () {
244
- return this.toElement();
245
- };
246
- /**
247
- * 옵션 업데이트
248
- */
249
- ProgressBar.prototype.updateOptions = function (newOptions) {
250
- this.options = __assign(__assign({}, this.options), newOptions);
251
- if (this.element) {
252
- var newElement = this.toElement();
253
- if (this.element.parentNode) {
254
- this.element.parentNode.replaceChild(newElement, this.element);
255
- }
256
- this.element = newElement;
257
- }
258
- };
259
- /**
260
- * Static factory method
261
- */
262
- ProgressBar.create = function (options) {
263
- return new ProgressBar(options);
264
- };
265
- /**
266
- * Static method: HTML 문자열 생성
267
- */
268
- ProgressBar.toHTML = function (options) {
269
- return new ProgressBar(options).toHTML();
270
- };
271
- return ProgressBar;
272
- }();
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "ProgressBar", {
7
- enumerable: true,
8
- get: function () {
9
- return _ProgressBar.ProgressBar;
10
- }
11
- });
12
- var _ProgressBar = require("./ProgressBar");