Fixed #3827 - FullCalendar: Deprecated component
parent
ac87f9a5d5
commit
977a6b560f
|
@ -1,22 +0,0 @@
|
|||
const FullCalendarProps = [
|
||||
{
|
||||
name: 'events',
|
||||
type: 'array',
|
||||
default: 'null',
|
||||
description: 'An array of events to display.'
|
||||
},
|
||||
{
|
||||
name: 'options',
|
||||
type: 'object',
|
||||
default: 'null',
|
||||
description: 'A configuration object to define properties of FullCalendar.'
|
||||
}
|
||||
];
|
||||
|
||||
module.exports = {
|
||||
fullcalendar: {
|
||||
name: 'FullCalendar',
|
||||
description: 'An event calendar based on the FullCalendar library.',
|
||||
props: FullCalendarProps
|
||||
}
|
||||
};
|
|
@ -1,34 +0,0 @@
|
|||
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
|
||||
|
||||
export interface FullCalendarProps {
|
||||
events?: any[];
|
||||
options?: object;
|
||||
}
|
||||
|
||||
export interface FullCalendarSlots {}
|
||||
|
||||
export declare type FullCalendarEmits = {};
|
||||
|
||||
declare class FullCalendar extends ClassComponent<FullCalendarProps, FullCalendarSlots, FullCalendarEmits> {}
|
||||
|
||||
declare module '@vue/runtime-core' {
|
||||
interface GlobalComponents {
|
||||
FullCalendar: GlobalComponentConstructor<FullCalendar>;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* PrimeVue provides theming for the FullCalendar Vue component.
|
||||
*
|
||||
* Helper API:
|
||||
*
|
||||
* - [FullCalendar](https://fullcalendar.io/docs/vue)
|
||||
*
|
||||
* Demos:
|
||||
*
|
||||
* - [FullCalendar](https://primevue.org/fullcalendar)
|
||||
*
|
||||
* @deprecated
|
||||
*/
|
||||
export default FullCalendar;
|
|
@ -1,64 +0,0 @@
|
|||
<template>
|
||||
<div></div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import '@fullcalendar/core/vdom'; // vite support
|
||||
import { Calendar } from '@fullcalendar/core';
|
||||
|
||||
export default {
|
||||
name: 'FullCalendar',
|
||||
props: {
|
||||
events: Array,
|
||||
options: null
|
||||
},
|
||||
calendar: null,
|
||||
watch: {
|
||||
events(value) {
|
||||
if (value && this.calendar) {
|
||||
this.calendar.removeAllEventSources();
|
||||
this.calendar.addEventSource(value);
|
||||
}
|
||||
},
|
||||
options(value) {
|
||||
if (value && this.calendar) {
|
||||
for (let prop in value) {
|
||||
this.calendar.setOption(prop, value[prop]);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
if (this.$el.offsetParent) {
|
||||
this.initialize();
|
||||
}
|
||||
},
|
||||
updated() {
|
||||
if (!this.calendar && this.$el.offsetParent) {
|
||||
this.initialize();
|
||||
}
|
||||
},
|
||||
beforeUnmount() {
|
||||
if (this.calendar) {
|
||||
this.calendar.destroy();
|
||||
this.calendar = null;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
initialize() {
|
||||
let defaultConfig = { themeSystem: 'standard' };
|
||||
let config = this.options ? { ...this.options, ...defaultConfig } : defaultConfig;
|
||||
|
||||
this.calendar = new Calendar(this.$el, config);
|
||||
this.calendar.render();
|
||||
|
||||
if (this.events) {
|
||||
this.calendar.removeAllEventSources();
|
||||
this.calendar.addEventSource(this.events);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style></style>
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"main": "./fullcalendar.cjs.js",
|
||||
"module": "./fullcalendar.esm.js",
|
||||
"unpkg": "./fullcalendar.min.js",
|
||||
"types": "./FullCalendar.d.ts",
|
||||
"browser": {
|
||||
"./sfc": "./FullCalendar.vue"
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
|
@ -41,11 +41,6 @@
|
|||
],
|
||||
"devDependencies": {
|
||||
"@babel/eslint-parser": "^7.18.9",
|
||||
"@fullcalendar/core": "^5.11.0",
|
||||
"@fullcalendar/daygrid": "^5.11.0",
|
||||
"@fullcalendar/interaction": "^5.11.0",
|
||||
"@fullcalendar/timegrid": "^5.11.0",
|
||||
"@fullcalendar/vue3": "^5.11.0",
|
||||
"@stackblitz/sdk": "^1.8.2",
|
||||
"@vitest/coverage-istanbul": "^0.26.2",
|
||||
"@vue/test-utils": "^2.0.0",
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
import '@fullcalendar/core/vdom'; // solve problem with Vite
|
||||
import dayGridPlugin from '@fullcalendar/daygrid';
|
||||
import interactionPlugin from '@fullcalendar/interaction';
|
||||
import timeGridPlugin from '@fullcalendar/timegrid';
|
||||
import FullCalendar from '@fullcalendar/vue3';
|
||||
|
||||
FullCalendar.options = {
|
||||
plugins: [dayGridPlugin, timeGridPlugin, interactionPlugin]
|
||||
};
|
||||
const $fullCalendar = {
|
||||
install: (Vue, options) => {
|
||||
Vue.config.globalProperties.$fullCalendar = FullCalendar;
|
||||
}
|
||||
};
|
||||
|
||||
export default defineNuxtPlugin((nuxtApp) => {
|
||||
nuxtApp.vueApp.use($fullCalendar);
|
||||
});
|
|
@ -43,7 +43,6 @@ let coreDependencies = {
|
|||
|
||||
let globalDependencies = {
|
||||
vue: 'Vue',
|
||||
'@fullcalendar/core': 'FullCalendar',
|
||||
...coreDependencies
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue