@egjs/svelte-infinitegrid 4.0.1-beta.3 → 4.1.2-beta.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.
@@ -4,7 +4,7 @@ name: @egjs/svelte-infinitegrid
4
4
  license: MIT
5
5
  author: NAVER Corp.
6
6
  repository: https://github.com/naver/egjs-infinitegrid
7
- version: 4.0.1-beta.3
7
+ version: 4.1.2-beta.0
8
8
  */
9
9
  'use strict';
10
10
 
@@ -38,17 +38,17 @@ const get_default_slot_context = ctx => ({
38
38
  visibleItems:
39
39
  /*visibleItems*/
40
40
  ctx[3]
41
- }); // (135:2) {:else}
41
+ }); // (138:2) {:else}
42
42
 
43
43
 
44
44
  function create_else_block(ctx) {
45
45
  let current;
46
46
  const default_slot_template =
47
47
  /*#slots*/
48
- ctx[8].default;
48
+ ctx[9].default;
49
49
  const default_slot = internal.create_slot(default_slot_template, ctx,
50
50
  /*$$scope*/
51
- ctx[7], get_default_slot_context_1);
51
+ ctx[8], get_default_slot_context_1);
52
52
  return {
53
53
  c() {
54
54
  if (default_slot) default_slot.c();
@@ -66,14 +66,14 @@ function create_else_block(ctx) {
66
66
  if (default_slot) {
67
67
  if (default_slot.p && (!current || dirty &
68
68
  /*$$scope, visibleItems*/
69
- 136)) {
69
+ 264)) {
70
70
  internal.update_slot_base(default_slot, default_slot_template, ctx,
71
71
  /*$$scope*/
72
- ctx[7], !current ? internal.get_all_dirty_from_scope(
72
+ ctx[8], !current ? internal.get_all_dirty_from_scope(
73
73
  /*$$scope*/
74
- ctx[7]) : internal.get_slot_changes(default_slot_template,
74
+ ctx[8]) : internal.get_slot_changes(default_slot_template,
75
75
  /*$$scope*/
76
- ctx[7], dirty, get_default_slot_changes_1), get_default_slot_context_1);
76
+ ctx[8], dirty, get_default_slot_changes_1), get_default_slot_context_1);
77
77
  }
78
78
  }
79
79
  },
@@ -94,7 +94,7 @@ function create_else_block(ctx) {
94
94
  }
95
95
 
96
96
  };
97
- } // (131:2) {#if $$props.container === true}
97
+ } // (134:2) {#if $$props.container === true}
98
98
 
99
99
 
100
100
  function create_if_block(ctx) {
@@ -102,10 +102,10 @@ function create_if_block(ctx) {
102
102
  let current;
103
103
  const default_slot_template =
104
104
  /*#slots*/
105
- ctx[8].default;
105
+ ctx[9].default;
106
106
  const default_slot = internal.create_slot(default_slot_template, ctx,
107
107
  /*$$scope*/
108
- ctx[7], get_default_slot_context);
108
+ ctx[8], get_default_slot_context);
109
109
  return {
110
110
  c() {
111
111
  div = internal.element("div");
@@ -122,7 +122,7 @@ function create_if_block(ctx) {
122
122
  /*div_binding*/
123
123
 
124
124
 
125
- ctx[9](div);
125
+ ctx[10](div);
126
126
  current = true;
127
127
  },
128
128
 
@@ -130,14 +130,14 @@ function create_if_block(ctx) {
130
130
  if (default_slot) {
131
131
  if (default_slot.p && (!current || dirty &
132
132
  /*$$scope, visibleItems*/
133
- 136)) {
133
+ 264)) {
134
134
  internal.update_slot_base(default_slot, default_slot_template, ctx,
135
135
  /*$$scope*/
136
- ctx[7], !current ? internal.get_all_dirty_from_scope(
136
+ ctx[8], !current ? internal.get_all_dirty_from_scope(
137
137
  /*$$scope*/
138
- ctx[7]) : internal.get_slot_changes(default_slot_template,
138
+ ctx[8]) : internal.get_slot_changes(default_slot_template,
139
139
  /*$$scope*/
140
- ctx[7], dirty, get_default_slot_changes), get_default_slot_context);
140
+ ctx[8], dirty, get_default_slot_changes), get_default_slot_context);
141
141
  }
142
142
  }
143
143
  },
@@ -158,7 +158,7 @@ function create_if_block(ctx) {
158
158
  if (default_slot) default_slot.d(detaching);
159
159
  /*div_binding*/
160
160
 
161
- ctx[9](null);
161
+ ctx[10](null);
162
162
  }
163
163
 
164
164
  };
@@ -202,7 +202,7 @@ function create_fragment(ctx) {
202
202
  if_blocks[current_block_type_index].m(div, null);
203
203
  /*div_binding_1*/
204
204
 
205
- ctx[10](div);
205
+ ctx[11](div);
206
206
  current = true;
207
207
  },
208
208
 
@@ -254,7 +254,7 @@ function create_fragment(ctx) {
254
254
  if_blocks[current_block_type_index].d();
255
255
  /*div_binding_1*/
256
256
 
257
- ctx[10](null);
257
+ ctx[11](null);
258
258
  }
259
259
 
260
260
  };
