first comit
This commit is contained in:
79
static/fullcalendar/packages/web-component/index.global.js
Normal file
79
static/fullcalendar/packages/web-component/index.global.js
Normal file
@@ -0,0 +1,79 @@
|
||||
/*!
|
||||
FullCalendar Web Component v6.1.11
|
||||
Docs & License: https://fullcalendar.io/docs/web-component
|
||||
(c) 2023 Adam Shaw
|
||||
*/
|
||||
(function (core) {
|
||||
'use strict';
|
||||
|
||||
class FullCalendarElement extends HTMLElement {
|
||||
constructor() {
|
||||
super(...arguments);
|
||||
this._calendar = null;
|
||||
this._options = null;
|
||||
}
|
||||
connectedCallback() {
|
||||
this._handleOptionsStr(this.getAttribute('options'));
|
||||
}
|
||||
disconnectedCallback() {
|
||||
this._handleOptionsStr(null);
|
||||
}
|
||||
attributeChangedCallback(name, oldVal, newVal) {
|
||||
if (name === 'options' &&
|
||||
this._calendar // initial render happened
|
||||
) {
|
||||
this._handleOptionsStr(newVal);
|
||||
}
|
||||
}
|
||||
get options() {
|
||||
return this._options;
|
||||
}
|
||||
set options(options) {
|
||||
this._handleOptions(options);
|
||||
}
|
||||
getApi() {
|
||||
return this._calendar;
|
||||
}
|
||||
_handleOptionsStr(optionsStr) {
|
||||
this._handleOptions(optionsStr ? JSON.parse(optionsStr) : null);
|
||||
}
|
||||
_handleOptions(options) {
|
||||
if (options) {
|
||||
if (this._calendar) {
|
||||
this._calendar.resetOptions(options);
|
||||
}
|
||||
else {
|
||||
let root;
|
||||
if (this.hasAttribute('shadow')) {
|
||||
this.attachShadow({ mode: 'open' });
|
||||
root = this.shadowRoot;
|
||||
}
|
||||
else {
|
||||
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
||||
root = this;
|
||||
}
|
||||
root.innerHTML = '<div></div>';
|
||||
let calendarEl = root.querySelector('div');
|
||||
let calendar = new core.Calendar(calendarEl, options);
|
||||
calendar.render();
|
||||
this._calendar = calendar;
|
||||
}
|
||||
this._options = options;
|
||||
}
|
||||
else {
|
||||
if (this._calendar) {
|
||||
this._calendar.destroy();
|
||||
this._calendar = null;
|
||||
}
|
||||
this._options = null;
|
||||
}
|
||||
}
|
||||
static get observedAttributes() {
|
||||
return ['options'];
|
||||
}
|
||||
}
|
||||
|
||||
globalThis.FullCalendarElement = FullCalendarElement;
|
||||
customElements.define('full-calendar', FullCalendarElement);
|
||||
|
||||
})(FullCalendar);
|
||||
6
static/fullcalendar/packages/web-component/index.global.min.js
vendored
Normal file
6
static/fullcalendar/packages/web-component/index.global.min.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
FullCalendar Web Component v6.1.11
|
||||
Docs & License: https://fullcalendar.io/docs/web-component
|
||||
(c) 2023 Adam Shaw
|
||||
*/
|
||||
!function(t){"use strict";class e extends HTMLElement{constructor(){super(...arguments),this._calendar=null,this._options=null}connectedCallback(){this._handleOptionsStr(this.getAttribute("options"))}disconnectedCallback(){this._handleOptionsStr(null)}attributeChangedCallback(t,e,n){"options"===t&&this._calendar&&this._handleOptionsStr(n)}get options(){return this._options}set options(t){this._handleOptions(t)}getApi(){return this._calendar}_handleOptionsStr(t){this._handleOptions(t?JSON.parse(t):null)}_handleOptions(e){if(e){if(this._calendar)this._calendar.resetOptions(e);else{let n;this.hasAttribute("shadow")?(this.attachShadow({mode:"open"}),n=this.shadowRoot):n=this,n.innerHTML="<div></div>";let s=n.querySelector("div"),i=new t.Calendar(s,e);i.render(),this._calendar=i}this._options=e}else this._calendar&&(this._calendar.destroy(),this._calendar=null),this._options=null}static get observedAttributes(){return["options"]}}globalThis.FullCalendarElement=e,customElements.define("full-calendar",e)}(FullCalendar);
|
||||
Reference in New Issue
Block a user