@egjs/ngx-infinitegrid 4.7.1-beta.0 → 4.7.1

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.
Files changed (32) hide show
  1. package/bundles/egjs-ngx-infinitegrid.umd.js +686 -0
  2. package/bundles/egjs-ngx-infinitegrid.umd.js.map +1 -0
  3. package/bundles/egjs-ngx-infinitegrid.umd.min.js +2 -0
  4. package/bundles/egjs-ngx-infinitegrid.umd.min.js.map +1 -0
  5. package/egjs-ngx-infinitegrid.d.ts +9 -0
  6. package/egjs-ngx-infinitegrid.metadata.json +1 -0
  7. package/esm2015/egjs-ngx-infinitegrid.js +10 -0
  8. package/esm2015/lib/consts.js +25 -0
  9. package/esm2015/lib/grids/ngx-frame-infinitegrid.component.js +19 -0
  10. package/esm2015/lib/grids/ngx-justified-infinitegrid.component.js +21 -0
  11. package/esm2015/lib/grids/ngx-masonry-infinitegrid.component.js +22 -0
  12. package/esm2015/lib/grids/ngx-packing-infinitegrid.component.js +20 -0
  13. package/esm2015/lib/ngx-infinitegrid.component.js +176 -0
  14. package/esm2015/lib/ngx-infinitegrid.interface.js +13 -0
  15. package/esm2015/lib/ngx-infinitegrid.module.js +31 -0
  16. package/esm2015/lib/ngx-infinitegrid.service.js +13 -0
  17. package/esm2015/lib/types.js +2 -0
  18. package/esm2015/public-api.js +8 -0
  19. package/fesm2015/egjs-ngx-infinitegrid.js +320 -0
  20. package/fesm2015/egjs-ngx-infinitegrid.js.map +1 -0
  21. package/lib/consts.d.ts +1 -0
  22. package/lib/grids/ngx-frame-infinitegrid.component.d.ts +8 -0
  23. package/lib/grids/ngx-justified-infinitegrid.component.d.ts +10 -0
  24. package/lib/grids/ngx-masonry-infinitegrid.component.d.ts +11 -0
  25. package/lib/grids/ngx-packing-infinitegrid.component.d.ts +9 -0
  26. package/lib/ngx-infinitegrid.component.d.ts +67 -0
  27. package/lib/ngx-infinitegrid.interface.d.ts +12 -0
  28. package/lib/ngx-infinitegrid.module.d.ts +2 -0
  29. package/lib/ngx-infinitegrid.service.d.ts +3 -0
  30. package/lib/types.d.ts +19 -0
  31. package/package.json +12 -11
  32. package/public-api.d.ts +4 -0
