jobdone-shared-files 1.0.44 → 1.0.45

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 (39) hide show
  1. package/ModuleInfo/LayoutNav.vue +251 -251
  2. package/ModuleInfo/logo-with-text.svg +22 -22
  3. package/ModuleInfo/navButton.vue +218 -218
  4. package/ProjectManagement/projectNavbar.vue +363 -363
  5. package/README.md +2 -0
  6. package/autocompleteSelect.vue +467 -467
  7. package/common/directives/collapse.js +12 -12
  8. package/common/directives/popovers.js +10 -10
  9. package/common/directives/selectPlaceholder.js +52 -52
  10. package/common/directives/textareaAutoHeight.js +10 -10
  11. package/common/directives/tooltip.js +10 -10
  12. package/common/format.js +26 -26
  13. package/index.js +14 -14
  14. package/lightboxWithOverview.vue +156 -156
  15. package/package.json +19 -19
  16. package/paginate.vue +141 -141
  17. package/style/css/vue-loading-overlay/index.css +40 -40
  18. package/style/scss/Common/Animation.scss +9 -9
  19. package/style/scss/Common/SelectableTable.scss +36 -36
  20. package/style/scss/Common/Tree.scss +282 -0
  21. package/style/scss/Common/filepond.scss +31 -31
  22. package/style/scss/Common/thumbnail-group.scss +14 -14
  23. package/style/scss/Layout/LayoutBase.scss +1032 -1032
  24. package/style/scss/Layout/LayoutInnerColumn.scss +263 -263
  25. package/style/scss/Layout/LayoutProject.scss +126 -126
  26. package/style/scss/Layout/LayoutSinglePage.scss +17 -17
  27. package/style/scss/Layout/LayoutTwoColumn.scss +60 -60
  28. package/style/scss/Settings/_Mixins.scss +232 -232
  29. package/style/scss/Settings/_MobileVariables.scss +11 -11
  30. package/style/scss/Settings/_bs-variables-dark.scss +70 -70
  31. package/style/scss/Settings/_bs-variables.scss +1743 -1743
  32. package/style/scss/Settings/_color-mode.scss +122 -122
  33. package/style/scss/Settings/_custom-variables.scss +10 -10
  34. package/tagEditor.vue +249 -249
  35. package/tree.vue +71 -71
  36. package/treeItem.vue +358 -358
  37. package/treeItemV2.vue +79 -0
  38. package/treeV2.vue +71 -0
  39. package/vueLoadingOverlay.vue +74 -74