@@ -268,11 +268,13 @@ function instance($$self, $$props, $$invalidate) {
268
268
  let {
269
269
  GridClass
270
270
  } = $$props;
271
+ let {
272
+ vanillaGrid = null
273
+ } = $$props;
271
274
  const dispatch = svelte.createEventDispatcher();
272
275
  const renderer = new infinitegrid.Renderer();
273
276
  let wrapper;
274
277
  let container;
275
- let grid;
276
278
  let attributes = {};
277
279
  let visibleItems = [];
278
280
 
@@ -309,7 +311,7 @@ function instance($$self, $$props, $$invalidate) {
309
311
 
310
312
  function updateVisibleChildren(props) {
311
313
  $$invalidate(3, visibleItems = infinitegrid.getRenderingItems(getItemInfos(), {
312
- grid,
314
+ grid: vanillaGrid,
313
315
  status: props.status,
314
316
  usePlaceholder: props.usePlaceholder,
315
317
  useFirstRender: props.useFirstRender,
@@ -318,6 +320,10 @@ function instance($$self, $$props, $$invalidate) {
318
320
  }));
319
321
  }
320
322
 
323
+ svelte.beforeUpdate(() => {
324
+ updateAttributes($$props);
325
+ updateVisibleChildren($$props);
326
+ });
321
327
  svelte.onMount(() => {
322
328
  const defaultOptions = GridClass.defaultOptions;
323
329
  const options = {};
@@ -333,11 +339,11 @@ function instance($$self, $$props, $$invalidate) {
333
339
  }
334
340
 
335
341
  options.renderer = renderer;
336
- grid = new GridClass(wrapper, options);
342
+ $$invalidate(5, vanillaGrid = new GridClass(wrapper, options));
337
343
 
338
344
  for (const name in infinitegrid.INFINITEGRID_EVENTS) {
339
345
  const eventName = infinitegrid.INFINITEGRID_EVENTS[name];
340
- grid.on(eventName, e => {
346
+ vanillaGrid.on(eventName, e => {
341
347
  dispatch(eventName, e);
342
348
  });
343
349
  }
@@ -346,7 +352,7 @@ function instance($$self, $$props, $$invalidate) {
346
352
  updateVisibleChildren($$props);
347
353
  });
348
354
  infinitegrid.mountRenderingItems(getItemInfos(), {
349
- grid,
355
+ grid: vanillaGrid,
350
356
  status: $$props.status,
351
357
  usePlaceholder: $$props.usePlaceholder,
352
358
  useFirstRender: $$props.useFirstRender,
@@ -361,18 +367,18 @@ function instance($$self, $$props, $$invalidate) {
361
367
 
362
368
  for (const name in propertyTypes) {
363
369
  if (name in $$props) {
364
- grid[name] = $$props[name];
370
+ $$invalidate(5, vanillaGrid[name] = $$props[name], vanillaGrid);
365
371
  }
366
372
  }
367
373
 
368
374
  renderer.updated();
369
375
  });
370
376
  svelte.onDestroy(() => {
371
- grid?.destroy();
377
+ vanillaGrid && vanillaGrid.destroy();
372
378
  });
373
379
 
374
380
  function getInstance() {
375
- return grid;
381
+ return vanillaGrid;
376
382
  }
377
383
 
378
384
  function div_binding($$value) {
@@ -391,31 +397,27 @@ function instance($$self, $$props, $$invalidate) {
391
397
 
392
398
  $$self.$$set = $$new_props => {
393
399
  $$invalidate(4, $$props = internal.assign(internal.assign({}, $$props), internal.exclude_internal_props($$new_props)));
394
- if ('GridClass' in $$new_props) $$invalidate(5, GridClass = $$new_props.GridClass);
395
- if ('$$scope' in $$new_props) $$invalidate(7, $$scope = $$new_props.$$scope);
396
- };
397
-
398
- $$self.$$.update = () => {
399
- updateAttributes($$props);
400
-
401
- updateVisibleChildren($$props);
400
+ if ('GridClass' in $$new_props) $$invalidate(6, GridClass = $$new_props.GridClass);
401
+ if ('vanillaGrid' in $$new_props) $$invalidate(5, vanillaGrid = $$new_props.vanillaGrid);
402
+ if ('$$scope' in $$new_props) $$invalidate(8, $$scope = $$new_props.$$scope);
402
403
  };
403
404
 
404
405
  $$props = internal.exclude_internal_props($$props);
405
- return [wrapper, container, attributes, visibleItems, $$props, GridClass, getInstance, $$scope, slots, div_binding, div_binding_1];
406
+ return [wrapper, container, attributes, visibleItems, $$props, vanillaGrid, GridClass, getInstance, $$scope, slots, div_binding, div_binding_1];
406
407
  }
407
408
 
408
409
  class InfiniteGrid$1 extends internal.SvelteComponent {
409
410
  constructor(options) {
410
411
  super();
411
412
  internal.init(this, options, instance, create_fragment, internal.safe_not_equal, {
412
- GridClass: 5,
413
- getInstance: 6
413
+ GridClass: 6,
414
+ vanillaGrid: 5,
415
+ getInstance: 7
414
416
  });
415
417
  }
416
418
 
417
419
  get getInstance() {
418
- return this.$$.ctx[6];
420
+ return this.$$.ctx[7];
419
421
  }
420
422
 
421
423
  }
@@ -1 +1 @@
1
- {"version":3,"file":"infinitegrid.cjs.js","sources":["../src/consts.js","../src/InfiniteGrid.svelte","../src/InfiniteGrid.js","../src/grids/MasonryInfiniteGrid.js","../src/grids/JustifiedInfiniteGrid.js","../src/grids/FrameInfiniteGrid.js","../src/grids/PackingInfiniteGrid.js"],"sourcesContent":["export const SVELTE_INFINITEGRID_PROPS = [\n \"status\",\n \"useFirstRender\",\n \"useLoading\",\n \"usePlaceholder\",\n \"items\",\n \"itemBy\",\n \"groupBy\",\n];\n","<script>\n /**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\n import {\n onMount,\n beforeUpdate,\n createEventDispatcher,\n onDestroy,\n afterUpdate,\n } from \"svelte\";\n import {\n INFINITEGRID_EVENTS,\n Renderer,\n CONTAINER_CLASS_NAME,\n getRenderingItems,\n mountRenderingItems,\n } from \"@egjs/infinitegrid\";\n import { SVELTE_INFINITEGRID_PROPS } from \"./consts\";\n export let GridClass;\n\n const dispatch = createEventDispatcher();\n const renderer = new Renderer();\n let wrapper;\n let container;\n let grid;\n let isFirstMount = false;\n let attributes = {};\n let visibleItems = [];\n\n function updateAttributes(props) {\n attributes = { ...props };\n\n const defaultOptions = GridClass.defaultOptions;\n\n delete attributes[\"GridClass\"];\n for (const name in defaultOptions) {\n delete attributes[name];\n }\n SVELTE_INFINITEGRID_PROPS.forEach((name) => {\n delete attributes[name];\n });\n }\n function getItemInfos() {\n const items = $$props.items || [];\n const itemBy = $$props.itemBy || ((item) => item.key);\n const groupBy = $$props.groupBy || ((item) => item.groupKey);\n\n return items.map((item, i) => {\n return {\n groupKey: groupBy(item, i),\n key: itemBy(item, i),\n data: item,\n };\n });\n }\n function updateVisibleChildren(props) {\n visibleItems = getRenderingItems(getItemInfos(), {\n grid,\n status: props.status,\n usePlaceholder: props.usePlaceholder,\n useFirstRender: props.useFirstRender,\n useLoading: props.useLoading,\n horizontal: props.horizontal,\n });\n }\n\n $: updateAttributes($$props);\n $: updateVisibleChildren($$props);\n\n onMount(() => {\n const defaultOptions = GridClass.defaultOptions;\n const options = {};\n\n for (const name in defaultOptions) {\n if (name in $$props) {\n options[name] = $$props[name];\n }\n }\n if (container) {\n options.container = container;\n }\n options.renderer = renderer;\n grid = new GridClass(wrapper, options);\n\n for (const name in INFINITEGRID_EVENTS) {\n const eventName = INFINITEGRID_EVENTS[name];\n\n grid.on(eventName, (e) => {\n dispatch(eventName, e);\n });\n }\n renderer.on(\"requestUpdate\", () => {\n updateVisibleChildren($$props);\n });\n mountRenderingItems(getItemInfos(), {\n grid,\n status: $$props.status,\n usePlaceholder: $$props.usePlaceholder,\n useFirstRender: $$props.useFirstRender,\n useLoading: $$props.useLoading,\n horizontal: $$props.horizontal,\n });\n renderer.updated();\n });\n afterUpdate(() => {\n if (isFirstMount) {\n isFirstMount = false;\n return;\n }\n const propertyTypes = GridClass.propertyTypes;\n\n for (const name in propertyTypes) {\n if (name in $$props) {\n grid[name] = $$props[name];\n }\n }\n renderer.updated();\n });\n onDestroy(() => {\n grid?.destroy();\n });\n export function getInstance() {\n return grid;\n }\n</script>\n\n<div bind:this={wrapper} {...attributes}>\n {#if $$props.container === true}\n <div class={CONTAINER_CLASS_NAME} bind:this={container}>\n <slot {visibleItems} />\n </div>\n {:else}\n <slot {visibleItems} />\n {/if}\n</div>\n","/**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\nimport InfiniteGrid from \"./InfiniteGrid.svelte\";\nimport { INFINITEGRID_METHODS } from \"@egjs/infinitegrid\";\n\nexport default /*#__PURE__*/ (() => {\n const prototype = InfiniteGrid.prototype;\n\n if (prototype) {\n INFINITEGRID_METHODS.forEach(name => {\n if (name in prototype) {\n return;\n }\n prototype[name] = function (...args) {\n const self = this.getInstance();\n const result = self[name](...args);\n\n if (result === self) {\n return this;\n } else {\n return result;\n }\n };\n });\n }\n return InfiniteGrid;\n})();\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { MasonryInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet MasonryInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n MasonryInfiniteGrid = InfiniteGrid;\n} else {\n MasonryInfiniteGrid = class MasonryInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { MasonryInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { JustifiedInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet JustifiedInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n JustifiedInfiniteGrid = InfiniteGrid;\n} else {\n JustifiedInfiniteGrid = class JustifiedInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { JustifiedInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { FrameInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet FrameInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n FrameInfiniteGrid = InfiniteGrid;\n} else {\n FrameInfiniteGrid = class FrameInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { FrameInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { PackingInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet PackingInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n PackingInfiniteGrid = InfiniteGrid;\n} else {\n PackingInfiniteGrid = class PackingInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { PackingInfiniteGrid };\n"],"names":["SVELTE_INFINITEGRID_PROPS","CONTAINER_CLASS_NAME","insert","ctx","container","GridClass","dispatch","createEventDispatcher","renderer","Renderer","wrapper","grid","attributes","visibleItems","updateAttributes","props","defaultOptions","name","forEach","getItemInfos","items","$$props","itemBy","item","key","groupBy","groupKey","map","i","data","updateVisibleChildren","getRenderingItems","status","usePlaceholder","useFirstRender","useLoading","horizontal","onMount","options","INFINITEGRID_EVENTS","eventName","on","e","mountRenderingItems","updated","afterUpdate","propertyTypes","onDestroy","destroy","getInstance","$","prototype","InfiniteGrid","INFINITEGRID_METHODS","args","self","result","MasonryInfiniteGrid","constructor","JustifiedInfiniteGrid","FrameInfiniteGrid","PackingInfiniteGrid"],"mappings":"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"}
1
+ {"version":3,"file":"infinitegrid.cjs.js","sources":["../src/consts.js","../src/InfiniteGrid.svelte","../src/InfiniteGrid.js","../src/grids/MasonryInfiniteGrid.js","../src/grids/JustifiedInfiniteGrid.js","../src/grids/FrameInfiniteGrid.js","../src/grids/PackingInfiniteGrid.js"],"sourcesContent":["export const SVELTE_INFINITEGRID_PROPS = [\n \"status\",\n \"useFirstRender\",\n \"useLoading\",\n \"usePlaceholder\",\n \"items\",\n \"itemBy\",\n \"groupBy\",\n];\n","<script>\n /**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\n import {\n onMount,\n beforeUpdate,\n createEventDispatcher,\n onDestroy,\n afterUpdate,\n } from \"svelte\";\n import {\n INFINITEGRID_EVENTS,\n Renderer,\n CONTAINER_CLASS_NAME,\n getRenderingItems,\n mountRenderingItems,\n } from \"@egjs/infinitegrid\";\n import { SVELTE_INFINITEGRID_PROPS } from \"./consts\";\n export let GridClass;\n export let vanillaGrid = null;\n\n const dispatch = createEventDispatcher();\n const renderer = new Renderer();\n let wrapper;\n let container;\n let isFirstMount = false;\n let attributes = {};\n let visibleItems = [];\n\n function updateAttributes(props) {\n attributes = { ...props };\n\n const defaultOptions = GridClass.defaultOptions;\n\n delete attributes[\"GridClass\"];\n for (const name in defaultOptions) {\n delete attributes[name];\n }\n SVELTE_INFINITEGRID_PROPS.forEach((name) => {\n delete attributes[name];\n });\n }\n function getItemInfos() {\n const items = $$props.items || [];\n const itemBy = $$props.itemBy || ((item) => item.key);\n const groupBy = $$props.groupBy || ((item) => item.groupKey);\n\n return items.map((item, i) => {\n return {\n groupKey: groupBy(item, i),\n key: itemBy(item, i),\n data: item,\n };\n });\n }\n function updateVisibleChildren(props) {\n visibleItems = getRenderingItems(getItemInfos(), {\n grid: vanillaGrid,\n status: props.status,\n usePlaceholder: props.usePlaceholder,\n useFirstRender: props.useFirstRender,\n useLoading: props.useLoading,\n horizontal: props.horizontal,\n });\n }\n\n beforeUpdate(() => {\n updateAttributes($$props);\n updateVisibleChildren($$props);\n });\n\n onMount(() => {\n const defaultOptions = GridClass.defaultOptions;\n const options = {};\n\n for (const name in defaultOptions) {\n if (name in $$props) {\n options[name] = $$props[name];\n }\n }\n if (container) {\n options.container = container;\n }\n options.renderer = renderer;\n vanillaGrid = new GridClass(wrapper, options);\n\n for (const name in INFINITEGRID_EVENTS) {\n const eventName = INFINITEGRID_EVENTS[name];\n\n vanillaGrid.on(eventName, (e) => {\n dispatch(eventName, e);\n });\n }\n renderer.on(\"requestUpdate\", () => {\n updateVisibleChildren($$props);\n });\n\n mountRenderingItems(getItemInfos(), {\n grid: vanillaGrid,\n status: $$props.status,\n usePlaceholder: $$props.usePlaceholder,\n useFirstRender: $$props.useFirstRender,\n useLoading: $$props.useLoading,\n horizontal: $$props.horizontal,\n });\n renderer.updated();\n });\n afterUpdate(() => {\n if (isFirstMount) {\n isFirstMount = false;\n return;\n }\n const propertyTypes = GridClass.propertyTypes;\n\n for (const name in propertyTypes) {\n if (name in $$props) {\n vanillaGrid[name] = $$props[name];\n }\n }\n renderer.updated();\n });\n onDestroy(() => {\n vanillaGrid && vanillaGrid.destroy();\n });\n export function getInstance() {\n return vanillaGrid;\n }\n</script>\n\n<div bind:this={wrapper} {...attributes}>\n {#if $$props.container === true}\n <div class={CONTAINER_CLASS_NAME} bind:this={container}>\n <slot {visibleItems} />\n </div>\n {:else}\n <slot {visibleItems} />\n {/if}\n</div>\n","/**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\nimport InfiniteGrid from \"./InfiniteGrid.svelte\";\nimport { INFINITEGRID_METHODS } from \"@egjs/infinitegrid\";\n\nexport default /*#__PURE__*/ (() => {\n const prototype = InfiniteGrid.prototype;\n\n if (prototype) {\n INFINITEGRID_METHODS.forEach(name => {\n if (name in prototype) {\n return;\n }\n prototype[name] = function (...args) {\n const self = this.getInstance();\n const result = self[name](...args);\n\n if (result === self) {\n return this;\n } else {\n return result;\n }\n };\n });\n }\n return InfiniteGrid;\n})();\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { MasonryInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet MasonryInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n MasonryInfiniteGrid = InfiniteGrid;\n} else {\n MasonryInfiniteGrid = class MasonryInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { MasonryInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { JustifiedInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet JustifiedInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n JustifiedInfiniteGrid = InfiniteGrid;\n} else {\n JustifiedInfiniteGrid = class JustifiedInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { JustifiedInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { FrameInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet FrameInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n FrameInfiniteGrid = InfiniteGrid;\n} else {\n FrameInfiniteGrid = class FrameInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { FrameInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { PackingInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet PackingInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n PackingInfiniteGrid = InfiniteGrid;\n} else {\n PackingInfiniteGrid = class PackingInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { PackingInfiniteGrid };\n"],"names":["SVELTE_INFINITEGRID_PROPS","CONTAINER_CLASS_NAME","insert","ctx","container","GridClass","vanillaGrid","dispatch","createEventDispatcher","renderer","Renderer","wrapper","attributes","visibleItems","updateAttributes","props","defaultOptions","name","forEach","getItemInfos","items","$$props","itemBy","item","key","groupBy","groupKey","map","i","data","updateVisibleChildren","getRenderingItems","grid","status","usePlaceholder","useFirstRender","useLoading","horizontal","beforeUpdate","onMount","options","INFINITEGRID_EVENTS","eventName","on","e","mountRenderingItems","updated","afterUpdate","propertyTypes","onDestroy","destroy","getInstance","prototype","InfiniteGrid","INFINITEGRID_METHODS","args","self","result","MasonryInfiniteGrid","constructor","JustifiedInfiniteGrid","FrameInfiniteGrid","PackingInfiniteGrid"],"mappings":"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"}
@@ -4,10 +4,10 @@ name: @egjs/svelte-infinitegrid
4
4
  license: MIT
5
5
  author: NAVER Corp.
6
6
  repository: https://github.com/naver/egjs-infinitegrid
7
- version: 4.0.1-beta.3
7
+ version: 4.1.2-beta.0
8
8
  */
9
9
  import { SvelteComponent, init, safe_not_equal, assign, element, set_attributes, insert, group_outros, transition_out, check_outros, transition_in, get_spread_update, detach, exclude_internal_props, binding_callbacks, create_slot, update_slot_base, get_all_dirty_from_scope, get_slot_changes, attr } from 'svelte/internal';
10
- import { createEventDispatcher, onMount, afterUpdate, onDestroy } from 'svelte';
10
+ import { createEventDispatcher, beforeUpdate, onMount, afterUpdate, onDestroy } from 'svelte';
11
11
  import { Renderer, INFINITEGRID_EVENTS, mountRenderingItems, getRenderingItems, CONTAINER_CLASS_NAME, INFINITEGRID_METHODS, MasonryInfiniteGrid as MasonryInfiniteGrid$1, JustifiedInfiniteGrid as JustifiedInfiniteGrid$1, FrameInfiniteGrid as FrameInfiniteGrid$1, PackingInfiniteGrid as PackingInfiniteGrid$1 } from '@egjs/infinitegrid';
12
12
 
13
13
  const SVELTE_INFINITEGRID_PROPS = ["status", "useFirstRender", "useLoading", "usePlaceholder", "items", "itemBy", "groupBy"];
@@ -36,17 +36,17 @@ const get_default_slot_context = ctx => ({
36
36
  visibleItems:
37
37
  /*visibleItems*/
38
38
  ctx[3]
39
- }); // (135:2) {:else}
39
+ }); // (138:2) {:else}
40
40
 
41
41
 
42
42
  function create_else_block(ctx) {
43
43
  let current;
44
44
  const default_slot_template =
45
45
  /*#slots*/
46
- ctx[8].default;
46
+ ctx[9].default;
47
47
  const default_slot = create_slot(default_slot_template, ctx,
48
48
  /*$$scope*/
49
- ctx[7], get_default_slot_context_1);
49
+ ctx[8], get_default_slot_context_1);
50
50
  return {
51
51
  c() {
52
52
  if (default_slot) default_slot.c();
@@ -64,14 +64,14 @@ function create_else_block(ctx) {
64
64
  if (default_slot) {
65
65
  if (default_slot.p && (!current || dirty &
66
66
  /*$$scope, visibleItems*/
67
- 136)) {
67
+ 264)) {
68
68
  update_slot_base(default_slot, default_slot_template, ctx,
69
69
  /*$$scope*/
70
- ctx[7], !current ? get_all_dirty_from_scope(
70
+ ctx[8], !current ? get_all_dirty_from_scope(
71
71
  /*$$scope*/
72
- ctx[7]) : get_slot_changes(default_slot_template,
72
+ ctx[8]) : get_slot_changes(default_slot_template,
73
73
  /*$$scope*/
74
- ctx[7], dirty, get_default_slot_changes_1), get_default_slot_context_1);
74
+ ctx[8], dirty, get_default_slot_changes_1), get_default_slot_context_1);
75
75
  }
76
76
  }
77
77
  },
@@ -92,7 +92,7 @@ function create_else_block(ctx) {
92
92
  }
93
93
 
94
94
  };
95
- } // (131:2) {#if $$props.container === true}
95
+ } // (134:2) {#if $$props.container === true}
96
96
 
97
97
 
98
98
  function create_if_block(ctx) {
@@ -100,10 +100,10 @@ function create_if_block(ctx) {
100
100
  let current;
101
101
  const default_slot_template =
102
102
  /*#slots*/
103
- ctx[8].default;
103
+ ctx[9].default;
104
104
  const default_slot = create_slot(default_slot_template, ctx,
105
105
  /*$$scope*/
106
- ctx[7], get_default_slot_context);
106
+ ctx[8], get_default_slot_context);
107
107
  return {
108
108
  c() {
109
109
  div = element("div");
@@ -120,7 +120,7 @@ function create_if_block(ctx) {
120
120
  /*div_binding*/
121
121
 
122
122
 
123
- ctx[9](div);
123
+ ctx[10](div);
124
124
  current = true;
125
125
  },
126
126
 
@@ -128,14 +128,14 @@ function create_if_block(ctx) {
128
128
  if (default_slot) {
129
129
  if (default_slot.p && (!current || dirty &
130
130
  /*$$scope, visibleItems*/
131
- 136)) {
131
+ 264)) {
132
132
  update_slot_base(default_slot, default_slot_template, ctx,
133
133
  /*$$scope*/
134
- ctx[7], !current ? get_all_dirty_from_scope(
134
+ ctx[8], !current ? get_all_dirty_from_scope(
135
135
  /*$$scope*/
136
- ctx[7]) : get_slot_changes(default_slot_template,
136
+ ctx[8]) : get_slot_changes(default_slot_template,
137
137
  /*$$scope*/
138
- ctx[7], dirty, get_default_slot_changes), get_default_slot_context);
138
+ ctx[8], dirty, get_default_slot_changes), get_default_slot_context);
139
139
  }
140
140
  }
141
141
  },
@@ -156,7 +156,7 @@ function create_if_block(ctx) {
156
156
  if (default_slot) default_slot.d(detaching);
157
157
  /*div_binding*/
158
158
 
159
- ctx[9](null);
159
+ ctx[10](null);
160
160
  }
161
161
 
162
162
  };
@@ -200,7 +200,7 @@ function create_fragment(ctx) {
200
200
  if_blocks[current_block_type_index].m(div, null);
201
201
  /*div_binding_1*/
202
202
 
203
- ctx[10](div);
203
+ ctx[11](div);
204
204
  current = true;
205
205
  },
206
206
 
@@ -252,7 +252,7 @@ function create_fragment(ctx) {
252
252
  if_blocks[current_block_type_index].d();
253
253
  /*div_binding_1*/
254
254
 
255
- ctx[10](null);
255
+ ctx[11](null);
256
256
  }
257
257
 
258
258
  };
@@ -266,11 +266,13 @@ function instance($$self, $$props, $$invalidate) {
266
266
  let {
267
267
  GridClass
268
268
  } = $$props;
269
+ let {
270
+ vanillaGrid = null
271
+ } = $$props;
269
272
  const dispatch = createEventDispatcher();
270
273
  const renderer = new Renderer();
271
274
  let wrapper;
272
275
  let container;
273
- let grid;
274
276
  let attributes = {};
275
277
  let visibleItems = [];
276
278
 
@@ -307,7 +309,7 @@ function instance($$self, $$props, $$invalidate) {
307
309
 
308
310
  function updateVisibleChildren(props) {
309
311
  $$invalidate(3, visibleItems = getRenderingItems(getItemInfos(), {
310
- grid,
312
+ grid: vanillaGrid,
311
313
  status: props.status,
312
314
  usePlaceholder: props.usePlaceholder,
313
315
  useFirstRender: props.useFirstRender,
@@ -316,6 +318,10 @@ function instance($$self, $$props, $$invalidate) {
316
318
  }));
317
319
  }
318
320
 
321
+ beforeUpdate(() => {
322
+ updateAttributes($$props);
323
+ updateVisibleChildren($$props);
324
+ });
319
325
  onMount(() => {
320
326
  const defaultOptions = GridClass.defaultOptions;
321
327
  const options = {};
@@ -331,11 +337,11 @@ function instance($$self, $$props, $$invalidate) {
331
337
  }
332
338
 
333
339
  options.renderer = renderer;
334
- grid = new GridClass(wrapper, options);
340
+ $$invalidate(5, vanillaGrid = new GridClass(wrapper, options));
335
341
 
336
342
  for (const name in INFINITEGRID_EVENTS) {
337
343
  const eventName = INFINITEGRID_EVENTS[name];
338
- grid.on(eventName, e => {
344
+ vanillaGrid.on(eventName, e => {
339
345
  dispatch(eventName, e);
340
346
  });
341
347
  }
@@ -344,7 +350,7 @@ function instance($$self, $$props, $$invalidate) {
344
350
  updateVisibleChildren($$props);
345
351
  });
346
352
  mountRenderingItems(getItemInfos(), {
347
- grid,
353
+ grid: vanillaGrid,
348
354
  status: $$props.status,
349
355
  usePlaceholder: $$props.usePlaceholder,
350
356
  useFirstRender: $$props.useFirstRender,
@@ -359,18 +365,18 @@ function instance($$self, $$props, $$invalidate) {
359
365
 
360
366
  for (const name in propertyTypes) {
361
367
  if (name in $$props) {
362
- grid[name] = $$props[name];
368
+ $$invalidate(5, vanillaGrid[name] = $$props[name], vanillaGrid);
363
369
  }
364
370
  }
365
371
 
366
372
  renderer.updated();
367
373
  });
368
374
  onDestroy(() => {
369
- grid?.destroy();
375
+ vanillaGrid && vanillaGrid.destroy();
370
376
  });
371
377
 
372
378
  function getInstance() {
373
- return grid;
379
+ return vanillaGrid;
374
380
  }
375
381
 
376
382
  function div_binding($$value) {
@@ -389,31 +395,27 @@ function instance($$self, $$props, $$invalidate) {
389
395
 
390
396
  $$self.$$set = $$new_props => {
391
397
  $$invalidate(4, $$props = assign(assign({}, $$props), exclude_internal_props($$new_props)));
392
- if ('GridClass' in $$new_props) $$invalidate(5, GridClass = $$new_props.GridClass);
393
- if ('$$scope' in $$new_props) $$invalidate(7, $$scope = $$new_props.$$scope);
394
- };
395
-
396
- $$self.$$.update = () => {
397
- updateAttributes($$props);
398
-
399
- updateVisibleChildren($$props);
398
+ if ('GridClass' in $$new_props) $$invalidate(6, GridClass = $$new_props.GridClass);
399
+ if ('vanillaGrid' in $$new_props) $$invalidate(5, vanillaGrid = $$new_props.vanillaGrid);
400
+ if ('$$scope' in $$new_props) $$invalidate(8, $$scope = $$new_props.$$scope);
400
401
  };
401
402
 
402
403
  $$props = exclude_internal_props($$props);
403
- return [wrapper, container, attributes, visibleItems, $$props, GridClass, getInstance, $$scope, slots, div_binding, div_binding_1];
404
+ return [wrapper, container, attributes, visibleItems, $$props, vanillaGrid, GridClass, getInstance, $$scope, slots, div_binding, div_binding_1];
404
405
  }
405
406
 
406
407
  class InfiniteGrid$1 extends SvelteComponent {
407
408
  constructor(options) {
408
409
  super();
409
410
  init(this, options, instance, create_fragment, safe_not_equal, {
410
- GridClass: 5,
411
- getInstance: 6
411
+ GridClass: 6,
412
+ vanillaGrid: 5,
413
+ getInstance: 7
412
414
  });
413
415
  }
414
416
 
415
417
  get getInstance() {
416
- return this.$$.ctx[6];
418
+ return this.$$.ctx[7];
417
419
  }
418
420
 
419
421
  }
@@ -1 +1 @@
1
- {"version":3,"file":"infinitegrid.esm.js","sources":["../src/consts.js","../src/InfiniteGrid.svelte","../src/InfiniteGrid.js","../src/grids/MasonryInfiniteGrid.js","../src/grids/JustifiedInfiniteGrid.js","../src/grids/FrameInfiniteGrid.js","../src/grids/PackingInfiniteGrid.js"],"sourcesContent":["export const SVELTE_INFINITEGRID_PROPS = [\n \"status\",\n \"useFirstRender\",\n \"useLoading\",\n \"usePlaceholder\",\n \"items\",\n \"itemBy\",\n \"groupBy\",\n];\n","<script>\n /**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\n import {\n onMount,\n beforeUpdate,\n createEventDispatcher,\n onDestroy,\n afterUpdate,\n } from \"svelte\";\n import {\n INFINITEGRID_EVENTS,\n Renderer,\n CONTAINER_CLASS_NAME,\n getRenderingItems,\n mountRenderingItems,\n } from \"@egjs/infinitegrid\";\n import { SVELTE_INFINITEGRID_PROPS } from \"./consts\";\n export let GridClass;\n\n const dispatch = createEventDispatcher();\n const renderer = new Renderer();\n let wrapper;\n let container;\n let grid;\n let isFirstMount = false;\n let attributes = {};\n let visibleItems = [];\n\n function updateAttributes(props) {\n attributes = { ...props };\n\n const defaultOptions = GridClass.defaultOptions;\n\n delete attributes[\"GridClass\"];\n for (const name in defaultOptions) {\n delete attributes[name];\n }\n SVELTE_INFINITEGRID_PROPS.forEach((name) => {\n delete attributes[name];\n });\n }\n function getItemInfos() {\n const items = $$props.items || [];\n const itemBy = $$props.itemBy || ((item) => item.key);\n const groupBy = $$props.groupBy || ((item) => item.groupKey);\n\n return items.map((item, i) => {\n return {\n groupKey: groupBy(item, i),\n key: itemBy(item, i),\n data: item,\n };\n });\n }\n function updateVisibleChildren(props) {\n visibleItems = getRenderingItems(getItemInfos(), {\n grid,\n status: props.status,\n usePlaceholder: props.usePlaceholder,\n useFirstRender: props.useFirstRender,\n useLoading: props.useLoading,\n horizontal: props.horizontal,\n });\n }\n\n $: updateAttributes($$props);\n $: updateVisibleChildren($$props);\n\n onMount(() => {\n const defaultOptions = GridClass.defaultOptions;\n const options = {};\n\n for (const name in defaultOptions) {\n if (name in $$props) {\n options[name] = $$props[name];\n }\n }\n if (container) {\n options.container = container;\n }\n options.renderer = renderer;\n grid = new GridClass(wrapper, options);\n\n for (const name in INFINITEGRID_EVENTS) {\n const eventName = INFINITEGRID_EVENTS[name];\n\n grid.on(eventName, (e) => {\n dispatch(eventName, e);\n });\n }\n renderer.on(\"requestUpdate\", () => {\n updateVisibleChildren($$props);\n });\n mountRenderingItems(getItemInfos(), {\n grid,\n status: $$props.status,\n usePlaceholder: $$props.usePlaceholder,\n useFirstRender: $$props.useFirstRender,\n useLoading: $$props.useLoading,\n horizontal: $$props.horizontal,\n });\n renderer.updated();\n });\n afterUpdate(() => {\n if (isFirstMount) {\n isFirstMount = false;\n return;\n }\n const propertyTypes = GridClass.propertyTypes;\n\n for (const name in propertyTypes) {\n if (name in $$props) {\n grid[name] = $$props[name];\n }\n }\n renderer.updated();\n });\n onDestroy(() => {\n grid?.destroy();\n });\n export function getInstance() {\n return grid;\n }\n</script>\n\n<div bind:this={wrapper} {...attributes}>\n {#if $$props.container === true}\n <div class={CONTAINER_CLASS_NAME} bind:this={container}>\n <slot {visibleItems} />\n </div>\n {:else}\n <slot {visibleItems} />\n {/if}\n</div>\n","/**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\nimport InfiniteGrid from \"./InfiniteGrid.svelte\";\nimport { INFINITEGRID_METHODS } from \"@egjs/infinitegrid\";\n\nexport default /*#__PURE__*/ (() => {\n const prototype = InfiniteGrid.prototype;\n\n if (prototype) {\n INFINITEGRID_METHODS.forEach(name => {\n if (name in prototype) {\n return;\n }\n prototype[name] = function (...args) {\n const self = this.getInstance();\n const result = self[name](...args);\n\n if (result === self) {\n return this;\n } else {\n return result;\n }\n };\n });\n }\n return InfiniteGrid;\n})();\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { MasonryInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet MasonryInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n MasonryInfiniteGrid = InfiniteGrid;\n} else {\n MasonryInfiniteGrid = class MasonryInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { MasonryInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { JustifiedInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet JustifiedInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n JustifiedInfiniteGrid = InfiniteGrid;\n} else {\n JustifiedInfiniteGrid = class JustifiedInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { JustifiedInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { FrameInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet FrameInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n FrameInfiniteGrid = InfiniteGrid;\n} else {\n FrameInfiniteGrid = class FrameInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { FrameInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { PackingInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet PackingInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n PackingInfiniteGrid = InfiniteGrid;\n} else {\n PackingInfiniteGrid = class PackingInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { PackingInfiniteGrid };\n"],"names":["SVELTE_INFINITEGRID_PROPS","CONTAINER_CLASS_NAME","insert","ctx","container","GridClass","dispatch","createEventDispatcher","renderer","Renderer","wrapper","grid","attributes","visibleItems","updateAttributes","props","defaultOptions","name","forEach","getItemInfos","items","$$props","itemBy","item","key","groupBy","groupKey","map","i","data","updateVisibleChildren","getRenderingItems","status","usePlaceholder","useFirstRender","useLoading","horizontal","onMount","options","INFINITEGRID_EVENTS","eventName","on","e","mountRenderingItems","updated","afterUpdate","propertyTypes","onDestroy","destroy","getInstance","$","prototype","InfiniteGrid","INFINITEGRID_METHODS","args","self","result","MasonryInfiniteGrid","constructor","JustifiedInfiniteGrid","FrameInfiniteGrid","PackingInfiniteGrid"],"mappings":";;;;;;;;;;;;AAAO,MAAMA,yBAAyB,GAAG,CACvC,QADuC,EAEvC,gBAFuC,EAGvC,YAHuC,EAIvC,gBAJuC,EAKvC,OALuC,EAMvC,QANuC,EAOvC,SAPuC,CAAlC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBCmISC;;;;AAAZC,MAAAA,MAEK,OAAA,KAAA,QAAA,CAFL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AADGC,IAAAA,GAAO,EAAA,CAAP,CAAQC,SAAR,KAAsB;;;;;;;;AADAD,EAAAA,GAAU,EAAA;;;;;;;;;;;;;;;AAAvCD,MAAAA,MAQK,OAAA,KAAA,QAAA,CARL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAA6BC,MAAAA,GAAU,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA5G1BE,IAAAA;;QAELC,QAAQ,GAAGC,qBAAqB;QAChCC,QAAQ,OAAOC;MACjBC;MACAN;MACAO;MAEAC,UAAU;MACVC,YAAY;;WAEPC,iBAAiBC;oBACxBH,UAAU,QAAQG;;UAEZC,cAAc,GAAGX,SAAS,CAACW;WAE1BJ,UAAU,CAAC,WAAD;;eACNK,QAAQD;aACVJ,UAAU,CAACK,IAAD;;;AAEnBjB,IAAAA,yBAAyB,CAACkB,OAA1B,CAAmCD,IAAI;aAC9BL,UAAU,CAACK,IAAD;KADnB;;;WAIOE;UACDC,KAAK,GAAGC,OAAO,CAACD,KAAR;;UACRE,MAAM,GAAGD,OAAO,CAACC,MAAR,KAAoBC,IAAI,IAAKA,IAAI,CAACC,GAAlC;;UACTC,OAAO,GAAGJ,OAAO,CAACI,OAAR,KAAqBF,IAAI,IAAKA,IAAI,CAACG,QAAnC;;WAETN,KAAK,CAACO,GAAN,EAAWJ,MAAMK;;AAEpBF,QAAAA,QAAQ,EAAED,OAAO,CAACF,IAAD,EAAOK,CAAP;AACjBJ,QAAAA,GAAG,EAAEF,MAAM,CAACC,IAAD,EAAOK,CAAP;AACXC,QAAAA,IAAI,EAAEN;;KAJH;;;WAQAO,sBAAsBf;oBAC7BF,YAAY,GAAGkB,iBAAiB,CAACZ,YAAY,EAAb;AAC9BR,MAAAA;AACAqB,MAAAA,MAAM,EAAEjB,KAAK,CAACiB;AACdC,MAAAA,cAAc,EAAElB,KAAK,CAACkB;AACtBC,MAAAA,cAAc,EAAEnB,KAAK,CAACmB;AACtBC,MAAAA,UAAU,EAAEpB,KAAK,CAACoB;AAClBC,MAAAA,UAAU,EAAErB,KAAK,CAACqB;KANY;;;AAalCC,EAAAA,OAAO;UACCrB,cAAc,GAAGX,SAAS,CAACW;UAC3BsB,OAAO;;eAEFrB,QAAQD;UACbC,IAAI,IAAII;AACViB,QAAAA,OAAO,CAACrB,IAAD,CAAP,GAAgBI,OAAO,CAACJ,IAAD,CAAvB;;;;QAGAb;AACFkC,MAAAA,OAAO,CAAClC,SAAR,GAAoBA,SAApB;;;AAEFkC,IAAAA,OAAO,CAAC9B,QAAR,GAAmBA,QAAnB;AACAG,IAAAA,IAAI,OAAON,UAAUK,SAAS4B,QAA9B;;eAEWrB,QAAQsB;YACXC,SAAS,GAAGD,mBAAmB,CAACtB,IAAD;AAErCN,MAAAA,IAAI,CAAC8B,EAAL,CAAQD,SAAR,EAAoBE,CAAC;AACnBpC,QAAAA,QAAQ,CAACkC,SAAD,EAAYE,CAAZ,CAAR;OADF;;;AAIFlC,IAAAA,QAAQ,CAACiC,EAAT,CAAY,eAAZ;AACEX,MAAAA,qBAAqB,CAACT,OAAD,CAArB;KADF;AAGAsB,IAAAA,mBAAmB,CAACxB,YAAY,EAAb;AACjBR,MAAAA;AACAqB,MAAAA,MAAM,EAAEX,OAAO,CAACW;AAChBC,MAAAA,cAAc,EAAEZ,OAAO,CAACY;AACxBC,MAAAA,cAAc,EAAEb,OAAO,CAACa;AACxBC,MAAAA,UAAU,EAAEd,OAAO,CAACc;AACpBC,MAAAA,UAAU,EAAEf,OAAO,CAACe;KANH,CAAnB;AAQA5B,IAAAA,QAAQ,CAACoC,OAAT;GAjCK,CAAP;AAmCAC,EAAAA,WAAW;;UAKHC,aAAa,GAAGzC,SAAS,CAACyC;;eAErB7B,QAAQ6B;UACb7B,IAAI,IAAII;AACVV,QAAAA,IAAI,CAACM,IAAD,CAAJ,GAAaI,OAAO,CAACJ,IAAD,CAApB;;;;AAGJT,IAAAA,QAAQ,CAACoC,OAAT;GAZS,CAAX;AAcAG,EAAAA,SAAS;AACPpC,IAAAA,IAAI,EAAEqC,OAAN;GADO,CAAT;;WAGgBC;WACPtC;;;;;AAMsCP,MAAAA,SAAS,UAAT;;;;;;;AAFjCM,MAAAA,OAAO,UAAP;;;;;;;;;;;;AA5DdwC,IAAGpC,gBAAgB,CAACO,OAAD,CAAhB;;AACH6B,IAAGpB,qBAAqB,CAACT,OAAD,CAArB;;;;;;;;;;;;;;;;;;;;;;ACtEL;AACA;AACA;AACA;AACA;AAIA,mBAAe,aAAc,CAAC,MAAM;AAClC,QAAM8B,SAAS,GAAGC,cAAY,CAACD,SAA/B;;AAEA,MAAIA,SAAJ,EAAe;AACbE,IAAAA,oBAAoB,CAACnC,OAArB,CAA6BD,IAAI,IAAI;AACnC,UAAIA,IAAI,IAAIkC,SAAZ,EAAuB;AACrB;AACD;;AACDA,MAAAA,SAAS,CAAClC,IAAD,CAAT,GAAkB,UAAU,GAAGqC,IAAb,EAAmB;AACnC,cAAMC,IAAI,GAAG,KAAKN,WAAL,EAAb;AACA,cAAMO,MAAM,GAAGD,IAAI,CAACtC,IAAD,CAAJ,CAAW,GAAGqC,IAAd,CAAf;;AAEA,YAAIE,MAAM,KAAKD,IAAf,EAAqB;AACnB,iBAAO,IAAP;AACD,SAFD,MAEO;AACL,iBAAOC,MAAP;AACD;AACF,OATD;AAUD,KAdD;AAeD;;AACD,SAAOJ,cAAP;AACD,CArB4B,GAA7B;;ICJIK;;AAEJ,IAAI,OAAOL,cAAP,KAAwB,QAA5B,EAAsC;AACpCK,EAAAA,mBAAmB,GAAGL,cAAtB;AACD,CAFD,MAEO;AACLK,EAAAA,mBAAmB,GAAG,MAAMA,mBAAN,SAAkCL,cAAlC,CAA+C;AACnEM,IAAAA,WAAW,CAACpB,OAAD,EAAU;AACnBA,MAAAA,OAAO,CAACvB,KAAR,CAAcV,SAAd,GAA0BA,qBAA1B;AACA,YAAMiC,OAAN;AACD;;AAJkE,GAArE;AAMD;;ICXGqB;;AAEJ,IAAI,OAAOP,cAAP,KAAwB,QAA5B,EAAsC;AACpCO,EAAAA,qBAAqB,GAAGP,cAAxB;AACD,CAFD,MAEO;AACLO,EAAAA,qBAAqB,GAAG,MAAMA,qBAAN,SAAoCP,cAApC,CAAiD;AACvEM,IAAAA,WAAW,CAACpB,OAAD,EAAU;AACnBA,MAAAA,OAAO,CAACvB,KAAR,CAAcV,SAAd,GAA0BA,uBAA1B;AACA,YAAMiC,OAAN;AACD;;AAJsE,GAAzE;AAMD;;ICXGsB;;AAEJ,IAAI,OAAOR,cAAP,KAAwB,QAA5B,EAAsC;AACpCQ,EAAAA,iBAAiB,GAAGR,cAApB;AACD,CAFD,MAEO;AACLQ,EAAAA,iBAAiB,GAAG,MAAMA,iBAAN,SAAgCR,cAAhC,CAA6C;AAC/DM,IAAAA,WAAW,CAACpB,OAAD,EAAU;AACnBA,MAAAA,OAAO,CAACvB,KAAR,CAAcV,SAAd,GAA0BA,mBAA1B;AACA,YAAMiC,OAAN;AACD;;AAJ8D,GAAjE;AAMD;;ICXGuB;;AAEJ,IAAI,OAAOT,cAAP,KAAwB,QAA5B,EAAsC;AACpCS,EAAAA,mBAAmB,GAAGT,cAAtB;AACD,CAFD,MAEO;AACLS,EAAAA,mBAAmB,GAAG,MAAMA,mBAAN,SAAkCT,cAAlC,CAA+C;AACnEM,IAAAA,WAAW,CAACpB,OAAD,EAAU;AACnBA,MAAAA,OAAO,CAACvB,KAAR,CAAcV,SAAd,GAA0BA,qBAA1B;AACA,YAAMiC,OAAN;AACD;;AAJkE,GAArE;AAMD;;;;"}
1
+ {"version":3,"file":"infinitegrid.esm.js","sources":["../src/consts.js","../src/InfiniteGrid.svelte","../src/InfiniteGrid.js","../src/grids/MasonryInfiniteGrid.js","../src/grids/JustifiedInfiniteGrid.js","../src/grids/FrameInfiniteGrid.js","../src/grids/PackingInfiniteGrid.js"],"sourcesContent":["export const SVELTE_INFINITEGRID_PROPS = [\n \"status\",\n \"useFirstRender\",\n \"useLoading\",\n \"usePlaceholder\",\n \"items\",\n \"itemBy\",\n \"groupBy\",\n];\n","<script>\n /**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\n import {\n onMount,\n beforeUpdate,\n createEventDispatcher,\n onDestroy,\n afterUpdate,\n } from \"svelte\";\n import {\n INFINITEGRID_EVENTS,\n Renderer,\n CONTAINER_CLASS_NAME,\n getRenderingItems,\n mountRenderingItems,\n } from \"@egjs/infinitegrid\";\n import { SVELTE_INFINITEGRID_PROPS } from \"./consts\";\n export let GridClass;\n export let vanillaGrid = null;\n\n const dispatch = createEventDispatcher();\n const renderer = new Renderer();\n let wrapper;\n let container;\n let isFirstMount = false;\n let attributes = {};\n let visibleItems = [];\n\n function updateAttributes(props) {\n attributes = { ...props };\n\n const defaultOptions = GridClass.defaultOptions;\n\n delete attributes[\"GridClass\"];\n for (const name in defaultOptions) {\n delete attributes[name];\n }\n SVELTE_INFINITEGRID_PROPS.forEach((name) => {\n delete attributes[name];\n });\n }\n function getItemInfos() {\n const items = $$props.items || [];\n const itemBy = $$props.itemBy || ((item) => item.key);\n const groupBy = $$props.groupBy || ((item) => item.groupKey);\n\n return items.map((item, i) => {\n return {\n groupKey: groupBy(item, i),\n key: itemBy(item, i),\n data: item,\n };\n });\n }\n function updateVisibleChildren(props) {\n visibleItems = getRenderingItems(getItemInfos(), {\n grid: vanillaGrid,\n status: props.status,\n usePlaceholder: props.usePlaceholder,\n useFirstRender: props.useFirstRender,\n useLoading: props.useLoading,\n horizontal: props.horizontal,\n });\n }\n\n beforeUpdate(() => {\n updateAttributes($$props);\n updateVisibleChildren($$props);\n });\n\n onMount(() => {\n const defaultOptions = GridClass.defaultOptions;\n const options = {};\n\n for (const name in defaultOptions) {\n if (name in $$props) {\n options[name] = $$props[name];\n }\n }\n if (container) {\n options.container = container;\n }\n options.renderer = renderer;\n vanillaGrid = new GridClass(wrapper, options);\n\n for (const name in INFINITEGRID_EVENTS) {\n const eventName = INFINITEGRID_EVENTS[name];\n\n vanillaGrid.on(eventName, (e) => {\n dispatch(eventName, e);\n });\n }\n renderer.on(\"requestUpdate\", () => {\n updateVisibleChildren($$props);\n });\n\n mountRenderingItems(getItemInfos(), {\n grid: vanillaGrid,\n status: $$props.status,\n usePlaceholder: $$props.usePlaceholder,\n useFirstRender: $$props.useFirstRender,\n useLoading: $$props.useLoading,\n horizontal: $$props.horizontal,\n });\n renderer.updated();\n });\n afterUpdate(() => {\n if (isFirstMount) {\n isFirstMount = false;\n return;\n }\n const propertyTypes = GridClass.propertyTypes;\n\n for (const name in propertyTypes) {\n if (name in $$props) {\n vanillaGrid[name] = $$props[name];\n }\n }\n renderer.updated();\n });\n onDestroy(() => {\n vanillaGrid && vanillaGrid.destroy();\n });\n export function getInstance() {\n return vanillaGrid;\n }\n</script>\n\n<div bind:this={wrapper} {...attributes}>\n {#if $$props.container === true}\n <div class={CONTAINER_CLASS_NAME} bind:this={container}>\n <slot {visibleItems} />\n </div>\n {:else}\n <slot {visibleItems} />\n {/if}\n</div>\n","/**\n * egjs-infinitegrid\n * Copyright (c) 2021-present NAVER Corp.\n * MIT license\n */\nimport InfiniteGrid from \"./InfiniteGrid.svelte\";\nimport { INFINITEGRID_METHODS } from \"@egjs/infinitegrid\";\n\nexport default /*#__PURE__*/ (() => {\n const prototype = InfiniteGrid.prototype;\n\n if (prototype) {\n INFINITEGRID_METHODS.forEach(name => {\n if (name in prototype) {\n return;\n }\n prototype[name] = function (...args) {\n const self = this.getInstance();\n const result = self[name](...args);\n\n if (result === self) {\n return this;\n } else {\n return result;\n }\n };\n });\n }\n return InfiniteGrid;\n})();\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { MasonryInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet MasonryInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n MasonryInfiniteGrid = InfiniteGrid;\n} else {\n MasonryInfiniteGrid = class MasonryInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { MasonryInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { JustifiedInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet JustifiedInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n JustifiedInfiniteGrid = InfiniteGrid;\n} else {\n JustifiedInfiniteGrid = class JustifiedInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { JustifiedInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { FrameInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet FrameInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n FrameInfiniteGrid = InfiniteGrid;\n} else {\n FrameInfiniteGrid = class FrameInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { FrameInfiniteGrid };\n","import InfiniteGrid from \"../InfiniteGrid.svelte\";\nimport { PackingInfiniteGrid as GridClass } from \"@egjs/infinitegrid\";\n\n\nlet PackingInfiniteGrid;\n\nif (typeof InfiniteGrid === \"object\") {\n PackingInfiniteGrid = InfiniteGrid;\n} else {\n PackingInfiniteGrid = class PackingInfiniteGrid extends InfiniteGrid {\n constructor(options) {\n options.props.GridClass = GridClass;\n super(options);\n }\n }\n}\nexport { PackingInfiniteGrid };\n"],"names":["SVELTE_INFINITEGRID_PROPS","CONTAINER_CLASS_NAME","insert","ctx","container","GridClass","vanillaGrid","dispatch","createEventDispatcher","renderer","Renderer","wrapper","attributes","visibleItems","updateAttributes","props","defaultOptions","name","forEach","getItemInfos","items","$$props","itemBy","item","key","groupBy","groupKey","map","i","data","updateVisibleChildren","getRenderingItems","grid","status","usePlaceholder","useFirstRender","useLoading","horizontal","beforeUpdate","onMount","options","INFINITEGRID_EVENTS","eventName","on","e","mountRenderingItems","updated","afterUpdate","propertyTypes","onDestroy","destroy","getInstance","prototype","InfiniteGrid","INFINITEGRID_METHODS","args","self","result","MasonryInfiniteGrid","constructor","JustifiedInfiniteGrid","FrameInfiniteGrid","PackingInfiniteGrid"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@egjs/svelte-infinitegrid",
3
- "version": "4.0.1-beta.3",
3
+ "version": "4.1.2-beta.0",
4
4
  "description": "A Svelte component that can arrange items infinitely according to the type of grids",
5
5
  "sideEffects": false,
6
6
  "svelte": "src/index.js",
@@ -69,6 +69,6 @@
69
69
  "typescript": "^4.0.0"
70
70
  },
71
71
  "dependencies": {
72
- "@egjs/infinitegrid": "~4.0.0"
72
+ "@egjs/infinitegrid": "~4.1.1"
73
73
  }
74
74
  }
package/rollup.config.js CHANGED
@@ -43,8 +43,7 @@ export default {
43
43
  preprocess: sveltePreprocess({ sourceMap: !production }),
44
44
  compilerOptions: {
45
45
  // enable run-time checks when not in production
46
- dev: !production,
47
- generate: "ssr",
46
+ dev: !production
48
47
  }
49
48
  }),
50
49
  // we'll extract any component CSS out into
@@ -20,12 +20,12 @@
20
20
  } from "@egjs/infinitegrid";
21
21
  import { SVELTE_INFINITEGRID_PROPS } from "./consts";
22
22
  export let GridClass;
23
+ export let vanillaGrid = null;
23
24
 
24
25
  const dispatch = createEventDispatcher();
25
26
  const renderer = new Renderer();
26
27
  let wrapper;
27
28
  let container;
28
- let grid;
29
29
  let isFirstMount = false;
30
30
  let attributes = {};
31
31
  let visibleItems = [];
@@ -58,7 +58,7 @@
58
58
  }
59
59
  function updateVisibleChildren(props) {
60
60
  visibleItems = getRenderingItems(getItemInfos(), {
61
- grid,
61
+ grid: vanillaGrid,
62
62
  status: props.status,
63
63
  usePlaceholder: props.usePlaceholder,
64
64
  useFirstRender: props.useFirstRender,
@@ -67,8 +67,10 @@
67
67
  });
68
68
  }
69
69
 
70
- $: updateAttributes($$props);
71
- $: updateVisibleChildren($$props);
70
+ beforeUpdate(() => {
71
+ updateAttributes($$props);
72
+ updateVisibleChildren($$props);
73
+ });
72
74
 
73
75
  onMount(() => {
74
76
  const defaultOptions = GridClass.defaultOptions;
@@ -83,20 +85,21 @@
83
85
  options.container = container;
84
86
  }
85
87
  options.renderer = renderer;
86
- grid = new GridClass(wrapper, options);
88
+ vanillaGrid = new GridClass(wrapper, options);
87
89
 
88
90
  for (const name in INFINITEGRID_EVENTS) {
89
91
  const eventName = INFINITEGRID_EVENTS[name];
90
92
 
91
- grid.on(eventName, (e) => {
93
+ vanillaGrid.on(eventName, (e) => {
92
94
  dispatch(eventName, e);
93
95
  });
94
96
  }
95
97
  renderer.on("requestUpdate", () => {
96
98
  updateVisibleChildren($$props);
97
99
  });
100
+
98
101
  mountRenderingItems(getItemInfos(), {
99
- grid,
102
+ grid: vanillaGrid,
100
103
  status: $$props.status,
101
104
  usePlaceholder: $$props.usePlaceholder,
102
105
  useFirstRender: $$props.useFirstRender,
@@ -114,16 +117,16 @@
114
117
 
115
118
  for (const name in propertyTypes) {
116
119
  if (name in $$props) {
117
- grid[name] = $$props[name];
120
+ vanillaGrid[name] = $$props[name];
118
121
  }
119
122
  }
120
123
  renderer.updated();
121
124
  });
122
125
  onDestroy(() => {
123
- grid?.destroy();
126
+ vanillaGrid && vanillaGrid.destroy();
124
127
  });
125
128
  export function getInstance() {
126
- return grid;
129
+ return vanillaGrid;
127
130
  }
128
131
  </script>
129
132
 
package/src/index.d.ts CHANGED
@@ -1,20 +1,20 @@
1
- import VanillaGrid, {
2
- FrameGridOptions, GridMethods, GridOptions, JustifiedGridOptions,
3
- MasonryGridOptions, PackingGridOptions,
4
- } from "@egjs/grid";
1
+ import VanillaInfiniteGrid, {
2
+ FrameInfiniteGridOptions, InfiniteGridMethods, InfiniteGridOptions, JustifiedInfiniteGridOptions,
3
+ MasonryInfiniteGridOptions, PackingInfiniteGridOptions,
4
+ } from "@egjs/Infinitegrid";
5
5
  import { SvelteComponentDev } from "svelte/internal";
6
6
 
7
7
 
8
- export default abstract class Grid<T extends GridOptions> extends SvelteComponentDev {
8
+ export default abstract class InfiniteGrid<T extends InfiniteGridOptions> extends SvelteComponentDev {
9
9
  $$prop_def: T;
10
- getInstance(): VanillaGrid;
10
+ getInstance(): VanillaInfiniteGrid;
11
11
  }
12
12
 
13
- export default interface Grid<T extends GridOptions> extends GridMethods<Grid<T>> {
13
+ export default interface InfiniteGrid<T extends InfiniteGridOptions> extends InfiniteGridMethods<InfiniteGrid<T>> {
14
14
  // eslint-disable-next-line semi
15
15
  }
16
16
 
17
- export class MasonryGrid extends Grid<MasonryGridOptions> { }
18
- export class JustifiedGrid extends Grid<JustifiedGridOptions> { }
19
- export class FrameGrid extends Grid<FrameGridOptions> { }
20
- export class PackingGrid extends Grid<PackingGridOptions> { }
17
+ export class MasonryInfiniteGrid extends InfiniteGrid<MasonryInfiniteGridOptions> { }
18
+ export class JustifiedInfiniteGrid extends InfiniteGrid<JustifiedInfiniteGridOptions> { }
19
+ export class FrameInfiniteGrid extends InfiniteGrid<FrameInfiniteGridOptions> { }
20
+ export class PackingInfiniteGrid extends InfiniteGrid<PackingInfiniteGridOptions> { }