@bagelink/vue 0.0.1220 → 0.0.1224

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 (64) hide show
  1. package/dist/components/Calendar/Index.vue.d.ts +8 -4
  2. package/dist/components/Calendar/Index.vue.d.ts.map +1 -1
  3. package/dist/components/Calendar/components/header/Header.vue.d.ts +2 -0
  4. package/dist/components/Calendar/components/header/Header.vue.d.ts.map +1 -1
  5. package/dist/components/Calendar/components/month/AgendaEventTile.vue.d.ts.map +1 -1
  6. package/dist/components/Calendar/components/month/AgendaEvents.vue.d.ts.map +1 -1
  7. package/dist/components/Calendar/components/month/Day.vue.d.ts.map +1 -1
  8. package/dist/components/Calendar/components/month/Event.vue.d.ts.map +1 -1
  9. package/dist/components/Calendar/components/month/Month.vue.d.ts +2 -2
  10. package/dist/components/Calendar/components/month/Month.vue.d.ts.map +1 -1
  11. package/dist/components/Calendar/components/month/WeekDay.vue.d.ts.map +1 -1
  12. package/dist/components/Calendar/components/partials/EventFlyout.vue.d.ts.map +1 -1
  13. package/dist/components/Calendar/components/week/Day.vue.d.ts.map +1 -1
  14. package/dist/components/Calendar/components/week/Week.vue.d.ts +2 -2
  15. package/dist/components/Calendar/components/week/WeekTimeline.vue.d.ts.map +1 -1
  16. package/dist/components/Calendar/constants.d.ts.map +1 -1
  17. package/dist/components/Calendar/language/index.d.ts +2 -1
  18. package/dist/components/Calendar/language/index.d.ts.map +1 -1
  19. package/dist/components/Calendar/language/keys.d.ts +66 -63
  20. package/dist/components/Calendar/language/keys.d.ts.map +1 -1
  21. package/dist/components/Spreadsheet/Index.vue.d.ts +24 -0
  22. package/dist/components/Spreadsheet/Index.vue.d.ts.map +1 -0
  23. package/dist/components/form/BagelForm.vue.d.ts +1 -1
  24. package/dist/components/form/BagelForm.vue.d.ts.map +1 -1
  25. package/dist/components/form/inputs/DatePick.vue.d.ts +1 -0
  26. package/dist/components/form/inputs/DatePick.vue.d.ts.map +1 -1
  27. package/dist/components/form/inputs/DatePicker.vue.d.ts.map +1 -1
  28. package/dist/components/form/inputs/NumberInput.vue.d.ts.map +1 -1
  29. package/dist/components/index.d.ts +1 -0
  30. package/dist/components/index.d.ts.map +1 -1
  31. package/dist/index.cjs +1828 -1144
  32. package/dist/index.mjs +1829 -1145
  33. package/dist/style.css +679 -712
  34. package/package.json +1 -1
  35. package/src/components/Calendar/Index.vue +13 -16
  36. package/src/components/Calendar/components/header/Header.vue +17 -139
  37. package/src/components/Calendar/components/month/AgendaEventTile.vue +1 -10
  38. package/src/components/Calendar/components/month/AgendaEvents.vue +7 -53
  39. package/src/components/Calendar/components/month/Day.vue +12 -30
  40. package/src/components/Calendar/components/month/Event.vue +10 -67
  41. package/src/components/Calendar/components/month/Month.vue +10 -56
  42. package/src/components/Calendar/components/month/WeekDay.vue +1 -11
  43. package/src/components/Calendar/components/partials/EventFlyout.vue +2 -1
  44. package/src/components/Calendar/components/week/Day.vue +4 -18
  45. package/src/components/Calendar/components/week/DayEvent.vue +1 -1
  46. package/src/components/Calendar/components/week/FullDayEvent.vue +2 -2
  47. package/src/components/Calendar/components/week/Week.vue +1 -1
  48. package/src/components/Calendar/components/week/WeekTimeline.vue +13 -38
  49. package/src/components/Calendar/constants.ts +11 -11
  50. package/src/components/Calendar/language/index.ts +6 -3
  51. package/src/components/Calendar/language/keys.ts +91 -88
  52. package/src/components/Calendar/styles/_variables.css +38 -42
  53. package/src/components/Spreadsheet/Index.vue +843 -0
  54. package/src/components/form/BagelForm.vue +1 -1
  55. package/src/components/form/inputs/DatePick.vue +6 -2
  56. package/src/components/form/inputs/DatePicker.vue +2 -2
  57. package/src/components/form/inputs/NumberInput.vue +2 -2
  58. package/src/components/index.ts +1 -0
  59. package/src/styles/buttons.css +81 -73
  60. package/src/styles/layout.css +25 -0
  61. package/src/styles/mobilLayout.css +25 -0
  62. package/src/styles/text.css +82 -1
  63. package/src/styles/theme.css +269 -258
  64. package/src/components/Calendar/index.ts +0 -4