@@ -0,0 +1,282 @@
1
+ @import "../../../../bootstrap/scss/functions";
2
+ @import "../Settings/bs-variables";
3
+ @import "../../../../bootstrap/scss/mixins";
4
+ @import "../Settings/custom-variables";
5
+ @import "../Settings/Mixins";
6
+
7
+ li {
8
+ list-style-type: none;
9
+ }
10
+
11
+ // 基本 sizes
12
+ .tree-item {
13
+ .btn {
14
+ --bs-btn-padding-x: 0.75em;
15
+ --bs-btn-padding-y: 0.375em;
16
+ --bs-btn-font-size: 1em;
17
+ }
18
+
19
+ .card {
20
+ --bs-card-spacer-y: 1em;
21
+ --bs-card-spacer-x: 1em;
22
+ --bs-card-title-spacer-y: 0.5em;
23
+ --bs-card-cap-padding-y: 0.5em;
24
+ --bs-card-cap-padding-x: 1em;
25
+ --bs-card-img-overlay-padding: 1em;
26
+ --bs-card-group-margin: 0.75em;
27
+ }
28
+
29
+ .material-icons {
30
+ font-size: 1.5em;
31
+
32
+ &.icon-14 {
33
+ font-size: 0.875em;
34
+ }
35
+
36
+ &.icon-18 {
37
+ font-size: 1.125em;
38
+ }
39
+
40
+ &.icon-28 {
41
+ font-size: 1.75em;
42
+ }
43
+
44
+ &.icon-32 {
45
+ font-size: 2em;
46
+ }
47
+ }
48
+ }
49
+
50
+ // hover效果與優化
51
+ // firefox 暫不支援 has
52
+ .tree-item:has([data-bs-toggle="collapse"]:hover)+.collapse {
53
+ will-change: height;
54
+ }
55
+
56
+ .tree-item:hover>.card,
57
+ .tree-item .card:focus-within {
58
+ background-color: lighten($primary, 32%);
59
+ border-color: rgba($primary, .4);
60
+ }
61
+
62
+ .tree-item {
63
+ .btn-title .material-icons:is(:empty):before {
64
+ content: "\e836";
65
+ display: inline-block;
66
+ font-family: inherit;
67
+ }
68
+
69
+ // active效果
70
+ &.active {
71
+ >.card {
72
+ background-color: lighten($primary, 30%);
73
+ border-color: rgba($primary, .5);
74
+ }
75
+
76
+ >.card .btn-title .material-icons:is(:empty):before {
77
+ content: "\e837";
78
+ }
79
+
80
+ .btn-title {
81
+ color: $primary;
82
+ }
83
+ }
84
+ }
85
+
86
+ .btn-title {
87
+ cursor: pointer;
88
+
89
+ .btn {
90
+ border-radius: 0;
91
+
92
+ &:focus,
93
+ &:active {
94
+ border-color: transparent;
95
+ }
96
+ }
97
+
98
+ .btn-text {
99
+ width: 100%;
100
+ text-align: left;
101
+ overflow-wrap: anywhere;
102
+ }
103
+ }
104
+
105
+
106
+ // 刪除子層標示 UI
107
+ .tree-item:has(.btn.text-danger:hover) {
108
+ .card {
109
+ background-color: lighten($danger, 43%);
110
+ border-color: rgba($danger, .5);
111
+
112
+ .btn {
113
+ color: $danger;
114
+ }
115
+ }
116
+ }
117
+
118
+ // 刪除子層標示 UI (含子層)
119
+ // .tree-child:has(.btn.text-danger:hover){
120
+ // .card, + .content-children .card{
121
+ // background-color: lighten( $danger, 43% );
122
+ // border-color: rgba( $danger, .5 );
123
+ // .btn{
124
+ // color: $danger;
125
+ // }
126
+ // }
127
+ // }
128
+
129
+ .btn-no-children {
130
+ cursor: auto;
131
+
132
+ &:focus {
133
+ border-color: transparent;
134
+ }
135
+ }
136
+
137
+ // 基本 style
138
+ $card-margin: .2em;
139
+ $line-padding: .7em;
140
+
141
+ .tree-item {
142
+ display: flex;
143
+ flex-direction: column;
144
+ width: 100%;
145
+ margin-top: $card-margin;
146
+
147
+ .card {
148
+ position: relative;
149
+ flex-grow: 1;
150
+ transition: $transition-base;
151
+ }
152
+ }
153
+
154
+ .col-action {
155
+ @include flex-center;
156
+ width: 2.8rem;
157
+ }
158
+
159
+
160
+ // 開合 style
161
+ .btn[data-bs-toggle="collapse"] {
162
+ .material-icons {
163
+ transition: $transition-base;
164
+ }
165
+
166
+ &[aria-expanded="false"] .material-icons {
167
+ transform: rotate(-90deg);
168
+ }
169
+
170
+ &:disabled,
171
+ &.disabled {
172
+ border-color: transparent;
173
+ }
174
+ }
175
+
176
+ // 畫線 style
177
+ .content-children {
178
+ padding-left: 1.5rem;
179
+ --tree-border-color: #fff;
180
+ position: relative;
181
+
182
+ &:before {
183
+ content: "";
184
+ position: absolute;
185
+ display: block;
186
+ left: -$line-padding;
187
+ bottom: 24px;
188
+ width: 1px;
189
+ height: 100%;
190
+ z-index: 1;
191
+ background-color: var(--tree-border-color);
192
+ }
193
+
194
+ // // line color
195
+ &:before,
196
+ .tree-item .card:before,
197
+ .tree-item .card:after {
198
+ background-color: var(--tree-border-color);
199
+ }
200
+ }
201
+
202
+ .tree-item {
203
+ &:last-child>.content-children:before {
204
+ display: none;
205
+ }
206
+
207
+ .card {
208
+ position: relative;
209
+
210
+ &:before,
211
+ &:after {
212
+ content: "";
213
+ position: absolute;
214
+ left: calc(-#{$line-padding} - #{$border-width});
215
+ z-index: 1;
216
+ }
217
+
218
+ &:before {
219
+ bottom: 50%;
220
+ width: 1px;
221
+ height: calc(100% + #{$card-margin}*2 + #{$border-width}*2);
222
+ }
223
+
224
+ &:after {
225
+ top: 0;
226
+ bottom: 0;
227
+ width: $line-padding;
228
+ height: 1px;
229
+ margin: auto;
230
+ }
231
+ }
232
+
233
+ &:nth-child(1)>.card:before {
234
+ height: calc(50% + #{$card-margin} + #{$border-width});
235
+ }
236
+ }
237
+
238
+
239
+ // 小版本
240
+ .tree-item-sm {
241
+ >.card {
242
+ font-size: 86%;
243
+ }
244
+
245
+ .content-children {
246
+ padding-left: 1rem;
247
+ }
248
+
249
+ .content-children:before {
250
+ left: -10px;
251
+ bottom: 19px;
252
+ }
253
+ }
254
+
255
+ // .tree-item-sm + .content-children{
256
+ // > .children-box{
257
+ // padding-left: 1rem;
258
+ // }
259
+ // }
260
+
261
+
262
+ // 白背景版本
263
+ .tree-item-in-white {
264
+ .content-children {
265
+ --tree-border-color: var(--bs-border-color);
266
+ }
267
+
268
+ .card {
269
+ --bs-card-bg: var(--gray-100);
270
+ --bs-card-border-color: var(--bs-border-color);
271
+ }
272
+
273
+ &:hover>.card,
274
+ .card:focus-within {
275
+ background-color: $white;
276
+ }
277
+
278
+ // active效果
279
+ &.active .card {
280
+ background-color: $white;
281
+ }
282
+ }
@@ -1,32 +1,32 @@
1
- @import "../../../../bootstrap/scss/functions";
2
- @import "../Settings/bs-variables";
3
- @import "../../../../bootstrap/scss/mixins";
4
- @import "../Settings/custom-variables";
5
- @import "../Settings/Mixins";
6
-
7
- .can-click{
8
- cursor: pointer;
9
- }
10
-
11
- .filepond--root.filepond--hopper {
12
- border: 1px dashed var(--bs-gray-400);
13
- border-radius: 0.5em;
14
- overflow: hidden;
15
- }
16
-
17
- .filepond--drop-label {
18
- display: flex;
19
- flex-direction: column;
20
- align-items: stretch;
21
- }
22
-
23
- .filepond-label-box-cus {
24
- display: flex;
25
- align-items: center;
26
- justify-content: center;
27
- width: 100%;
28
- }
29
-
30
- .filepond--panel-root {
31
- background-color: $blue-100 !important;
1
+ @import "../../../../bootstrap/scss/functions";
2
+ @import "../Settings/bs-variables";
3
+ @import "../../../../bootstrap/scss/mixins";
4
+ @import "../Settings/custom-variables";
5
+ @import "../Settings/Mixins";
6
+
7
+ .can-click{
8
+ cursor: pointer;
9
+ }
10
+
11
+ .filepond--root.filepond--hopper {
12
+ border: 1px dashed var(--bs-gray-400);
13
+ border-radius: 0.5em;
14
+ overflow: hidden;
15
+ }
16
+
17
+ .filepond--drop-label {
18
+ display: flex;
19
+ flex-direction: column;
20
+ align-items: stretch;
21
+ }
22
+
23
+ .filepond-label-box-cus {
24
+ display: flex;
25
+ align-items: center;
26
+ justify-content: center;
27
+ width: 100%;
28
+ }
29
+
30
+ .filepond--panel-root {
31
+ background-color: $blue-100 !important;
32
32
  }
@@ -1,14 +1,14 @@
1
-
2
- .thumbnail-group{
3
- $offset: .5rem;
4
- position: relative;
5
- display: inline-flex;
6
- margin-right: $offset;
7
- margin-bottom: $offset;
8
- .thumbnail-pin{
9
- position: absolute;
10
- right: -$offset;
11
- bottom: -$offset;
12
- box-shadow: $box-shadow;
13
- }
14
- }
1
+
2
+ .thumbnail-group{
3
+ $offset: .5rem;
4
+ position: relative;
5
+ display: inline-flex;
6
+ margin-right: $offset;
7
+ margin-bottom: $offset;
8
+ .thumbnail-pin{
9
+ position: absolute;
10
+ right: -$offset;
11
+ bottom: -$offset;
12
+ box-shadow: $box-shadow;
13
+ }
14
+ }