@g1cloud/bluesea 5.0.0-alpha.3 → 5.0.0-alpha.30

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 (144) hide show
  1. package/css/bluesea-base.scss +2 -0
  2. package/css/component.scss +165 -11
  3. package/css/frame/default.scss +96 -25
  4. package/css/layout.scss +70 -5
  5. package/css/reset.scss +1 -1
  6. package/css/transition.scss +83 -0
  7. package/css/user-text.scss +87 -0
  8. package/css/utility.scss +604 -39
  9. package/css/variable.scss +105 -20
  10. package/dist/AddressSearchModal-BbaNu4sg.js +130 -0
  11. package/dist/BSAlertModal-XmbVKMaq.js +47 -0
  12. package/dist/BSYesNoModal-D8dxoen3.js +56 -0
  13. package/dist/bluesea.js +137 -3224
  14. package/dist/bluesea.umd.cjs +32766 -2346
  15. package/dist/component/basic/BSButton.vue.d.ts +42 -0
  16. package/dist/component/basic/BSConsole.vue.d.ts +36 -0
  17. package/dist/component/basic/BSImage.vue.d.ts +44 -0
  18. package/dist/component/basic/BSLink.vue.d.ts +17 -0
  19. package/dist/component/{grid/BSGridPageNavigation.vue.d.ts → basic/BSPageNavigation.vue.d.ts} +6 -5
  20. package/dist/component/basic/BSPopup.vue.d.ts +1 -1
  21. package/dist/component/basic/BSPopupButton.vue.d.ts +28 -0
  22. package/dist/component/basic/BSProgressBar.vue.d.ts +33 -0
  23. package/dist/component/global/AddressSearchList.gen.d.ts +4 -0
  24. package/dist/component/global/AddressSearchModal.vue.d.ts +21 -0
  25. package/dist/component/global/BSAddressInput.vue.d.ts +73 -0
  26. package/dist/component/global/BSLocaleSelect.vue.d.ts +6 -0
  27. package/dist/component/global/BSNameInput.vue.d.ts +61 -0
  28. package/dist/component/global/BSTelInput.vue.d.ts +52 -0
  29. package/dist/component/grid/BSDateRangeFilter.vue.d.ts +16 -15
  30. package/dist/component/grid/BSDateRangeFilters.vue.d.ts +5 -4
  31. package/dist/component/grid/BSGrid.vue.d.ts +68 -26
  32. package/dist/component/grid/BSGridCell.vue.d.ts +33 -14
  33. package/dist/component/grid/{BSGridCheckboxCell.vue.d.ts → BSGridCellCheckbox.vue.d.ts} +3 -3
  34. package/dist/component/grid/BSGridCellEdit.vue.d.ts +19 -0
  35. package/dist/component/grid/BSGridCellSerialNo.vue.d.ts +15 -0
  36. package/dist/component/grid/BSGridControl.vue.d.ts +25 -8
  37. package/dist/component/grid/BSGridHeaderCell.vue.d.ts +17 -4
  38. package/dist/component/grid/{BSGridCheckboxHeaderCell.vue.d.ts → BSGridHeaderCellCheckbox.vue.d.ts} +3 -3
  39. package/dist/component/grid/BSGridHeaderCellSerialNo.vue.d.ts +2 -0
  40. package/dist/component/grid/BSGridLookup.vue.d.ts +11 -6
  41. package/dist/component/grid/BSGridRow.vue.d.ts +106 -0
  42. package/dist/component/grid/BSTextFilter.vue.d.ts +9 -10
  43. package/dist/component/grid/GridLib.d.ts +11 -1
  44. package/dist/component/grid/GridModel.d.ts +214 -3
  45. package/dist/component/input/BSCheckbox.vue.d.ts +12 -6
  46. package/dist/component/input/BSCheckboxGroup.vue.d.ts +31 -10
  47. package/dist/component/input/BSDateInput.vue.d.ts +24 -14
  48. package/dist/component/input/BSDateRange.vue.d.ts +81 -0
  49. package/dist/component/input/BSImageUpload.vue.d.ts +88 -0
  50. package/dist/component/input/BSMultiImageUpload.vue.d.ts +82 -0
  51. package/dist/component/input/BSMultiSelect.vue.d.ts +37 -13
  52. package/dist/component/input/BSNumberInput.vue.d.ts +41 -8
  53. package/dist/component/input/BSPopupSelect.vue.d.ts +48 -0
  54. package/dist/component/input/BSPriceInput.vue.d.ts +87 -0
  55. package/dist/component/input/BSRadioButton.vue.d.ts +27 -22
  56. package/dist/component/input/BSRadioButtonGroup.vue.d.ts +41 -13
  57. package/dist/component/input/BSSelect.vue.d.ts +38 -13
  58. package/dist/component/input/BSSelectPopup.vue.d.ts +18 -13
  59. package/dist/component/input/BSTextArea.vue.d.ts +31 -8
  60. package/dist/component/input/BSTextInput.vue.d.ts +40 -10
  61. package/dist/component/input/BSTreeSelect.vue.d.ts +24 -13
  62. package/dist/component/input/BSYesNoGroup.vue.d.ts +49 -0
  63. package/dist/component/input/BSYesNoSelect.vue.d.ts +37 -0
  64. package/dist/component/input/DateInputLib.d.ts +23 -0
  65. package/dist/component/input/ImageUploadModel.d.ts +9 -0
  66. package/dist/component/input/ValidationErrors.vue.d.ts +17 -0
  67. package/dist/component/layout/BSCardLayout.vue.d.ts +24 -0
  68. package/dist/component/layout/BSListControl.vue.d.ts +52 -0
  69. package/dist/component/layout/BSListLayout.vue.d.ts +46 -13
  70. package/dist/component/layout/BSListLayoutItem.vue.d.ts +43 -10
  71. package/dist/component/layout/BSTabSheet.vue.d.ts +11 -4
  72. package/dist/component/layout/SlideDownTransition.vue.d.ts +9 -0
  73. package/dist/component/layout/TabSheetModel.d.ts +17 -1
  74. package/dist/component/multilang/BSMultiLangExpandButton.vue.d.ts +2 -0
  75. package/dist/component/multilang/BSMultiLangImageUpload.vue.d.ts +80 -0
  76. package/dist/component/multilang/BSMultiLangRichText.vue.d.ts +86 -0
  77. package/dist/component/multilang/BSMultiLangTextArea.vue.d.ts +29 -11
  78. package/dist/component/multilang/BSMultiLangTextInput.vue.d.ts +29 -11
  79. package/dist/component/multilang/multiLangLib.d.ts +2 -0
  80. package/dist/component/richtext/BSRichText.vue.d.ts +56 -0
  81. package/dist/component/richtext/RichTextToolbar.vue.d.ts +19 -0
  82. package/dist/component/richtext/ToolButtonColor.vue.d.ts +19 -0
  83. package/dist/component/richtext/ToolButtonFontSize.vue.d.ts +19 -0
  84. package/dist/component/tree/BSTree.vue.d.ts +46 -18
  85. package/dist/component/tree/BSTreeControl.vue.d.ts +61 -0
  86. package/dist/component/tree/BSTreeRow.vue.d.ts +43 -18
  87. package/dist/component/tree/TreeLib.d.ts +1 -1
  88. package/dist/component/tree/TreeModel.d.ts +70 -0
  89. package/dist/component/tree/vTreeDndSupport.d.ts +11 -0
  90. package/dist/config/config.d.ts +19 -9
  91. package/dist/contextmenu/BSContextMenu.vue.d.ts +9 -4
  92. package/dist/contextmenu/BSContextMenuContainer.vue.d.ts +1 -1
  93. package/dist/contextmenu/contextMenuPlugin.d.ts +4 -3
  94. package/dist/directive/vClickOutside.d.ts +2 -1
  95. package/dist/directive/vFocusOnLoad.d.ts +6 -0
  96. package/dist/directive/vT.d.ts +5 -1
  97. package/dist/frame/FrameModel.d.ts +35 -6
  98. package/dist/frame/default/DefaultBody.vue.d.ts +1 -1
  99. package/dist/frame/default/DefaultFrameModel.d.ts +46 -10
  100. package/dist/frame/default/DefaultHeader.vue.d.ts +9 -1
  101. package/dist/frame/default/HeaderTab.vue.d.ts +4 -3
  102. package/dist/frame/default/HeaderTabs.vue.d.ts +1 -1
  103. package/dist/frame/default/SideBarMenuSearch.vue.d.ts +30 -0
  104. package/dist/frame/default/SidebarMenu.vue.d.ts +1 -1
  105. package/dist/frame/default/SidebarMenuItem.vue.d.ts +13 -6
  106. package/dist/frame/default/SidebarMenuLink.vue.d.ts +15 -8
  107. package/dist/index-CnisA3u1.js +33417 -0
  108. package/dist/index.d.ts +85 -42
  109. package/dist/modal/BSAlertModal.vue.d.ts +23 -0
  110. package/dist/modal/BSModalContainer.vue.d.ts +1 -1
  111. package/dist/modal/BSModalFrame.vue.d.ts +6 -4
  112. package/dist/modal/BSModalWrapper.vue.d.ts +4 -3
  113. package/dist/modal/BSYesNoModal.vue.d.ts +25 -0
  114. package/dist/modal/modalPlugin.d.ts +10 -4
  115. package/dist/model/CommonTypes.d.ts +68 -11
  116. package/dist/model/DefaultImpl.d.ts +8 -0
  117. package/dist/model/FilterModel.d.ts +24 -14
  118. package/dist/model/PaginatedList.d.ts +29 -0
  119. package/dist/model/SearchModel.d.ts +13 -7
  120. package/dist/notification/BSAlarmFrame.vue.d.ts +26 -0
  121. package/dist/notification/BSNotificationContainer.vue.d.ts +2 -0
  122. package/dist/notification/notificationPlugin.d.ts +32 -0
  123. package/dist/savepoint/SavePoint.d.ts +39 -0
  124. package/dist/style.css +32559 -1570
  125. package/dist/text/texts.d.ts +20 -4
  126. package/dist/util/alertUtil.d.ts +1 -0
  127. package/dist/util/componentUtil.d.ts +3 -0
  128. package/dist/util/debounce.d.ts +1 -0
  129. package/dist/util/elementUtil.d.ts +24 -0
  130. package/dist/util/formatUtil.d.ts +17 -3
  131. package/dist/util/langUtil.d.ts +3 -0
  132. package/dist/util/multiLangUtil.d.ts +15 -0
  133. package/dist/util/routeUtil.d.ts +2 -1
  134. package/dist/validator/FieldValidator.d.ts +26 -8
  135. package/dist/validator/FormValidator.d.ts +21 -0
  136. package/package.json +33 -18
  137. package/text/bluesea_text_en.json +678 -0
  138. package/text/bluesea_text_ja.json +678 -0
  139. package/text/bluesea_text_ko.json +678 -0
  140. package/text/bluesea_text_zh.json +678 -0
  141. package/dist/component/BSButton.vue.d.ts +0 -15
  142. package/dist/component/input/BSSelectModel.d.ts +0 -0
  143. package/dist/component/input/InternalDateInput.vue.d.ts +0 -52
  144. package/dist/frame/default/HeaderLogo.vue.d.ts +0 -2
