@schematichq/schematic-components 1.6.0 → 1.6.2

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.
@@ -7097,7 +7097,7 @@ var import_debounce = __toESM(require_debounce());
7097
7097
  var import_merge2 = __toESM(require_merge());
7098
7098
  var import_react12 = require("react");
7099
7099
 
7100
- // node_modules/uuid/dist-browser/stringify.js
7100
+ // node_modules/uuid/dist/stringify.js
7101
7101
  var byteToHex = [];
7102
7102
  for (let i2 = 0; i2 < 256; ++i2) {
7103
7103
  byteToHex.push((i2 + 256).toString(16).slice(1));
@@ -7106,7 +7106,7 @@ function unsafeStringify(arr, offset = 0) {
7106
7106
  return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
7107
7107
  }
7108
7108
 
7109
- // node_modules/uuid/dist-browser/rng.js
7109
+ // node_modules/uuid/dist/rng.js
7110
7110
  var getRandomValues;
7111
7111
  var rnds8 = new Uint8Array(16);
7112
7112
  function rng() {
@@ -7119,11 +7119,11 @@ function rng() {
7119
7119
  return getRandomValues(rnds8);
7120
7120
  }
7121
7121
 
7122
- // node_modules/uuid/dist-browser/native.js
7122
+ // node_modules/uuid/dist/native.js
7123
7123
  var randomUUID = typeof crypto !== "undefined" && crypto.randomUUID && crypto.randomUUID.bind(crypto);
7124
7124
  var native_default = { randomUUID };
7125
7125
 
7126
- // node_modules/uuid/dist-browser/v4.js
7126
+ // node_modules/uuid/dist/v4.js
7127
7127
  function _v4(options, buf, offset) {
7128
7128
  options = options || {};
7129
7129
  const rnds = options.random ?? options.rng?.() ?? rng();
@@ -7537,6 +7537,30 @@ function BillingCreditResponseDataFromJSONTyped(json, ignoreDiscriminator) {
7537
7537
  };
7538
7538
  }
7539
7539
 
7540
+ // src/api/checkoutexternal/models/BillingPlanCreditGrantResponseData.ts
7541
+ function BillingPlanCreditGrantResponseDataFromJSON(json) {
7542
+ return BillingPlanCreditGrantResponseDataFromJSONTyped(json, false);
7543
+ }
7544
+ function BillingPlanCreditGrantResponseDataFromJSONTyped(json, ignoreDiscriminator) {
7545
+ if (json == null) {
7546
+ return json;
7547
+ }
7548
+ return {
7549
+ createdAt: new Date(json["created_at"]),
7550
+ creditAmount: json["credit_amount"],
7551
+ creditId: json["credit_id"],
7552
+ creditName: json["credit_name"],
7553
+ creditPluralName: json["credit_plural_name"] == null ? void 0 : json["credit_plural_name"],
7554
+ creditSingularName: json["credit_singular_name"] == null ? void 0 : json["credit_singular_name"],
7555
+ id: json["id"],
7556
+ planId: json["plan_id"],
7557
+ planName: json["plan_name"],
7558
+ resetCadence: json["reset_cadence"],
7559
+ resetStart: json["reset_start"],
7560
+ updatedAt: new Date(json["updated_at"])
7561
+ };
7562
+ }
7563
+
7540
7564
  // src/api/checkoutexternal/models/BillingProductPriceTierResponseData.ts
7541
7565
  function BillingProductPriceTierResponseDataFromJSON(json) {
7542
7566
  return BillingProductPriceTierResponseDataFromJSONTyped(json, false);
@@ -8451,6 +8475,63 @@ function CustomPlanConfigFromJSONTyped(json, ignoreDiscriminator) {
8451
8475
  };
8452
8476
  }
8453
8477
 
8478
+ // src/api/checkoutexternal/models/CreditGrantDetail.ts
8479
+ function CreditGrantDetailFromJSON(json) {
8480
+ return CreditGrantDetailFromJSONTyped(json, false);
8481
+ }
8482
+ function CreditGrantDetailFromJSONTyped(json, ignoreDiscriminator) {
8483
+ if (json == null) {
8484
+ return json;
8485
+ }
8486
+ return {
8487
+ creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8488
+ expiresAt: json["expires_at"] == null ? void 0 : new Date(json["expires_at"]),
8489
+ grantReason: json["grant_reason"],
8490
+ quantity: json["quantity"]
8491
+ };
8492
+ }
8493
+
8494
+ // src/api/checkoutexternal/models/FeatureUsageResponseData.ts
8495
+ function FeatureUsageResponseDataFromJSON(json) {
8496
+ return FeatureUsageResponseDataFromJSONTyped(json, false);
8497
+ }
8498
+ function FeatureUsageResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8499
+ if (json == null) {
8500
+ return json;
8501
+ }
8502
+ return {
8503
+ access: json["access"],
8504
+ allocation: json["allocation"] == null ? void 0 : json["allocation"],
8505
+ allocationType: json["allocation_type"],
8506
+ companyOverride: json["company_override"] == null ? void 0 : CompanyOverrideResponseDataFromJSON(json["company_override"]),
8507
+ creditConsumptionRate: json["credit_consumption_rate"] == null ? void 0 : json["credit_consumption_rate"],
8508
+ creditGrantCounts: json["credit_grant_counts"] == null ? void 0 : json["credit_grant_counts"],
8509
+ creditGrantDetails: json["credit_grant_details"] == null ? void 0 : json["credit_grant_details"].map(
8510
+ CreditGrantDetailFromJSON
8511
+ ),
8512
+ creditGrantReason: json["credit_grant_reason"] == null ? void 0 : json["credit_grant_reason"],
8513
+ creditRemaining: json["credit_remaining"] == null ? void 0 : json["credit_remaining"],
8514
+ creditTotal: json["credit_total"] == null ? void 0 : json["credit_total"],
8515
+ creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8516
+ creditUsed: json["credit_used"] == null ? void 0 : json["credit_used"],
8517
+ entitlementExpirationDate: json["entitlement_expiration_date"] == null ? void 0 : new Date(json["entitlement_expiration_date"]),
8518
+ entitlementId: json["entitlement_id"],
8519
+ entitlementSource: json["entitlement_source"] == null ? void 0 : json["entitlement_source"],
8520
+ entitlementType: json["entitlement_type"],
8521
+ feature: json["feature"] == null ? void 0 : FeatureDetailResponseDataFromJSON(json["feature"]),
8522
+ metricResetAt: json["metric_reset_at"] == null ? void 0 : new Date(json["metric_reset_at"]),
8523
+ monthReset: json["month_reset"] == null ? void 0 : json["month_reset"],
8524
+ monthlyUsageBasedPrice: json["monthly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_usage_based_price"]),
8525
+ period: json["period"] == null ? void 0 : json["period"],
8526
+ plan: json["plan"] == null ? void 0 : PlanResponseDataFromJSON(json["plan"]),
8527
+ planEntitlement: json["plan_entitlement"] == null ? void 0 : PlanEntitlementResponseDataFromJSON(json["plan_entitlement"]),
8528
+ priceBehavior: json["price_behavior"] == null ? void 0 : json["price_behavior"],
8529
+ softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
8530
+ usage: json["usage"] == null ? void 0 : json["usage"],
8531
+ yearlyUsageBasedPrice: json["yearly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_usage_based_price"])
8532
+ };
8533
+ }
8534
+
8454
8535
  // src/api/checkoutexternal/models/CompanyPlanDetailResponseData.ts
