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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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,AAEAAAALAIAAAwAwR1NVQiCLJXoAAAE4AAAAVE9TLzI97ksnAAABjAAAAGBjbWFw/D7fzQAAA3QAAAawZ2x5ZpMjyLEAAArsAABDvGhlYWRYgZ/xAAAA4AAAADZoaGVhAhMBXQAAALwAAAAkaG10eHGsAAAAAAHsAAABiGxvY2Ef3Q5CAAAKJAAAAMZtYXhwAXgBFwAAARgAAAAgbmFtZRTbwvgAAE6oAAAB8nBvc3SVwv8JAABQnAAABFcAAQAAAPr/zgAAASwAAAAAARcAAQAAAAAAAAAAAAAAAAAAAGIAAQAAAAEAAFIiLO5fDzz1AAsBLAAAAAB8JbCAAAAAAHwlsIAAAP/zARcA1QAAAAgAAgAAAAAAAAABAAAAYgELAAwAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQBKQGQAAUAAAC+ANIAAAAqAL4A0gAAAJAADgBNAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwPEB8WEA+v/OABsBFQAyAAAAAQAAAAAAAAAAAAAAAAACAAAAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAABLAAAASwAAAEsAAAAAAAFAAAAAwAAACwAAAAEAAACFAABAAAAAAEOAAMAAQAAACwAAwAKAAACFAAEAOIAAAAEAAQAAQAA8WH//wAA8QH//wAAAAEABAAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAABJwAAAAAAAAAYQAA8QEAAPEBAAAAAQAA8QIAAPECAAAAAgAA8QMAAPEDAAAAAwAA8QQAAPEEAAAABAAA8QUAAPEFAAAABQAA8QYAAPEGAAAABgAA8QcAAPEHAAAABwAA8QgAAPEIAAAACAAA8QkAAPEJAAAACQAA8QoAAPEKAAAACgAA8QsAAPELAAAACwAA8QwAAPEMAAAADAAA8Q0AAPENAAAADQAA8Q4AAPEOAAAADgAA8Q8AAPEPAAAADwAA8RAAAPEQAAAAEAAA8REAAPERAAAAEQAA8RIAAPESAAAAEgAA8RMAAPETAAAAEwAA8RQAAPEUAAAAFAAA8RUAAPEVAAAAFQAA8RYAAPEWAAAAFgAA8RcAAPEXAAAAFwAA8RgAAPEYAAAAGAAA8RkAAPEZAAAAGQAA8RoAAPEaAAAAGgAA8RsAAPEbAAAAGwAA8RwAAPEcAAAAHAAA8R0AAPEdAAAAHQAA8R4AAPEeAAAAHgAA8R8AAPEfAAAAHwAA8SAAAPEgAAAAIAAA8SEAAPEhAAAAIQAA8SIAAPEiAAAAIgAA8SMAAPEjAAAAIwAA8SQAAPEkAAAAJAAA8SUAAPElAAAAJQAA8SYAAPEmAAAAJgAA8ScAAPEnAAAAJwAA8SgAAPEoAAAAKAAA8SkAAPEpAAAAKQAA8SoAAPEqAAAAKgAA8SsAAPErAAAAKwAA8SwAAPEsAAAALAAA8S0AAPEtAAAALQAA8S4AAPEuAAAALgAA8S8AAPEvAAAALwAA8TAAAPEwAAAAMAAA8TEAAPExAAAAMQAA8TIAAPEyAAAAMgAA8TMAAPEzAAAAMwAA8TQAAPE0AAAANAAA8TUAAPE1AAAANQAA8TYAAPE2AAAANgAA8TcAAPE3AAAANwAA8TgAAPE4AAAAOAAA8TkAAPE5AAAAOQAA8ToAAPE6AAAAOgAA8TsAAPE7AAAAOwAA8TwAAPE8AAAAPAAA8T0AAPE9AAAAPQAA8T4AAPE+AAAAPgAA8T8AAPE/AAAAPwAA8UAAAPFAAAAAQAAA8UEAAPFBAAAAQQAA8UIAAPFCAAAAQgAA8UMAAPFDAAAAQwAA8UQAAPFEAAAARAAA8UUAAPFFAAAARQAA8UYAAPFGAAAARgAA8UcAAPFHAAAARwAA8UgAAPFIAAAASAAA8UkAAPFJAAAASQAA8UoAAPFKAAAASgAA8UsAAPFLAAAASwAA8UwAAPFMAAAATAAA8U0AAPFNAAAATQAA8U4AAPFOAAAATgAA8U8AAPFPAAAATwAA8VAAAPFQAAAAUAAA8VEAAPFRAAAAUQAA8VIAAPFSAAAAUgAA8VMAAPFTAAAAUwAA8VQAAPFUAAAAVAAA8VUAAPFVAAAAVQAA8VYAAPFWAAAAVgAA8VcAAPFXAAAAVwAA8VgAAPFYAAAAWAAA8VkAAPFZAAAAWQAA8VoAAPFaAAAAWgAA8VsAAPFbAAAAWwAA8VwAAPFcAAAAXAAA8V0AAPFdAAAAXQAA8V4AAPFeAAAAXgAA8V8AAPFfAAAAXwAA8WAAAPFgAAAAYAAA8WEAAPFhAAAAYQAAAAAAiAC0ANoBAAEmAU4BhgHwAk4CqALWAvwDIgOIA8AD+AQeBD4EXgR+BJ4F6AZYBpgGyAckB5AICgjuCVYKrArmCyYLbgv2DE4MsgzqDWANjA24DkYO1A8KD2YPoA/wEFQQlBDuEUIRxBH0EkASpBMUE34TyBQWFE4UnhUAFXIV0BX8FkwWoBbsFyYXdBfWGAoYRBjaGZQZ1BpEGsQbLBuaG/IcLhxcHIAc8B1kHZwd7h5CHqYe7h9OH7Af+iDIIXQh3gAAAAUAAAAAAPYAxAAPAB8APwBMAF4AADciBgcGHgE2Nz4BMzI2NCYzIgYUFjMyFhceAT4BJy4BByIOARUUFwcGFBYyPwEWMzI2NxcWMjYmLwE+ATU0LgEHMh4BFA4BIi4BND4BFyIGHQEjIgYUFjsBMjY9ATQmcBUgBAEFBwcBAhYOBAUFSAQGBgQOFgIBBwcFAQQhOhcoFxMQAwYIAw8YHg8bCxADCAYBAhAJChgnFxIfEhIfJB8SEh8SBAYcBAYGBCYEBQXDGhMEBwEEBA0RBggFBQgGEQ0EBAEHBBMaExcnGB0YEAMIBQMQEwoJEQIGBwMQCxwOGCcXExIeJR4SEh4lHhITBQQdBgcGBgMnBAUAAQAAAAAA+gC0ABsAADcWOwEHFzcnBxcjIi4BND4BOwE1IyIOAhUUFksMDmcoEUVFEShnBwwHBwwHCgoLEg4IDlQHJxFFRBEnBwwODAcZCA4SCw4XAAAAAAEAAAAAAOwAugAXAAA3BiIvASY0NjIfATU0NjIWHQE3NjIWFAefBAoESQMHCgQzCAoHNAQKBwMSAwNJBAoHAzR0BQcHBXQ0AwcKBAABAAAAAADsALoAFwAANyY0PwE2MhYUDwEzMhYUBisBFxYUBiInRAMDSQQKCAQ0dAUHBwV0NAQICgRbBAoESQMHCgQzCAoHNAQKBwMAAQAAAAAA7AC6ABcAADcWFA8BBiImND8BIyImNDY7AScmNDYyF+gDA0kECggENHQFBwcFdDQECAoEbQQKBEkDBwoENAcKCDMECgcDAAEAAAAAAOwAugAXAAA3NjIfARYUBiIvARUUBiImPQEHBi4BNDeNBAoESQMHCgQ0BwoIMwQKBwO2AwNJBAoHAzR0BQcHBXQ0BAEHCgQAAAAAAQAAAAAA+gCcACUAADciBhQWOwEHBiInJiIPAQYUFjI/ATYyFxYyPwEVFBYyNj0BNCYjxAQFBQQZNgcUBwwiDBYDBQcDFgcUBwwiDDYFBwUMCJwGBwU3BwcMDBgCBwYDFwgIDAw4GgQFBQQjCQwAAAMAAAAAAPYAsQAVACsASAAANyIHBgcGBwYfARYXFjsBMjY9ATQmIwczMhYdARQGKwEiJyYvASY0PwE2NzYXIgYUHwEHBhQWMj8BFxYyNjQvATc2NCYiDwEnJoMLCgUDIQYQECcCBgkMTBAWFhBMTAgLCwhMBgUDASYEBCcBAwUPBAYDDAwDBggCDA0CCQUDDAwDBQkCDQwCsAYDBCQHFBUpBAMHFhBMEBYTCwhMCAsDAgIpBQcELAECAxwGCAMMDAMIBgMMDAMGCAMMDAMIBgMMDAMAAwAAAAAA7gDFAB4AKgA9AAA3PgEyHgIVFBcWHwEeAQ4BKwEiLgE2PwE2NzY1NDYHMycmNTQmIgYVFAcXNh4CMj4CHgEHDgEiJicmNmoJFxgXEQoLBAQCAwICBQOcAwUCAgMCBAQLCgZ0Ag4YJBgOJAQHAwQEBAMHBwICAw0ODQMCArIJCQkSFgwkFQcEAgIGBgQEBgYCAgQHFSQMFmcCGikRGRkRKRomAgIFAgIFAgQHBAYHBwYEBwAAAAACAAAAAADjAMQAMABAAAA3IgYPASMiBh0BFBY7AQcGHgE2PwEzFRQWMjY9ATMXHgE+AS8BMzI2PQE0JisBJy4BBzMyFh0BFAYrASImPQE0NpYDBQEDJAsREQsBCgEECAcBCxEGCAYRCwEHCAQBCgELERELJAMBBTNgBAUFBGAEBQXDAwQMEQtDDBEjBAcCBAQoHAQGBgQcKAQEAgcEIxEMQwsRDAQDJgUEQwQGBgRDBAUAAAACAAAAAADjAMQADwAcAAA3IgYdARQWPwEXFjY9ATQjBzMyFh0BJyYPATU0NnASFAgFPz8ECSZMTAsINQQENQnDFBKPBQUCGxsCBQWPJhMIC4AXAQEXgAoJAAAAAAIAAAAAAO4AmAAOABcAADciJyMiJjQ2OwE2MhYUBicyNjQmIgYUFroWDzcPEBAPNxAqHh4VEBYWIBYWMQ8VHRUQHioeDRYgFhYgFgACAAAAAADuAJgADgAXAAA3MhczMhYUBisBBiImNDYXIgYUFjI2NCZyFg83DxAQDzcQKh4eFRAWFiAWFpcPFR0VEB4qHg0WIBYWIBYABAAAAAAA2QDEABwALwA9AEYAADciDgEVFBYfAR4BHQEUFjI2PQE0Nj8BPgE1NC4BBzIWFRQGDwEGByMmLwEuATU0NhciBhUUFjI2NDYyNjQmBzIzFRQGIiY1lhIfEggJAwUEFiAWBAUDCQgSHxIUHAYGBAoCKAIKBAYGHBQMEQYIBQYIBgYXExMLEAvDEh4SDhMLAwYIBhMQFhYQEwYIBgMLEw4SHhITHBMKDQgECwwMCwQIDQoTHBMRCwQGBggFBggFaQkICwsIAAAAAwAAAAAA+wCwAAwAGQAnAAA3NDY7ATIWFAYrASImFTQ2OwEyFhQGKwEiJhU0NjsBMhYUBisBIiY1MgcFsAUHBwWvBgcHBbAFBwcFrwYHBwWwBQcHBa8GB6MFBwcLBwc5BQgICgcHOQUHBwsHBwUAAAIAAAAAAPsAyAAMACIAADMyPgE0LgEiDgEUHgE3FhQPAQ4BJi8BJjQ/ATYyHwE3NjIXlhsuGxsuNi4bGy5XAwNABgYGBiADAwYCBwMaOgIIAhsuNi4bGy42LhuKAgcDQAYEBAYhAgcCBwICGzoDAwABAAAAAAD0AKoAFQAANxYUDwEOASYvASY0PwE2Mh8BNzYyF/AEBF8KCQgKMAQECQQKBCdXAwsEnQQKBF8KBQUKMAQKBAkEBCdWBAQAAQAAAAAA7gCWABEAADc2Mh8BNzYyFhQPAQYiLwEmNEIECgRCQgQKBwNLBAoESwOSBARCQgQHCwNLBARLAwsAAAEAAAAAAMgAvAARAAA3FhQPARcWFAYiLwEmND8BNjLEBARCQgQHCwNLBARLAwu4BAoEQkIECgcDSwQKBEsDAAABAAAAAADIALwAEQAANyY0PwEnJjQ2Mh8BFhQPAQYiaAQEQkIEBwsDSwQESwMLEAQKBEJCBAoHA0sECgRLAwAAAQAAAAAA7gCWABEAADcGIi8BBwYiJjQ/ATYyHwEWFOoECgRCQgQKBwNLBAoESwM2BARCQgQHCwNLBARLAwsAAAIAAAAAAO4AvABvAN8AAD8BPgEuAQ8BJzc+AS4BDwEnNzY0JiIPAScmIg8BJy4BDgEfAQcnLgEOAR8BBycmIgYUHwEHBhQfAQcOAR4BPwEXBw4BHgE/ARcHBhQWMj8BFxYyPwEXHgE+AS8BNxceAT4BLwE3FxYyNjQvATc2NCcPAScuAQ4BHwEHJyYiBhQfAQcnLgEOAR8BBwYiLwE3PgEuAQ8BJzc2NCYiDwEnNzY0LgEPAScmND8BFx4BNjQvATcXFjI2NC8BNxcWMj4BLwE3NjIfAQcOARYyPwEXBwYUFjI/ARcHDgEeAT8BFxYU3g0CAQMGAg0KDAIBAwUCDgoNAgMFAg4NBg4GCQsBBQQBAgsKCgIFBAECCwoKAgUEAQsNBQUKDQIBAwYCDQoMAgEDBQIOCg0CAwUCDg0GDgYJCwEFBAECCwoKAgUEAQILCgoCBQQBCw0FBQkMBgIFBAECBwoGAgUEAQcKBgEFBAECBwsCBAIMBwIBAwUCCQoIAgMFAgkKCAIDBQIJCgICDAYCBQQBBwoGAQYEAQcJBwEFBAECBwsCBAIMBwIBAwUCCQoIAgMFAgkKCAIBBAUCCQoCegsBBQQBAgsKCgIFBAECCwoKAgUEAQsNBQUKDQIBAwYCDQoMAgEDBQIOCg0CAwUCDg0GDgYJCwEFBAECCwoKAgUEAQILCgoCBQQBCw0FBQoNAgEDBgINCgwCAQMFAg4KDQIDBQIODQYOBhEMBwIBAwUCCQoIAgMFAgkKCAIBBAUCCQoCAgwGAgUEAQIHCgYCBQQBBwoGAQUEAQIHCwIEAgwHAgEDBQIJCggCAwUCCQoIAgMFAgkKAgIMBgIFBAEHCgYBBgQBBwkHAQUEAQIHCwIEAAMAAAAAAPEAxAA3AEkAWQAANyIGHQEjIgYHJyIGFBY7ARUjIgYUFjsBFSMiBhQWOwEVIyIGFBY7ARQWOwEyNj0BMzI2PQE0JiMVMhYdARQGKwE1NCYrATU0NjMHMzIWHQEUBisBIiY9ATQ2kQwQCgcQBAsEBQUECgoEBQUECgoEBQUECgoEBQUEChAMQwwQCgwQEAwEBQUEChAMJgUEJkMEBQUEQwQFBcQRDAoKCgEGCAUKBQgGCQYIBQoFCAYMEREMChELYAwRFAUEXwQGQgwRCgQFJgYEXwQFBQRfBAYAAgAAAAAA7gC8AAwAKAAANyIOARQeAT4CLgIXFhQGIi8BBwYiJjQ/AScmNDYyHwE3NjIWFA8BlhgoGBgoMCgYARcoCgMGCAMUFAMIBgMUFAMGCAMUFAMIBgMUvBgoMCgYARcoMCgYbAMIBgMUFAMGCAMUFAMIBgMUFAMGCAMUAAABAAAAAADhAK8AHAAANzYyHwE3NjIWFA8BFxYUBiIvAQcGIiY0PwEnJjRPAwsDNjYDCwcENTUEBwsDNjYDCwcENTUEqwQENTUEBwsDNjYDCwcENTUEBwsDNjYDCwAAAAACAAAAAAD2ALEANwBCAAA3IgYHDgEVFBY7ATI2NCYrASImNTQ2NzY3PgEyFh0BFBYXHgEUBisBIgYUFjsBMjY1NCYnNTQuAQ8BMxUUFjI2PQEzlhclBQ4QHhQHBAUFBAcMEwwKBgECGyUdBAMJDBAMCgQFBQQKExwQDBIfEh0TBggGE7AdGAUZEBUgBQgGFA4LEAMCBhMXHBMLAwUBAg0SDgYIBRkSDRUFBBEfEjkdOQQFBQQ5AAAAAgAAAAAA7AC6ACEATQAANyIGHQEOARUUFjMyNw8BBhY7ATI2LwEWMzI2NTQmJzU0JgcyFhUHBhY3MzIWFAYjIi4CBhUGFyM2PQE0JgYHBiMiJjQ2OwEWNi8BNDaWFBwQFhwUAwQCBAMGBToFBQIGAwQUHBYQHBQMEQIBBgUBDBERDAMGBQgGAQYeBQYIAwQHDBERDAEFBgECEbocFAEDGhITHAEFCwUJCgQQARwTEhoDARQcExEMBwUIAREXEQMGAQYEDRAOCwQEBgEDBhEXEQEIBQcMEQAABgAAAAAA7gC8ADAAOQBCAEsATwBZAAA3IzUzMjY0JiMiBgcGHQEjNTQmIgcGFBY7ARUjIgYHBhUUFjI2PQEzFRQXFhc+ATQmJzQ2MhYUBisBBxQGIiY0NjsBJyImNDYyFh0BFyM1MxciJj0BMzIWFAbICwsPFxURCQ8GBxoWIAsJFRALCwkQBQcVHxYaCQsRDxcXGgYKBgYFC04GCgYGBQsLBQYGCgY0GholBQYLBQYGVxoVHxYHBwoNCwsQFg0LHRYaCAcKDA8XFhALCw4KDQEBFSAVPwUGBgoGWQUGBgoGTgYKBgYFCzQaSgYFCwYKBgAAAAsAAAAAAO4AqgAQACIALwBAAEgAVQBmAIIAhgCVAKEAADcnJiIGFB8BBwYUFjI/ATY0JyYiDwEGFB8BFjI2NC8BNzY0NyYGDwEGHgE2PwE2Jhc3NjQvASYiBhQfAQcGFBYyJxYyPwE2NCcxJyYiBhQfAQcxBhQXJzY0JiIPAQYUHwEWMjY0LwEXOAExJzc2NCYiBzgBMQc4ATEGFBc4ATEXFjI3NRYUBzcxNi4BBg8BOQEUHgE2NxcOAS4BPwE+AR4BB+ohAwkGAxkZAwYJAyEEfAMJAyEEBCEDCQYDGRkDNQQJASEBBAgIAiEBBBshBAQhAwkGAxkZAwYJCgIHAiECAiECBgUCGxsCAkoDBgkDIQQEIQMJBgMZFxsbAgQHAiECAiECBwICAj4BAwYGASECBgYBAwIICAQBIQEJCAQBayADBgkDGBkDCQYDIAMJIwMDIAMJAyADBgkDGRgDCSACBAR1BAgDBAN1BQhrIAMJAyADBgkDGBkDCQYFAgIgAwYCIAIEBwIaGwIGAz4DCQYDIAMJAyADBgkDGRsbGgMGBAIgAgYDIAICCwIGA10DBgICA3UDBQICAwIDBAMIBHUEBAMIBQAAAAMAAAAAAPYAxAA5AEQASgAANyIPAQ4BByMiBh0BFBYXIyIGFBY7ATI2NCYrAT4BNTI2NCYrAT4BPwE2NCYiDwEOAQcjPgE/ATY0JgcyMxUUBisBIiY1NzIWFAYjeQQCBggGAR4EBRIPDgQGBgRyBAYGBA4PEhAWFhAvAQMECAMGCAMGBwcBHAEDAwgDBTQ5OR0UEBQdhQgLCwjDAgYGDQsFBEISHwkGCAUFCAYJHxEWIBYGBgMHAwgFAgYFDgsGBgMHAwgFOTgUHR0UOAsQCwAEAAD/8wEHANUAaAD4AQEBCgAANyIGHQEUBg8BBiYvASsBDwIfAR4BDgEHIyIGFBY7ATIeAQYPAR0BHwI/AT4BHgEXFRQWMjY9ATQ+ARYfATsBPwIvAS4BPgE7ATI2NCYrASImLwEmNj8BPQEvAg8BDgEuAT0BNCYnPgEWHQEUFhcxOgE1NzgBMT4BMh4CFAYHOAExBxQGFxUXMjsBMhYUBisBIgYHMRwBMxceARQGBycXDgEiJi8BIiYHMSIGHQEUBiImPQE0JiMnKgEVBzgBMQ4BIi4CNDY3OAExNzQ2JzE0JisBIiY0NjsBMjY1NzwBIycuATQ+AjIWHwEyFjczNzQ9ATQXIgYUFjI2NCYHNDYyFhQGIiaWAwQJBwMGDwYDAwIDAQEBAgYCBg0IAQMEBAMCCA0GAwUDAgIDAwMGDw8JAQQGBAkOEAYDAwIDAQEBAgYCBg0IAQMEBAMCCA0DAQIDBQMCAgMDAwYPDwkEGAkYEgEBAQMBBAsMCwgFBQQBAQEBAQECDBISDAEBAgEBAQQEBAQICAUKDAsEAQECAQECERkRAQEBAQMBBAsMCwgFBQQBAQECAQIMEREMAQECAQEBBAQECQoMCwQBAQIBAgEeBwkJDgkJLhcgFxcgF74EAwIIDQMBAgMFAwICAwMDBg8PCQEEBgQJDhAGAwMCAwEBAQIGAgYNCAEDBAQDAggNBgMFAwICAwMDBg8PCQQGBAkHAwYPBgMDAgMBAQECBgIGDQgBAwQOCAESDAEBAgEBAQQEBAkKDAsEAQECAQIBEhgSAQEBAwEECwwLBAgIBAUFBAEBAQIBAgwREQwBAQIBAQEEBAQJCgwLBAEBAgEBAhEZEQEBAQEDAQQLDAsIBQUEAQEBAQEBAgxPCQ4JCQ4JEBAXFyAXFwAAAAACAAAAAADVAMgAEQAjAAA3NjIfATc2MhYUDwEGIi8BJjQ3BiIvAQcGIiY0PwE2Mh8BFhRbBAoEKSkECgcDMgQKBDIDeQQKBCkpBAoHAzIECgQyA0cEBCkpBAcLAzIEBDIDCz0EBCkpBAcLAzIEBDIDCwAAAAEAAAAAANUAyAAqAAA3BiIvARU3NjIWFA8BBiIvASY0NjIfATUHBiImND8BNTM3NjIfATMVFxYU0QQKBBwcBAoHAzIECgQyAwcKBB0dBAoHAy8BAgQKBAICLgOBBAQcchwEBwsDMgQEMgMLBwQcchwEBwsDLwECBAQCAS8DCwAABAAAAAAA9gDEAAwAGQAnACsAADciDgEUHgEyPgE0LgEHMh4BFA4BIi4BND4BFwcGDwEGFj8BNj8BNiYPAjeWGiwZGSw0LBkZLBoVIxQUIyojFBQjODkEAhMCCAY5BAITAggSCyMLwxksNCwZGSw0LBkTFCMqIxQUIyojFB0TAgQ5BggCEwIEOQYIGiMLIwAABAAAAAAA+gDGACsANQBRAFsAADcnJiIGFBcHBhQfAQcGFBYyPwEXFjI/ARYyNjQvATc2NCYiDwEnNzY0JiIPARcHBiIvASY0PwEnJiIPASYiBhQfARYyNjQnNzY0LwE3NjQmIg8BJzc2Mh8BFhQHcgwCBgQCIgcHChACBAYCDwoHEQYjAgYEAgoNAgQGAg0SDQIEBgIZKCMCBgIdAwObCgcRBiMCBgQCPAIGBAIiBwcKEAIEBgIoKCMCBgIdAwNmDAIEBgIjBhEGChACBQQCDwoGBiMCBAUCCg0CBgQCDRINAgYEAhUoIgICHQMFAnkKBgYjAgQFAjwCBAYCIwYRBgoQAgUEAlkoIgICHQMFAgADAAAAAAD6AMgADwAfAEMAADcjIgYdARQWOwEyNj0BNCYHFAYrASImPQE0NjsBMhYVNyMiBh0BFBYyNj0BNDY7ATIWHQEUBisBIgYUFjsBMjY9ATQmm0kNExMNSQ0TEwIGBUkFBgYFSQUGNEkNEwYJBgYFSQUGBgUKBAcHBAoNExOJEw1JDRMTDUkNE2kFBgYFSQUGBgVfEw0KBAcHBAoFBgYFSQUGBgkGEw1JDRMAAAQAAAAAAOMAxAAUACUAMwBDAAA3IgYHBh0BFBceATI2NzY9ATQnLgEHMhceARQGBwYiJy4BNDY3NgcWMjcVFAYHBiInLgE1FR4BMzI3FRQGBwYiJy4BNZYbJwcDAwYoNiYIAwEGKRwZEgcHBwcSMhIHBwcHEiAVSBUHBxIyEgcHCh4RIhcHBxIyEgcHww8MBQZyBgUMDw4MBQdyBQMOEBMIAgcEBgMICAMGBAcCCC0MDB8CBgMICAMGAhoGBgwfAgcCCAgCBwIAAgAAAAAA4wDEABAAIQAANyIPAQYUHwEWMj8BNjQvASYHMh8BFhQPAQYiLwEmND8BNpYNCS4ICC4JGgkuCAguCQ0EAy4EBC4DCAMuBAQuA8MLPAocCjwLCzwKHAo8CxMEPAUPBTsEBDsFDwU8BAAAAAMAAAAAAPoAyQAMABkAVQAANyIOARQeATI+ATQuAQciLgE0PgEyHgEUDgEnIyImPgE7ATIeATsBMjUuASc1NCsBIh0BDgEeATsBMhYOASsBIi4BKwEiBhUeARcVFDsBMj0BPgE3NiaWGy4bGy42LhsbLhsWJRUVJSwlFRUlEggFBwEHBAsCBQEBDAIBDAkCDAILDgMQCwcFBwEHBAsCBQEBDAEBAQwJAgwCCQ4BARHIGy42LhsbLjYuG7QVJSwlFRUlLCUVWAgJBgQEAgkMAQsCAgsCERYOCAkGBAQBAQkMAQsCAgwBDgkMEgAAAwAAAAAA7gB3AAgAEQAaAAA3MhYUBiImNDYzMhYUBiImNDYXNCYiBhQWMjZRBwsLDwoKTQgKChAKCmALDwsLDwt3CxALCxALCxALCxALEwgLCxALCwAAAAMAAAAAAKkAvAAIABEAGwAANxQGIiY0NjIWFRQGIiY0NjIWBzI2NCYiBhQWM6kLEAsLEAsLEAsLEAsTCAsLEAsLCKkHCwsPCwtNCAoKEAoKXwoPCwsPCwAFAAAAAAETALwADwATAFAAXABoAAA3IyImPQE0NjsBMhYdARQGJzM1Ixc2NC8BJiIHBh8BIyImPQE0NjsBBwYUFjI/ATY0LwEmBgcGHwEjIgYdASMiBhQWOwEVFBY7AQcGFBYyNxQnIyImNDY7ATIWFAYHIyImNDY7ATIWFAarjAIEBAKMAgQEh35+6wEBFQIFAgQFCw8IDAwIDwsCBAUBFQICFQIFAgQFCw8OExECBAQCERMODwsCBAUBdEYCBAQCRgIEBAJGAgQEAkYCBAQYBAKMAgQEAowCBA1+gQEGAhUBAgYDCQwIRQgMCQIFBAITAgYCFQIBAgUECRMOHAQEBRsOEwkCBQQBAWgEBQQEBQQvBAUEBAUEAAAAAAYAAAAAAOwAugAYACEAOgBDAFwAZQAANyIGByMiBhQWOwEeATI2NzMyNjQmKwEuAQcyFhQGIiY0NgciBgcjIgYUFjM3HgEyNjczMjY0JisBLgEHMhYUBiImNDYXIgYHIyIGFBY7AR4BMjY3MzI2NCYrAS4BBzIWFAYiJjQ2swoPAk4EBgYETgMOEw4EFAQGBgQUBA4JBAUFCAYGNgkPAhUEBgYEFQIPEg8DTgQGBgROAw8JBAYGCAUFPgkPA04EBgYETgMPEg4EFAQGBgQUBA4JBAUFCAYGugsIBggFCQoKCQUIBggLEwYIBQUIBiYLCAYIBgEJCwsIBggGCAsTBggGBggGJwoJBQgGCAsLCAYIBQkKEwUIBgYIBQAAAwAAAAAA7gC8AA0AFgAiAAA3Ig4BHgIyPgEuAiMVIiY0NjIWFAY3FAYiJj0BNDYyFhWWGCgYARcoMCgYARcoGAUHBwoHBwcHCgcHCge8GCgwKBcXKDAoF4kHCwcHCwcyBQcHBSUGBwcGAAAABAAAAAABFwC7ABIAHwAtADcAADcuAS8BJjc2NzYWFxYXFgcGBwYnHgEyNzY3JicmBgcGNyIrASYGBwYeAT4BLgEHHgEOAS4BNzYXkyhAEgECAxQgI0okIBUEBA8iK4cQMz8lGQwSGx07HBpaAQEBDRgEBxAeHgwGEw0KBAcPDgMFCAsPASgkAQUGIhcZARgWIgYGGBkeVBwhGxMQGxITARMSDwEOCw8hCQ8ZFxAUAg0OBwgPBQkBAAMAAAAAAQEAsAAMABkAJwAANzQ2OwEyFhQGKwEiJhc0NjsBMhYUBisBIiYXNDY7ATIWFAYrASImNSwHBbwFBwcFvAUHHwcFfgUHBwV9BgcfCAU+BQgIBT4FCKMFBwcLBwc5BQgICgcHOQUHBwsHBwUAAAAAAwAAAAAA7AC6ABYALgA6AAA3IgYdARQWOwEyNj0BNCYrASImJy4BIwczMhYfASMiBhQWOwEVFAYrASImPQE0NhciBhQWOwEyNjQmI10MERcPYA8XBgQvBgUFBg4MJiYFBgQDJQQGBgRpDAdgBwwGKgQGBgQmBAYGBLoRDGkPFxcPVgQGBQgOCxMFCQUGCAVNBwwMB2kEBk0FCAYGCAUAAAMAAAAAAOwAugAWAC4ASwAANyIGHQEUFjsBMjY9ATQmKwEiJicuASMHMzIWHwEjIgYUFjsBFRQGKwEiJj0BNDYXIgYdASMiBhQWOwEVFBYyNj0BMzI2NCYrATU0Jl0MERcPYA8XBgQvBgUFBg4MJiYFBgQDJQQGBgRpDAdgBwwGPQQGCQQGBgQJBggGCQQGBgQJBroRDGkPFxcPVgQGBQgOCxMFCQUGCAVNBwwMB2kEBjkGBAoFCAYJBAYGBAkGCAUKBAYAAAAAAgAAAAAA7AC6ABYALgAANyIGHQEUFjsBMjY9ATQmKwEiJicuASMHMzIWHwEjIgYUFjsBFRQGKwEiJj0BNDZdDBEXD2APFwYELwYFBQYODCYmBQYEAyUEBgYEaQwHYAcMBroRDGkPFxcPVgQGBQgOCxMFCQUGCAVNBwwMB2kEBgADAAAAAAD2AIsALQA2AD8AADciBgcjIgYUFjsBHgEzMjY1NDYyFhUUFjMyNjczMjY0JiMHLgEjIgYHJiIHLgEHMhYUBiImNDYzMhYUBiImNDZmDRQEAQQFBQQCAxQNEBYGCAYWEA0UBAEEBQUEAQQUDQoQBQcUBwUQCggLCw8MDGcHDAwPCwuKEAwGCAYMEBYQBAYGBBAWEAwGCAYBDRAIBwYGBwgTCxALCxALCxALCxALAAAHAAAAAAD2AMQADAATABkAHwAlACsAMQAANyIOARQeATI+ATQuAQcyFhcHPgEHBgcjPgE3HgEXJyYHNxYXLgE3Mw4BIiY/AQ4BBzaWGiwZGSw0LBkZLBoKEQE4AREYDAEdAhhUERYDHQF6HQILERYsOQERFBFKHQMWEQzDGSw0LBkZLDQsGRMnGwEcJwcYIxIgCAgfFAEhNQElFwkgEhsnJxsBEyAIGQAEAAAAAADsAMUAIwA3AEMAUwAANyYPAQYWHwEHBhQXFRYyPwEWPgInNzY0JzUmIg8BJyYvASYHHgEXFh8BHgEHDgEnPgEnLgEHJzcyFzMWFA8BJic3Ngc2FhUUDwEGIicjJjQ/ATaiBQQ5BAIEGzQJCQkYCS4NGxQICggJCQkYCQUCAwQCAgsCBgcICAsGAwEDEQoGAQoHEggWWAQDAQMDCQkGCAQ0BQgBPAMJAwEDBDoCwwEEOQMKAg00CBkIAQgILgYDEh0OCQgZCAEICQUDBwkIBRoGDQkMBwoFCQUKCgIIFgoHAgMLGgMDCQMJCQcIAzYBBwUDAjwDAwMJAzoCAAAAAAIAAAAAAOsAuAAbAB8AADcHIzcjByMVMwcjFTMHMzczBzM3MzUjNzM1IzcHIzczuwU2BRIFLCoGJCIFEgU2BRIFLCoGJCIFHzYGNrgnJycSNhInJycnEjYSJ282AAAAAAIAAAAAAOwAugAYADIAADciBhUUFhceARczPgE3PgE1NCYjIgYHLgEHMhYVFBY2NTQ2MhYUBgcOAQcxLgEnLgE0NnAUHBMVFBAJAwkQExUTHBQMFAYGFAwMEAoKEBgREhMPDAMDDA8TEhG6HBQQJR0aDwEBEBkdJRAUHAsICAsTEQwGBQUGDBERGCEZFQ0BAQ0VGSEYEQAAAgAAAAAA9wDIADcARQAANzU+AT0BNCYrASIGHQEUFhcVBgcnNjU0LgEOAh4BMjcXBhQXByYjIgYUFjI2NTQnNx4BPgEuAQciLgI0PgIzMhYUBsgFBgsHAQcLBgUOC0ABBwwMCQIFCgwEQAkJEwIDBwkJDgoBEw0gHAwGGBcGCgcFBQcKBgoPD4YXAgkFAQcLCwcBBQkCFwIJMgMCBgsEAgkMCwcDMg0gDRMBCg4KCgcDAhMKAREdIBZLBAgJCwoHBA8WDwAAAAAEAAAAAADsALoADwAkAC0ATgAANyIGHQEUFjsBMjY9ATQmIwczMhYdASYjMSIGBycuASMiBzU0NhciBhQWMjY0JgcyFhcWHwEeAT8BNjc2MhcWHwEVFAYrASImPQE3Njc+AWYPFxcPYA8XFw9gYAcMDAwIEQYHCRILEREMXQQFBQgGBksEDAYEBAQCDAMCAwQKDAoDAwIMB2AHDAMFBAYLuhcPYA8XFw9gDxcTDAc7CwsIDhASGSwHDBMGCAUFCAYmDQsICwgGAQUEBQQLCwQFAgcHDAwHCAcMBwsNAAAAAAQAAAAAAO4AvAAdACkAOgBLAAA3FAYiJjU0NjIWFAcGBxUUBiImPQE0NjMyNjQmIgYXIiY0NjsBMhYUBiMHMj4CNC4CIg4CFB4CNw4BLgM0PgIyHgMGhgQGBBIYEgkGCAQGBAQDBwkJDgkPAwQEAwIDBAQDAQ8bFAwMFBseGxQMDBQbTQwgJCAYDQ0YICQgGA0BDnQDBAQDDBISGQgGAgMDBAQDCQMECQ4JCUUEBgQEBgQcDBQbHhsUDAwUGx4bFAwMDA4BDRggJCAYDg4YICQgAAAAAQAAAAAA1QDJADEAADcHBg8BBh4BNj8BMwcUBisBIiYvATMyNjQmKwEiBhUXHgE7ATI2PwE0JisBPwE+AS4Bxx0FARICBAcHAQUPCAcDKQMGAQYSBAYGBBQICgcBEQspCxEBCQoICwcYBAQDB8cJAgQ5BAcCAwQMaQMGBgNpBggFCwdrCxAQC2sHCxYIAQcHBAAAAAMAAAAAAPYAngAXAC0ANgAANyIGFBYzMjY3MxcWOwEyNj0BNCYrAS4BBzIWFxY7ARUjJyYrASIHDgEjIiY0NhciBhQWMjY0JnAYISEYDxoIHwcCBh0EBQUESwcbDwsTBQIGRw0HAgYrBgIFEwsQFhYQBAYGCAYGnSEwIQ8NDQYGBDkEBg0PEwwLBScOBQULDBYgFhwGCAYGCAYAAAMAAAAAANkAxAAWABoAIwAANwcOAR0BJiMiBhQWMjY9ATc+AT0BNCYHFwc1BzIWFAYiJjQ2zjkEBQgLDxcXHxcxAwUHDQEmJwgLCw8MDMMJAQUEZAUWIBYWEFcIAQUEJgQGFhIHE2oLEAsLEAsAAAAEAAAAAAD2AJ4AFwAgACkANQAANyIGBycuASMiBhQWMzI2PwEeATMyNjQmBzIWFAYiJjQ2BzIWFAYiJjQ2MyIGFBY7ATI2NCYjvBUgAxYDDwkLERELCQ8DFgMgFRghIRgQFhYgFhZZBAYGCAUFZAQGBgQTBAUFBJ0bFQEICxEYEQsIARUbITAhExYgFhYgFhwGCAYGCAYGCAYGCAYAAAAABAAAAAAA9gCeABcAIAA9AEYAADciBgcjLgEjIgYUFjMyNjczHgEzMjY0JgcyFhQGIiY0NhciBh0BIyIGFBY7ARUUFjI2PQEzMjY0JisBNTQmBzIWFAYiJjQ2vBUgAxYDDwkLERELCQ8DFgMgFRghIRgQFhYgFhYQAwUDAwUFAwMFBgUDAwUFAwMFbAQGBggFBZ0bFAgLERgRCwgUGyEwIRMWIBYWIBYTBQMDBQYFAwMFBQMDBQYFAwMFCQYIBgYIBgAAAAYAAP/5APoAzwAWAB8AJwA3AD0ASwAANxUUFh8BFjI/AT4BPQE0LwEmIg8BBhU3MDEXBwYvATcHJj0BHwEVJzcUDwE1PwEVFBYyNj0BNxUnNh8BBycHJyYOARYfARYzMjYmJzIIBkkGDgZJBggEVAUOBVQENkkWBQVDGh8FRQREnwVEBB0FBwUXVgQERBpICREDBwQCBBECAgYEAgSaXggNAygDAygDDQheBQIrAwMrAgUNJgwCAiUNdAMGTyUCViUJBgMlVgIPFQQFBQQfDE+AAgIiDiVVCgECBgcCCQEIBwEAAAIAAAAAAPYAtgAdADwAADcmBw4BBwYVFBY7ARceAT8BFhcWMzI2NzY/ATYuAQcUFQcGBw4BIi8BJiIPASc3PgEuAQ8BIyImNDc+ATfnBgcUeAcQDgoZCQEIAxsWBAkLCA4EAgkJAgIICgEEBgcECgQkAwYDDgU7BAMDBwRBIAICBAd3E7QCAgYnAwcPCg4qBAMCDBUEBwkIBTI5DAsIEQEBCRwkJwoDIwMCDBkZAgcHAwEcAwUCAyYFAAAAAgAAAAAA+wDKAA4AGgAANzAvAQcGHQEUFjsBMj8CLwEmJyYPARc3NjTQATBrAgMCLgECayMaBgICCAYaNBgEcQEvawICLQIDAms3GQcCAQMEGjQYBAwAAAMAAAAAAPUAwwAiACsAMQAANyIPAScmIgYUHwEHBg8BBh8BFj8BNj8BFxYyNjQvATc2NCYHMhYUDwEnNzYHFw8BJzfQEAopAgMIBgMHQAEBCgIECgQGHAMBQQcDCAYDAykKFBAHCgUpGCkFNw8/FAIHwgopAwMGCAMHQQEDHAYECgQCCgEBQQgDBggDAikLHxQTCQ8FKRkoBUAPPwcCFAACAAAAAADrALcAHAA8AAA3LwE0JgYPAiIGFh8BBwYXFj8BFxY3NDUnNzYmBzUzFTM1MxUzNTMVMzU0JisBNTQmKwEiBh0BIyIGHQGxEQcDAgEHEAICAQEMAwEDAQIODwMCBA0CA1scFRwVHBUJByEJByYHCSEHCaICEAEBAQEQAgICAQwQAwEBAQkJAgMBAhAMAgOQHh5CQiYmLAcJCwcJCQcTCgYkAAACAAAAAADZAMQAMAA7AAA3IgYdASMiBh0BFBY7ARUUBisBIgYUFjsBMjY9ATMyNj0BNCYrATU0JiIGHQEjNTQmBzIzFRQGKwEiJjVwBAYJBAYXDxMIBhgEBQUEGA4UEw8XBgQJBggFOgUOMDAMBzoHDMMFBB0FBDAQFhgGCAYIBRMOGBYQMAQFHQQFBQQdHQQFOSYICwsIAAIAAAAAAMgArwAbACgAADc1NCYiBh0BIyIGFBY7ARUUFjI2NzUzMjY0JiMXFAYrASImNDY7ATIWowgKBxkGBwcFGgcKBwEZBQcHBQwHBUsGBwcFTAUHihkFBwcFGQgKBxkGBwcGGQcKCGQGBwcLBwcAAAAAAwAAAAAA7gC8AAwAGQA1AAA3Ig4CHgEyPgE0LgEHIi4BND4BMh4BFA4BNyM1NCYiBh0BIyIGFBY7ARUUFjI2PQEzMjY0JpYYKBcBGCgwKBgYKBgTIRMTISYhExMhEBsECAQZBAUFBBkECAQbAwUFvBgoMCgXFygwKBeeEyEmIRMTISYhE0wcBAUFBBwEBwUZBAUFBBkFBwQAAAAABwAAAAAA7AC8ACIAJwArADQAPQBBAEUAADc1Nj0BNCYnNi4CIgYHLgEiDgIXDgEdARQXFRQWOwEWNiczFSM1OwEVIzcyFhQGKwE0NiMyFhUjIiY0Ngc1MxU3MxUj4wkLCQMCCg4TEgYGEhMOCgIDCQsJDQpsCg1vFzRKNDQXBQcHBRcOOwkOFwUHBw8rFisrIjEHChYIDAEIEA0HBwcHBwcNEAgBDAgWCgcxCQwBDWEWFhZCBwkGCQ0NCQYJB4QsLCwsAAIAAAAAAOIAyAAPAB8AAD8BJyY0NjIfATcnJiIGFBc3JiIGFB8BBycmIgYUHwE3lxEsCBAYCCwSLQ8sHw8vBAoHAzgoOAQKBwRJSzwSLgkYEQgvEy4QIC4QMAQICgQ6KjoEBwsETE4AAgAA//MBBQDVAAwAIwAANzQ+ATIeARQOASIuATciDgEUHgEzMjcXFj4BNC8BPgE1NC4BQRYlLCUWFiUsJRZRHTEcHDEdIxweAwsHBB0MDR0wahYmFhYmLCUWFiWAHDE5MR0VHgQBBwoEHQ4jEx0xHAAAAAAGAAD//wD3AMsAHAApADoAUwBkAHIAADcxFzIXFQ4DIi8CNDU3NDYzMRY2NzY3NDYzBzEzMhYVMRQGIiY0NiczMhYdARQGKwEiJj0BNDYzNzIzFxQVBw4BIyYGBwYHFAYjLwE1Njc+AQczMhYdARQGKwEiJj0BNDYzNzEzMhYVMRQGIiY0NjPmDQIBAhAaIyQRAgEGAwEVKxAVBAICkAEEBwcJBwcZbwECAgFvAQMCAnwBAQEFAQMBEycQEwcCARABCBkUMhlvAQMCAm8BAgIBTQEEBwcKBgcEXQIBAxEgGQ0GAQIBAg0BAQgIDxMdAQIxBgUFBgcJBi0CAg4BAgIBDgICaQIBAQ0CAQcHDRAZAQIEAgIgFRAJQAIBDgICAgEOAgIqBgUFBgYKBgAMAAAAAADuALwABQAWAB8AKAAxAEcAUABZAGoAcwB8AIUAADcGBxc3LwEzMjY9ATQmKwEiBh0BFBYzNzIWFAYiJjQ2IzIWFAYiJjQ2IzIWFAYiJjQ2BzM+ATIWFzc2PQE0JisBIgYHFR4BMzcyFhQGIiY0NiMyFhQGIiY0Nhc0NyMiBh0BFBY7ATI3LgE1ByImNDYyFhQGMyImNDYyFhQGNyIGFBYyNjQm2wQFEwkTin8ICwsIfwcLCwd4AwQEBQQEVgMDAwYDAxYCBAQFBAQEQgUUGBMFAQYLCH8HCwEBCwcgAwMDBgMDFgIEBAUEBDoBPwcLCwdZAwMOEzcDBAQFBAQXAwMDBgMDRQwRERgRESgFBBIIE2ULCAkHCwsHCQgLHgQFBAQFBAQFBAQFBAQFBAQFBFkLDgsJAQUICQcMDAcJCAsdAwYDAwYDAwYDAwYDLgMBCwgICAsBAxcPGQMGAwMGAwMGAwMGAzYRGBERGBEAAAADAAAAAADuALUADwAfACwAADc1NCYrASIGHQEeATsBMjYnNTQ2OwEyFh0BFAYrASImFzI2JzU0JiIGHQEUFsATDUEOEwESDkENE2wGBUEEBgYEQQUGjwQHAQYJBgYzYg0TEw1iDRMTDWIEBgYEYgQGBhEGBXYFBgYFdgUGAAAAAAQAAAAAAPYAsQAUACkAPABJAAA3IgYHBhQWMjc+ATIWFxYyNjQnLgEHIgYHBh4BMjc+ATIWFx4BPgEnLgEHIgYHBhQWMjc2MhceATY0Jy4BByIPAQYWOwEyNi8BJpYbMBICBggCDykuKQ8CCAYCEjAbEiIMAwEGBwMJGx0ZCgMHBgEDDCETChMHAgYIAwgaCAMIBgIHEgsEAhQEBAcmBgUEEwOwFhMDCAUDERISEQMFCAMUFSYPDgMIBQMLDAwKAwEGCAMNDyYJBwMIBQMKCgIBBQgDCAgmAxMEDAwEEwMABAAAAAAA4wDEABkAJAAyAFcAADciDgEVFBYfARYXBwYUFjI/ATY0JiIPAS4BBzIWFwcnLgE1NDYXIgYVFBYyNjQ2MjY0JhcGDwIOARUjIgYUFjsBFAYiJy4BDgEXFjMyNj0BNDY/ATYuAZYSHxIICQMFASADBQgDhQMFCAMGCR0QDBYGQwkGBhwUDBEGCAUGCAYGKwQCBQQHBgkEBgYECQsSBQIIBgECCxMQFgQFCgIBB8MSHhIOEwsDBgMhAwgFA4UDCAUDBg0PEwwKQwsIDQoTHBMRCwQGBggFBggFMAEDBwQIDgoGCAUICwcDAQUHBA4WEBMGCAYMBAgEAAAAAAIAAAAAAOwAugAjAEgAADciBwYPAQ4BFRQWMzIzDwEGFjsBMjYvATIzMjY1NCYvASYnJgcWHwEeARUUBiMiLwEuAQYVFBcjNjU0JgYPAQYjIiY1NDY/ATaWBQMJEBYQDxwUBAMCBAMGBToFBgMGAwQUHA8QFhAJAwUJDRUNCxEMBQQCAgkGBR4FBgkCAgQFDBELDRUMugQMDRANFw8THAQLBQkJBQ8cEw8XDRANDAQZCQoQChAKCxEDAgQBBgQNEBANBAYBBAIDEQsKEAoQCQAFAAAAAAD2ALEAIQAuADwAQwBPAAA3IgcjBgcGBwYHIyIGFBYzFRQWMjY9AR4BFzMWMjY9ATQmBzIWHQEUBiImPQE0NgcUHQEnJicmIzUyNzY3BzMVIiY0NhcyMzEWFxUUBiImNdkNCwEJCRMYCAYZDxYWEBEXEQ0UCQEMFxEQDAQFBQgGBhkGFhoMCgoMGhZaAQgLCxsBBAYIBggFsAsHBAoEAQEWIBYKCxERCwQECgcLEAtiCxATBQNiAwUFA2IDBREMHCgDDAQCJgIEDBImCxALOQEBCAQFBQQABAAAAAAA4wDFAA0AEQAiADMAADcHBhQfARY/ATY0LwEmFRcHJwcOARYfARY/AT4BLgEPAScmBw4BFh8BFj8BPgEuAQ8BJyaRQgUFQgUFQgUFQgUvLy8WBAQCBEIFBUIEAgQIAz4+AwQEBAIEQgUFQgQCBAgDPj4DwiYDCwMmAwMmAwsDJgMWGxsbJwEHBwImAwMmAgcHAgIjIwIwAQcIAiYDAyYCCAcCAiQkAgAAAAABAAD//wDcAMkAJwAANzQzMhc1JiMiBhUUFxYXHgEXFhUUIyImJxUWMzI2NTQnJicmJyYnJogSHRoaHSEpCQcOCCAFCRUOIA4cICIrCgcOCREOBQiNCw40CiEdEQwKBwQMAwUHDgoINA0hHRMNCggEBgUDBAAAAAABAAAAAAD5AMcAIwAANyIdARQ7ATI/ATQ7ATIdARQ7ATI9ATQ7ATIfARQ7ATI9ATQjNgMDHQEBBAImAwIgAgMmAQEEAh0DA8YCLAMCCgIDnAICmwMCCgECLQIAAAEAAP/+AO0AyQAUAAA3Ig8BBhY7AQcGFj8BNiYrATc2JiOEBAI9AgQDLhUBCAOBAwMEOyMBAwTIA2UDBlAEBAN9Awc2AwYAAAEAAAAAAOMAxABWAAA3IgYVFBYXBhQWOwEVBhUUFjsBFBYXFhczMjY0JisBJicmNTMyNjQmKwEiJjQ2OwEyNjQmKwEiJjQ2OwEyNjQmKwEiJjQ2OwEyFhQGIyIGFBYzMjY0JiNwEBYIBwYRDAEBEQsKEA8HCwgEBgYEBgcIERMEBgYEMAMGBgMdBAYGBDkEBgYEJgQGBgQmCAsLCEwICwsIBAUFBBAWFhDDFhAJEAUHFhEDBAMLEQ0RBAMBBQgGAQIFCwUIBgUIBgUIBgYHBgYIBQsQCwsQCwUIBhYgFgAABQAAAAAA9gCxAB0ANAA/AEgAUQAANyIGHQEUFhceATI2NzMeATI2Nz4BPQE0LgEjNCYjBzI7ATIWHQEOAQcjLgEjIgcuAT0BNDYXMhYdARQGBy4BJwcyFhQGIiY0NjMyFhQGIiY0Nl0QFgoJAhATDwMgAw8SDwMOEA0WDBcPQwECQAcMBgoCIAMQCA8IAgMLcQoSBQYCCgVgBAYGCAUGWQQGBggFBbAWEDkLEQUKDgoJCQoKCQIUEAkMFg4QFhMLCDsCCQYJCg0CBwQ5CAsmEgsJCQgBBQoBEQYIBQUIBgYIBQUJBQAAAAMAAAAAAO0AvAAVAB0AIQAANycmIgYUHwEHBhQWNj8BFzEWMjY0JwcGIiY0PwEXNyc3F+lABAkGAwNQDBgiDFEDAwkGA3IGEAsFJxwPHBsbd0EDBgkDA1IMIxkBDFIEAwcJA04GCxEGJxwPHBscAAADAAAAAADjAMUAFwAdADMAADcGDwEGFRQWFwcGFBYyPwE2NCYiDwEnJhUXBy4BNRciBhUOAQcuAQ4BFhcWFxY3PgE3NCaSBS0QBgcLDwMFCAOFAwUIAwI2BCtXBwZ7BAYDGhsICAgFAQMKCgUFISEEBcICEwcDBigrEw8DCAUDhQMIBQMCFwIUE1cNJh4eBQQdKREFBwEGCAMHBgMDEzIjBAYAAAIAAAAAAPYAxAAhADUAADciDgEUHgEyPgE3NC4BBhUOASMiLgE0PgEzMhcWPgEmJyYXIg8BBi8BLgEOAR8BHgE/ATY0JpYaLBkZLDIpGwMFCAYEKx0VIxQUIxUNDQMHAwQDD0UEA1MEAwoCCAYCAgoGFghTAwXDGSw0LBkWJhgEBgEFBB0mFCMqIxQEAgQHCAEFEwNRBAUOAwEECAMOCQIIUQMIBQAAAAUAAAAAAPYAugAgACkAMgBCAEUAADciBhQXBh0BFBY7ATI2NxcWNj0BNCYPAS4BJzY0JiIHJgcyFhQGIiY0NjMyFhQGIiY0NgczMhYdARQGKwEiJj0BNDYXFSddEBYNDRYQQw4WAh8EDAwEHwEKCAkWIQwLEQgLCxALC0EICwsQCwsxQwcMDAdDCAsLjRi6FyELCxEnDxcUDyAEBQZfBwQEIAkQBAoeFw4OEwsQCwsQCwsQCwsQCzoLCCYICwsIJggLDTEZAAAABAAAAAAA9gCxABQAHAApADIAADciBh0BFBY7ATI2PQE0JisBNTQmIwczFSMiJjQ2FzMVFAYrASImPQEXFhciBhQWMjY0JlMLERINgA0SBQQKBQSGfHwEBQUEjwcFgAUHAgR2BAYGCAUFsBELXQ0SEg1KBAUdBAUTEwYIBSZABQcHBUIBAR0FCAYGCAUAAAAAAwAAAAAA5wDEACcANwBJAAA3IgYdAQ4BHQEUFhcVFBY7ATI2PQE+AT0BMjY9ATQmIzU0Jic1NCYjBzMyFh0BFAYrASImPQE0NhciBh0BIyIGFBY7ATI2PQE0JnUICw0QEA0LCDkICwwQBAYGBBAMCwhDTAgLCwhMCAsLLgQFEwQGBgQcBAYGwwsIAQMVDUwNFQMBCAsLCAEDFQ0JBgQmBAYJDRUDAQgLJgsITAgLCwhMCAsTBQQTBggGBgQdBAUABQAAAAAA4wC/ABAAHQAmAC8AQAAANyIHDgEeATc2MhcWPgEmJyYHIg4BFB4BMj4BNC4BMyIGFBYyNjQmBzIWFAYiJjQ2FyIGHQEUHwEWMjY0LwE1NCaWCgsEBAIHBAkPCQMHAgQECwoVIxQUIyojFBQjLgQGBggFBUcYISEwISEYBAYDEwMIBgMQBr4DAQYIBAECAgEECAYBAxwVIykjFBQjKSMVBggFBQgGEyIvISEvIhMGBBwEAxMDBggDEBgEBgAAAAMAAAAAANkAxAARAB4ALQAANyYHDgEVFB4BMj4BNC8BJicmBxYfARYVFAYiJjU0NhcGBwYXFBY+ATUmNzYuAZcFAyMZEh8kHxIKFg8LAgoKDRQIHCgcFA8EAgsCBggFAgkCAgjDAQQpNBwSHhISHiUQHhceBRsXEx0LDhMcHBMXKRACAxYWBAUBBgQQEQMIBAAAAAADAAAAAAD2AKMAMABhAJIAADcOARQXFjMyNzYzMhcWMjc2MzIWFxYyNjc2NCYiDwEGIicmIyIOAicmBgcGIi8BJgcOARQXFjMyNzYzMhcWMjc2MzIWFxYyNjc2NCYiDwEGIicmIyIOASInJgYHBiIvASYHDgEUFxYzMjc2MzIXFjI3NjMyFhcWMjY3NjQuAQ8BBiInJiMiDgEiJyYGBwYiLwEmPwQEAwwQDAkFBQgDChkIBAgDBAQKEw0HAgYHAwMEDQUKDQQLCQ0EChkJBAwEBgQDBAQECxAMCQUFCAMKGQgECAMEBAoTDQcCBgcDAwQNBQoNBAsJDQQKGQkEDAQGAwQEBAQLEAwJBQUIAwoZCAQIAwQEChMNBwIGBwMDBA0FCg0ECwkNBAoZCQQMBAYEogEGBwMMBwMDBwcDAgIGBgcDBwYDAwQDBwMGAQQGAQYDAwQDMAEFCAMLBgMCBwYDAQMFBgYDCAUCAwQDBgMGAwcBBwIDBAMwAQYHBAsGBAMHBgQCAgYGBwIIBQEDAwQDBwMHAwcBBgMDBAMAAwAAAAAA+wDAACIATAB1AAA3DgEnLgE+ATMVDgEHBh4BNjc2NzUzNz4BHgIOASImJyMGNzIeAg4DLgEnNx4CPgMuAw8BJyMiJy4BNDY3Nh4BBgcXNicmND4CMh4CBgcnNjQuAw4CFBcWHwEHFxYOAi4CPgEXNyaFCyUQDAkIFw8HDAQIBRUZCAQBOAEDCgwIAwQJCwsDKANDChEMBgMJEBMUEgUMBAwNDAoGAQMICg4ICBoCCAUDAgMDBRALAQQTClUEBw0REhEMCAEFDAMFCAwMDAkEAwQKBB8BAgEICwoHAQULBhgIHRAHCwkcHBMOAQcGChoPBQsHBwsBBQQBCAsLBwYHCz8IDxITEQsEAwwJBwYIAgQHCwwMCQYCAwQwBgMHBwcDBQELDgUkBBoIEhENBwcMExUKBwYPDAoFAQUKDAwGCgUCMgIFDAgDAwkLCgYBJgYAAAADAAAAAADsALoAFwAyAEoAADciBw4BHgE2MhYUBisBIgYUFjsBMjY0JhciBgcGHgE2NT4BMhYUBisBIgYUFjsBMjY0JgciBhQWOwEyFhQGIiYOARYXFjMyNjQmI3AIBgQCBAgFBwUFBCYEBgYEJgwQEEUQGAIBBAgHAg0TDg4KdwQGBgR3EhkZiQQGBgRfBAYGBwUIBAIEBggMEREMugQCCAYDBAYIBQYIBRAYEQoUEAQHAQUECQsOFA0GCAYaIxlpBQgGBQgGBAMGCAIEERgQAAAAAAAAEADGAAEAAAAAAAEABQAAAAEAAAAAAAIABwAFAAEAAAAAAAMABQAMAAEAAAAAAAQABQARAAEAAAAAAAUACwAWAAEAAAAAAAYABQAhAAEAAAAAAAoAKwAmAAEAAAAAAAsAEwBRAAMAAQQJAAEACgBkAAMAAQQJAAIADgBuAAMAAQQJAAMACgB8AAMAAQQJAAQACgCGAAMAAQQJAAUAFgCQAAMAAQQJAAYACgCmAAMAAQQJAAoAVgCwAAMAAQQJAAsAJgEGaWNvbnNSZWd1bGFyaWNvbnNpY29uc1ZlcnNpb24gMS4waWNvbnNHZW5lcmF0ZWQgYnkgc3ZnMnR0ZiBmcm9tIEZvbnRlbGxvIHByb2plY3QuaHR0cDovL2ZvbnRlbGxvLmNvbQBpAGMAbwBuAHMAUgBlAGcAdQBsAGEAcgBpAGMAbwBuAHMAaQBjAG8AbgBzAFYAZQByAHMAaQBvAG4AIAAxAC4AMABpAGMAbwBuAHMARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAgAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABiAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVABUQFSAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwAFYWxhcm0MYXJyb3ctY3VydmVkCmFycm93LWRvd24KYXJyb3ctbGVmdAthcnJvdy1yaWdodAhhcnJvdy11cAxhcnJvdy11cHdhcmQJYmFja3NwYWNlBGJlbGwFYm9hcmQIYm9va21hcmsKYm9vbGVhbi1vbgdib29sZWFuBGJ1bGIGYnVyZ2VyDWNoZWNrLXJvdW5kZWQFY2hlY2sMY2hldnJvbi1kb3duDGNoZXZyb24tbGVmdA1jaGV2cm9uLXJpZ2h0CmNoZXZyb24tdXAEY2hpcAVjaGlwcxRjbG9zZS1yb3VuZGVkLWZpbGxlZAVjbG9zZQhjbG91ZC11cARjbHViA2NtZARjb2RlBmNvZmZlZQNjb2cOY29sbGFwc2UtZW1wdHkIY29sbGFwc2UHY29tcGFzcwpjb25uZWN0aW9uBGNvcHkHY3lsbmRlcgdkaWFtb25kDmRvbGxhci1yb3VuZGVkD2RvdHMtaG9yaXpvbnRhbA1kb3RzLXZlcnRpY2FsDGVudGl0bGVtZW50cwllcXVhbGl6ZXIaZXhjbGFtYXRpb24tcm91bmRlZC1maWxsZWQDZXllBmZpbHRlcgxmb2xkZXItbWludXMLZm9sZGVyLXBsdXMGZm9sZGVyB2dsYXNzZXMFZ2xvYmUGaGFtbWVyBGhhc2gFaGVhcnQHaHVic3BvdAVpbWFnZQxpbmZvLXJvdW5kZWQFanVpY2UDa2V5BW11c2ljCm5vZGUtbWludXMJbm9kZS1wbHVzB3BhY2thZ2ULcGFwZXItcGxhbmUGcGVuY2lsBnBpY2tlcgRwbGFuBHBsdWcKcGx1cy1taW51cxRwbHVzLXJvdW5kZWQtb3V0bGluZQdwcmVzZW50CXNjaGVtYXRpYwZzZWFyY2gHc2VnbWVudA1zZXJ2ZXItc2VhcmNoB3NpZGViYXIGc2lnbmFsB3NpbGVuY2UFc3BhZGUHc3BlYWtlcgZzdGFja3MGc3RyaXBlBHRleHQHdGh1bmRlcgd0b3JuYWRvBXRydWNrBHR1YmULdW5wcm90ZWN0ZWQIdmVyaWZpZWQMdmlkZW8tY2FtZXJhBndhbGxldAp3YXRjaC1oYW5kDHdhdGNoLXBvY2tldAp3YXRlci1kcm9wBXdhdmVzB3dlYmhvb2sEd2luZAAAAA==)
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