@@ -2,4 +2,6 @@
2
2
  @import "./font";
3
3
  @import "./utility";
4
4
  @import "./layout";
5
+ @import "./transition";
5
6
  @import "./frame/default";
7
+ @import "./user-text";
@@ -14,12 +14,11 @@
14
14
  }
15
15
 
16
16
  .bs-box-component-base {
17
- border: 1px solid $color-border-light;
18
- border-radius: 4px;
19
- height: 28px;
17
+ height: 26px;
20
18
  display: inline-flex;
21
19
  align-items: center;
22
20
  justify-content: left;
21
+ background-color: white;
23
22
  }
24
23
 
25
24
  // input component
@@ -29,33 +28,93 @@
29
28
 
30
29
  .bs-input-base {
31
30
  @extend .bs-box-component-base;
31
+ border: 1px solid $color-border;
32
+ border-radius: 2px;
33
+ background-color: $white;
32
34
 
33
- input {
35
+ > input {
34
36
  border: 0;
37
+ border-radius: 0;
35
38
  outline: 0;
36
39
  align-self: stretch;
37
40
  flex-grow: 1;
38
- padding: 0 8px;
41
+ padding: 0 6px;
39
42
  background-color: transparent;
40
43
  width: 100%;
41
44
  }
42
45
 
43
- textarea {
46
+ > textarea {
44
47
  border: 0;
45
48
  border-radius: 4px;
46
49
  outline: 0;
47
50
  align-self: stretch;
48
51
  flex-grow: 1;
49
- padding: 8px;
52
+ padding: 6px;
50
53
  line-height: 1.4;
51
54
  font-family: sans-serif;
52
55
  }
53
56
 
57
+ > .suffix,
58
+ .prefix {
59
+ font-size: 0.9em;
60
+ margin-right: 4px;
61
+ background-color: $gray-200;
62
+ padding: 2px 4px;
63
+ border-radius: 2px;
64
+ line-height: 1;
65
+
66
+ &:first-child {
67
+ margin-left: 4px;
68
+ }
69
+ }
70
+
71
+ &:hover {
72
+ border-color: $black;
73
+ }
74
+
54
75
  &:has(:focus) {
55
76
  border-color: $color-focus;
77
+ border-width: 1px;
78
+ }
79
+ }
80
+
81
+ .bs-text-input,
82
+ .bs-number-input,
83
+ .bs-price-input,
84
+ .bs-date-input,
85
+ .bs-date-range,
86
+ .bs-multi-lang-text-input,
87
+ .bs-text-area,
88
+ .bs-rich-text {
89
+ &.modified {
90
+ .input-area {
91
+ border-color: $purple !important;
92
+ }
93
+ }
94
+
95
+ &.error {
96
+ .input-area {
97
+ border-color: $danger !important;
98
+
99
+ > input {
100
+ color: $danger !important;
101
+ }
102
+ }
103
+ }
104
+
105
+ &.disabled {
106
+ .input-area {
107
+ border-color: $gray-400 !important;
108
+ background-color: $gray-100 !important;
109
+
110
+ > input {
111
+ color: $gray-400 !important;
112
+ }
113
+ }
56
114
  }
57
115
  }
58
116
 
117
+
59
118
  // checkbox, radio-button component
60
119
  .bs-checkbox-base {
61
120
  display: inline-block;
@@ -74,9 +133,52 @@
74
133
  color: $color-text;
75
134
  }
76
135
 
136
+ &:hover {
137
+ color: $black;
138
+
139
+ & ~ label {
140
+ color: $black;
141
+ }
142
+ }
143
+
77
144
  &:focus::before {
78
145
  color: $color-focus;
79
146
  }
147
+
148
+ &:focus ~ label {
149
+ color: $color-focus;
150
+ }
151
+
152
+ }
153
+
154
+ &.modified {
155
+ & input::before {
156
+ color: $purple !important;
157
+ }
158
+
159
+ & input ~ label {
160
+ color: $purple !important;
161
+ }
162
+ }
163
+
164
+ &.error {
165
+ & input::before {
166
+ color: $danger !important;
167
+ }
168
+
169
+ & input ~ label {
170
+ color: $danger !important;
171
+ }
172
+ }
173
+
174
+ &.disabled {
175
+ & input::before {
176
+ color: $gray-400 !important;
177
+ }
178
+
179
+ & input ~ label {
180
+ color: $gray-400 !important;
181
+ }
80
182
  }
81
183
 
82
184
  label {
@@ -87,11 +189,39 @@
87
189
  }
88
190
  }
