jobdone-shared-files 1.0.13 → 1.0.16

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 (32) hide show
  1. package/ProjectManagement/projectNavbar.vue +363 -363
  2. package/autocompleteSelect.vue +461 -461
  3. package/common/directives/collapse.js +12 -12
  4. package/common/directives/popovers.js +10 -10
  5. package/common/directives/selectPlaceholder.js +52 -52
  6. package/common/directives/textareaAutoHeight.js +10 -10
  7. package/common/directives/tooltip.js +10 -10
  8. package/common/format.js +26 -26
  9. package/index.js +14 -14
  10. package/lightboxWithOverview.vue +156 -156
  11. package/package.json +19 -19
  12. package/paginate.vue +141 -141
  13. package/style/css/vue-loading-overlay/index.css +40 -40
  14. package/style/scss/Common/Animation.scss +9 -9
  15. package/style/scss/Common/SelectableTable.scss +34 -34
  16. package/style/scss/Common/filepond.scss +31 -31
  17. package/style/scss/Common/thumbnail-group.scss +14 -14
  18. package/style/scss/Layout/LayoutBase.scss +1031 -1031
  19. package/style/scss/Layout/LayoutMobile.scss +206 -206
  20. package/style/scss/Layout/LayoutProject.scss +126 -126
  21. package/style/scss/Layout/LayoutSinglePage.scss +17 -17
  22. package/style/scss/Layout/LayoutTwoColumn.scss +60 -60
  23. package/style/scss/Settings/_Mixins.scss +232 -232
  24. package/style/scss/Settings/_MobileVariables.scss +11 -11
  25. package/style/scss/Settings/_bs-variables-dark.scss +70 -70
  26. package/style/scss/Settings/_bs-variables.scss +1743 -1743
  27. package/style/scss/Settings/_color-mode.scss +122 -122
  28. package/style/scss/Settings/_custom-variables.scss +10 -10
  29. package/tagEditor.vue +249 -249
  30. package/tree.vue +68 -69
  31. package/treeItem.vue +355 -371
  32. package/vueLoadingOverlay.vue +74 -74
