react-native-divkit 1.8.0 → 1.8.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/pager/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE7D,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C;AACD,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AACD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,cAAc,CAAC;CACxB;AACD,MAAM,MAAM,aAAa,GACnB,eAAe,GACf,oBAAoB,GACpB,cAAc,GACd;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACvC,IAAI,GACJ,SAAS,CAAC;AAEhB,MAAM,WAAW,mBAAmB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,aAAa,CAAC;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAoBjE;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAiC7F;AAED,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,SAAyB,GAAG,MAAM,CAEhH;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAyB,GACpC,MAAM,CAOR;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAC/B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAyB,GACpC,OAAO,CAGT;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,EACxD,KAAK,EAAE,CAAC,EAAE,EACV,UAAU,EAAE,OAAO,EACnB,UAAU,SAAyB,GACpC,iBAAiB,CAAC,CAAC,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/pager/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE7D,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,oBAAoB,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C;AACD,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AACD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,cAAc,CAAC;CACxB;AACD,MAAM,MAAM,aAAa,GACnB,eAAe,GACf,oBAAoB,GACpB,cAAc,GACd;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACvC,IAAI,GACJ,SAAS,CAAC;AAEhB,MAAM,WAAW,mBAAmB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,aAAa,CAAC;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAoBjE;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAiC7F;AAED,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,SAAyB,GAAG,MAAM,CAEhH;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAyB,GACpC,MAAM,CAOR;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAC/B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAyB,GACpC,OAAO,CAGT;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,EACxD,KAAK,EAAE,CAAC,EAAE,EACV,UAAU,EAAE,OAAO,EACnB,UAAU,SAAyB,GACpC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAoCxB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAOtF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAG7E"}
|
|
@@ -97,24 +97,37 @@ export function isInDuplicateRegion(pos, isInfinite, size, duplicates = DUPLICAT
|
|
|
97
97
|
export function buildRenderedItems(items, isInfinite, duplicates = DUPLICATES_IN_INFINITE) {
|
|
98
98
|
if (!items.length)
|
|
99
99
|
return [];
|
|
100
|
+
const itemKey = (item, fallbackIdx) => item?.id || `r-${fallbackIdx}`;
|
|
100
101
|
if (!isInfinite) {
|
|
101
|
-
return items.map((item, index) => ({
|
|
102
|
+
return items.map((item, index) => ({
|
|
103
|
+
item,
|
|
104
|
+
realIndex: index,
|
|
105
|
+
key: itemKey(item, index)
|
|
106
|
+
}));
|
|
102
107
|
}
|
|
103
108
|
const size = items.length;
|
|
104
109
|
const head = [];
|
|
105
110
|
const tail = [];
|
|
106
111
|
for (let i = 0; i < duplicates; i++) {
|
|
107
112
|
const realIdx = (size - duplicates + i + size) % size;
|
|
108
|
-
head.push({
|
|
113
|
+
head.push({
|
|
114
|
+
item: items[realIdx],
|
|
115
|
+
realIndex: realIdx,
|
|
116
|
+
key: `dup-h-${i}-${itemKey(items[realIdx], realIdx)}`
|
|
117
|
+
});
|
|
109
118
|
}
|
|
110
119
|
for (let i = 0; i < duplicates; i++) {
|
|
111
120
|
const realIdx = i % size;
|
|
112
|
-
tail.push({
|
|
121
|
+
tail.push({
|
|
122
|
+
item: items[realIdx],
|
|
123
|
+
realIndex: realIdx,
|
|
124
|
+
key: `dup-t-${i}-${itemKey(items[realIdx], realIdx)}`
|
|
125
|
+
});
|
|
113
126
|
}
|
|
114
127
|
const real = items.map((item, index) => ({
|
|
115
128
|
item,
|
|
116
129
|
realIndex: index,
|
|
117
|
-
key:
|
|
130
|
+
key: itemKey(item, index)
|
|
118
131
|
}));
|
|
119
132
|
return [...head, ...real, ...tail];
|
|
120
133
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/pager/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/pager/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -168,24 +168,38 @@ export function buildRenderedItems<T extends { id?: string }>(
|
|
|
168
168
|
duplicates = DUPLICATES_IN_INFINITE
|
|
169
169
|
): RenderedItemEntry<T>[] {
|
|
170
170
|
if (!items.length) return [];
|
|
171
|
+
const itemKey = (item: T, fallbackIdx: number): string =>
|
|
172
|
+
item?.id || `r-${fallbackIdx}`;
|
|
171
173
|
if (!isInfinite) {
|
|
172
|
-
return items.map((item, index) => ({
|
|
174
|
+
return items.map((item, index) => ({
|
|
175
|
+
item,
|
|
176
|
+
realIndex: index,
|
|
177
|
+
key: itemKey(item, index)
|
|
178
|
+
}));
|
|
173
179
|
}
|
|
174
180
|
const size = items.length;
|
|
175
181
|
const head: RenderedItemEntry<T>[] = [];
|
|
176
182
|
const tail: RenderedItemEntry<T>[] = [];
|
|
177
183
|
for (let i = 0; i < duplicates; i++) {
|
|
178
184
|
const realIdx = (size - duplicates + i + size) % size;
|
|
179
|
-
head.push({
|
|
185
|
+
head.push({
|
|
186
|
+
item: items[realIdx],
|
|
187
|
+
realIndex: realIdx,
|
|
188
|
+
key: `dup-h-${i}-${itemKey(items[realIdx], realIdx)}`
|
|
189
|
+
});
|
|
180
190
|
}
|
|
181
191
|
for (let i = 0; i < duplicates; i++) {
|
|
182
192
|
const realIdx = i % size;
|
|
183
|
-
tail.push({
|
|
193
|
+
tail.push({
|
|
194
|
+
item: items[realIdx],
|
|
195
|
+
realIndex: realIdx,
|
|
196
|
+
key: `dup-t-${i}-${itemKey(items[realIdx], realIdx)}`
|
|
197
|
+
});
|
|
184
198
|
}
|
|
185
199
|
const real: RenderedItemEntry<T>[] = items.map((item, index) => ({
|
|
186
200
|
item,
|
|
187
201
|
realIndex: index,
|
|
188
|
-
key:
|
|
202
|
+
key: itemKey(item, index)
|
|
189
203
|
}));
|
|
190
204
|
return [...head, ...real, ...tail];
|
|
191
205
|
}
|