89
191
 
192
+ .bs-checkbox-group,
193
+ .bs-radio-button-group {
194
+ &.modified {
195
+ input::before {
196
+ color: $purple !important;
197
+ }
198
+
199
+ input ~ label {
200
+ color: $purple !important;
201
+ }
202
+ }
203
+
204
+ &.error {
205
+ input::before {
206
+ color: $danger !important;
207
+ }
208
+
209
+ input ~ label {
210
+ color: $danger !important;
211
+ }
212
+ }
213
+ }
214
+
90
215
  // select, multi-select, tree-select
91
216
  .bs-select-wrap {
92
217
  @extend .bs-box-component-wrap;
93
218
  position: relative;
94
219
  outline: 0;
220
+ background-color: $white;
221
+
222
+ &:hover > .selected {
223
+ border-color: $black;
224
+ }
95
225
 
96
226
  &:focus > .selected {
97
227
  border-color: $color-focus;
@@ -99,7 +229,9 @@
99
229
 
100
230
  .selected {
101
231
  @extend .bs-box-component-base;
102
- padding: 0 8px;
232
+ border: 1px solid $color-border;
233
+ border-radius: 2px;
234
+ padding: 0 6px;
103
235
  min-width: 50px;
104
236
  cursor: pointer;
105
237
  display: flex;
@@ -107,6 +239,10 @@
107
239
  .label {
108
240
  flex-grow: 1;
109
241
  white-space: nowrap;
242
+
243
+ &.placeholder {
244
+ color: $color-gray;
245
+ }
110
246
  }
111
247
 
112
248
  .dropdown-btn {
@@ -121,6 +257,21 @@
121
257
  &.popup-open .dropdown-btn {
122
258
  transform: rotate(180deg);
123
259
  }
260
+
261
+ &.modified > .selected {
262
+ border-color: $purple !important;
263
+ }
264
+
265
+ &.error > .selected {
266
+ border-color: $danger !important;
267
+ color: $danger !important;
268
+ }
269
+
270
+ &.disabled > .selected {
271
+ border-color: $gray-400 !important;
272
+ background-color: $gray-100 !important;
273
+ color: $gray-400 !important;
274
+ }
124
275
  }
125
276
 
126
277
  // field error
@@ -155,10 +306,14 @@
155
306
  .font-icon {
156
307
  font-family: $icon-font-family;
157
308
  font-size: 1rem;
309
+ max-width: 1em;
310
+
311
+ &.filled {
312
+ font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 48;
313
+ }
158
314
  }
159
315
 
160
316
  // transition
161
-
162
317
  .fade-enter-active,
163
318
  .fade-leave-active {
164
319
  transition: opacity .3s;
@@ -167,5 +322,4 @@
167
322
  .fade-enter,
168
323
  .fade-leave-to {
169
324
  opacity: 0;
170
- }
171
-
325
+ }
@@ -1,7 +1,7 @@
1
1
  @import "../variable";
2
2
  @import "../component";
3
3
 
4
- $color-header-bg: #464854 !default;
4
+ $color-header-bg: $primary !default;
5
5
  $color-header-text: #FFFFFF !default;
6
6
  $color-menu-bg: #464854 !default;
7
7
  $color-menu-border: #2D2E36;
@@ -16,33 +16,56 @@ header.default-header {
16
16
  position: fixed;
17
17
  width: 100%;
18
18
  top: 0;
19
- z-index: 100;
19
+ z-index: 200;
20
20
 
21
21
  .header-logo {
22
22
  @extend .bs-clickable;
23
+ display: flex;
24
+ flex-shrink: 0;
25
+ align-items: center;
23
26
  color: $color-header-text;
24
- font-size: 20px;
25
- font-weight: bold;
26
- margin-bottom: -2px;
27
+ font-size: 1.2307em;
28
+ font-weight: 500;
29
+ line-height: 1;
30
+
31
+ em {
32
+ display: inline-flex;
33
+ align-items: center;
34
+ margin-right: 6px;
35
+ padding: 2px 4px;
36
+ border-radius: 4px;
37
+ background-color: $white;
38
+ color: $primary-600;
39
+ font-size: 1em;
40
+ font-weight: 700;
41
+ }
27
42
  }
28
43
 
29
44
  .sidebar-menu {
45
+ width: 48px;
30
46
  align-self: stretch;
31
47
 
32
48
  .menu-btn {
33
49
  @extend .bs-clickable;
34
- font-size: 28px;
50
+ font-size: 1.375rem;
51
+ display: inline-flex;
52
+ align-items: center;
53
+ justify-content: center;
54
+ width: 32px;
35
55
  height: $header-height;
56
+ max-width: $header-height;
36
57
  line-height: $header-height;
37
58
  color: $color-header-text;
38
- padding: 0 8px;
59
+ margin-left: 8px;
39
60
  }
40
61
 
41
62
  .menu-container {
42
63
  position: absolute;
43
64
  background-color: $color-menu-bg;
44
65
  height: calc(100vh - $header-height);
45
- min-width: 200px;
66
+ min-width: 220px;
67
+ overflow: auto;
68
+ padding-bottom: 100px;
46
69
  }
47
70
 
48
71
  .sidebar-menu-item {
@@ -51,25 +74,55 @@ header.default-header {
51
74
 
52
75
  a.sidebar-menu-link, div.sidebar-menu-link {
53
76
  @extend .bs-clickable;
54
- display: block;
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: space-between;
55
80
  padding: 12px 16px;
56
- color: $color-header-text;
81
+ color: $gray-400;
57
82
  text-decoration: none;
83
+
84
+ .font-icon {
85
+ font-size: .8rem;
86
+ }
58
87
  }
59
88
 
60
89
  .sidebar-submenu {
61
- padding: 8px 24px 8px 8px;
90
+ padding: 8px 16px 8px 8px;
62
91
  background-color: $color-menu-border;
63
92
 
64
- a.sidebar-menu-link, div.sidebar-menu-link {
65
- padding: 8px 16px;
93
+ > a.sidebar-menu-link, > div.sidebar-menu-link {
94
+ position: relative;
95
+ display: flex;
96
+ align-items: center;
97
+ justify-content: space-between;
98
+ padding: 8px 0 8px 20px;
99
+
100
+ &:before {
101
+ content: "";
102
+ position: absolute;
103
+ top: 50%;
104
+ left: 8px;
105
+ display: block;
106
+ width: 2px;
107
+ height: 2px;
108
+ background-color: $gray-400;
109
+ }
110
+
111
+ .font-icon {
112
+ margin-left: 8px;
113
+ font-size: .8rem;
114
+
115
+ &.filled {
116
+ color: $secondary;
117
+ }
118
+ }
66
119
  }
67
120
  }
68
121
  }
69
122
  }
70
123
 
71
124
  .header-tabs {
72
- margin: 0 12px;
125
+ margin: 0 16px;
73
126
  display: flex;
74
127
  align-items: end;
75
128
  gap: 1px;
@@ -77,7 +130,7 @@ header.default-header {
77
130
  align-self: end;
78
131
 
79
132
  .header-tab {
80
- background-color: #747787;
133
+ background-color: $primary-400;
81
134
  padding: 0 12px;
82
135
  height: 32px;
83
136
  border-top-left-radius: 4px;
@@ -86,39 +139,41 @@ header.default-header {
86
139
  align-items: center;
87
140
  flex-grow: 1;
88
141
  position: relative;
89
- max-width: 160px;
90
- min-width: 100px;
142
+ max-width: 180px;
143
+ min-width: 110px;
91
144
  color: $color-header-text;
145
+ cursor: pointer;
92
146
 
93
147
  .header-title {
94
148
  padding-right: 6px;
95
- flex-grow: 1;
96
149
  width: 50px;
97
- flex-basis: 80px;
150
+ flex-basis: 160px;
98
151
  overflow: hidden;
99
- text-overflow: ellipsis;
100
152
  white-space: nowrap;
101
- cursor: default;
153
+ mask-image: linear-gradient(to right, #000 85%, transparent 95%);
102
154
  }
103
155
 
104
156
  .close-btn {
105
157
  @extend .bs-clickable;
106
158
  right: 4px;
107
- padding: 4px;
108
- border-radius: 4px;
109
159
  display: none;
110
- margin-right: -8px;
111
160
  }
112
161
 
113
162
  &:hover {
114
163
  .close-btn {
115
164
  display: block;
116
165
  }
166
+
167
+ background-color: lighten($primary-400, 5%);
117
168
  }
118
169
 
119
170
  &.selected {
120
171
  color: $color-text;
121
- background-color: white; //#E5E5E5;
172
+ background-color: $white;
173
+
174
+ &:hover {
175
+ background-color: $white;
176
+ }
122
177
  }
123
178
  }
124
179
  }
@@ -131,6 +186,22 @@ header.default-header {
131
186
  .body-tab:has(>div.h-full) {
132
187
  height: calc(100vh - $header-height);
133
188
  }
189
+
190
+ .fixed-header {
191
+ position: fixed;
192
+ width: 100%;
193
+ border-bottom: 1px solid $gray-400;
194
+ background-color: white;
195
+ padding: 8px 16px;
196
+ z-index: 10;
197
+ }
198
+
199
+ .bg-full {
200
+ min-height: calc(100vh - $header-height);
201
+ padding-top: 43px;
202
+ padding-bottom: 80px;
203
+ background-color: $primary-100;
204
+ }
134
205
  }
135
206
 
136
207
  .menu-slide-enter-active,
package/css/layout.scss CHANGED
@@ -7,11 +7,21 @@
7
7
  flex-direction: row;
8
8
  }
9
9
 
10
+ .flex-row-inline {
11
+ display: inline-flex;
12
+ flex-direction: row;
13
+ }
14
+
10
15
  .flex-column {
11
16
  display: flex;
12
17
  flex-direction: column;
13
18
  }
14
19
 
20
+ .flex-column-inline {
21
+ display: inline-flex;
22
+ flex-direction: column;
23
+ }
24
+
15
25
  .flex-wrap {
16
26
  flex-wrap: wrap;
17
27
  }
@@ -70,6 +80,10 @@
70
80
  @extend .flex-wrap;
71
81
  }
72
82
 
83
+ .bs-layout-horizontal-inline {
84
+ @extend .flex-row-inline;
85
+ }
86
+
73
87
  .bs-layout-vertical {
74
88
  @extend .flex-column;
75
89
 
@@ -83,24 +97,45 @@
83
97
  @extend .flex-wrap;
84
98
  }
85
99
 
100
+ .bs-layout-vertical-inline {
101
+ @extend .flex-column-inline;
102
+ }
103
+
86
104
  .bs-layout-form {
87
105
 
106
+ border-bottom: 1px solid $gray-200;
107
+
88
108
  > div {
89
109
  display: flex;
90
110
  align-items: center;
91
- border-bottom: 0.8px solid $color-border-light;
92
111
 
93
112
  > .title {
94
- padding: 8px 8px 8px 0;
95
- width: 10em;
96
- font-weight: 500;
113
+ padding: 8px 16px;
114
+ width: 12.3076em;
97
115
  line-height: 1.2em;
116
+ color: $black;
98
117
  }
99
118
 
100
119
  > :not(.title) {
101
120
  padding: 8px;
102
121
  width: 10em;
103
122
  flex-grow: 1;
123
+ color: $gray-700;
124
+ }
125
+
126
+ &:nth-child(odd) {
127
+ background-color: $gray-100;
128
+ }
129
+
130
+ .require {
131
+ margin-left: 4px;
132
+ color: $primary;
133
+ }
134
+
135
+ .text-description {
136
+ margin-top: 8px;
137
+ color: $gray-400;
138
+ font-size: var(--font-size-input);
104
139
  }
105
140
  }
106
141
  }
@@ -109,8 +144,38 @@
109
144
 
110
145
  > .card-title {
111
146
  padding: 16px 0;
112
- border-bottom: 0.8px solid $color-darkblue;
147
+ border-bottom: 0.8px solid $color-border-light;
113
148
  font-size: 1.2em;
114
149
  font-weight: 500;
115
150
  }
151
+ }
152
+
153
+ $table-row-odd-color: $white;
154
+ $table-row-even-color: $gray-100;
155
+
156
+ .bs-layout-table {
157
+ border-collapse: collapse;
158
+
159
+ > tr > td, > tr > th, tbody > tr > td, tbody > tr > th {
160
+ padding: 8px;
161
+ border: 1px solid $color-border;
162
+ vertical-align: middle;
163
+ text-align: left;
164
+
165
+ &:first-child {
166
+ border-left: 0;
167
+ }
168
+
169
+ &:last-child {
170
+ border-right: 0;
171
+ }
172
+ }
173
+
174
+ //> tr:nth-child(odd) {
175
+ // background-color: $table-row-odd-color;
176
+ //}
177
+ //
178
+ //> tr:nth-child(even) {
179
+ // background-color: $table-row-even-color;
180
+ //}
116
181
  }
package/css/reset.scss CHANGED
@@ -31,7 +31,7 @@ footer, header, hgroup, menu, nav, section {
31
31
  }
32
32
 
33
33
  body {
34
- line-height: 1;
34
+ line-height: 1.5;
35
35
  }
36
36
 
37
37
  ol, ul {
@@ -0,0 +1,83 @@
1
+ //
2
+ // slide-down transition
3
+ // css 만으로는 transition 이 동작하지 않고, SlideDownTransition 컴포넌트를 사용해야 함.
4
+ //
5
+ .slide-down-enter-active,
6
+ .slide-down-leave-active {
7
+ transition: all 0.2s ease-out;
8
+ }
9
+
10
+ .slide-down-enter-to,
11
+ .slide-down-leave-from {
12
+ overflow: hidden;
13
+ }
14
+
15
+ .slide-down-enter-from,
16
+ .slide-down-leave-to {
17
+ max-height: 0;
18
+ opacity: 0;
19
+ overflow: hidden;
20
+ }
21
+
22
+ //
23
+ // notification transition
24
+ //
25
+ .notification-enter-active,
26
+ .notification-leave-active {
27
+ transition: all 0.3s ease-out;
28
+ }
29
+
30
+ .notification-enter-to,
31
+ .notification-leave-from {
32
+ margin-top: 0;
33
+ }
34
+
35
+ .notification-enter-from {
36
+ margin-top: -35px;
37
+ opacity: 0;
38
+ }
39
+
40
+ .notification-leave-to {
41
+ opacity: 0;
42
+ }
43
+
44
+ //
45
+ // alarm transition
46
+ //
47
+ .alarm-enter-active,
48
+ .alarm-leave-active {
49
+ transition: all 0.3s ease-out;
50
+ z-index: -1;
51
+ }
52
+
53
+ .alarm-enter-to,
54
+ .alarm-leave-from {
55
+ margin-top: 0;
56
+ }
57
+
58
+ .alarm-enter-from,
59
+ .alarm-leave-to {
60
+ margin-bottom: -230px;
61
+ opacity: 0;
62
+ }
63
+
64
+
65
+ //
66
+ // fade TransitionGroup
67
+ //
68
+ .fade-move,
69
+ .fade-enter-active,
70
+ .fade-leave-active {
71
+ transition: all 300ms cubic-bezier(0.55, 0, 0.1, 1);
72
+ }
73
+
74
+ .fade-enter-from,
75
+ .fade-leave-to {
76
+ opacity: 0;
77
+ transform: scaleY(0.01);
78
+ }
79
+
80
+ .fade-enter-active,
81
+ .fade-leave-active {
82
+ position: absolute;
83
+ }