@schematichq/schematic-react 0.2.0-rc.2 → 0.2.0-rc.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -67,6 +67,728 @@ var require_shallowequal = __commonJS({
67
67
  }
68
68
  });
69
69
 
70
+ // node_modules/lodash.merge/index.js
71
+ var require_lodash = __commonJS({
72
+ "node_modules/lodash.merge/index.js"(exports, module2) {
73
+ var LARGE_ARRAY_SIZE = 200;
74
+ var HASH_UNDEFINED = "__lodash_hash_undefined__";
75
+ var HOT_COUNT = 800;
76
+ var HOT_SPAN = 16;
77
+ var MAX_SAFE_INTEGER = 9007199254740991;
78
+ var argsTag = "[object Arguments]";
79
+ var arrayTag = "[object Array]";
80
+ var asyncTag = "[object AsyncFunction]";
81
+ var boolTag = "[object Boolean]";
82
+ var dateTag = "[object Date]";
83
+ var errorTag = "[object Error]";
84
+ var funcTag = "[object Function]";
85
+ var genTag = "[object GeneratorFunction]";
86
+ var mapTag = "[object Map]";
87
+ var numberTag = "[object Number]";
88
+ var nullTag = "[object Null]";
89
+ var objectTag = "[object Object]";
90
+ var proxyTag = "[object Proxy]";
91
+ var regexpTag = "[object RegExp]";
92
+ var setTag = "[object Set]";
93
+ var stringTag = "[object String]";
94
+ var undefinedTag = "[object Undefined]";
95
+ var weakMapTag = "[object WeakMap]";
96
+ var arrayBufferTag = "[object ArrayBuffer]";
97
+ var dataViewTag = "[object DataView]";
98
+ var float32Tag = "[object Float32Array]";
99
+ var float64Tag = "[object Float64Array]";
100
+ var int8Tag = "[object Int8Array]";
101
+ var int16Tag = "[object Int16Array]";
102
+ var int32Tag = "[object Int32Array]";
103
+ var uint8Tag = "[object Uint8Array]";
104
+ var uint8ClampedTag = "[object Uint8ClampedArray]";
105
+ var uint16Tag = "[object Uint16Array]";
106
+ var uint32Tag = "[object Uint32Array]";
107
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
108
+ var reIsHostCtor = /^\[object .+?Constructor\]$/;
109
+ var reIsUint = /^(?:0|[1-9]\d*)$/;
110
+ var typedArrayTags = {};
111
+ typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true;
112
+ typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
113
+ var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
114
+ var freeSelf = typeof self == "object" && self && self.Object === Object && self;
115
+ var root = freeGlobal || freeSelf || Function("return this")();
116
+ var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
117
+ var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2;
118
+ var moduleExports = freeModule && freeModule.exports === freeExports;
119
+ var freeProcess = moduleExports && freeGlobal.process;
120
+ var nodeUtil = function() {
121
+ try {
122
+ var types = freeModule && freeModule.require && freeModule.require("util").types;
123
+ if (types) {
124
+ return types;
125
+ }
126
+ return freeProcess && freeProcess.binding && freeProcess.binding("util");
127
+ } catch (e) {
128
+ }
129
+ }();
130
+ var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
131
+ function apply(func, thisArg, args) {
132
+ switch (args.length) {
133
+ case 0:
134
+ return func.call(thisArg);
135
+ case 1:
136
+ return func.call(thisArg, args[0]);
137
+ case 2:
138
+ return func.call(thisArg, args[0], args[1]);
139
+ case 3:
140
+ return func.call(thisArg, args[0], args[1], args[2]);
141
+ }
142
+ return func.apply(thisArg, args);
143
+ }
144
+ function baseTimes(n, iteratee) {
145
+ var index = -1, result = Array(n);
146
+ while (++index < n) {
147
+ result[index] = iteratee(index);
148
+ }
149
+ return result;
150
+ }
151
+ function baseUnary(func) {
152
+ return function(value) {
153
+ return func(value);
154
+ };
155
+ }
156
+ function getValue(object, key) {
157
+ return object == null ? void 0 : object[key];
158
+ }
159
+ function overArg(func, transform) {
160
+ return function(arg) {
161
+ return func(transform(arg));
162
+ };
163
+ }
164
+ var arrayProto = Array.prototype;
165
+ var funcProto = Function.prototype;
166
+ var objectProto = Object.prototype;
167
+ var coreJsData = root["__core-js_shared__"];
168
+ var funcToString = funcProto.toString;
169
+ var hasOwnProperty = objectProto.hasOwnProperty;
170
+ var maskSrcKey = function() {
171
+ var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || "");
172
+ return uid ? "Symbol(src)_1." + uid : "";
173
+ }();
174
+ var nativeObjectToString = objectProto.toString;
175
+ var objectCtorString = funcToString.call(Object);
176
+ var reIsNative = RegExp(
177
+ "^" + funcToString.call(hasOwnProperty).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
178
+ );
179
+ var Buffer2 = moduleExports ? root.Buffer : void 0;
180
+ var Symbol2 = root.Symbol;
181
+ var Uint8Array2 = root.Uint8Array;
182
+ var allocUnsafe = Buffer2 ? Buffer2.allocUnsafe : void 0;
183
+ var getPrototype = overArg(Object.getPrototypeOf, Object);
184
+ var objectCreate = Object.create;
185
+ var propertyIsEnumerable = objectProto.propertyIsEnumerable;
186
+ var splice = arrayProto.splice;
187
+ var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0;
188
+ var defineProperty = function() {
189
+ try {
190
+ var func = getNative(Object, "defineProperty");
191
+ func({}, "", {});
192
+ return func;
193
+ } catch (e) {
194
+ }
195
+ }();
196
+ var nativeIsBuffer = Buffer2 ? Buffer2.isBuffer : void 0;
197
+ var nativeMax = Math.max;
198
+ var nativeNow = Date.now;
199
+ var Map2 = getNative(root, "Map");
200
+ var nativeCreate = getNative(Object, "create");
201
+ var baseCreate = /* @__PURE__ */ function() {
202
+ function object() {
203
+ }
204
+ return function(proto) {
205
+ if (!isObject(proto)) {
206
+ return {};
207
+ }
208
+ if (objectCreate) {
209
+ return objectCreate(proto);
210
+ }
211
+ object.prototype = proto;
212
+ var result = new object();
213
+ object.prototype = void 0;
214
+ return result;
215
+ };
216
+ }();
217
+ function Hash(entries) {
218
+ var index = -1, length2 = entries == null ? 0 : entries.length;
219
+ this.clear();
220
+ while (++index < length2) {
221
+ var entry = entries[index];
222
+ this.set(entry[0], entry[1]);
223
+ }
224
+ }
225
+ function hashClear() {
226
+ this.__data__ = nativeCreate ? nativeCreate(null) : {};
227
+ this.size = 0;
228
+ }
229
+ function hashDelete(key) {
230
+ var result = this.has(key) && delete this.__data__[key];
231
+ this.size -= result ? 1 : 0;
232
+ return result;
233
+ }
234
+ function hashGet(key) {
235
+ var data = this.__data__;
236
+ if (nativeCreate) {
237
+ var result = data[key];
238
+ return result === HASH_UNDEFINED ? void 0 : result;
239
+ }
240
+ return hasOwnProperty.call(data, key) ? data[key] : void 0;
241
+ }
242
+ function hashHas(key) {
243
+ var data = this.__data__;
244
+ return nativeCreate ? data[key] !== void 0 : hasOwnProperty.call(data, key);
245
+ }
246
+ function hashSet(key, value) {
247
+ var data = this.__data__;
248
+ this.size += this.has(key) ? 0 : 1;
249
+ data[key] = nativeCreate && value === void 0 ? HASH_UNDEFINED : value;
250
+ return this;
251
+ }
252
+ Hash.prototype.clear = hashClear;
253
+ Hash.prototype["delete"] = hashDelete;
254
+ Hash.prototype.get = hashGet;
255
+ Hash.prototype.has = hashHas;
256
+ Hash.prototype.set = hashSet;
257
+ function ListCache(entries) {
258
+ var index = -1, length2 = entries == null ? 0 : entries.length;
259
+ this.clear();
260
+ while (++index < length2) {
261
+ var entry = entries[index];
262
+ this.set(entry[0], entry[1]);
263
+ }
264
+ }
265
+ function listCacheClear() {
266
+ this.__data__ = [];
267
+ this.size = 0;
268
+ }
269
+ function listCacheDelete(key) {
270
+ var data = this.__data__, index = assocIndexOf(data, key);
271
+ if (index < 0) {
272
+ return false;
273
+ }
274
+ var lastIndex = data.length - 1;
275
+ if (index == lastIndex) {
276
+ data.pop();
277
+ } else {
278
+ splice.call(data, index, 1);
279
+ }
280
+ --this.size;
281
+ return true;
282
+ }
283
+ function listCacheGet(key) {
284
+ var data = this.__data__, index = assocIndexOf(data, key);
285
+ return index < 0 ? void 0 : data[index][1];
286
+ }
287
+ function listCacheHas(key) {
288
+ return assocIndexOf(this.__data__, key) > -1;
289
+ }
290
+ function listCacheSet(key, value) {
291
+ var data = this.__data__, index = assocIndexOf(data, key);
292
+ if (index < 0) {
293
+ ++this.size;
294
+ data.push([key, value]);
295
+ } else {
296
+ data[index][1] = value;
297
+ }
298
+ return this;
299
+ }
300
+ ListCache.prototype.clear = listCacheClear;
301
+ ListCache.prototype["delete"] = listCacheDelete;
302
+ ListCache.prototype.get = listCacheGet;
303
+ ListCache.prototype.has = listCacheHas;
304
+ ListCache.prototype.set = listCacheSet;
305
+ function MapCache(entries) {
306
+ var index = -1, length2 = entries == null ? 0 : entries.length;
307
+ this.clear();
308
+ while (++index < length2) {
309
+ var entry = entries[index];
310
+ this.set(entry[0], entry[1]);
311
+ }
312
+ }
313
+ function mapCacheClear() {
314
+ this.size = 0;
315
+ this.__data__ = {
316
+ "hash": new Hash(),
317
+ "map": new (Map2 || ListCache)(),
318
+ "string": new Hash()
319
+ };
320
+ }
321
+ function mapCacheDelete(key) {
322
+ var result = getMapData(this, key)["delete"](key);
323
+ this.size -= result ? 1 : 0;
324
+ return result;
325
+ }
326
+ function mapCacheGet(key) {
327
+ return getMapData(this, key).get(key);
328
+ }
329
+ function mapCacheHas(key) {
330
+ return getMapData(this, key).has(key);
331
+ }
332
+ function mapCacheSet(key, value) {
333
+ var data = getMapData(this, key), size = data.size;
334
+ data.set(key, value);
335
+ this.size += data.size == size ? 0 : 1;
336
+ return this;
337
+ }
338
+ MapCache.prototype.clear = mapCacheClear;
339
+ MapCache.prototype["delete"] = mapCacheDelete;
340
+ MapCache.prototype.get = mapCacheGet;
341
+ MapCache.prototype.has = mapCacheHas;
342
+ MapCache.prototype.set = mapCacheSet;
343
+ function Stack(entries) {
344
+ var data = this.__data__ = new ListCache(entries);
345
+ this.size = data.size;
346
+ }
347
+ function stackClear() {
348
+ this.__data__ = new ListCache();
349
+ this.size = 0;
350
+ }
351
+ function stackDelete(key) {
352
+ var data = this.__data__, result = data["delete"](key);
353
+ this.size = data.size;
354
+ return result;
355
+ }
356
+ function stackGet(key) {
357
+ return this.__data__.get(key);
358
+ }
359
+ function stackHas(key) {
360
+ return this.__data__.has(key);
361
+ }
362
+ function stackSet(key, value) {
363
+ var data = this.__data__;
364
+ if (data instanceof ListCache) {
365
+ var pairs = data.__data__;
366
+ if (!Map2 || pairs.length < LARGE_ARRAY_SIZE - 1) {
367
+ pairs.push([key, value]);
368
+ this.size = ++data.size;
369
+ return this;
370
+ }
371
+ data = this.__data__ = new MapCache(pairs);
372
+ }
373
+ data.set(key, value);
374
+ this.size = data.size;
375
+ return this;
376
+ }
377
+ Stack.prototype.clear = stackClear;
378
+ Stack.prototype["delete"] = stackDelete;
379
+ Stack.prototype.get = stackGet;
380
+ Stack.prototype.has = stackHas;
381
+ Stack.prototype.set = stackSet;
382
+ function arrayLikeKeys(value, inherited) {
383
+ var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length2 = result.length;
384
+ for (var key in value) {
385
+ if ((inherited || hasOwnProperty.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode.
386
+ (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
387
+ isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
388
+ isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties.
389
+ isIndex(key, length2)))) {
390
+ result.push(key);
391
+ }
392
+ }
393
+ return result;
394
+ }
395
+ function assignMergeValue(object, key, value) {
396
+ if (value !== void 0 && !eq(object[key], value) || value === void 0 && !(key in object)) {
397
+ baseAssignValue(object, key, value);
398
+ }
399
+ }
400
+ function assignValue(object, key, value) {
401
+ var objValue = object[key];
402
+ if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) {
403
+ baseAssignValue(object, key, value);
404
+ }
405
+ }
406
+ function assocIndexOf(array, key) {
407
+ var length2 = array.length;
408
+ while (length2--) {
409
+ if (eq(array[length2][0], key)) {
410
+ return length2;
411
+ }
412
+ }
413
+ return -1;
414
+ }
415
+ function baseAssignValue(object, key, value) {
416
+ if (key == "__proto__" && defineProperty) {
417
+ defineProperty(object, key, {
418
+ "configurable": true,
419
+ "enumerable": true,
420
+ "value": value,
421
+ "writable": true
422
+ });
423
+ } else {
424
+ object[key] = value;
425
+ }
426
+ }
427
+ var baseFor = createBaseFor();
428
+ function baseGetTag(value) {
429
+ if (value == null) {
430
+ return value === void 0 ? undefinedTag : nullTag;
431
+ }
432
+ return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
433
+ }
434
+ function baseIsArguments(value) {
435
+ return isObjectLike(value) && baseGetTag(value) == argsTag;
436
+ }
437
+ function baseIsNative(value) {
438
+ if (!isObject(value) || isMasked(value)) {
439
+ return false;
440
+ }
441
+ var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
442
+ return pattern.test(toSource(value));
443
+ }
444
+ function baseIsTypedArray(value) {
445
+ return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
446
+ }
447
+ function baseKeysIn(object) {
448
+ if (!isObject(object)) {
449
+ return nativeKeysIn(object);
450
+ }
451
+ var isProto = isPrototype(object), result = [];
452
+ for (var key in object) {
453
+ if (!(key == "constructor" && (isProto || !hasOwnProperty.call(object, key)))) {
454
+ result.push(key);
455
+ }
456
+ }
457
+ return result;
458
+ }
459
+ function baseMerge(object, source, srcIndex, customizer, stack) {
460
+ if (object === source) {
461
+ return;
462
+ }
463
+ baseFor(source, function(srcValue, key) {
464
+ stack || (stack = new Stack());
465
+ if (isObject(srcValue)) {
466
+ baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
467
+ } else {
468
+ var newValue = customizer ? customizer(safeGet(object, key), srcValue, key + "", object, source, stack) : void 0;
469
+ if (newValue === void 0) {
470
+ newValue = srcValue;
471
+ }
472
+ assignMergeValue(object, key, newValue);
473
+ }
474
+ }, keysIn);
475
+ }
476
+ function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
477
+ var objValue = safeGet(object, key), srcValue = safeGet(source, key), stacked = stack.get(srcValue);
478
+ if (stacked) {
479
+ assignMergeValue(object, key, stacked);
480
+ return;
481
+ }
482
+ var newValue = customizer ? customizer(objValue, srcValue, key + "", object, source, stack) : void 0;
483
+ var isCommon = newValue === void 0;
484
+ if (isCommon) {
485
+ var isArr = isArray(srcValue), isBuff = !isArr && isBuffer(srcValue), isTyped = !isArr && !isBuff && isTypedArray(srcValue);
486
+ newValue = srcValue;
487
+ if (isArr || isBuff || isTyped) {
488
+ if (isArray(objValue)) {
489
+ newValue = objValue;
490
+ } else if (isArrayLikeObject(objValue)) {
491
+ newValue = copyArray(objValue);
492
+ } else if (isBuff) {
493
+ isCommon = false;
494
+ newValue = cloneBuffer(srcValue, true);
495
+ } else if (isTyped) {
496
+ isCommon = false;
497
+ newValue = cloneTypedArray(srcValue, true);
498
+ } else {
499
+ newValue = [];
500
+ }
501
+ } else if (isPlainObject(srcValue) || isArguments(srcValue)) {
502
+ newValue = objValue;
503
+ if (isArguments(objValue)) {
504
+ newValue = toPlainObject(objValue);
505
+ } else if (!isObject(objValue) || isFunction(objValue)) {
506
+ newValue = initCloneObject(srcValue);
507
+ }
508
+ } else {
509
+ isCommon = false;
510
+ }
511
+ }
512
+ if (isCommon) {
513
+ stack.set(srcValue, newValue);
514
+ mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
515
+ stack["delete"](srcValue);
516
+ }
517
+ assignMergeValue(object, key, newValue);
518
+ }
519
+ function baseRest(func, start) {
520
+ return setToString(overRest(func, start, identity), func + "");
521
+ }
522
+ var baseSetToString = !defineProperty ? identity : function(func, string) {
523
+ return defineProperty(func, "toString", {
524
+ "configurable": true,
525
+ "enumerable": false,
526
+ "value": constant(string),
527
+ "writable": true
528
+ });
529
+ };
530
+ function cloneBuffer(buffer, isDeep) {
531
+ if (isDeep) {
532
+ return buffer.slice();
533
+ }
534
+ var length2 = buffer.length, result = allocUnsafe ? allocUnsafe(length2) : new buffer.constructor(length2);
535
+ buffer.copy(result);
536
+ return result;
537
+ }
538
+ function cloneArrayBuffer(arrayBuffer) {
539
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
540
+ new Uint8Array2(result).set(new Uint8Array2(arrayBuffer));
541
+ return result;
542
+ }
543
+ function cloneTypedArray(typedArray, isDeep) {
544
+ var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
545
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
546
+ }
547
+ function copyArray(source, array) {
548
+ var index = -1, length2 = source.length;
549
+ array || (array = Array(length2));
550
+ while (++index < length2) {
551
+ array[index] = source[index];
552
+ }
553
+ return array;
554
+ }
555
+ function copyObject(source, props, object, customizer) {
556
+ var isNew = !object;
557
+ object || (object = {});
558
+ var index = -1, length2 = props.length;
559
+ while (++index < length2) {
560
+ var key = props[index];
561
+ var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0;
562
+ if (newValue === void 0) {
563
+ newValue = source[key];
564
+ }
565
+ if (isNew) {
566
+ baseAssignValue(object, key, newValue);
567
+ } else {
568
+ assignValue(object, key, newValue);
569
+ }
570
+ }
571
+ return object;
572
+ }
573
+ function createAssigner(assigner) {
574
+ return baseRest(function(object, sources) {
575
+ var index = -1, length2 = sources.length, customizer = length2 > 1 ? sources[length2 - 1] : void 0, guard = length2 > 2 ? sources[2] : void 0;
576
+ customizer = assigner.length > 3 && typeof customizer == "function" ? (length2--, customizer) : void 0;
577
+ if (guard && isIterateeCall(sources[0], sources[1], guard)) {
578
+ customizer = length2 < 3 ? void 0 : customizer;
579
+ length2 = 1;
580
+ }
581
+ object = Object(object);
582
+ while (++index < length2) {
583
+ var source = sources[index];
584
+ if (source) {
585
+ assigner(object, source, index, customizer);
586
+ }
587
+ }
588
+ return object;
589
+ });
590
+ }
591
+ function createBaseFor(fromRight) {
592
+ return function(object, iteratee, keysFunc) {
593
+ var index = -1, iterable = Object(object), props = keysFunc(object), length2 = props.length;
594
+ while (length2--) {
595
+ var key = props[fromRight ? length2 : ++index];
596
+ if (iteratee(iterable[key], key, iterable) === false) {
597
+ break;
598
+ }
599
+ }
600
+ return object;
601
+ };
602
+ }
603
+ function getMapData(map, key) {
604
+ var data = map.__data__;
605
+ return isKeyable(key) ? data[typeof key == "string" ? "string" : "hash"] : data.map;
606
+ }
607
+ function getNative(object, key) {
608
+ var value = getValue(object, key);
609
+ return baseIsNative(value) ? value : void 0;
610
+ }
611
+ function getRawTag(value) {
612
+ var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag];
613
+ try {
614
+ value[symToStringTag] = void 0;
615
+ var unmasked = true;
616
+ } catch (e) {
617
+ }
618
+ var result = nativeObjectToString.call(value);
619
+ if (unmasked) {
620
+ if (isOwn) {
621
+ value[symToStringTag] = tag;
622
+ } else {
623
+ delete value[symToStringTag];
624
+ }
625
+ }
626
+ return result;
627
+ }
628
+ function initCloneObject(object) {
629
+ return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
630
+ }
631
+ function isIndex(value, length2) {
632
+ var type = typeof value;
633
+ length2 = length2 == null ? MAX_SAFE_INTEGER : length2;
634
+ return !!length2 && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length2);
635
+ }
636
+ function isIterateeCall(value, index, object) {
637
+ if (!isObject(object)) {
638
+ return false;
639
+ }
640
+ var type = typeof index;
641
+ if (type == "number" ? isArrayLike(object) && isIndex(index, object.length) : type == "string" && index in object) {
642
+ return eq(object[index], value);
643
+ }
644
+ return false;
645
+ }
646
+ function isKeyable(value) {
647
+ var type = typeof value;
648
+ return type == "string" || type == "number" || type == "symbol" || type == "boolean" ? value !== "__proto__" : value === null;
649
+ }
650
+ function isMasked(func) {
651
+ return !!maskSrcKey && maskSrcKey in func;
652
+ }
653
+ function isPrototype(value) {
654
+ var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto;
655
+ return value === proto;
656
+ }
657
+ function nativeKeysIn(object) {
658
+ var result = [];
659
+ if (object != null) {
660
+ for (var key in Object(object)) {
661
+ result.push(key);
662
+ }
663
+ }
664
+ return result;
665
+ }
666
+ function objectToString(value) {
667
+ return nativeObjectToString.call(value);
668
+ }
669
+ function overRest(func, start, transform) {
670
+ start = nativeMax(start === void 0 ? func.length - 1 : start, 0);
671
+ return function() {
672
+ var args = arguments, index = -1, length2 = nativeMax(args.length - start, 0), array = Array(length2);
673
+ while (++index < length2) {
674
+ array[index] = args[start + index];
675
+ }
676
+ index = -1;
677
+ var otherArgs = Array(start + 1);
678
+ while (++index < start) {
679
+ otherArgs[index] = args[index];
680
+ }
681
+ otherArgs[start] = transform(array);
682
+ return apply(func, this, otherArgs);
683
+ };
684
+ }
685
+ function safeGet(object, key) {
686
+ if (key === "constructor" && typeof object[key] === "function") {
687
+ return;
688
+ }
689
+ if (key == "__proto__") {
690
+ return;
691
+ }
692
+ return object[key];
693
+ }
694
+ var setToString = shortOut(baseSetToString);
695
+ function shortOut(func) {
696
+ var count = 0, lastCalled = 0;
697
+ return function() {
698
+ var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled);
699
+ lastCalled = stamp;
700
+ if (remaining > 0) {
701
+ if (++count >= HOT_COUNT) {
702
+ return arguments[0];
703
+ }
704
+ } else {
705
+ count = 0;
706
+ }
707
+ return func.apply(void 0, arguments);
708
+ };
709
+ }
710
+ function toSource(func) {
711
+ if (func != null) {
712
+ try {
713
+ return funcToString.call(func);
714
+ } catch (e) {
715
+ }
716
+ try {
717
+ return func + "";
718
+ } catch (e) {
719
+ }
720
+ }
721
+ return "";
722
+ }
723
+ function eq(value, other) {
724
+ return value === other || value !== value && other !== other;
725
+ }
726
+ var isArguments = baseIsArguments(/* @__PURE__ */ function() {
727
+ return arguments;
728
+ }()) ? baseIsArguments : function(value) {
729
+ return isObjectLike(value) && hasOwnProperty.call(value, "callee") && !propertyIsEnumerable.call(value, "callee");
730
+ };
731
+ var isArray = Array.isArray;
732
+ function isArrayLike(value) {
733
+ return value != null && isLength(value.length) && !isFunction(value);
734
+ }
735
+ function isArrayLikeObject(value) {
736
+ return isObjectLike(value) && isArrayLike(value);
737
+ }
738
+ var isBuffer = nativeIsBuffer || stubFalse;
739
+ function isFunction(value) {
740
+ if (!isObject(value)) {
741
+ return false;
742
+ }
743
+ var tag = baseGetTag(value);
744
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
745
+ }
746
+ function isLength(value) {
747
+ return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
748
+ }
749
+ function isObject(value) {
750
+ var type = typeof value;
751
+ return value != null && (type == "object" || type == "function");
752
+ }
753
+ function isObjectLike(value) {
754
+ return value != null && typeof value == "object";
755
+ }
756
+ function isPlainObject(value) {
757
+ if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
758
+ return false;
759
+ }
760
+ var proto = getPrototype(value);
761
+ if (proto === null) {
762
+ return true;
763
+ }
764
+ var Ctor = hasOwnProperty.call(proto, "constructor") && proto.constructor;
765
+ return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString;
766
+ }
767
+ var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
768
+ function toPlainObject(value) {
769
+ return copyObject(value, keysIn(value));
770
+ }
771
+ function keysIn(object) {
772
+ return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
773
+ }
774
+ var merge2 = createAssigner(function(object, source, srcIndex) {
775
+ baseMerge(object, source, srcIndex);
776
+ });
777
+ function constant(value) {
778
+ return function() {
779
+ return value;
780
+ };
781
+ }
782
+ function identity(value) {
783
+ return value;
784
+ }
785
+ function stubFalse() {
786
+ return false;
787
+ }
788
+ module2.exports = merge2;
789
+ }
790
+ });
791
+
70
792
  // node_modules/classnames/index.js