@@ -1,18 +1,18 @@
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
- html{
7
- background:
8
- linear-gradient(138deg, rgba(100, 148, 241, 0.05) 26.2%, rgba(165, 185, 255, 0.29) 88.06%),
9
- var(--gray-000);
10
- background-repeat: no-repeat;
11
- min-height: 100%;
12
- }
13
-
14
- body{
15
- @include flex-center();
16
- background: transparent;
17
- min-height: 100%;
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
+ html{
7
+ background:
8
+ linear-gradient(138deg, rgba(100, 148, 241, 0.05) 26.2%, rgba(165, 185, 255, 0.29) 88.06%),
9
+ var(--gray-000);
10
+ background-repeat: no-repeat;
11
+ min-height: 100%;
12
+ }
13
+
14
+ body{
15
+ @include flex-center();
16
+ background: transparent;
17
+ min-height: 100%;
18
18
  }
@@ -1,60 +1,60 @@
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
- html, body, #app.layout-two-column,
7
- #col-aside, #col-main{
8
- height: 100%;
9
- }
10
-
11
- body, #app.layout-two-column{
12
- overflow: hidden;
13
- }
14
-
15
- #app.layout-two-column{
16
- display: flex;
17
- flex-direction: row-reverse;
18
- }
19
-
20
- #col-aside, #col-main{
21
- overflow: hidden;
22
- transition: all .5s ease-in-out;
23
- }
24
-
25
-
26
- $aside-w: 18rem;
27
- #col-aside{
28
- display: flex;
29
- flex-direction: column;
30
- @include solid-size($aside-w, auto);
31
- background-color: var(--gray-200);
32
- border-right: $border-width solid var(--bs-border-color);
33
- }
34
-
35
- #col-main{
36
- flex-grow: 1;
37
- background-color: var(--gray-400);
38
- @include scrollbar();
39
- }
40
-
41
-
42
- // navbar 開關 ------------------------------------------
43
- #col-main:has(label[for="toggle-aside"]:hover){
44
- will-change: width;
45
- ~ #col-aside{
46
- will-change: margin-left;
47
- }
48
- }
49
-
50
- #toggle-aside:checked{
51
- ~ #col-aside{
52
- margin-left: -$aside-w;
53
- }
54
- ~ #col-main{
55
- label[for="toggle-aside"] .material-icons{
56
- transform: rotate(180deg);
57
- }
58
- }
59
- }
60
- // navbar 開關 ------------------------------------------
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
+ html, body, #app.layout-two-column,
7
+ #col-aside, #col-main{
8
+ height: 100%;
9
+ }
10
+
11
+ body, #app.layout-two-column{
12
+ overflow: hidden;
13
+ }
14
+
15
+ #app.layout-two-column{
16
+ display: flex;
17
+ flex-direction: row-reverse;
18
+ }
19
+
20
+ #col-aside, #col-main{
21
+ overflow: hidden;
22
+ transition: all .5s ease-in-out;
23
+ }
24
+
25
+
26
+ $aside-w: 18rem;
27
+ #col-aside{
28
+ display: flex;
29
+ flex-direction: column;
30
+ @include solid-size($aside-w, auto);
31
+ background-color: var(--gray-200);
32
+ border-right: $border-width solid var(--bs-border-color);
33
+ }
34
+
35
+ #col-main{
36
+ flex-grow: 1;
37
+ background-color: var(--gray-400);
38
+ @include scrollbar();
39
+ }
40
+
41
+
42
+ // navbar 開關 ------------------------------------------
43
+ #col-main:has(label[for="toggle-aside"]:hover){
44
+ will-change: width;
45
+ ~ #col-aside{
46
+ will-change: margin-left;
47
+ }
48
+ }
49
+
50
+ #toggle-aside:checked{
51
+ ~ #col-aside{
52
+ margin-left: -$aside-w;
53
+ }
54
+ ~ #col-main{
55
+ label[for="toggle-aside"] .material-icons{
56
+ transform: rotate(180deg);
57
+ }
58
+ }
59
+ }
60
+ // navbar 開關 ------------------------------------------
@@ -1,232 +1,232 @@
1
- // ====================================
2
- // Custom Mixins 清單 (依順序排序)
3
- // ====================================
4
-
5
- // Layout 各種置中方法
6
- // scrollbar樣式
7
-
8
- // 尺寸設定: rwd-square / size / solid-size
9
- // Text: 文字溢排
10
- // List Style: 數字標號
11
-
12
- // Image 背景 2x 3x 設定
13
-
14
- // ====================================
15
- // Layout 各種置中方法
16
- // ====================================
17
-
18
- // 使用 flex 上下左右置中
19
- @mixin flex-center() {
20
- display: flex;
21
- justify-content: center;
22
- align-items: center;
23
- }
24
-
25
- // 使用 position 上下左右置中
26
- @mixin position-center() {
27
- position: absolute;
28
- top: 0;
29
- left: 0;
30
- right: 0;
31
- bottom: 0;
32
- margin: auto;
33
- }
34
-
35
- // 使用inline-block:before垂直至中
36
- @mixin vertical-middle() {
37
- // 加在父層
38
- &:before {
39
- content: "";
40
- display: inline-block;
41
- vertical-align: middle;
42
- width: 0;
43
- height: 100%;
44
- }
45
- }
46
-
47
- @mixin vertical-middle-item() {
48
- // 加在要置中的項目
49
- display: inline-block;
50
- vertical-align: middle;
51
- }
52
-
53
-
54
- // ====================================
55
- // scrollbar樣式
56
- // ====================================
57
-
58
- // 自訂變數 (--scrollbar-width) 在 "LayoutBase" 中設定
59
- @mixin scrollbar(
60
- $background: var(--gray-200),
61
- $default-color: var(--gray-500),
62
- $hover-color: var(--bs-primary),
63
- $width: var(--scrollbar-width),
64
- $height: var(--scrollbar-width),
65
- $border-radius: var(--scrollbar-width),
66
- $y: auto,
67
- $x: hidden
68
- ) {
69
- overflow-y: $y;
70
- overflow-x: $x;
71
-
72
- // Chrome 121 / Edge 121 / FireFox
73
- @supports (scrollbar-width: auto) {
74
- scrollbar-width: auto;
75
- scrollbar-color: $default-color $background;
76
- &:hover{
77
- scrollbar-color: $hover-color $background;
78
- }
79
- }
80
-
81
- @supports selector(::-webkit-scrollbar) {
82
- &::-webkit-scrollbar-thumb {
83
- background-color: $default-color;
84
- border-radius: $border-radius;
85
- }
86
- &::-webkit-scrollbar,
87
- &::-webkit-scrollbar-track {
88
- background-color: $background;
89
- }
90
- &::-webkit-scrollbar {
91
- width: $width;
92
- height: $height;
93
- }
94
- &:hover {
95
- &::-webkit-scrollbar,
96
- &::-webkit-scrollbar-thumb {
97
- background-color: $hover-color;
98
- }
99
- }
100
- }
101
-
102
- }
103
-
104
- // ====================================
105
- // 尺寸設定: rwd-square / size / solid-width
106
- // ====================================
107
-
108
- @mixin rwd-square($size) {
109
- width: $size;
110
- height: auto;
111
- &:before {
112
- content: "";
113
- display: block;
114
- padding-bottom: 100%;
115
- }
116
- }
117
-
118
- @mixin size($w, $h: $w) {
119
- width: $w;
120
- height: $h;
121
- }
122
-
123
- @mixin solid-size($w, $h: $w) {
124
- width: $w;
125
- max-width: $w;
126
- min-width: $w;
127
- height: $h;
128
- }
129
-
130
- // ====================================
131
- // Text: 文字溢排
132
- // ====================================
133
-
134
- // 單行
135
- @mixin text-overflow() {
136
- overflow: hidden;
137
- text-overflow: ellipsis;
138
- white-space: nowrap;
139
- }
140
-
141
- // 多行
142
- @mixin text-line-clamp($line-clamp) {
143
- display: -webkit-box;
144
- -webkit-line-clamp: $line-clamp;
145
- -webkit-box-orient: vertical;
146
- overflow: hidden;
147
- }
148
-
149
- // ====================================
150
- // List Style: 數字標號
151
- // ====================================
152
-
153
- // 數字標號
154
- @mixin list-counter() {
155
- list-style-type: none;
156
- padding: 0;
157
- margin: auto;
158
- li {
159
- counter-increment: step-counter;
160
- &:before {
161
- content: counter(step-counter);
162
- display: inline-block;
163
- vertical-align: top;
164
- font-size: 16px;
165
- text-align: center;
166
- }
167
- }
168
- }
169
-
170
- // ====================================
171
- // Image 背景 2x 3x 設定
172
- // ====================================
173
- @mixin background-image-retina($file, $type) {
174
- background-image: url($file + "." + $type);
175
- @media screen and (-webkit-min-device-pixel-ratio: 2),
176
- (-moz-min-device-pixel-ratio: 2),
177
- screen and (min--moz-device-pixel-ratio: 2) {
178
- background-image: url($file + "@2x." + $type);
179
- }
180
- @media screen and (-webkit-min-device-pixel-ratio: 3),
181
- (-moz-min-device-pixel-ratio: 3),
182
- screen and (min--moz-device-pixel-ratio: 3) {
183
- background-image: url($file + "@3x." + $type);
184
- }
185
- }
186
-
187
- @mixin background-image-retina-amp($file, $type) {
188
- background-image: url($file + "." + $type);
189
- @media screen and (-webkit-min-device-pixel-ratio: 2),
190
- (-moz-min-device-pixel-ratio: 2),
191
- screen and (min-resolution: 2dppx) {
192
- background-image: url($file + "@2x." + $type);
193
- }
194
- @media screen and (-webkit-min-device-pixel-ratio: 3),
195
- (-moz-min-device-pixel-ratio: 3),
196
- screen and (min-resolution: 3dppx) {
197
- background-image: url($file + "@3x." + $type);
198
- }
199
- }
200
-
201
- // ====================================
202
- // Construction Mixins
203
- // ====================================
204
-
205
- @mixin tableHeadTH() {
206
- border-radius: 0;
207
- background-color: $gray-200;
208
- font-size: 0.85rem;
209
- font-weight: normal;
210
- letter-spacing: 0.5px;
211
- color: $gray-600;
212
- padding-left: 0.75rem;
213
- }
214
-
215
- @mixin tableTdNum() {
216
- color: $gray-500;
217
- font-size: 0.85rem;
218
- vertical-align: middle !important;
219
- }
220
-
221
- // TODO: 待刪除,已改成 LayoutBase 的 .btn-link-light-bg
222
- @mixin linkBtn() {
223
- text-decoration: none;
224
- letter-spacing: 0.5px;
225
- display: flex;
226
- align-items: center;
227
- margin-right: 0.5rem;
228
- &:hover {
229
- color: $primary;
230
- background-color: rgba($primary, 0.1);
231
- }
232
- }
1
+ // ====================================
2
+ // Custom Mixins 清單 (依順序排序)
3
+ // ====================================
4
+
5
+ // Layout 各種置中方法
6
+ // scrollbar樣式
7
+
8
+ // 尺寸設定: rwd-square / size / solid-size
9
+ // Text: 文字溢排
10
+ // List Style: 數字標號
11
+
12
+ // Image 背景 2x 3x 設定
13
+
14
+ // ====================================
15
+ // Layout 各種置中方法
16
+ // ====================================
17
+
18
+ // 使用 flex 上下左右置中
19
+ @mixin flex-center() {
20
+ display: flex;
21
+ justify-content: center;
22
+ align-items: center;
23
+ }
24
+
25
+ // 使用 position 上下左右置中
26
+ @mixin position-center() {
27
+ position: absolute;
28
+ top: 0;
29
+ left: 0;
30
+ right: 0;
31
+ bottom: 0;
32
+ margin: auto;
33
+ }
34
+
35
+ // 使用inline-block:before垂直至中
36
+ @mixin vertical-middle() {
37
+ // 加在父層
38
+ &:before {
39
+ content: "";
40
+ display: inline-block;
41
+ vertical-align: middle;
42
+ width: 0;
43
+ height: 100%;
44
+ }
45
+ }
46
+
47
+ @mixin vertical-middle-item() {
48
+ // 加在要置中的項目
49
+ display: inline-block;
50
+ vertical-align: middle;
51
+ }
52
+
53
+
54
+ // ====================================
55
+ // scrollbar樣式
56
+ // ====================================
57
+
58
+ // 自訂變數 (--scrollbar-width) 在 "LayoutBase" 中設定
59
+ @mixin scrollbar(
60
+ $background: var(--gray-200),
61
+ $default-color: var(--gray-500),
62
+ $hover-color: var(--bs-primary),
63
+ $width: var(--scrollbar-width),
64
+ $height: var(--scrollbar-width),
65
+ $border-radius: var(--scrollbar-width),
66
+ $y: auto,
67
+ $x: hidden
68
+ ) {
69
+ overflow-y: $y;
70
+ overflow-x: $x;
71
+
72
+ // Chrome 121 / Edge 121 / FireFox
73
+ @supports (scrollbar-width: auto) {
74
+ scrollbar-width: auto;
75
+ scrollbar-color: $default-color $background;
76
+ &:hover{
77
+ scrollbar-color: $hover-color $background;
78
+ }
79
+ }
80
+
81
+ @supports selector(::-webkit-scrollbar) {
82
+ &::-webkit-scrollbar-thumb {
83
+ background-color: $default-color;
84
+ border-radius: $border-radius;
85
+ }
86
+ &::-webkit-scrollbar,
87
+ &::-webkit-scrollbar-track {
88
+ background-color: $background;
89
+ }
90
+ &::-webkit-scrollbar {
91
+ width: $width;
92
+ height: $height;
93
+ }
94
+ &:hover {
95
+ &::-webkit-scrollbar,
96
+ &::-webkit-scrollbar-thumb {
97
+ background-color: $hover-color;
98
+ }
99
+ }
100
+ }
101
+
102
+ }
103
+
104
+ // ====================================
105
+ // 尺寸設定: rwd-square / size / solid-width
106
+ // ====================================
107
+
108
+ @mixin rwd-square($size) {
109
+ width: $size;
110
+ height: auto;
111
+ &:before {
112
+ content: "";
113
+ display: block;
114
+ padding-bottom: 100%;
115
+ }
116
+ }
117
+
118
+ @mixin size($w, $h: $w) {
119
+ width: $w;
120
+ height: $h;
121
+ }
122
+
123
+ @mixin solid-size($w, $h: $w) {
124
+ width: $w;
125
+ max-width: $w;
126
+ min-width: $w;
127
+ height: $h;
128
+ }
129
+
130
+ // ====================================
131
+ // Text: 文字溢排
132
+ // ====================================
133
+
134
+ // 單行
135
+ @mixin text-overflow() {
136
+ overflow: hidden;
137
+ text-overflow: ellipsis;
138
+ white-space: nowrap;
139
+ }
140
+
141
+ // 多行
142
+ @mixin text-line-clamp($line-clamp) {
143
+ display: -webkit-box;
144
+ -webkit-line-clamp: $line-clamp;
145
+ -webkit-box-orient: vertical;
146
+ overflow: hidden;
147
+ }
148
+
149
+ // ====================================
150
+ // List Style: 數字標號
151
+ // ====================================
152
+
153
+ // 數字標號
154
+ @mixin list-counter() {
155
+ list-style-type: none;
156
+ padding: 0;
157
+ margin: auto;
158
+ li {
159
+ counter-increment: step-counter;
160
+ &:before {
161
+ content: counter(step-counter);
162
+ display: inline-block;
163
+ vertical-align: top;
164
+ font-size: 16px;
165
+ text-align: center;
166
+ }
167
+ }
168
+ }
169
+
170
+ // ====================================
171
+ // Image 背景 2x 3x 設定
172
+ // ====================================
173
+ @mixin background-image-retina($file, $type) {
174
+ background-image: url($file + "." + $type);
175
+ @media screen and (-webkit-min-device-pixel-ratio: 2),
176
+ (-moz-min-device-pixel-ratio: 2),
177
+ screen and (min--moz-device-pixel-ratio: 2) {
178
+ background-image: url($file + "@2x." + $type);
179
+ }
180
+ @media screen and (-webkit-min-device-pixel-ratio: 3),
181
+ (-moz-min-device-pixel-ratio: 3),
182
+ screen and (min--moz-device-pixel-ratio: 3) {
183
+ background-image: url($file + "@3x." + $type);
184
+ }
185
+ }
186
+
187
+ @mixin background-image-retina-amp($file, $type) {
188
+ background-image: url($file + "." + $type);
189
+ @media screen and (-webkit-min-device-pixel-ratio: 2),
190
+ (-moz-min-device-pixel-ratio: 2),
191
+ screen and (min-resolution: 2dppx) {
192
+ background-image: url($file + "@2x." + $type);
193
+ }
194
+ @media screen and (-webkit-min-device-pixel-ratio: 3),
195
+ (-moz-min-device-pixel-ratio: 3),
196
+ screen and (min-resolution: 3dppx) {
197
+ background-image: url($file + "@3x." + $type);
198
+ }
199
+ }
200
+
201
+ // ====================================
202
+ // Construction Mixins
203
+ // ====================================
204
+
205
+ @mixin tableHeadTH() {
206
+ border-radius: 0;
207
+ background-color: $gray-200;
208
+ font-size: 0.85rem;
209
+ font-weight: normal;
210
+ letter-spacing: 0.5px;
211
+ color: $gray-600;
212
+ padding-left: 0.75rem;
213
+ }
214
+
215
+ @mixin tableTdNum() {
216
+ color: $gray-500;
217
+ font-size: 0.85rem;
218
+ vertical-align: middle !important;
219
+ }
220
+
221
+ // TODO: 待刪除,已改成 LayoutBase 的 .btn-link-light-bg
222
+ @mixin linkBtn() {
223
+ text-decoration: none;
224
+ letter-spacing: 0.5px;
225
+ display: flex;
226
+ align-items: center;
227
+ margin-right: 0.5rem;
228
+ &:hover {
229
+ color: $primary;
230
+ background-color: rgba($primary, 0.1);
231
+ }
232
+ }
@@ -1,12 +1,12 @@
1
- $safe-area-inset-top: env(safe-area-inset-top);
2
- $safe-area-inset-bottom: env(safe-area-inset-bottom);
3
-
4
- $gradient-bg: linear-gradient(138deg, rgba(100, 148, 241, 0.05) 26.2%, rgba(165, 185, 255, 0.29) 88.06%), var(--gray-000);
5
-
6
- $gradient-main: linear-gradient(270deg, #647AF1 33.33%, #0084E4 100%);
7
- $gradient-main-translucent: linear-gradient(270deg, rgba(63, 90, 233, 0.8) 33.33%, rgba(0, 130, 220, 0.8) 100%);
8
-
9
- $gradient-glow: linear-gradient(131deg, rgba(17, 198, 245, 0.55) 0%, rgba(24, 196, 255, 0.00) 100%);
10
- $gradient-glow-2end: linear-gradient(131deg, rgba(17, 198, 245, 0.20) 0%, rgba(24, 196, 255, 0.00) 45.31%, rgba(17, 198, 245, 0.20) 100%);
11
-
1
+ $safe-area-inset-top: env(safe-area-inset-top);
2
+ $safe-area-inset-bottom: env(safe-area-inset-bottom);
3
+
4
+ $gradient-bg: linear-gradient(138deg, rgba(100, 148, 241, 0.05) 26.2%, rgba(165, 185, 255, 0.29) 88.06%), var(--gray-000);
5
+
6
+ $gradient-main: linear-gradient(270deg, #647AF1 33.33%, #0084E4 100%);
7
+ $gradient-main-translucent: linear-gradient(270deg, rgba(63, 90, 233, 0.8) 33.33%, rgba(0, 130, 220, 0.8) 100%);
8
+
9
+ $gradient-glow: linear-gradient(131deg, rgba(17, 198, 245, 0.55) 0%, rgba(24, 196, 255, 0.00) 100%);
10
+ $gradient-glow-2end: linear-gradient(131deg, rgba(17, 198, 245, 0.20) 0%, rgba(24, 196, 255, 0.00) 45.31%, rgba(17, 198, 245, 0.20) 100%);
11
+
12
12
  $backdrop-blur-base: blur(5px);