8455
8536
  function CompanyPlanDetailResponseDataFromJSON(json) {
8456
8537
  return CompanyPlanDetailResponseDataFromJSONTyped(json, false);
@@ -8493,6 +8574,9 @@ function CompanyPlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8493
8574
  planType: json["plan_type"],
8494
8575
  trialDays: json["trial_days"] == null ? void 0 : json["trial_days"],
8495
8576
  updatedAt: new Date(json["updated_at"]),
8577
+ usageViolations: json["usage_violations"].map(
8578
+ FeatureUsageResponseDataFromJSON
8579
+ ),
8496
8580
  valid: json["valid"],
8497
8581
  yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["yearly_price"])
8498
8582
  };
@@ -8592,6 +8676,9 @@ function PlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8592
8676
  ),
8593
8677
  icon: json["icon"],
8594
8678
  id: json["id"],
8679
+ includedCreditGrants: json["included_credit_grants"] == null ? void 0 : json["included_credit_grants"].map(
8680
+ BillingPlanCreditGrantResponseDataFromJSON
8681
+ ),
8595
8682
  isDefault: json["is_default"],
8596
8683
  isFree: json["is_free"],
8597
8684
  isTrialable: json["is_trialable"],
@@ -8703,62 +8790,6 @@ function ComponentResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8703
8790
  };
8704
8791
  }
8705
8792
 
8706
- // src/api/checkoutexternal/models/CreditGrantDetail.ts
8707
- function CreditGrantDetailFromJSON(json) {
8708
- return CreditGrantDetailFromJSONTyped(json, false);
8709
- }
8710
- function CreditGrantDetailFromJSONTyped(json, ignoreDiscriminator) {
8711
- if (json == null) {
8712
- return json;
8713
- }
8714
- return {
8715
- creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8716
- expiresAt: json["expires_at"] == null ? void 0 : new Date(json["expires_at"]),
8717
- grantReason: json["grant_reason"],
8718
- quantity: json["quantity"]
8719
- };
8720
- }
8721
-
8722
- // src/api/checkoutexternal/models/FeatureUsageResponseData.ts
8723
- function FeatureUsageResponseDataFromJSON(json) {
8724
- return FeatureUsageResponseDataFromJSONTyped(json, false);
8725
- }
8726
- function FeatureUsageResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8727
- if (json == null) {
8728
- return json;
8729
- }
8730
- return {
8731
- access: json["access"],
8732
- allocation: json["allocation"] == null ? void 0 : json["allocation"],
8733
- allocationType: json["allocation_type"],
8734
- companyOverride: json["company_override"] == null ? void 0 : CompanyOverrideResponseDataFromJSON(json["company_override"]),
8735
- creditGrantCounts: json["credit_grant_counts"] == null ? void 0 : json["credit_grant_counts"],
8736
- creditGrantDetails: json["credit_grant_details"] == null ? void 0 : json["credit_grant_details"].map(
8737
- CreditGrantDetailFromJSON
8738
- ),
8739
- creditGrantReason: json["credit_grant_reason"] == null ? void 0 : json["credit_grant_reason"],
8740
- creditRemaining: json["credit_remaining"] == null ? void 0 : json["credit_remaining"],
8741
- creditTotal: json["credit_total"] == null ? void 0 : json["credit_total"],
8742
- creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8743
- creditUsed: json["credit_used"] == null ? void 0 : json["credit_used"],
8744
- entitlementExpirationDate: json["entitlement_expiration_date"] == null ? void 0 : new Date(json["entitlement_expiration_date"]),
8745
- entitlementId: json["entitlement_id"],
8746
- entitlementSource: json["entitlement_source"] == null ? void 0 : json["entitlement_source"],
8747
- entitlementType: json["entitlement_type"],
8748
- feature: json["feature"] == null ? void 0 : FeatureDetailResponseDataFromJSON(json["feature"]),
8749
- metricResetAt: json["metric_reset_at"] == null ? void 0 : new Date(json["metric_reset_at"]),
8750
- monthReset: json["month_reset"] == null ? void 0 : json["month_reset"],
8751
- monthlyUsageBasedPrice: json["monthly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_usage_based_price"]),
8752
- period: json["period"] == null ? void 0 : json["period"],
8753
- plan: json["plan"] == null ? void 0 : PlanResponseDataFromJSON(json["plan"]),
8754
- planEntitlement: json["plan_entitlement"] == null ? void 0 : PlanEntitlementResponseDataFromJSON(json["plan_entitlement"]),
8755
- priceBehavior: json["price_behavior"] == null ? void 0 : json["price_behavior"],
8756
- softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
8757
- usage: json["usage"] == null ? void 0 : json["usage"],
8758
- yearlyUsageBasedPrice: json["yearly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_usage_based_price"])
8759
- };
8760
- }
8761
-
8762
8793
  // src/api/checkoutexternal/models/FeatureUsageDetailResponseData.ts