71
793
  var require_classnames = __commonJS({
72
794
  "node_modules/classnames/index.js"(exports, module2) {
@@ -1008,12 +1730,12 @@ var flush_block_only = (s2, last) => {
1008
1730
  s2.block_start = s2.strstart;
1009
1731
  flush_pending(s2.strm);
1010
1732
  };
1011
- var put_byte = (s2, b) => {
1012
- s2.pending_buf[s2.pending++] = b;
1733
+ var put_byte = (s2, b2) => {
1734
+ s2.pending_buf[s2.pending++] = b2;
1013
1735
  };
1014
- var putShortMSB = (s2, b) => {
1015
- s2.pending_buf[s2.pending++] = b >>> 8 & 255;
1016
- s2.pending_buf[s2.pending++] = b & 255;
1736
+ var putShortMSB = (s2, b2) => {
1737
+ s2.pending_buf[s2.pending++] = b2 >>> 8 & 255;
1738
+ s2.pending_buf[s2.pending++] = b2 & 255;
1017
1739
  };
1018
1740
  var read_buf = (strm, buf, start, size) => {
1019
1741
  let len = strm.avail_in;
@@ -2295,10 +3017,8 @@ Deflate$1.prototype.push = function(data, flush_mode) {
2295
3017
  if (this.ended) {
2296
3018
  return false;
2297
3019
  }
2298
- if (flush_mode === ~~flush_mode)
2299
- _flush_mode = flush_mode;
2300
- else
2301
- _flush_mode = flush_mode === true ? Z_FINISH$2 : Z_NO_FLUSH$1;
3020
+ if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;
3021
+ else _flush_mode = flush_mode === true ? Z_FINISH$2 : Z_NO_FLUSH$1;
2302
3022
  if (typeof data === "string") {
2303
3023
  strm.input = strings.string2buf(data);
2304
3024
  } else if (toString$1.call(data) === "[object ArrayBuffer]") {
@@ -2338,8 +3058,7 @@ Deflate$1.prototype.push = function(data, flush_mode) {
2338
3058
  strm.avail_out = 0;
2339
3059
  continue;
2340
3060
  }
2341
- if (strm.avail_in === 0)
2342
- break;
3061
+ if (strm.avail_in === 0) break;
2343
3062
  }
2344
3063
  return true;
2345
3064
  };
@@ -3293,6 +4012,7 @@ var inflate$2 = (strm, flush) => {
3293
4012
  hold = 0;
3294
4013
  bits = 0;
3295
4014
  state.mode = TIME;
4015
+ /* falls through */
3296
4016
  case TIME:
3297
4017
  while (bits < 32) {
3298
4018
  if (have === 0) {
@@ -3315,6 +4035,7 @@ var inflate$2 = (strm, flush) => {
3315
4035
  hold = 0;
3316
4036
  bits = 0;
3317
4037
  state.mode = OS;
4038
+ /* falls through */
3318
4039
  case OS:
3319
4040
  while (bits < 16) {
3320
4041
  if (have === 0) {
@@ -3336,6 +4057,7 @@ var inflate$2 = (strm, flush) => {
3336
4057
  hold = 0;
3337
4058
  bits = 0;
3338
4059
  state.mode = EXLEN;
4060
+ /* falls through */
3339
4061
  case EXLEN:
3340
4062
  if (state.flags & 1024) {
3341
4063
  while (bits < 16) {
@@ -3361,6 +4083,7 @@ var inflate$2 = (strm, flush) => {
3361
4083
  state.head.extra = null;
3362
4084
  }
3363
4085
  state.mode = EXTRA;
4086
+ /* falls through */
3364
4087
  case EXTRA:
3365
4088
  if (state.flags & 1024) {
3366
4089
  copy2 = state.length;
@@ -3397,6 +4120,7 @@ var inflate$2 = (strm, flush) => {
3397
4120
  }
3398
4121
  state.length = 0;
3399
4122
  state.mode = NAME;
4123
+ /* falls through */
3400
4124
  case NAME:
3401
4125
  if (state.flags & 2048) {
3402
4126
  if (have === 0) {
@@ -3422,6 +4146,7 @@ var inflate$2 = (strm, flush) => {
3422
4146
  }
3423
4147
  state.length = 0;
3424
4148
  state.mode = COMMENT;
4149
+ /* falls through */
3425
4150
  case COMMENT:
3426
4151
  if (state.flags & 4096) {
3427
4152
  if (have === 0) {
@@ -3446,6 +4171,7 @@ var inflate$2 = (strm, flush) => {
3446
4171
  state.head.comment = null;
3447
4172
  }
3448
4173
  state.mode = HCRC;
4174
+ /* falls through */
3449
4175
  case HCRC:
3450
4176
  if (state.flags & 512) {
3451
4177
  while (bits < 16) {
@@ -3484,6 +4210,7 @@ var inflate$2 = (strm, flush) => {
3484
4210
  hold = 0;
3485
4211
  bits = 0;
3486
4212
  state.mode = DICT;
4213
+ /* falls through */
3487
4214
  case DICT:
3488
4215
  if (state.havedict === 0) {
3489
4216
  strm.next_out = put;
@@ -3496,10 +4223,12 @@ var inflate$2 = (strm, flush) => {
3496
4223
  }
3497
4224
  strm.adler = state.check = 1;
3498
4225
  state.mode = TYPE;
4226
+ /* falls through */
3499
4227
  case TYPE:
3500
4228
  if (flush === Z_BLOCK || flush === Z_TREES) {
3501
4229
  break inf_leave;
3502
4230
  }
4231
+ /* falls through */
3503
4232
  case TYPEDO:
3504
4233
  if (state.last) {
3505
4234
  hold >>>= bits & 7;
@@ -3564,8 +4293,10 @@ var inflate$2 = (strm, flush) => {
3564
4293
  if (flush === Z_TREES) {
3565
4294
  break inf_leave;
3566
4295
  }
4296
+ /* falls through */
3567
4297
  case COPY_:
3568
4298
  state.mode = COPY;
4299
+ /* falls through */
3569
4300
  case COPY:
3570
4301
  copy2 = state.length;
3571
4302
  if (copy2) {
@@ -3613,6 +4344,7 @@ var inflate$2 = (strm, flush) => {
3613
4344
  }
3614
4345
  state.have = 0;
3615
4346
  state.mode = LENLENS;
4347
+ /* falls through */
3616
4348
  case LENLENS:
3617
4349
  while (state.have < state.ncode) {
3618
4350
  while (bits < 3) {
@@ -3642,6 +4374,7 @@ var inflate$2 = (strm, flush) => {
3642
4374
  }
3643
4375
  state.have = 0;
3644
4376
  state.mode = CODELENS;
4377
+ /* falls through */
3645
4378
  case CODELENS:
3646
4379
  while (state.have < state.nlen + state.ndist) {
3647
4380
  for (; ; ) {
@@ -3759,8 +4492,10 @@ var inflate$2 = (strm, flush) => {
3759
4492
  if (flush === Z_TREES) {
3760
4493
  break inf_leave;
3761
4494
  }
4495
+ /* falls through */
3762
4496
  case LEN_:
3763
4497
  state.mode = LEN;
4498
+ /* falls through */
3764
4499
  case LEN:
3765
4500
  if (have >= 6 && left >= 258) {
3766
4501
  strm.next_out = put;
@@ -3842,6 +4577,7 @@ var inflate$2 = (strm, flush) => {
3842
4577
  }
3843
4578
  state.extra = here_op & 15;
3844
4579
  state.mode = LENEXT;
4580
+ /* falls through */
3845
4581
  case LENEXT:
3846
4582
  if (state.extra) {
3847
4583
  n = state.extra;
@@ -3860,6 +4596,7 @@ var inflate$2 = (strm, flush) => {
3860
4596
  }
3861
4597
  state.was = state.length;
3862
4598
  state.mode = DIST;
4599
+ /* falls through */
3863
4600
  case DIST:
3864
4601
  for (; ; ) {
3865
4602
  here = state.distcode[hold & (1 << state.distbits) - 1];
@@ -3910,6 +4647,7 @@ var inflate$2 = (strm, flush) => {
3910
4647
  state.offset = here_val;
3911
4648
  state.extra = here_op & 15;
3912
4649
  state.mode = DISTEXT;
4650
+ /* falls through */
3913
4651
  case DISTEXT:
3914
4652
  if (state.extra) {
3915
4653
  n = state.extra;
@@ -3932,6 +4670,7 @@ var inflate$2 = (strm, flush) => {
3932
4670
  break;
3933
4671
  }
3934
4672
  state.mode = MATCH;
4673
+ /* falls through */
3935
4674
  case MATCH:
3936
4675
  if (left === 0) {
3937
4676
  break inf_leave;
@@ -4008,6 +4747,7 @@ var inflate$2 = (strm, flush) => {
4008
4747
  bits = 0;
4009
4748
  }
4010
4749
  state.mode = LENGTH;
4750
+ /* falls through */
4011
4751
  case LENGTH:
4012
4752
  if (state.wrap && state.flags) {
4013
4753
  while (bits < 32) {
@@ -4027,6 +4767,7 @@ var inflate$2 = (strm, flush) => {
4027
4767
  bits = 0;
4028
4768
  }
4029
4769
  state.mode = DONE;
4770
+ /* falls through */
4030
4771
  case DONE:
4031
4772
  ret = Z_STREAM_END$1;
4032
4773
  break inf_leave;
@@ -4036,6 +4777,7 @@ var inflate$2 = (strm, flush) => {
4036
4777
  case MEM:
4037
4778
  return Z_MEM_ERROR$1;
4038
4779
  case SYNC:
4780
+ /* falls through */
4039
4781
  default:
4040
4782
  return Z_STREAM_ERROR$1;
4041
4783
  }
@@ -4047,8 +4789,7 @@ var inflate$2 = (strm, flush) => {
4047
4789
  state.hold = hold;
4048
4790
  state.bits = bits;
4049
4791
  if (state.wsize || _out !== strm.avail_out && state.mode < BAD && (state.mode < CHECK || flush !== Z_FINISH$1)) {
4050
- if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out))
4051
- ;
4792
+ if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) ;
4052
4793
  }
4053
4794
  _in -= strm.avail_in;
4054
4795
  _out -= strm.avail_out;
@@ -4216,12 +4957,9 @@ Inflate$1.prototype.push = function(data, flush_mode) {
4216
4957
  const chunkSize = this.options.chunkSize;
4217
4958
  const dictionary = this.options.dictionary;
4218
4959
  let status, _flush_mode, last_avail_out;
4219
- if (this.ended)
4220
- return false;
4221
- if (flush_mode === ~~flush_mode)
4222
- _flush_mode = flush_mode;
4223
- else
4224
- _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;
4960
+ if (this.ended) return false;
4961
+ if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;
4962
+ else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;
4225
4963
  if (toString.call(data) === "[object ArrayBuffer]") {
4226
4964
  strm.input = new Uint8Array(data);
4227
4965
  } else {
@@ -4266,24 +5004,21 @@ Inflate$1.prototype.push = function(data, flush_mode) {
4266
5004
  let utf8str = strings.buf2string(strm.output, next_out_utf8);
4267
5005
  strm.next_out = tail;
4268
5006
  strm.avail_out = chunkSize - tail;
4269
- if (tail)
4270
- strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);
5007
+ if (tail) strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);
4271
5008
  this.onData(utf8str);
4272
5009
  } else {
4273
5010
  this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));
4274
5011
  }
4275
5012
  }
4276
5013
  }
4277
- if (status === Z_OK && last_avail_out === 0)
4278
- continue;
5014
+ if (status === Z_OK && last_avail_out === 0) continue;
4279
5015
  if (status === Z_STREAM_END) {
4280
5016
  status = inflate_1$2.inflateEnd(this.strm);
4281
5017
  this.onEnd(status);
4282
5018
  this.ended = true;
4283
5019
  return true;
4284
5020
  }
4285
- if (strm.avail_in === 0)
4286
- break;
5021
+ if (strm.avail_in === 0) break;
4287
5022
  }
4288
5023
  return true;
4289
5024
  };
@@ -4305,8 +5040,7 @@ Inflate$1.prototype.onEnd = function(status) {
4305
5040
  function inflate$1(input, options) {
4306
5041
  const inflator = new Inflate$1(options);
4307
5042
  inflator.push(input);
4308
- if (inflator.err)
4309
- throw inflator.msg || messages[inflator.err];
5043
+ if (inflator.err) throw inflator.msg || messages[inflator.err];
4310
5044
  return inflator.result;
4311
5045
  }
4312
5046
  function inflateRaw$1(input, options) {
@@ -4335,23 +5069,19 @@ var __assign = function() {
4335
5069
  __assign = Object.assign || function __assign2(t) {
4336
5070
  for (var s2, i2 = 1, n = arguments.length; i2 < n; i2++) {
4337
5071
  s2 = arguments[i2];
4338
- for (var p2 in s2)
4339
- if (Object.prototype.hasOwnProperty.call(s2, p2))
4340
- t[p2] = s2[p2];
5072
+ for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2)) t[p2] = s2[p2];
4341
5073
  }
4342
5074
  return t;
4343
5075
  };
4344
5076
  return __assign.apply(this, arguments);
4345
5077
  };
4346
5078
  function __spreadArray(to, from2, pack) {
4347
- if (pack || arguments.length === 2)
4348
- for (var i2 = 0, l2 = from2.length, ar; i2 < l2; i2++) {
4349
- if (ar || !(i2 in from2)) {
4350
- if (!ar)
4351
- ar = Array.prototype.slice.call(from2, 0, i2);
4352
- ar[i2] = from2[i2];
4353
- }
5079
+ if (pack || arguments.length === 2) for (var i2 = 0, l2 = from2.length, ar; i2 < l2; i2++) {
5080
+ if (ar || !(i2 in from2)) {
5081
+ if (!ar) ar = Array.prototype.slice.call(from2, 0, i2);
5082
+ ar[i2] = from2[i2];
4354
5083
  }
5084
+ }
4355
5085
  return to.concat(ar || Array.prototype.slice.call(from2));
4356
5086
  }
4357
5087
 
@@ -4359,8 +5089,7 @@ function __spreadArray(to, from2, pack) {
4359
5089
  function memoize(fn) {
4360
5090
  var cache = /* @__PURE__ */ Object.create(null);
4361
5091
  return function(arg) {
4362
- if (cache[arg] === void 0)
4363
- cache[arg] = fn(arg);
5092
+ if (cache[arg] === void 0) cache[arg] = fn(arg);
4364
5093
  return cache[arg];
4365
5094
  };
4366
5095
  }
@@ -4476,12 +5205,14 @@ function slice(begin, end) {
4476
5205
  }
4477
5206
  function token(type) {
4478
5207
  switch (type) {
5208
+ // \0 \t \n \r \s whitespace token
4479
5209
  case 0:
4480
5210
  case 9:
4481
5211
  case 10:
4482
5212
  case 13:
4483
5213
  case 32:
4484
5214
  return 5;
5215
+ // ! + , / > @ ~ isolate token
4485
5216
  case 33:
4486
5217
  case 43:
4487
5218
  case 44:
@@ -4489,17 +5220,21 @@ function token(type) {
4489
5220
  case 62:
4490
5221
  case 64:
4491
5222
  case 126:
5223
+ // ; { } breakpoint token
4492
5224
  case 59:
4493
5225
  case 123:
4494
5226
  case 125:
4495
5227
  return 4;
5228
+ // : accompanied token
4496
5229
  case 58:
4497
5230
  return 3;
5231
+ // " ' ( [ opening delimit token
4498
5232
  case 34:
4499
5233
  case 39:
4500
5234
  case 40:
4501
5235
  case 91:
4502
5236
  return 2;
5237
+ // ) ] closing delimit token
4503
5238
  case 41:
4504
5239
  case 93:
4505
5240
  return 1;
@@ -4532,17 +5267,21 @@ function escaping(index, count) {
4532
5267
  function delimiter(type) {
4533
5268
  while (next())
4534
5269
  switch (character) {
5270
+ // ] ) " '
4535
5271
  case type:
4536
5272
  return position;
5273
+ // " '
4537
5274
  case 34:
4538
5275
  case 39:
4539
5276
  if (type !== 34 && type !== 39)
4540
5277
  delimiter(character);
4541
5278
  break;
5279
+ // (
4542
5280
  case 40:
4543
5281
  if (type === 41)
4544
5282
  delimiter(type);
4545
5283
  break;
5284
+ // \
4546
5285
  case 92:
4547
5286
  next();
4548
5287
  break;
@@ -4585,26 +5324,31 @@ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, decla
4585
5324
  var characters2 = type;
4586
5325
  while (scanning)
4587
5326
  switch (previous = character2, character2 = next()) {
5327
+ // (
4588
5328
  case 40:
4589
5329
  if (previous != 108 && charat(characters2, length2 - 1) == 58) {
4590
5330
  if (indexof(characters2 += replace(delimit(character2), "&", "&\f"), "&\f", abs(index ? points[index - 1] : 0)) != -1)
4591
5331
  ampersand = -1;
4592
5332
  break;
4593
5333
  }
5334
+ // " ' [
4594
5335
  case 34:
4595
5336
  case 39:
4596
5337
  case 91:
4597
5338
  characters2 += delimit(character2);
4598
5339
  break;
5340
+ // \t \n \r \s
4599
5341
  case 9:
4600
5342
  case 10:
4601
5343
  case 13:
4602
5344
  case 32:
4603
5345
  characters2 += whitespace(previous);
4604
5346
  break;
5347
+ // \
4605
5348
  case 92:
4606
5349
  characters2 += escaping(caret() - 1, 7);
4607
5350
  continue;
5351
+ // /
4608
5352
  case 47:
4609
5353
  switch (peek()) {
4610
5354
  case 42:
@@ -4615,23 +5359,28 @@ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, decla
4615
5359
  characters2 += "/";
4616
5360
  }
4617
5361
  break;
5362
+ // {
4618
5363
  case 123 * variable:
4619
5364
  points[index++] = strlen(characters2) * ampersand;
5365
+ // } ; \0
4620
5366
  case 125 * variable:
4621
5367
  case 59:
4622
5368
  case 0:
4623
5369
  switch (character2) {
5370
+ // \0 }
4624
5371
  case 0:
4625
5372
  case 125:
4626
5373
  scanning = 0;
5374
+ // ;
4627
5375
  case 59 + offset:
4628
- if (ampersand == -1)
4629
- characters2 = replace(characters2, /\f/g, "");
5376
+ if (ampersand == -1) characters2 = replace(characters2, /\f/g, "");
4630
5377
  if (property > 0 && strlen(characters2) - length2)
4631
5378
  append(property > 32 ? declaration(characters2 + ";", rule, parent, length2 - 1, declarations) : declaration(replace(characters2, " ", "") + ";", rule, parent, length2 - 2, declarations), declarations);
4632
5379
  break;
5380
+ // @ ;
4633
5381
  case 59:
4634
5382
  characters2 += ";";
5383
+ // { rule/at-rule
4635
5384
  default:
4636
5385
  append(reference = ruleset(characters2, root, parent, index, offset, rules, points, type, props = [], children = [], length2, rulesets), rulesets);
4637
5386
  if (character2 === 123)
@@ -4639,6 +5388,7 @@ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, decla
4639
5388
  parse(characters2, root, reference, reference, props, rulesets, length2, points, children);
4640
5389
  else
4641
5390
  switch (atrule === 99 && charat(characters2, 3) === 110 ? 100 : atrule) {
5391
+ // d l m s
4642
5392
  case 100:
4643
5393
  case 108:
4644
5394
  case 109:
@@ -4651,6 +5401,7 @@ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, decla
4651
5401
  }
4652
5402
  index = offset = property = 0, variable = ampersand = 1, type = characters2 = "", length2 = pseudo;
4653
5403
  break;
5404
+ // :
4654
5405
  case 58:
4655
5406
  length2 = 1 + strlen(characters2), property = previous;
4656
5407
  default:
@@ -4661,17 +5412,21 @@ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, decla
4661
5412
  continue;
4662
5413
  }
4663
5414
  switch (characters2 += from(character2), character2 * variable) {
5415
+ // &
4664
5416
  case 38:
4665
5417
  ampersand = offset > 0 ? 1 : (characters2 += "\f", -1);
4666
5418
  break;
5419
+ // ,
4667
5420
  case 44:
4668
5421
  points[index++] = (strlen(characters2) - 1) * ampersand, ampersand = 1;
4669
5422
  break;
5423
+ // @
4670
5424
  case 64:
4671
5425
  if (peek() === 45)
4672
5426
  characters2 += delimit(next());
4673
5427
  atrule = peek(), offset = length2 = strlen(type = characters2 += identifier(caret())), character2++;
4674
5428
  break;
5429
+ // -
4675
5430
  case 45:
4676
5431
  if (previous === 45 && strlen(characters2) == 2)
4677
5432
  variable = 0;
@@ -4699,8 +5454,10 @@ function declaration(value, root, parent, length2, siblings) {
4699
5454
  // node_modules/stylis/src/Prefixer.js
4700
5455
  function prefix(value, length2, children) {
4701
5456
  switch (hash(value, length2)) {
5457
+ // color-adjust
4702
5458
  case 5103:
4703
5459
  return WEBKIT + "print-" + value + value;
5460
+ // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
4704
5461
  case 5737:
4705
5462
  case 4201:
4706
5463
  case 3177:
@@ -4708,18 +5465,21 @@ function prefix(value, length2, children) {
4708
5465
  case 1641:
4709
5466
  case 4457:
4710
5467
  case 2921:
5468
+ // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
4711
5469
  case 5572:
4712
5470
  case 6356:
4713
5471
  case 5844:
4714
5472
  case 3191:
4715
5473
  case 6645:
4716
5474
  case 3005:
5475
+ // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,
4717
5476
  case 6391:
4718
5477
  case 5879:
4719
5478
  case 5623:
4720
5479
  case 6135:
4721
5480
  case 4599:
4722
5481
  case 4855:
5482
+ // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
4723
5483
  case 4215:
4724
5484
  case 6389:
4725
5485
  case 5109:
@@ -4727,57 +5487,77 @@ function prefix(value, length2, children) {
4727
5487
  case 5621:
4728
5488
  case 3829:
4729
5489
  return WEBKIT + value + value;
5490
+ // tab-size
4730
5491
  case 4789:
4731
5492
  return MOZ + value + value;
5493
+ // appearance, user-select, transform, hyphens, text-size-adjust
4732
5494
  case 5349:
4733
5495
  case 4246:
4734
5496
  case 4810:
4735
5497
  case 6968:
4736
5498
  case 2756:
4737
5499
  return WEBKIT + value + MOZ + value + MS + value + value;
5500
+ // writing-mode
4738
5501
  case 5936:
4739
5502
  switch (charat(value, length2 + 11)) {
5503
+ // vertical-l(r)
4740
5504
  case 114:
4741
5505
  return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb") + value;
5506
+ // vertical-r(l)
4742
5507
  case 108:
4743
5508
  return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb-rl") + value;
5509
+ // horizontal(-)tb
4744
5510
  case 45:
4745
5511
  return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "lr") + value;
4746
5512
  }
5513
+ // flex, flex-direction, scroll-snap-type, writing-mode
4747
5514
  case 6828:
4748
5515
  case 4268:
4749
5516
  case 2903:
4750
5517
  return WEBKIT + value + MS + value + value;
5518
+ // order
4751
5519
  case 6165:
4752
5520
  return WEBKIT + value + MS + "flex-" + value + value;
5521
+ // align-items
4753
5522
  case 5187:
4754
5523
  return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + "box-$1$2" + MS + "flex-$1$2") + value;
5524
+ // align-self
4755
5525
  case 5443:
4756
5526
  return WEBKIT + value + MS + "flex-item-" + replace(value, /flex-|-self/g, "") + (!match(value, /flex-|baseline/) ? MS + "grid-row-" + replace(value, /flex-|-self/g, "") : "") + value;
5527
+ // align-content
4757
5528
  case 4675:
4758
5529
  return WEBKIT + value + MS + "flex-line-pack" + replace(value, /align-content|flex-|-self/g, "") + value;
5530
+ // flex-shrink
4759
5531
  case 5548:
4760
5532
  return WEBKIT + value + MS + replace(value, "shrink", "negative") + value;
5533
+ // flex-basis
4761
5534
  case 5292:
4762
5535
  return WEBKIT + value + MS + replace(value, "basis", "preferred-size") + value;
5536
+ // flex-grow
4763
5537
  case 6060:
4764
5538
  return WEBKIT + "box-" + replace(value, "-grow", "") + WEBKIT + value + MS + replace(value, "grow", "positive") + value;
5539
+ // transition
4765
5540
  case 4554:
4766
5541
  return WEBKIT + replace(value, /([^-])(transform)/g, "$1" + WEBKIT + "$2") + value;
5542
+ // cursor
4767
5543
  case 6187:
4768
5544
  return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + "$1"), /(image-set)/, WEBKIT + "$1"), value, "") + value;
5545
+ // background, background-image
4769
5546
  case 5495:
4770
5547
  case 3959:
4771
5548
  return replace(value, /(image-set\([^]*)/, WEBKIT + "$1$`$1");
5549
+ // justify-content
4772
5550
  case 4968:
4773
5551
  return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + "box-pack:$3" + MS + "flex-pack:$3"), /s.+-b[^;]+/, "justify") + WEBKIT + value + value;
5552
+ // justify-self
4774
5553
  case 4200:
4775
- if (!match(value, /flex-|baseline/))
4776
- return MS + "grid-column-align" + substr(value, length2) + value;
5554
+ if (!match(value, /flex-|baseline/)) return MS + "grid-column-align" + substr(value, length2) + value;
4777
5555
  break;
5556
+ // grid-template-(columns|rows)
4778
5557
  case 2592:
4779
5558
  case 3360:
4780
5559
  return MS + replace(value, "template-", "") + value;
5560
+ // grid-(row|column)-start
4781
5561
  case 4384:
4782
5562
  case 3616:
4783
5563
  if (children && children.some(function(element, index) {
@@ -4786,16 +5566,19 @@ function prefix(value, length2, children) {
4786
5566
  return ~indexof(value + (children = children[length2].value), "span", 0) ? value : MS + replace(value, "-start", "") + value + MS + "grid-row-span:" + (~indexof(children, "span", 0) ? match(children, /\d+/) : +match(children, /\d+/) - +match(value, /\d+/)) + ";";
4787
5567
  }
4788
5568
  return MS + replace(value, "-start", "") + value;
5569
+ // grid-(row|column)-end
4789
5570
  case 4896:
4790
5571
  case 4128:
4791
5572
  return children && children.some(function(element) {
4792
5573
  return match(element.props, /grid-\w+-start/);
4793
5574
  }) ? value : MS + replace(replace(value, "-end", "-span"), "span ", "") + value;
5575
+ // (margin|padding)-inline-(start|end)
4794
5576
  case 4095:
4795
5577
  case 3583:
4796
5578
  case 4068:
4797
5579
  case 2532:
4798
5580
  return replace(value, /(.+)-inline(.+)/, WEBKIT + "$1$2") + value;
5581
+ // (min|max)?(width|height|inline-size|block-size)
4799
5582
  case 8116:
4800
5583
  case 7059:
4801
5584
  case 5753:
@@ -4810,32 +5593,41 @@ function prefix(value, length2, children) {
4810
5593
  case 4765:
4811
5594
  if (strlen(value) - 1 - length2 > 6)
4812
5595
  switch (charat(value, length2 + 1)) {
5596
+ // (m)ax-content, (m)in-content
4813
5597
  case 109:
4814
5598
  if (charat(value, length2 + 4) !== 45)
4815
5599
  break;
5600
+ // (f)ill-available, (f)it-content
4816
5601
  case 102:
4817
5602
  return replace(value, /(.+:)(.+)-([^]+)/, "$1" + WEBKIT + "$2-$3$1" + MOZ + (charat(value, length2 + 3) == 108 ? "$3" : "$2-$3")) + value;
5603
+ // (s)tretch
4818
5604
  case 115:
4819
5605
  return ~indexof(value, "stretch", 0) ? prefix(replace(value, "stretch", "fill-available"), length2, children) + value : value;
4820
5606
  }
4821
5607
  break;
5608
+ // grid-(column|row)
4822
5609
  case 5152:
4823
5610
  case 5920:
4824
- return replace(value, /(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/, function(_2, a2, b, c2, d, e, f2) {
4825
- return MS + a2 + ":" + b + f2 + (c2 ? MS + a2 + "-span:" + (d ? e : +e - +b) + f2 : "") + value;
5611
+ return replace(value, /(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/, function(_2, a2, b2, c2, d, e, f2) {
5612
+ return MS + a2 + ":" + b2 + f2 + (c2 ? MS + a2 + "-span:" + (d ? e : +e - +b2) + f2 : "") + value;
4826
5613
  });
5614
+ // position: sticky
4827
5615
  case 4949:
4828
5616
  if (charat(value, length2 + 6) === 121)
4829
5617
  return replace(value, ":", ":" + WEBKIT) + value;
4830
5618
  break;
5619
+ // display: (flex|inline-flex|grid|inline-grid)
4831
5620
  case 6444:
4832
5621
  switch (charat(value, charat(value, 14) === 45 ? 18 : 11)) {
5622
+ // (inline-)?fle(x)
4833
5623
  case 120:
4834
5624
  return replace(value, /(.+:)([^;\s!]+)(;|(\s+)?!.+)?/, "$1" + WEBKIT + (charat(value, 14) === 45 ? "inline-" : "") + "box$3$1" + WEBKIT + "$2$3$1" + MS + "$2box$3") + value;
5625
+ // (inline-)?gri(d)
4835
5626
  case 100:
4836
5627
  return replace(value, ":", ":" + MS) + value;
4837
5628
  }
4838
5629
  break;
5630
+ // scroll-margin, scroll-margin-(top|right|bottom|left)
4839
5631
  case 5719:
4840
5632
  case 2647:
4841
5633
  case 2135:
@@ -4856,8 +5648,7 @@ function serialize(children, callback) {
4856
5648
  function stringify(element, index, children, callback) {
4857
5649
  switch (element.type) {
4858
5650
  case LAYER:
4859
- if (element.children.length)
4860
- break;
5651
+ if (element.children.length) break;
4861
5652
  case IMPORT:
4862
5653
  case DECLARATION:
4863
5654
  return element.return = element.return || element.value;
@@ -4866,8 +5657,7 @@ function stringify(element, index, children, callback) {
4866
5657
  case KEYFRAMES:
4867
5658
  return element.return = element.value + "{" + serialize(element.children, callback) + "}";
4868
5659
  case RULESET:
4869
- if (!strlen(element.value = element.props.join(",")))
4870
- return "";
5660
+ if (!strlen(element.value = element.props.join(","))) return "";
4871
5661
  }
4872
5662
  return strlen(children = serialize(element.children, callback)) ? element.return = element.value + "{" + children + "}" : "";
4873
5663
  }
@@ -4903,12 +5693,14 @@ function prefixer(element, index, children, callback) {
4903
5693
  if (element.length)
4904
5694
  return combine(children = element.props, function(value) {
4905
5695
  switch (match(value, callback = /(::plac\w+|:read-\w+)/)) {
5696
+ // :read-(only|write)
4906
5697
  case ":read-only":
4907
5698
  case ":read-write":
4908
5699
  lift(copy(element, { props: [replace(value, /:(read-\w+)/, ":" + MOZ + "$1")] }));
4909
5700
  lift(copy(element, { props: [value] }));
4910
5701
  assign2(element, { props: filter(children, callback) });
4911
5702
  break;
5703
+ // :placeholder
4912
5704
  case "::placeholder":
4913
5705
  lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + WEBKIT + "input-$1")] }));
4914
5706
  lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + MOZ + "$1")] }));
@@ -4982,6 +5774,7 @@ var v = "6.1.13";
4982
5774
  var g = "/*!sc*/\n";
4983
5775
  var S = "undefined" != typeof window && "HTMLElement" in window;
4984
5776
  var w = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.REACT_APP_SC_DISABLE_SPEEDY && "" !== process.env.REACT_APP_SC_DISABLE_SPEEDY ? "false" !== process.env.REACT_APP_SC_DISABLE_SPEEDY && process.env.REACT_APP_SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.SC_DISABLE_SPEEDY && "" !== process.env.SC_DISABLE_SPEEDY ? "false" !== process.env.SC_DISABLE_SPEEDY && process.env.SC_DISABLE_SPEEDY : true);
5777
+ var b = {};
4985
5778
  var E = /invalid hook call/i;
4986
5779
  var N = /* @__PURE__ */ new Set();
4987
5780
  var P = function(t, n) {
@@ -4990,8 +5783,7 @@ var P = function(t, n) {
4990
5783
  try {
4991
5784
  var a2 = true;
4992
5785
  console.error = function(t2) {
4993
- for (var n2 = [], o3 = 1; o3 < arguments.length; o3++)
4994
- n2[o3 - 1] = arguments[o3];
5786
+ for (var n2 = [], o3 = 1; o3 < arguments.length; o3++) n2[o3 - 1] = arguments[o3];
4995
5787
  E.test(t2) ? (a2 = false, N.delete(s2)) : i2.apply(void 0, __spreadArray([t2], n2, false));
4996
5788
  }, (0, import_react.useRef)(), a2 && !N.has(s2) && (console.warn(s2), N.add(s2));
4997
5789
  } catch (e) {
@@ -5019,15 +5811,13 @@ var j = function(e) {
5019
5811
  };
5020
5812
  function x(e) {
5021
5813
  var t, n = "";
5022
- for (t = Math.abs(e); t > k; t = t / k | 0)
5023
- n = j(t % k) + n;
5814
+ for (t = Math.abs(e); t > k; t = t / k | 0) n = j(t % k) + n;
5024
5815
  return (j(t % k) + n).replace(T, "$1-$2");
5025
5816
  }
5026
5817
  var V;
5027
5818
  var F = 5381;
5028
5819
  var M = function(e, t) {
5029
- for (var n = t.length; n; )
5030
- e = 33 * e ^ t.charCodeAt(--n);
5820
+ for (var n = t.length; n; ) e = 33 * e ^ t.charCodeAt(--n);
5031
5821
  return e;
5032
5822
  };
5033
5823
  var z = function(e) {
@@ -5090,24 +5880,17 @@ function ie(e, t) {
5090
5880
  return e && t ? "".concat(e, " ").concat(t) : e || t || "";
5091
5881
  }
5092
5882
  function ae(e, t) {
5093
- if (0 === e.length)
5094
- return "";
5095
- for (var n = e[0], o2 = 1; o2 < e.length; o2++)
5096
- n += t ? t + e[o2] : e[o2];
5883
+ if (0 === e.length) return "";
5884
+ for (var n = e[0], o2 = 1; o2 < e.length; o2++) n += t ? t + e[o2] : e[o2];
5097
5885
  return n;
5098
5886
  }
5099
5887
  function ce(e) {
5100
5888
  return null !== e && "object" == typeof e && e.constructor.name === Object.name && !("props" in e && e.$$typeof);
5101
5889
  }
5102
5890
  function le(e, t, n) {
5103
- if (void 0 === n && (n = false), !n && !ce(e) && !Array.isArray(e))
5104
- return t;
5105
- if (Array.isArray(t))
5106
- for (var o2 = 0; o2 < t.length; o2++)
5107
- e[o2] = le(e[o2], t[o2]);
5108
- else if (ce(t))
5109
- for (var o2 in t)
5110
- e[o2] = le(e[o2], t[o2]);
5891
+ if (void 0 === n && (n = false), !n && !ce(e) && !Array.isArray(e)) return t;
5892
+ if (Array.isArray(t)) for (var o2 = 0; o2 < t.length; o2++) e[o2] = le(e[o2], t[o2]);
5893
+ else if (ce(t)) for (var o2 in t) e[o2] = le(e[o2], t[o2]);
5111
5894
  return e;
5112
5895
  }
5113
5896
  function ue(e, t) {
@@ -5115,17 +5898,14 @@ function ue(e, t) {
5115
5898
  }
5116
5899
  var pe = true ? { 1: "Cannot create styled-component for component: %s.\n\n", 2: "Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\n\n- Are you trying to reuse it across renders?\n- Are you accidentally calling collectStyles twice?\n\n", 3: "Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\n\n", 4: "The `StyleSheetManager` expects a valid target or sheet prop!\n\n- Does this error occur on the client and is your target falsy?\n- Does this error occur on the server and is the sheet falsy?\n\n", 5: "The clone method cannot be used on the client!\n\n- Are you running in a client-like environment on the server?\n- Are you trying to run SSR on the client?\n\n", 6: "Trying to insert a new style tag, but the given Node is unmounted!\n\n- Are you using a custom target that isn't mounted?\n- Does your document not have a valid head element?\n- Have you accidentally removed a style tag manually?\n\n", 7: 'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n', 8: 'ThemeProvider: Please make your "theme" prop an object.\n\n', 9: "Missing document `<head>`\n\n", 10: "Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\n\n", 11: "_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\n\n", 12: "It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\n\n", 13: "%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\n\n", 14: 'ThemeProvider: "theme" prop is required.\n\n', 15: "A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n", 16: "Reached the limit of how many styled components may be created at group %s.\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\nas for instance in your render method then you may be running into this limitation.\n\n", 17: "CSSStyleSheet could not be found on HTMLStyleElement.\nHas styled-components' style tag been unmounted or altered by another script?\n", 18: "ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`" } : {};
5117
5900
  function de() {
5118
- for (var e = [], t = 0; t < arguments.length; t++)
5119
- e[t] = arguments[t];
5120
- for (var n = e[0], o2 = [], r2 = 1, s2 = e.length; r2 < s2; r2 += 1)
5121
- o2.push(e[r2]);
5901
+ for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
5902
+ for (var n = e[0], o2 = [], r2 = 1, s2 = e.length; r2 < s2; r2 += 1) o2.push(e[r2]);
5122
5903
  return o2.forEach(function(e2) {
5123
5904
  n = n.replace(/%[a-z]/, e2);
5124
5905
  }), n;
5125
5906
  }
5126
5907
  function he(t) {
5127
- for (var n = [], o2 = 1; o2 < arguments.length; o2++)
5128
- n[o2 - 1] = arguments[o2];
5908
+ for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
5129
5909
  return false ? new Error("An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#".concat(t, " for more information.").concat(n.length > 0 ? " Args: ".concat(n.join(", ")) : "")) : new Error(de.apply(void 0, __spreadArray([pe[t]], n, false)).trim());
5130
5910
  }
5131
5911
  var fe = function() {
@@ -5133,33 +5913,25 @@ var fe = function() {
5133
5913
  this.groupSizes = new Uint32Array(512), this.length = 512, this.tag = e2;
5134
5914
  }
5135
5915
  return e.prototype.indexOfGroup = function(e2) {
5136
- for (var t = 0, n = 0; n < e2; n++)
5137
- t += this.groupSizes[n];
5916
+ for (var t = 0, n = 0; n < e2; n++) t += this.groupSizes[n];
5138
5917
  return t;
5139
5918
  }, e.prototype.insertRules = function(e2, t) {
5140
5919
  if (e2 >= this.groupSizes.length) {
5141
- for (var n = this.groupSizes, o2 = n.length, r2 = o2; e2 >= r2; )
5142
- if ((r2 <<= 1) < 0)
5143
- throw he(16, "".concat(e2));
5920
+ for (var n = this.groupSizes, o2 = n.length, r2 = o2; e2 >= r2; ) if ((r2 <<= 1) < 0) throw he(16, "".concat(e2));
5144
5921
  this.groupSizes = new Uint32Array(r2), this.groupSizes.set(n), this.length = r2;
5145
- for (var s2 = o2; s2 < r2; s2++)
5146
- this.groupSizes[s2] = 0;
5922
+ for (var s2 = o2; s2 < r2; s2++) this.groupSizes[s2] = 0;
5147
5923
  }
5148
- for (var i2 = this.indexOfGroup(e2 + 1), a2 = (s2 = 0, t.length); s2 < a2; s2++)
5149
- this.tag.insertRule(i2, t[s2]) && (this.groupSizes[e2]++, i2++);
5924
+ for (var i2 = this.indexOfGroup(e2 + 1), a2 = (s2 = 0, t.length); s2 < a2; s2++) this.tag.insertRule(i2, t[s2]) && (this.groupSizes[e2]++, i2++);
5150
5925
  }, e.prototype.clearGroup = function(e2) {
5151
5926
  if (e2 < this.length) {
5152
5927
  var t = this.groupSizes[e2], n = this.indexOfGroup(e2), o2 = n + t;
5153
5928
  this.groupSizes[e2] = 0;
5154
- for (var r2 = n; r2 < o2; r2++)
5155
- this.tag.deleteRule(n);
5929
+ for (var r2 = n; r2 < o2; r2++) this.tag.deleteRule(n);
5156
5930
  }
5157
5931
  }, e.prototype.getGroup = function(e2) {
5158
5932
  var t = "";
5159
- if (e2 >= this.length || 0 === this.groupSizes[e2])
5160
- return t;
5161
- for (var n = this.groupSizes[e2], o2 = this.indexOfGroup(e2), r2 = o2 + n, s2 = o2; s2 < r2; s2++)
5162
- t += "".concat(this.tag.getRule(s2)).concat(g);
5933
+ if (e2 >= this.length || 0 === this.groupSizes[e2]) return t;
5934
+ for (var n = this.groupSizes[e2], o2 = this.indexOfGroup(e2), r2 = o2 + n, s2 = o2; s2 < r2; s2++) t += "".concat(this.tag.getRule(s2)).concat(g);
5163
5935
  return t;
5164
5936
  }, e;
5165
5937
  }();
@@ -5168,13 +5940,10 @@ var ye = /* @__PURE__ */ new Map();
5168
5940
  var ve = /* @__PURE__ */ new Map();
5169
5941
  var ge = 1;
5170
5942
  var Se = function(e) {
5171
- if (ye.has(e))
5172
- return ye.get(e);
5173
- for (; ve.has(ge); )
5174
- ge++;
5943
+ if (ye.has(e)) return ye.get(e);
5944
+ for (; ve.has(ge); ) ge++;
5175
5945
  var t = ge++;
5176
- if ((0 | t) < 0 || t > me)
5177
- throw he(16, "".concat(t));
5946
+ if ((0 | t) < 0 || t > me) throw he(16, "".concat(t));
5178
5947
  return ye.set(e, t), ve.set(t, e), t;
5179
5948
  };
5180
5949
  var we = function(e, t) {
@@ -5183,8 +5952,7 @@ var we = function(e, t) {
5183
5952
  var be = "style[".concat(f, "][").concat(y, '="').concat(v, '"]');
5184
5953
  var Ee = new RegExp("^".concat(f, '\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'));
5185
5954
  var Ne = function(e, t, n) {
5186
- for (var o2, r2 = n.split(","), s2 = 0, i2 = r2.length; s2 < i2; s2++)
5187
- (o2 = r2[s2]) && e.registerName(t, o2);
5955
+ for (var o2, r2 = n.split(","), s2 = 0, i2 = r2.length; s2 < i2; s2++) (o2 = r2[s2]) && e.registerName(t, o2);
5188
5956
  };
5189
5957
  var Pe = function(e, t) {
5190
5958
  for (var n, o2 = (null !== (n = t.textContent) && void 0 !== n ? n : "").split(g), r2 = [], s2 = 0, i2 = o2.length; s2 < i2; s2++) {
@@ -5194,8 +5962,7 @@ var Pe = function(e, t) {
5194
5962
  if (c2) {
5195
5963
  var l2 = 0 | parseInt(c2[1], 10), u2 = c2[2];
5196
5964
  0 !== l2 && (we(u2, l2), Ne(e, u2, c2[3]), e.getTag().insertRules(l2, r2)), r2.length = 0;
5197
- } else
5198
- r2.push(a2);
5965
+ } else r2.push(a2);
5199
5966
  }
5200
5967
  }
5201
5968
  };
@@ -5220,12 +5987,10 @@ var Ie = function(e) {
5220
5987
  var Ae = function() {
5221
5988
  function e(e2) {
5222
5989
  this.element = Ie(e2), this.element.appendChild(document.createTextNode("")), this.sheet = function(e3) {
5223
- if (e3.sheet)
5224
- return e3.sheet;
5990
+ if (e3.sheet) return e3.sheet;
5225
5991
  for (var t = document.styleSheets, n = 0, o2 = t.length; n < o2; n++) {
5226
5992
  var r2 = t[n];
5227
- if (r2.ownerNode === e3)
5228
- return r2;
5993
+ if (r2.ownerNode === e3) return r2;
5229
5994
  }
5230
5995
  throw he(17);
5231
5996
  }(this.element), this.length = 0;
@@ -5283,17 +6048,14 @@ var ke = function() {
5283
6048
  var r4 = function(e4) {
5284
6049
  return ve.get(e4);
5285
6050
  }(n3);
5286
- if (void 0 === r4)
5287
- return "continue";
6051
+ if (void 0 === r4) return "continue";
5288
6052
  var s3 = e3.names.get(r4), i2 = t.getGroup(n3);
5289
- if (void 0 === s3 || !s3.size || 0 === i2.length)
5290
- return "continue";
6053
+ if (void 0 === s3 || !s3.size || 0 === i2.length) return "continue";
5291
6054
  var a2 = "".concat(f, ".g").concat(n3, '[id="').concat(r4, '"]'), c2 = "";
5292
6055
  void 0 !== s3 && s3.forEach(function(e4) {
5293
6056
  e4.length > 0 && (c2 += "".concat(e4, ","));
5294
6057
  }), o3 += "".concat(i2).concat(a2, '{content:"').concat(c2, '"}').concat(g);
5295
- }, s2 = 0; s2 < n2; s2++)
5296
- r3(s2);
6058
+ }, s2 = 0; s2 < n2; s2++) r3(s2);
5297
6059
  return o3;
5298
6060
  }(r2);
5299
6061
  });
@@ -5315,8 +6077,7 @@ var ke = function() {
5315
6077
  }, e.prototype.hasNameForId = function(e2, t) {
5316
6078
  return this.names.has(e2) && this.names.get(e2).has(t);
5317
6079
  }, e.prototype.registerName = function(e2, t) {
5318
- if (Se(e2), this.names.has(e2))
5319
- this.names.get(e2).add(t);
6080
+ if (Se(e2), this.names.has(e2)) this.names.get(e2).add(t);
5320
6081
  else {
5321
6082
  var n = /* @__PURE__ */ new Set();
5322
6083
  n.add(t), this.names.set(e2, n);
@@ -5404,8 +6165,7 @@ var qe = function(e) {
5404
6165
  function He(e) {
5405
6166
  for (var t = "", n = 0; n < e.length; n++) {
5406
6167
  var o2 = e[n];
5407
- if (1 === n && "-" === o2 && "-" === e[0])
5408
- return e;
6168
+ if (1 === n && "-" === o2 && "-" === e[0]) return e;
5409
6169
  qe(o2) ? t += "-" + o2.toLowerCase() : t += o2;
5410
6170
  }
5411
6171
  return t.startsWith("ms-") ? "-" + t : t;
@@ -5422,13 +6182,10 @@ var Je = function(t) {
5422
6182
  return r2;
5423
6183
  };
5424
6184
  function Xe(e, t, n, o2) {
5425
- if (Ue(e))
5426
- return [];
5427
- if (se(e))
5428
- return [".".concat(e.styledComponentId)];
6185
+ if (Ue(e)) return [];
6186
+ if (se(e)) return [".".concat(e.styledComponentId)];
5429
6187
  if (re(e)) {
5430
- if (!re(s2 = e) || s2.prototype && s2.prototype.isReactComponent || !t)
5431
- return [e];
6188
+ if (!re(s2 = e) || s2.prototype && s2.prototype.isReactComponent || !t) return [e];
5432
6189
  var r2 = e(t);
5433
6190
  return "object" != typeof r2 || Array.isArray(r2) || r2 instanceof We || ce(r2) || null === r2 || console.error("".concat(B(e), " is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.")), Xe(r2, t, n, o2);
5434
6191
  }
@@ -5440,8 +6197,7 @@ function Xe(e, t, n, o2) {
5440
6197
  function Ze(e) {
5441
6198
  for (var t = 0; t < e.length; t += 1) {
5442
6199
  var n = e[t];
5443
- if (re(n) && !se(n))
5444
- return false;
6200
+ if (re(n) && !se(n)) return false;
5445
6201
  }
5446
6202
  return true;
5447
6203
  }
@@ -5452,22 +6208,19 @@ var Qe = function() {
5452
6208
  }
5453
6209
  return e.prototype.generateAndInjectStyles = function(e2, t, n) {
5454
6210
  var o2 = this.baseStyle ? this.baseStyle.generateAndInjectStyles(e2, t, n) : "";
5455
- if (this.isStatic && !n.hash)
5456
- if (this.staticRulesId && t.hasNameForId(this.componentId, this.staticRulesId))
5457
- o2 = ie(o2, this.staticRulesId);
5458
- else {
5459
- var r2 = ae(Xe(this.rules, e2, t, n)), s2 = x(M(this.baseHash, r2) >>> 0);
5460
- if (!t.hasNameForId(this.componentId, s2)) {
5461
- var i2 = n(r2, ".".concat(s2), void 0, this.componentId);
5462
- t.insertRules(this.componentId, s2, i2);
5463
- }
5464
- o2 = ie(o2, s2), this.staticRulesId = s2;
6211
+ if (this.isStatic && !n.hash) if (this.staticRulesId && t.hasNameForId(this.componentId, this.staticRulesId)) o2 = ie(o2, this.staticRulesId);
6212
+ else {
6213
+ var r2 = ae(Xe(this.rules, e2, t, n)), s2 = x(M(this.baseHash, r2) >>> 0);
6214
+ if (!t.hasNameForId(this.componentId, s2)) {
6215
+ var i2 = n(r2, ".".concat(s2), void 0, this.componentId);
6216
+ t.insertRules(this.componentId, s2, i2);
5465
6217
  }
6218
+ o2 = ie(o2, s2), this.staticRulesId = s2;
6219
+ }
5466
6220
  else {
5467
6221
  for (var a2 = M(this.baseHash, n.hash), c2 = "", l2 = 0; l2 < this.rules.length; l2++) {
5468
6222
  var u2 = this.rules[l2];
5469
- if ("string" == typeof u2)
5470
- c2 += u2, a2 = M(a2, u2);
6223
+ if ("string" == typeof u2) c2 += u2, a2 = M(a2, u2);
5471
6224
  else if (u2) {
5472
6225
  var p2 = ae(Xe(u2, e2, t, n));
5473
6226
  a2 = M(a2, p2 + l2), c2 += p2;
@@ -5486,16 +6239,13 @@ var tt = et.Consumer;
5486
6239
  function ot(e) {
5487
6240
  var n = import_react.default.useContext(et), r2 = (0, import_react.useMemo)(function() {
5488
6241
  return function(e2, n2) {
5489
- if (!e2)
5490
- throw he(14);
6242
+ if (!e2) throw he(14);
5491
6243
  if (re(e2)) {
5492
6244
  var o2 = e2(n2);
5493
- if (null === o2 || Array.isArray(o2) || "object" != typeof o2)
5494
- throw he(7);
6245
+ if (null === o2 || Array.isArray(o2) || "object" != typeof o2) throw he(7);
5495
6246
  return o2;
5496
6247
  }
5497
- if (Array.isArray(e2) || "object" != typeof e2)
5498
- throw he(8);
6248
+ if (Array.isArray(e2) || "object" != typeof e2) throw he(8);
5499
6249
  return n2 ? __assign(__assign({}, n2), e2) : e2;
5500
6250
  }(e.theme, n);
5501
6251
  }, [e.theme, n]);
@@ -5513,14 +6263,13 @@ function it(e, r2, s2) {
5513
6263
  return L(e2) ? "styled.".concat(e2) : "Styled(".concat(B(e2), ")");
5514
6264
  }(e) : m2, g2 = r2.displayName && r2.componentId ? "".concat(R(r2.displayName), "-").concat(r2.componentId) : r2.componentId || f2, S2 = i2 && a2.attrs ? a2.attrs.concat(d).filter(Boolean) : d, w2 = r2.shouldForwardProp;
5515
6265
  if (i2 && a2.shouldForwardProp) {
5516
- var b = a2.shouldForwardProp;
6266
+ var b2 = a2.shouldForwardProp;
5517
6267
  if (r2.shouldForwardProp) {
5518
6268
  var E2 = r2.shouldForwardProp;
5519
6269
  w2 = function(e2, t) {
5520
- return b(e2, t) && E2(e2, t);
6270
+ return b2(e2, t) && E2(e2, t);
5521
6271
  };
5522
- } else
5523
- w2 = b;
6272
+ } else w2 = b2;
5524
6273
  }
5525
6274
  var N2 = new Qe(s2, g2, i2 ? a2.componentStyle : void 0);
5526
6275
  function O2(e2, r3) {
@@ -5530,13 +6279,11 @@ function it(e, r2, s2) {
5530
6279
  var v2 = I(r4, f3, c3) || C, g3 = function(e4, n, o2) {
5531
6280
  for (var r5, s4 = __assign(__assign({}, n), { className: void 0, theme: o2 }), i4 = 0; i4 < e4.length; i4 += 1) {
5532
6281
  var a4 = re(r5 = e4[i4]) ? r5(s4) : r5;
5533
- for (var c4 in a4)
5534
- s4[c4] = "className" === c4 ? ie(s4[c4], a4[c4]) : "style" === c4 ? __assign(__assign({}, s4[c4]), a4[c4]) : a4[c4];
6282
+ for (var c4 in a4) s4[c4] = "className" === c4 ? ie(s4[c4], a4[c4]) : "style" === c4 ? __assign(__assign({}, s4[c4]), a4[c4]) : a4[c4];
5535
6283
  }
5536
6284
  return n.className && (s4.className = ie(s4.className, n.className)), s4;
5537
6285
  }(i3, r4, v2), S3 = g3.as || h2, w3 = {};
5538
- for (var b2 in g3)
5539
- void 0 === g3[b2] || "$" === b2[0] || "as" === b2 || "theme" === b2 && g3.theme === v2 || ("forwardedAs" === b2 ? w3.as = g3.forwardedAs : y3 && !y3(b2, S3) || (w3[b2] = g3[b2], y3 || false || isPropValid(b2) || st.has(b2) || !A.has(S3) || (st.add(b2), console.warn('styled-components: it looks like an unknown prop "'.concat(b2, '" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));
6286
+ for (var b3 in g3) void 0 === g3[b3] || "$" === b3[0] || "as" === b3 || "theme" === b3 && g3.theme === v2 || ("forwardedAs" === b3 ? w3.as = g3.forwardedAs : y3 && !y3(b3, S3) || (w3[b3] = g3[b3], y3 || false || isPropValid(b3) || st.has(b3) || !A.has(S3) || (st.add(b3), console.warn('styled-components: it looks like an unknown prop "'.concat(b3, '" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));
5540
6287
  var E3 = function(e4, t) {
5541
6288
  var n = Ge(), o2 = e4.generateAndInjectStyles(t, n.styleSheet, n.stylis);
5542
6289
  return (0, import_react.useDebugValue)(o2), o2;
@@ -5552,10 +6299,8 @@ function it(e, r2, s2) {
5552
6299
  return this._foldedDefaultProps;
5553
6300
  }, set: function(e2) {
5554
6301
  this._foldedDefaultProps = i2 ? function(e3) {
5555
- for (var t = [], n = 1; n < arguments.length; n++)
5556
- t[n - 1] = arguments[n];
5557
- for (var o2 = 0, r3 = t; o2 < r3.length; o2++)
5558
- le(e3, r3[o2], true);
6302
+ for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
6303
+ for (var o2 = 0, r3 = t; o2 < r3.length; o2++) le(e3, r3[o2], true);
5559
6304
  return e3;
5560
6305
  }({}, a2.defaultProps, e2) : e2;
5561
6306
  } }), P(y2, g2), D2.warnTooManyClasses = /* @__PURE__ */ function(e2, t) {
@@ -5571,27 +6316,22 @@ function it(e, r2, s2) {
5571
6316
  }), c2 && oe(D2, e, { attrs: true, componentStyle: true, displayName: true, foldedComponentIds: true, shouldForwardProp: true, styledComponentId: true, target: true }), D2;
5572
6317
  }
5573
6318
  function at(e, t) {
5574
- for (var n = [e[0]], o2 = 0, r2 = t.length; o2 < r2; o2 += 1)
5575
- n.push(t[o2], e[o2 + 1]);
6319
+ for (var n = [e[0]], o2 = 0, r2 = t.length; o2 < r2; o2 += 1) n.push(t[o2], e[o2 + 1]);
5576
6320
  return n;
5577
6321
  }
5578
6322
  var ct = function(e) {
5579
6323
  return Object.assign(e, { isCss: true });
5580
6324
  };
5581
6325
  function lt(t) {
5582
- for (var n = [], o2 = 1; o2 < arguments.length; o2++)
5583
- n[o2 - 1] = arguments[o2];
5584
- if (re(t) || ce(t))
5585
- return ct(Xe(at(_, __spreadArray([t], n, true))));
6326
+ for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
6327
+ if (re(t) || ce(t)) return ct(Xe(at(_, __spreadArray([t], n, true))));
5586
6328
  var r2 = t;
5587
6329
  return 0 === n.length && 1 === r2.length && "string" == typeof r2[0] ? Xe(r2) : ct(Xe(at(r2, n)));
5588
6330
  }
5589
6331
  function ut(n, o2, r2) {
5590
- if (void 0 === r2 && (r2 = C), !o2)
5591
- throw he(1, o2);
6332
+ if (void 0 === r2 && (r2 = C), !o2) throw he(1, o2);
5592
6333
  var s2 = function(t) {
5593
- for (var s3 = [], i2 = 1; i2 < arguments.length; i2++)
5594
- s3[i2 - 1] = arguments[i2];
6334
+ for (var s3 = [], i2 = 1; i2 < arguments.length; i2++) s3[i2 - 1] = arguments[i2];
5595
6335
  return n(o2, r2, lt.apply(void 0, __spreadArray([t], s3, false)));
5596
6336
  };
5597
6337
  return s2.attrs = function(e) {
@@ -5620,26 +6360,45 @@ var ht = function() {
5620
6360
  e2 > 2 && ke.registerId(this.componentId + e2), this.removeStyles(e2, n), this.createStyles(e2, t, n, o2);
5621
6361
  }, e;
5622
6362
  }();
6363
+ function ft(n) {
6364
+ for (var r2 = [], s2 = 1; s2 < arguments.length; s2++) r2[s2 - 1] = arguments[s2];
6365
+ var i2 = lt.apply(void 0, __spreadArray([n], r2, false)), a2 = "sc-global-".concat($(JSON.stringify(i2))), c2 = new ht(i2, a2);
6366
+ P(a2);
6367
+ var l2 = function(e) {
6368
+ var t = Ge(), n2 = import_react.default.useContext(et), r3 = import_react.default.useRef(t.styleSheet.allocateGSInstance(a2)).current;
6369
+ return import_react.default.Children.count(e.children) && console.warn("The global style component ".concat(a2, " was given child JSX. createGlobalStyle does not render children.")), i2.some(function(e2) {
6370
+ return "string" == typeof e2 && -1 !== e2.indexOf("@import");
6371
+ }) && console.warn("Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app."), t.styleSheet.server && u2(r3, e, t.styleSheet, n2, t.stylis), import_react.default.useLayoutEffect(function() {
6372
+ if (!t.styleSheet.server) return u2(r3, e, t.styleSheet, n2, t.stylis), function() {
6373
+ return c2.removeStyles(r3, t.styleSheet);
6374
+ };
6375
+ }, [r3, e, t.styleSheet, n2, t.stylis]), null;
6376
+ };
6377
+ function u2(e, n2, o2, r3, s3) {
6378
+ if (c2.isStatic) c2.renderStyles(e, b, o2, s3);
6379
+ else {
6380
+ var i3 = __assign(__assign({}, n2), { theme: I(n2, r3, l2.defaultProps) });
6381
+ c2.renderStyles(e, i3, o2, s3);
6382
+ }
6383
+ }
6384
+ return import_react.default.memo(l2);
6385
+ }
5623
6386
  var vt = function() {
5624
6387
  function e() {
5625
6388
  var e2 = this;
5626
6389
  this._emitSheetCSS = function() {
5627
6390
  var t = e2.instance.toString();
5628
- if (!t)
5629
- return "";
6391
+ if (!t) return "";
5630
6392
  var n = Ce(), o2 = ae([n && 'nonce="'.concat(n, '"'), "".concat(f, '="true"'), "".concat(y, '="').concat(v, '"')].filter(Boolean), " ");
5631
6393
  return "<style ".concat(o2, ">").concat(t, "</style>");
5632
6394
  }, this.getStyleTags = function() {
5633
- if (e2.sealed)
5634
- throw he(2);
6395
+ if (e2.sealed) throw he(2);
5635
6396
  return e2._emitSheetCSS();
5636
6397
  }, this.getStyleElement = function() {
5637
6398
  var n;
5638
- if (e2.sealed)
5639
- throw he(2);
6399
+ if (e2.sealed) throw he(2);
5640
6400
  var r2 = e2.instance.toString();
5641
- if (!r2)
5642
- return [];
6401
+ if (!r2) return [];
5643
6402
  var s2 = ((n = {})[f] = "", n[y] = v, n.dangerouslySetInnerHTML = { __html: r2 }, n), i2 = Ce();
5644
6403
  return i2 && (s2.nonce = i2), [import_react.default.createElement("style", __assign({}, s2, { key: "sc-0-0" }))];
5645
6404
  }, this.seal = function() {
@@ -5647,8 +6406,7 @@ var vt = function() {
5647
6406
  }, this.instance = new ke({ isServer: true }), this.sealed = false;
5648
6407
  }
5649
6408
  return e.prototype.collectStyles = function(e2) {
5650
- if (this.sealed)
5651
- throw he(2);
6409
+ if (this.sealed) throw he(2);
5652
6410
  return import_react.default.createElement(Ye, { sheet: this.instance }, e2);
5653
6411
  }, e.prototype.interleaveWithNodeStream = function(e2) {
5654
6412
  throw he(3);
@@ -5658,6 +6416,9 @@ var vt = function() {
5658
6416
  var St = "__sc-".concat(f, "__");
5659
6417
  "undefined" != typeof window && (window[St] || (window[St] = 0), 1 === window[St] && console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://s-c.sh/2BAXzed for more info."), window[St] += 1);
5660
6418
 
6419
+ // src/context/embed.tsx
6420
+ var import_lodash = __toESM(require_lodash());
6421
+
5661
6422
  // node_modules/@stripe/stripe-js/dist/index.mjs
5662
6423
  var V3_URL = "https://js.stripe.com/v3";
5663
6424
  var V3_URL_REGEX = /^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/;
@@ -6158,7 +6919,8 @@ function ChangeSubscriptionRequestBodyToJSON(value) {
6158
6919
  }
6159
6920
  return {
6160
6921
  new_plan_id: value["newPlanId"],
6161
- new_price_id: value["newPriceId"]
6922
+ new_price_id: value["newPriceId"],
6923
+ payment_method_id: value["paymentMethodId"]
6162
6924
  };
6163
6925
  }
6164
6926
 
@@ -6708,7 +7470,8 @@ function StripeEmbedInfoFromJSONTyped(json, ignoreDiscriminator) {
6708
7470
  }
6709
7471
  return {
6710
7472
  customerEkey: json["customer_ekey"] == null ? void 0 : json["customer_ekey"],
6711
- publishableKey: json["publishable_key"]
7473
+ publishableKey: json["publishable_key"],
7474
+ setupIntentClientSecret: json["setup_intent_client_secret"] == null ? void 0 : json["setup_intent_client_secret"]
6712
7475
  };
6713
7476
  }
6714
7477
 
@@ -6728,7 +7491,8 @@ function ComponentHydrateResponseDataFromJSONTyped(json, ignoreDiscriminator) {
6728
7491
  component: json["component"] == null ? void 0 : ComponentResponseDataFromJSON(json["component"]),
6729
7492
  featureUsage: json["feature_usage"] == null ? void 0 : FeatureUsageDetailResponseDataFromJSON(json["feature_usage"]),
6730
7493
  stripeEmbed: json["stripe_embed"] == null ? void 0 : StripeEmbedInfoFromJSON(json["stripe_embed"]),
6731
- subscription: json["subscription"] == null ? void 0 : CompanySubscriptionResponseDataFromJSON(json["subscription"])
7494
+ subscription: json["subscription"] == null ? void 0 : CompanySubscriptionResponseDataFromJSON(json["subscription"]),
7495
+ upcomingInvoice: json["upcoming_invoice"] == null ? void 0 : InvoiceResponseDataFromJSON(json["upcoming_invoice"])
6732
7496
  };
6733
7497
  }
6734
7498
 
@@ -6838,70 +7602,378 @@ var CheckoutApi = class extends BaseAPI {
6838
7602
 
6839
7603
  // src/context/embed.tsx
6840
7604
  var import_jsx_runtime = require("react/jsx-runtime");
6841
- var defaultTheme = {
6842
- numberOfColumns: 2,
6843
- sectionLayout: "merged",
6844
- colorMode: "light",
6845
- primary: "#000000",
6846
- secondary: "#000000",
6847
- card: {
6848
- background: "#FFFFFF",
6849
- borderRadius: 10,
6850
- hasShadow: true,
6851
- padding: 45
6852
- },
6853
- typography: {
6854
- heading1: {
6855
- fontFamily: "Manrope",
6856
- fontSize: 37,
6857
- fontWeight: 800,
6858
- color: "#000000"
6859
- },
6860
- heading2: {
6861
- fontFamily: "Manrope",
6862
- fontSize: 29,
6863
- fontWeight: 800,
6864
- color: "#000000"
6865
- },
6866
- heading3: {
6867
- fontFamily: "Manrope",
6868
- fontSize: 20,
6869
- fontWeight: 600,
6870
- color: "#000000"
6871
- },
6872
- heading4: {
6873
- fontFamily: "Manrope",
6874
- fontSize: 18,
6875
- fontWeight: 800,
6876
- color: "#000000"
6877
- },
6878
- heading5: {
6879
- fontFamily: "Public Sans",
6880
- fontSize: 17,
6881
- fontWeight: 500,
6882
- color: "#000000"
6883
- },
6884
- heading6: {
6885
- fontFamily: "Public Sans",
6886
- fontSize: 14,
6887
- fontWeight: 400,
6888
- color: "#8A8A8A"
6889
- },
6890
- text: {
6891
- fontFamily: "Public Sans",
6892
- fontSize: 16,
6893
- fontWeight: 400,
6894
- color: "#000000"
6895
- },
6896
- link: {
6897
- fontFamily: "Inter",
6898
- fontSize: 16,
6899
- fontWeight: 400,
6900
- color: "#194BFB"
6901
- }
7605
+ var GlobalStyle = ft`
7606
+ @font-face {
7607
+ font-family: "icons";
7608
+ src: url(data:font/ttf;base64,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AREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVABUQFSAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwAFYWxhcm0MYXJyb3ctY3VydmVkCmFycm93LWRvd24KYXJyb3ctbGVmdAthcnJvdy1yaWdodAhhcnJvdy11cAxhcnJvdy11cHdhcmQJYmFja3NwYWNlBGJlbGwFYm9hcmQIYm9va21hcmsKYm9vbGVhbi1vbgdib29sZWFuBGJ1bGIGYnVyZ2VyDWNoZWNrLXJvdW5kZWQFY2hlY2sMY2hldnJvbi1kb3duDGNoZXZyb24tbGVmdA1jaGV2cm9uLXJpZ2h0CmNoZXZyb24tdXAEY2hpcAVjaGlwcxRjbG9zZS1yb3VuZGVkLWZpbGxlZAVjbG9zZQhjbG91ZC11cARjbHViA2NtZARjb2RlBmNvZmZlZQNjb2cOY29sbGFwc2UtZW1wdHkIY29sbGFwc2UHY29tcGFzcwpjb25uZWN0aW9uBGNvcHkHY3lsbmRlcgdkaWFtb25kDmRvbGxhci1yb3VuZGVkD2RvdHMtaG9yaXpvbnRhbA1kb3RzLXZlcnRpY2FsDGVudGl0bGVtZW50cwllcXVhbGl6ZXIaZXhjbGFtYXRpb24tcm91bmRlZC1maWxsZWQDZXllBmZpbHRlcgxmb2xkZXItbWludXMLZm9sZGVyLXBsdXMGZm9sZGVyB2dsYXNzZXMFZ2xvYmUGaGFtbWVyBGhhc2gFaGVhcnQHaHVic3BvdAVpbWFnZQxpbmZvLXJvdW5kZWQFanVpY2UDa2V5BW11c2ljCm5vZGUtbWludXMJbm9kZS1wbHVzB3BhY2thZ2ULcGFwZXItcGxhbmUGcGVuY2lsBnBpY2tlcgRwbGFuBHBsdWcKcGx1cy1taW51cxRwbHVzLXJvdW5kZWQtb3V0bGluZQdwcmVzZW50CXNjaGVtYXRpYwZzZWFyY2gHc2VnbWVudA1zZXJ2ZXItc2VhcmNoB3NpZGViYXIGc2lnbmFsB3NpbGVuY2UFc3BhZGUHc3BlYWtlcgZzdGFja3MGc3RyaXBlBHRleHQHdGh1bmRlcgd0b3JuYWRvBXRydWNrBHR1YmULdW5wcm90ZWN0ZWQIdmVyaWZpZWQMdmlkZW8tY2FtZXJhBndhbGxldAp3YXRjaC1oYW5kDHdhdGNoLXBvY2tldAp3YXRlci1kcm9wBXdhdmVzB3dlYmhvb2sEd2luZAAAAA==)
7609
+ format("truetype");
6902
7610
  }
6903
- };
6904
- var defaultSettings = {
7611
+
7612
+ i[class^="i-"]:before,
7613
+ i[class*=" i-"]:before {
7614
+ font-family: icons !important;
7615
+ font-style: normal;
7616
+ font-weight: normal !important;
7617
+ -webkit-font-smoothing: antialiased;
7618
+ -moz-osx-font-smoothing: grayscale;
7619
+ }
7620
+
7621
+ .i-alarm:before {
7622
+ content: "\\f101";
7623
+ }
7624
+ .i-arrow-curved:before {
7625
+ content: "\\f102";
7626
+ }
7627
+ .i-arrow-down:before {
7628
+ content: "\\f103";
7629
+ }
7630
+ .i-arrow-left:before {
7631
+ content: "\\f104";
7632
+ }
7633
+ .i-arrow-right:before {
7634
+ content: "\\f105";
7635
+ }
7636
+ .i-arrow-up:before {
7637
+ content: "\\f106";
7638
+ }
7639
+ .i-arrow-upward:before {
7640
+ content: "\\f107";
7641
+ }
7642
+ .i-backspace:before {
7643
+ content: "\\f108";
7644
+ }
7645
+ .i-bell:before {
7646
+ content: "\\f109";
7647
+ }
7648
+ .i-board:before {
7649
+ content: "\\f10a";
7650
+ }
7651
+ .i-bookmark:before {
7652
+ content: "\\f10b";
7653
+ }
7654
+ .i-boolean-on:before {
7655
+ content: "\\f10c";
7656
+ }
7657
+ .i-boolean:before {
7658
+ content: "\\f10d";
7659
+ }
7660
+ .i-bulb:before {
7661
+ content: "\\f10e";
7662
+ }
7663
+ .i-burger:before {
7664
+ content: "\\f10f";
7665
+ }
7666
+ .i-check-rounded:before {
7667
+ content: "\\f110";
7668
+ }
7669
+ .i-check:before {
7670
+ content: "\\f111";
7671
+ }
7672
+ .i-chevron-down:before {
7673
+ content: "\\f112";
7674
+ }
7675
+ .i-chevron-left:before {
7676
+ content: "\\f113";
7677
+ }
7678
+ .i-chevron-right:before {
7679
+ content: "\\f114";
7680
+ }
7681
+ .i-chevron-up:before {
7682
+ content: "\\f115";
7683
+ }
7684
+ .i-chip:before {
7685
+ content: "\\f116";
7686
+ }
7687
+ .i-chips:before {
7688
+ content: "\\f117";
7689
+ }
7690
+ .i-close-rounded-filled:before {
7691
+ content: "\\f118";
7692
+ }
7693
+ .i-close:before {
7694
+ content: "\\f119";
7695
+ }
7696
+ .i-cloud-up:before {
7697
+ content: "\\f11a";
7698
+ }
7699
+ .i-club:before {
7700
+ content: "\\f11b";
7701
+ }
7702
+ .i-cmd:before {
7703
+ content: "\\f11c";
7704
+ }
7705
+ .i-code:before {
7706
+ content: "\\f11d";
7707
+ }
7708
+ .i-coffee:before {
7709
+ content: "\\f11e";
7710
+ }
7711
+ .i-cog:before {
7712
+ content: "\\f11f";
7713
+ }
7714
+ .i-collapse-empty:before {
7715
+ content: "\\f120";
7716
+ }
7717
+ .i-collapse:before {
7718
+ content: "\\f121";
7719
+ }
7720
+ .i-compass:before {
7721
+ content: "\\f122";
7722
+ }
7723
+ .i-connection:before {
7724
+ content: "\\f123";
7725
+ }
7726
+ .i-copy:before {
7727
+ content: "\\f124";
7728
+ }
7729
+ .i-cylnder:before {
7730
+ content: "\\f125";
7731
+ }
7732
+ .i-diamond:before {
7733
+ content: "\\f126";
7734
+ }
7735
+ .i-dollar-rounded:before {
7736
+ content: "\\f127";
7737
+ }
7738
+ .i-dots-horizontal:before {
7739
+ content: "\\f128";
7740
+ }
7741
+ .i-dots-vertical:before {
7742
+ content: "\\f129";
7743
+ }
7744
+ .i-entitlements:before {
7745
+ content: "\\f12a";
7746
+ }
7747
+ .i-equalizer:before {
7748
+ content: "\\f12b";
7749
+ }
7750
+ .i-exclamation-rounded-filled:before {
7751
+ content: "\\f12c";
7752
+ }
7753
+ .i-eye:before {
7754
+ content: "\\f12d";
7755
+ }
7756
+ .i-filter:before {
7757
+ content: "\\f12e";
7758
+ }
7759
+ .i-folder-minus:before {
7760
+ content: "\\f12f";
7761
+ }
7762
+ .i-folder-plus:before {
7763
+ content: "\\f130";
7764
+ }
7765
+ .i-folder:before {
7766
+ content: "\\f131";
7767
+ }
7768
+ .i-glasses:before {
7769
+ content: "\\f132";
7770
+ }
7771
+ .i-globe:before {
7772
+ content: "\\f133";
7773
+ }
7774
+ .i-hammer:before {
7775
+ content: "\\f134";
7776
+ }
7777
+ .i-hash:before {
7778
+ content: "\\f135";
7779
+ }
7780
+ .i-heart:before {
7781
+ content: "\\f136";
7782
+ }
7783
+ .i-hubspot:before {
7784
+ content: "\\f137";
7785
+ }
7786
+ .i-image:before {
7787
+ content: "\\f138";
7788
+ }
7789
+ .i-info-rounded:before {
7790
+ content: "\\f139";
7791
+ }
7792
+ .i-juice:before {
7793
+ content: "\\f13a";
7794
+ }
7795
+ .i-key:before {
7796
+ content: "\\f13b";
7797
+ }
7798
+ .i-music:before {
7799
+ content: "\\f13c";
7800
+ }
7801
+ .i-node-minus:before {
7802
+ content: "\\f13d";
7803
+ }
7804
+ .i-node-plus:before {
7805
+ content: "\\f13e";
7806
+ }
7807
+ .i-package:before {
7808
+ content: "\\f13f";
7809
+ }
7810
+ .i-paper-plane:before {
7811
+ content: "\\f140";
7812
+ }
7813
+ .i-pencil:before {
7814
+ content: "\\f141";
7815
+ }
7816
+ .i-picker:before {
7817
+ content: "\\f142";
7818
+ }
7819
+ .i-plan:before {
7820
+ content: "\\f143";
7821
+ }
7822
+ .i-plug:before {
7823
+ content: "\\f144";
7824
+ }
7825
+ .i-plus-minus:before {
7826
+ content: "\\f145";
7827
+ }
7828
+ .i-plus-rounded-outline:before {
7829
+ content: "\\f146";
7830
+ }
7831
+ .i-present:before {
7832
+ content: "\\f147";
7833
+ }
7834
+ .i-schematic:before {
7835
+ content: "\\f148";
7836
+ }
7837
+ .i-search:before {
7838
+ content: "\\f149";
7839
+ }
7840
+ .i-segment:before {
7841
+ content: "\\f14a";
7842
+ }
7843
+ .i-server-search:before {
7844
+ content: "\\f14b";
7845
+ }
7846
+ .i-sidebar:before {
7847
+ content: "\\f14c";
7848
+ }
7849
+ .i-signal:before {
7850
+ content: "\\f14d";
7851
+ }
7852
+ .i-silence:before {
7853
+ content: "\\f14e";
7854
+ }
7855
+ .i-spade:before {
7856
+ content: "\\f14f";
7857
+ }
7858
+ .i-speaker:before {
7859
+ content: "\\f150";
7860
+ }
7861
+ .i-stacks:before {
7862
+ content: "\\f151";
7863
+ }
7864
+ .i-stripe:before {
7865
+ content: "\\f152";
7866
+ }
7867
+ .i-text:before {
7868
+ content: "\\f153";
7869
+ }
7870
+ .i-thunder:before {
7871
+ content: "\\f154";
7872
+ }
7873
+ .i-tornado:before {
7874
+ content: "\\f155";
7875
+ }
7876
+ .i-truck:before {
7877
+ content: "\\f156";
7878
+ }
7879
+ .i-tube:before {
7880
+ content: "\\f157";
7881
+ }
7882
+ .i-unprotected:before {
7883
+ content: "\\f158";
7884
+ }
7885
+ .i-verified:before {
7886
+ content: "\\f159";
7887
+ }
7888
+ .i-video-camera:before {
7889
+ content: "\\f15a";
7890
+ }
7891
+ .i-wallet:before {
7892
+ content: "\\f15b";
7893
+ }
7894
+ .i-watch-hand:before {
7895
+ content: "\\f15c";
7896
+ }
7897
+ .i-watch-pocket:before {
7898
+ content: "\\f15d";
7899
+ }
7900
+ .i-water-drop:before {
7901
+ content: "\\f15e";
7902
+ }
7903
+ .i-waves:before {
7904
+ content: "\\f15f";
7905
+ }
7906
+ .i-webhook:before {
7907
+ content: "\\f160";
7908
+ }
7909
+ .i-wind:before {
7910
+ content: "\\f161";
7911
+ }
7912
+ `;
7913
+ var defaultTheme = {
7914
+ numberOfColumns: 2,
7915
+ sectionLayout: "merged",
7916
+ colorMode: "light",
7917
+ primary: "#000000",
7918
+ secondary: "#000000",
7919
+ card: {
7920
+ background: "#FFFFFF",
7921
+ borderRadius: 10,
7922
+ hasShadow: true,
7923
+ padding: 45
7924
+ },
7925
+ typography: {
7926
+ heading1: {
7927
+ fontFamily: "Manrope",
7928
+ fontSize: 37,
7929
+ fontWeight: 800,
7930
+ color: "#000000"
7931
+ },
7932
+ heading2: {
7933
+ fontFamily: "Manrope",
7934
+ fontSize: 29,
7935
+ fontWeight: 800,
7936
+ color: "#000000"
7937
+ },
7938
+ heading3: {
7939
+ fontFamily: "Manrope",
7940
+ fontSize: 20,
7941
+ fontWeight: 600,
7942
+ color: "#000000"
7943
+ },
7944
+ heading4: {
7945
+ fontFamily: "Manrope",
7946
+ fontSize: 18,
7947
+ fontWeight: 800,
7948
+ color: "#000000"
7949
+ },
7950
+ heading5: {
7951
+ fontFamily: "Public Sans",
7952
+ fontSize: 17,
7953
+ fontWeight: 500,
7954
+ color: "#000000"
7955
+ },
7956
+ heading6: {
7957
+ fontFamily: "Public Sans",
7958
+ fontSize: 14,
7959
+ fontWeight: 400,
7960
+ color: "#8A8A8A"
7961
+ },
7962
+ text: {
7963
+ fontFamily: "Public Sans",
7964
+ fontSize: 16,
7965
+ fontWeight: 400,
7966
+ color: "#000000"
7967
+ },
7968
+ link: {
7969
+ fontFamily: "Inter",
7970
+ fontSize: 16,
7971
+ fontWeight: 400,
7972
+ color: "#194BFB"
7973
+ }
7974
+ }
7975
+ };
7976
+ var defaultSettings = {
6905
7977
  theme: defaultTheme
6906
7978
  };
6907
7979
  function isEditorState(obj) {
@@ -6929,11 +8001,9 @@ function parseEditorState(data) {
6929
8001
  });
6930
8002
  return arr;
6931
8003
  }
6932
- async function fetchComponent(id, accessToken, options) {
8004
+ async function fetchComponent(id, api) {
6933
8005
  const settings = { ...defaultSettings };
6934
8006
  const nodes = [];
6935
- const config = new Configuration({ ...options, apiKey: accessToken });
6936
- const api = new CheckoutApi(config);
6937
8007
  const response = await api.hydrateComponent({ componentId: id });
6938
8008
  const { data } = response;
6939
8009
  if (data.component?.ast) {
@@ -6943,7 +8013,7 @@ async function fetchComponent(id, accessToken, options) {
6943
8013
  });
6944
8014
  const ast = getEditorState(json);
6945
8015
  if (ast) {
6946
- Object.assign(settings, ast.ROOT.props);
8016
+ (0, import_lodash.default)(settings, ast.ROOT.props.settings);
6947
8017
  nodes.push(...parseEditorState(ast));
6948
8018
  }
6949
8019
  }
@@ -6959,7 +8029,10 @@ async function fetchComponent(id, accessToken, options) {
6959
8029
  };
6960
8030
  }
6961
8031
  var EmbedContext = (0, import_react2.createContext)({
6962
- data: {},
8032
+ api: null,
8033
+ data: {
8034
+ activePlans: []
8035
+ },
6963
8036
  nodes: [],
6964
8037
  settings: { ...defaultSettings },
6965
8038
  stripe: null,
@@ -6983,7 +8056,10 @@ var EmbedProvider = ({
6983
8056
  const styleRef = (0, import_react2.useRef)(null);
6984
8057
  const [state, setState] = (0, import_react2.useState)(() => {
6985
8058
  return {
6986
- data: {},
8059
+ api: null,
8060
+ data: {
8061
+ activePlans: []
8062
+ },
6987
8063
  nodes: [],
6988
8064
  settings: { ...defaultSettings },
6989
8065
  stripe: null,
@@ -7011,13 +8087,21 @@ var EmbedProvider = ({
7011
8087
  styleRef.current = style;
7012
8088
  }, []);
7013
8089
  (0, import_react2.useEffect)(() => {
7014
- if (!id || !accessToken) {
8090
+ if (!accessToken) {
8091
+ return;
8092
+ }
8093
+ const config = new Configuration({ ...apiConfig, apiKey: accessToken });
8094
+ const api = new CheckoutApi(config);
8095
+ setState((prev2) => ({ ...prev2, api }));
8096
+ }, [accessToken, apiConfig]);
8097
+ (0, import_react2.useEffect)(() => {
8098
+ if (!id || !state.api) {
7015
8099
  return;
7016
8100
  }
7017
- fetchComponent(id, accessToken, apiConfig).then(async (resolvedData) => {
8101
+ fetchComponent(id, state.api).then(async (resolvedData) => {
7018
8102
  setState((prev2) => ({ ...prev2, ...resolvedData }));
7019
8103
  }).catch((error) => setState((prev2) => ({ ...prev2, error })));
7020
- }, [id, accessToken, apiConfig]);
8104
+ }, [id, state.api]);
7021
8105
  (0, import_react2.useEffect)(() => {
7022
8106
  const fontSet = /* @__PURE__ */ new Set([]);
7023
8107
  Object.values(state.settings.theme.typography).forEach(({ fontFamily }) => {
@@ -7032,19 +8116,21 @@ var EmbedProvider = ({
7032
8116
  }, [state.settings.theme.typography]);
7033
8117
  const setData = (0, import_react2.useCallback)(
7034
8118
  (data) => {
7035
- setState((prev2) => ({
7036
- ...prev2,
7037
- data: Object.assign({}, data)
7038
- }));
8119
+ setState((prev2) => {
8120
+ const updated = { ...prev2 };
8121
+ (0, import_lodash.default)(updated.data, data);
8122
+ return updated;
8123
+ });
7039
8124
  },
7040
8125
  [setState]
7041
8126
  );
7042
8127
  const updateSettings = (0, import_react2.useCallback)(
7043
8128
  (settings) => {
7044
- setState((prev2) => ({
7045
- ...prev2,
7046
- settings: Object.assign({}, prev2.settings, settings)
7047
- }));
8129
+ setState((prev2) => {
8130
+ const updated = { ...prev2 };
8131
+ (0, import_lodash.default)(updated.settings, settings);
8132
+ return updated;
8133
+ });
7048
8134
  },
7049
8135
  [setState]
7050
8136
  );
@@ -7097,9 +8183,9 @@ var EmbedProvider = ({
7097
8183
  }
7098
8184
  }
7099
8185
  },
7100
- ...state.data.stripeEmbed?.customerEkey && {
7101
- clientSecret: state.data.stripeEmbed.customerEkey
7102
- }
8186
+ ...state.data.stripeEmbed?.setupIntentClientSecret ? {
8187
+ clientSecret: state.data.stripeEmbed?.setupIntentClientSecret
8188
+ } : { mode: "payment", currency: "usd", amount: 999999 }
7103
8189
  },
7104
8190
  children
7105
8191
  }
@@ -7111,6 +8197,7 @@ var EmbedProvider = ({
7111
8197
  EmbedContext.Provider,
7112
8198
  {
7113
8199
  value: {
8200
+ api: state.api,
7114
8201
  data: state.data,
7115
8202
  nodes: state.nodes,
7116
8203
  settings: state.settings,
@@ -7122,7 +8209,10 @@ var EmbedProvider = ({
7122
8209
  setStripe,
7123
8210
  setLayout
7124
8211
  },
7125
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ot, { theme: state.settings.theme, children: renderChildren() })
8212
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ot, { theme: state.settings.theme, children: [
8213
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GlobalStyle, {}),
8214
+ renderChildren()
8215
+ ] })
7126
8216
  }
7127
8217
  );
7128
8218
  };
@@ -7157,11 +8247,11 @@ var require_browser_polyfill = __commonJS2({
7157
8247
  "node_modules/cross-fetch/dist/browser-polyfill.js"(exports) {
7158
8248
  (function(self2) {
7159
8249
  var irrelevant = function(exports2) {
7160
- var global = typeof globalThis !== "undefined" && globalThis || typeof self2 !== "undefined" && self2 || typeof global !== "undefined" && global;
8250
+ var global2 = typeof globalThis !== "undefined" && globalThis || typeof self2 !== "undefined" && self2 || typeof global2 !== "undefined" && global2;
7161
8251
  var support = {
7162
- searchParams: "URLSearchParams" in global,
7163
- iterable: "Symbol" in global && "iterator" in Symbol,
7164
- blob: "FileReader" in global && "Blob" in global && function() {
8252
+ searchParams: "URLSearchParams" in global2,
8253
+ iterable: "Symbol" in global2 && "iterator" in Symbol,
8254
+ blob: "FileReader" in global2 && "Blob" in global2 && function() {
7165
8255
  try {
7166
8256
  new Blob();
7167
8257
  return true;
@@ -7169,8 +8259,8 @@ var require_browser_polyfill = __commonJS2({
7169
8259
  return false;
7170
8260
  }
7171
8261
  }(),
7172
- formData: "FormData" in global,
7173
- arrayBuffer: "ArrayBuffer" in global
8262
+ formData: "FormData" in global2,
8263
+ arrayBuffer: "ArrayBuffer" in global2
7174
8264
  };
7175
8265
  function isDataView(obj) {
7176
8266
  return obj && DataView.prototype.isPrototypeOf(obj);
@@ -7547,7 +8637,7 @@ var require_browser_polyfill = __commonJS2({
7547
8637
  }
7548
8638
  return new Response(null, { status, headers: { location: url } });
7549
8639
  };
7550
- exports2.DOMException = global.DOMException;
8640
+ exports2.DOMException = global2.DOMException;
7551
8641
  try {
7552
8642
  new exports2.DOMException();
7553
8643
  } catch (err2) {
@@ -7599,7 +8689,7 @@ var require_browser_polyfill = __commonJS2({
7599
8689
  };
7600
8690
  function fixUrl(url) {
7601
8691
  try {
7602
- return url === "" && global.location.href ? global.location.href : url;
8692
+ return url === "" && global2.location.href ? global2.location.href : url;
7603
8693
  } catch (e) {
7604
8694
  return url;
7605
8695
  }
@@ -7638,11 +8728,11 @@ var require_browser_polyfill = __commonJS2({
7638
8728
  });
7639
8729
  }
7640
8730
  fetch2.polyfill = true;
7641
- if (!global.fetch) {
7642
- global.fetch = fetch2;
7643
- global.Headers = Headers;
7644
- global.Request = Request;
7645
- global.Response = Response;
8731
+ if (!global2.fetch) {
8732
+ global2.fetch = fetch2;
8733
+ global2.Headers = Headers;
8734
+ global2.Request = Request;
8735
+ global2.Response = Response;
7646
8736
  }
7647
8737
  exports2.Headers = Headers;
7648
8738
  exports2.Request = Request;
@@ -8061,43 +9151,38 @@ var useSchematicFlag = (key, opts) => {
8061
9151
  };
8062
9152
 
8063
9153
  // src/components/elements/plan-manager/PlanManager.tsx
8064
- var import_react7 = require("react");
9154
+ var import_react8 = require("react");
8065
9155
  var import_react_dom = require("react-dom");
8066
9156
 
8067
9157
  // src/utils/color.ts
8068
9158
  function hexToHSL(color) {
8069
9159
  let r2 = 0;
8070
9160
  let g2 = 0;
8071
- let b = 0;
9161
+ let b2 = 0;
8072
9162
  if (color.length == 4) {
8073
9163
  r2 = parseInt("0x" + color[1] + color[1]);
8074
9164
  g2 = parseInt("0x" + color[2] + color[2]);
8075
- b = parseInt("0x" + color[3] + color[3]);
9165
+ b2 = parseInt("0x" + color[3] + color[3]);
8076
9166
  } else if (color.length == 7) {
8077
9167
  r2 = parseInt("0x" + color[1] + color[2]);
8078
9168
  g2 = parseInt("0x" + color[3] + color[4]);
8079
- b = parseInt("0x" + color[5] + color[6]);
9169
+ b2 = parseInt("0x" + color[5] + color[6]);
8080
9170
  }
8081
9171
  r2 /= 255;
8082
9172
  g2 /= 255;
8083
- b /= 255;
8084
- const cmin = Math.min(r2, g2, b);
8085
- const cmax = Math.max(r2, g2, b);
9173
+ b2 /= 255;
9174
+ const cmin = Math.min(r2, g2, b2);
9175
+ const cmax = Math.max(r2, g2, b2);
8086
9176
  const delta = cmax - cmin;
8087
9177
  let h = 0;
8088
9178
  let s2 = 0;
8089
9179
  let l2 = 0;
8090
- if (delta == 0)
8091
- h = 0;
8092
- else if (cmax == r2)
8093
- h = (g2 - b) / delta % 6;
8094
- else if (cmax == g2)
8095
- h = (b - r2) / delta + 2;
8096
- else
8097
- h = (r2 - g2) / delta + 4;
9180
+ if (delta == 0) h = 0;
9181
+ else if (cmax == r2) h = (g2 - b2) / delta % 6;
9182
+ else if (cmax == g2) h = (b2 - r2) / delta + 2;
9183
+ else h = (r2 - g2) / delta + 4;
8098
9184
  h = Math.round(h * 60);
8099
- if (h < 0)
8100
- h += 360;
9185
+ if (h < 0) h += 360;
8101
9186
  l2 = (cmax + cmin) / 2;
8102
9187
  s2 = delta == 0 ? 0 : delta / (1 - Math.abs(2 * l2 - 1));
8103
9188
  s2 = +(s2 * 100).toFixed(1);
@@ -8112,41 +9197,38 @@ function hslToHex({ h, s: s2, l: l2 }) {
8112
9197
  const m2 = l2 - c2 / 2;
8113
9198
  let r2 = 0;
8114
9199
  let g2 = 0;
8115
- let b = 0;
9200
+ let b2 = 0;
8116
9201
  if (0 <= h && h < 60) {
8117
9202
  r2 = c2;
8118
9203
  g2 = x2;
8119
- b = 0;
9204
+ b2 = 0;
8120
9205
  } else if (60 <= h && h < 120) {
8121
9206
  r2 = x2;
8122
9207
  g2 = c2;
8123
- b = 0;
9208
+ b2 = 0;
8124
9209
  } else if (120 <= h && h < 180) {
8125
9210
  r2 = 0;
8126
9211
  g2 = c2;
8127
- b = x2;
9212
+ b2 = x2;
8128
9213
  } else if (180 <= h && h < 240) {
8129
9214
  r2 = 0;
8130
9215
  g2 = x2;
8131
- b = c2;
9216
+ b2 = c2;
8132
9217
  } else if (240 <= h && h < 300) {
8133
9218
  r2 = x2;
8134
9219
  g2 = 0;
8135
- b = c2;
9220
+ b2 = c2;
8136
9221
  } else if (300 <= h && h < 360) {
8137
9222
  r2 = c2;
8138
9223
  g2 = 0;
8139
- b = x2;
9224
+ b2 = x2;
8140
9225
  }
8141
9226
  let rs = Math.round((r2 + m2) * 255).toString(16);
8142
9227
  let gs = Math.round((g2 + m2) * 255).toString(16);
8143
- let bs = Math.round((b + m2) * 255).toString(16);
8144
- if (rs.length == 1)
8145
- rs = "0" + rs;
8146
- if (gs.length == 1)
8147
- gs = "0" + gs;
8148
- if (bs.length == 1)
8149
- bs = "0" + bs;
9228
+ let bs = Math.round((b2 + m2) * 255).toString(16);
9229
+ if (rs.length == 1) rs = "0" + rs;
9230
+ if (gs.length == 1) gs = "0" + gs;
9231
+ if (bs.length == 1) bs = "0" + bs;
8150
9232
  return "#" + rs + gs + bs;
8151
9233
  }
8152
9234
  function adjustLightness(color, amount) {
@@ -8173,6 +9255,34 @@ function toPrettyDate(date) {
8173
9255
  function camelToHyphen(str) {
8174
9256
  return str.replace(/([a-z][A-Z])/g, (g2) => `${g2[0]}-${g2[1].toLowerCase()}`);
8175
9257
  }
9258
+ function formatCurrency(amount) {
9259
+ try {
9260
+ const dollars = amount / 100;
9261
+ const formatValue = (value, symbol) => {
9262
+ let formatted = value.toFixed(1);
9263
+ if (formatted.endsWith(".0")) {
9264
+ formatted = formatted.slice(0, -2);
9265
+ }
9266
+ return `$${formatted}${symbol}`;
9267
+ };
9268
+ if (dollars >= 1e6) {
9269
+ return formatValue(dollars / 1e6, "M");
9270
+ } else if (dollars >= 1e3) {
9271
+ return formatValue(dollars / 1e3, "k");
9272
+ } else {
9273
+ return new Intl.NumberFormat("en-US", {
9274
+ style: "currency",
9275
+ currency: "USD"
9276
+ }).format(dollars);
9277
+ }
9278
+ } catch (error) {
9279
+ console.error("Error formatting currency", error);
9280
+ return new Intl.NumberFormat("en-US", {
9281
+ style: "currency",
9282
+ currency: "USD"
9283
+ }).format(amount / 100);
9284
+ }
9285
+ }
8176
9286
 
8177
9287
  // src/const/index.ts
8178
9288
  var TEXT_BASE_SIZE = 16;
@@ -8473,141 +9583,53 @@ var ProgressBar = ({
8473
9583
  );
8474
9584
  };
8475
9585
 
8476
- // src/components/elements/plan-manager/CheckoutForm.tsx
9586
+ // src/components/elements/plan-manager/CheckoutDialog.tsx
9587
+ var import_react7 = require("react");
9588
+
9589
+ // src/components/elements/plan-manager/PaymentForm.tsx
8477
9590
  var import_react6 = require("react");
8478
9591
  var import_react_stripe_js2 = require("@stripe/react-stripe-js");
8479
9592
  var import_react_stripe_js3 = require("@stripe/react-stripe-js");
8480
- var import_jsx_runtime7 = require("react/jsx-runtime");
8481
- var CheckoutForm = () => {
8482
- const stripe = (0, import_react_stripe_js3.useStripe)();
8483
- const elements = (0, import_react_stripe_js3.useElements)();
8484
- const [message, setMessage] = (0, import_react6.useState)(null);
8485
- const [isLoading, setIsLoading] = (0, import_react6.useState)(false);
8486
- const handleSubmit = async (event) => {
8487
- event.preventDefault();
8488
- if (!stripe || !elements) {
8489
- return;
8490
- }
8491
- setIsLoading(true);
8492
- const { error } = await stripe.confirmPayment({
8493
- elements,
8494
- confirmParams: {
8495
- return_url: window.location.href
9593
+
9594
+ // src/components/elements/plan-manager/styles.ts
9595
+ var StyledButton = dt(Button2)`
9596
+ font-family: "Public Sans", sans-serif;
9597
+ font-weight: 500;
9598
+ text-align: center;
9599
+ width: 100%;
9600
+ ${({ disabled, $color = "primary", theme }) => {
9601
+ const { l: l2 } = hexToHSL(theme[$color]);
9602
+ const textColor = disabled ? "#989898" : l2 > 50 ? "#000000" : "#FFFFFF";
9603
+ return lt`
9604
+ color: ${textColor};
9605
+
9606
+ ${Text} {
9607
+ color: ${textColor};
8496
9608
  }
8497
- });
8498
- if (error.type === "card_error" || error.type === "validation_error") {
8499
- setMessage(error.message);
8500
- } else {
8501
- setMessage("An unexpected error occured.");
8502
- }
8503
- setIsLoading(false);
8504
- };
8505
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
8506
- "form",
8507
- {
8508
- id: "payment-form",
8509
- onSubmit: handleSubmit,
8510
- style: {
8511
- display: "flex",
8512
- flexDirection: "column",
8513
- height: "100%"
8514
- },
8515
- children: [
8516
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
8517
- Box,
8518
- {
8519
- $fontSize: "18px",
8520
- $marginBottom: "1.5rem",
8521
- $display: "inline-block",
8522
- $width: "100%",
8523
- children: [
8524
- "Add payment method",
8525
- " "
8526
- ]
8527
- }
8528
- ),
8529
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
8530
- Flex,
8531
- {
8532
- $flexDirection: "column",
8533
- $gap: "1.5rem",
8534
- $marginBottom: "1.5rem",
8535
- $width: "100%",
8536
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
8537
- import_react_stripe_js2.LinkAuthenticationElement,
8538
- {
8539
- id: "link-authentication-element"
8540
- }
8541
- )
8542
- }
8543
- ),
8544
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Flex, { $flexDirection: "column", $width: "100%", $flex: "1", $height: "100%", children: [
8545
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_react_stripe_js2.PaymentElement, { id: "payment-element" }),
8546
- message && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { id: "payment-message", children: message })
8547
- ] }),
8548
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
8549
- "button",
8550
- {
8551
- disabled: isLoading || !stripe || !elements,
8552
- id: "submit",
8553
- style: {
8554
- backgroundColor: "#000000",
8555
- color: "#ffffff",
8556
- paddingTop: ".75rem",
8557
- paddingBottom: ".75rem",
8558
- fontSize: "15px",
8559
- width: "100%",
8560
- borderRadius: ".5rem",
8561
- textAlign: "center",
8562
- cursor: "pointer"
8563
- },
8564
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { id: "button-text", style: { marginTop: "2.5rem" }, children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "spinner", id: "spinner" }) : "Save payment method" })
8565
- }
8566
- ) })
8567
- ]
8568
- }
8569
- );
8570
- };
8571
-
8572
- // src/components/elements/plan-manager/styles.ts
8573
- var StyledButton = dt(Button2)`
8574
- font-family: "Public Sans", sans-serif;
8575
- font-weight: 500;
8576
- text-align: center;
8577
- width: 100%;
8578
-
8579
- ${({ $color = "primary", theme }) => {
8580
- const { l: l2 } = hexToHSL(theme[$color]);
8581
- const textColor = l2 > 50 ? "#000000" : "#FFFFFF";
8582
- return lt`
8583
- color: ${textColor};
8584
-
8585
- ${Text} {
8586
- color: ${textColor};
8587
- }
8588
- `;
8589
- }};
8590
-
8591
- ${({ $color = "primary", theme, $variant = "filled" }) => {
8592
- const color = theme[$color];
8593
- return $variant === "filled" ? lt`
8594
- background-color: ${color};
8595
- border-color: ${color};
8596
- ` : lt`
8597
- background-color: transparent;
8598
- border-color: #d2d2d2;
8599
- color: #194bfb;
8600
- ${Text} {
8601
- color: #194bfb;
9609
+ `;
9610
+ }};
9611
+
9612
+ ${({ disabled, $color = "primary", theme, $variant = "filled" }) => {
9613
+ const color = disabled ? "#EEEEEE" : theme[$color];
9614
+ return $variant === "filled" ? lt`
9615
+ background-color: ${color};
9616
+ border-color: ${color};
9617
+ ` : lt`
9618
+ background-color: transparent;
9619
+ border-color: #d2d2d2;
9620
+ color: #194bfb;
9621
+ ${Text} {
9622
+ color: #194bfb;
8602
9623
  }
8603
9624
  `;
8604
9625
  }}
8605
9626
 
8606
9627
  &:hover {
8607
- ${({ $color = "primary", theme, $variant = "filled" }) => {
9628
+ ${({ disabled }) => disabled && "cursor: not-allowed;"}
9629
+ ${({ disabled, $color = "primary", theme, $variant = "filled" }) => {
8608
9630
  const specified = theme[$color];
8609
9631
  const lightened = lighten(specified, 15);
8610
- const color = specified === lightened ? darken(specified, 15) : lightened;
9632
+ const color = disabled ? "#EEEEEE" : specified === lightened ? darken(specified, 15) : lightened;
8611
9633
  return $variant === "filled" ? lt`
8612
9634
  background-color: ${color};
8613
9635
  border-color: ${color};
@@ -8646,10 +9668,122 @@ var StyledButton = dt(Button2)`
8646
9668
  }}
8647
9669
  `;
8648
9670
 
8649
- // src/components/elements/plan-manager/PlanManager.tsx
9671
+ // src/components/elements/plan-manager/PaymentForm.tsx
9672
+ var import_jsx_runtime7 = require("react/jsx-runtime");
9673
+ var PaymentForm = ({ plan, period, onConfirm }) => {
9674
+ const stripe = (0, import_react_stripe_js3.useStripe)();
9675
+ const elements = (0, import_react_stripe_js3.useElements)();
9676
+ const { api, data } = useEmbed();
9677
+ const [message, setMessage] = (0, import_react6.useState)(null);
9678
+ const [isLoading, setIsLoading] = (0, import_react6.useState)(false);
9679
+ const [isConfirmed, setIsConfirmed] = (0, import_react6.useState)(false);
9680
+ const handleSubmit = async (event) => {
9681
+ event.preventDefault();
9682
+ const priceId = period === "month" ? plan.monthlyPrice?.id : plan.yearlyPrice?.id;
9683
+ if (!api || !stripe || !elements || !priceId) {
9684
+ return;
9685
+ }
9686
+ setIsLoading(true);
9687
+ setIsConfirmed(false);
9688
+ try {
9689
+ const { setupIntent, error } = await stripe.confirmSetup({
9690
+ elements,
9691
+ confirmParams: {
9692
+ return_url: window.location.href
9693
+ },
9694
+ redirect: "if_required"
9695
+ });
9696
+ if (onConfirm && typeof setupIntent?.payment_method === "string") {
9697
+ onConfirm(setupIntent.payment_method);
9698
+ setIsConfirmed(true);
9699
+ } else {
9700
+ }
9701
+ if (error?.type === "card_error" || error?.type === "validation_error") {
9702
+ setMessage(error.message);
9703
+ } else {
9704
+ setMessage("An unexpected error occured.");
9705
+ }
9706
+ setIsLoading(false);
9707
+ } catch (error) {
9708
+ if (error instanceof Error) {
9709
+ setMessage(error.message);
9710
+ } else {
9711
+ setMessage("An unexpected error occured.");
9712
+ }
9713
+ setIsLoading(false);
9714
+ }
9715
+ };
9716
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
9717
+ "form",
9718
+ {
9719
+ id: "payment-form",
9720
+ onSubmit: handleSubmit,
9721
+ style: {
9722
+ display: "flex",
9723
+ flexDirection: "column",
9724
+ height: "100%",
9725
+ overflowX: "hidden",
9726
+ overflowY: "auto"
9727
+ },
9728
+ children: [
9729
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
9730
+ Box,
9731
+ {
9732
+ $fontSize: "18px",
9733
+ $marginBottom: "1.5rem",
9734
+ $display: "inline-block",
9735
+ $width: "100%",
9736
+ children: [
9737
+ "Add payment method",
9738
+ " "
9739
+ ]
9740
+ }
9741
+ ),
9742
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
9743
+ Flex,
9744
+ {
9745
+ $flexDirection: "column",
9746
+ $gap: "1.5rem",
9747
+ $marginBottom: "1.5rem",
9748
+ $width: "100%",
9749
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
9750
+ import_react_stripe_js2.LinkAuthenticationElement,
9751
+ {
9752
+ id: "link-authentication-element"
9753
+ }
9754
+ )
9755
+ }
9756
+ ),
9757
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Flex, { $flexDirection: "column", $width: "100%", $flex: "1", $height: "100%", children: [
9758
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_react_stripe_js2.PaymentElement, { id: "payment-element" }),
9759
+ message && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { id: "payment-message", children: message })
9760
+ ] }),
9761
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
9762
+ StyledButton,
9763
+ {
9764
+ id: "submit",
9765
+ disabled: isLoading || !stripe || !elements || !data.stripeEmbed?.publishableKey || !data.stripeEmbed?.setupIntentClientSecret || isConfirmed,
9766
+ $size: "md",
9767
+ $color: "primary",
9768
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { id: "button-text", children: isLoading ? "Loading" : "Save payment method" })
9769
+ }
9770
+ ) })
9771
+ ]
9772
+ }
9773
+ );
9774
+ };
9775
+
9776
+ // src/components/elements/plan-manager/CheckoutDialog.tsx
8650
9777
  var import_jsx_runtime8 = require("react/jsx-runtime");
8651
- var OverlayHeader = ({ children }) => {
9778
+ var OverlayHeader = ({
9779
+ children,
9780
+ onClose
9781
+ }) => {
8652
9782
  const { setLayout } = useEmbed();
9783
+ const handleClose = (0, import_react7.useCallback)(() => {
9784
+ setLayout("portal");
9785
+ onClose?.();
9786
+ }, [setLayout, onClose]);
8653
9787
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8654
9788
  Flex,
8655
9789
  {
@@ -8665,24 +9799,18 @@ var OverlayHeader = ({ children }) => {
8665
9799
  $borderRadius: ".5rem .5rem 0 0",
8666
9800
  children: [
8667
9801
  children,
8668
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8669
- Box,
8670
- {
8671
- $cursor: "pointer",
8672
- onClick: () => {
8673
- setLayout("portal");
8674
- },
8675
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Icon2, { name: "close", style: { fontSize: 36, color: "#B8B8B8" } })
8676
- }
8677
- ) })
9802
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $cursor: "pointer", onClick: handleClose, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Icon2, { name: "close", style: { fontSize: 36, color: "#B8B8B8" } }) }) })
8678
9803
  ]
8679
9804
  }
8680
9805
  );
8681
9806
  };
8682
9807
  var OverlayWrapper = ({
8683
9808
  children,
8684
- size = "lg"
9809
+ size = "lg",
9810
+ onClose
8685
9811
  }) => {
9812
+ const { setLayout } = useEmbed();
9813
+ const ref = (0, import_react7.useRef)(null);
8686
9814
  const sizeWidthMap = {
8687
9815
  md: "700px",
8688
9816
  lg: "75%"
@@ -8695,9 +9823,28 @@ var OverlayWrapper = ({
8695
9823
  md: "auto",
8696
9824
  lg: "1140px"
8697
9825
  };
9826
+ const handleClose = (0, import_react7.useCallback)(() => {
9827
+ setLayout("portal");
9828
+ onClose?.();
9829
+ }, [setLayout, onClose]);
9830
+ (0, import_react7.useEffect)(() => {
9831
+ ref.current?.focus();
9832
+ }, []);
8698
9833
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8699
9834
  Box,
8700
9835
  {
9836
+ ref,
9837
+ tabIndex: 0,
9838
+ onClick: (event) => {
9839
+ if (event.target === event.currentTarget) {
9840
+ handleClose();
9841
+ }
9842
+ },
9843
+ onKeyDown: (event) => {
9844
+ if (event.key === "Escape") {
9845
+ handleClose();
9846
+ }
9847
+ },
8701
9848
  $position: "absolute",
8702
9849
  $top: "50%",
8703
9850
  $left: "50%",
@@ -8735,8 +9882,21 @@ var OverlayWrapper = ({
8735
9882
  var OverlaySideBar = ({
8736
9883
  pricePeriod,
8737
9884
  setPricePeriod,
8738
- setCheckoutStage
9885
+ checkoutStage,
9886
+ setCheckoutStage,
9887
+ currentPlan,
9888
+ selectedPlan,
9889
+ paymentMethodId
8739
9890
  }) => {
9891
+ const { api } = useEmbed();
9892
+ const savingsPercentage = (0, import_react7.useMemo)(() => {
9893
+ if (selectedPlan && pricePeriod === "month") {
9894
+ const monthly = (selectedPlan?.monthlyPrice?.price || 0) * 12;
9895
+ const yearly = selectedPlan?.yearlyPrice?.price || 0;
9896
+ return Math.round((monthly - yearly) / monthly * 1e4) / 100;
9897
+ }
9898
+ return 0;
9899
+ }, [selectedPlan, pricePeriod]);
8740
9900
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8741
9901
  Flex,
8742
9902
  {
@@ -8758,32 +9918,7 @@ var OverlaySideBar = ({
8758
9918
  $padding: "1.5rem",
8759
9919
  $borderBottom: "1px solid #DEDEDE",
8760
9920
  children: [
8761
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $justifyContent: "space-between", children: [
8762
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 20, $weight: 600, children: "Subscription" }),
8763
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8764
- Flex,
8765
- {
8766
- $border: "1px solid #D9D9D9",
8767
- $padding: ".15rem .45rem .15rem .55rem",
8768
- $alignItems: "center",
8769
- $borderRadius: "5px",
8770
- $fontSize: "12px",
8771
- children: [
8772
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $display: "inline-block", $marginRight: ".5rem", children: "$ USD" }),
8773
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8774
- Icon2,
8775
- {
8776
- name: "chevron-down",
8777
- style: {
8778
- fontSize: "20px",
8779
- lineHeight: "1em"
8780
- }
8781
- }
8782
- )
8783
- ]
8784
- }
8785
- )
8786
- ] }),
9921
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $flexDirection: "row", $justifyContent: "space-between", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 20, $weight: 600, children: "Subscription" }) }),
8787
9922
  /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8788
9923
  Flex,
8789
9924
  {
@@ -8821,7 +9956,11 @@ var OverlaySideBar = ({
8821
9956
  ]
8822
9957
  }
8823
9958
  ),
8824
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $fontSize: "11px", $color: "#194BFB", children: "Save up to 33% with yearly billing" })
9959
+ savingsPercentage > 0 && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $fontSize: "11px", $color: "#194BFB", children: [
9960
+ "Save up to ",
9961
+ savingsPercentage,
9962
+ "% with yearly billing"
9963
+ ] })
8825
9964
  ]
8826
9965
  }
8827
9966
  ),
@@ -8846,7 +9985,7 @@ var OverlaySideBar = ({
8846
9985
  $color: "#5D5D5D",
8847
9986
  $gap: ".5rem",
8848
9987
  children: [
8849
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9988
+ currentPlan && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8850
9989
  Flex,
8851
9990
  {
8852
9991
  $flexDirection: "row",
@@ -8855,50 +9994,56 @@ var OverlaySideBar = ({
8855
9994
  $fontSize: "14px",
8856
9995
  $color: "#5D5D5D",
8857
9996
  children: [
8858
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $fontSize: "14px", $color: "#5D5D5D", children: "Free" }),
8859
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $fontSize: "12px", $color: "#000000", children: [
8860
- "$0/",
8861
- pricePeriod
9997
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $fontSize: "14px", $color: "#5D5D5D", children: currentPlan.name }),
9998
+ typeof currentPlan.planPrice === "number" && currentPlan.planPeriod && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $fontSize: "12px", $color: "#000000", children: [
9999
+ formatCurrency(currentPlan.planPrice),
10000
+ "/",
10001
+ currentPlan.planPeriod
8862
10002
  ] })
8863
10003
  ]
8864
10004
  }
8865
10005
  ),
8866
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8867
- Box,
8868
- {
8869
- $width: "100%",
8870
- $textAlign: "left",
8871
- $opacity: "50%",
8872
- $marginBottom: "-.25rem",
8873
- $marginTop: "-.25rem",
8874
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8875
- Icon2,
8876
- {
8877
- name: "arrow-down",
8878
- style: {
8879
- display: "inline-block"
10006
+ selectedPlan && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
10007
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10008
+ Box,
10009
+ {
10010
+ $width: "100%",
10011
+ $textAlign: "left",
10012
+ $opacity: "50%",
10013
+ $marginBottom: "-.25rem",
10014
+ $marginTop: "-.25rem",
10015
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10016
+ Icon2,
10017
+ {
10018
+ name: "arrow-down",
10019
+ style: {
10020
+ display: "inline-block"
10021
+ }
8880
10022
  }
8881
- }
8882
- )
8883
- }
8884
- ),
8885
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
8886
- Flex,
8887
- {
8888
- $flexDirection: "row",
8889
- $alignItems: "center",
8890
- $justifyContent: "space-between",
8891
- $fontSize: "14px",
8892
- $color: "#5D5D5D",
8893
- children: [
8894
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $fontSize: "14px", $color: "#000000", $fontWeight: "600", children: "Professional" }),
8895
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $fontSize: "12px", $color: "#000000", children: [
8896
- "$285/",
8897
- pricePeriod
8898
- ] })
8899
- ]
8900
- }
8901
- )
10023
+ )
10024
+ }
10025
+ ),
10026
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10027
+ Flex,
10028
+ {
10029
+ $flexDirection: "row",
10030
+ $alignItems: "center",
10031
+ $justifyContent: "space-between",
10032
+ $fontSize: "14px",
10033
+ $color: "#5D5D5D",
10034
+ children: [
10035
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $fontSize: "14px", $color: "#000000", $fontWeight: "600", children: selectedPlan.name }),
10036
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $fontSize: "12px", $color: "#000000", children: [
10037
+ formatCurrency(
10038
+ (pricePeriod === "month" ? selectedPlan.monthlyPrice : selectedPlan.yearlyPrice)?.price ?? 0
10039
+ ),
10040
+ "/",
10041
+ pricePeriod
10042
+ ] })
10043
+ ]
10044
+ }
10045
+ )
10046
+ ] })
8902
10047
  ]
8903
10048
  }
8904
10049
  )
@@ -8915,25 +10060,60 @@ var OverlaySideBar = ({
8915
10060
  $height: "auto",
8916
10061
  $padding: "1.5rem",
8917
10062
  children: [
8918
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $fontSize: "12px", $color: "#5D5D5D", $justifyContent: "space-between", children: [
8919
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: [
8920
- "Monthly total:",
8921
- " "
8922
- ] }),
8923
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $fontSize: "12px", $color: "#000000", children: "$285/mo" })
8924
- ] }),
8925
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10063
+ selectedPlan && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10064
+ Flex,
10065
+ {
10066
+ $fontSize: "12px",
10067
+ $color: "#5D5D5D",
10068
+ $justifyContent: "space-between",
10069
+ children: [
10070
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: [
10071
+ "Monthly total:",
10072
+ " "
10073
+ ] }),
10074
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $fontSize: "12px", $color: "#000000", children: [
10075
+ formatCurrency(
10076
+ (pricePeriod === "month" ? selectedPlan.monthlyPrice : selectedPlan.yearlyPrice)?.price ?? 0
10077
+ ),
10078
+ "/",
10079
+ pricePeriod
10080
+ ] })
10081
+ ]
10082
+ }
10083
+ ),
10084
+ checkoutStage === "plan" ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
8926
10085
  StyledButton,
8927
10086
  {
8928
10087
  $size: "sm",
8929
10088
  onClick: () => {
8930
10089
  setCheckoutStage("checkout");
8931
10090
  },
8932
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $gap: ".5rem", $alignItems: "center", $justifyContent: "center", children: [
10091
+ ...!selectedPlan && { disabled: true },
10092
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $gap: "0.5rem", $alignItems: "center", $justifyContent: "center", children: [
8933
10093
  /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { children: "Next: Checkout" }),
8934
10094
  /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Icon2, { name: "arrow-right" })
8935
10095
  ] })
8936
10096
  }
10097
+ ) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10098
+ StyledButton,
10099
+ {
10100
+ disabled: !api || !selectedPlan || selectedPlan?.id === currentPlan?.id || !paymentMethodId,
10101
+ onClick: async () => {
10102
+ const priceId = (pricePeriod === "month" ? selectedPlan?.monthlyPrice : selectedPlan?.yearlyPrice)?.id;
10103
+ if (!api || !selectedPlan || !priceId || !paymentMethodId) {
10104
+ return;
10105
+ }
10106
+ await api.checkout({
10107
+ changeSubscriptionRequestBody: {
10108
+ newPlanId: selectedPlan.id,
10109
+ newPriceId: priceId,
10110
+ paymentMethodId
10111
+ }
10112
+ });
10113
+ },
10114
+ $size: "md",
10115
+ children: "Pay now"
10116
+ }
8937
10117
  ),
8938
10118
  /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: "Discounts & credits applied at checkout" })
8939
10119
  ]
@@ -8943,6 +10123,301 @@ var OverlaySideBar = ({
8943
10123
  }
8944
10124
  );
8945
10125
  };
10126
+ var CheckoutDialog = () => {
10127
+ const [checkoutStage, setCheckoutStage] = (0, import_react7.useState)(
10128
+ "plan"
10129
+ );
10130
+ const [planPeriod, setPlanPeriod] = (0, import_react7.useState)("month");
10131
+ const [selectedPlan, setSelectedPlan] = (0, import_react7.useState)();
10132
+ const [paymentMethodId, setPaymentMethodId] = (0, import_react7.useState)();
10133
+ const { data } = useEmbed();
10134
+ const { currentPlan, availablePlans } = (0, import_react7.useMemo)(() => {
10135
+ return {
10136
+ currentPlan: data.company?.plan,
10137
+ availablePlans: data.activePlans
10138
+ };
10139
+ }, [data.company, data.activePlans]);
10140
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(OverlayWrapper, { children: [
10141
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(OverlayHeader, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $gap: "1rem", children: [
10142
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $gap: "0.5rem", $alignItems: "center", children: [
10143
+ checkoutStage === "plan" ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10144
+ Box,
10145
+ {
10146
+ $width: "15px",
10147
+ $height: "15px",
10148
+ $backgroundColor: "white",
10149
+ $border: "2px solid #DDDDDD",
10150
+ $borderRadius: "999px"
10151
+ }
10152
+ ) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10153
+ IconRound,
10154
+ {
10155
+ name: "check",
10156
+ style: {
10157
+ color: "#FFFFFF",
10158
+ backgroundColor: "#DDDDDD",
10159
+ fontSize: 16,
10160
+ width: "1rem",
10161
+ height: "1rem"
10162
+ }
10163
+ }
10164
+ ),
10165
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10166
+ "div",
10167
+ {
10168
+ tabIndex: 0,
10169
+ ...checkoutStage === "plan" ? {
10170
+ style: {
10171
+ fontWeight: "700"
10172
+ }
10173
+ } : {
10174
+ style: {
10175
+ cursor: "pointer"
10176
+ },
10177
+ onClick: () => setCheckoutStage("plan")
10178
+ },
10179
+ children: "1. Select plan"
10180
+ }
10181
+ ),
10182
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10183
+ Icon2,
10184
+ {
10185
+ name: "chevron-right",
10186
+ style: { fontSize: 16, color: "#D0D0D0" }
10187
+ }
10188
+ )
10189
+ ] }),
10190
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $gap: "0.5rem", $alignItems: "center", children: [
10191
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10192
+ Box,
10193
+ {
10194
+ $width: "15px",
10195
+ $height: "15px",
10196
+ $border: "2px solid #DDDDDD",
10197
+ $borderRadius: "999px",
10198
+ $backgroundColor: "white"
10199
+ }
10200
+ ),
10201
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10202
+ "div",
10203
+ {
10204
+ tabIndex: 0,
10205
+ ...checkoutStage === "checkout" && {
10206
+ style: {
10207
+ fontWeight: "700"
10208
+ }
10209
+ },
10210
+ children: "2. Checkout"
10211
+ }
10212
+ )
10213
+ ] })
10214
+ ] }) }),
10215
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $height: "100%", children: [
10216
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10217
+ Flex,
10218
+ {
10219
+ $flexDirection: "column",
10220
+ $gap: "1rem",
10221
+ $padding: "2rem 2.5rem 2rem 2.5rem",
10222
+ $backgroundColor: "#FBFBFB",
10223
+ $borderRadius: "0 0.5rem 0",
10224
+ $flex: "1",
10225
+ $height: "100%",
10226
+ children: [
10227
+ checkoutStage === "plan" && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
10228
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "column", $gap: "1rem", $marginBottom: "1rem", children: [
10229
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10230
+ Text,
10231
+ {
10232
+ as: "h1",
10233
+ id: "select-plan-dialog-label",
10234
+ $size: 18,
10235
+ $marginBottom: ".5rem",
10236
+ children: "Select plan"
10237
+ }
10238
+ ),
10239
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10240
+ Text,
10241
+ {
10242
+ as: "p",
10243
+ id: "select-plan-dialog-description",
10244
+ $size: 14,
10245
+ $weight: 400,
10246
+ children: "Choose your base plan"
10247
+ }
10248
+ )
10249
+ ] }),
10250
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $flexDirection: "row", $gap: "1rem", $flex: "1", $height: "100%", children: availablePlans?.map((plan) => {
10251
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10252
+ Flex,
10253
+ {
10254
+ $height: "100%",
10255
+ $flexDirection: "column",
10256
+ $backgroundColor: "white",
10257
+ $flex: "1",
10258
+ $border: `2px solid ${plan.id === selectedPlan?.id ? "#194BFB" : "transparent"}`,
10259
+ $borderRadius: ".5rem",
10260
+ $boxShadow: "0px 1px 3px rgba(16, 24, 40, 0.1), 0px 1px 20px rgba(16, 24, 40, 0.06)",
10261
+ children: [
10262
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10263
+ Flex,
10264
+ {
10265
+ $flexDirection: "column",
10266
+ $position: "relative",
10267
+ $gap: "1rem",
10268
+ $width: "100%",
10269
+ $height: "auto",
10270
+ $padding: "2rem 1.5rem 1.5rem",
10271
+ $borderBottom: "1px solid #DEDEDE",
10272
+ children: [
10273
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 20, $weight: 600, children: plan.name }),
10274
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 14, children: plan.description }),
10275
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Text, { children: [
10276
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $display: "inline-block", $fontSize: "1.5rem", children: formatCurrency(
10277
+ (planPeriod === "month" ? plan.monthlyPrice : plan.yearlyPrice)?.price ?? 0
10278
+ ) }),
10279
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $display: "inline-block", $fontSize: ".75rem", children: [
10280
+ "/",
10281
+ planPeriod
10282
+ ] })
10283
+ ] }),
10284
+ (plan.current || plan.id === currentPlan?.id) && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10285
+ Flex,
10286
+ {
10287
+ $position: "absolute",
10288
+ $right: "1rem",
10289
+ $top: "1rem",
10290
+ $fontSize: ".625rem",
10291
+ $color: "white",
10292
+ $backgroundColor: "#194BFB",
10293
+ $borderRadius: "999px",
10294
+ $padding: ".125rem .85rem",
10295
+ children: "Current plan"
10296
+ }
10297
+ )
10298
+ ]
10299
+ }
10300
+ ),
10301
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10302
+ Flex,
10303
+ {
10304
+ $flexDirection: "column",
10305
+ $position: "relative",
10306
+ $gap: "0.5rem",
10307
+ $flex: "1",
10308
+ $width: "100%",
10309
+ $height: "auto",
10310
+ $padding: "1.5rem",
10311
+ children: plan.features.map((feature) => {
10312
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexShrink: "0", $gap: "1rem", children: [
10313
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10314
+ IconRound,
10315
+ {
10316
+ name: feature.icon,
10317
+ size: "tn",
10318
+ colors: ["#000000", "#F5F5F5"]
10319
+ }
10320
+ ),
10321
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: ".75rem", $color: "#00000", children: feature.name }) })
10322
+ ] }, feature.id);
10323
+ })
10324
+ }
10325
+ ),
10326
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10327
+ Flex,
10328
+ {
10329
+ $flexDirection: "column",
10330
+ $position: "relative",
10331
+ $gap: "1rem",
10332
+ $width: "100%",
10333
+ $height: "auto",
10334
+ $padding: "1.5rem",
10335
+ children: [
10336
+ plan.id === selectedPlan?.id && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10337
+ Flex,
10338
+ {
10339
+ $justifyContent: "center",
10340
+ $alignItems: "center",
10341
+ $gap: "0.25rem",
10342
+ $fontSize: "0.9375rem",
10343
+ $padding: "0.625rem 0",
10344
+ children: [
10345
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10346
+ Icon2,
10347
+ {
10348
+ name: "check-rounded",
10349
+ style: {
10350
+ fontSize: 20,
10351
+ lineHeight: "1",
10352
+ color: "#194BFB"
10353
+ }
10354
+ }
10355
+ ),
10356
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10357
+ "span",
10358
+ {
10359
+ style: {
10360
+ color: "#7B7B7B",
10361
+ lineHeight: "1.4"
10362
+ },
10363
+ children: "Selected"
10364
+ }
10365
+ )
10366
+ ]
10367
+ }
10368
+ ),
10369
+ !(plan.current || plan.id === currentPlan?.id) && plan.id !== selectedPlan?.id && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10370
+ StyledButton,
10371
+ {
10372
+ $size: "sm",
10373
+ $color: "primary",
10374
+ $variant: "outline",
10375
+ onClick: () => {
10376
+ setSelectedPlan(plan);
10377
+ },
10378
+ children: "Select"
10379
+ }
10380
+ )
10381
+ ]
10382
+ }
10383
+ )
10384
+ ]
10385
+ },
10386
+ plan.id
10387
+ );
10388
+ }) })
10389
+ ] }),
10390
+ selectedPlan && checkoutStage === "checkout" && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10391
+ PaymentForm,
10392
+ {
10393
+ plan: selectedPlan,
10394
+ period: planPeriod,
10395
+ onConfirm: (value) => {
10396
+ setPaymentMethodId(value);
10397
+ }
10398
+ }
10399
+ )
10400
+ ]
10401
+ }
10402
+ ),
10403
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10404
+ OverlaySideBar,
10405
+ {
10406
+ pricePeriod: planPeriod,
10407
+ setPricePeriod: setPlanPeriod,
10408
+ checkoutStage,
10409
+ setCheckoutStage,
10410
+ currentPlan,
10411
+ selectedPlan,
10412
+ paymentMethodId
10413
+ }
10414
+ )
10415
+ ] })
10416
+ ] });
10417
+ };
10418
+
10419
+ // src/components/elements/plan-manager/PlanManager.tsx
10420
+ var import_jsx_runtime9 = require("react/jsx-runtime");
8946
10421
  var resolveDesignProps = (props) => {
8947
10422
  return {
8948
10423
  header: {
@@ -8967,41 +10442,27 @@ var resolveDesignProps = (props) => {
8967
10442
  callToAction: {
8968
10443
  isVisible: props.callToAction?.isVisible ?? true,
8969
10444
  buttonSize: props.callToAction?.buttonSize ?? "md",
8970
- buttonStyle: props.callToAction?.buttonStyle ?? "secondary"
10445
+ buttonStyle: props.callToAction?.buttonStyle ?? "primary"
8971
10446
  }
8972
10447
  };
8973
10448
  };
8974
- var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal, ...rest }, ref) => {
10449
+ var PlanManager = (0, import_react8.forwardRef)(({ children, className, portal, ...rest }, ref) => {
8975
10450
  const props = resolveDesignProps(rest);
8976
- const [checkoutStage, setCheckoutStage] = (0, import_react7.useState)(
8977
- "plan"
8978
- );
8979
- const [planPeriod, setPlanPeriod] = (0, import_react7.useState)("month");
8980
10451
  const { data, settings, layout, stripe, setLayout } = useEmbed();
8981
- const { currentPlan, canChangePlan, availablePlans } = (0, import_react7.useMemo)(() => {
8982
- const canChangePlan2 = stripe !== null;
8983
- const availablePlans2 = data.activePlans?.map(
8984
- ({ name, description, current, monthlyPrice, yearlyPrice }) => ({
8985
- name,
8986
- description,
8987
- price: planPeriod === "month" ? monthlyPrice?.price : yearlyPrice?.price,
8988
- current
8989
- })
8990
- );
10452
+ const { currentPlan, canChangePlan } = (0, import_react8.useMemo)(() => {
8991
10453
  return {
8992
10454
  currentPlan: data.company?.plan,
8993
- canChangePlan: canChangePlan2,
8994
- availablePlans: availablePlans2
10455
+ canChangePlan: stripe !== null
8995
10456
  };
8996
- }, [data.company, data.activePlans, stripe, planPeriod]);
8997
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { ref, className, children: [
8998
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10457
+ }, [data.company, stripe]);
10458
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { ref, className, children: [
10459
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
8999
10460
  Flex,
9000
10461
  {
9001
10462
  $flexDirection: "column",
9002
10463
  $gap: "0.75rem",
9003
10464
  ...canChangePlan && { $margin: "0 0 0.5rem" },
9004
- children: props.header.isVisible && currentPlan && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10465
+ children: props.header.isVisible && currentPlan && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
9005
10466
  Flex,
9006
10467
  {
9007
10468
  $justifyContent: "space-between",
@@ -9009,8 +10470,8 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9009
10470
  $width: "100%",
9010
10471
  ...canChangePlan && { $margin: "0 0 1.5rem" },
9011
10472
  children: [
9012
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { children: [
9013
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $margin: "0 0 0.75rem", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10473
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { children: [
10474
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Box, { $margin: "0 0 0.75rem", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
9014
10475
  Text,
9015
10476
  {
9016
10477
  $font: settings.theme.typography[props.header.title.fontStyle].fontFamily,
@@ -9021,7 +10482,7 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9021
10482
  children: currentPlan.name
9022
10483
  }
9023
10484
  ) }),
9024
- props.header.description.isVisible && currentPlan.description && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10485
+ props.header.description.isVisible && currentPlan.description && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
9025
10486
  Text,
9026
10487
  {
9027
10488
  $font: settings.theme.typography[props.header.description.fontStyle].fontFamily,
@@ -9032,7 +10493,7 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9032
10493
  }
9033
10494
  )
9034
10495
  ] }),
9035
- props.header.price.isVisible && currentPlan.planPrice >= 0 && currentPlan.planPeriod && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
10496
+ props.header.price.isVisible && typeof currentPlan.planPrice === "number" && currentPlan.planPeriod && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
9036
10497
  Text,
9037
10498
  {
9038
10499
  $font: settings.theme.typography[props.header.price.fontStyle].fontFamily,
@@ -9040,8 +10501,7 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9040
10501
  $weight: settings.theme.typography[props.header.price.fontStyle].fontWeight,
9041
10502
  $color: settings.theme.typography[props.header.price.fontStyle].color,
9042
10503
  children: [
9043
- "$",
9044
- currentPlan.planPrice,
10504
+ formatCurrency(currentPlan.planPrice),
9045
10505
  "/",
9046
10506
  currentPlan.planPeriod
9047
10507
  ]
@@ -9052,7 +10512,7 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9052
10512
  )
9053
10513
  }
9054
10514
  ),
9055
- canChangePlan && props.callToAction.isVisible && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10515
+ canChangePlan && props.callToAction.isVisible && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
9056
10516
  StyledButton,
9057
10517
  {
9058
10518
  onClick: () => {
@@ -9060,7 +10520,7 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9060
10520
  },
9061
10521
  $size: props.callToAction.buttonSize,
9062
10522
  $color: props.callToAction.buttonStyle,
9063
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
10523
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
9064
10524
  Text,
9065
10525
  {
9066
10526
  $font: settings.theme.typography.text.fontFamily,
@@ -9071,277 +10531,13 @@ var PlanManager = (0, import_react7.forwardRef)(({ children, className, portal,
9071
10531
  )
9072
10532
  }
9073
10533
  ),
9074
- canChangePlan && layout === "checkout" && (0, import_react_dom.createPortal)(
9075
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(OverlayWrapper, { children: [
9076
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(OverlayHeader, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $gap: "1rem", children: [
9077
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $gap: "0.5rem", $alignItems: "center", children: [
9078
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9079
- Box,
9080
- {
9081
- $width: "15px",
9082
- $height: "15px",
9083
- $border: "2px solid #DDDDDD",
9084
- $borderRadius: "999px",
9085
- $backgroundColor: "white"
9086
- }
9087
- ),
9088
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9089
- "div",
9090
- {
9091
- ...checkoutStage === "plan" && {
9092
- style: {
9093
- fontWeight: "700"
9094
- }
9095
- },
9096
- children: "1. Select plan"
9097
- }
9098
- ),
9099
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9100
- Icon2,
9101
- {
9102
- name: "chevron-right",
9103
- style: { fontSize: 16, color: "#D0D0D0" }
9104
- }
9105
- )
9106
- ] }),
9107
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $gap: "0.5rem", $alignItems: "center", children: [
9108
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9109
- Box,
9110
- {
9111
- $width: "15px",
9112
- $height: "15px",
9113
- $border: "2px solid #DDDDDD",
9114
- $borderRadius: "999px",
9115
- $backgroundColor: "white"
9116
- }
9117
- ),
9118
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9119
- "div",
9120
- {
9121
- ...checkoutStage === "checkout" && {
9122
- style: {
9123
- fontWeight: "700"
9124
- }
9125
- },
9126
- children: "2. Checkout"
9127
- }
9128
- ),
9129
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9130
- Icon2,
9131
- {
9132
- name: "chevron-right",
9133
- style: { fontSize: 16, color: "#D0D0D0" }
9134
- }
9135
- )
9136
- ] })
9137
- ] }) }),
9138
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexDirection: "row", $height: "100%", children: [
9139
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9140
- Flex,
9141
- {
9142
- $flexDirection: "column",
9143
- $gap: "1rem",
9144
- $padding: "2rem 2.5rem 2rem 2.5rem",
9145
- $backgroundColor: "#FBFBFB",
9146
- $borderRadius: "0 0.5rem 0",
9147
- $flex: "1",
9148
- $height: "100%",
9149
- children: [
9150
- checkoutStage === "plan" && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
9151
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9152
- Flex,
9153
- {
9154
- $flexDirection: "column",
9155
- $gap: "1rem",
9156
- $marginBottom: "1rem",
9157
- children: [
9158
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9159
- Text,
9160
- {
9161
- as: "h1",
9162
- id: "select-plan-dialog-label",
9163
- $size: 18,
9164
- $marginBottom: ".5rem",
9165
- children: "Select plan"
9166
- }
9167
- ),
9168
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9169
- Text,
9170
- {
9171
- as: "p",
9172
- id: "select-plan-dialog-description",
9173
- $size: 14,
9174
- $weight: 400,
9175
- children: "Choose your base plan"
9176
- }
9177
- )
9178
- ]
9179
- }
9180
- ),
9181
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9182
- Flex,
9183
- {
9184
- $flexDirection: "row",
9185
- $gap: "1rem",
9186
- $flex: "1",
9187
- $height: "100%",
9188
- children: availablePlans?.map((plan) => {
9189
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9190
- Flex,
9191
- {
9192
- $height: "100%",
9193
- $flexDirection: "column",
9194
- $backgroundColor: "white",
9195
- $border: plan?.current ? `2px solid #194BFB` : "",
9196
- $flex: "1",
9197
- $borderRadius: ".5rem",
9198
- $boxShadow: "0px 1px 3px rgba(16, 24, 40, 0.1), 0px 1px 20px rgba(16, 24, 40, 0.06)",
9199
- children: [
9200
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9201
- Flex,
9202
- {
9203
- $flexDirection: "column",
9204
- $position: "relative",
9205
- $gap: "1rem",
9206
- $width: "100%",
9207
- $height: "auto",
9208
- $padding: "1.5rem",
9209
- $borderBottom: "1px solid #DEDEDE",
9210
- children: [
9211
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 20, $weight: 600, children: plan?.name }),
9212
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: 14, children: plan?.description }),
9213
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Text, { children: [
9214
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $display: "inline-block", $fontSize: ".90rem", children: "$" }),
9215
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Box, { $display: "inline-block", $fontSize: "1.5rem", children: plan?.price ? plan.price : "350" }),
9216
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Box, { $display: "inline-block", $fontSize: ".75rem", children: [
9217
- "/",
9218
- planPeriod
9219
- ] })
9220
- ] }),
9221
- plan?.current && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9222
- Flex,
9223
- {
9224
- $position: "absolute",
9225
- $right: "1rem",
9226
- $top: "1rem",
9227
- $fontSize: ".75rem",
9228
- $color: "white",
9229
- $backgroundColor: "#194BFB",
9230
- $borderRadius: "999px",
9231
- $padding: ".125rem .85rem",
9232
- children: "Current plan"
9233
- }
9234
- )
9235
- ]
9236
- }
9237
- ),
9238
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9239
- Flex,
9240
- {
9241
- $flexDirection: "column",
9242
- $position: "relative",
9243
- $gap: "0.5rem",
9244
- $flex: "1",
9245
- $width: "100%",
9246
- $height: "auto",
9247
- $padding: "1.5rem",
9248
- children: [{}, {}, {}].map(() => {
9249
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Flex, { $flexShrink: "0", $gap: "1rem", children: [
9250
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9251
- IconRound,
9252
- {
9253
- name: "server-search",
9254
- size: "tn",
9255
- colors: ["#00000", "#F5F5F5"]
9256
- }
9257
- ),
9258
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Text, { $size: ".75rem", $color: "#00000", children: "5 Queries/mo" }) })
9259
- ] });
9260
- })
9261
- }
9262
- ),
9263
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9264
- Flex,
9265
- {
9266
- $flexDirection: "column",
9267
- $position: "relative",
9268
- $gap: "1rem",
9269
- $width: "100%",
9270
- $height: "auto",
9271
- $padding: "1.5rem",
9272
- children: plan.current ? /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
9273
- Flex,
9274
- {
9275
- $flexDirection: "row",
9276
- $gap: ".5rem",
9277
- $justifyContent: "center",
9278
- $alignItems: "center",
9279
- children: [
9280
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9281
- Icon2,
9282
- {
9283
- name: "check-rounded",
9284
- style: {
9285
- fontSize: 24,
9286
- lineHeight: "1em",
9287
- color: "#194BFB"
9288
- }
9289
- }
9290
- ),
9291
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9292
- "span",
9293
- {
9294
- style: {
9295
- fontSize: "1rem",
9296
- color: "#7B7B7B"
9297
- },
9298
- children: "Selected"
9299
- }
9300
- )
9301
- ]
9302
- }
9303
- ) : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9304
- StyledButton,
9305
- {
9306
- $size: "sm",
9307
- $color: "secondary",
9308
- $variant: "outline",
9309
- onClick: () => {
9310
- },
9311
- children: "Select"
9312
- }
9313
- )
9314
- }
9315
- )
9316
- ]
9317
- }
9318
- );
9319
- })
9320
- }
9321
- )
9322
- ] }),
9323
- checkoutStage === "checkout" && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CheckoutForm, {})
9324
- ]
9325
- }
9326
- ),
9327
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
9328
- OverlaySideBar,
9329
- {
9330
- pricePeriod: planPeriod,
9331
- setPricePeriod: setPlanPeriod,
9332
- setCheckoutStage
9333
- }
9334
- )
9335
- ] })
9336
- ] }),
9337
- portal || document.body
9338
- )
10534
+ canChangePlan && layout === "checkout" && (0, import_react_dom.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(CheckoutDialog, {}), portal || document.body)
9339
10535
  ] });
