@fullcalendar/scrollgrid 7.0.0-beta.4 → 7.0.0-beta.5

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/LICENSE.md CHANGED
@@ -13,6 +13,6 @@ one of three licenses to use. Here is a summary of those licenses:
13
13
  (intended for trial and non-commercial use)
14
14
  https://creativecommons.org/licenses/by-nc-nd/4.0/
15
15
 
16
- - GPLv3 License
16
+ - AGPLv3 License
17
17
  (intended for open-source projects)
18
- http://www.gnu.org/licenses/gpl-3.0.en.html
18
+ https://www.gnu.org/licenses/agpl-3.0.en.html
@@ -2,18 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index_cjs = require('@fullcalendar/core/index.cjs');
6
- var premiumCommonPlugin = require('@fullcalendar/premium-common/index.cjs');
5
+ var core = require('@fullcalendar/core');
6
+ var premiumCommonPlugin = require('@fullcalendar/premium-common');
7
7
  var internalCommon = require('./internal.cjs');
8
- require('@fullcalendar/core/internal.cjs');
8
+ require('@fullcalendar/core/internal');
9
9
 
10
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
11
 
12
12
  var premiumCommonPlugin__default = /*#__PURE__*/_interopDefaultLegacy(premiumCommonPlugin);
13
13
 
