@replohq/sdk 1.22.0 → 2.0.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.
- package/_vendor/replo-utils/lib/json.mjs +4 -5
- package/_vendor/replo-utils/lib/misc.mjs +4 -3
- package/_vendor/replo-utils/lib/object.d.ts +16 -1
- package/_vendor/replo-utils/lib/object.mjs +3 -4
- package/_vendor/schemas/contentEntry.mjs +3 -3
- package/_vendor/schemas/contentManifest.mjs +6 -6
- package/_vendor/schemas/errors.d.ts +3 -43
- package/_vendor/schemas/{money.d.ts → moneyFormat.d.ts} +1 -8
- package/_vendor/schemas/{money.mjs → moneyFormat.mjs} +5 -16
- package/_vendor/schemas/reploError.d.ts +43 -0
- package/_vendor/schemas/routing/locale.mjs +6 -4
- package/_vendor/schemas/routing/rules.mjs +6 -4
- package/analytics/analytics-sink.d.ts +126 -14
- package/analytics/combine-sinks.js +36 -13
- package/analytics/hooks/use-product-viewed-analytics.d.ts +1 -17
- package/analytics/hooks/use-product-viewed-analytics.js +5 -14
- package/analytics/legacy-checkout.d.ts +2 -0
- package/analytics/legacy-checkout.js +26 -0
- package/analytics/sinks/converge-event-mapper.d.ts +10 -11
- package/analytics/sinks/converge-event-mapper.js +50 -133
- package/analytics/sinks/converge-sink.d.ts +8 -7
- package/analytics/sinks/converge-sink.js +21 -3
- package/analytics/sinks/elevar-sink.d.ts +9 -7
- package/analytics/sinks/elevar-sink.js +37 -128
- package/analytics/sinks/ga4-sink.d.ts +9 -8
- package/analytics/sinks/ga4-sink.js +9 -8
- package/analytics/sinks/intelligems-sink.d.ts +9 -8
- package/analytics/sinks/intelligems-sink.js +3 -1
- package/analytics/sinks/meta-sink.d.ts +5 -4
- package/analytics/sinks/meta-sink.js +7 -3
- package/analytics/sinks/northbeam-sink.d.ts +1 -0
- package/analytics/sinks/northbeam-sink.js +2 -0
- package/analytics/sinks/pinterest-sink.d.ts +7 -6
- package/analytics/sinks/pinterest-sink.js +14 -20
- package/analytics/sinks/reddit-sink.d.ts +8 -7
- package/analytics/sinks/reddit-sink.js +13 -20
- package/analytics/sinks/replo-sink.d.ts +21 -9
- package/analytics/sinks/replo-sink.js +37 -39
- package/analytics/sinks/snapchat-sink.d.ts +6 -5
- package/analytics/sinks/snapchat-sink.js +8 -8
- package/analytics/sinks/tiktok-sink.d.ts +8 -7
- package/analytics/sinks/tiktok-sink.js +10 -15
- package/analytics/sinks/window-sink.d.ts +11 -9
- package/analytics/sinks/window-sink.js +5 -1
- package/analytics/sinks/x-sink.d.ts +5 -4
- package/analytics/sinks/x-sink.js +19 -50
- package/analytics/test-fixtures.d.ts +5 -0
- package/analytics/test-fixtures.js +18 -0
- package/analytics/utils/analytics-products.d.ts +0 -30
- package/analytics/utils/analytics-products.js +1 -51
- package/analytics/utils/collection-analytics.d.ts +2 -15
- package/analytics/utils/collection-analytics.js +14 -18
- package/analytics/utils/product-analytics.d.ts +23 -0
- package/analytics/utils/product-analytics.js +21 -0
- package/cart/hooks/use-add-to-cart.js +1 -1
- package/cart/utils/cart-analytics.d.ts +3 -23
- package/cart/utils/cart-analytics.js +1 -1
- package/cart/utils/cart-utils.js +1 -1
- package/cart/utils/variant-to-cart-line.js +1 -1
- package/chunk-CKRRL66R.mjs +28 -0
- package/{chunk-VVB7BEDE.mjs → chunk-O4QBR4QC.mjs} +9 -4
- package/{chunk-EUIVDITZ.mjs → chunk-OPKMOW43.mjs} +1 -1
- package/{chunk-C37TXOGI.mjs → chunk-PSYP2DYM.mjs} +1 -1
- package/{chunk-ACQS4AG5.mjs → chunk-TTEBDCWT.mjs} +272 -109
- package/{chunk-HFKL4ZR5.mjs → chunk-XGXJOHUY.mjs} +2 -1
- package/{chunk-AQG3256R.mjs → chunk-XSMYSAKY.mjs} +0 -26
- package/{chunk-SSBIMQES.mjs → chunk-XWWFRIXV.mjs} +36 -99
- package/chunk-ZPDXVFCR.mjs +66 -0
- package/hooks/use-formatted-price.js +1 -1
- package/lib/buildMetadata.js +3 -3
- package/loaders/collection-loader.js +8 -6
- package/loaders/collection-products-loader.js +8 -6
- package/loaders/contentful-entries-loader.js +5 -3
- package/loaders/contentful-entry-loader.js +5 -3
- package/loaders/integration-loader-schemas.d.ts +260 -0
- package/loaders/integration-loader-schemas.js +55 -0
- package/loaders/invoke-loader.d.ts +5 -0
- package/loaders/invoke-loader.js +1 -1
- package/loaders/judgeme-review-aggregate-loader.d.ts +1 -1
- package/loaders/judgeme-review-aggregate-loader.js +10 -6
- package/loaders/judgeme-reviews-loader.d.ts +1 -1
- package/loaders/judgeme-reviews-loader.js +5 -3
- package/loaders/kaching-bundles-loader.js +5 -3
- package/loaders/levanta-product-loader.js +8 -6
- package/loaders/loox-review-aggregate-loader.d.ts +1 -1
- package/loaders/loox-review-aggregate-loader.js +10 -6
- package/loaders/loox-reviews-loader.d.ts +1 -1
- package/loaders/loox-reviews-loader.js +8 -6
- package/loaders/metaobject-loader.js +5 -3
- package/loaders/metaobjects-loader.js +5 -3
- package/loaders/okendo-review-aggregate-loader.d.ts +2 -7
- package/loaders/okendo-review-aggregate-loader.js +8 -12
- package/loaders/okendo-reviews-loader.d.ts +2 -42
- package/loaders/okendo-reviews-loader.js +5 -8
- package/loaders/product-loader.js +5 -3
- package/loaders/rebuy-recommendations-loader.d.ts +2 -167
- package/loaders/rebuy-recommendations-loader.js +8 -10
- package/loaders/reviews-io-review-aggregate-loader.d.ts +1 -1
- package/loaders/reviews-io-review-aggregate-loader.js +5 -3
- package/loaders/reviews-io-reviews-loader.d.ts +1 -1
- package/loaders/reviews-io-reviews-loader.js +7 -3
- package/loaders/shopify-integration-details-loader.js +10 -6
- package/loaders/smile-earning-rules-loader.d.ts +2 -8
- package/loaders/smile-earning-rules-loader.js +8 -16
- package/loaders/smile-rewards-loader.d.ts +2 -8
- package/loaders/smile-rewards-loader.js +8 -16
- package/loaders/smile-vip-tiers-loader.d.ts +2 -7
- package/loaders/smile-vip-tiers-loader.js +8 -15
- package/loaders/statsig-experiment-loader.js +5 -3
- package/loaders/yotpo-review-aggregate-loader.d.ts +1 -1
- package/loaders/yotpo-review-aggregate-loader.js +10 -6
- package/loaders/yotpo-reviews-loader.d.ts +1 -1
- package/loaders/yotpo-reviews-loader.js +5 -3
- package/money.d.ts +1 -1
- package/money.js +1 -1
- package/package.json +8 -4
- package/chunk-CQYCPDPI.mjs +0 -166
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { CONTENT_SEO_VALUE_KEYS, CONTENT_RELATED_VALUE_STORAGE_KEY, CONTENT_PRIVATE_VALUE_KEYS, LEGACY_CONTENT_ENTRY_STATUSES, isContentPrivateValueKey, getContentFieldValueSchema } from './chunk-RQ76VK3L.mjs';
|
|
2
|
+
import { MapCache_default, getAllKeysIn_default, identity_default, isIndex_default, assignValue_default, keys_default, Stack_default, isLength_default, isArguments_default, getTag_default, isBuffer_default, isTypedArray_default, eq_default, Uint8Array_default, getAllKeys_default } from './chunk-XWWFRIXV.mjs';
|
|
3
|
+
import { Symbol_default, isArray_default, isObject_default, isObjectLike_default, baseGetTag_default } from './chunk-ZPDXVFCR.mjs';
|
|
4
|
+
import { stringify, parseDocument } from 'yaml';
|
|
5
|
+
import * as z2 from 'zod';
|
|
6
|
+
|
|
7
|
+
function arrayMap(array2, iteratee) {
|
|
8
|
+
var index = -1, length = array2 == null ? 0 : array2.length, result = Array(length);
|
|
5
9
|
while (++index < length) {
|
|
6
|
-
result[index] = iteratee(
|
|
10
|
+
result[index] = iteratee(array2[index], index, array2);
|
|
7
11
|
}
|
|
8
12
|
return result;
|
|
9
13
|
}
|
|
@@ -32,10 +36,10 @@ SetCache.prototype.add = SetCache.prototype.push = setCacheAdd_default;
|
|
|
32
36
|
SetCache.prototype.has = setCacheHas_default;
|
|
33
37
|
var SetCache_default = SetCache;
|
|
34
38
|
|
|
35
|
-
function arraySome(
|
|
36
|
-
var index = -1, length =
|
|
39
|
+
function arraySome(array2, predicate) {
|
|
40
|
+
var index = -1, length = array2 == null ? 0 : array2.length;
|
|
37
41
|
while (++index < length) {
|
|
38
|
-
if (predicate(
|
|
42
|
+
if (predicate(array2[index], index, array2)) {
|
|
39
43
|
return true;
|
|
40
44
|
}
|
|
41
45
|
}
|
|
@@ -50,23 +54,23 @@ var cacheHas_default = cacheHas;
|
|
|
50
54
|
|
|
51
55
|
var COMPARE_PARTIAL_FLAG = 1;
|
|
52
56
|
var COMPARE_UNORDERED_FLAG = 2;
|
|
53
|
-
function equalArrays(
|
|
54
|
-
var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength =
|
|
57
|
+
function equalArrays(array2, other, bitmask, customizer, equalFunc, stack) {
|
|
58
|
+
var isPartial = bitmask & COMPARE_PARTIAL_FLAG, arrLength = array2.length, othLength = other.length;
|
|
55
59
|
if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
|
|
56
60
|
return false;
|
|
57
61
|
}
|
|
58
|
-
var arrStacked = stack.get(
|
|
62
|
+
var arrStacked = stack.get(array2);
|
|
59
63
|
var othStacked = stack.get(other);
|
|
60
64
|
if (arrStacked && othStacked) {
|
|
61
|
-
return arrStacked == other && othStacked ==
|
|
65
|
+
return arrStacked == other && othStacked == array2;
|
|
62
66
|
}
|
|
63
67
|
var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG ? new SetCache_default() : void 0;
|
|
64
|
-
stack.set(
|
|
65
|
-
stack.set(other,
|
|
68
|
+
stack.set(array2, other);
|
|
69
|
+
stack.set(other, array2);
|
|
66
70
|
while (++index < arrLength) {
|
|
67
|
-
var arrValue =
|
|
71
|
+
var arrValue = array2[index], othValue = other[index];
|
|
68
72
|
if (customizer) {
|
|
69
|
-
var compared = isPartial ? customizer(othValue, arrValue, index, other,
|
|
73
|
+
var compared = isPartial ? customizer(othValue, arrValue, index, other, array2, stack) : customizer(arrValue, othValue, index, array2, other, stack);
|
|
70
74
|
}
|
|
71
75
|
if (compared !== void 0) {
|
|
72
76
|
if (compared) {
|
|
@@ -89,7 +93,7 @@ function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
|
|
|
89
93
|
break;
|
|
90
94
|
}
|
|
91
95
|
}
|
|
92
|
-
stack["delete"](
|
|
96
|
+
stack["delete"](array2);
|
|
93
97
|
stack["delete"](other);
|
|
94
98
|
return result;
|
|
95
99
|
}
|
|
@@ -128,48 +132,48 @@ var arrayBufferTag = "[object ArrayBuffer]";
|
|
|
128
132
|
var dataViewTag = "[object DataView]";
|
|
129
133
|
var symbolProto = Symbol_default ? Symbol_default.prototype : void 0;
|
|
130
134
|
var symbolValueOf = symbolProto ? symbolProto.valueOf : void 0;
|
|
131
|
-
function equalByTag(
|
|
135
|
+
function equalByTag(object2, other, tag, bitmask, customizer, equalFunc, stack) {
|
|
132
136
|
switch (tag) {
|
|
133
137
|
case dataViewTag:
|
|
134
|
-
if (
|
|
138
|
+
if (object2.byteLength != other.byteLength || object2.byteOffset != other.byteOffset) {
|
|
135
139
|
return false;
|
|
136
140
|
}
|
|
137
|
-
|
|
141
|
+
object2 = object2.buffer;
|
|
138
142
|
other = other.buffer;
|
|
139
143
|
case arrayBufferTag:
|
|
140
|
-
if (
|
|
144
|
+
if (object2.byteLength != other.byteLength || !equalFunc(new Uint8Array_default(object2), new Uint8Array_default(other))) {
|
|
141
145
|
return false;
|
|
142
146
|
}
|
|
143
147
|
return true;
|
|
144
148
|
case boolTag:
|
|
145
149
|
case dateTag:
|
|
146
150
|
case numberTag:
|
|
147
|
-
return eq_default(+
|
|
151
|
+
return eq_default(+object2, +other);
|
|
148
152
|
case errorTag:
|
|
149
|
-
return
|
|
153
|
+
return object2.name == other.name && object2.message == other.message;
|
|
150
154
|
case regexpTag:
|
|
151
155
|
case stringTag:
|
|
152
|
-
return
|
|
156
|
+
return object2 == other + "";
|
|
153
157
|
case mapTag:
|
|
154
158
|
var convert = mapToArray_default;
|
|
155
159
|
case setTag:
|
|
156
160
|
var isPartial = bitmask & COMPARE_PARTIAL_FLAG2;
|
|
157
161
|
convert || (convert = setToArray_default);
|
|
158
|
-
if (
|
|
162
|
+
if (object2.size != other.size && !isPartial) {
|
|
159
163
|
return false;
|
|
160
164
|
}
|
|
161
|
-
var stacked = stack.get(
|
|
165
|
+
var stacked = stack.get(object2);
|
|
162
166
|
if (stacked) {
|
|
163
167
|
return stacked == other;
|
|
164
168
|
}
|
|
165
169
|
bitmask |= COMPARE_UNORDERED_FLAG2;
|
|
166
|
-
stack.set(
|
|
167
|
-
var result = equalArrays_default(convert(
|
|
168
|
-
stack["delete"](
|
|
170
|
+
stack.set(object2, other);
|
|
171
|
+
var result = equalArrays_default(convert(object2), convert(other), bitmask, customizer, equalFunc, stack);
|
|
172
|
+
stack["delete"](object2);
|
|
169
173
|
return result;
|
|
170
174
|
case symbolTag:
|
|
171
175
|
if (symbolValueOf) {
|
|
172
|
-
return symbolValueOf.call(
|
|
176
|
+
return symbolValueOf.call(object2) == symbolValueOf.call(other);
|
|
173
177
|
}
|
|
174
178
|
}
|
|
175
179
|
return false;
|
|
@@ -179,8 +183,8 @@ var equalByTag_default = equalByTag;
|
|
|
179
183
|
var COMPARE_PARTIAL_FLAG3 = 1;
|
|
180
184
|
var objectProto = Object.prototype;
|
|
181
185
|
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
182
|
-
function equalObjects(
|
|
183
|
-
var isPartial = bitmask & COMPARE_PARTIAL_FLAG3, objProps = getAllKeys_default(
|
|
186
|
+
function equalObjects(object2, other, bitmask, customizer, equalFunc, stack) {
|
|
187
|
+
var isPartial = bitmask & COMPARE_PARTIAL_FLAG3, objProps = getAllKeys_default(object2), objLength = objProps.length, othProps = getAllKeys_default(other), othLength = othProps.length;
|
|
184
188
|
if (objLength != othLength && !isPartial) {
|
|
185
189
|
return false;
|
|
186
190
|
}
|
|
@@ -191,20 +195,20 @@ function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
|
|
|
191
195
|
return false;
|
|
192
196
|
}
|
|
193
197
|
}
|
|
194
|
-
var objStacked = stack.get(
|
|
198
|
+
var objStacked = stack.get(object2);
|
|
195
199
|
var othStacked = stack.get(other);
|
|
196
200
|
if (objStacked && othStacked) {
|
|
197
|
-
return objStacked == other && othStacked ==
|
|
201
|
+
return objStacked == other && othStacked == object2;
|
|
198
202
|
}
|
|
199
203
|
var result = true;
|
|
200
|
-
stack.set(
|
|
201
|
-
stack.set(other,
|
|
204
|
+
stack.set(object2, other);
|
|
205
|
+
stack.set(other, object2);
|
|
202
206
|
var skipCtor = isPartial;
|
|
203
207
|
while (++index < objLength) {
|
|
204
208
|
key = objProps[index];
|
|
205
|
-
var objValue =
|
|
209
|
+
var objValue = object2[key], othValue = other[key];
|
|
206
210
|
if (customizer) {
|
|
207
|
-
var compared = isPartial ? customizer(othValue, objValue, key, other,
|
|
211
|
+
var compared = isPartial ? customizer(othValue, objValue, key, other, object2, stack) : customizer(objValue, othValue, key, object2, other, stack);
|
|
208
212
|
}
|
|
209
213
|
if (!(compared === void 0 ? objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack) : compared)) {
|
|
210
214
|
result = false;
|
|
@@ -213,12 +217,12 @@ function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
|
|
|
213
217
|
skipCtor || (skipCtor = key == "constructor");
|
|
214
218
|
}
|
|
215
219
|
if (result && !skipCtor) {
|
|
216
|
-
var objCtor =
|
|
217
|
-
if (objCtor != othCtor && ("constructor" in
|
|
220
|
+
var objCtor = object2.constructor, othCtor = other.constructor;
|
|
221
|
+
if (objCtor != othCtor && ("constructor" in object2 && "constructor" in other) && !(typeof objCtor == "function" && objCtor instanceof objCtor && typeof othCtor == "function" && othCtor instanceof othCtor)) {
|
|
218
222
|
result = false;
|
|
219
223
|
}
|
|
220
224
|
}
|
|
221
|
-
stack["delete"](
|
|
225
|
+
stack["delete"](object2);
|
|
222
226
|
stack["delete"](other);
|
|
223
227
|
return result;
|
|
224
228
|
}
|
|
@@ -230,12 +234,12 @@ var arrayTag = "[object Array]";
|
|
|
230
234
|
var objectTag = "[object Object]";
|
|
231
235
|
var objectProto2 = Object.prototype;
|
|
232
236
|
var hasOwnProperty2 = objectProto2.hasOwnProperty;
|
|
233
|
-
function baseIsEqualDeep(
|
|
234
|
-
var objIsArr = isArray_default(
|
|
237
|
+
function baseIsEqualDeep(object2, other, bitmask, customizer, equalFunc, stack) {
|
|
238
|
+
var objIsArr = isArray_default(object2), othIsArr = isArray_default(other), objTag = objIsArr ? arrayTag : getTag_default(object2), othTag = othIsArr ? arrayTag : getTag_default(other);
|
|
235
239
|
objTag = objTag == argsTag ? objectTag : objTag;
|
|
236
240
|
othTag = othTag == argsTag ? objectTag : othTag;
|
|
237
241
|
var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag;
|
|
238
|
-
if (isSameTag && isBuffer_default(
|
|
242
|
+
if (isSameTag && isBuffer_default(object2)) {
|
|
239
243
|
if (!isBuffer_default(other)) {
|
|
240
244
|
return false;
|
|
241
245
|
}
|
|
@@ -244,12 +248,12 @@ function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
|
|
|
244
248
|
}
|
|
245
249
|
if (isSameTag && !objIsObj) {
|
|
246
250
|
stack || (stack = new Stack_default());
|
|
247
|
-
return objIsArr || isTypedArray_default(
|
|
251
|
+
return objIsArr || isTypedArray_default(object2) ? equalArrays_default(object2, other, bitmask, customizer, equalFunc, stack) : equalByTag_default(object2, other, objTag, bitmask, customizer, equalFunc, stack);
|
|
248
252
|
}
|
|
249
253
|
if (!(bitmask & COMPARE_PARTIAL_FLAG4)) {
|
|
250
|
-
var objIsWrapped = objIsObj && hasOwnProperty2.call(
|
|
254
|
+
var objIsWrapped = objIsObj && hasOwnProperty2.call(object2, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty2.call(other, "__wrapped__");
|
|
251
255
|
if (objIsWrapped || othIsWrapped) {
|
|
252
|
-
var objUnwrapped = objIsWrapped ?
|
|
256
|
+
var objUnwrapped = objIsWrapped ? object2.value() : object2, othUnwrapped = othIsWrapped ? other.value() : other;
|
|
253
257
|
stack || (stack = new Stack_default());
|
|
254
258
|
return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
|
|
255
259
|
}
|
|
@@ -258,7 +262,7 @@ function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
|
|
|
258
262
|
return false;
|
|
259
263
|
}
|
|
260
264
|
stack || (stack = new Stack_default());
|
|
261
|
-
return equalObjects_default(
|
|
265
|
+
return equalObjects_default(object2, other, bitmask, customizer, equalFunc, stack);
|
|
262
266
|
}
|
|
263
267
|
var baseIsEqualDeep_default = baseIsEqualDeep;
|
|
264
268
|
|
|
@@ -275,29 +279,29 @@ var baseIsEqual_default = baseIsEqual;
|
|
|
275
279
|
|
|
276
280
|
var COMPARE_PARTIAL_FLAG5 = 1;
|
|
277
281
|
var COMPARE_UNORDERED_FLAG3 = 2;
|
|
278
|
-
function baseIsMatch(
|
|
282
|
+
function baseIsMatch(object2, source, matchData, customizer) {
|
|
279
283
|
var index = matchData.length, length = index, noCustomizer = !customizer;
|
|
280
|
-
if (
|
|
284
|
+
if (object2 == null) {
|
|
281
285
|
return !length;
|
|
282
286
|
}
|
|
283
|
-
|
|
287
|
+
object2 = Object(object2);
|
|
284
288
|
while (index--) {
|
|
285
289
|
var data = matchData[index];
|
|
286
|
-
if (noCustomizer && data[2] ? data[1] !==
|
|
290
|
+
if (noCustomizer && data[2] ? data[1] !== object2[data[0]] : !(data[0] in object2)) {
|
|
287
291
|
return false;
|
|
288
292
|
}
|
|
289
293
|
}
|
|
290
294
|
while (++index < length) {
|
|
291
295
|
data = matchData[index];
|
|
292
|
-
var key = data[0], objValue =
|
|
296
|
+
var key = data[0], objValue = object2[key], srcValue = data[1];
|
|
293
297
|
if (noCustomizer && data[2]) {
|
|
294
|
-
if (objValue === void 0 && !(key in
|
|
298
|
+
if (objValue === void 0 && !(key in object2)) {
|
|
295
299
|
return false;
|
|
296
300
|
}
|
|
297
301
|
} else {
|
|
298
302
|
var stack = new Stack_default();
|
|
299
303
|
if (customizer) {
|
|
300
|
-
var result = customizer(objValue, srcValue, key,
|
|
304
|
+
var result = customizer(objValue, srcValue, key, object2, source, stack);
|
|
301
305
|
}
|
|
302
306
|
if (!(result === void 0 ? baseIsEqual_default(srcValue, objValue, COMPARE_PARTIAL_FLAG5 | COMPARE_UNORDERED_FLAG3, customizer, stack) : result)) {
|
|
303
307
|
return false;
|
|
@@ -313,10 +317,10 @@ function isStrictComparable(value) {
|
|
|
313
317
|
}
|
|
314
318
|
var isStrictComparable_default = isStrictComparable;
|
|
315
319
|
|
|
316
|
-
function getMatchData(
|
|
317
|
-
var result = keys_default(
|
|
320
|
+
function getMatchData(object2) {
|
|
321
|
+
var result = keys_default(object2), length = result.length;
|
|
318
322
|
while (length--) {
|
|
319
|
-
var key = result[length], value =
|
|
323
|
+
var key = result[length], value = object2[key];
|
|
320
324
|
result[length] = [key, value, isStrictComparable_default(value)];
|
|
321
325
|
}
|
|
322
326
|
return result;
|
|
@@ -324,11 +328,11 @@ function getMatchData(object) {
|
|
|
324
328
|
var getMatchData_default = getMatchData;
|
|
325
329
|
|
|
326
330
|
function matchesStrictComparable(key, srcValue) {
|
|
327
|
-
return function(
|
|
328
|
-
if (
|
|
331
|
+
return function(object2) {
|
|
332
|
+
if (object2 == null) {
|
|
329
333
|
return false;
|
|
330
334
|
}
|
|
331
|
-
return
|
|
335
|
+
return object2[key] === srcValue && (srcValue !== void 0 || key in Object(object2));
|
|
332
336
|
};
|
|
333
337
|
}
|
|
334
338
|
var matchesStrictComparable_default = matchesStrictComparable;
|
|
@@ -338,8 +342,8 @@ function baseMatches(source) {
|
|
|
338
342
|
if (matchData.length == 1 && matchData[0][2]) {
|
|
339
343
|
return matchesStrictComparable_default(matchData[0][0], matchData[0][1]);
|
|
340
344
|
}
|
|
341
|
-
return function(
|
|
342
|
-
return
|
|
345
|
+
return function(object2) {
|
|
346
|
+
return object2 === source || baseIsMatch_default(object2, source, matchData);
|
|
343
347
|
};
|
|
344
348
|
}
|
|
345
349
|
var baseMatches_default = baseMatches;
|
|
@@ -352,7 +356,7 @@ var isSymbol_default = isSymbol;
|
|
|
352
356
|
|
|
353
357
|
var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/;
|
|
354
358
|
var reIsPlainProp = /^\w*$/;
|
|
355
|
-
function isKey(value,
|
|
359
|
+
function isKey(value, object2) {
|
|
356
360
|
if (isArray_default(value)) {
|
|
357
361
|
return false;
|
|
358
362
|
}
|
|
@@ -360,7 +364,7 @@ function isKey(value, object) {
|
|
|
360
364
|
if (type == "number" || type == "symbol" || type == "boolean" || value == null || isSymbol_default(value)) {
|
|
361
365
|
return true;
|
|
362
366
|
}
|
|
363
|
-
return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
|
|
367
|
+
return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || object2 != null && value in Object(object2);
|
|
364
368
|
}
|
|
365
369
|
var isKey_default = isKey;
|
|
366
370
|
|
|
@@ -399,12 +403,12 @@ var memoizeCapped_default = memoizeCapped;
|
|
|
399
403
|
|
|
400
404
|
var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
|
|
401
405
|
var reEscapeChar = /\\(\\)?/g;
|
|
402
|
-
var stringToPath = memoizeCapped_default(function(
|
|
406
|
+
var stringToPath = memoizeCapped_default(function(string3) {
|
|
403
407
|
var result = [];
|
|
404
|
-
if (
|
|
408
|
+
if (string3.charCodeAt(0) === 46) {
|
|
405
409
|
result.push("");
|
|
406
410
|
}
|
|
407
|
-
|
|
411
|
+
string3.replace(rePropName, function(match, number, quote, subString) {
|
|
408
412
|
result.push(quote ? subString.replace(reEscapeChar, "$1") : number || match);
|
|
409
413
|
});
|
|
410
414
|
return result;
|
|
@@ -432,11 +436,11 @@ function toString(value) {
|
|
|
432
436
|
}
|
|
433
437
|
var toString_default = toString;
|
|
434
438
|
|
|
435
|
-
function castPath(value,
|
|
439
|
+
function castPath(value, object2) {
|
|
436
440
|
if (isArray_default(value)) {
|
|
437
441
|
return value;
|
|
438
442
|
}
|
|
439
|
-
return isKey_default(value,
|
|
443
|
+
return isKey_default(value, object2) ? [value] : stringToPath_default(toString_default(value));
|
|
440
444
|
}
|
|
441
445
|
var castPath_default = castPath;
|
|
442
446
|
function toKey(value) {
|
|
@@ -448,47 +452,47 @@ function toKey(value) {
|
|
|
448
452
|
}
|
|
449
453
|
var toKey_default = toKey;
|
|
450
454
|
|
|
451
|
-
function baseGet(
|
|
452
|
-
path = castPath_default(path,
|
|
455
|
+
function baseGet(object2, path) {
|
|
456
|
+
path = castPath_default(path, object2);
|
|
453
457
|
var index = 0, length = path.length;
|
|
454
|
-
while (
|
|
455
|
-
|
|
458
|
+
while (object2 != null && index < length) {
|
|
459
|
+
object2 = object2[toKey_default(path[index++])];
|
|
456
460
|
}
|
|
457
|
-
return index && index == length ?
|
|
461
|
+
return index && index == length ? object2 : void 0;
|
|
458
462
|
}
|
|
459
463
|
var baseGet_default = baseGet;
|
|
460
464
|
|
|
461
|
-
function get(
|
|
462
|
-
var result =
|
|
465
|
+
function get(object2, path, defaultValue) {
|
|
466
|
+
var result = object2 == null ? void 0 : baseGet_default(object2, path);
|
|
463
467
|
return result === void 0 ? defaultValue : result;
|
|
464
468
|
}
|
|
465
469
|
var get_default = get;
|
|
466
470
|
|
|
467
|
-
function baseHasIn(
|
|
468
|
-
return
|
|
471
|
+
function baseHasIn(object2, key) {
|
|
472
|
+
return object2 != null && key in Object(object2);
|
|
469
473
|
}
|
|
470
474
|
var baseHasIn_default = baseHasIn;
|
|
471
475
|
|
|
472
|
-
function hasPath(
|
|
473
|
-
path = castPath_default(path,
|
|
476
|
+
function hasPath(object2, path, hasFunc) {
|
|
477
|
+
path = castPath_default(path, object2);
|
|
474
478
|
var index = -1, length = path.length, result = false;
|
|
475
479
|
while (++index < length) {
|
|
476
480
|
var key = toKey_default(path[index]);
|
|
477
|
-
if (!(result =
|
|
481
|
+
if (!(result = object2 != null && hasFunc(object2, key))) {
|
|
478
482
|
break;
|
|
479
483
|
}
|
|
480
|
-
|
|
484
|
+
object2 = object2[key];
|
|
481
485
|
}
|
|
482
486
|
if (result || ++index != length) {
|
|
483
487
|
return result;
|
|
484
488
|
}
|
|
485
|
-
length =
|
|
486
|
-
return !!length && isLength_default(length) && isIndex_default(key, length) && (isArray_default(
|
|
489
|
+
length = object2 == null ? 0 : object2.length;
|
|
490
|
+
return !!length && isLength_default(length) && isIndex_default(key, length) && (isArray_default(object2) || isArguments_default(object2));
|
|
487
491
|
}
|
|
488
492
|
var hasPath_default = hasPath;
|
|
489
493
|
|
|
490
|
-
function hasIn(
|
|
491
|
-
return
|
|
494
|
+
function hasIn(object2, path) {
|
|
495
|
+
return object2 != null && hasPath_default(object2, path, baseHasIn_default);
|
|
492
496
|
}
|
|
493
497
|
var hasIn_default = hasIn;
|
|
494
498
|
|
|
@@ -498,23 +502,23 @@ function baseMatchesProperty(path, srcValue) {
|
|
|
498
502
|
if (isKey_default(path) && isStrictComparable_default(srcValue)) {
|
|
499
503
|
return matchesStrictComparable_default(toKey_default(path), srcValue);
|
|
500
504
|
}
|
|
501
|
-
return function(
|
|
502
|
-
var objValue = get_default(
|
|
503
|
-
return objValue === void 0 && objValue === srcValue ? hasIn_default(
|
|
505
|
+
return function(object2) {
|
|
506
|
+
var objValue = get_default(object2, path);
|
|
507
|
+
return objValue === void 0 && objValue === srcValue ? hasIn_default(object2, path) : baseIsEqual_default(srcValue, objValue, COMPARE_PARTIAL_FLAG6 | COMPARE_UNORDERED_FLAG4);
|
|
504
508
|
};
|
|
505
509
|
}
|
|
506
510
|
var baseMatchesProperty_default = baseMatchesProperty;
|
|
507
511
|
|
|
508
512
|
function baseProperty(key) {
|
|
509
|
-
return function(
|
|
510
|
-
return
|
|
513
|
+
return function(object2) {
|
|
514
|
+
return object2 == null ? void 0 : object2[key];
|
|
511
515
|
};
|
|
512
516
|
}
|
|
513
517
|
var baseProperty_default = baseProperty;
|
|
514
518
|
|
|
515
519
|
function basePropertyDeep(path) {
|
|
516
|
-
return function(
|
|
517
|
-
return baseGet_default(
|
|
520
|
+
return function(object2) {
|
|
521
|
+
return baseGet_default(object2, path);
|
|
518
522
|
};
|
|
519
523
|
}
|
|
520
524
|
var basePropertyDeep_default = basePropertyDeep;
|
|
@@ -538,16 +542,16 @@ function baseIteratee(value) {
|
|
|
538
542
|
}
|
|
539
543
|
var baseIteratee_default = baseIteratee;
|
|
540
544
|
|
|
541
|
-
function baseSet(
|
|
542
|
-
if (!isObject_default(
|
|
543
|
-
return
|
|
545
|
+
function baseSet(object2, path, value, customizer) {
|
|
546
|
+
if (!isObject_default(object2)) {
|
|
547
|
+
return object2;
|
|
544
548
|
}
|
|
545
|
-
path = castPath_default(path,
|
|
546
|
-
var index = -1, length = path.length, lastIndex = length - 1, nested =
|
|
549
|
+
path = castPath_default(path, object2);
|
|
550
|
+
var index = -1, length = path.length, lastIndex = length - 1, nested = object2;
|
|
547
551
|
while (nested != null && ++index < length) {
|
|
548
552
|
var key = toKey_default(path[index]), newValue = value;
|
|
549
553
|
if (key === "__proto__" || key === "constructor" || key === "prototype") {
|
|
550
|
-
return
|
|
554
|
+
return object2;
|
|
551
555
|
}
|
|
552
556
|
if (index != lastIndex) {
|
|
553
557
|
var objValue = nested[key];
|
|
@@ -559,34 +563,193 @@ function baseSet(object, path, value, customizer) {
|
|
|
559
563
|
assignValue_default(nested, key, newValue);
|
|
560
564
|
nested = nested[key];
|
|
561
565
|
}
|
|
562
|
-
return
|
|
566
|
+
return object2;
|
|
563
567
|
}
|
|
564
568
|
var baseSet_default = baseSet;
|
|
565
569
|
|
|
566
|
-
function basePickBy(
|
|
570
|
+
function basePickBy(object2, paths, predicate) {
|
|
567
571
|
var index = -1, length = paths.length, result = {};
|
|
568
572
|
while (++index < length) {
|
|
569
|
-
var path = paths[index], value = baseGet_default(
|
|
573
|
+
var path = paths[index], value = baseGet_default(object2, path);
|
|
570
574
|
if (predicate(value, path)) {
|
|
571
|
-
baseSet_default(result, castPath_default(path,
|
|
575
|
+
baseSet_default(result, castPath_default(path, object2), value);
|
|
572
576
|
}
|
|
573
577
|
}
|
|
574
578
|
return result;
|
|
575
579
|
}
|
|
576
580
|
var basePickBy_default = basePickBy;
|
|
577
581
|
|
|
578
|
-
function pickBy(
|
|
579
|
-
if (
|
|
582
|
+
function pickBy(object2, predicate) {
|
|
583
|
+
if (object2 == null) {
|
|
580
584
|
return {};
|
|
581
585
|
}
|
|
582
|
-
var props = arrayMap_default(getAllKeysIn_default(
|
|
586
|
+
var props = arrayMap_default(getAllKeysIn_default(object2), function(prop) {
|
|
583
587
|
return [prop];
|
|
584
588
|
});
|
|
585
589
|
predicate = baseIteratee_default(predicate);
|
|
586
|
-
return basePickBy_default(
|
|
590
|
+
return basePickBy_default(object2, props, function(value, path) {
|
|
587
591
|
return predicate(value, path[0]);
|
|
588
592
|
});
|
|
589
593
|
}
|
|
590
594
|
var pickBy_default = pickBy;
|
|
595
|
+
var frontmatterDataSchema = z2.record(z2.string(), z2.unknown());
|
|
596
|
+
var CONTENT_FRONTMATTER_PATTERN = /^---\r?\n([\s\S]*?)\r?\n---\r?\n?/u;
|
|
597
|
+
function parseContentFrontmatterYaml(yamlText) {
|
|
598
|
+
try {
|
|
599
|
+
const document = parseDocument(yamlText, {
|
|
600
|
+
merge: false,
|
|
601
|
+
schema: "core",
|
|
602
|
+
strict: true,
|
|
603
|
+
uniqueKeys: true
|
|
604
|
+
});
|
|
605
|
+
if (document.errors.length > 0) {
|
|
606
|
+
return null;
|
|
607
|
+
}
|
|
608
|
+
const parsed = frontmatterDataSchema.safeParse(
|
|
609
|
+
document.toJS({ maxAliasCount: 20 })
|
|
610
|
+
);
|
|
611
|
+
return parsed.success ? parsed.data : null;
|
|
612
|
+
} catch {
|
|
613
|
+
return null;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
function parseContentFrontmatter(raw) {
|
|
617
|
+
const match = raw.match(CONTENT_FRONTMATTER_PATTERN);
|
|
618
|
+
if (!match) {
|
|
619
|
+
return null;
|
|
620
|
+
}
|
|
621
|
+
const values = parseContentFrontmatterYaml(match[1] ?? "");
|
|
622
|
+
if (values === null) {
|
|
623
|
+
return null;
|
|
624
|
+
}
|
|
625
|
+
return {
|
|
626
|
+
values,
|
|
627
|
+
body: raw.slice(match[0].length).replace(/^\r?\n/u, "")
|
|
628
|
+
};
|
|
629
|
+
}
|
|
630
|
+
var CONTENT_MANAGED_ENTRY_VALUE_KEYS = [
|
|
631
|
+
"slug",
|
|
632
|
+
"title",
|
|
633
|
+
"status",
|
|
634
|
+
"author",
|
|
635
|
+
"authorInitials",
|
|
636
|
+
"excerpt",
|
|
637
|
+
"coverImage",
|
|
638
|
+
"coverImageAlt",
|
|
639
|
+
"tags",
|
|
640
|
+
"updatedAt",
|
|
641
|
+
"publishedAt",
|
|
642
|
+
"archivedAt",
|
|
643
|
+
...CONTENT_SEO_VALUE_KEYS,
|
|
644
|
+
CONTENT_RELATED_VALUE_STORAGE_KEY,
|
|
645
|
+
...CONTENT_PRIVATE_VALUE_KEYS
|
|
646
|
+
];
|
|
647
|
+
var contentEntryFrontmatterSchema = z2.object({
|
|
648
|
+
slug: z2.unknown().optional(),
|
|
649
|
+
title: z2.string().nullish(),
|
|
650
|
+
author: z2.string().nullish(),
|
|
651
|
+
authorInitials: z2.string().nullish(),
|
|
652
|
+
excerpt: z2.string().nullish(),
|
|
653
|
+
coverImage: z2.string().nullish(),
|
|
654
|
+
coverImageAlt: z2.string().nullish(),
|
|
655
|
+
tags: z2.array(z2.string()).nullish(),
|
|
656
|
+
updatedAt: z2.string().nullish(),
|
|
657
|
+
publishedAt: z2.string().nullish(),
|
|
658
|
+
archivedAt: z2.string().nullish(),
|
|
659
|
+
seoTitle: z2.string().nullish(),
|
|
660
|
+
seoDescription: z2.string().nullish(),
|
|
661
|
+
related: z2.array(z2.string()).nullish(),
|
|
662
|
+
scratchpad: z2.unknown().optional(),
|
|
663
|
+
backlinks: z2.unknown().optional()
|
|
664
|
+
}).passthrough();
|
|
665
|
+
function parseContentEntryDocument(raw) {
|
|
666
|
+
const frontmatter = parseContentFrontmatter(raw);
|
|
667
|
+
if (!frontmatter) {
|
|
668
|
+
return {
|
|
669
|
+
status: "invalid",
|
|
670
|
+
message: "Entry frontmatter is missing or contains invalid YAML."
|
|
671
|
+
};
|
|
672
|
+
}
|
|
673
|
+
const parsedValues = contentEntryFrontmatterSchema.safeParse(
|
|
674
|
+
frontmatter.values
|
|
675
|
+
);
|
|
676
|
+
if (!parsedValues.success) {
|
|
677
|
+
const issue = parsedValues.error.issues[0];
|
|
678
|
+
const field = issue?.path.join(".");
|
|
679
|
+
return {
|
|
680
|
+
status: "invalid",
|
|
681
|
+
message: `${field ? `Invalid ${field}: ` : ""}${issue?.message ?? "Invalid entry fields."}`
|
|
682
|
+
};
|
|
683
|
+
}
|
|
684
|
+
return {
|
|
685
|
+
status: "ready",
|
|
686
|
+
document: {
|
|
687
|
+
values: parsedValues.data,
|
|
688
|
+
body: frontmatter.body
|
|
689
|
+
}
|
|
690
|
+
};
|
|
691
|
+
}
|
|
692
|
+
function serializeContentEntryDocument({
|
|
693
|
+
values,
|
|
694
|
+
body
|
|
695
|
+
}) {
|
|
696
|
+
const yamlText = stringify(values).replace(/\n+$/u, "");
|
|
697
|
+
const normalizedBody = `${body.replace(/\s+$/u, "")}
|
|
698
|
+
`;
|
|
699
|
+
return `---
|
|
700
|
+
${yamlText}
|
|
701
|
+
---
|
|
702
|
+
|
|
703
|
+
${normalizedBody}`;
|
|
704
|
+
}
|
|
705
|
+
function getContentRenderableEntryValues({
|
|
706
|
+
document,
|
|
707
|
+
slug
|
|
708
|
+
}) {
|
|
709
|
+
const publicFrontmatterValues = pickBy_default(document.values, (_value, fieldId) => {
|
|
710
|
+
return !isContentPrivateValueKey(fieldId);
|
|
711
|
+
});
|
|
712
|
+
return {
|
|
713
|
+
...publicFrontmatterValues,
|
|
714
|
+
relatedContent: publicFrontmatterValues[CONTENT_RELATED_VALUE_STORAGE_KEY] ?? [],
|
|
715
|
+
body: document.body,
|
|
716
|
+
slug
|
|
717
|
+
};
|
|
718
|
+
}
|
|
719
|
+
function convertLegacyContentEntryDocument(raw) {
|
|
720
|
+
const parsed = parseContentEntryDocument(raw);
|
|
721
|
+
if (parsed.status === "invalid") {
|
|
722
|
+
return null;
|
|
723
|
+
}
|
|
724
|
+
const { status, archivedAt, ...values } = parsed.document.values;
|
|
725
|
+
if (status === void 0 && archivedAt === void 0) {
|
|
726
|
+
return { legacyStatus: null, content: raw };
|
|
727
|
+
}
|
|
728
|
+
return {
|
|
729
|
+
legacyStatus: LEGACY_CONTENT_ENTRY_STATUSES.find((candidate) => candidate === status) ?? "draft",
|
|
730
|
+
content: serializeContentEntryDocument({
|
|
731
|
+
values,
|
|
732
|
+
body: parsed.document.body
|
|
733
|
+
})
|
|
734
|
+
};
|
|
735
|
+
}
|
|
736
|
+
function getContentEntryFieldValidationIssues({
|
|
737
|
+
fields,
|
|
738
|
+
values,
|
|
739
|
+
requireRequiredFields
|
|
740
|
+
}) {
|
|
741
|
+
return fields.flatMap((field) => {
|
|
742
|
+
if (!field.enabled || isContentPrivateValueKey(field.id)) {
|
|
743
|
+
return [];
|
|
744
|
+
}
|
|
745
|
+
const value = values[field.id];
|
|
746
|
+
const isMissing = value === void 0 || value === null || value === "";
|
|
747
|
+
if (isMissing) {
|
|
748
|
+
return requireRequiredFields && field.required ? [{ fieldId: field.id, message: "Required value is missing." }] : [];
|
|
749
|
+
}
|
|
750
|
+
const parsedValue = getContentFieldValueSchema(field.type).safeParse(value);
|
|
751
|
+
return parsedValue.success ? [] : [{ fieldId: field.id, message: "Value has the wrong format." }];
|
|
752
|
+
});
|
|
753
|
+
}
|
|
591
754
|
|
|
592
|
-
export {
|
|
755
|
+
export { CONTENT_MANAGED_ENTRY_VALUE_KEYS, contentEntryFrontmatterSchema, convertLegacyContentEntryDocument, getContentEntryFieldValidationIssues, getContentRenderableEntryValues, parseContentEntryDocument, serializeContentEntryDocument };
|