9340
10536
  });
9341
10537
 
9342
10538
  // src/components/elements/included-features/IncludedFeatures.tsx
9343
- var import_react8 = require("react");
9344
- var import_jsx_runtime9 = require("react/jsx-runtime");
10539
+ var import_react9 = require("react");
10540
+ var import_jsx_runtime10 = require("react/jsx-runtime");
9345
10541
  function resolveDesignProps2(props) {
9346
10542
  return {
9347
10543
  header: {
@@ -9364,10 +10560,10 @@ function resolveDesignProps2(props) {
9364
10560
  }
9365
10561
  };
9366
10562
  }
9367
- var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, ref) => {
10563
+ var IncludedFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref) => {
9368
10564
  const props = resolveDesignProps2(rest);
9369
10565
  const { data, settings } = useEmbed();
9370
- const features = (0, import_react8.useMemo)(() => {
10566
+ const features = (0, import_react9.useMemo)(() => {
9371
10567
  return (data.featureUsage?.features || []).map(
9372
10568
  ({
9373
10569
  access,
@@ -9394,8 +10590,8 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9394
10590
  }
9395
10591
  );
9396
10592
  }, [data.featureUsage]);
9397
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Flex, { ref, className, $flexDirection: "column", $gap: "1.5rem", children: [
9398
- props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
10593
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Flex, { ref, className, $flexDirection: "column", $gap: "1.5rem", children: [
10594
+ props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9399
10595
  Text,
9400
10596
  {
9401
10597
  $font: settings.theme.typography[props.header.fontStyle].fontFamily,
@@ -9412,7 +10608,7 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9412
10608
  }
9413
10609
  return [
9414
10610
  ...acc,
9415
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
10611
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
9416
10612
  Flex,
9417
10613
  {
9418
10614
  $flexWrap: "wrap",
@@ -9420,19 +10616,19 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9420
10616
  $alignItems: "center",
9421
10617
  $gap: "1rem",
9422
10618
  children: [
9423
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Flex, { $gap: "1rem", children: [
9424
- props.icons.isVisible && feature?.icon && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
10619
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Flex, { $gap: "1rem", children: [
10620
+ props.icons.isVisible && feature?.icon && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9425
10621
  IconRound,
9426
10622
  {
9427
10623
  name: feature.icon,
9428
10624
  size: "sm",
9429
10625
  colors: [
9430
- settings.theme.card.background,
9431
- settings.theme.primary
10626
+ settings.theme.primary,
10627
+ `${hexToHSL(settings.theme.card.background).l > 50 ? darken(settings.theme.card.background, 10) : lighten(settings.theme.card.background, 20)}`
9432
10628
  ]
9433
10629
  }
9434
10630
  ),
9435
- feature?.name && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
10631
+ feature?.name && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9436
10632
  Text,
9437
10633
  {
9438
10634
  $font: settings.theme.typography[props.icons.fontStyle].fontFamily,
@@ -9443,8 +10639,8 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9443
10639
  }
9444
10640
  ) })
9445
10641
  ] }),
9446
- allocationType === "numeric" && feature?.name && /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Box, { $textAlign: "right", children: [
9447
- props.entitlement.isVisible && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
10642
+ allocationType === "numeric" && feature?.name && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Box, { $textAlign: "right", children: [
10643
+ props.entitlement.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9448
10644
  Text,
9449
10645
  {
9450
10646
  as: Box,
@@ -9455,7 +10651,7 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9455
10651
  children: typeof allocation === "number" ? `${allocation} ${feature.name}` : `Unlimited ${feature.name}`
9456
10652
  }
9457
10653
  ),
9458
- props.usage.isVisible && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
10654
+ props.usage.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
9459
10655
  Text,
9460
10656
  {
9461
10657
  as: Box,
@@ -9479,8 +10675,8 @@ var IncludedFeatures = (0, import_react8.forwardRef)(({ className, ...rest }, re
9479
10675
  });
9480
10676
 
9481
10677
  // src/components/elements/metered-features/MeteredFeatures.tsx
9482
- var import_react9 = require("react");
9483
- var import_jsx_runtime10 = require("react/jsx-runtime");
10678
+ var import_react10 = require("react");
10679
+ var import_jsx_runtime11 = require("react/jsx-runtime");
9484
10680
  function resolveDesignProps3(props) {
9485
10681
  return {
9486
10682
  isVisible: props.isVisible ?? true,
@@ -9505,14 +10701,14 @@ function resolveDesignProps3(props) {
9505
10701
  callToAction: {
9506
10702
  isVisible: props.callToAction?.isVisible ?? true,
9507
10703
  buttonSize: props.callToAction?.buttonSize ?? "md",
9508
- buttonStyle: props.callToAction?.buttonStyle ?? "secondary"
10704
+ buttonStyle: props.callToAction?.buttonStyle ?? "primary"
9509
10705
  }
9510
10706
  };
9511
10707
  }
9512
- var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref) => {
10708
+ var MeteredFeatures = (0, import_react10.forwardRef)(({ className, ...rest }, ref) => {
9513
10709
  const props = resolveDesignProps3(rest);
9514
10710
  const { data, settings } = useEmbed();
9515
- const features = (0, import_react9.useMemo)(() => {
10711
+ const features = (0, import_react10.useMemo)(() => {
9516
10712
  return (data.featureUsage?.features || []).map(
9517
10713
  ({
9518
10714
  access,
@@ -9539,19 +10735,19 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9539
10735
  }
9540
10736
  );
9541
10737
  }, [data.featureUsage]);
9542
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Flex, { ref, className, $flexDirection: "column", $gap: "1.5rem", children: features.reduce(
10738
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Flex, { ref, className, $flexDirection: "column", $gap: "1.5rem", children: features.reduce(
9543
10739
  (acc, { allocation, allocationType, feature, usage }, index) => {
9544
10740
  if (!props.isVisible || allocationType !== "numeric" || typeof allocation !== "number") {
9545
10741
  return acc;
9546
10742
  }
9547
10743
  return [
9548
10744
  ...acc,
9549
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Flex, { $gap: "1.5rem", children: [
9550
- props.icon.isVisible && feature?.icon && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Box, { $flexShrink: "0", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(IconRound, { name: feature.icon, size: "sm" }) }),
9551
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Box, { $flexGrow: "1", children: [
9552
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Flex, { children: [
9553
- feature?.name && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Box, { $flexGrow: "1", children: [
9554
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
10745
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Flex, { $gap: "1.5rem", children: [
10746
+ props.icon.isVisible && feature?.icon && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Box, { $flexShrink: "0", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(IconRound, { name: feature.icon, size: "sm" }) }),
10747
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Box, { $flexGrow: "1", children: [
10748
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Flex, { children: [
10749
+ feature?.name && /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Box, { $flexGrow: "1", children: [
10750
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9555
10751
  Text,
9556
10752
  {
9557
10753
  as: Box,
@@ -9562,7 +10758,7 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9562
10758
  children: feature.name
9563
10759
  }
9564
10760
  ),
9565
- props.description.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
10761
+ props.description.isVisible && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9566
10762
  Text,
9567
10763
  {
9568
10764
  as: Box,
@@ -9574,8 +10770,8 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9574
10770
  }
9575
10771
  )
9576
10772
  ] }),
9577
- allocationType === "numeric" && feature?.name && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Box, { $textAlign: "right", children: [
9578
- props.allocation.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
10773
+ allocationType === "numeric" && feature?.name && /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Box, { $textAlign: "right", children: [
10774
+ props.allocation.isVisible && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9579
10775
  Text,
9580
10776
  {
9581
10777
  as: Box,
@@ -9586,7 +10782,7 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9586
10782
  children: typeof allocation === "number" ? `${allocation} ${feature.name}` : `Unlimited ${feature.name}`
9587
10783
  }
9588
10784
  ),
9589
- props.usage.isVisible && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
10785
+ props.usage.isVisible && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9590
10786
  Text,
9591
10787
  {
9592
10788
  as: Box,
@@ -9599,7 +10795,7 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9599
10795
  )
9600
10796
  ] })
9601
10797
  ] }),
9602
- typeof usage === "number" && typeof allocation === "number" && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
10798
+ typeof usage === "number" && typeof allocation === "number" && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Box, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9603
10799
  ProgressBar,
9604
10800
  {
9605
10801
  progress: usage / allocation * 100,
@@ -9617,8 +10813,8 @@ var MeteredFeatures = (0, import_react9.forwardRef)(({ className, ...rest }, ref
9617
10813
  });
9618
10814
 
9619
10815
  // src/components/elements/upcoming-bill/UpcomingBill.tsx
9620
- var import_react10 = require("react");
9621
- var import_jsx_runtime11 = require("react/jsx-runtime");
10816
+ var import_react11 = require("react");
10817
+ var import_jsx_runtime12 = require("react/jsx-runtime");
9622
10818
  function resolveDesignProps4(props) {
9623
10819
  return {
9624
10820
  header: {
@@ -9637,37 +10833,35 @@ function resolveDesignProps4(props) {
9637
10833
  }
9638
10834
  };
9639
10835
  }
9640
- var UpcomingBill = (0, import_react10.forwardRef)(({ className, ...rest }, ref) => {
10836
+ var UpcomingBill = (0, import_react11.forwardRef)(({ className, ...rest }, ref) => {
9641
10837
  const props = resolveDesignProps4(rest);
9642
10838
  const { data, settings, stripe } = useEmbed();
9643
- const { latestInvoice } = (0, import_react10.useMemo)(() => {
10839
+ const { upcomingInvoice } = (0, import_react11.useMemo)(() => {
9644
10840
  return {
9645
- latestInvoice: {
9646
- ...data.subscription?.latestInvoice?.amountDue && {
9647
- amountDue: data.subscription.latestInvoice.amountDue
10841
+ upcomingInvoice: {
10842
+ ...data.upcomingInvoice?.amountDue && {
10843
+ amountDue: data.upcomingInvoice.amountDue
9648
10844
  },
9649
10845
  ...data.subscription?.interval && {
9650
10846
  interval: data.subscription.interval
9651
10847
  },
9652
- ...data.subscription?.latestInvoice?.dueDate && {
9653
- dueDate: toPrettyDate(
9654
- new Date(data.subscription.latestInvoice.dueDate)
9655
- )
10848
+ ...data.upcomingInvoice?.dueDate && {
10849
+ dueDate: toPrettyDate(new Date(data.upcomingInvoice.dueDate))
9656
10850
  }
9657
10851
  }
9658
10852
  };
9659
- }, [data.subscription]);
9660
- if (!stripe || !data.subscription?.latestInvoice) {
10853
+ }, [data.subscription, data.upcomingInvoice]);
10854
+ if (!stripe || !data.upcomingInvoice) {
9661
10855
  return null;
9662
10856
  }
9663
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { ref, className, children: [
9664
- props.header.isVisible && latestInvoice.dueDate && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
10857
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { ref, className, children: [
10858
+ props.header.isVisible && upcomingInvoice.dueDate && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
9665
10859
  Flex,
9666
10860
  {
9667
10861
  $justifyContent: "space-between",
9668
10862
  $alignItems: "center",
9669
10863
  $margin: "0 0 0.75rem",
9670
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
10864
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
9671
10865
  Text,
9672
10866
  {
9673
10867
  $font: settings.theme.typography[props.header.fontStyle].fontFamily,
@@ -9677,14 +10871,14 @@ var UpcomingBill = (0, import_react10.forwardRef)(({ className, ...rest }, ref)
9677
10871
  children: [
9678
10872
  props.header.prefix,
9679
10873
  " ",
9680
- latestInvoice.dueDate
10874
+ upcomingInvoice.dueDate
9681
10875
  ]
9682
10876
  }
9683
10877
  )
9684
10878
  }
9685
10879
  ),
9686
- latestInvoice.amountDue && /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Flex, { $justifyContent: "space-between", $alignItems: "start", $gap: "1rem", children: [
9687
- props.price.isVisible && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Flex, { $alignItems: "end", $flexGrow: "1", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
10880
+ upcomingInvoice.amountDue && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $justifyContent: "space-between", $alignItems: "start", $gap: "1rem", children: [
10881
+ props.price.isVisible && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Flex, { $alignItems: "end", $flexGrow: "1", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
9688
10882
  Text,
9689
10883
  {
9690
10884
  $font: settings.theme.typography[props.price.fontStyle].fontFamily,
@@ -9692,20 +10886,10 @@ var UpcomingBill = (0, import_react10.forwardRef)(({ className, ...rest }, ref)
9692
10886
  $weight: settings.theme.typography[props.price.fontStyle].fontWeight,
9693
10887
  $color: settings.theme.typography[props.price.fontStyle].color,
9694
10888
  $lineHeight: 1,
9695
- children: [
9696
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
9697
- Text,
9698
- {
9699
- $size: "0.75em",
9700
- $color: settings.theme.typography[props.price.fontStyle].color,
9701
- children: "$"
9702
- }
9703
- ),
9704
- latestInvoice.amountDue
9705
- ]
10889
+ children: formatCurrency(upcomingInvoice.amountDue)
9706
10890
  }
9707
10891
  ) }),
9708
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Box, { $maxWidth: "10rem", $lineHeight: "1", $textAlign: "right", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
10892
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $maxWidth: "10rem", $lineHeight: "1", $textAlign: "right", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
9709
10893
  Text,
9710
10894
  {
9711
10895
  $font: settings.theme.typography[props.contractEndDate.fontStyle].fontFamily,
@@ -9720,9 +10904,9 @@ var UpcomingBill = (0, import_react10.forwardRef)(({ className, ...rest }, ref)
9720
10904
  });
9721
10905
 
9722
10906
  // src/components/elements/payment-method/PaymentMethod.tsx
9723
- var import_react11 = require("react");
10907
+ var import_react12 = require("react");
9724
10908
  var import_react_dom2 = require("react-dom");
9725
- var import_jsx_runtime12 = require("react/jsx-runtime");
10909
+ var import_jsx_runtime13 = require("react/jsx-runtime");
9726
10910
  var resolveDesignProps5 = (props) => {
9727
10911
  return {
9728
10912
  header: {
@@ -9734,10 +10918,10 @@ var resolveDesignProps5 = (props) => {
9734
10918
  }
9735
10919
  };
9736
10920
  };
9737
- var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, portal, ...rest }, ref) => {
10921
+ var PaymentMethod = (0, import_react12.forwardRef)(({ children, className, portal, ...rest }, ref) => {
9738
10922
  const props = resolveDesignProps5(rest);
9739
- const { data, settings, stripe, layout, setLayout } = useEmbed();
9740
- const paymentMethod = (0, import_react11.useMemo)(() => {
10923
+ const { data, settings, stripe, layout } = useEmbed();
10924
+ const paymentMethod = (0, import_react12.useMemo)(() => {
9741
10925
  const { cardLast4, cardExpMonth, cardExpYear } = data.subscription?.paymentMethod || {};
9742
10926
  let monthsToExpiration;
9743
10927
  if (typeof cardExpYear === "number" && typeof cardExpMonth === "number") {
@@ -9756,15 +10940,15 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9756
10940
  if (!stripe || !data.subscription?.paymentMethod) {
9757
10941
  return null;
9758
10942
  }
9759
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { ref, className, children: [
9760
- props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
10943
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { ref, className, children: [
10944
+ props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9761
10945
  Flex,
9762
10946
  {
9763
10947
  $justifyContent: "space-between",
9764
10948
  $alignItems: "center",
9765
10949
  $margin: "0 0 1rem",
9766
10950
  children: [
9767
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
10951
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9768
10952
  Text,
9769
10953
  {
9770
10954
  $font: settings.theme.typography[props.header.fontStyle].fontFamily,
@@ -9774,7 +10958,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9774
10958
  children: "Payment Method"
9775
10959
  }
9776
10960
  ),
9777
- typeof paymentMethod.monthsToExpiration === "number" && Math.abs(paymentMethod.monthsToExpiration) < 4 && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
10961
+ typeof paymentMethod.monthsToExpiration === "number" && Math.abs(paymentMethod.monthsToExpiration) < 4 && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9778
10962
  Text,
9779
10963
  {
9780
10964
  $font: settings.theme.typography.text.fontFamily,
@@ -9786,7 +10970,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9786
10970
  ]
9787
10971
  }
9788
10972
  ),
9789
- paymentMethod.cardLast4 && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
10973
+ paymentMethod.cardLast4 && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9790
10974
  Flex,
9791
10975
  {
9792
10976
  $justifyContent: "space-between",
@@ -9795,34 +10979,16 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9795
10979
  $background: `${hexToHSL(settings.theme.card.background).l > 50 ? darken(settings.theme.card.background, 10) : lighten(settings.theme.card.background, 20)}`,
9796
10980
  $padding: "0.375rem 1rem",
9797
10981
  $borderRadius: "9999px",
9798
- children: [
9799
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Text, { $font: settings.theme.typography.text.fontFamily, $size: 14, children: [
9800
- "\u{1F4B3} Card ending in ",
9801
- paymentMethod.cardLast4
9802
- ] }),
9803
- props.functions.allowEdit && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
9804
- Text,
9805
- {
9806
- tabIndex: 0,
9807
- onClick: () => {
9808
- if (layout !== "payment")
9809
- return;
9810
- setLayout("payment");
9811
- },
9812
- $font: settings.theme.typography.link.fontFamily,
9813
- $size: settings.theme.typography.link.fontSize,
9814
- $weight: settings.theme.typography.link.fontWeight,
9815
- $color: settings.theme.typography.link.color,
9816
- children: "Edit"
9817
- }
9818
- )
9819
- ]
10982
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Text, { $font: settings.theme.typography.text.fontFamily, $size: 14, children: [
10983
+ "\u{1F4B3} Card ending in ",
10984
+ paymentMethod.cardLast4
10985
+ ] })
9820
10986
  }
9821
10987
  ),
9822
10988
  layout === "payment" && (0, import_react_dom2.createPortal)(
9823
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(OverlayWrapper, { size: "md", children: [
9824
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(OverlayHeader, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $fontWeight: "600", children: "Edit payment method" }) }),
9825
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
10989
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(OverlayWrapper, { size: "md", children: [
10990
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(OverlayHeader, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $fontWeight: "600", children: "Edit payment method" }) }),
10991
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9826
10992
  Flex,
9827
10993
  {
9828
10994
  $flexDirection: "column",
@@ -9830,7 +10996,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9830
10996
  $height: "100%",
9831
10997
  $gap: "1.5rem",
9832
10998
  children: [
9833
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
10999
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9834
11000
  Flex,
9835
11001
  {
9836
11002
  $flexDirection: "column",
@@ -9839,8 +11005,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9839
11005
  $borderRadius: "0 0 0.5rem 0.5rem",
9840
11006
  $flex: "1",
9841
11007
  $height: "100%",
9842
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $flexDirection: "column", $height: "100%", children: [
9843
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11008
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $flexDirection: "column", $height: "100%", children: [
11009
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9844
11010
  Box,
9845
11011
  {
9846
11012
  $fontSize: "18px",
@@ -9850,8 +11016,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9850
11016
  children: "Default"
9851
11017
  }
9852
11018
  ),
9853
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $gap: "1rem", children: [
9854
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11019
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $gap: "1rem", children: [
11020
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9855
11021
  Flex,
9856
11022
  {
9857
11023
  $alignItems: "center",
@@ -9862,21 +11028,21 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9862
11028
  $flexDirection: "row",
9863
11029
  $gap: "1rem",
9864
11030
  $width: "100%",
9865
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
11031
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9866
11032
  Flex,
9867
11033
  {
9868
11034
  $flexDirection: "row",
9869
11035
  $justifyContent: "space-between",
9870
11036
  $flex: "1",
9871
11037
  children: [
9872
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
11038
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9873
11039
  Flex,
9874
11040
  {
9875
11041
  $flexDirection: "row",
9876
11042
  $alignItems: "center",
9877
11043
  $gap: "1rem",
9878
11044
  children: [
9879
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $display: "inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11045
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $display: "inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9880
11046
  "svg",
9881
11047
  {
9882
11048
  viewBox: "0 0 24 16",
@@ -9884,8 +11050,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9884
11050
  xmlns: "http://www.w3.org/2000/svg",
9885
11051
  width: "26px",
9886
11052
  height: "auto",
9887
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("g", { children: [
9888
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11053
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("g", { children: [
11054
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9889
11055
  "rect",
9890
11056
  {
9891
11057
  stroke: "#DDD",
@@ -9897,7 +11063,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9897
11063
  rx: "2"
9898
11064
  }
9899
11065
  ),
9900
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11066
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9901
11067
  "path",
9902
11068
  {
9903
11069
  d: "M2.788 5.914A7.201 7.201 0 0 0 1 5.237l.028-.125h2.737c.371.013.672.125.77.519l.595 2.836.182.854 1.666-4.21h1.799l-2.674 6.167H4.304L2.788 5.914Zm7.312 5.37H8.399l1.064-6.172h1.7L10.1 11.284Zm6.167-6.021-.232 1.333-.153-.066a3.054 3.054 0 0 0-1.268-.236c-.671 0-.972.269-.98.531 0 .29.365.48.96.762.98.44 1.435.979 1.428 1.681-.014 1.28-1.176 2.108-2.96 2.108-.764-.007-1.5-.158-1.898-.328l.238-1.386.224.099c.553.23.917.328 1.596.328.49 0 1.015-.19 1.022-.604 0-.27-.224-.466-.882-.769-.644-.295-1.505-.788-1.491-1.674C11.878 5.84 13.06 5 14.74 5c.658 0 1.19.138 1.526.263Zm2.26 3.834h1.415c-.07-.308-.392-1.786-.392-1.786l-.12-.531c-.083.23-.23.604-.223.59l-.68 1.727Zm2.1-3.985L22 11.284h-1.575s-.154-.71-.203-.926h-2.184l-.357.926h-1.785l2.527-5.66c.175-.4.483-.512.889-.512h1.316Z",
@@ -9907,21 +11073,21 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9907
11073
  ] })
9908
11074
  }
9909
11075
  ) }),
9910
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $whiteSpace: "nowrap", children: "Visa **** 4242" })
11076
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $whiteSpace: "nowrap", children: "Visa **** 4242" })
9911
11077
  ]
9912
11078
  }
9913
11079
  ),
9914
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: "Expires: 3/30" }) })
11080
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: "Expires: 3/30" }) })
9915
11081
  ]
9916
11082
  }
9917
11083
  )
9918
11084
  }
9919
11085
  ),
9920
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Flex, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11086
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Flex, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9921
11087
  StyledButton,
9922
11088
  {
9923
11089
  $size: "sm",
9924
- $color: "secondary",
11090
+ $color: "primary",
9925
11091
  $variant: "outline",
9926
11092
  style: {
9927
11093
  whiteSpace: "nowrap",
@@ -9935,7 +11101,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9935
11101
  ] })
9936
11102
  }
9937
11103
  ),
9938
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11104
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9939
11105
  Flex,
9940
11106
  {
9941
11107
  $flexDirection: "column",
@@ -9944,8 +11110,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9944
11110
  $borderRadius: "0 0 0.5rem 0.5rem",
9945
11111
  $flex: "1",
9946
11112
  $height: "100%",
9947
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $flexDirection: "column", $height: "100%", children: [
9948
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11113
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $flexDirection: "column", $height: "100%", children: [
11114
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9949
11115
  Box,
9950
11116
  {
9951
11117
  $fontSize: "18px",
@@ -9955,8 +11121,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9955
11121
  children: "Others"
9956
11122
  }
9957
11123
  ),
9958
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $gap: "1rem", children: [
9959
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11124
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $gap: "1rem", children: [
11125
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9960
11126
  Flex,
9961
11127
  {
9962
11128
  $alignItems: "center",
@@ -9967,21 +11133,21 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9967
11133
  $flexDirection: "row",
9968
11134
  $gap: "1rem",
9969
11135
  $width: "100%",
9970
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
11136
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9971
11137
  Flex,
9972
11138
  {
9973
11139
  $flexDirection: "row",
9974
11140
  $justifyContent: "space-between",
9975
11141
  $flex: "1",
9976
11142
  children: [
9977
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
11143
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
9978
11144
  Flex,
9979
11145
  {
9980
11146
  $flexDirection: "row",
9981
11147
  $alignItems: "center",
9982
11148
  $gap: "1rem",
9983
11149
  children: [
9984
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $display: "inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11150
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $display: "inline-block", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9985
11151
  "svg",
9986
11152
  {
9987
11153
  viewBox: "0 0 24 16",
@@ -9989,8 +11155,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
9989
11155
  xmlns: "http://www.w3.org/2000/svg",
9990
11156
  width: "26px",
9991
11157
  height: "auto",
9992
- children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("g", { children: [
9993
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11158
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("g", { children: [
11159
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
9994
11160
  "rect",
9995
11161
  {
9996
11162
  stroke: "#DDD",
@@ -10002,7 +11168,7 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
10002
11168
  rx: "2"
10003
11169
  }
10004
11170
  ),
10005
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11171
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
10006
11172
  "path",
10007
11173
  {
10008
11174
  d: "M2.788 5.914A7.201 7.201 0 0 0 1 5.237l.028-.125h2.737c.371.013.672.125.77.519l.595 2.836.182.854 1.666-4.21h1.799l-2.674 6.167H4.304L2.788 5.914Zm7.312 5.37H8.399l1.064-6.172h1.7L10.1 11.284Zm6.167-6.021-.232 1.333-.153-.066a3.054 3.054 0 0 0-1.268-.236c-.671 0-.972.269-.98.531 0 .29.365.48.96.762.98.44 1.435.979 1.428 1.681-.014 1.28-1.176 2.108-2.96 2.108-.764-.007-1.5-.158-1.898-.328l.238-1.386.224.099c.553.23.917.328 1.596.328.49 0 1.015-.19 1.022-.604 0-.27-.224-.466-.882-.769-.644-.295-1.505-.788-1.491-1.674C11.878 5.84 13.06 5 14.74 5c.658 0 1.19.138 1.526.263Zm2.26 3.834h1.415c-.07-.308-.392-1.786-.392-1.786l-.12-.531c-.083.23-.23.604-.223.59l-.68 1.727Zm2.1-3.985L22 11.284h-1.575s-.154-.71-.203-.926h-2.184l-.357.926h-1.785l2.527-5.66c.175-.4.483-.512.889-.512h1.316Z",
@@ -10012,22 +11178,22 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
10012
11178
  ] })
10013
11179
  }
10014
11180
  ) }),
10015
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $whiteSpace: "nowrap", children: "Visa **** 2929" })
11181
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $whiteSpace: "nowrap", children: "Visa **** 2929" })
10016
11182
  ]
10017
11183
  }
10018
11184
  ),
10019
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: "Expires: 3/30" }) })
11185
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Flex, { $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Box, { $fontSize: "12px", $color: "#5D5D5D", children: "Expires: 3/30" }) })
10020
11186
  ]
10021
11187
  }
10022
11188
  )
10023
11189
  }
10024
11190
  ),
10025
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Flex, { $gap: "1rem", children: [
10026
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11191
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $gap: "1rem", children: [
11192
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
10027
11193
  StyledButton,
10028
11194
  {
10029
11195
  $size: "sm",
10030
- $color: "secondary",
11196
+ $color: "primary",
10031
11197
  $variant: "outline",
10032
11198
  style: {
10033
11199
  whiteSpace: "nowrap",
@@ -10037,11 +11203,11 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
10037
11203
  children: "Make Default"
10038
11204
  }
10039
11205
  ),
10040
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
11206
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
10041
11207
  StyledButton,
10042
11208
  {
10043
11209
  $size: "sm",
10044
- $color: "secondary",
11210
+ $color: "primary",
10045
11211
  $variant: "outline",
10046
11212
  style: {
10047
11213
  whiteSpace: "nowrap",
@@ -10066,8 +11232,8 @@ var PaymentMethod = (0, import_react11.forwardRef)(({ children, className, porta
10066
11232
  });
10067
11233
 
10068
11234
  // src/components/elements/invoices/Invoices.tsx
10069
- var import_react12 = require("react");
10070
- var import_jsx_runtime13 = require("react/jsx-runtime");
11235
+ var import_react13 = require("react");
11236
+ var import_jsx_runtime14 = require("react/jsx-runtime");
10071
11237
  function resolveDesignProps6(props) {
10072
11238
  return {
10073
11239
  header: {
@@ -10092,10 +11258,10 @@ function resolveDesignProps6(props) {
10092
11258
  }
10093
11259
  };
10094
11260
  }
10095
- var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
11261
+ var Invoices = (0, import_react13.forwardRef)(({ className, ...rest }, ref) => {
10096
11262
  const props = resolveDesignProps6(rest);
10097
11263
  const { settings } = useEmbed();
10098
- const { invoices } = (0, import_react12.useMemo)(() => {
11264
+ const { invoices } = (0, import_react13.useMemo)(() => {
10099
11265
  return {
10100
11266
  invoices: [
10101
11267
  {
@@ -10109,8 +11275,8 @@ var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
10109
11275
  ]
10110
11276
  };
10111
11277
  }, []);
10112
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { ref, className, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $flexDirection: "column", $gap: "1rem", children: [
10113
- props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Flex, { $justifyContent: "space-between", $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
11278
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { ref, className, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(Flex, { $flexDirection: "column", $gap: "1rem", children: [
11279
+ props.header.isVisible && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Flex, { $justifyContent: "space-between", $alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
10114
11280
  Text,
10115
11281
  {
10116
11282
  $font: settings.theme.typography[props.header.fontStyle].fontFamily,
@@ -10120,12 +11286,12 @@ var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
10120
11286
  children: "Invoices"
10121
11287
  }
10122
11288
  ) }),
10123
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Flex, { $flexDirection: "column", $gap: "0.5rem", children: invoices.slice(
11289
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Flex, { $flexDirection: "column", $gap: "0.5rem", children: invoices.slice(
10124
11290
  0,
10125
11291
  props.limit.isVisible && props.limit.number || invoices.length
10126
11292
  ).map(({ date, amount }, index) => {
10127
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $justifyContent: "space-between", children: [
10128
- props.date.isVisible && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
11293
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(Flex, { $justifyContent: "space-between", children: [
11294
+ props.date.isVisible && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
10129
11295
  Text,
10130
11296
  {
10131
11297
  $font: settings.theme.typography[props.date.fontStyle].fontFamily,
@@ -10135,7 +11301,7 @@ var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
10135
11301
  children: toPrettyDate(date)
10136
11302
  }
10137
11303
  ),
10138
- props.amount.isVisible && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
11304
+ props.amount.isVisible && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
10139
11305
  Text,
10140
11306
  {
10141
11307
  $font: settings.theme.typography[props.amount.fontStyle].fontFamily,
@@ -10150,9 +11316,9 @@ var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
10150
11316
  )
10151
11317
  ] }, index);
10152
11318
  }) }),
10153
- props.collapse.isVisible && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Flex, { $alignItems: "center", $gap: "0.5rem", children: [
10154
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon2, { name: "chevron-down", style: { color: "#D0D0D0" } }),
10155
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
11319
+ props.collapse.isVisible && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(Flex, { $alignItems: "center", $gap: "0.5rem", children: [
11320
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Icon2, { name: "chevron-down", style: { color: "#D0D0D0" } }),
11321
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
10156
11322
  Text,
10157
11323
  {
10158
11324
  $font: settings.theme.typography[props.collapse.fontStyle].fontFamily,
@@ -10167,22 +11333,22 @@ var Invoices = (0, import_react12.forwardRef)(({ className, ...rest }, ref) => {
10167
11333
  });
10168
11334
 
10169
11335
  // src/components/embed/ComponentTree.tsx
10170
- var import_react18 = require("react");
11336
+ var import_react19 = require("react");
10171
11337
 
10172
11338
  // src/components/embed/renderer.ts
10173
- var import_react17 = require("react");
11339
+ var import_react18 = require("react");
10174
11340
 
10175
11341
  // src/components/layout/root/Root.tsx
10176
- var import_react13 = require("react");
10177
- var import_jsx_runtime14 = require("react/jsx-runtime");
10178
- var Root = (0, import_react13.forwardRef)(
11342
+ var import_react14 = require("react");
11343
+ var import_jsx_runtime15 = require("react/jsx-runtime");
11344
+ var Root = (0, import_react14.forwardRef)(
10179
11345
  (props, ref) => {
10180
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { ref, ...props });
11346
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { ref, ...props });
10181
11347
  }
10182
11348
  );
10183
11349
 
10184
11350
  // src/components/layout/viewport/Viewport.tsx
10185
- var import_react14 = require("react");
11351
+ var import_react15 = require("react");
10186
11352
 
10187
11353
  // src/components/layout/viewport/styles.ts
10188
11354
  var StyledViewport = dt.div`
@@ -10193,27 +11359,27 @@ var StyledViewport = dt.div`
10193
11359
  `;
10194
11360
 
10195
11361
  // src/components/layout/viewport/Viewport.tsx
10196
- var import_jsx_runtime15 = require("react/jsx-runtime");
10197
- var Viewport = (0, import_react14.forwardRef)(
11362
+ var import_jsx_runtime16 = require("react/jsx-runtime");
11363
+ var Viewport = (0, import_react15.forwardRef)(
10198
11364
  ({ children, ...props }, ref) => {
10199
11365
  const { settings, layout } = useEmbed();
10200
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
11366
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
10201
11367
  StyledViewport,
10202
11368
  {
10203
11369
  ref,
10204
11370
  $numberOfColumns: settings.theme.numberOfColumns,
10205
11371
  ...props,
10206
- children: layout === "disabled" ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "", children: "DISABLED" }) : children
11372
+ children: layout === "disabled" ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "", children: "DISABLED" }) : children
10207
11373
  }
10208
11374
  );
10209
11375
  }
10210
11376
  );
10211
11377
 
10212
11378
  // src/components/layout/column/Column.tsx
10213
- var import_react16 = require("react");
11379
+ var import_react17 = require("react");
10214
11380
 
10215
11381
  // src/components/layout/card/Card.tsx
10216
- var import_react15 = require("react");
11382
+ var import_react16 = require("react");
10217
11383
 
10218
11384
  // src/components/layout/card/styles.ts
10219
11385
  var StyledCard = dt.div(
@@ -10274,11 +11440,11 @@ var StyledCard = dt.div(
10274
11440
  );
10275
11441
 
10276
11442
  // src/components/layout/card/Card.tsx
10277
- var import_jsx_runtime16 = require("react/jsx-runtime");
10278
- var Card = (0, import_react15.forwardRef)(
11443
+ var import_jsx_runtime17 = require("react/jsx-runtime");
11444
+ var Card = (0, import_react16.forwardRef)(
10279
11445
  ({ children, className }, ref) => {
10280
11446
  const { settings } = useEmbed();
10281
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
11447
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
10282
11448
  StyledCard,
10283
11449
  {
10284
11450
  ref,
@@ -10300,10 +11466,10 @@ var StyledColumn = dt.div`
10300
11466
  `;
10301
11467
 
10302
11468
  // src/components/layout/column/Column.tsx
10303
- var import_jsx_runtime17 = require("react/jsx-runtime");
10304
- var Column = (0, import_react16.forwardRef)(
11469
+ var import_jsx_runtime18 = require("react/jsx-runtime");
11470
+ var Column = (0, import_react17.forwardRef)(
10305
11471
  ({ children, ...props }, ref) => {
10306
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(StyledColumn, { ref, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Card, { children }) });
11472
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(StyledColumn, { ref, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Card, { children }) });
10307
11473
  }
10308
11474
  );
10309
11475
 
@@ -10336,11 +11502,11 @@ function createRenderer(options) {
10336
11502
  const { className, ...rest } = props;
10337
11503
  const resolvedProps = component === "div" ? rest : props;
10338
11504
  const resolvedChildren = children.map(renderNode);
10339
- return (0, import_react17.createElement)(
11505
+ return (0, import_react18.createElement)(
10340
11506
  component,
10341
11507
  {
10342
11508
  className,
10343
- ...component !== "div" && { resolvedProps },
11509
+ ...component !== "div" && { ...resolvedProps },
10344
11510
  ...component !== "div" && Object.keys(custom).length > 0 && { custom },
10345
11511
  key: index
10346
11512
  },
@@ -10350,30 +11516,30 @@ function createRenderer(options) {
10350
11516
  }
10351
11517
 
10352
11518
  // src/components/embed/ComponentTree.tsx
10353
- var import_jsx_runtime18 = require("react/jsx-runtime");
11519
+ var import_jsx_runtime19 = require("react/jsx-runtime");
10354
11520
  var ComponentTree = () => {
10355
- const [children, setChildren] = (0, import_react18.useState)("Loading");
11521
+ const [children, setChildren] = (0, import_react19.useState)("Loading");
10356
11522
  const { error, nodes } = useEmbed();
10357
- (0, import_react18.useEffect)(() => {
11523
+ (0, import_react19.useEffect)(() => {
10358
11524
  const renderer = createRenderer();
10359
11525
  setChildren(nodes.map(renderer));
10360
11526
  }, [nodes]);
10361
11527
  if (error) {
10362
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { children: error.message });
11528
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { children: error.message });
10363
11529
  }
10364
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_jsx_runtime18.Fragment, { children });
11530
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_jsx_runtime19.Fragment, { children });
10365
11531
  };
10366
11532
 
10367
11533
  // src/components/embed/Embed.tsx
10368
- var import_jsx_runtime19 = require("react/jsx-runtime");
11534
+ var import_jsx_runtime20 = require("react/jsx-runtime");
10369
11535
  var SchematicEmbed = ({ id, accessToken, apiConfig }) => {
10370
11536
  if (accessToken?.length === 0) {
10371
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { children: "Please provide an access token." });
11537
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { children: "Please provide an access token." });
10372
11538
  }
10373
11539
  if (!accessToken?.startsWith("token_")) {
10374
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { children: 'Invalid access token; your temporary access token will start with "token_".' });
11540
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { children: 'Invalid access token; your temporary access token will start with "token_".' });
10375
11541
  }
10376
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(EmbedProvider, { id, accessToken, apiConfig, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(ComponentTree, {}) });
11542
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(EmbedProvider, { id, accessToken, apiConfig, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ComponentTree, {}) });
10377
11543
  };
10378
11544
  /*! Bundled license information:
10379
11545