@bagelink/vue 1.14.13 → 1.15.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.
- package/dist/components/AddressSearch.vue.d.ts +6 -7
- package/dist/components/Alert.vue.d.ts.map +1 -1
- package/dist/components/Avatar.vue.d.ts.map +1 -1
- package/dist/components/Badge.vue.d.ts.map +1 -1
- package/dist/components/Btn.vue.d.ts +1 -1
- package/dist/components/Btn.vue.d.ts.map +1 -1
- package/dist/components/Card.vue.d.ts.map +1 -1
- package/dist/components/Carousel.vue.d.ts +0 -11
- package/dist/components/Dropdown.vue.d.ts +0 -2
- package/dist/components/Dropdown.vue.d.ts.map +1 -1
- package/dist/components/Filter.vue.d.ts +30 -0
- package/dist/components/Filter.vue.d.ts.map +1 -0
- package/dist/components/FilterQuery.vue.d.ts +8 -3
- package/dist/components/Image.vue.d.ts.map +1 -1
- package/dist/components/ImportData.vue.d.ts.map +1 -1
- package/dist/components/ListItem.vue.d.ts.map +1 -1
- package/dist/components/MapEmbed/Index.vue.d.ts.map +1 -1
- package/dist/components/Modal.vue.d.ts +0 -1
- package/dist/components/Pagination.vue.d.ts.map +1 -1
- package/dist/components/Pill.vue.d.ts.map +1 -1
- package/dist/components/QueryFilter.vue.d.ts +30 -0
- package/dist/components/QueryFilter.vue.d.ts.map +1 -0
- package/dist/components/Swiper.vue.d.ts +6 -12
- package/dist/components/Swiper.vue.d.ts.map +1 -1
- package/dist/components/Toast.vue.d.ts.map +1 -1
- package/dist/components/analytics/PieChart.vue.d.ts +2 -2
- package/dist/components/calendar/CalendarPopover.vue.d.ts +8 -4
- package/dist/components/calendar/CalendarPopover.vue.d.ts.map +1 -1
- package/dist/components/calendar/CalendarTypes.d.ts +0 -10
- package/dist/components/calendar/Index.vue.d.ts +4 -20
- package/dist/components/calendar/views/WeekView.vue.d.ts +1 -9
- package/dist/components/dataTable/DataTable.vue.d.ts.map +1 -1
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/inputs/ArrayInput.vue.d.ts +2 -4
- package/dist/components/form/inputs/CheckInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/Checkbox.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/CodeEditor/Index.vue.d.ts +0 -54
- package/dist/components/form/inputs/ColorInput.vue.d.ts +1 -3
- package/dist/components/form/inputs/DateInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/DatePicker.vue.d.ts +0 -1
- package/dist/components/form/inputs/EmailInput.vue.d.ts +2 -5
- package/dist/components/form/inputs/JSONInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/MarkdownEditor.vue.d.ts +2 -7
- package/dist/components/form/inputs/NumberInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/OTP.vue.d.ts +1 -2
- package/dist/components/form/inputs/PasswordInput.vue.d.ts +10 -16
- package/dist/components/form/inputs/RadioGroup.vue.d.ts +1 -3
- package/dist/components/form/inputs/RangeInput.vue.d.ts +1 -6
- package/dist/components/form/inputs/RichText/index.vue.d.ts +1 -2
- package/dist/components/form/inputs/RichText/index.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/RichText/utils/media.d.ts.map +1 -1
- package/dist/components/form/inputs/SelectBtn.vue.d.ts +2 -2
- package/dist/components/form/inputs/SelectInput.vue.d.ts +13 -20
- package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/SignaturePad.vue.d.ts +1 -6
- package/dist/components/form/inputs/TableField.vue.d.ts +1 -2
- package/dist/components/form/inputs/TelInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/TextInput.vue.d.ts +2 -3
- package/dist/components/form/inputs/ToggleInput.vue.d.ts +1 -2
- package/dist/components/form/inputs/Upload/UploadInput.vue.d.ts +6 -27
- package/dist/components/form/inputs/Upload/upload.d.ts +1 -1
- package/dist/components/form/inputs/index.d.ts +0 -1
- package/dist/components/index.d.ts +1 -3
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/layout/AppContent.vue.d.ts +1 -1
- package/dist/components/layout/AppContent.vue.d.ts.map +1 -1
- package/dist/components/layout/AppLayout.vue.d.ts +0 -2
- package/dist/components/layout/AppLayout.vue.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.vue.d.ts +1 -5
- package/dist/components/layout/AppSidebar.vue.d.ts.map +1 -1
- package/dist/components/layout/Panel.vue.d.ts.map +1 -1
- package/dist/components/layout/Resizable.vue.d.ts.map +1 -1
- package/dist/components/layout/Skeleton.vue.d.ts.map +1 -1
- package/dist/components/layout/TabsNav.vue.d.ts +1 -12
- package/dist/components/layout/TabsNav.vue.d.ts.map +1 -1
- package/dist/components/layout/appLayoutContext.d.ts +24 -0
- package/dist/components/layout/appLayoutContext.d.ts.map +1 -0
- package/dist/components/layout/index.d.ts.map +1 -1
- package/dist/components/lightbox/Lightbox.vue.d.ts.map +1 -1
- package/dist/composables/index.d.ts.map +1 -1
- package/dist/composables/useDevice.d.ts.map +1 -1
- package/dist/composables/useEscapeKey.d.ts +12 -0
- package/dist/composables/useEscapeKey.d.ts.map +1 -0
- package/dist/composables/useSchemaField.d.ts.map +1 -1
- package/dist/composables/useTheme.d.ts.map +1 -1
- package/dist/dialog/Dialog.vue.d.ts.map +1 -1
- package/dist/dialog/DialogConfirm.vue.d.ts.map +1 -1
- package/dist/form-flow/FormFlow.vue.d.ts.map +1 -1
- package/dist/form-flow/MultiStepForm.vue.d.ts +1 -6
- package/dist/form-flow/form-flow.d.ts +1 -24
- package/dist/form-flow/form-flow.d.ts.map +1 -1
- package/dist/i18n/index.d.ts +0 -838
- package/dist/index.cjs +245 -222
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +42201 -51162
- package/dist/plugins/bagel.d.ts.map +1 -1
- package/dist/style.css +1 -2
- package/dist/types/BagelForm.d.ts +1 -10
- package/dist/types/BagelForm.d.ts.map +1 -1
- package/dist/types/BtnOptions.d.ts.map +1 -1
- package/dist/types/NavLink.d.ts +1 -2
- package/dist/types/TableSchema.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/BagelFormUtils.d.ts +0 -1
- package/dist/utils/calendar/dateUtils.d.ts +2 -2
- package/dist/utils/calendar/dateUtils.d.ts.map +1 -1
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/date.d.ts +116 -0
- package/dist/utils/date.d.ts.map +1 -0
- package/dist/utils/fetch.d.ts +29 -0
- package/dist/utils/fetch.d.ts.map +1 -0
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/string.d.ts +7 -0
- package/dist/utils/string.d.ts.map +1 -0
- package/dist/utils/useSearch.d.ts +1 -1
- package/package.json +3 -10
- package/src/components/AccordionItem.vue +5 -5
- package/src/components/Alert.vue +37 -16
- package/src/components/Avatar.vue +2 -1
- package/src/components/Badge.vue +145 -22
- package/src/components/BglVideo.vue +4 -4
- package/src/components/Btn.vue +81 -69
- package/src/components/Card.vue +7 -6
- package/src/components/Dropdown.vue +7 -14
- package/src/components/FieldSetVue.vue +2 -2
- package/src/components/FilterQuery.vue +3 -3
- package/src/components/Image.vue +5 -3
- package/src/components/JSONSchema.vue +4 -4
- package/src/components/JsonBuilder.vue +3 -3
- package/src/components/ListItem.vue +2 -4
- package/src/components/MapEmbed/Index.vue +18 -17
- package/src/components/NavBar.vue +2 -2
- package/src/components/Spreadsheet/Index.vue +4 -4
- package/src/components/Spreadsheet/SpreadsheetTable.vue +10 -10
- package/src/components/Swiper.vue +3 -1
- package/src/components/Toast.vue +57 -36
- package/src/components/calendar/CalendarPopover.vue +1 -1
- package/src/components/calendar/Index.vue +5 -5
- package/src/components/calendar/views/AgendaView.vue +2 -2
- package/src/components/calendar/views/DayView.vue +1 -1
- package/src/components/calendar/views/MonthView.vue +8 -8
- package/src/components/dataTable/DataTable.vue +68 -10
- package/src/components/form/index.ts +0 -4
- package/src/components/form/inputs/ArrayInput.vue +1 -1
- package/src/components/form/inputs/CheckInput.vue +6 -6
- package/src/components/form/inputs/Checkbox.vue +5 -4
- package/src/components/form/inputs/CodeEditor/Index.vue +1 -1
- package/src/components/form/inputs/ColorInput.vue +5 -5
- package/src/components/form/inputs/DatePicker.vue +3 -3
- package/src/components/form/inputs/EmailInput.vue +15 -15
- package/src/components/form/inputs/NumberInput.vue +11 -11
- package/src/components/form/inputs/OTP.vue +4 -4
- package/src/components/form/inputs/PasswordInput.vue +3 -3
- package/src/components/form/inputs/RadioGroup.vue +1 -1
- package/src/components/form/inputs/RichText/editor.css +4 -4
- package/src/components/form/inputs/RichText/index.vue +39 -39
- package/src/components/form/inputs/RichText/utils/media.ts +1 -92
- package/src/components/form/inputs/RichText/utils/table.ts +4 -4
- package/src/components/form/inputs/SelectBtn.vue +1 -1
- package/src/components/form/inputs/SelectInput.vue +16 -16
- package/src/components/form/inputs/SignaturePad.vue +6 -6
- package/src/components/form/inputs/TableField.vue +7 -7
- package/src/components/form/inputs/TelInput.vue +12 -12
- package/src/components/form/inputs/TextInput.vue +11 -11
- package/src/components/form/inputs/ToggleInput.vue +11 -11
- package/src/components/form/inputs/Upload/upload.css +16 -16
- package/src/components/index.ts +2 -9
- package/src/components/layout/AppContent.vue +5 -19
- package/src/components/layout/AppLayout.vue +47 -18
- package/src/components/layout/AppSidebar.vue +19 -36
- package/src/components/layout/BottomMenu.vue +1 -1
- package/src/components/layout/Resizable.vue +5 -2
- package/src/components/layout/Skeleton.vue +5 -4
- package/src/components/layout/TabsNav.vue +23 -23
- package/src/components/layout/appLayoutContext.ts +44 -0
- package/src/components/layout/index.ts +2 -0
- package/src/components/lightbox/Lightbox.vue +3 -9
- package/src/composables/index.ts +1 -0
- package/src/composables/useDevice.ts +2 -1
- package/src/composables/useEscapeKey.ts +56 -0
- package/src/composables/useSchemaField.ts +2 -17
- package/src/composables/useTheme.ts +23 -19
- package/src/form-flow/FormFlow.vue +2 -0
- package/src/form-flow/form-flow.ts +7 -0
- package/src/index.ts +0 -3
- package/src/plugins/bagel.ts +0 -15
- package/src/styles/app-layout.css +231 -0
- package/src/styles/appearance.css +179 -21
- package/src/styles/bagel.css +103 -97
- package/src/styles/buttons.css +8 -8
- package/src/styles/colors.css +0 -103
- package/src/styles/dark.css +25 -26
- package/src/styles/input-variants.css +11 -11
- package/src/styles/inputs.css +44 -61
- package/src/styles/layout.css +445 -1258
- package/src/styles/loginCard.css +1 -1
- package/src/styles/mobilLayout.css +153 -28
- package/src/styles/text.css +500 -1508
- package/src/styles/theme.css +199 -435
- package/src/styles/transitions.css +4 -4
- package/src/types/BagelForm.ts +46 -151
- package/src/types/BtnOptions.ts +5 -3
- package/src/types/TableSchema.ts +1 -0
- package/src/types/index.ts +0 -5
- package/src/utils/calendar/dateUtils.ts +2 -3
- package/src/utils/constants.ts +7 -0
- package/src/utils/date.ts +482 -0
- package/src/utils/fetch.ts +128 -0
- package/src/utils/index.ts +54 -3
- package/src/utils/sizeParsing.ts +5 -5
- package/src/utils/string.ts +56 -0
- package/vite.config.ts +5 -1
- package/bin/generateFormSchema.ts +0 -1035
- package/bin/utils.ts +0 -223
- package/src/components/Carousel.vue +0 -724
- package/src/components/ImportData.vue +0 -1749
- package/src/components/Modal.vue +0 -184
- package/src/components/ModalConfirm.vue +0 -42
- package/src/components/ModalForm.vue +0 -102
- package/src/components/Pill.vue +0 -149
- package/src/components/Slider.vue +0 -1446
- package/src/components/Title.vue +0 -23
- package/src/components/ToolBar.vue +0 -9
- package/src/components/form/BagelForm.vue +0 -219
- package/src/components/form/BglFieldSet.vue +0 -14
- package/src/components/form/BglMultiStepForm.vue +0 -469
- package/src/components/form/FieldArray.vue +0 -422
- package/src/components/form/useBagelFormState.ts +0 -76
- package/src/composables/useFormField.ts +0 -38
- package/src/dialog/DialogOLD.vue +0 -358
- package/src/plugins/modalTypes.ts +0 -61
- package/src/plugins/useModal.ts +0 -225
- package/src/styles/modal.css +0 -120
- package/src/styles/pillColors.css +0 -0
- package/src/utils/BagelFormUtils.ts +0 -684
|
@@ -422,7 +422,7 @@ watch(() => props.modelValue, (newValue) => {
|
|
|
422
422
|
<CheckInput class="mb-0 jsonCheckbox" :model-value="required.includes(key)" label="Required" @update:model-value="toggleRequired(key)" />
|
|
423
423
|
<Btn
|
|
424
424
|
icon="close"
|
|
425
|
-
size="
|
|
425
|
+
size="sm"
|
|
426
426
|
@click="removeProperty(key)"
|
|
427
427
|
/>
|
|
428
428
|
</div>
|
|
@@ -436,7 +436,7 @@ watch(() => props.modelValue, (newValue) => {
|
|
|
436
436
|
<Btn
|
|
437
437
|
value="Add Property"
|
|
438
438
|
icon="add"
|
|
439
|
-
size="
|
|
439
|
+
size="sm"
|
|
440
440
|
color="purple"
|
|
441
441
|
@click="addProperty"
|
|
442
442
|
/>
|
|
@@ -457,13 +457,13 @@ watch(() => props.modelValue, (newValue) => {
|
|
|
457
457
|
|
|
458
458
|
<style>
|
|
459
459
|
.JSONSchema{
|
|
460
|
-
--input-height: 38px;
|
|
460
|
+
--bgl-input-height: 38px;
|
|
461
461
|
--bgl-accent-color: var(--bgl-purple);
|
|
462
462
|
container-type: inline-size;
|
|
463
463
|
container-name: json-schema;
|
|
464
464
|
}
|
|
465
465
|
.jsonCheckbox{
|
|
466
|
-
--input-height: 44px;
|
|
466
|
+
--bgl-input-height: 44px;
|
|
467
467
|
}
|
|
468
468
|
.jsonFormat {
|
|
469
469
|
gap: 0.25rem !important;
|
|
@@ -207,7 +207,7 @@ watch(() => props.modelValue, () => {
|
|
|
207
207
|
icon="add"
|
|
208
208
|
color="purple"
|
|
209
209
|
outline
|
|
210
|
-
size="
|
|
210
|
+
size="sm"
|
|
211
211
|
@click="addField"
|
|
212
212
|
/>
|
|
213
213
|
</div>
|
|
@@ -216,8 +216,8 @@ watch(() => props.modelValue, () => {
|
|
|
216
216
|
<style scoped>
|
|
217
217
|
.json-builder {
|
|
218
218
|
/* Add any custom styles here */
|
|
219
|
-
--input-height: 27px;
|
|
220
|
-
--input-font-size: 12px;
|
|
219
|
+
--bgl-input-height: 27px;
|
|
220
|
+
--bgl-input-font-size: 12px;
|
|
221
221
|
}
|
|
222
222
|
.grid-json-builder-row{
|
|
223
223
|
grid-template-columns: 2fr 1fr 2fr auto;
|
|
@@ -22,7 +22,6 @@ const props = withDefaults(
|
|
|
22
22
|
fullWidth?: boolean
|
|
23
23
|
ellipsis?: boolean
|
|
24
24
|
ripple?: boolean
|
|
25
|
-
tiny?: boolean
|
|
26
25
|
onClick?: () => void
|
|
27
26
|
}>(),
|
|
28
27
|
{
|
|
@@ -62,9 +61,8 @@ const bind = computed(() => {
|
|
|
62
61
|
<component
|
|
63
62
|
:is="isComponent" v-bind="bind" v-ripple="ripple && isClickable"
|
|
64
63
|
class="flex flex-grow-1 gap-05 list-item" :class="{
|
|
65
|
-
'py-1': !props.thin
|
|
64
|
+
'py-1': !props.thin,
|
|
66
65
|
'py-05': props.thin,
|
|
67
|
-
'py-0': props.tiny,
|
|
68
66
|
'px-1': !props.fullWidth,
|
|
69
67
|
'px-0': props.fullWidth,
|
|
70
68
|
}" @click="onClick"
|
|
@@ -139,7 +137,7 @@ button.list-item {
|
|
|
139
137
|
left: 0;
|
|
140
138
|
right: 0;
|
|
141
139
|
bottom: 0;
|
|
142
|
-
border-bottom: 1px solid var(--border-color);
|
|
140
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
143
141
|
}
|
|
144
142
|
|
|
145
143
|
.list-item:last-child::after {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import type { LatLngExpression, Map, Marker } from 'leaflet'
|
|
3
|
-
import { appendScript,
|
|
4
|
-
import { onMounted, ref, watch } from 'vue'
|
|
3
|
+
import { appendScript, awaitGlobal } from '@bagelink/vue'
|
|
4
|
+
import { onMounted, onUnmounted, ref, watch } from 'vue'
|
|
5
5
|
import './leaflet.css'
|
|
6
6
|
|
|
7
7
|
type MapMarker = {
|
|
@@ -40,14 +40,9 @@ const id = ref(Math.random().toString(36).slice(2, 10))
|
|
|
40
40
|
const defaultMarkerSVG = '<svg width="28" height="38" viewBox="0 0 28 38" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14.2263 37.7955C17.0897 37.7955 19.4109 37.0138 19.4109 36.0496C19.4109 35.0854 17.0897 34.3037 14.2263 34.3037C11.363 34.3037 9.04175 35.0854 9.04175 36.0496C9.04175 37.0138 11.363 37.7955 14.2263 37.7955Z" fill="black" fill-opacity="0.1"/><path d="M14.2265 0.549591C21.2842 0.549591 27.0131 6.23786 27.0787 13.28V13.4024C27.0787 19.3328 24.4759 24.4306 21.5627 28.2764C18.6511 32.12 15.4577 34.6754 14.3457 35.5097C14.2748 35.5629 14.1778 35.5629 14.1068 35.5097C12.9947 34.675 9.80135 32.1197 6.88984 28.2762C3.97665 24.4304 1.37378 19.3328 1.37378 13.4024C1.37378 6.30387 7.12806 0.549591 14.2265 0.549591Z" fill="#ED1b3E" stroke="#ED6C6F"/><path d="M14.2263 21.6185C18.7639 21.6185 22.4424 17.94 22.4424 13.4024C22.4424 8.86477 18.7639 5.18631 14.2263 5.18631C9.68872 5.18631 6.01025 8.86477 6.01025 13.4024C6.01025 17.94 9.68872 21.6185 14.2263 21.6185Z" fill="white"/></svg>'
|
|
41
41
|
const leafletScriptUrl = 'https://unpkg.com/leaflet@1.9.4/dist/leaflet.js'
|
|
42
42
|
|
|
43
|
-
async function loadGlobalL() {
|
|
44
|
-
while (!window.L) { await sleep(100) }
|
|
45
|
-
return window.L
|
|
46
|
-
}
|
|
47
|
-
|
|
48
43
|
async function initializeMap() {
|
|
49
44
|
await appendScript(leafletScriptUrl)
|
|
50
|
-
L.value = await
|
|
45
|
+
L.value = await awaitGlobal('L')
|
|
51
46
|
if (!map.value) {
|
|
52
47
|
map.value = L.value.map(id.value, {
|
|
53
48
|
center: props.center,
|
|
@@ -96,7 +91,7 @@ function latLangFromMarker(marker: MapMarker): LatLngExpression {
|
|
|
96
91
|
}
|
|
97
92
|
|
|
98
93
|
async function watchMarkers(markers?: MapMarker[]) {
|
|
99
|
-
if (!L.value) { L.value = await
|
|
94
|
+
if (!L.value) { L.value = await awaitGlobal('L') }
|
|
100
95
|
_markers.value.forEach(marker => marker.remove())
|
|
101
96
|
if (!markers) { return }
|
|
102
97
|
|
|
@@ -111,6 +106,12 @@ watch(() => props.markers, watchMarkers, { immediate: true })
|
|
|
111
106
|
watch(() => props.center, center => map.value?.setView(center, props.zoom), { immediate: true })
|
|
112
107
|
|
|
113
108
|
onMounted(initializeMap)
|
|
109
|
+
|
|
110
|
+
onUnmounted(() => {
|
|
111
|
+
_markers.value.forEach(marker => marker.remove())
|
|
112
|
+
map.value?.remove()
|
|
113
|
+
map.value = undefined
|
|
114
|
+
})
|
|
114
115
|
</script>
|
|
115
116
|
|
|
116
117
|
<template>
|
|
@@ -120,7 +121,7 @@ onMounted(initializeMap)
|
|
|
120
121
|
<style>
|
|
121
122
|
.leaflet-map {
|
|
122
123
|
height: 100%;
|
|
123
|
-
border-radius: var(--input-border-radius);
|
|
124
|
+
border-radius: var(--bgl-input-border-radius);
|
|
124
125
|
position: relative;
|
|
125
126
|
background: var(--bgl-bg);
|
|
126
127
|
direction: ltr;
|
|
@@ -149,27 +150,27 @@ onMounted(initializeMap)
|
|
|
149
150
|
|
|
150
151
|
.leaflet-touch .leaflet-control-zoom-in,
|
|
151
152
|
.leaflet-touch .leaflet-control-zoom-out {
|
|
152
|
-
font-size: var(--input-font-size);
|
|
153
|
+
font-size: var(--bgl-input-font-size);
|
|
153
154
|
}
|
|
154
155
|
|
|
155
156
|
.leaflet-bar {
|
|
156
|
-
border-radius: var(--input-border-radius) !important;
|
|
157
|
+
border-radius: var(--bgl-input-border-radius) !important;
|
|
157
158
|
}
|
|
158
159
|
|
|
159
160
|
.leaflet-touch .leaflet-bar a:first-child {
|
|
160
|
-
border-top-left-radius: calc(var(--input-border-radius) - 2px) !important;
|
|
161
|
-
border-top-right-radius: calc(var(--input-border-radius) - 2px) !important;
|
|
161
|
+
border-top-left-radius: calc(var(--bgl-input-border-radius) - 2px) !important;
|
|
162
|
+
border-top-right-radius: calc(var(--bgl-input-border-radius) - 2px) !important;
|
|
162
163
|
}
|
|
163
164
|
|
|
164
165
|
.leaflet-touch .leaflet-bar a:last-child {
|
|
165
|
-
border-bottom-left-radius: calc(var(--input-border-radius) - 2px) !important;
|
|
166
|
-
border-bottom-right-radius: calc(var(--input-border-radius) - 2px) !important;
|
|
166
|
+
border-bottom-left-radius: calc(var(--bgl-input-border-radius) - 2px) !important;
|
|
167
|
+
border-bottom-right-radius: calc(var(--bgl-input-border-radius) - 2px) !important;
|
|
167
168
|
}
|
|
168
169
|
|
|
169
170
|
.leaflet-bar a {
|
|
170
171
|
background: var(--bgl-box-bg) !important;
|
|
171
172
|
transition: var(--bgl-transition);
|
|
172
|
-
border-bottom: 1px solid var(--border-color) !important;
|
|
173
|
+
border-bottom: 1px solid var(--bgl-border-color) !important;
|
|
173
174
|
display: flex;
|
|
174
175
|
justify-content: center;
|
|
175
176
|
align-items: center;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" setup>
|
|
2
2
|
import type { IconType, NavLink } from '@bagelink/vue'
|
|
3
|
-
import { Icon } from '@bagelink/vue'
|
|
3
|
+
import { Icon, MOBILE_BREAKPOINT } from '@bagelink/vue'
|
|
4
4
|
import { onMounted, ref } from 'vue'
|
|
5
5
|
import { resolveI18n } from '../i18n'
|
|
6
6
|
|
|
@@ -24,7 +24,7 @@ withDefaults(
|
|
|
24
24
|
const isOpen = ref(true)
|
|
25
25
|
|
|
26
26
|
function calcIsOpen() {
|
|
27
|
-
isOpen.value = window.innerWidth
|
|
27
|
+
isOpen.value = window.innerWidth <= MOBILE_BREAKPOINT
|
|
28
28
|
|
|
29
29
|
const storedNavOpenVal = localStorage.getItem('navOpen')
|
|
30
30
|
if (storedNavOpenVal === 'true' || storedNavOpenVal === null) { isOpen.value = true }
|
|
@@ -217,7 +217,7 @@ function handleSpreadsheetKeyDown(event: KeyboardEvent) {
|
|
|
217
217
|
flat thin small value="$t:spreadsheet.selectAll"
|
|
218
218
|
@click="visibleColumns = columnOptions.map(col => col.key)"
|
|
219
219
|
/>
|
|
220
|
-
<Btn flat thin
|
|
220
|
+
<Btn flat thin sm value="$t:spreadsheet.clearAll" @click="visibleColumns = []" />
|
|
221
221
|
</div>
|
|
222
222
|
<CheckInput
|
|
223
223
|
v-for="col in columnOptions" :key="col.key" v-model="visibleColumns"
|
|
@@ -265,16 +265,16 @@ function handleSpreadsheetKeyDown(event: KeyboardEvent) {
|
|
|
265
265
|
<style>
|
|
266
266
|
.spreadsheet {
|
|
267
267
|
user-select: none;
|
|
268
|
-
outline: 1px solid var(--border-color);
|
|
268
|
+
outline: 1px solid var(--bgl-border-color);
|
|
269
269
|
}
|
|
270
270
|
|
|
271
271
|
.spreadsheet-toolbar {
|
|
272
|
-
border-bottom: 1px solid var(--border-color);
|
|
272
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
273
273
|
padding-bottom: 0.375rem;
|
|
274
274
|
margin-bottom: 0;
|
|
275
275
|
}
|
|
276
276
|
|
|
277
277
|
body>div:has(.spreadsheet) ::-webkit-scrollbar-track {
|
|
278
|
-
background: var(--input-bg) !important;
|
|
278
|
+
background: var(--bgl-input-bg) !important;
|
|
279
279
|
}
|
|
280
280
|
</style>
|
|
@@ -180,7 +180,7 @@ function selectionEdgeClasses(rowIndex: number, localColIndex: number): Record<s
|
|
|
180
180
|
.row-number{
|
|
181
181
|
position: sticky;
|
|
182
182
|
inset-inline-start: 0;
|
|
183
|
-
background: var(--input-bg);
|
|
183
|
+
background: var(--bgl-input-bg);
|
|
184
184
|
color: var(--txt-muted, #888);
|
|
185
185
|
z-index: 1;
|
|
186
186
|
}
|
|
@@ -188,7 +188,7 @@ function selectionEdgeClasses(rowIndex: number, localColIndex: number): Record<s
|
|
|
188
188
|
content: '';
|
|
189
189
|
position: absolute;
|
|
190
190
|
inset: -1px;
|
|
191
|
-
border: 1px solid var(--border-color);
|
|
191
|
+
border: 1px solid var(--bgl-border-color);
|
|
192
192
|
}
|
|
193
193
|
|
|
194
194
|
.stickyTop{
|
|
@@ -202,11 +202,11 @@ function selectionEdgeClasses(rowIndex: number, localColIndex: number): Record<s
|
|
|
202
202
|
position: absolute;
|
|
203
203
|
display: block;
|
|
204
204
|
inset: 0;
|
|
205
|
-
border-bottom: 1px solid var(--border-color);
|
|
205
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
206
206
|
}
|
|
207
207
|
|
|
208
208
|
.fixed-columns {
|
|
209
|
-
border-right: 2px solid var(--border-color);
|
|
209
|
+
border-right: 2px solid var(--bgl-border-color);
|
|
210
210
|
}
|
|
211
211
|
table {
|
|
212
212
|
border-collapse: collapse;
|
|
@@ -219,14 +219,14 @@ th, td {
|
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
th {
|
|
222
|
-
background: var(--input-bg);
|
|
222
|
+
background: var(--bgl-input-bg);
|
|
223
223
|
white-space: nowrap;
|
|
224
224
|
position: relative;
|
|
225
225
|
padding: 0.25rem 0.5rem;
|
|
226
226
|
font-weight: 500;
|
|
227
227
|
text-align: start;
|
|
228
|
-
border-bottom: 1px solid var(--border-color);
|
|
229
|
-
border-inline-start: 1px solid var(--border-color);
|
|
228
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
229
|
+
border-inline-start: 1px solid var(--bgl-border-color);
|
|
230
230
|
|
|
231
231
|
}
|
|
232
232
|
th .bgl_icon-font{
|
|
@@ -257,7 +257,7 @@ td.locked.selected {
|
|
|
257
257
|
background: var(--bgl-primary-light);
|
|
258
258
|
}
|
|
259
259
|
td {
|
|
260
|
-
border: 1px solid var(--border-color);
|
|
260
|
+
border: 1px solid var(--bgl-border-color);
|
|
261
261
|
height: 40px;
|
|
262
262
|
vertical-align: middle;
|
|
263
263
|
}
|
|
@@ -311,7 +311,7 @@ td .bgl-checkbox{
|
|
|
311
311
|
}
|
|
312
312
|
td:has(.bgl-checkbox){
|
|
313
313
|
text-align: center;
|
|
314
|
-
background: var(--input-bg);
|
|
314
|
+
background: var(--bgl-input-bg);
|
|
315
315
|
}
|
|
316
316
|
td:has(:checked){
|
|
317
317
|
background: var(--bgl-primary-light);
|
|
@@ -355,6 +355,6 @@ td:has(:checked){
|
|
|
355
355
|
color: var(--txt-muted, #888);
|
|
356
356
|
font-size: 0.875rem;
|
|
357
357
|
background: var(--bgl-white);
|
|
358
|
-
border: 1px solid var(--border-color);
|
|
358
|
+
border: 1px solid var(--bgl-border-color);
|
|
359
359
|
}
|
|
360
360
|
</style>
|
|
@@ -14,6 +14,8 @@ import 'swiper/css/effect-cube'
|
|
|
14
14
|
import 'swiper/css/effect-flip'
|
|
15
15
|
import 'swiper/css/effect-cards'
|
|
16
16
|
|
|
17
|
+
defineOptions({ name: 'BglSwiper' })
|
|
18
|
+
|
|
17
19
|
type SwiperEffect = 'slide' | 'fade' | 'cube' | 'coverflow' | 'flip' | 'cards'
|
|
18
20
|
type SwiperDirection = 'horizontal' | 'vertical'
|
|
19
21
|
type SwiperVariant = 'default' | 'testimonial' | 'gallery' | 'cards' | 'coverflow' | 'hero'
|
|
@@ -505,7 +507,7 @@ defineExpose({
|
|
|
505
507
|
opacity: 0.8;
|
|
506
508
|
}
|
|
507
509
|
|
|
508
|
-
@media screen and (max-width:
|
|
510
|
+
@media screen and (max-width: 910px) {
|
|
509
511
|
.swi-ctrl {
|
|
510
512
|
padding: 0rem 0.5rem;
|
|
511
513
|
}
|
package/src/components/Toast.vue
CHANGED
|
@@ -1,28 +1,45 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { Icon } from '@bagelink/vue'
|
|
3
|
+
import { computed } from 'vue'
|
|
4
|
+
|
|
5
|
+
defineOptions({ name: 'BglToast' })
|
|
6
|
+
|
|
7
|
+
type ToastType = 'success' | 'error' | 'warning' | 'info'
|
|
3
8
|
|
|
4
9
|
interface Props {
|
|
5
10
|
message: string
|
|
6
|
-
type?:
|
|
11
|
+
type?: ToastType
|
|
12
|
+
/** Boolean shorthands: <Toast error message="..." /> */
|
|
13
|
+
info?: boolean
|
|
14
|
+
success?: boolean
|
|
15
|
+
warning?: boolean
|
|
16
|
+
error?: boolean
|
|
7
17
|
showIcon?: boolean
|
|
8
18
|
showCloseButton?: boolean
|
|
9
19
|
closeToast?: () => void
|
|
10
20
|
}
|
|
11
21
|
|
|
12
|
-
withDefaults(defineProps<Props>(), {
|
|
13
|
-
type: 'info',
|
|
22
|
+
const props = withDefaults(defineProps<Props>(), {
|
|
14
23
|
showIcon: true,
|
|
15
24
|
showCloseButton: true,
|
|
16
25
|
})
|
|
26
|
+
|
|
27
|
+
const computedType = computed<ToastType>(() => {
|
|
28
|
+
if (props.type) { return props.type }
|
|
29
|
+
if (props.error) { return 'error' }
|
|
30
|
+
if (props.warning) { return 'warning' }
|
|
31
|
+
if (props.success) { return 'success' }
|
|
32
|
+
return 'info'
|
|
33
|
+
})
|
|
17
34
|
</script>
|
|
18
35
|
|
|
19
36
|
<template>
|
|
20
|
-
<div class="custom-toast" :class="`custom-toast--${
|
|
37
|
+
<div class="custom-toast" :class="`custom-toast--${computedType}`">
|
|
21
38
|
<div v-if="showIcon" class="custom-toast__icon">
|
|
22
|
-
<Icon v-if="
|
|
23
|
-
<Icon v-if="
|
|
24
|
-
<Icon v-if="
|
|
25
|
-
<Icon v-if="
|
|
39
|
+
<Icon v-if="computedType === 'success'" icon="check_circle" />
|
|
40
|
+
<Icon v-if="computedType === 'error'" icon="dangerous" />
|
|
41
|
+
<Icon v-if="computedType === 'warning'" icon="report" />
|
|
42
|
+
<Icon v-if="computedType === 'info'" icon="info" />
|
|
26
43
|
</div>
|
|
27
44
|
<div class="custom-toast__content">
|
|
28
45
|
{{ message }}
|
|
@@ -35,27 +52,31 @@ withDefaults(defineProps<Props>(), {
|
|
|
35
52
|
|
|
36
53
|
<style>
|
|
37
54
|
.custom-toast {
|
|
38
|
-
--toast-border-radius:
|
|
55
|
+
--toast-border-radius: var(--bgl-btn-border-radius);
|
|
56
|
+
--toast-success: var(--bgl-green);
|
|
57
|
+
--toast-error: var(--bgl-red);
|
|
58
|
+
--toast-warning: var(--bgl-yellow);
|
|
59
|
+
--toast-info: var(--bgl-blue);
|
|
39
60
|
display: flex;
|
|
40
61
|
align-items: center;
|
|
41
|
-
gap:
|
|
42
|
-
padding:
|
|
43
|
-
padding-
|
|
62
|
+
gap: 0.75rem;
|
|
63
|
+
padding: 1rem;
|
|
64
|
+
padding-inline-start: 1.25rem;
|
|
44
65
|
border-radius: var(--toast-border-radius);
|
|
45
|
-
background:
|
|
46
|
-
box-shadow: 0 4px 12px
|
|
66
|
+
background: var(--bgl-box-bg);
|
|
67
|
+
box-shadow: 0 4px 12px var(--bgl-shadow);
|
|
47
68
|
min-width: 300px;
|
|
48
|
-
font-family:
|
|
69
|
+
font-family: var(--bgl-font);
|
|
49
70
|
position: relative;
|
|
50
71
|
overflow: hidden;
|
|
51
|
-
outline: 1px solid var(--border-color);
|
|
52
|
-
|
|
72
|
+
outline: 1px solid var(--bgl-border-color);
|
|
73
|
+
outline-offset: -1px;
|
|
53
74
|
}
|
|
54
75
|
|
|
55
76
|
.custom-toast::before {
|
|
56
77
|
content: '';
|
|
57
78
|
position: absolute;
|
|
58
|
-
|
|
79
|
+
inset-inline-start: 0;
|
|
59
80
|
top: 0;
|
|
60
81
|
bottom: 0;
|
|
61
82
|
width: 6px;
|
|
@@ -63,52 +84,52 @@ withDefaults(defineProps<Props>(), {
|
|
|
63
84
|
}
|
|
64
85
|
|
|
65
86
|
.custom-toast--success::before {
|
|
66
|
-
background:
|
|
87
|
+
background: var(--toast-success);
|
|
67
88
|
}
|
|
68
89
|
|
|
69
90
|
.custom-toast--success .custom-toast__icon {
|
|
70
|
-
color:
|
|
91
|
+
color: var(--toast-success);
|
|
71
92
|
}
|
|
72
93
|
|
|
73
94
|
.custom-toast--error::before {
|
|
74
|
-
background:
|
|
95
|
+
background: var(--toast-error);
|
|
75
96
|
}
|
|
76
97
|
|
|
77
98
|
.custom-toast--error .custom-toast__icon {
|
|
78
|
-
color:
|
|
99
|
+
color: var(--toast-error);
|
|
79
100
|
}
|
|
80
101
|
|
|
81
102
|
.custom-toast--warning::before {
|
|
82
|
-
background:
|
|
103
|
+
background: var(--toast-warning);
|
|
83
104
|
}
|
|
84
105
|
|
|
85
106
|
.custom-toast--warning .custom-toast__icon {
|
|
86
|
-
color:
|
|
107
|
+
color: var(--toast-warning);
|
|
87
108
|
}
|
|
88
109
|
|
|
89
110
|
.custom-toast--info::before {
|
|
90
|
-
background:
|
|
111
|
+
background: var(--toast-info);
|
|
91
112
|
}
|
|
92
113
|
|
|
93
114
|
.custom-toast--info .custom-toast__icon {
|
|
94
|
-
color:
|
|
115
|
+
color: var(--toast-info);
|
|
95
116
|
}
|
|
96
117
|
|
|
97
118
|
.custom-toast__icon {
|
|
98
|
-
font-size:
|
|
119
|
+
font-size: 1.25rem;
|
|
99
120
|
font-weight: bold;
|
|
100
121
|
line-height: 1;
|
|
101
122
|
display: flex;
|
|
102
123
|
align-items: center;
|
|
103
124
|
justify-content: center;
|
|
104
|
-
width:
|
|
105
|
-
height:
|
|
125
|
+
width: 1.5rem;
|
|
126
|
+
height: 1.5rem;
|
|
106
127
|
}
|
|
107
128
|
|
|
108
129
|
.custom-toast__content {
|
|
109
130
|
flex: 1;
|
|
110
|
-
font-size:
|
|
111
|
-
color:
|
|
131
|
+
font-size: var(--bgl-input-font-size);
|
|
132
|
+
color: var(--bgl-text-color);
|
|
112
133
|
line-height: 1.5;
|
|
113
134
|
}
|
|
114
135
|
|
|
@@ -116,14 +137,14 @@ withDefaults(defineProps<Props>(), {
|
|
|
116
137
|
background: none;
|
|
117
138
|
border: none;
|
|
118
139
|
cursor: pointer;
|
|
119
|
-
font-size:
|
|
120
|
-
color:
|
|
121
|
-
padding:
|
|
140
|
+
font-size: 1.125rem;
|
|
141
|
+
color: var(--bgl-gray);
|
|
142
|
+
padding: 0.25rem;
|
|
122
143
|
line-height: 1;
|
|
123
|
-
transition:
|
|
144
|
+
transition: var(--bgl-transition);
|
|
124
145
|
}
|
|
125
146
|
|
|
126
147
|
.custom-toast__close:hover {
|
|
127
|
-
color:
|
|
148
|
+
color: var(--bgl-text-color);
|
|
128
149
|
}
|
|
129
150
|
</style>
|
|
@@ -78,7 +78,7 @@ function closePopover() {
|
|
|
78
78
|
min-width: 250px;
|
|
79
79
|
max-width: 350px;
|
|
80
80
|
background-color: white;
|
|
81
|
-
border-radius: var(--btn-border-radius);
|
|
81
|
+
border-radius: var(--bgl-btn-border-radius);
|
|
82
82
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
83
83
|
animation: fadeIn 0.2s ease;
|
|
84
84
|
transform-origin: center left;
|
|
@@ -163,20 +163,20 @@ onMounted(() => {
|
|
|
163
163
|
{{ formatDate(currentDate, 'YYYY') }}
|
|
164
164
|
</h3>
|
|
165
165
|
<div class="ms-auto flex gap-025 m_flex-wrap">
|
|
166
|
-
<TabsNav size="
|
|
167
|
-
style="--bgl_tabs-border-radius: calc(var(--btn-border-radius) / 2)" class="txt12 m_mb-05 m_w-100p " align-txt="center" />
|
|
166
|
+
<TabsNav size="sm" v-if="viewSwitcher === 'tabs'" :model-value="currentView" :tabs="viewTabs" group="calendar-view" @update:model-value="handleViewChange($event as CalendarView)"
|
|
167
|
+
style="--bgl_tabs-border-radius: calc(var(--bgl-btn-border-radius) / 2)" class="txt12 m_mb-05 m_w-100p " align-txt="center" />
|
|
168
168
|
<Dropdown v-else thin :value="currentView" iconEnd="keyboard_arrow_down" color="gray">
|
|
169
169
|
<ListItem v-for="(_, key) in views" :key="key" thin :title="t(`calendar.views.${key.toLowerCase()}`)" @click="handleViewChange(key)" />
|
|
170
170
|
</Dropdown>
|
|
171
171
|
<div class="flex gap-025">
|
|
172
|
-
<Btn icon="calendar" size="
|
|
172
|
+
<Btn icon="calendar" size="sm" class="txt12" color="gray" :value="t('calendar.today')" @click="handleDateChange(new Date())" />
|
|
173
173
|
<Btn
|
|
174
|
-
icon="chevron_left" color="gray" size="
|
|
174
|
+
icon="chevron_left" color="gray" size="sm" class=""
|
|
175
175
|
:disabled="currentView === 'Agenda'"
|
|
176
176
|
@click="handleDateChange(timeDelta(currentDate, { [viewToDeltaKey[currentView]]: -1 }))"
|
|
177
177
|
/>
|
|
178
178
|
<Btn
|
|
179
|
-
icon="chevron_right" color="gray" size="
|
|
179
|
+
icon="chevron_right" color="gray" size="sm" class=""
|
|
180
180
|
:disabled="currentView === 'Agenda'"
|
|
181
181
|
@click="handleDateChange(timeDelta(currentDate, { [viewToDeltaKey[currentView]]: 1 }))"
|
|
182
182
|
/>
|
|
@@ -239,12 +239,12 @@ onUnmounted(() => { containerRef.value?.removeEventListener('scroll', handleScro
|
|
|
239
239
|
display: block;
|
|
240
240
|
width: 1px;
|
|
241
241
|
height: calc(100% - 2rem);
|
|
242
|
-
background: var(--border-color, #e6e8ec);
|
|
242
|
+
background: var(--bgl-border-color, #e6e8ec);
|
|
243
243
|
margin: 0.5rem auto 0;
|
|
244
244
|
}
|
|
245
245
|
|
|
246
246
|
/* .agenda-event-card {
|
|
247
|
-
border-inline-start: var(--event-color, var(--bgl-primary)) solid calc(var(--card-border-radius) + 0.25rem);
|
|
247
|
+
border-inline-start: var(--event-color, var(--bgl-primary)) solid calc(var(--bgl-card-border-radius) + 0.25rem);
|
|
248
248
|
} */
|
|
249
249
|
|
|
250
250
|
.agenda-event-card h3::before {
|
|
@@ -277,7 +277,7 @@ onUnmounted(() => {
|
|
|
277
277
|
.events-column {
|
|
278
278
|
flex-grow: 1;
|
|
279
279
|
position: relative;
|
|
280
|
-
border-inline-start: 1px solid var(--border-color);
|
|
280
|
+
border-inline-start: 1px solid var(--bgl-border-color);
|
|
281
281
|
min-height: 100%; /* Ensure the column fills the full height */
|
|
282
282
|
}
|
|
283
283
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import type { SetupContext } from 'vue'
|
|
3
3
|
import type { CalendarEvent } from '../CalendarTypes'
|
|
4
|
-
import { formatDate, getI18n } from '@bagelink/vue'
|
|
4
|
+
import { formatDate, getI18n, useDevice } from '@bagelink/vue'
|
|
5
5
|
import { computed, useSlots } from 'vue'
|
|
6
6
|
|
|
7
7
|
interface MonthViewEvent {
|
|
@@ -23,8 +23,8 @@ const emit = defineEmits<{
|
|
|
23
23
|
|
|
24
24
|
const slots: SetupContext['slots'] = useSlots()
|
|
25
25
|
|
|
26
|
-
// Responsive state
|
|
27
|
-
const isMobile =
|
|
26
|
+
// Responsive state (reactive — tracks resize via useDevice)
|
|
27
|
+
const { isMobile } = useDevice()
|
|
28
28
|
|
|
29
29
|
// Calendar data
|
|
30
30
|
const weekDays = computed(() => {
|
|
@@ -166,7 +166,7 @@ function handleEventSelection(event: CalendarEvent, domEvent?: MouseEvent) {
|
|
|
166
166
|
.month-header {
|
|
167
167
|
display: grid;
|
|
168
168
|
grid-template-columns: repeat(7, 1fr);
|
|
169
|
-
border-bottom: 1px solid var(--border-color);
|
|
169
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
170
170
|
}
|
|
171
171
|
|
|
172
172
|
.weekday {
|
|
@@ -181,13 +181,13 @@ function handleEventSelection(event: CalendarEvent, domEvent?: MouseEvent) {
|
|
|
181
181
|
grid-template-rows: repeat(6, 1fr);
|
|
182
182
|
flex-grow: 1;
|
|
183
183
|
overflow: auto;
|
|
184
|
-
border-inline-end: 1px solid var(--border-color);
|
|
184
|
+
border-inline-end: 1px solid var(--bgl-border-color);
|
|
185
185
|
|
|
186
186
|
}
|
|
187
187
|
|
|
188
188
|
.day-cell {
|
|
189
|
-
border-inline-start: 1px solid var(--border-color);
|
|
190
|
-
border-bottom: 1px solid var(--border-color);
|
|
189
|
+
border-inline-start: 1px solid var(--bgl-border-color);
|
|
190
|
+
border-bottom: 1px solid var(--bgl-border-color);
|
|
191
191
|
padding: 0.5rem;
|
|
192
192
|
min-height: 100px;
|
|
193
193
|
display: flex;
|
|
@@ -260,7 +260,7 @@ function handleEventSelection(event: CalendarEvent, domEvent?: MouseEvent) {
|
|
|
260
260
|
min-width: 250px;
|
|
261
261
|
max-width: 350px;
|
|
262
262
|
background-color: white;
|
|
263
|
-
border-radius: var(--btn-border-radius);
|
|
263
|
+
border-radius: var(--bgl-btn-border-radius);
|
|
264
264
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
265
265
|
animation: fadeIn 0.2s ease;
|
|
266
266
|
transform-origin: center left;
|