Skip to content

Commit

Permalink
v2.3.2
Browse files Browse the repository at this point in the history
Another attempt to fix the bug in SvelteKit when using a function for the theme option
  • Loading branch information
vkurko committed Aug 30, 2023
1 parent cfc7558 commit 6b9d474
Show file tree
Hide file tree
Showing 24 changed files with 184 additions and 178 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Event Calendar changelog

## 2.3.2
August 30, 2023

* Another attempt to fix the bug in SvelteKit when using a function for the `theme` option ([179](https://github.com/vkurko/calendar/issues/179))

## 2.3.1
August 29, 2023

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,8 +196,8 @@ import '@event-calendar/core/index.css';
### Pre-built browser ready bundle
Include the following lines of code in the `<head>` section of your page:
```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.js"></script>
```

<details>
Expand Down
4 changes: 2 additions & 2 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
<link rel="manifest" href="site.webmanifest">
<link rel="stylesheet" href="global.css">

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.js"></script>
<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
Expand Down
54 changes: 27 additions & 27 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 8 additions & 8 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "event-calendar",
"version": "2.3.1",
"version": "2.3.2",
"scripts": {
"build": "rollup -c",
"dev": "rollup -c -w",
Expand All @@ -13,13 +13,13 @@
"@babel/plugin-transform-runtime": "^7.22.9",
"@babel/preset-env": "^7.22.9",
"@babel/runtime-corejs3": "^7.22.6",
"@event-calendar/build": "~2.3.1",
"@event-calendar/core": "~2.3.1",
"@event-calendar/day-grid": "~2.3.1",
"@event-calendar/interaction": "~2.3.1",
"@event-calendar/list": "~2.3.1",
"@event-calendar/resource-time-grid": "~2.3.1",
"@event-calendar/time-grid": "~2.3.1",
"@event-calendar/build": "~2.3.2",
"@event-calendar/core": "~2.3.2",
"@event-calendar/day-grid": "~2.3.2",
"@event-calendar/interaction": "~2.3.2",
"@event-calendar/list": "~2.3.2",
"@event-calendar/resource-time-grid": "~2.3.2",
"@event-calendar/time-grid": "~2.3.2",
"@rollup/plugin-babel": "^6.0.3",
"@rollup/plugin-commonjs": "^25.0.3",
"@rollup/plugin-node-resolve": "^15.1.0",
Expand Down
4 changes: 2 additions & 2 deletions packages/build/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,8 +196,8 @@ import '@event-calendar/core/index.css';
### Pre-built browser ready bundle
Include the following lines of code in the `<head>` section of your page:
```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.js"></script>
```

<details>
Expand Down
12 changes: 6 additions & 6 deletions packages/build/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@event-calendar/build",
"version": "2.3.1",
"version": "2.3.2",
"title": "Event Calendar",
"description": "Full-sized drag & drop event calendar with resource view",
"keywords": [
Expand All @@ -18,10 +18,10 @@
"license": "MIT",
"jsdelivr": "event-calendar.min.js",
"devDependencies": {
"@event-calendar/day-grid": "~2.3.1",
"@event-calendar/interaction": "~2.3.1",
"@event-calendar/list": "~2.3.1",
"@event-calendar/time-grid": "~2.3.1",
"@event-calendar/resource-time-grid": "~2.3.1"
"@event-calendar/day-grid": "~2.3.2",
"@event-calendar/interaction": "~2.3.2",
"@event-calendar/list": "~2.3.2",
"@event-calendar/time-grid": "~2.3.2",
"@event-calendar/resource-time-grid": "~2.3.2"
}
}
4 changes: 2 additions & 2 deletions packages/core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,8 +196,8 @@ import '@event-calendar/core/index.css';
### Pre-built browser ready bundle
Include the following lines of code in the `<head>` section of your page:
```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.1/event-calendar.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.css">
<script src="https://cdn.jsdelivr.net/npm/@event-calendar/build@2.3.2/event-calendar.min.js"></script>
```

<details>
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@event-calendar/core",
"version": "2.3.1",
"version": "2.3.2",
"title": "Event Calendar Core package",
"description": "Full-sized drag & drop event calendar with resource view",
"keywords": [
Expand Down
45 changes: 19 additions & 26 deletions packages/core/src/Calendar.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import Auxiliary from './Auxiliary.svelte';
import {
assign,
createEvents,
toEventWithLocalDates,
toViewWithLocalDates,
toLocalDate,
Expand All @@ -30,22 +31,18 @@
events, eventSources, height, theme} = state;
// Reactively update options that did change
$: for (let [name, value] of diff(options)) {
let prevOptions = {...options};
$: for (let [name, value] of diff(options, prevOptions)) {
setOption(name, value);
}
export function setOption(name, value) {
if (state.hasOwnProperty(name)) {
if (state[name].parse) {
value = state[name].parse(value);
}
state[name].set(value);
}
state._set(name, value);
return this;
}
export function getOption(name) {
let value = state.hasOwnProperty(name) ? get(state[name]) : undefined;
let value = state._get(name);
return value instanceof Date ? toLocalDate(value) : value;
}
Expand All @@ -68,30 +65,33 @@
}
export function addEvent(event) {
updateEvents(events => events.concat(state.events.parse([event])));
$_events.push(createEvents([event])[0]);
$_events = $_events;
return this;
}
export function updateEvent(event) {
updateEvents(events => {
for (let e of events) {
if (e.id == event.id) {
assign(e, state.events.parse([event])[0]);
break;
}
for (let e of $_events) {
if (e.id == event.id) {
assign(e, createEvents([event])[0]);
$_events = $_events;
break;
}
return events;
});
}
return this;
}
export function removeEventById(id) {
updateEvents(events => events.filter(event => event.id != id));
let idx = $_events.findIndex(event => event.id == id);
if (idx >= 0) {
$_events.splice(idx, 1);
$_events = $_events;
}
return this;
}
export function getView() {
return toViewWithLocalDates(state._view.get());
return toViewWithLocalDates(get(state._view));
}
export function unselect() {
Expand All @@ -110,13 +110,6 @@
destroy_component(component, true);
}
function updateEvents(func) {
$_events = func($_events);
if (!$eventSources.length) {
$events = $_events;
}
}
beforeUpdate(() => {
flushDebounce($_queue);
setTimeout(recheckScrollable);
Expand Down
30 changes: 1 addition & 29 deletions packages/core/src/lib/stores.js
Original file line number Diff line number Diff line change
@@ -1,35 +1,7 @@
import {derived, writable, get} from 'svelte/store';
import {derived} from 'svelte/store';
import {is_function} from 'svelte/internal';
import {toLocalDate} from './date';

export function writable2(value, parser, start) {
return {
...writable(value, start),
parse: parser
};
}

export function derived2(stores, fn, initValue) {
let storeValue = initValue;
let hasSubscribers = false;
let auto = fn.length < 2;
let fn2 = (_, set) => {
hasSubscribers = true;
if (auto) {
storeValue = fn(_, set);
set(storeValue);
} else {
fn(_, value => {storeValue = value; set(value);});
}
return () => {hasSubscribers = false;};
};
let store = derived(stores, fn2, storeValue);
return {
...store,
get: () => hasSubscribers ? storeValue : get(store)
};
}

export function intl(locale, format) {
return derived([locale, format], ([$locale, $format]) => {
let intl = is_function($format)
Expand Down
Loading

0 comments on commit 6b9d474

Please sign in to comment.