8763
8794
  function FeatureUsageDetailResponseDataFromJSON(json) {
8764
8795
  return FeatureUsageDetailResponseDataFromJSONTyped(json, false);
@@ -10560,7 +10591,7 @@ var EmbedProvider = ({
10560
10591
  });
10561
10592
  const customHeaders = (0, import_react12.useMemo)(
10562
10593
  () => ({
10563
- "X-Schematic-Components-Version": "1.6.0",
10594
+ "X-Schematic-Components-Version": "1.6.2",
10564
10595
  "X-Schematic-Session-ID": sessionIdRef.current
10565
10596
  }),
10566
10597
  []
@@ -10826,17 +10857,15 @@ var EmbedProvider = ({
10826
10857
  const colorMode = darkModeQuery.matches ? "dark" : "light";
10827
10858
  dispatch({
10828
10859
  type: "UPDATE_SETTINGS",
10829
- settings: {
10830
- theme: {
10831
- colorMode
10832
- }
10833
- }
10860
+ settings: { theme: { colorMode } },
10861
+ update: true
10834
10862
  });
10835
10863
  function darkModeQueryHandler(event) {
10836
10864
  const newColorMode = event.matches ? "dark" : "light";
10837
10865
  dispatch({
10838
10866
  type: "UPDATE_SETTINGS",
10839
- settings: { theme: { colorMode: newColorMode } }
10867
+ settings: { theme: { colorMode: newColorMode } },
10868
+ update: true
10840
10869
  });
10841
10870
  }
10842
10871
  darkModeQuery.addEventListener("change", darkModeQueryHandler);
@@ -10889,8 +10918,9 @@ var EmbedProvider = ({
10889
10918
  }
10890
10919
  }, [state.accessToken, apiConfig, customHeaders]);
10891
10920
  (0, import_react12.useEffect)(() => {
10892
- const providedSettings = { ...options.settings || {} };
10893
- updateSettings(providedSettings, { update: false });
10921
+ if (options.settings) {
10922
+ updateSettings(options.settings, { update: true });
10923
+ }
10894
10924
  }, [options.settings, updateSettings]);
10895
10925
  (0, import_react12.useEffect)(() => {
10896
10926
  function planChangedHandler(event) {
@@ -15225,7 +15255,7 @@ var Label = dt.label`
15225
15255
  transition:
15226
15256
  transform 0.5s cubic-bezier(0.19, 1, 0.22, 1),
15227
15257
  opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
15228
- color: #cdd6f4;
15258
+ color: ${({ theme }) => theme.colorMode === "dark" ? "#cdd6f4" : "#000000"};
15229
15259
  touch-action: manipulation;
15230
15260
  `;
15231
15261
  var Input2 = dt.input`
@@ -19036,14 +19066,14 @@ var resolveDesignProps8 = (props) => {
19036
19066
  },
19037
19067
  showInclusionText: props.plans?.showInclusionText ?? true,
19038
19068
  showFeatureIcons: props.plans?.showFeatureIcons ?? true,
19039
- showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? true,
19069
+ showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? false,
19040
19070
  showEntitlements: props.plans?.showEntitlements ?? true
19041
19071
  },
19042
19072
  addOns: {
19043
19073
  isVisible: props.addOns?.isVisible ?? true,
19044
19074
  showDescription: props.addOns?.showDescription ?? true,
19045
19075
  showFeatureIcons: props.addOns?.showFeatureIcons ?? true,
19046
- showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? true,
19076
+ showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? false,
19047
19077
  showEntitlements: props.addOns?.showEntitlements ?? true
19048
19078
  },
19049
19079
  upgrade: {
@@ -19158,14 +19188,7 @@ var PricingTable = (0, import_react51.forwardRef)(
19158
19188
  }
19159
19189
  },
19160
19190
  children: [
19161
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
19162
- Text,
19163
- {
19164
- display: props.header.fontStyle,
19165
- $color: settings.theme.card.background,
19166
- children: props.header.isVisible && props.plans.isVisible && plans.length > 0 && t2("Plans")
19167
- }
19168
- ),
19191
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Text, { display: props.header.fontStyle, children: props.header.isVisible && props.plans.isVisible && plans.length > 0 && t2("Plans") }),
19169
19192
  showPeriodToggle && periods.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
19170
19193
  PeriodToggle,
19171
19194
  {
@@ -19218,14 +19241,7 @@ var PricingTable = (0, import_react51.forwardRef)(
19218
19241
  $justifyContent: "space-between",
19219
19242
  $alignItems: "center",
19220
19243
  $marginBottom: "1rem",
19221
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
19222
- Text,
19223
- {
19224
- display: props.header.fontStyle,
19225
- $color: settings.theme.card.background,
19226
- children: t2("Add-ons")
19227
- }
19228
- )
19244
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Text, { display: props.header.fontStyle, children: t2("Add-ons") })
19229
19245
  }
19230
19246
  ),
19231
19247
  /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
@@ -23885,7 +23901,10 @@ var SchematicEmbed = ({ id, accessToken }) => {
23885
23901
  );
23886
23902
  const ast = getEditorState(json);
23887
23903
  if (ast) {
23888
- updateSettings({ ...ast.ROOT.props.settings }, { update: false });
23904
+ const settings = ast.ROOT.props.settings;
23905
+ const { colorMode, ...theme2 } = settings.theme;
23906
+ const updated = { mode: settings.mode, theme: theme2, badge: settings.badge };
23907
+ updateSettings(updated, { update: true });
23889
23908
  nodes.push(...parseEditorState(ast));
23890
23909
  setChildren(nodes.map(renderer));
23891
23910
  }
@@ -331,6 +331,97 @@ declare interface BillingCreditResponseData_2 {
331
331
  updatedAt: Date;
332
332
  }
333
333
 
334
+ /**
335
+ * Schematic API
336
+ * Schematic API
337
+ *
338
+ * The version of the OpenAPI document: 0.1
339
+ *
340
+ *
341
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
342
+ * https://openapi-generator.tech
343
+ * Do not edit the class manually.
344
+ */
345
+ /**
346
+ *
347
+ * @export
348
+ * @interface BillingPlanCreditGrantResponseData
349
+ */
350
+ declare interface BillingPlanCreditGrantResponseData {
351
+ /**
352
+ *
353
+ * @type {Date}
354
+ * @memberof BillingPlanCreditGrantResponseData
355
+ */
356
+ createdAt: Date;
357
+ /**
358
+ *
359
+ * @type {number}
360
+ * @memberof BillingPlanCreditGrantResponseData
361
+ */
362
+ creditAmount: number;
363
+ /**
364
+ *
365
+ * @type {string}
366
+ * @memberof BillingPlanCreditGrantResponseData
367
+ */
368
+ creditId: string;
369
+ /**
370
+ *
371
+ * @type {string}
372
+ * @memberof BillingPlanCreditGrantResponseData
373
+ */
374
+ creditName: string;
375
+ /**
376
+ *
377
+ * @type {string}
378
+ * @memberof BillingPlanCreditGrantResponseData
379
+ */
380
+ creditPluralName?: string | null;
381
+ /**
382
+ *
383
+ * @type {string}
384
+ * @memberof BillingPlanCreditGrantResponseData
385
+ */
386
+ creditSingularName?: string | null;
387
+ /**
388
+ *
389
+ * @type {string}
390
+ * @memberof BillingPlanCreditGrantResponseData
391
+ */
392
+ id: string;
393
+ /**
394
+ *
395
+ * @type {string}
396
+ * @memberof BillingPlanCreditGrantResponseData
397
+ */
398
+ planId: string;
399
+ /**
400
+ *
401
+ * @type {string}
402
+ * @memberof BillingPlanCreditGrantResponseData
403
+ */
404
+ planName: string;
405
+ /**
406
+ *
407
+ * @type {string}
408
+ * @memberof BillingPlanCreditGrantResponseData
409
+ */
410
+ resetCadence: string;
411
+ /**
412
+ *
413
+ * @type {string}
414
+ * @memberof BillingPlanCreditGrantResponseData
415
+ */
416
+ resetStart: string;
417
+ /**
418
+ *
419
+ * @type {Date}
420
+ * @memberof BillingPlanCreditGrantResponseData
421
+ */
422
+ updatedAt: Date;
423
+ }
424
+
334
425
  /**
335
426
  * Schematic API
336
427
  * Schematic API
@@ -1967,7 +2058,7 @@ export declare interface ColumnProps extends React.HTMLProps<HTMLDivElement> {
1967
2058
  }
1968
2059
 
1969
2060
  /**
1970
- * The returned resource
2061
+ *
1971
2062
  * @export
1972
2063
  * @interface CompanyCustomerBalance
1973
2064
  */
@@ -2485,6 +2576,12 @@ declare interface CompanyPlanDetailResponseData {
2485
2576
  * @memberof CompanyPlanDetailResponseData
2486
2577
  */
2487
2578
  updatedAt: Date;
2579
+ /**
2580
+ *
2581
+ * @type {Array<FeatureUsageResponseData>}
2582
+ * @memberof CompanyPlanDetailResponseData
2583
+ */
2584
+ usageViolations: Array<FeatureUsageResponseData>;
2488
2585
  /**
2489
2586
  *
2490
2587
  * @type {boolean}
@@ -2826,7 +2923,7 @@ declare interface ComponentCheckoutSettings {
2826
2923
  }
2827
2924
 
2828
2925
  /**
2829
- * The returned resource
2926
+ *
2830
2927
  * @export
2831
2928
  * @interface ComponentHydrateResponseData
2832
2929
  */
@@ -4558,6 +4655,12 @@ declare interface FeatureUsageResponseData {
4558
4655
  * @memberof FeatureUsageResponseData
4559
4656
  */
4560
4657
  companyOverride?: CompanyOverrideResponseData;
4658
+ /**
4659
+ * The rate at which credits are consumed per unit of usage
4660
+ * @type {number}
4661
+ * @memberof FeatureUsageResponseData
4662
+ */
4663
+ creditConsumptionRate?: number | null;
4561
4664
  /**
4562
4665
  *
4563
4666
  * @type {{ [key: string]: number; }}
@@ -5258,7 +5361,7 @@ declare interface ListInvoicesParams {
5258
5361
  */
5259
5362
  declare interface ListInvoicesResponse {
5260
5363
  /**
5261
- * The returned resources
5364
+ *
5262
5365
  * @type {Array<InvoiceResponseData>}
5263
5366
  * @memberof ListInvoicesResponse
5264
5367
  */
@@ -5350,7 +5453,7 @@ export declare type PaymentMethodProps = DesignProps_5;
5350
5453
  * Do not edit the class manually.
5351
5454
  */
5352
5455
  /**
5353
- * The created resource
5456
+ *
5354
5457
  * @export
5355
5458
  * @interface PaymentMethodResponseData
5356
5459
  */
@@ -5733,6 +5836,12 @@ declare interface PlanDetailResponseData {
5733
5836
  * @memberof PlanDetailResponseData
5734
5837
  */
5735
5838
  id: string;
5839
+ /**
5840
+ *
5841
+ * @type {Array<BillingPlanCreditGrantResponseData>}
5842
+ * @memberof PlanDetailResponseData
5843
+ */
5844
+ includedCreditGrants?: Array<BillingPlanCreditGrantResponseData>;
5736
5845
  /**
5737
5846
  *
5738
5847
  * @type {boolean}
@@ -6610,7 +6719,7 @@ declare interface PreviewObjectResponseData_2 {
6610
6719
  }
6611
6720
 
6612
6721
  /**
6613
- * The created resource
6722
+ *
6614
6723
  * @export
6615
6724
  * @interface PreviewSubscriptionChangeResponseData
6616
6725
  */
@@ -6825,7 +6934,7 @@ export declare interface ProgressBarProps extends React.ComponentPropsWithoutRef
6825
6934
  export declare const progressColorMap: ("blue" | "red" | "yellow")[];
6826
6935
 
6827
6936
  /**
6828
- * The returned resource
6937
+ *
6829
6938
  * @export
6830
6939
  * @interface PublicPlansResponseData
6831
6940
  */
@@ -7464,7 +7573,7 @@ declare type SelectedPlan = Plan & {
7464
7573
  * Do not edit the class manually.
7465
7574
  */
7466
7575
  /**
7467
- * The returned resource
7576
+ *
7468
7577
  * @export
7469
7578
  * @interface SetupIntentResponseData
7470
7579
  */
@@ -7038,7 +7038,7 @@ import {
7038
7038
  useState as useState2
7039
7039
  } from "react";
7040
7040
 
7041
- // node_modules/uuid/dist-browser/stringify.js
7041
+ // node_modules/uuid/dist/stringify.js
7042
7042
  var byteToHex = [];
7043
7043
  for (let i2 = 0; i2 < 256; ++i2) {
7044
7044
  byteToHex.push((i2 + 256).toString(16).slice(1));
@@ -7047,7 +7047,7 @@ function unsafeStringify(arr, offset = 0) {
7047
7047
  return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
7048
7048
  }
7049
7049
 
7050
- // node_modules/uuid/dist-browser/rng.js
7050
+ // node_modules/uuid/dist/rng.js
7051
7051
  var getRandomValues;
7052
7052
  var rnds8 = new Uint8Array(16);
7053
7053
  function rng() {
@@ -7060,11 +7060,11 @@ function rng() {
7060
7060
  return getRandomValues(rnds8);
7061
7061
  }
7062
7062
 
7063
- // node_modules/uuid/dist-browser/native.js
7063
+ // node_modules/uuid/dist/native.js
7064
7064
  var randomUUID = typeof crypto !== "undefined" && crypto.randomUUID && crypto.randomUUID.bind(crypto);
7065
7065
  var native_default = { randomUUID };
7066
7066
 
7067
- // node_modules/uuid/dist-browser/v4.js
7067
+ // node_modules/uuid/dist/v4.js
7068
7068
  function _v4(options, buf, offset) {
7069
7069
  options = options || {};
7070
7070
  const rnds = options.random ?? options.rng?.() ?? rng();
@@ -7478,6 +7478,30 @@ function BillingCreditResponseDataFromJSONTyped(json, ignoreDiscriminator) {
7478
7478
  };
7479
7479
  }
7480
7480
 
7481
+ // src/api/checkoutexternal/models/BillingPlanCreditGrantResponseData.ts
7482
+ function BillingPlanCreditGrantResponseDataFromJSON(json) {
7483
+ return BillingPlanCreditGrantResponseDataFromJSONTyped(json, false);
7484
+ }
7485
+ function BillingPlanCreditGrantResponseDataFromJSONTyped(json, ignoreDiscriminator) {
7486
+ if (json == null) {
7487
+ return json;
7488
+ }
7489
+ return {
7490
+ createdAt: new Date(json["created_at"]),
7491
+ creditAmount: json["credit_amount"],
7492
+ creditId: json["credit_id"],
7493
+ creditName: json["credit_name"],
7494
+ creditPluralName: json["credit_plural_name"] == null ? void 0 : json["credit_plural_name"],
7495
+ creditSingularName: json["credit_singular_name"] == null ? void 0 : json["credit_singular_name"],
7496
+ id: json["id"],
7497
+ planId: json["plan_id"],
7498
+ planName: json["plan_name"],
7499
+ resetCadence: json["reset_cadence"],
7500
+ resetStart: json["reset_start"],
7501
+ updatedAt: new Date(json["updated_at"])
7502
+ };
7503
+ }
7504
+
7481
7505
  // src/api/checkoutexternal/models/BillingProductPriceTierResponseData.ts
7482
7506
  function BillingProductPriceTierResponseDataFromJSON(json) {
7483
7507
  return BillingProductPriceTierResponseDataFromJSONTyped(json, false);
@@ -8392,6 +8416,63 @@ function CustomPlanConfigFromJSONTyped(json, ignoreDiscriminator) {
8392
8416
  };
8393
8417
  }
8394
8418
 
8419
+ // src/api/checkoutexternal/models/CreditGrantDetail.ts
8420
+ function CreditGrantDetailFromJSON(json) {
8421
+ return CreditGrantDetailFromJSONTyped(json, false);
8422
+ }
8423
+ function CreditGrantDetailFromJSONTyped(json, ignoreDiscriminator) {
8424
+ if (json == null) {
8425
+ return json;
8426
+ }
8427
+ return {
8428
+ creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8429
+ expiresAt: json["expires_at"] == null ? void 0 : new Date(json["expires_at"]),
8430
+ grantReason: json["grant_reason"],
8431
+ quantity: json["quantity"]
8432
+ };
8433
+ }
8434
+
8435
+ // src/api/checkoutexternal/models/FeatureUsageResponseData.ts
8436
+ function FeatureUsageResponseDataFromJSON(json) {
8437
+ return FeatureUsageResponseDataFromJSONTyped(json, false);
8438
+ }
8439
+ function FeatureUsageResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8440
+ if (json == null) {
8441
+ return json;
8442
+ }
8443
+ return {
8444
+ access: json["access"],
8445
+ allocation: json["allocation"] == null ? void 0 : json["allocation"],
8446
+ allocationType: json["allocation_type"],
8447
+ companyOverride: json["company_override"] == null ? void 0 : CompanyOverrideResponseDataFromJSON(json["company_override"]),
8448
+ creditConsumptionRate: json["credit_consumption_rate"] == null ? void 0 : json["credit_consumption_rate"],
8449
+ creditGrantCounts: json["credit_grant_counts"] == null ? void 0 : json["credit_grant_counts"],
8450
+ creditGrantDetails: json["credit_grant_details"] == null ? void 0 : json["credit_grant_details"].map(
8451
+ CreditGrantDetailFromJSON
8452
+ ),
8453
+ creditGrantReason: json["credit_grant_reason"] == null ? void 0 : json["credit_grant_reason"],
8454
+ creditRemaining: json["credit_remaining"] == null ? void 0 : json["credit_remaining"],
8455
+ creditTotal: json["credit_total"] == null ? void 0 : json["credit_total"],
8456
+ creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8457
+ creditUsed: json["credit_used"] == null ? void 0 : json["credit_used"],
8458
+ entitlementExpirationDate: json["entitlement_expiration_date"] == null ? void 0 : new Date(json["entitlement_expiration_date"]),
8459
+ entitlementId: json["entitlement_id"],
8460
+ entitlementSource: json["entitlement_source"] == null ? void 0 : json["entitlement_source"],
8461
+ entitlementType: json["entitlement_type"],
8462
+ feature: json["feature"] == null ? void 0 : FeatureDetailResponseDataFromJSON(json["feature"]),
8463
+ metricResetAt: json["metric_reset_at"] == null ? void 0 : new Date(json["metric_reset_at"]),
8464
+ monthReset: json["month_reset"] == null ? void 0 : json["month_reset"],
8465
+ monthlyUsageBasedPrice: json["monthly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_usage_based_price"]),
8466
+ period: json["period"] == null ? void 0 : json["period"],
8467
+ plan: json["plan"] == null ? void 0 : PlanResponseDataFromJSON(json["plan"]),
8468
+ planEntitlement: json["plan_entitlement"] == null ? void 0 : PlanEntitlementResponseDataFromJSON(json["plan_entitlement"]),
8469
+ priceBehavior: json["price_behavior"] == null ? void 0 : json["price_behavior"],
8470
+ softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
8471
+ usage: json["usage"] == null ? void 0 : json["usage"],
8472
+ yearlyUsageBasedPrice: json["yearly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_usage_based_price"])
8473
+ };
8474
+ }
8475
+
8395
8476
  // src/api/checkoutexternal/models/CompanyPlanDetailResponseData.ts
8396
8477
  function CompanyPlanDetailResponseDataFromJSON(json) {
8397
8478
  return CompanyPlanDetailResponseDataFromJSONTyped(json, false);
@@ -8434,6 +8515,9 @@ function CompanyPlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8434
8515
  planType: json["plan_type"],
8435
8516
  trialDays: json["trial_days"] == null ? void 0 : json["trial_days"],
8436
8517
  updatedAt: new Date(json["updated_at"]),
8518
+ usageViolations: json["usage_violations"].map(
8519
+ FeatureUsageResponseDataFromJSON
8520
+ ),
8437
8521
  valid: json["valid"],
8438
8522
  yearlyPrice: json["yearly_price"] == null ? void 0 : BillingPriceResponseDataFromJSON(json["yearly_price"])
8439
8523
  };
@@ -8533,6 +8617,9 @@ function PlanDetailResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8533
8617
  ),
8534
8618
  icon: json["icon"],
8535
8619
  id: json["id"],
8620
+ includedCreditGrants: json["included_credit_grants"] == null ? void 0 : json["included_credit_grants"].map(
8621
+ BillingPlanCreditGrantResponseDataFromJSON
8622
+ ),
8536
8623
  isDefault: json["is_default"],
8537
8624
  isFree: json["is_free"],
8538
8625
  isTrialable: json["is_trialable"],
@@ -8644,62 +8731,6 @@ function ComponentResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8644
8731
  };
8645
8732
  }
8646
8733
 
8647
- // src/api/checkoutexternal/models/CreditGrantDetail.ts
8648
- function CreditGrantDetailFromJSON(json) {
8649
- return CreditGrantDetailFromJSONTyped(json, false);
8650
- }
8651
- function CreditGrantDetailFromJSONTyped(json, ignoreDiscriminator) {
8652
- if (json == null) {
8653
- return json;
8654
- }
8655
- return {
8656
- creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8657
- expiresAt: json["expires_at"] == null ? void 0 : new Date(json["expires_at"]),
8658
- grantReason: json["grant_reason"],
8659
- quantity: json["quantity"]
8660
- };
8661
- }
8662
-
8663
- // src/api/checkoutexternal/models/FeatureUsageResponseData.ts
8664
- function FeatureUsageResponseDataFromJSON(json) {
8665
- return FeatureUsageResponseDataFromJSONTyped(json, false);
8666
- }
8667
- function FeatureUsageResponseDataFromJSONTyped(json, ignoreDiscriminator) {
8668
- if (json == null) {
8669
- return json;
8670
- }
8671
- return {
8672
- access: json["access"],
8673
- allocation: json["allocation"] == null ? void 0 : json["allocation"],
8674
- allocationType: json["allocation_type"],
8675
- companyOverride: json["company_override"] == null ? void 0 : CompanyOverrideResponseDataFromJSON(json["company_override"]),
8676
- creditGrantCounts: json["credit_grant_counts"] == null ? void 0 : json["credit_grant_counts"],
8677
- creditGrantDetails: json["credit_grant_details"] == null ? void 0 : json["credit_grant_details"].map(
8678
- CreditGrantDetailFromJSON
8679
- ),
8680
- creditGrantReason: json["credit_grant_reason"] == null ? void 0 : json["credit_grant_reason"],
8681
- creditRemaining: json["credit_remaining"] == null ? void 0 : json["credit_remaining"],
8682
- creditTotal: json["credit_total"] == null ? void 0 : json["credit_total"],
8683
- creditTypeIcon: json["credit_type_icon"] == null ? void 0 : json["credit_type_icon"],
8684
- creditUsed: json["credit_used"] == null ? void 0 : json["credit_used"],
8685
- entitlementExpirationDate: json["entitlement_expiration_date"] == null ? void 0 : new Date(json["entitlement_expiration_date"]),
8686
- entitlementId: json["entitlement_id"],
8687
- entitlementSource: json["entitlement_source"] == null ? void 0 : json["entitlement_source"],
8688
- entitlementType: json["entitlement_type"],
8689
- feature: json["feature"] == null ? void 0 : FeatureDetailResponseDataFromJSON(json["feature"]),
8690
- metricResetAt: json["metric_reset_at"] == null ? void 0 : new Date(json["metric_reset_at"]),
8691
- monthReset: json["month_reset"] == null ? void 0 : json["month_reset"],
8692
- monthlyUsageBasedPrice: json["monthly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["monthly_usage_based_price"]),
8693
- period: json["period"] == null ? void 0 : json["period"],
8694
- plan: json["plan"] == null ? void 0 : PlanResponseDataFromJSON(json["plan"]),
8695
- planEntitlement: json["plan_entitlement"] == null ? void 0 : PlanEntitlementResponseDataFromJSON(json["plan_entitlement"]),
8696
- priceBehavior: json["price_behavior"] == null ? void 0 : json["price_behavior"],
8697
- softLimit: json["soft_limit"] == null ? void 0 : json["soft_limit"],
8698
- usage: json["usage"] == null ? void 0 : json["usage"],
8699
- yearlyUsageBasedPrice: json["yearly_usage_based_price"] == null ? void 0 : BillingPriceViewFromJSON(json["yearly_usage_based_price"])
8700
- };
8701
- }
8702
-
8703
8734
  // src/api/checkoutexternal/models/FeatureUsageDetailResponseData.ts
8704
8735
  function FeatureUsageDetailResponseDataFromJSON(json) {
8705
8736
  return FeatureUsageDetailResponseDataFromJSONTyped(json, false);
@@ -10501,7 +10532,7 @@ var EmbedProvider = ({
10501
10532
  });
10502
10533
  const customHeaders = useMemo3(
10503
10534
  () => ({
10504
- "X-Schematic-Components-Version": "1.6.0",
10535
+ "X-Schematic-Components-Version": "1.6.2",
10505
10536
  "X-Schematic-Session-ID": sessionIdRef.current
10506
10537
  }),
10507
10538
  []
@@ -10767,17 +10798,15 @@ var EmbedProvider = ({
10767
10798
  const colorMode = darkModeQuery.matches ? "dark" : "light";
10768
10799
  dispatch({
10769
10800
  type: "UPDATE_SETTINGS",
10770
- settings: {
10771
- theme: {
10772
- colorMode
10773
- }
10774
- }
10801
+ settings: { theme: { colorMode } },
10802
+ update: true
10775
10803
  });
10776
10804
  function darkModeQueryHandler(event) {
10777
10805
  const newColorMode = event.matches ? "dark" : "light";
10778
10806
  dispatch({
10779
10807
  type: "UPDATE_SETTINGS",
10780
- settings: { theme: { colorMode: newColorMode } }
10808
+ settings: { theme: { colorMode: newColorMode } },
10809
+ update: true
10781
10810
  });
10782
10811
  }
10783
10812
  darkModeQuery.addEventListener("change", darkModeQueryHandler);
@@ -10830,8 +10859,9 @@ var EmbedProvider = ({
10830
10859
  }
10831
10860
  }, [state.accessToken, apiConfig, customHeaders]);
10832
10861
  useEffect2(() => {
10833
- const providedSettings = { ...options.settings || {} };
10834
- updateSettings(providedSettings, { update: false });
10862
+ if (options.settings) {
10863
+ updateSettings(options.settings, { update: true });
10864
+ }
10835
10865
  }, [options.settings, updateSettings]);
10836
10866
  useEffect2(() => {
10837
10867
  function planChangedHandler(event) {
@@ -15181,7 +15211,7 @@ var Label = dt.label`
15181
15211
  transition:
15182
15212
  transform 0.5s cubic-bezier(0.19, 1, 0.22, 1),
15183
15213
  opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
15184
- color: #cdd6f4;
15214
+ color: ${({ theme }) => theme.colorMode === "dark" ? "#cdd6f4" : "#000000"};
15185
15215
  touch-action: manipulation;
15186
15216
  `;
15187
15217
  var Input2 = dt.input`
@@ -18998,14 +19028,14 @@ var resolveDesignProps8 = (props) => {
18998
19028
  },
18999
19029
  showInclusionText: props.plans?.showInclusionText ?? true,
19000
19030
  showFeatureIcons: props.plans?.showFeatureIcons ?? true,
19001
- showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? true,
19031
+ showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? false,
19002
19032
  showEntitlements: props.plans?.showEntitlements ?? true
19003
19033
  },
19004
19034
  addOns: {
19005
19035
  isVisible: props.addOns?.isVisible ?? true,
19006
19036
  showDescription: props.addOns?.showDescription ?? true,
19007
19037
  showFeatureIcons: props.addOns?.showFeatureIcons ?? true,
19008
- showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? true,
19038
+ showFeatureDescriptions: props.plans?.showFeatureDescriptions ?? false,
19009
19039
  showEntitlements: props.addOns?.showEntitlements ?? true
19010
19040
  },
19011
19041
  upgrade: {
@@ -19120,14 +19150,7 @@ var PricingTable = forwardRef12(
19120
19150
  }
19121
19151
  },
19122
19152
  children: [
19123
- /* @__PURE__ */ jsx47(
19124
- Text,
19125
- {
19126
- display: props.header.fontStyle,
19127
- $color: settings.theme.card.background,
19128
- children: props.header.isVisible && props.plans.isVisible && plans.length > 0 && t2("Plans")
19129
- }
19130
- ),
19153
+ /* @__PURE__ */ jsx47(Text, { display: props.header.fontStyle, children: props.header.isVisible && props.plans.isVisible && plans.length > 0 && t2("Plans") }),
19131
19154
  showPeriodToggle && periods.length > 1 && /* @__PURE__ */ jsx47(
19132
19155
  PeriodToggle,
19133
19156
  {
@@ -19180,14 +19203,7 @@ var PricingTable = forwardRef12(
19180
19203
  $justifyContent: "space-between",
19181
19204
  $alignItems: "center",
19182
19205
  $marginBottom: "1rem",
19183
- children: /* @__PURE__ */ jsx47(
19184
- Text,
19185
- {
19186
- display: props.header.fontStyle,
19187
- $color: settings.theme.card.background,
19188
- children: t2("Add-ons")
19189
- }
19190
- )
19206
+ children: /* @__PURE__ */ jsx47(Text, { display: props.header.fontStyle, children: t2("Add-ons") })
19191
19207
  }
19192
19208
  ),
19193
19209
  /* @__PURE__ */ jsx47(
@@ -23847,7 +23863,10 @@ var SchematicEmbed = ({ id, accessToken }) => {
23847
23863
  );
23848
23864
  const ast = getEditorState(json);
23849
23865
  if (ast) {
23850
- updateSettings({ ...ast.ROOT.props.settings }, { update: false });
23866
+ const settings = ast.ROOT.props.settings;
23867
+ const { colorMode, ...theme2 } = settings.theme;
23868
+ const updated = { mode: settings.mode, theme: theme2, badge: settings.badge };
23869
+ updateSettings(updated, { update: true });
23851
23870
  nodes.push(...parseEditorState(ast));
23852
23871
  setChildren(nodes.map(renderer));
23853
23872
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schematichq/schematic-components",
3
- "version": "1.6.0",
3
+ "version": "1.6.2",
4
4
  "main": "dist/schematic-components.cjs.js",
5
5
  "module": "dist/schematic-components.esm.js",
6
6
  "types": "dist/schematic-components.d.ts",
@@ -39,15 +39,15 @@
39
39
  "pako": "^2.1.0",
40
40
  "react-i18next": "^15.7.3",
41
41
  "styled-components": "^6.1.19",
42
- "uuid": "^12.0.0"
42
+ "uuid": "^13.0.0"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@eslint/js": "^9.35.0",
46
46
  "@eslint/json": "^0.13.2",
47
47
  "@eslint/markdown": "^7.2.0",
48
- "@microsoft/api-extractor": "^7.52.11",
48
+ "@microsoft/api-extractor": "^7.52.12",
49
49
  "@openapitools/openapi-generator-cli": "^2.23.1",
50
- "@stripe/react-stripe-js": "^4.0.0",
50
+ "@stripe/react-stripe-js": "^4.0.2",
51
51
  "@types/jest": "^30.0.0",
52
52
  "@types/lodash": "^4.17.20",
53
53
  "@types/pako": "^2.0.4",
@@ -59,7 +59,7 @@
59
59
  "eslint-plugin-import": "^2.32.0",
60
60
  "eslint-plugin-react": "^7.37.5",
61
61
  "eslint-plugin-react-hooks": "^5.2.0",
62
- "globals": "^16.3.0",
62
+ "globals": "^16.4.0",
63
63
  "jest": "^30.1.3",
64
64
  "jest-environment-jsdom": "^30.1.2",
65
65
  "jest-esbuild": "^0.4.0",
@@ -69,7 +69,7 @@
69
69
  "react-dom": "^19.1.1",
70
70
  "ts-jest": "^29.4.1",
71
71
  "typescript": "^5.9.2",
72
- "typescript-eslint": "^8.42.0"
72
+ "typescript-eslint": "^8.43.0"
73
73
  },
74
74
  "peerDependencies": {
75
75
  "@stripe/react-stripe-js": ">=3",