14
- var index = index_cjs.createPlugin({
14
+ var index = core.createPlugin({
15
15
  name: '@fullcalendar/scrollgrid',
16
- premiumReleaseDate: '2025-01-09',
16
+ premiumReleaseDate: '2025-12-20',
17
17
  deps: [premiumCommonPlugin__default["default"]],
18
18
  scrollerSyncerClass: internalCommon.ScrollerSyncer
19
19
  });
@@ -2,22 +2,21 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var internal_cjs = require('@fullcalendar/core/internal.cjs');
5
+ var internal = require('@fullcalendar/core/internal');
6
6
 
7
7
  /*
8
- Fires:
9
- - scrollEnd: ({ x, y, isUser }) => void
8
+ TODO: detangle and use from @full-ui/headless-grid
10
9
  */
11
10
  class ScrollerSyncer {
12
11
  constructor(isHorizontal = false) {
13
12
  this.isHorizontal = isHorizontal;
14
- this.emitter = new internal_cjs.Emitter();
13
+ this.emitter = new internal.Emitter();
15
14
  this.scrollers = [];
16
15
  this.destroyFuncs = [];
17
16
  this.isPaused = false;
18
17
  }
19
18
  handleChildren(scrollers) {
20
- if (!internal_cjs.isArraysEqual(this.scrollers, scrollers)) {
19
+ if (!internal.isArraysEqual(this.scrollers, scrollers)) {
21
20
  this.destroy();
22
21
  for (const scroller of scrollers) {
23
22
  if (scroller) { // could be null
@@ -96,11 +95,7 @@ class ScrollerSyncer {
96
95
  }
97
96
  }
98
97
  if (isMoved) {
99
- this.emitter.trigger('scrollEnd', {
100
- x,
101
- y,
102
- isUser,
103
- });
98
+ this.emitter.trigger('scrollEnd', isUser);
104
99
  }
105
100
  }
106
101
  };
@@ -1,11 +1,11 @@
1
- import { createPlugin } from '@fullcalendar/core/index.js';
2
- import premiumCommonPlugin from '@fullcalendar/premium-common/index.js';
1
+ import { createPlugin } from '@fullcalendar/core';
2
+ import premiumCommonPlugin from '@fullcalendar/premium-common';
3
3
  import { ScrollerSyncer } from './internal.js';
4
- import '@fullcalendar/core/internal.js';
4
+ import '@fullcalendar/core/internal';
5
5
 
6
6
  var index = createPlugin({
7
7
  name: '@fullcalendar/scrollgrid',
8
- premiumReleaseDate: '2025-01-09',
8
+ premiumReleaseDate: '2025-12-20',
9
9
  deps: [premiumCommonPlugin],
10
10
  scrollerSyncerClass: ScrollerSyncer
11
11
  });
@@ -18,16 +18,8 @@ declare class ScrollerSyncer implements ScrollerSyncerInterface {
18
18
  x?: number;
19
19
  y?: number;
20
20
  }): void;
21
- addScrollEndListener(handler: (arg: {
22
- x: number;
23
- y: number;
24
- isUser: boolean;
25
- }) => void): void;
26
- removeScrollEndListener(handler: (arg: {
27
- x: number;
28
- y: number;
29
- isUser: boolean;
30
- }) => void): void;
21
+ addScrollEndListener(handler: (isUser: boolean) => void): void;
22
+ removeScrollEndListener(handler: (isUser: boolean) => void): void;
31
23
  bindScroller(scroller: Scroller): () => void;
32
24
  assignMaster(masterScroller: Scroller): void;
33
25
  }
@@ -1,8 +1,7 @@
1
- import { Emitter, isArraysEqual } from '@fullcalendar/core/internal.js';
1
+ import { Emitter, isArraysEqual } from '@fullcalendar/core/internal';
2
2
 
3
3
  /*
4
- Fires:
5
- - scrollEnd: ({ x, y, isUser }) => void
4
+ TODO: detangle and use from @full-ui/headless-grid
6
5
  */
7
6
  class ScrollerSyncer {
8
7
  constructor(isHorizontal = false) {
@@ -92,11 +91,7 @@ class ScrollerSyncer {
92
91
  }
93
92
  }
94
93
  if (isMoved) {
95
- this.emitter.trigger('scrollEnd', {
96
- x,
97
- y,
98
- isUser,
99
- });
94
+ this.emitter.trigger('scrollEnd', isUser);
100
95
  }
101
96
  }
102
97
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
- FullCalendar ScrollGrid Plugin v7.0.0-beta.4
2
+ FullCalendar ScrollGrid Plugin v7.0.0-beta.5
3
3
  Docs & License: https://fullcalendar.io/docs/premium
4
- (c) 2024 Adam Shaw
4
+ (c) 2025 Adam Shaw
5
5
  */
6
6
  FullCalendar.ScrollGrid = (function (exports, core, premiumCommonPlugin, internal$1) {
7
7
  'use strict';
@@ -11,8 +11,7 @@ FullCalendar.ScrollGrid = (function (exports, core, premiumCommonPlugin, interna
11
11
  var premiumCommonPlugin__default = /*#__PURE__*/_interopDefault(premiumCommonPlugin);
12
12
 
13
13
  /*
14
- Fires:
15
- - scrollEnd: ({ x, y, isUser }) => void
14
+ TODO: detangle and use from @full-ui/headless-grid
16
15
  */
17
16
  class ScrollerSyncer {
18
17
  constructor(isHorizontal = false) {
@@ -102,11 +101,7 @@ FullCalendar.ScrollGrid = (function (exports, core, premiumCommonPlugin, interna
102
101
  }
103
102
  }
104
103
  if (isMoved) {
105
- this.emitter.trigger('scrollEnd', {
106
- x,
107
- y,
108
- isUser,
109
- });
104
+ this.emitter.trigger('scrollEnd', isUser);
110
105
  }
111
106
  }
112
107
  };
@@ -129,7 +124,7 @@ FullCalendar.ScrollGrid = (function (exports, core, premiumCommonPlugin, interna
129
124
 
130
125
  var plugin = core.createPlugin({
131
126
  name: '@fullcalendar/scrollgrid',
132
- premiumReleaseDate: '2025-01-09',
127
+ premiumReleaseDate: '2025-12-20',
133
128
  deps: [premiumCommonPlugin__default["default"]],
134
129
  scrollerSyncerClass: ScrollerSyncer
135
130
  });
@@ -1,6 +1,6 @@
1
1
  /*!
2
- FullCalendar ScrollGrid Plugin v7.0.0-beta.4
2
+ FullCalendar ScrollGrid Plugin v7.0.0-beta.5
3
3
  Docs & License: https://fullcalendar.io/docs/premium
4
- (c) 2024 Adam Shaw
4
+ (c) 2025 Adam Shaw
5
5
  */
6
- FullCalendar.ScrollGrid=function(r,s,e,l){"use strict";function t(r){return r&&r.__esModule?r:{default:r}}var o=t(e);class i{constructor(r=!1){this.isHorizontal=r,this.emitter=new l.Emitter,this.scrollers=[],this.destroyFuncs=[],this.isPaused=!1}handleChildren(r){if(!l.isArraysEqual(this.scrollers,r)){this.destroy();for(const s of r)s&&(this.destroyFuncs.push(this.bindScroller(s)),this.scrollers.push(s))}}destroy(){for(let r of this.destroyFuncs)r();this.destroyFuncs=[],this.scrollers=[]}get x(){const{scrollers:r,masterScroller:s}=this;return(s||r[0]).x}get y(){const{scrollers:r,masterScroller:s}=this;return(s||r[0]).y}scrollTo(r){this.isPaused=!0;const{scrollers:s}=this;for(let e of s)e.scrollTo(r);this.isPaused=!1}addScrollEndListener(r){this.emitter.on("scrollEnd",r)}removeScrollEndListener(r){this.emitter.off("scrollEnd",r)}bindScroller(r){let{isHorizontal:s}=this;const e=e=>{if(!this.isPaused&&((!this.masterScroller||this.masterScroller!==r&&e)&&this.assignMaster(r),this.masterScroller===r))for(let e of this.scrollers)e!==r&&(s?e.scrollTo({x:r.x}):e.scrollTo({y:r.y}))},l=s=>{if(this.masterScroller===r){this.masterScroller=null;const{x:r,y:e}=this;let l=!1;this.isHorizontal?r!==this.prevX&&(this.prevX=r,l=!0):e!==this.prevY&&(this.prevY=e,l=!0),l&&this.emitter.trigger("scrollEnd",{x:r,y:e,isUser:s})}};return r.listener.emitter.on("scroll",e),r.listener.emitter.on("scrollEnd",l),()=>{r.listener.emitter.off("scroll",e),r.listener.emitter.off("scrollEnd",l)}}assignMaster(r){this.masterScroller=r;for(let s of this.scrollers)s!==r&&s.endScroll()}}var n=s.createPlugin({name:"@fullcalendar/scrollgrid",premiumReleaseDate:"2025-01-09",deps:[o.default],scrollerSyncerClass:i}),c={__proto__:null,ScrollerSyncer:i};return s.globalPlugins.push(n),r.Internal=c,r.default=n,Object.defineProperty(r,"__esModule",{value:!0}),r}({},FullCalendar,FullCalendar.PremiumCommon,FullCalendar.Internal);
6
+ FullCalendar.ScrollGrid=function(r,s,e,l){"use strict";function t(r){return r&&r.__esModule?r:{default:r}}var o=t(e);class i{constructor(r=!1){this.isHorizontal=r,this.emitter=new l.Emitter,this.scrollers=[],this.destroyFuncs=[],this.isPaused=!1}handleChildren(r){if(!l.isArraysEqual(this.scrollers,r)){this.destroy();for(const s of r)s&&(this.destroyFuncs.push(this.bindScroller(s)),this.scrollers.push(s))}}destroy(){for(let r of this.destroyFuncs)r();this.destroyFuncs=[],this.scrollers=[]}get x(){const{scrollers:r,masterScroller:s}=this;return(s||r[0]).x}get y(){const{scrollers:r,masterScroller:s}=this;return(s||r[0]).y}scrollTo(r){this.isPaused=!0;const{scrollers:s}=this;for(let e of s)e.scrollTo(r);this.isPaused=!1}addScrollEndListener(r){this.emitter.on("scrollEnd",r)}removeScrollEndListener(r){this.emitter.off("scrollEnd",r)}bindScroller(r){let{isHorizontal:s}=this;const e=e=>{if(!this.isPaused&&((!this.masterScroller||this.masterScroller!==r&&e)&&this.assignMaster(r),this.masterScroller===r))for(let e of this.scrollers)e!==r&&(s?e.scrollTo({x:r.x}):e.scrollTo({y:r.y}))},l=s=>{if(this.masterScroller===r){this.masterScroller=null;const{x:r,y:e}=this;let l=!1;this.isHorizontal?r!==this.prevX&&(this.prevX=r,l=!0):e!==this.prevY&&(this.prevY=e,l=!0),l&&this.emitter.trigger("scrollEnd",s)}};return r.listener.emitter.on("scroll",e),r.listener.emitter.on("scrollEnd",l),()=>{r.listener.emitter.off("scroll",e),r.listener.emitter.off("scrollEnd",l)}}assignMaster(r){this.masterScroller=r;for(let s of this.scrollers)s!==r&&s.endScroll()}}var n=s.createPlugin({name:"@fullcalendar/scrollgrid",premiumReleaseDate:"2025-12-20",deps:[o.default],scrollerSyncerClass:i}),c={__proto__:null,ScrollerSyncer:i};return s.globalPlugins.push(n),r.Internal=c,r.default=n,Object.defineProperty(r,"__esModule",{value:!0}),r}({},FullCalendar,FullCalendar.PremiumCommon,FullCalendar.Internal);
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@fullcalendar/scrollgrid",
3
- "version": "7.0.0-beta.4",
3
+ "version": "7.0.0-beta.5",
4
4
  "title": "FullCalendar ScrollGrid Plugin",
5
5
  "description": "Tabular data chunked into scrollable panes",
6
6
  "dependencies": {
7
- "@fullcalendar/premium-common": "7.0.0-beta.4"
7
+ "@fullcalendar/premium-common": "7.0.0-beta.5"
8
8
  },
9
9
  "peerDependencies": {
10
- "@fullcalendar/core": "7.0.0-beta.4"
10
+ "@fullcalendar/core": "7.0.0-beta.5"
11
11
  },
12
12
  "type": "module",
13
13
  "keywords": [
@@ -31,28 +31,31 @@
31
31
  "email": "arshaw@arshaw.com",
32
32
  "url": "http://arshaw.com/"
33
33
  },
34
- "copyright": "2024 Adam Shaw",
35
- "types": "./index.d.ts",
36
- "main": "./index.cjs",
37
- "module": "./index.js",
38
- "unpkg": "./index.global.min.js",
39
- "jsdelivr": "./index.global.min.js",
34
+ "copyright": "2025 Adam Shaw",
35
+ "types": "./esm/index.d.ts",
36
+ "module": "./esm/index.js",
37
+ "main": "./cjs/index.cjs",
38
+ "unpkg": "./global.min.js",
39
+ "jsdelivr": "./global.min.js",
40
40
  "exports": {
41
41
  "./package.json": "./package.json",
42
- "./index.cjs": "./index.cjs",
43
- "./index.js": "./index.js",
44
42
  ".": {
45
- "types": "./index.d.ts",
46
- "require": "./index.cjs",
47
- "import": "./index.js"
43
+ "import": {
44
+ "types": "./esm/index.d.ts",
45
+ "default": "./esm/index.js"
46
+ },
47
+ "require": "./cjs/index.cjs"
48
48
  },
49
- "./internal.cjs": "./internal.cjs",
50
- "./internal.js": "./internal.js",
51
49
  "./internal": {
52
- "types": "./internal.d.ts",
53
- "require": "./internal.cjs",
54
- "import": "./internal.js"
50
+ "import": {
51
+ "types": "./esm/internal.d.ts",
52
+ "default": "./esm/internal.js"
53
+ },
54
+ "require": "./cjs/internal.cjs"
55
55
  }
56
56
  },
57
- "sideEffects": false
57
+ "sideEffects": [
58
+ "./global.js",
59
+ "./global.min.js"
60
+ ]
58
61
  }
File without changes