@@ -8,7 +8,7 @@ export interface BagelFormProps<_T> {
8
8
  modelValue?: _T
9
9
  schema?: BglFormSchemaFnT<_T>
10
10
  tag?: 'form' | 'template'
11
- onSubmit?: (data: _T) => Promise<void>
11
+ onSubmit?: (data: _T) => Promise<void> | void
12
12
  }
13
13
 
14
14
  const props = withDefaults(defineProps<BagelFormProps<T>>(), {
@@ -17,6 +17,8 @@ const props = withDefaults(
17
17
  mode?: modeType
18
18
  firstDayOfWeek?: WEEK_START_DAY
19
19
  locale?: string
20
+ center?: boolean
21
+
20
22
  }>(),
21
23
  {
22
24
  enableTime: false,
@@ -40,7 +42,7 @@ const time = new Time(props.firstDayOfWeek, props.locale)
40
42
  function formatDisplayDate(date: Date | string | undefined): string {
41
43
  if (!date) return ''
42
44
  const dateObj = typeof date === 'string' ? new Date(date) : date
43
-
45
+
44
46
  if (props.enableTime) {
45
47
  return dateObj.toLocaleString(props.locale || undefined, {
46
48
  year: 'numeric',
@@ -51,7 +53,7 @@ function formatDisplayDate(date: Date | string | undefined): string {
51
53
  timeZone: props.timezone
52
54
  })
53
55
  }
54
-
56
+
55
57
  return dateObj.toLocaleString(props.locale || undefined, {
56
58
  year: 'numeric',
57
59
  month: 'short',
@@ -260,6 +262,8 @@ function isNotInMonth(date: Date) {
260
262
  :required="required"
261
263
  :disabled="!editMode"
262
264
  class="date-input"
265
+ :class="{
266
+ 'txt-center': center }"
263
267
  readonly
264
268
  @click="isOpen = true"
265
269
  >
@@ -32,7 +32,7 @@ const hours = Array.from({ length: 18 }, (_, index) => {
32
32
 
33
33
  <template>
34
34
  <div class="datetime-wrap">
35
- <div class="date-wrap">
35
+ <!-- <div class="date-wrap">
36
36
  <VDatepicker
37
37
  v-model="selectedDate"
38
38
  inline
@@ -48,7 +48,7 @@ const hours = Array.from({ length: 18 }, (_, index) => {
48
48
  <template #action-buttons />
49
49
  <template #action-preview />
50
50
  </VDatepicker>
51
- </div>
51
+ </div> -->
52
52
  <div v-if="showTimeWrap" class="time-wrap">
53
53
  <template v-for="hr in hours" :key="hr">
54
54
  <input
@@ -100,7 +100,7 @@ function formatNumber(num: number) {
100
100
 
101
101
  let formattedValue = $ref('')
102
102
  function inputHandler() {
103
- let numeric = formattedValue.replace(/[^\d.-]/g, '')
103
+ const numeric = formattedValue.replace(/[^\d.-]/g, '')
104
104
  const emptyValue = ['', '-', '.'].includes(numeric)
105
105
  if (numeric === '-.' || numeric.endsWith('.') || emptyValue) return
106
106
 
@@ -129,7 +129,7 @@ watch(() => modelValue, (newVal) => {
129
129
  }"
130
130
  >
131
131
  <div :for="id">
132
- <label v-if="label">
132
+ <label v-if="label" class="block">
133
133
  {{ label }}
134
134
  </label>
135
135
  <div class="gap-025" :class="{ 'column flex': layout === 'vertical', 'flex': layout === 'horizontal' }">
@@ -36,6 +36,7 @@ export { default as NavBar } from './NavBar.vue'
36
36
  export { default as PageTitle } from './PageTitle.vue'
37
37
  export { default as Pill } from './Pill.vue'
38
38
  export { default as RouterWrapper } from './RouterWrapper.vue'
39
+ export { default as Spreadsheet } from './Spreadsheet/Index.vue'
39
40
  export { default as Title } from './Title.vue'
40
41
  export { default as ToolBar } from './ToolBar.vue'
41
42
  export { default as TopBar } from './TopBar.vue'
@@ -1,132 +1,140 @@
1
1
  .bgl_btn,
2
2
  .bgl_flatBtn,
3
3
  .bgl_btn-icon {
4
- font-family: inherit;
5
- white-space: nowrap;
6
- cursor: pointer;
7
- box-sizing: border-box;
8
- user-select: none;
9
- border: none;
10
- transition: var(--bgl-transition);
11
- border-radius: var(--btn-border-radius);
12
- line-height: var(--btn-height);
13
- font-size: var(--input-font-size);
14
- display: inline-block;
15
- height: var(--btn-height);
16
- padding: 0;
4
+ font-family: inherit;
5
+ white-space: nowrap;
6
+ cursor: pointer;
7
+ box-sizing: border-box;
8
+ user-select: none;
9
+ border: none;
10
+ transition: var(--bgl-transition);
11
+ border-radius: var(--btn-border-radius);
12
+ line-height: var(--btn-height);
13
+ font-size: var(--input-font-size);
14
+ display: inline-block;
15
+ height: var(--btn-height);
16
+ padding: 0;
17
17
  }
18
18
 
19
19
  .btn-close {
20
- margin-top: -20px;
21
- margin-inline-end: -20px;
22
- margin-inline-start: auto;
23
- margin-bottom: 15px;
24
- transition: var(--bgl-transition);
25
- height: 30px;
26
- width: 30px;
27
- opacity: 0.6;
28
- cursor: pointer;
29
- border-radius: 100%;
30
- outline: 2px solid transparent;
31
- display: flex;
32
- align-items: center;
33
- justify-content: center;
20
+ margin-top: -20px;
21
+ margin-inline-end: -20px;
22
+ margin-inline-start: auto;
23
+ margin-bottom: 15px;
24
+ transition: var(--bgl-transition);
25
+ height: 30px;
26
+ width: 30px;
27
+ opacity: 0.6;
28
+ cursor: pointer;
29
+ border-radius: 100%;
30
+ outline: 2px solid transparent;
31
+ display: flex;
32
+ align-items: center;
33
+ justify-content: center;
34
34
  }
35
35
 
36
36
  .btn-close:hover {
37
- background: var(--bgl-gray-light);
38
- opacity: 1;
37
+ background: var(--bgl-gray-light);
38
+ opacity: 1;
39
39
  }
40
40
 
41
41
  .btn-close:active {
42
- background: var(--bgl-gray);
42
+ background: var(--bgl-gray);
43
43
  }
44
44
 
45
45
  .btn-close::before {
46
- content: 'close';
47
- font-family: 'Material Symbols Outlined', serif;
46
+ content: 'close';
47
+ font-family: 'Material Symbols Outlined', serif;
48
48
  }
49
49
 
50
50
  .bgl_btn.thin {
51
- height: calc(var(--btn-height) * 0.7);
52
- line-height: calc(var(--btn-height) * 0.7);
51
+ height: calc(var(--btn-height) * 0.7);
52
+ line-height: calc(var(--btn-height) * 0.7);
53
53
  }
54
54
 
55
55
  .hover {
56
- cursor: pointer;
57
- transition: all 400ms ease;
56
+ cursor: pointer;
57
+ transition: all 400ms ease;
58
58
  }
59
59
 
60
60
  .hover:hover {
61
- filter: brightness(90%);
61
+ filter: brightness(90%);
62
62
  }
63
63
 
64
64
  .hover:active {
65
- filter: brightness(80%);
65
+ filter: brightness(80%);
66
66
  }
67
67
 
68
68
  .border {
69
- border: 1px solid var(--border-color);
69
+ border: 1px solid var(--border-color);
70
70
  }
71
71
 
72
72
  .border-primary {
73
- border: 1px solid var(--bgl-primary);
73
+ border: 1px solid var(--bgl-primary);
74
+ }
75
+
76
+ .outline {
77
+ outline: 1px solid var(--border-color);
78
+ }
79
+
80
+ .outline-primary {
81
+ outline: 1px solid var(--bgl-primary);
74
82
  }
75
83
 
76
84
  .rotate-270 {
77
- transform: rotate(270deg);
85
+ transform: rotate(270deg);
78
86
  }
79
87
 
80
88
  .rotate-180 {
81
- transform: rotate(180deg);
89
+ transform: rotate(180deg);
82
90
  }
83
91
 
84
92
  .rotate-90 {
85
- transform: rotate(90deg);
93
+ transform: rotate(90deg);
86
94
  }
87
95
 
88
96
  .rotate-0 {
89
- transform: rotate(0deg);
97
+ transform: rotate(0deg);
90
98
  }
91
99
 
92
100
  @media screen and (max-width: 910px) {
93
- .bgl_btn {
94
- padding: 0 20px;
95
- }
101
+ .bgl_btn {
102
+ padding: 0 20px;
103
+ }
96
104
 
97
- .m_border {
98
- border: 1px solid var(--border-color);
99
- }
105
+ .m_border {
106
+ border: 1px solid var(--border-color);
107
+ }
100
108
 
101
- .m_rotate-270 {
102
- transform: rotate(270deg);
103
- }
109
+ .m_rotate-270 {
110
+ transform: rotate(270deg);
111
+ }
104
112
 
105
- .m_rotate-180 {
106
- transform: rotate(180deg);
107
- }
113
+ .m_rotate-180 {
114
+ transform: rotate(180deg);
115
+ }
108
116
 
109
- .m_rotate-90 {
110
- transform: rotate(90deg);
111
- }
117
+ .m_rotate-90 {
118
+ transform: rotate(90deg);
119
+ }
112
120
 
113
- .m_rotate-0 {
114
- transform: rotate(0deg);
115
- }
121
+ .m_rotate-0 {
122
+ transform: rotate(0deg);
123
+ }
116
124
  }
117
125
 
118
126
  .ripple {
119
- position: absolute;
120
- border-radius: 50%;
121
- transform: scale(0);
122
- background: rgba(0, 0, 0, 0.3);
123
- pointer-events: none;
124
- animation: rippleEffect 0.6s ease-out;
127
+ position: absolute;
128
+ border-radius: 50%;
129
+ transform: scale(0);
130
+ background: rgba(0, 0, 0, 0.3);
131
+ pointer-events: none;
132
+ animation: rippleEffect 0.6s ease-out;
125
133
  }
126
134
 
127
135
  @keyframes rippleEffect {
128
- to {
129
- transform: scale(4);
130
- opacity: 0;
131
- }
132
- }
136
+ to {
137
+ transform: scale(4);
138
+ opacity: 0;
139
+ }
140
+ }
@@ -55,6 +55,27 @@
55
55
  aspect-ratio: 1;
56
56
  }
57
57
 
58
+ .vertical-align-middle,
59
+ .vertical-middle {
60
+ vertical-align: middle;
61
+ }
62
+
63
+ .vertical-align-top,
64
+ .vertical-top {
65
+ vertical-align: top;
66
+ }
67
+
68
+ .vertical-align-bottom,
69
+ .vertical-bottom {
70
+ vertical-align: bottom;
71
+ }
72
+
73
+ .vertical-align-baseline,
74
+ .vertical-baseline {
75
+ vertical-align: baseline;
76
+ }
77
+
78
+
58
79
  .flex-center {
59
80
  justify-content: center;
60
81
  align-items: center;
@@ -5380,6 +5401,10 @@
5380
5401
  justify-content: space-between;
5381
5402
  }
5382
5403
 
5404
+ .space-evenly {
5405
+ justify-content: space-evenly;
5406
+ }
5407
+
5383
5408
  .label {
5384
5409
  display: block;
5385
5410
  font-size: var(--label-font-size);
@@ -80,6 +80,27 @@
80
80
  aspect-ratio: 1;
81
81
  }
82
82
 
83
+ .m_vertical-align-middle,
84
+ .m_vertical-middle {
85
+ vertical-align: middle;
86
+ }
87
+
88
+ .m_vertical-align-top,
89
+ .m_vertical-top {
90
+ vertical-align: top;
91
+ }
92
+
93
+ .m_vertical-align-bottom,
94
+ .m_vertical-bottom {
95
+ vertical-align: bottom;
96
+ }
97
+
98
+ .m_vertical-align-baseline,
99
+ .m_vertical-baseline {
100
+ vertical-align: baseline;
101
+ }
102
+
103
+
83
104
  .m_flex-center {
84
105
  justify-items: center;
85
106
  align-items: center;
@@ -4635,6 +4656,10 @@
4635
4656
  justify-content: space-between;
4636
4657
  }
4637
4658
 
4659
+ .m_space-evenly {
4660
+ justify-content: space-evenly;
4661
+ }
4662
+
4638
4663
  .m_label {
4639
4664
  display: block;
4640
4665
  font-size: var(--label-font-size);
@@ -258,6 +258,46 @@
258
258
  font-weight: 900;
259
259
  }
260
260
 
261
+ .line-height-0 {
262
+ line-height: 0;
263
+ }
264
+
265
+ .line-height-01 {
266
+ line-height: 0.1;
267
+ }
268
+
269
+ .line-height-02 {
270
+ line-height: 0.2;
271
+ }
272
+
273
+ .line-height-03 {
274
+ line-height: 0.3;
275
+ }
276
+
277
+ .line-height-04 {
278
+ line-height: 0.4;
279
+ }
280
+
281
+ .line-height-05 {
282
+ line-height: 0.5;
283
+ }
284
+
285
+ .line-height-06 {
286
+ line-height: 0.6;
287
+ }
288
+
289
+ .line-height-07 {
290
+ line-height: 0.7;
291
+ }
292
+
293
+ .line-height-08 {
294
+ line-height: 0.8;
295
+ }
296
+
297
+ .line-height-09 {
298
+ line-height: 0.9;
299
+ }
300
+
261
301
  .line-height-1 {
262
302
  line-height: 1;
263
303
  }
@@ -417,6 +457,7 @@
417
457
  }
418
458
 
419
459
  @media screen and (max-width: 910px) {
460
+
420
461
  .txt20,
421
462
  .txt-20 {
422
463
  font-size: 18px;
@@ -692,6 +733,46 @@
692
733
  font-weight: 900;
693
734
  }
694
735
 
736
+ .m_line-height-0 {
737
+ line-height: 0;
738
+ }
739
+
740
+ .m_line-height-01 {
741
+ line-height: 0.1;
742
+ }
743
+
744
+ .m_line-height-02 {
745
+ line-height: 0.2;
746
+ }
747
+
748
+ .m_line-height-03 {
749
+ line-height: 0.3;
750
+ }
751
+
752
+ .m_line-height-04 {
753
+ line-height: 0.4;
754
+ }
755
+
756
+ .m_line-height-05 {
757
+ line-height: 0.5;
758
+ }
759
+
760
+ .m_line-height-06 {
761
+ line-height: 0.6;
762
+ }
763
+
764
+ .m_line-height-07 {
765
+ line-height: 0.7;
766
+ }
767
+
768
+ .m_line-height-08 {
769
+ line-height: 0.8;
770
+ }
771
+
772
+ .m_line-height-09 {
773
+ line-height: 0.9;
774
+ }
775
+
695
776
  .m_line-height-1 {
696
777
  line-height: 1;
697
778
  }
@@ -833,4 +914,4 @@
833
914
  .m_capitalize {
834
915
  text-transform: capitalize;
835
916
  }
836
- }
917
+ }