@@ -0,0 +1,176 @@
1
+ /**
2
+ * egjs-infinitegrid
3
+ * Copyright (c) 2021-present NAVER Corp.
4
+ * MIT license
5
+ */
6
+ import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, PLATFORM_ID, Inject, } from '@angular/core';
7
+ import { isPlatformBrowser } from '@angular/common';
8
+ import { getRenderingItems, INFINITEGRID_EVENTS, mountRenderingItems, Renderer, } from '@egjs/infinitegrid';
9
+ import { NgxInfiniteGridInterface } from './ngx-infinitegrid.interface';
10
+ // @dynamic
11
+ export class NgxInfiniteGridComponent extends NgxInfiniteGridInterface {
12
+ constructor(elementRef, _platform) {
13
+ super();
14
+ this.elementRef = elementRef;
15
+ this._platform = _platform;
16
+ this.items = [];
17
+ this.trackBy = ((_, item) => item.key);
18
+ this.groupBy = ((_, item) => item.groupKey);
19
+ this.visibleItems = [];
20
+ this._renderer = new Renderer();
21
+ this._isChange = false;
22
+ for (const name in INFINITEGRID_EVENTS) {
23
+ const eventName = INFINITEGRID_EVENTS[name];
24
+ this[eventName] = new EventEmitter();
25
+ }
26
+ }
27
+ ngOnInit() {
28
+ this._updateVisibleChildren();
29
+ }
30
+ ngOnChanges() {
31
+ this._isChange = true;
32
+ this._updateVisibleChildren();
33
+ }
34
+ ngAfterViewInit() {
35
+ var _a;
36
+ if (!isPlatformBrowser(this._platform)) {
37
+ return;
38
+ }
39
+ const GridClass = this.constructor.GridClass;
40
+ const defaultOptions = GridClass.defaultOptions;
41
+ const options = {};
42
+ const containerElement = (_a = this._containerRef) === null || _a === void 0 ? void 0 : _a.nativeElement;
43
+ for (const name in defaultOptions) {
44
+ if (name in this && typeof this[name] !== "undefined") {
45
+ options[name] = this[name];
46
+ }
47
+ }
48
+ if (containerElement) {
49
+ options.container = containerElement;
50
+ }
51
+ options.renderer = this._renderer;
52
+ const wrapper = this._wrapperRef || this.elementRef;
53
+ const grid = new GridClass(wrapper.nativeElement, options);
54
+ for (const name in INFINITEGRID_EVENTS) {
55
+ const eventName = INFINITEGRID_EVENTS[name];
56
+ grid.on(eventName, (e) => {
57
+ this[eventName].emit(e);
58
+ });
59
+ }
60
+ this.vanillaGrid = grid;
61
+ this._renderer.on("requestUpdate", () => {
62
+ this._isChange = true;
63
+ this._updateVisibleChildren();
64
+ });
65
+ mountRenderingItems(this._getItemInfos(), {
66
+ grid,
67
+ useFirstRender: this.useFirstRender,
68
+ useLoading: this.useLoading,
69
+ usePlaceholder: this.usePlaceholder,
70
+ horizontal: this.horizontal,
71
+ status: this.status,
72
+ });
73
+ this._renderer.updated();
74
+ }
75
+ ngAfterViewChecked() {
76
+ if (!this._isChange || !this.vanillaGrid) {
77
+ return;
78
+ }
79
+ const children = [].slice.call(this.getContainerElement().children);
80
+ if (this.visibleItems.length !== children.length) {
81
+ return;
82
+ }
83
+ this._isChange = false;
84
+ const GridClass = this.constructor.GridClass;
85
+ const propertyTypes = GridClass.propertyTypes;
86
+ const grid = this.vanillaGrid;
87
+ for (const name in propertyTypes) {
88
+ if (name in this) {
89
+ grid[name] = this[name];
90
+ }
91
+ }
92
+ this._renderer.updated(children);
93
+ }
94
+ ngOnDestroy() {
95
+ var _a;
96
+ (_a = this.vanillaGrid) === null || _a === void 0 ? void 0 : _a.destroy();
97
+ }
98
+ _getItemInfos() {
99
+ const items = this.items;
100
+ const trackBy = this.trackBy;
101
+ const groupBy = this.groupBy;
102
+ return items.map((item, i) => {
103
+ return {
104
+ groupKey: groupBy(i, item),
105
+ key: trackBy(i, item),
106
+ data: item,
107
+ };
108
+ });
109
+ }
110
+ _updateVisibleChildren() {
111
+ this.visibleItems = getRenderingItems(this._getItemInfos(), {
112
+ grid: this.vanillaGrid,
113
+ useFirstRender: this.useFirstRender,
114
+ useLoading: this.useLoading,
115
+ usePlaceholder: this.usePlaceholder,
116
+ horizontal: this.horizontal,
117
+ status: this.status,
118
+ });
119
+ }
120
+ }
121
+ NgxInfiniteGridComponent.decorators = [
122
+ { type: Component, args: [{
123
+ selector: 'ngx-infinite-grid, [NgxInfiniteGrid]',
124
+ template: '<slot></slot>',
125
+ styles: [':host { display: block }']
126
+ },] }
127
+ ];
128
+ NgxInfiniteGridComponent.ctorParameters = () => [
129
+ { type: ElementRef },
130
+ { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
131
+ ];
132
+ NgxInfiniteGridComponent.propDecorators = {
133
+ gridConstructor: [{ type: Input }],
134
+ renderer: [{ type: Input }],
135
+ container: [{ type: Input }],
136
+ containerTag: [{ type: Input }],
137
+ threshold: [{ type: Input }],
138
+ useRecycle: [{ type: Input }],
139
+ horizontal: [{ type: Input }],
140
+ percentage: [{ type: Input }],
141
+ isEqualSize: [{ type: Input }],
142
+ isConstantSize: [{ type: Input }],
143
+ gap: [{ type: Input }],
144
+ attributePrefix: [{ type: Input }],
145
+ resizeDebounce: [{ type: Input }],
146
+ maxResizeDebounce: [{ type: Input }],
147
+ autoResize: [{ type: Input }],
148
+ useFit: [{ type: Input }],
149
+ useTransform: [{ type: Input }],
150
+ renderOnPropertyChange: [{ type: Input }],
151
+ preserveUIOnDestroy: [{ type: Input }],
152
+ defaultDirection: [{ type: Input }],
153
+ externalItemRenderer: [{ type: Input }],
154
+ externalContainerManager: [{ type: Input }],
155
+ outlineLength: [{ type: Input }],
156
+ outlineSize: [{ type: Input }],
157
+ useRoundedSize: [{ type: Input }],
158
+ useResizeObserver: [{ type: Input }],
159
+ observeChildren: [{ type: Input }],
160
+ scrollContainer: [{ type: Input }],
161
+ usePlaceholder: [{ type: Input }],
162
+ useLoading: [{ type: Input }],
163
+ status: [{ type: Input }],
164
+ useFirstRender: [{ type: Input }],
165
+ items: [{ type: Input }],
166
+ trackBy: [{ type: Input }],
167
+ groupBy: [{ type: Input }],
168
+ renderComplete: [{ type: Output }],
169
+ contentError: [{ type: Output }],
170
+ changeScroll: [{ type: Output }],
171
+ requestAppend: [{ type: Output }],
172
+ requestPrepend: [{ type: Output }],
173
+ _wrapperRef: [{ type: ViewChild, args: ['wrapperRef', { static: false },] }],
174
+ _containerRef: [{ type: ViewChild, args: ['containerRef', { static: false },] }]
175
+ };
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWluZmluaXRlZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaW5maW5pdGVncmlkL3NyYy9saWIvbmd4LWluZmluaXRlZ3JpZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDNEIsU0FBUyxFQUFFLFVBQVUsRUFDdEQsWUFBWSxFQUFFLEtBQUssRUFBd0IsTUFBTSxFQUFFLFNBQVMsRUFDNUQsV0FBVyxFQUFFLE1BQU0sR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFcEQsT0FBTyxFQUNMLGlCQUFpQixFQUtqQixtQkFBbUIsRUFDbkIsbUJBQW1CLEVBTW5CLFFBQVEsR0FDVCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBR3hFLFdBQVc7QUFRWCxNQUFNLE9BQU8sd0JBQ1gsU0FBUSx3QkFBd0I7SUFvRGhDLFlBQXNCLFVBQXNCLEVBQStCLFNBQWlCO1FBQzFGLEtBQUssRUFBRSxDQUFDO1FBRFksZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUErQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBZG5GLFVBQUssR0FBa0MsRUFBRSxDQUFDO1FBQzFDLFlBQU8sR0FBb0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRSxZQUFPLEdBQW9DLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFNMUUsaUJBQVksR0FBdUIsRUFBRSxDQUFDO1FBR3JDLGNBQVMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzNCLGNBQVMsR0FBRyxL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TSxFQUFFLEtBQUssRUFBRTs0QkFDekMsU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGVnanMtaW5maW5pdGVncmlkXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEtcHJlc2VudCBOQVZFUiBDb3JwLlxuICogTUlUIGxpY2Vuc2VcbiAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCwgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3Q2hpbGQsXG4gIFBMQVRGT1JNX0lELCBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICBnZXRSZW5kZXJpbmdJdGVtcyxcbiAgSW5maW5pdGVHcmlkRnVuY3Rpb24sXG4gIEluZmluaXRlR3JpZEl0ZW0sXG4gIEluZmluaXRlR3JpZEl0ZW1JbmZvLFxuICBJbmZpbml0ZUdyaWRPcHRpb25zLFxuICBJTkZJTklURUdSSURfRVZFTlRTLFxuICBtb3VudFJlbmRlcmluZ0l0ZW1zLFxuICBPbkNvbnRlbnRFcnJvcixcbiAgT25SZW5kZXJDb21wbGV0ZSxcbiAgT25SZXF1ZXN0QXBwZW5kLFxuICBPblJlcXVlc3RQcmVwZW5kLFxuICBPbkNoYW5nZVNjcm9sbCxcbiAgUmVuZGVyZXIsXG59IGZyb20gJ0BlZ2pzL2luZmluaXRlZ3JpZCc7XG5pbXBvcnQgeyBOZ3hJbmZpbml0ZUdyaWRJbnRlcmZhY2UgfSBmcm9tICcuL25neC1pbmZpbml0ZWdyaWQuaW50ZXJmYWNlJztcbmltcG9ydCB7IE5neEluZmluaXRlR3JpZFByb3BzIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIEBkeW5hbWljXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtaW5maW5pdGUtZ3JpZCwgW05neEluZmluaXRlR3JpZF0nLFxuICB0ZW1wbGF0ZTogJzxzbG90Pjwvc2xvdD4nLFxuICBzdHlsZXM6IFtcbiAgICAnOmhvc3QgeyBkaXNwbGF5OiBibG9jayB9JyxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd4SW5maW5pdGVHcmlkQ29tcG9uZW50XG4gIGV4dGVuZHMgTmd4SW5maW5pdGVHcmlkSW50ZXJmYWNlXG4gIGltcGxlbWVudHMgUmVxdWlyZWQ8SW5maW5pdGVHcmlkT3B0aW9ucz4sXG4gIE5neEluZmluaXRlR3JpZFByb3BzLFxuICBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBzdGF0aWMgR3JpZENsYXNzOiBJbmZpbml0ZUdyaWRGdW5jdGlvbjtcbiAgQElucHV0KCkgZ3JpZENvbnN0cnVjdG9yITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ2dyaWRDb25zdHJ1Y3RvciddO1xuICBASW5wdXQoKSByZW5kZXJlciE6IE5neEluZmluaXRlR3JpZFByb3BzWydyZW5kZXJlciddO1xuICBASW5wdXQoKSBjb250YWluZXIhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snY29udGFpbmVyJ107XG4gIEBJbnB1dCgpIGNvbnRhaW5lclRhZyE6IE5neEluZmluaXRlR3JpZFByb3BzWydjb250YWluZXJUYWcnXTtcbiAgQElucHV0KCkgdGhyZXNob2xkITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3RocmVzaG9sZCddO1xuICBASW5wdXQoKSB1c2VSZWN5Y2xlITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3VzZVJlY3ljbGUnXTtcbiAgQElucHV0KCkgaG9yaXpvbnRhbCE6IE5neEluZmluaXRlR3JpZFByb3BzWydob3Jpem9udGFsJ107XG4gIEBJbnB1dCgpIHBlcmNlbnRhZ2UhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1sncGVyY2VudGFnZSddO1xuICBASW5wdXQoKSBpc0VxdWFsU2l6ZSE6IE5neEluZmluaXRlR3JpZFByb3BzWydpc0VxdWFsU2l6ZSddO1xuICBASW5wdXQoKSBpc0NvbnN0YW50U2l6ZSE6IE5neEluZmluaXRlR3JpZFByb3BzWydpc0NvbnN0YW50U2l6ZSddO1xuICBASW5wdXQoKSBnYXAhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snZ2FwJ107XG4gIEBJbnB1dCgpIGF0dHJpYnV0ZVByZWZpeCE6IE5neEluZmluaXRlR3JpZFByb3BzWydhdHRyaWJ1dGVQcmVmaXgnXTtcbiAgQElucHV0KCkgcmVzaXplRGVib3VuY2UhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1sncmVzaXplRGVib3VuY2UnXTtcbiAgQElucHV0KCkgbWF4UmVzaXplRGVib3VuY2UhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snbWF4UmVzaXplRGVib3VuY2UnXTtcbiAgQElucHV0KCkgYXV0b1Jlc2l6ZSE6IE5neEluZmluaXRlR3JpZFByb3BzWydhdXRvUmVzaXplJ107XG4gIEBJbnB1dCgpIHVzZUZpdCE6IE5neEluZmluaXRlR3JpZFByb3BzWyd1c2VGaXQnXTtcbiAgQElucHV0KCkgdXNlVHJhbnNmb3JtITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3VzZVRyYW5zZm9ybSddO1xuICBASW5wdXQoKSByZW5kZXJPblByb3BlcnR5Q2hhbmdlITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3JlbmRlck9uUHJvcGVydHlDaGFuZ2UnXTtcbiAgQElucHV0KCkgcHJlc2VydmVVSU9uRGVzdHJveSE6IE5neEluZmluaXRlR3JpZFByb3BzWydwcmVzZXJ2ZVVJT25EZXN0cm95J107XG4gIEBJbnB1dCgpIGRlZmF1bHREaXJlY3Rpb24hOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snZGVmYXVsdERpcmVjdGlvbiddO1xuICBASW5wdXQoKSBleHRlcm5hbEl0ZW1SZW5kZXJlciE6IE5neEluZmluaXRlR3JpZFByb3BzWydleHRlcm5hbEl0ZW1SZW5kZXJlciddO1xuICBASW5wdXQoKSBleHRlcm5hbENvbnRhaW5lck1hbmFnZXIhOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snZXh0ZXJuYWxDb250YWluZXJNYW5hZ2VyJ107XG4gIEBJbnB1dCgpIG91dGxpbmVMZW5ndGghOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snb3V0bGluZUxlbmd0aCddO1xuICBASW5wdXQoKSBvdXRsaW5lU2l6ZSE6IE5neEluZmluaXRlR3JpZFByb3BzWydvdXRsaW5lU2l6ZSddO1xuICBASW5wdXQoKSB1c2VSb3VuZGVkU2l6ZSE6IE5neEluZmluaXRlR3JpZFByb3BzWyd1c2VSb3VuZGVkU2l6ZSddO1xuICBASW5wdXQoKSB1c2VSZXNpemVPYnNlcnZlciE6IE5neEluZmluaXRlR3JpZFByb3BzWyd1c2VSZXNpemVPYnNlcnZlciddO1xuICBASW5wdXQoKSBvYnNlcnZlQ2hpbGRyZW4hOiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snb2JzZXJ2ZUNoaWxkcmVuJ107XG4gIEBJbnB1dCgpIHNjcm9sbENvbnRhaW5lciE6IE5neEluZmluaXRlR3JpZFByb3BzWydzY3JvbGxDb250YWluZXInXTtcblxuICBASW5wdXQoKSB1c2VQbGFjZWhvbGRlciE6IE5neEluZmluaXRlR3JpZFByb3BzWyd1c2VGaXJzdFJlbmRlciddO1xuICBASW5wdXQoKSB1c2VMb2FkaW5nITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3VzZUxvYWRpbmcnXTtcbiAgQElucHV0KCkgc3RhdHVzITogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3N0YXR1cyddO1xuICBASW5wdXQoKSB1c2VGaXJzdFJlbmRlciE6IE5neEluZmluaXRlR3JpZFByb3BzWyd1c2VGaXJzdFJlbmRlciddO1xuICBASW5wdXQoKSBpdGVtczogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ2l0ZW1zJ10gPSBbXTtcbiAgQElucHV0KCkgdHJhY2tCeTogTmd4SW5maW5pdGVHcmlkUHJvcHNbJ3RyYWNrQnknXSA9ICgoXywgaXRlbSkgPT4gaXRlbS5rZXkpO1xuICBASW5wdXQoKSBncm91cEJ5OiBOZ3hJbmZpbml0ZUdyaWRQcm9wc1snZ3JvdXBCeSddID0gKChfLCBpdGVtKSA9PiBpdGVtLmdyb3VwS2V5KTtcbiAgQE91dHB1dCgpIHJlbmRlckNvbXBsZXRlITogRXZlbnRFbWl0dGVyPE9uUmVuZGVyQ29tcGxldGU+O1xuICBAT3V0cHV0KCkgY29udGVudEVycm9yITogRXZlbnRFbWl0dGVyPE9uQ29udGVudEVycm9yPjtcbiAgQE91dHB1dCgpIGNoYW5nZVNjcm9sbCE6IEV2ZW50RW1pdHRlcjxPbkNoYW5nZVNjcm9sbD47XG4gIEBPdXRwdXQoKSByZXF1ZXN0QXBwZW5kITogRXZlbnRFbWl0dGVyPE9uUmVxdWVzdEFwcGVuZD47XG4gIEBPdXRwdXQoKSByZXF1ZXN0UHJlcGVuZCE6IEV2ZW50RW1pdHRlcjxPblJlcXVlc3RQcmVwZW5kPjtcbiAgcHVibGljIHZpc2libGVJdGVtczogSW5maW5pdGVHcmlkSXRlbVtdID0gW107XG4gIEBWaWV3Q2hpbGQoJ3dyYXBwZXJSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgX3dyYXBwZXJSZWYhOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdjb250YWluZXJSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgX2NvbnRhaW5lclJlZiE6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgX3JlbmRlcmVyID0gbmV3IFJlbmRlcmVyKCk7XG4gIHByaXZhdGUgX2lzQ2hhbmdlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgX3BsYXRmb3JtOiBPYmplY3QpIHtcbiAgICBzdXBlcigpO1xuICAgIGZvciAoY29uc3QgbmFtZSBpbiBJTkZJTklURUdSSURfRVZFTlRTKSB7XG4gICAgICBjb25zdCBldmVudE5hbWUgPSAoSU5GSU5JVEVHUklEX0VWRU5UUyBhcyBhbnkpW25hbWVdO1xuICAgICAgKHRoaXMgYXMgYW55KVtldmVudE5hbWVdID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIH1cbiAgfVxuXG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5fdXBkYXRlVmlzaWJsZUNoaWxkcmVuKCk7XG4gIH1cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5faXNDaGFuZ2UgPSB0cnVlO1xuICAgIHRoaXMuX3VwZGF0ZVZpc2libGVDaGlsZHJlbigpO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMuX3BsYXRmb3JtKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBHcmlkQ2xhc3MgPSAodGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgTmd4SW5maW5pdGVHcmlkQ29tcG9uZW50KS5HcmlkQ2xhc3M7XG4gICAgY29uc3QgZGVmYXVsdE9wdGlvbnMgPSBHcmlkQ2xhc3MuZGVmYXVsdE9wdGlvbnM7XG4gICAgY29uc3Qgb3B0aW9uczogUGFydGlhbDxJbmZpbml0ZUdyaWRPcHRpb25zPiA9IHt9O1xuICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLl9jb250YWluZXJSZWY/Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBmb3IgKGNvbnN0IG5hbWUgaW4gZGVmYXVsdE9wdGlvbnMpIHtcbiAgICAgIGlmIChuYW1lIGluIHRoaXMgJiYgdHlwZW9mICh0aGlzIGFzIGFueSlbbmFtZV0gIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgKG9wdGlvbnMgYXMgYW55KVtuYW1lXSA9ICh0aGlzIGFzIGFueSlbbmFtZV07XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjb250YWluZXJFbGVtZW50KSB7XG4gICAgICBvcHRpb25zLmNvbnRhaW5lciA9IGNvbnRhaW5lckVsZW1lbnQ7XG4gICAgfVxuICAgIG9wdGlvbnMucmVuZGVyZXIgPSB0aGlzLl9yZW5kZXJlcjtcbiAgICBjb25zdCB3cmFwcGVyID0gdGhpcy5fd3JhcHBlclJlZiEgfHwgdGhpcy5lbGVtZW50UmVmO1xuXG4gICAgY29uc3QgZ3JpZCA9IG5ldyBHcmlkQ2xhc3Mod3JhcHBlci5uYXRpdmVFbGVtZW50LCBvcHRpb25zKTtcblxuICAgIGZvciAoY29uc3QgbmFtZSBpbiBJTkZJTklURUdSSURfRVZFTlRTKSB7XG4gICAgICBjb25zdCBldmVudE5hbWUgPSAoSU5GSU5JVEVHUklEX0VWRU5UUyBhcyBhbnkpW25hbWVdO1xuXG4gICAgICBncmlkLm9uKGV2ZW50TmFtZSwgKGU6IGFueSkgPT4ge1xuICAgICAgICAodGhpcyBhcyBhbnkpW2V2ZW50TmFtZV0uZW1pdChlIGFzIGFueSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLnZhbmlsbGFHcmlkID0gZ3JpZDtcbiAgICB0aGlzLl9yZW5kZXJlci5vbihcInJlcXVlc3RVcGRhdGVcIiwgKCkgPT4ge1xuICAgICAgdGhpcy5faXNDaGFuZ2UgPSB0cnVlO1xuICAgICAgdGhpcy5fdXBkYXRlVmlzaWJsZUNoaWxkcmVuKCk7XG4gICAgfSk7XG5cbiAgICBtb3VudFJlbmRlcmluZ0l0ZW1zKHRoaXMuX2dldEl0ZW1JbmZvcygpLCB7XG4gICAgICBncmlkLFxuICAgICAgdXNlRmlyc3RSZW5kZXI6IHRoaXMudXNlRmlyc3RSZW5kZXIsXG4gICAgICB1c2VMb2FkaW5nOiB0aGlzLnVzZUxvYWRpbmcsXG4gICAgICB1c2VQbGFjZWhvbGRlcjogdGhpcy51c2VQbGFjZWhvbGRlcixcbiAgICAgIGhvcml6b250YWw6IHRoaXMuaG9yaXpvbnRhbCxcbiAgICAgIHN0YXR1czogdGhpcy5zdGF0dXMsXG4gICAgfSk7XG4gICAgdGhpcy5fcmVuZGVyZXIudXBkYXRlZCgpO1xuICB9XG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcbiAgICBpZiAoIXRoaXMuX2lzQ2hhbmdlIHx8ICF0aGlzLnZhbmlsbGFHcmlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNoaWxkcmVuID0gW10uc2xpY2UuY2FsbCh0aGlzLmdldENvbnRhaW5lckVsZW1lbnQoKS5jaGlsZHJlbik7XG5cbiAgICBpZiAodGhpcy52aXNpYmxlSXRlbXMubGVuZ3RoICE9PSBjaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5faXNDaGFuZ2UgPSBmYWxzZTtcbiAgICBjb25zdCBHcmlkQ2xhc3MgPSAodGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgTmd4SW5maW5pdGVHcmlkQ29tcG9uZW50KS5HcmlkQ2xhc3M7XG4gICAgY29uc3QgcHJvcGVydHlUeXBlcyA9IEdyaWRDbGFzcy5wcm9wZXJ0eVR5cGVzO1xuICAgIGNvbnN0IGdyaWQgPSB0aGlzLnZhbmlsbGFHcmlkO1xuXG4gICAgZm9yIChjb25zdCBuYW1lIGluIHByb3BlcnR5VHlwZXMpIHtcbiAgICAgIGlmIChuYW1lIGluIHRoaXMpIHtcbiAgICAgICAgKGdyaWQgYXMgYW55KVtuYW1lXSA9ICh0aGlzIGFzIGFueSlbbmFtZV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fcmVuZGVyZXIudXBkYXRlZChjaGlsZHJlbik7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy52YW5pbGxhR3JpZD8uZGVzdHJveSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SXRlbUluZm9zKCk6IEluZmluaXRlR3JpZEl0ZW1JbmZvW10ge1xuICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5pdGVtcztcbiAgICBjb25zdCB0cmFja0J5ID0gdGhpcy50cmFja0J5O1xuICAgIGNvbnN0IGdyb3VwQnkgPSB0aGlzLmdyb3VwQnk7XG5cbiAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtLCBpKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBncm91cEtleTogZ3JvdXBCeShpLCBpdGVtKSxcbiAgICAgICAga2V5OiB0cmFja0J5KGksIGl0ZW0pLFxuICAgICAgICBkYXRhOiBpdGVtLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIF91cGRhdGVWaXNpYmxlQ2hpbGRyZW4oKSB7XG4gICAgdGhpcy52aXNpYmxlSXRlbXMgPSBnZXRSZW5kZXJpbmdJdGVtcyh0aGlzLl9nZXRJdGVtSW5mb3MoKSwge1xuICAgICAgZ3JpZDogdGhpcy52YW5pbGxhR3JpZCxcbiAgICAgIHVzZUZpcnN0UmVuZGVyOiB0aGlzLnVzZUZpcnN0UmVuZGVyLFxuICAgICAgdXNlTG9hZGluZzogdGhpcy51c2VMb2FkaW5nLFxuICAgICAgdXNlUGxhY2Vob2xkZXI6IHRoaXMudXNlUGxhY2Vob2xkZXIsXG4gICAgICBob3Jpem9udGFsOiB0aGlzLmhvcml6b250YWwsXG4gICAgICBzdGF0dXM6IHRoaXMuc3RhdHVzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,13 @@
1
+ import { __decorate } from "tslib";
2
+ /**
3
+ * egjs-infinitegrid
4
+ * Copyright (c) 2021-present NAVER Corp.
5
+ * MIT license
6
+ */
7
+ import { withInfiniteGridMethods } from '@egjs/infinitegrid';
8
+ export class NgxInfiniteGridInterface {
9
+ }
10
+ __decorate([
11
+ withInfiniteGridMethods
12
+ ], NgxInfiniteGridInterface.prototype, "vanillaGrid", void 0);
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWluZmluaXRlZ3JpZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaW5maW5pdGVncmlkL3NyYy9saWIvbmd4LWluZmluaXRlZ3JpZC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7QUFDSCxPQUE0QixFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3ZHLE1BQU0sT0FBTyx3QkFBd0I7Q0FHcEM7QUFEQztJQURDLHVCQUF1Qjs2REFDb0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGVnanMtaW5maW5pdGVncmlkXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEtcHJlc2VudCBOQVZFUiBDb3JwLlxuICogTUlUIGxpY2Vuc2VcbiAqL1xuaW1wb3J0IFZhbmlsbGFJbmZpbml0ZUdyaWQsIHsgSW5maW5pdGVHcmlkTWV0aG9kcywgd2l0aEluZmluaXRlR3JpZE1ldGhvZHMgfSBmcm9tICdAZWdqcy9pbmZpbml0ZWdyaWQnO1xuaW1wb3J0IHsgTmd4SW5maW5pdGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9uZ3gtaW5maW5pdGVncmlkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBOZ3hJbmZpbml0ZUdyaWRJbnRlcmZhY2Uge1xuICBAd2l0aEluZmluaXRlR3JpZE1ldGhvZHNcbiAgcHJvdGVjdGVkIHZhbmlsbGFHcmlkITogVmFuaWxsYUluZmluaXRlR3JpZDtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgTmd4SW5maW5pdGVHcmlkSW50ZXJmYWNlIGV4dGVuZHMgSW5maW5pdGVHcmlkTWV0aG9kczxOZ3hJbmZpbml0ZUdyaWRDb21wb25lbnQ+IHsgfVxuIl19
@@ -0,0 +1,31 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { NgxInfiniteGridComponent } from './ngx-infinitegrid.component';
4
+ import { NgxMasonryInfiniteGridComponent } from './grids/ngx-masonry-infinitegrid.component';
5
+ import { NgxJustifiedInfiniteGridComponent } from './grids/ngx-justified-infinitegrid.component';
6
+ import { NgxFrameInfiniteGridComponent } from './grids/ngx-frame-infinitegrid.component';
7
+ import { NgxPackingInfiniteGridComponent } from './grids/ngx-packing-infinitegrid.component';
8
+ export class NgxInfiniteGridModule {
9
+ }
10
+ NgxInfiniteGridModule.decorators = [
11
+ { type: NgModule, args: [{
12
+ declarations: [
13
+ NgxInfiniteGridComponent,
14
+ NgxMasonryInfiniteGridComponent,
15
+ NgxJustifiedInfiniteGridComponent,
16
+ NgxFrameInfiniteGridComponent,
17
+ NgxPackingInfiniteGridComponent,
18
+ ],
19
+ imports: [
20
+ CommonModule,
21
+ ],
22
+ exports: [
23
+ NgxInfiniteGridComponent,
24
+ NgxMasonryInfiniteGridComponent,
25
+ NgxJustifiedInfiniteGridComponent,
26
+ NgxFrameInfiniteGridComponent,
27
+ NgxPackingInfiniteGridComponent,
28
+ ],
29
+ },] }
30
+ ];
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWluZmluaXRlZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaW5maW5pdGVncmlkL3NyYy9saWIvbmd4LWluZmluaXRlZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDakcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDekYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUF3QjdGLE1BQU0sT0FBTyxxQkFBcUI7OztZQW5CakMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWix3QkFBd0I7b0JBQ3hCLCtCQUErQjtvQkFDL0IsaUNBQWlDO29CQUNqQyw2QkFBNkI7b0JBQzdCLCtCQUErQjtpQkFDaEM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHdCQUF3QjtvQkFDeEIsK0JBQStCO29CQUMvQixpQ0FBaUM7b0JBQ2pDLDZCQUE2QjtvQkFDN0IsK0JBQStCO2lCQUNoQzthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hJbmZpbml0ZUdyaWRDb21wb25lbnQgfSBmcm9tICcuL25neC1pbmZpbml0ZWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IE5neE1hc29ucnlJbmZpbml0ZUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2dyaWRzL25neC1tYXNvbnJ5LWluZmluaXRlZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4SnVzdGlmaWVkSW5maW5pdGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9ncmlkcy9uZ3gtanVzdGlmaWVkLWluZmluaXRlZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4RnJhbWVJbmZpbml0ZUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2dyaWRzL25neC1mcmFtZS1pbmZpbml0ZWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IE5neFBhY2tpbmdJbmZpbml0ZUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2dyaWRzL25neC1wYWNraW5nLWluZmluaXRlZ3JpZC5jb21wb25lbnQnO1xuXG5cblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBOZ3hJbmZpbml0ZUdyaWRDb21wb25lbnQsXG4gICAgTmd4TWFzb25yeUluZmluaXRlR3JpZENvbXBvbmVudCxcbiAgICBOZ3hKdXN0aWZpZWRJbmZpbml0ZUdyaWRDb21wb25lbnQsXG4gICAgTmd4RnJhbWVJbmZpbml0ZUdyaWRDb21wb25lbnQsXG4gICAgTmd4UGFja2luZ0luZmluaXRlR3JpZENvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE5neEluZmluaXRlR3JpZENvbXBvbmVudCxcbiAgICBOZ3hNYXNvbnJ5SW5maW5pdGVHcmlkQ29tcG9uZW50LFxuICAgIE5neEp1c3RpZmllZEluZmluaXRlR3JpZENvbXBvbmVudCxcbiAgICBOZ3hGcmFtZUluZmluaXRlR3JpZENvbXBvbmVudCxcbiAgICBOZ3hQYWNraW5nSW5maW5pdGVHcmlkQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hJbmZpbml0ZUdyaWRNb2R1bGUgeyB9XG4iXX0=
@@ -0,0 +1,13 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class NgxInfinitegridService {
4
+ constructor() { }
5
+ }
6
+ NgxInfinitegridService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgxInfinitegridService_Factory() { return new NgxInfinitegridService(); }, token: NgxInfinitegridService, providedIn: "root" });
7
+ NgxInfinitegridService.decorators = [
8
+ { type: Injectable, args: [{
9
+ providedIn: 'root'
10
+ },] }
11
+ ];
12
+ NgxInfinitegridService.ctorParameters = () => [];
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWluZmluaXRlZ3JpZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWluZmluaXRlZ3JpZC9zcmMvbGliL25neC1pbmZpbml0ZWdyaWQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLGdCQUFnQixDQUFDOzs7O1lBTGxCLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmd4SW5maW5pdGVncmlkU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaW5maW5pdGVncmlkL3NyYy9saWIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogZWdqcy1pbmZpbml0ZWdyaWRcbiAqIENvcHlyaWdodCAoYykgMjAyMS1wcmVzZW50IE5BVkVSIENvcnAuXG4gKiBNSVQgbGljZW5zZVxuICovXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSW5maW5pdGVHcmlkRXZlbnRzLCBJbmZpbml0ZUdyaWRPcHRpb25zLCBJbmZpbml0ZUdyaWRTdGF0dXMgfSBmcm9tIFwiQGVnanMvaW5maW5pdGVncmlkXCI7XG5cbmV4cG9ydCB0eXBlIE5neEluZmluaXRlR3JpZEV2ZW50cyA9IHtcbiAgW2tleSBpbiBrZXlvZiBJbmZpbml0ZUdyaWRFdmVudHNdOiBFdmVudEVtaXR0ZXI8SW5maW5pdGVHcmlkRXZlbnRzW2tleV0+XG59O1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd4SW5maW5pdGVHcmlkUHJvcHMgZXh0ZW5kcyBOZ3hJbmZpbml0ZUdyaWRFdmVudHMsIFJlcXVpcmVkPEluZmluaXRlR3JpZE9wdGlvbnM+IHtcbiAgdXNlUGxhY2Vob2xkZXI6IGJvb2xlYW47XG4gIHVzZUxvYWRpbmc6IGJvb2xlYW47XG4gIHVzZUZpcnN0UmVuZGVyOiBib29sZWFuO1xuICBzdGF0dXM6IEluZmluaXRlR3JpZFN0YXR1cztcbiAgaXRlbXM6IGFueVtdO1xuICB0cmFja0J5OiAoaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSA9PiBhbnk7XG4gIGdyb3VwQnk6IChpbmRleDogbnVtYmVyLCBpdGVtOiBhbnkpID0+IGFueTtcbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Public API Surface of ngx-infinitegrid
3
+ */
4
+ export * from './lib/ngx-infinitegrid.service';
5
+ export * from './lib/grids/ngx-masonry-infinitegrid.component';
6
+ export * from './lib/ngx-infinitegrid.component';
7
+ export * from './lib/ngx-infinitegrid.module';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1pbmZpbml0ZWdyaWQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaW5maW5pdGVncmlkXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWluZmluaXRlZ3JpZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dyaWRzL25neC1tYXNvbnJ5LWluZmluaXRlZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWluZmluaXRlZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWluZmluaXRlZ3JpZC5tb2R1bGUnO1xuIl19
@@ -0,0 +1,320 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, EventEmitter, Component, ElementRef, Inject, PLATFORM_ID, Input, Output, ViewChild, NgModule } from '@angular/core';
3
+ import { isPlatformBrowser, CommonModule } from '@angular/common';
4
+ import { withInfiniteGridMethods, Renderer, INFINITEGRID_EVENTS, mountRenderingItems, getRenderingItems, MasonryInfiniteGrid, JustifiedInfiniteGrid, FrameInfiniteGrid, PackingInfiniteGrid } from '@egjs/infinitegrid';
5
+ import { __decorate } from 'tslib';
6
+
7
+ class NgxInfinitegridService {
8
+ constructor() { }
9
+ }
10
+ NgxInfinitegridService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgxInfinitegridService_Factory() { return new NgxInfinitegridService(); }, token: NgxInfinitegridService, providedIn: "root" });
11
+ NgxInfinitegridService.decorators = [
12
+ { type: Injectable, args: [{
13
+ providedIn: 'root'
14
+ },] }
15
+ ];
16
+ NgxInfinitegridService.ctorParameters = () => [];
17
+
18
+ class NgxInfiniteGridInterface {
19
+ }
20
+ __decorate([
21
+ withInfiniteGridMethods
22
+ ], NgxInfiniteGridInterface.prototype, "vanillaGrid", void 0);
23
+
24
+ /**
25
+ * egjs-infinitegrid
26
+ * Copyright (c) 2021-present NAVER Corp.
27
+ * MIT license
28
+ */
29
+ // @dynamic
30
+ class NgxInfiniteGridComponent extends NgxInfiniteGridInterface {
31
+ constructor(elementRef, _platform) {
32
+ super();
33
+ this.elementRef = elementRef;
34
+ this._platform = _platform;
35
+ this.items = [];
36
+ this.trackBy = ((_, item) => item.key);
37
+ this.groupBy = ((_, item) => item.groupKey);
38
+ this.visibleItems = [];
39
+ this._renderer = new Renderer();
40
+ this._isChange = false;
41
+ for (const name in INFINITEGRID_EVENTS) {
42
+ const eventName = INFINITEGRID_EVENTS[name];
43
+ this[eventName] = new EventEmitter();
44
+ }
45
+ }
46
+ ngOnInit() {
47
+ this._updateVisibleChildren();
48
+ }
49
+ ngOnChanges() {
50
+ this._isChange = true;
51
+ this._updateVisibleChildren();
52
+ }
53
+ ngAfterViewInit() {
54
+ var _a;
55
+ if (!isPlatformBrowser(this._platform)) {
56
+ return;
57
+ }
58
+ const GridClass = this.constructor.GridClass;
59
+ const defaultOptions = GridClass.defaultOptions;
60
+ const options = {};
61
+ const containerElement = (_a = this._containerRef) === null || _a === void 0 ? void 0 : _a.nativeElement;
62
+ for (const name in defaultOptions) {
63
+ if (name in this && typeof this[name] !== "undefined") {
64
+ options[name] = this[name];
65
+ }
66
+ }
67
+ if (containerElement) {
68
+ options.container = containerElement;
69
+ }
70
+ options.renderer = this._renderer;
71
+ const wrapper = this._wrapperRef || this.elementRef;
72
+ const grid = new GridClass(wrapper.nativeElement, options);
73
+ for (const name in INFINITEGRID_EVENTS) {
74
+ const eventName = INFINITEGRID_EVENTS[name];
75
+ grid.on(eventName, (e) => {
76
+ this[eventName].emit(e);
77
+ });
78
+ }
79
+ this.vanillaGrid = grid;
80
+ this._renderer.on("requestUpdate", () => {
81
+ this._isChange = true;
82
+ this._updateVisibleChildren();
83
+ });
84
+ mountRenderingItems(this._getItemInfos(), {
85
+ grid,
86
+ useFirstRender: this.useFirstRender,
87
+ useLoading: this.useLoading,
88
+ usePlaceholder: this.usePlaceholder,
89
+ horizontal: this.horizontal,
90
+ status: this.status,
91
+ });
92
+ this._renderer.updated();
93
+ }
94
+ ngAfterViewChecked() {
95
+ if (!this._isChange || !this.vanillaGrid) {
96
+ return;
97
+ }
98
+ const children = [].slice.call(this.getContainerElement().children);
99
+ if (this.visibleItems.length !== children.length) {
100
+ return;
101
+ }
102
+ this._isChange = false;
103
+ const GridClass = this.constructor.GridClass;
104
+ const propertyTypes = GridClass.propertyTypes;
105
+ const grid = this.vanillaGrid;
106
+ for (const name in propertyTypes) {
107
+ if (name in this) {
108
+ grid[name] = this[name];
109
+ }
110
+ }
111
+ this._renderer.updated(children);
112
+ }
113
+ ngOnDestroy() {
114
+ var _a;
115
+ (_a = this.vanillaGrid) === null || _a === void 0 ? void 0 : _a.destroy();
116
+ }
117
+ _getItemInfos() {
118
+ const items = this.items;
119
+ const trackBy = this.trackBy;
120
+ const groupBy = this.groupBy;
121
+ return items.map((item, i) => {
122
+ return {
123
+ groupKey: groupBy(i, item),
124
+ key: trackBy(i, item),
125
+ data: item,
126
+ };
127
+ });
128
+ }
129
+ _updateVisibleChildren() {
130
+ this.visibleItems = getRenderingItems(this._getItemInfos(), {
131
+ grid: this.vanillaGrid,
132
+ useFirstRender: this.useFirstRender,
133
+ useLoading: this.useLoading,
134
+ usePlaceholder: this.usePlaceholder,
135
+ horizontal: this.horizontal,
136
+ status: this.status,
137
+ });
138
+ }
139
+ }
140
+ NgxInfiniteGridComponent.decorators = [
141
+ { type: Component, args: [{
142
+ selector: 'ngx-infinite-grid, [NgxInfiniteGrid]',
143
+ template: '<slot></slot>',
144
+ styles: [':host { display: block }']
145
+ },] }
146
+ ];
147
+ NgxInfiniteGridComponent.ctorParameters = () => [
148
+ { type: ElementRef },
149
+ { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
150
+ ];
151
+ NgxInfiniteGridComponent.propDecorators = {
152
+ gridConstructor: [{ type: Input }],
153
+ renderer: [{ type: Input }],
154
+ container: [{ type: Input }],
155
+ containerTag: [{ type: Input }],
156
+ threshold: [{ type: Input }],
157
+ useRecycle: [{ type: Input }],
158
+ horizontal: [{ type: Input }],
159
+ percentage: [{ type: Input }],
160
+ isEqualSize: [{ type: Input }],
161
+ isConstantSize: [{ type: Input }],
162
+ gap: [{ type: Input }],
163
+ attributePrefix: [{ type: Input }],
164
+ resizeDebounce: [{ type: Input }],
165
+ maxResizeDebounce: [{ type: Input }],
166
+ autoResize: [{ type: Input }],
167
+ useFit: [{ type: Input }],
168
+ useTransform: [{ type: Input }],
169
+ renderOnPropertyChange: [{ type: Input }],
170
+ preserveUIOnDestroy: [{ type: Input }],
171
+ defaultDirection: [{ type: Input }],
172
+ externalItemRenderer: [{ type: Input }],
173
+ externalContainerManager: [{ type: Input }],
174
+ outlineLength: [{ type: Input }],
175
+ outlineSize: [{ type: Input }],
176
+ useRoundedSize: [{ type: Input }],
177
+ useResizeObserver: [{ type: Input }],
178
+ observeChildren: [{ type: Input }],
179
+ scrollContainer: [{ type: Input }],
180
+ usePlaceholder: [{ type: Input }],
181
+ useLoading: [{ type: Input }],
182
+ status: [{ type: Input }],
183
+ useFirstRender: [{ type: Input }],
184
+ items: [{ type: Input }],
185
+ trackBy: [{ type: Input }],
186
+ groupBy: [{ type: Input }],
187
+ renderComplete: [{ type: Output }],
188
+ contentError: [{ type: Output }],
189
+ changeScroll: [{ type: Output }],
190
+ requestAppend: [{ type: Output }],
191
+ requestPrepend: [{ type: Output }],
192
+ _wrapperRef: [{ type: ViewChild, args: ['wrapperRef', { static: false },] }],
193
+ _containerRef: [{ type: ViewChild, args: ['containerRef', { static: false },] }]
194
+ };
195
+
196
+ const TEMPLATE = `
197
+ <ng-template #content><ng-content></ng-content></ng-template>
198
+
199
+ <ng-template #viewer>
200
+ <ng-template [ngIf]="container === true" [ngIfElse]="noContainer">
201
+ <div #containerRef>
202
+ <ng-container *ngTemplateOutlet="content"></ng-container>
203
+ </div>
204
+ </ng-template>
205
+ <ng-template #noContainer>
206
+ <ng-container *ngTemplateOutlet="content"></ng-container>
207
+ </ng-template>
208
+ </ng-template>
209
+
210
+ <ng-template [ngIf]="elementRef.nativeElement.tagName.indexOf('NGX-') === 0" [ngIfElse]="noWrapper">
211
+ <div #wrapperRef>
212
+ <ng-container *ngTemplateOutlet="viewer"></ng-container>
213
+ </div>
214
+ </ng-template>
215
+
216
+ <ng-template #noWrapper>
217
+ <ng-container *ngTemplateOutlet="viewer"></ng-container>
218
+ </ng-template>
219
+ `;
220
+
221
+ class NgxMasonryInfiniteGridComponent extends NgxInfiniteGridComponent {
222
+ }
223
+ NgxMasonryInfiniteGridComponent.GridClass = MasonryInfiniteGrid;
224
+ NgxMasonryInfiniteGridComponent.decorators = [
225
+ { type: Component, args: [{
226
+ selector: 'ngx-masonry-infinite-grid, [NgxMasonryInfiniteGrid]',
227
+ template: TEMPLATE
228
+ },] }
229
+ ];
230
+ NgxMasonryInfiniteGridComponent.propDecorators = {
231
+ column: [{ type: Input }],
232
+ columnSize: [{ type: Input }],
233
+ columnSizeRatio: [{ type: Input }],
234
+ align: [{ type: Input }],
235
+ columnCalculationThreshold: [{ type: Input }],
236
+ maxStretchColumnSize: [{ type: Input }]
237
+ };
238
+
239
+ class NgxJustifiedInfiniteGridComponent extends NgxInfiniteGridComponent {
240
+ }
241
+ NgxJustifiedInfiniteGridComponent.GridClass = JustifiedInfiniteGrid;
242
+ NgxJustifiedInfiniteGridComponent.decorators = [
243
+ { type: Component, args: [{
244
+ selector: 'ngx-justified-infinite-grid, [NgxJustifiedInfiniteGrid]',
245
+ template: TEMPLATE
246
+ },] }
247
+ ];
248
+ NgxJustifiedInfiniteGridComponent.propDecorators = {
249
+ columnRange: [{ type: Input }],
250
+ rowRange: [{ type: Input }],
251
+ sizeRange: [{ type: Input }],
252
+ displayedRow: [{ type: Input }],
253
+ isCroppedSize: [{ type: Input }]
254
+ };
255
+
256
+ class NgxFrameInfiniteGridComponent extends NgxInfiniteGridComponent {
257
+ }
258
+ NgxFrameInfiniteGridComponent.GridClass = FrameInfiniteGrid;
259
+ NgxFrameInfiniteGridComponent.decorators = [
260
+ { type: Component, args: [{
261
+ selector: 'ngx-frame-infinite-grid, [NgxFrameInfiniteGrid]',
262
+ template: TEMPLATE
263
+ },] }
264
+ ];
265
+ NgxFrameInfiniteGridComponent.propDecorators = {
266
+ frame: [{ type: Input }],
267
+ useFrameFill: [{ type: Input }],
268
+ rectSize: [{ type: Input }]
269
+ };
270
+
271
+ class NgxPackingInfiniteGridComponent extends NgxInfiniteGridComponent {
272
+ }
273
+ NgxPackingInfiniteGridComponent.GridClass = PackingInfiniteGrid;
274
+ NgxPackingInfiniteGridComponent.decorators = [
275
+ { type: Component, args: [{
276
+ selector: 'ngx-packing-infinite-grid, [NgxPackingInfiniteGrid]',
277
+ template: TEMPLATE
278
+ },] }
279
+ ];
280
+ NgxPackingInfiniteGridComponent.propDecorators = {
281
+ aspectRatio: [{ type: Input }],
282
+ sizeWeight: [{ type: Input }],
283
+ ratioWeight: [{ type: Input }],
284
+ weightPriority: [{ type: Input }]
285
+ };
286
+
287
+ class NgxInfiniteGridModule {
288
+ }
289
+ NgxInfiniteGridModule.decorators = [
290
+ { type: NgModule, args: [{
291
+ declarations: [
292
+ NgxInfiniteGridComponent,
293
+ NgxMasonryInfiniteGridComponent,
294
+ NgxJustifiedInfiniteGridComponent,
295
+ NgxFrameInfiniteGridComponent,
296
+ NgxPackingInfiniteGridComponent,
297
+ ],
298
+ imports: [
299
+ CommonModule,
300
+ ],
301
+ exports: [
302
+ NgxInfiniteGridComponent,
303
+ NgxMasonryInfiniteGridComponent,
304
+ NgxJustifiedInfiniteGridComponent,
305
+ NgxFrameInfiniteGridComponent,
306
+ NgxPackingInfiniteGridComponent,
307
+ ],
308
+ },] }
309
+ ];
310
+
311
+ /*
312
+ * Public API Surface of ngx-infinitegrid
313
+ */
314
+
315
+ /**
316
+ * Generated bundle index. Do not edit.
317
+ */
318
+
319
+ export { NgxInfiniteGridComponent, NgxInfiniteGridModule, NgxInfinitegridService, NgxMasonryInfiniteGridComponent, NgxInfiniteGridInterface as ɵa, TEMPLATE as ɵb, NgxJustifiedInfiniteGridComponent as ɵc, NgxFrameInfiniteGridComponent as ɵd, NgxPackingInfiniteGridComponent as ɵe };
320
+ //# sourceMappingURL=egjs-ngx-infinitegrid.js.map