@choiceopen/atomemo-plugin-schema 0.2.11 → 0.2.13

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.
@@ -430,10 +430,10 @@ interface PropertyObject<TName extends string = string, TDiscriminator extends s
430
430
  * Supports dynamic keys with values conforming to the specified property schema.
431
431
  * Semantics similar to JSON Schema's additionalProperties: https://json-schema.org/draft/2019-09/draft-handrews-json-schema-02#additionalProperties
432
432
  */
433
- additional_properties?: Property | null;
433
+ additional_properties?: Property | PropertyDiscriminatedUnion<string> | null;
434
434
  ui?: PropertyUIObject | null;
435
435
  }
436
- interface PropertyDiscriminatedUnion<TName extends string = string, TDiscriminator extends string = string> extends PropertyBase<TName> {
436
+ interface PropertyDiscriminatedUnion<TDiscriminator extends string = string> {
437
437
  type: "discriminated_union";
438
438
  /**
439
439
  * Possible object types in the array.
@@ -456,7 +456,7 @@ interface PropertyArray<TName extends string = string> extends PropertyBase<TNam
456
456
  /**
457
457
  * Item schema for array elements
458
458
  */
459
- items: Property;
459
+ items: Property | PropertyDiscriminatedUnion<string>;
460
460
  /**
461
461
  * Maximum array size (inclusive)
462
462
  */
@@ -476,13 +476,19 @@ interface PropertyCredentialId<TName extends string = string> extends PropertyBa
476
476
  */
477
477
  credential_name: string;
478
478
  ui?: PropertyUICredentialId | null;
479
+ constant?: null;
480
+ default?: null;
481
+ enum?: null;
479
482
  }
480
483
  interface PropertyEncryptedString<TName extends string = string> extends PropertyBase<TName> {
481
484
  type: "encrypted_string";
482
485
  ui?: PropertyUIEncryptedString | null;
486
+ constant?: null;
487
+ default?: null;
488
+ enum?: null;
483
489
  }
484
490
  type PropertyScalar<TName extends string = string> = PropertyString<TName> | PropertyBoolean<TName> | PropertyNumber<TName> | PropertyEncryptedString<TName>;
485
- type Property<TName extends string = string, TValue extends JsonValue = JsonValue> = PropertyScalar<TName> | PropertyCredentialId<TName> | PropertyArray<TName> | PropertyObject<TName, string, TValue extends JsonObject ? TValue : JsonObject> | PropertyDiscriminatedUnion<TName, string>;
491
+ type Property<TName extends string = string, TValue extends JsonValue = JsonValue> = PropertyScalar<TName> | PropertyCredentialId<TName> | PropertyArray<TName> | PropertyObject<TName, string, TValue extends JsonObject ? TValue : JsonObject>;
486
492
  //#endregion
487
493
  //#region src/types/definition.d.ts
488
494
  interface BaseDefinition {
@@ -730,7 +736,7 @@ interface ToolDefinition extends BaseDefinition {
730
736
  invoke: (input: {
731
737
  args: {
732
738
  parameters: Record<string, any>;
733
- credentials?: Record<string, string>;
739
+ credentials?: Record<string, any>;
734
740
  };
735
741
  }) => Promise<JsonValue$1>;
736
742
  /**
@@ -740,4 +746,4 @@ interface ToolDefinition extends BaseDefinition {
740
746
  }
741
747
  //#endregion
742
748
  export { PropertyUIEmojiPickerProps as A, PropertyUIRadioGroupProps as B, PropertyUIBoolean as C, PropertyUIComponentType as D, PropertyUICommonProps as E, PropertyUIMisc as F, JsonValue$1 as G, PropertyUISingleSelectProps as H, PropertyUINumber as I, JsonValueSchema as K, PropertyUIObject as L, PropertyUIEncryptedString as M, PropertyUIInputProps as N, PropertyUIContainer as O, PropertyUIKeyValueEditorProps as P, PropertyUIOption as R, PropertyUIArraySectionProps as S, PropertyUIColorPickerProps as T, PropertyUIString as U, PropertyUISectionProps as V, PropertyUISwitchProps as W, PropertyNumber as _, ModelDefinition as a, PropertyString as b, DisplayCondition as c, PropertyArray as d, PropertyBase as f, PropertyEncryptedString as g, PropertyDiscriminatedUnion as h, Feature as i, PropertyUIEncryptedInputProps as j, PropertyUICredentialId as k, FilterOperators as l, PropertyCredentialId as m, CredentialDefinition as n, PluginDefinition as o, PropertyBoolean as p, I18nText as q, DataSourceDefinition as r, ToolDefinition as s, BaseDefinition as t, Property as u, PropertyObject as v, PropertyUICollapsiblePanelProps as w, PropertyUIArray as x, PropertyScalar as y, PropertyUIProps as z };
743
- //# sourceMappingURL=definition-DTX6vvxh.d.mts.map
749
+ //# sourceMappingURL=definition-DNDIAj3p.d.mts.map
@@ -1,4 +1,4 @@
1
- import { K as JsonValueSchema, c as DisplayCondition, q as I18nText, u as Property } from "./definition-DTX6vvxh.mjs";
1
+ import { K as JsonValueSchema, c as DisplayCondition, h as PropertyDiscriminatedUnion, q as I18nText, u as Property } from "./definition-DNDIAj3p.mjs";
2
2
  import "./types.mjs";
3
3
  import { z } from "zod";
4
4
  import * as type_fest0 from "type-fest";
@@ -343,6 +343,9 @@ declare const CredentialDefinitionSchema: z.ZodObject<{
343
343
  display_none: z.ZodOptional<z.ZodBoolean>;
344
344
  component: z.ZodLiteral<"encrypted-input">;
345
345
  }, z.core.$strip>], "component">>>;
346
+ constant: z.ZodOptional<z.ZodNull>;
347
+ default: z.ZodOptional<z.ZodNull>;
348
+ enum: z.ZodOptional<z.ZodNull>;
346
349
  }, z.core.$strip>]>>>;
347
350
  name: z.ZodString;
348
351
  display_name: z.ZodCustom<I18nText, I18nText>;
@@ -634,6 +637,9 @@ declare const DataSourceDefinitionSchema: z.ZodObject<{
634
637
  display_none: z.ZodOptional<z.ZodBoolean>;
635
638
  component: z.ZodLiteral<"encrypted-input">;
636
639
  }, z.core.$strip>], "component">>>;
640
+ constant: z.ZodOptional<z.ZodNull>;
641
+ default: z.ZodOptional<z.ZodNull>;
642
+ enum: z.ZodOptional<z.ZodNull>;
637
643
  }, z.core.$strip>]>>>;
638
644
  name: z.ZodString;
639
645
  display_name: z.ZodCustom<I18nText, I18nText>;
@@ -705,7 +711,7 @@ declare const ToolDefinitionSchema: z.ZodObject<{
705
711
  invoke: z.ZodFunction<z.ZodTuple<[z.ZodObject<{
706
712
  args: z.ZodObject<{
707
713
  parameters: z.ZodRecord<z.ZodString, z.ZodAny>;
708
- credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
714
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
709
715
  }, z.core.$strip>;
710
716
  }, z.core.$strip>], null>, z.ZodPromise<z.ZodJSONSchema>>;
711
717
  parameters: z.ZodType<Property<string, type_fest0.JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, type_fest0.JsonValue>[], unknown>>;
@@ -988,7 +994,7 @@ declare const PropertyObjectSchema: z.ZodObject<{
988
994
  }, z.core.$strip>>>;
989
995
  type: z.ZodLiteral<"object">;
990
996
  properties: z.ZodType<Property<string, JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, JsonValue>[], unknown>>;
991
- additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property, unknown, z.core.$ZodTypeInternals<Property, unknown>>>>;
997
+ additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property | PropertyDiscriminatedUnion<string>, unknown, z.core.$ZodTypeInternals<Property | PropertyDiscriminatedUnion<string>, unknown>>>>;
992
998
  constant: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
993
999
  default: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
994
1000
  enum: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>>;
@@ -1085,33 +1091,8 @@ declare const PropertyObjectSchema: z.ZodObject<{
1085
1091
  }, z.core.$strip>], "component">>>;
1086
1092
  }, z.core.$strip>;
1087
1093
  declare const PropertyDiscriminatedUnionSchema: z.ZodObject<{
1088
- name: z.ZodString;
1089
- display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1090
- required: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1091
- display: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1092
- hide: z.ZodOptional<z.ZodNullable<z.ZodType<DisplayCondition, unknown, z.core.$ZodTypeInternals<DisplayCondition, unknown>>>>;
1093
- show: z.ZodOptional<z.ZodNullable<z.ZodType<DisplayCondition, unknown, z.core.$ZodTypeInternals<DisplayCondition, unknown>>>>;
1094
- }, z.core.$strip>>>;
1095
- ai: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1096
- llm_description: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1097
- }, z.core.$strip>>>;
1098
- ui: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1099
- disabled: z.ZodOptional<z.ZodBoolean>;
1100
- hint: z.ZodOptional<z.ZodCustom<I18nText, I18nText>>;
1101
- placeholder: z.ZodOptional<z.ZodCustom<I18nText, I18nText>>;
1102
- readonly: z.ZodOptional<z.ZodBoolean>;
1103
- sensitive: z.ZodOptional<z.ZodBoolean>;
1104
- support_expression: z.ZodOptional<z.ZodBoolean>;
1105
- width: z.ZodOptional<z.ZodEnum<{
1106
- small: "small";
1107
- medium: "medium";
1108
- full: "full";
1109
- }>>;
1110
- indentation: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<4>, z.ZodLiteral<6>, z.ZodLiteral<8>, z.ZodLiteral<10>, z.ZodLiteral<12>, z.ZodLiteral<14>, z.ZodLiteral<16>, z.ZodLiteral<18>, z.ZodLiteral<20>, z.ZodLiteral<22>, z.ZodLiteral<24>, z.ZodLiteral<26>, z.ZodLiteral<28>, z.ZodLiteral<30>, z.ZodLiteral<32>, z.ZodLiteral<34>, z.ZodLiteral<36>, z.ZodLiteral<38>, z.ZodLiteral<40>, z.ZodLiteral<42>, z.ZodLiteral<44>, z.ZodLiteral<46>, z.ZodLiteral<48>, z.ZodLiteral<50>, z.ZodLiteral<52>, z.ZodLiteral<54>, z.ZodLiteral<56>, z.ZodLiteral<58>, z.ZodLiteral<60>, z.ZodLiteral<62>, z.ZodLiteral<64>, z.ZodLiteral<66>, z.ZodLiteral<68>, z.ZodLiteral<70>, z.ZodLiteral<72>, z.ZodLiteral<74>, z.ZodLiteral<76>, z.ZodLiteral<78>, z.ZodLiteral<80>]>>;
1111
- display_none: z.ZodOptional<z.ZodBoolean>;
1112
- }, z.core.$strip>>>;
1113
1094
  type: z.ZodLiteral<"discriminated_union">;
1114
- readonly any_of: z.ZodArray<z.ZodObject<{
1095
+ any_of: z.ZodArray<z.ZodObject<{
1115
1096
  name: z.ZodString;
1116
1097
  display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1117
1098
  required: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
@@ -1124,7 +1105,7 @@ declare const PropertyDiscriminatedUnionSchema: z.ZodObject<{
1124
1105
  }, z.core.$strip>>>;
1125
1106
  type: z.ZodLiteral<"object">;
1126
1107
  properties: z.ZodType<Property<string, JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, JsonValue>[], unknown>>;
1127
- additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property, unknown, z.core.$ZodTypeInternals<Property, unknown>>>>;
1108
+ additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property | PropertyDiscriminatedUnion<string>, unknown, z.core.$ZodTypeInternals<Property | PropertyDiscriminatedUnion<string>, unknown>>>>;
1128
1109
  constant: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1129
1110
  default: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1130
1111
  enum: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>>;
@@ -1297,7 +1278,7 @@ declare const PropertyArraySchema: z.ZodObject<{
1297
1278
  constant: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1298
1279
  default: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1299
1280
  enum: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>>;
1300
- readonly items: z.ZodUnion<readonly [z.ZodObject<{
1281
+ readonly items: z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodObject<{
1301
1282
  name: z.ZodString;
1302
1283
  display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1303
1284
  required: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
@@ -1581,6 +1562,9 @@ declare const PropertyArraySchema: z.ZodObject<{
1581
1562
  display_none: z.ZodOptional<z.ZodBoolean>;
1582
1563
  component: z.ZodLiteral<"encrypted-input">;
1583
1564
  }, z.core.$strip>], "component">>>;
1565
+ constant: z.ZodOptional<z.ZodNull>;
1566
+ default: z.ZodOptional<z.ZodNull>;
1567
+ enum: z.ZodOptional<z.ZodNull>;
1584
1568
  }, z.core.$strip>, z.ZodObject<{
1585
1569
  name: z.ZodString;
1586
1570
  display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
@@ -1612,6 +1596,9 @@ declare const PropertyArraySchema: z.ZodObject<{
1612
1596
  component: z.ZodLiteral<"credential-select">;
1613
1597
  searchable: z.ZodOptional<z.ZodBoolean>;
1614
1598
  }, z.core.$strip>], "component">>>;
1599
+ constant: z.ZodOptional<z.ZodNull>;
1600
+ default: z.ZodOptional<z.ZodNull>;
1601
+ enum: z.ZodOptional<z.ZodNull>;
1615
1602
  }, z.core.$strip>, z.ZodObject< /*elided*/any, z.core.$strip>, z.ZodObject<{
1616
1603
  name: z.ZodString;
1617
1604
  display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
@@ -1625,7 +1612,7 @@ declare const PropertyArraySchema: z.ZodObject<{
1625
1612
  }, z.core.$strip>>>;
1626
1613
  type: z.ZodLiteral<"object">;
1627
1614
  properties: z.ZodType<Property<string, JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, JsonValue>[], unknown>>;
1628
- additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property, unknown, z.core.$ZodTypeInternals<Property, unknown>>>>;
1615
+ additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property | PropertyDiscriminatedUnion<string>, unknown, z.core.$ZodTypeInternals<Property | PropertyDiscriminatedUnion<string>, unknown>>>>;
1629
1616
  constant: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1630
1617
  default: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1631
1618
  enum: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>>;
@@ -1720,34 +1707,9 @@ declare const PropertyArraySchema: z.ZodObject<{
1720
1707
  display_none: z.ZodOptional<z.ZodBoolean>;
1721
1708
  component: z.ZodLiteral<"section">;
1722
1709
  }, z.core.$strip>], "component">>>;
1723
- }, z.core.$strip>, z.ZodObject<{
1724
- name: z.ZodString;
1725
- display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1726
- required: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1727
- display: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1728
- hide: z.ZodOptional<z.ZodNullable<z.ZodType<DisplayCondition, unknown, z.core.$ZodTypeInternals<DisplayCondition, unknown>>>>;
1729
- show: z.ZodOptional<z.ZodNullable<z.ZodType<DisplayCondition, unknown, z.core.$ZodTypeInternals<DisplayCondition, unknown>>>>;
1730
- }, z.core.$strip>>>;
1731
- ai: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1732
- llm_description: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1733
- }, z.core.$strip>>>;
1734
- ui: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1735
- disabled: z.ZodOptional<z.ZodBoolean>;
1736
- hint: z.ZodOptional<z.ZodCustom<I18nText, I18nText>>;
1737
- placeholder: z.ZodOptional<z.ZodCustom<I18nText, I18nText>>;
1738
- readonly: z.ZodOptional<z.ZodBoolean>;
1739
- sensitive: z.ZodOptional<z.ZodBoolean>;
1740
- support_expression: z.ZodOptional<z.ZodBoolean>;
1741
- width: z.ZodOptional<z.ZodEnum<{
1742
- small: "small";
1743
- medium: "medium";
1744
- full: "full";
1745
- }>>;
1746
- indentation: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<4>, z.ZodLiteral<6>, z.ZodLiteral<8>, z.ZodLiteral<10>, z.ZodLiteral<12>, z.ZodLiteral<14>, z.ZodLiteral<16>, z.ZodLiteral<18>, z.ZodLiteral<20>, z.ZodLiteral<22>, z.ZodLiteral<24>, z.ZodLiteral<26>, z.ZodLiteral<28>, z.ZodLiteral<30>, z.ZodLiteral<32>, z.ZodLiteral<34>, z.ZodLiteral<36>, z.ZodLiteral<38>, z.ZodLiteral<40>, z.ZodLiteral<42>, z.ZodLiteral<44>, z.ZodLiteral<46>, z.ZodLiteral<48>, z.ZodLiteral<50>, z.ZodLiteral<52>, z.ZodLiteral<54>, z.ZodLiteral<56>, z.ZodLiteral<58>, z.ZodLiteral<60>, z.ZodLiteral<62>, z.ZodLiteral<64>, z.ZodLiteral<66>, z.ZodLiteral<68>, z.ZodLiteral<70>, z.ZodLiteral<72>, z.ZodLiteral<74>, z.ZodLiteral<76>, z.ZodLiteral<78>, z.ZodLiteral<80>]>>;
1747
- display_none: z.ZodOptional<z.ZodBoolean>;
1748
- }, z.core.$strip>>>;
1710
+ }, z.core.$strip>]>, z.ZodObject<{
1749
1711
  type: z.ZodLiteral<"discriminated_union">;
1750
- readonly any_of: z.ZodArray<z.ZodObject<{
1712
+ any_of: z.ZodArray<z.ZodObject<{
1751
1713
  name: z.ZodString;
1752
1714
  display_name: z.ZodOptional<z.ZodNullable<z.ZodCustom<I18nText, I18nText>>>;
1753
1715
  required: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
@@ -1760,7 +1722,7 @@ declare const PropertyArraySchema: z.ZodObject<{
1760
1722
  }, z.core.$strip>>>;
1761
1723
  type: z.ZodLiteral<"object">;
1762
1724
  properties: z.ZodType<Property<string, JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, JsonValue>[], unknown>>;
1763
- additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property, unknown, z.core.$ZodTypeInternals<Property, unknown>>>>;
1725
+ additional_properties: z.ZodOptional<z.ZodNullable<z.ZodType<Property | PropertyDiscriminatedUnion<string>, unknown, z.core.$ZodTypeInternals<Property | PropertyDiscriminatedUnion<string>, unknown>>>>;
1764
1726
  constant: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1765
1727
  default: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
1766
1728
  enum: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>>;
@@ -2046,6 +2008,9 @@ declare const PropertyCredentialIdSchema: z.ZodObject<{
2046
2008
  component: z.ZodLiteral<"credential-select">;
2047
2009
  searchable: z.ZodOptional<z.ZodBoolean>;
2048
2010
  }, z.core.$strip>], "component">>>;
2011
+ constant: z.ZodOptional<z.ZodNull>;
2012
+ default: z.ZodOptional<z.ZodNull>;
2013
+ enum: z.ZodOptional<z.ZodNull>;
2049
2014
  }, z.core.$strip>;
2050
2015
  declare const PropertyEncryptedStringSchema: z.ZodObject<{
2051
2016
  name: z.ZodString;
@@ -2075,6 +2040,9 @@ declare const PropertyEncryptedStringSchema: z.ZodObject<{
2075
2040
  display_none: z.ZodOptional<z.ZodBoolean>;
2076
2041
  component: z.ZodLiteral<"encrypted-input">;
2077
2042
  }, z.core.$strip>], "component">>>;
2043
+ constant: z.ZodOptional<z.ZodNull>;
2044
+ default: z.ZodOptional<z.ZodNull>;
2045
+ enum: z.ZodOptional<z.ZodNull>;
2078
2046
  }, z.core.$strip>;
2079
2047
  declare const PropertiesScalarSchema: z.ZodLazy<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
2080
2048
  name: z.ZodString;
@@ -2360,6 +2328,9 @@ declare const PropertiesScalarSchema: z.ZodLazy<z.ZodArray<z.ZodUnion<readonly [
2360
2328
  display_none: z.ZodOptional<z.ZodBoolean>;
2361
2329
  component: z.ZodLiteral<"encrypted-input">;
2362
2330
  }, z.core.$strip>], "component">>>;
2331
+ constant: z.ZodOptional<z.ZodNull>;
2332
+ default: z.ZodOptional<z.ZodNull>;
2333
+ enum: z.ZodOptional<z.ZodNull>;
2363
2334
  }, z.core.$strip>]>>>;
2364
2335
  declare const PropertiesSchema: z.ZodType<Property<string, JsonValue>[], unknown, z.core.$ZodTypeInternals<Property<string, JsonValue>[], unknown>>;
2365
2336
  //#endregion
package/dist/schemas.mjs CHANGED
@@ -367,7 +367,7 @@ const PropertyObjectSchema = PropertyBaseSchema.extend({
367
367
  error: "properties must be empty when constant is defined",
368
368
  abort: true
369
369
  });
370
- const PropertyDiscriminatedUnionSchema = PropertyBaseSchema.extend({
370
+ const PropertyDiscriminatedUnionSchema = z.object({
371
371
  type: z.literal("discriminated_union"),
372
372
  get any_of() {
373
373
  return z.array(PropertyObjectSchema).refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError).min(2, "anyOf must have at least two items");
@@ -402,7 +402,7 @@ const PropertyArraySchema = PropertyBaseSchema.extend({
402
402
  default: z.array(JsonValueSchema$1).nullish(),
403
403
  enum: z.array(z.array(JsonValueSchema$1)).nullish(),
404
404
  get items() {
405
- return PropertySchema;
405
+ return z.union([PropertySchema, PropertyDiscriminatedUnionSchema]);
406
406
  },
407
407
  max_items: z.number().nullish(),
408
408
  min_items: z.number().nullish(),
@@ -411,11 +411,17 @@ const PropertyArraySchema = PropertyBaseSchema.extend({
411
411
  const PropertyCredentialIdSchema = PropertyBaseSchema.extend({
412
412
  type: z.literal("credential_id"),
413
413
  credential_name: z.string().min(1, "credential_name cannot be empty"),
414
- ui: PropertyUICredentialIdSchema.nullish()
414
+ ui: PropertyUICredentialIdSchema.nullish(),
415
+ constant: z.null().optional(),
416
+ default: z.null().optional(),
417
+ enum: z.null().optional()
415
418
  });
416
419
  const PropertyEncryptedStringSchema = PropertyBaseSchema.extend({
417
420
  type: z.literal("encrypted_string"),
418
- ui: PropertyUIEncryptedStringSchema.nullish()
421
+ ui: PropertyUIEncryptedStringSchema.nullish(),
422
+ constant: z.null().optional(),
423
+ default: z.null().optional(),
424
+ enum: z.null().optional()
419
425
  });
420
426
  const PropertyScalarSchema = z.union([
421
427
  PropertyStringSchema,
@@ -428,8 +434,7 @@ const PropertySchema = z.union([
428
434
  ...PropertyScalarSchema.options,
429
435
  PropertyCredentialIdSchema,
430
436
  PropertyArraySchema,
431
- PropertyObjectSchema,
432
- PropertyDiscriminatedUnionSchema
437
+ PropertyObjectSchema
433
438
  ]);
434
439
  const PropertiesSchema = ArrayPropertiesSchema;
435
440
 
@@ -540,7 +545,7 @@ const ToolDefinitionSchema = z.object({
540
545
  invoke: z.function({
541
546
  input: z.tuple([z.object({ args: z.object({
542
547
  parameters: z.record(z.string(), z.any()),
543
- credentials: z.record(z.string(), z.string()).optional()
548
+ credentials: z.record(z.string(), z.any()).optional()
544
549
  }) })]),
545
550
  output: z.promise(JsonValueSchema)
546
551
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.mjs","names":["JsonValueSchema"],"sources":["../src/utils/toolkit.ts","../src/schemas/common.ts","../src/utils/custom-json-value.ts","../src/schemas/property-ui.ts","../src/schemas/property.ts","../src/schemas/definition.ts"],"sourcesContent":["export function isPlainObject(value: unknown): value is Record<string, unknown> {\n if (value === null || typeof value !== \"object\") return false\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false\n\n const proto = Object.getPrototypeOf(value)\n return proto === Object.prototype || proto === null\n}\n\nexport function compact<T>(\n values: Array<T | null | undefined | false | 0 | \"\" | typeof Number.NaN>,\n): T[] {\n // Match common \"compact\" behavior: drop falsy values.\n // Note: `NaN` is truthy? Actually `Boolean(NaN) === false`, so it will be removed too.\n return values.filter(Boolean) as T[]\n}\n","import type { IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type { I18nText } from \"../types\"\nimport { isPlainObject } from \"../utils/toolkit\"\n\n/**\n * I18n 词条模式\n *\n * NOTE: Zod 无法定义复杂的字面量模版,此处使用 `z.custom` 实现自定义验证\n */\nexport const I18nEntrySchema = z.custom<I18nText>((value) => {\n // 必须是对象字面量\n if (!isPlainObject(value)) return false\n // 必须包含 en_US 键\n if (!(\"en_US\" in value)) return false\n\n for (const [locale, text] of Object.entries(value)) {\n // 值必须是字符串\n if (typeof text !== \"string\") return false\n\n // NOTE: 支持的语言码并不严格符合标准,因为 TS 字面量模版无法描述所有可能的情况\n // 故以下仅对满足需求的子集做简单检查而不是严格的 RFC 5646 标准检查\n const parts = locale.split(\"_\")\n // 其它语言代码必须符合格式:<语言代码>_<国家或脚本代码>,且第二部份首字母必须大写\n if (parts.length !== 2 || parts[1][0] !== parts[1][0].toUpperCase()) {\n return false\n }\n }\n return true\n}, \"Invalid I18n entry\")\n{\n const _: IsEqual<z.infer<typeof I18nEntrySchema>, I18nText> = true\n}\n","/**\n * Custom JSON Value Schema and Type\n *\n * Why? Because `z.json()` is not compatible with `JSONValue` from type-fest\n */\n\nimport { z } from \"zod\"\n\n/**\n * Custom JSON Value Schema\n * @description Custom JSON Value Schema is a schema that allows any JSON value\n */\nexport const JsonValueSchema = z.json()\n\n/**\n * Custom JSON Value Type\n * @description Custom JSON Value Type is the type of the JSON value\n */\nexport type JsonValue = z.infer<typeof JsonValueSchema>\n","import type { IntRange, IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n PropertyUIArray,\n PropertyUIArraySectionProps,\n PropertyUIBoolean,\n PropertyUICollapsiblePanelProps,\n PropertyUIColorPickerProps,\n PropertyUIContainer,\n PropertyUICredentialId,\n PropertyUIEmojiPickerProps,\n PropertyUIEncryptedInputProps,\n PropertyUIInputProps,\n PropertyUIKeyValueEditorProps,\n PropertyUINumber,\n PropertyUIObject,\n PropertyUIOption,\n PropertyUIProps,\n PropertyUIRadioGroupProps,\n PropertyUISectionProps,\n PropertyUISingleSelectProps,\n PropertyUIString,\n PropertyUISwitchProps,\n} from \"../types\"\nimport { I18nEntrySchema } from \"./common\"\n\nconst indentationSchema = z.union([\n z.literal(2),\n z.literal(4),\n z.literal(6),\n z.literal(8),\n z.literal(10),\n z.literal(12),\n z.literal(14),\n z.literal(16),\n z.literal(18),\n z.literal(20),\n z.literal(22),\n z.literal(24),\n z.literal(26),\n z.literal(28),\n z.literal(30),\n z.literal(32),\n z.literal(34),\n z.literal(36),\n z.literal(38),\n z.literal(40),\n z.literal(42),\n z.literal(44),\n z.literal(46),\n z.literal(48),\n z.literal(50),\n z.literal(52),\n z.literal(54),\n z.literal(56),\n z.literal(58),\n z.literal(60),\n z.literal(62),\n z.literal(64),\n z.literal(66),\n z.literal(68),\n z.literal(70),\n z.literal(72),\n z.literal(74),\n z.literal(76),\n z.literal(78),\n z.literal(80),\n])\n{\n const _: IsEqual<z.infer<typeof indentationSchema>, IntRange<2, 81, 2>> = true\n}\n\n// Common UI properties schema\nexport const PropertyUICommonPropsSchema = z.object({\n disabled: z.boolean().optional(),\n hint: I18nEntrySchema.optional(),\n placeholder: I18nEntrySchema.optional(),\n readonly: z.boolean().optional(),\n sensitive: z.boolean().optional(),\n support_expression: z.boolean().optional(),\n width: z.enum([\"small\", \"medium\", \"full\"]).optional(),\n indentation: indentationSchema.optional(),\n display_none: z.boolean().optional(),\n})\n\n// Option schema for select components\nexport const PropertyUIOptionSchema = z.object({\n icon: z.string().optional(),\n label: I18nEntrySchema,\n value: z.union([z.string(), z.number(), z.boolean()]),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUIOptionSchema>, PropertyUIOption> = true\n}\n\nconst PropertyUIInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"input\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUIInputPropsSchema>, PropertyUIInputProps> = true\n}\n\nexport const PropertyUIEncryptedInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"encrypted-input\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIEncryptedInputPropsSchema>,\n PropertyUIEncryptedInputProps\n > = true\n}\n\n// Textarea component schema\nconst PropertyUITextareaPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"textarea\"),\n max_height: z.number().optional(),\n min_height: z.number().optional(),\n})\n\n// Number input component schema\nconst PropertyUINumberInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"number-input\"),\n step: z.number().optional(),\n suffix: z.string().optional(),\n})\n\n// Code editor component schema\nconst PropertyUICodeEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"code-editor\"),\n language: z.enum([\"json\", \"javascript\", \"python3\"]).optional(),\n line_numbers: z.boolean().optional(),\n line_wrapping: z.boolean().optional(),\n max_height: z.number().optional(),\n min_height: z.number().optional(),\n rows: z.number().optional(),\n})\n\n// Select base schema\nconst PropertyUISelectPropsBaseSchema = z.object({\n clearable: z.boolean().optional(),\n options: z.array(PropertyUIOptionSchema).optional(),\n searchable: z.boolean().optional(),\n})\n\n// Single select component schema\nconst PropertyUISingleSelectPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"select\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUISingleSelectPropsSchema>,\n PropertyUISingleSelectProps\n > = true\n}\n\n// Radio group component schema\nconst PropertyUIRadioGroupPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"radio-group\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIRadioGroupPropsSchema>,\n PropertyUIRadioGroupProps\n > = true\n}\n\n// Multi select component schema\nconst PropertyUIMultiSelectPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"multi-select\"),\n})\n\n// Switch component schema\nconst PropertyUISwitchPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"switch\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUISwitchPropsSchema>, PropertyUISwitchProps> = true\n}\n\n// Slider component schema\nconst PropertyUISliderPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"slider\"),\n marks: z.record(z.number(), z.string()).optional(),\n show_value: z.boolean().optional(),\n step: z.number().optional(),\n})\n\n// Key-value editor component schema\nconst PropertyUIKeyValueEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n add_button_label: I18nEntrySchema.optional(),\n component: z.literal(\"key-value-editor\"),\n empty_description: I18nEntrySchema.optional(),\n section_header: I18nEntrySchema.optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIKeyValueEditorPropsSchema>,\n PropertyUIKeyValueEditorProps\n > = true\n}\n\n// Tag input component schema\nconst PropertyUITagInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"tag-input\"),\n})\n\n// Emoji picker component schema\nconst PropertyUIEmojiPickerPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"emoji-picker\"),\n size: z.enum([\"extra-small\", \"small\", \"medium\", \"large\"]).optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIEmojiPickerPropsSchema>,\n PropertyUIEmojiPickerProps\n > = true\n}\n\n// Color picker component schema\nconst PropertyUIColorPickerPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"color-picker\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIColorPickerPropsSchema>,\n PropertyUIColorPickerProps\n > = true\n}\n\n// Credential select component schema\nconst PropertyUICredentialSelectPropsSchema = PropertyUICommonPropsSchema.extend({\n clearable: z.boolean().optional(),\n component: z.literal(\"credential-select\"),\n searchable: z.boolean().optional(),\n})\n\n// JSON Schema editor component schema\nconst PropertyUIJsonSchemaEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"json-schema-editor\"),\n})\n\n// Conditions editor component schema\nconst PropertyUIConditionsEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"conditions-editor\"),\n})\n\n// Array section component schema\nconst PropertyUIArraySectionPropsSchema = PropertyUICommonPropsSchema.extend({\n add_label: I18nEntrySchema.optional(),\n collapsible: z.boolean().optional(),\n component: z.literal(\"array-section\"),\n empty_message: I18nEntrySchema.optional(),\n remove_tooltip: I18nEntrySchema.optional(),\n sortable: z.boolean().optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIArraySectionPropsSchema>,\n PropertyUIArraySectionProps\n > = true\n}\n\n// Collapsible panel component schema\nconst PropertyUICollapsiblePanelPropsSchema = PropertyUICommonPropsSchema.extend({\n collapsible: z.boolean().optional(),\n component: z.literal(\"collapsible-panel\"),\n default_collapsed: z.boolean().optional(),\n panel_title: I18nEntrySchema.optional(),\n remove_tooltip: I18nEntrySchema.optional(),\n sortable: z.boolean().optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUICollapsiblePanelPropsSchema>,\n PropertyUICollapsiblePanelProps\n > = true\n}\n\n// Section component schema\nconst PropertyUISectionPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"section\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUISectionPropsSchema>, PropertyUISectionProps> = true\n}\n\nexport const PropertyUIPropsSchema = z.discriminatedUnion(\"component\", [\n PropertyUIInputPropsSchema,\n PropertyUITextareaPropsSchema,\n PropertyUINumberInputPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n PropertyUIEmojiPickerPropsSchema,\n PropertyUIColorPickerPropsSchema,\n PropertyUIMultiSelectPropsSchema,\n PropertyUISwitchPropsSchema,\n PropertyUISliderPropsSchema,\n PropertyUIKeyValueEditorPropsSchema,\n PropertyUITagInputPropsSchema,\n PropertyUICredentialSelectPropsSchema,\n PropertyUIJsonSchemaEditorPropsSchema,\n PropertyUIConditionsEditorPropsSchema,\n PropertyUIArraySectionPropsSchema,\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n PropertyUIEncryptedInputPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIPropsSchema>, PropertyUIProps> = true\n}\n\nexport const PropertyUIBooleanSchema = z.discriminatedUnion(\"component\", [\n PropertyUISwitchPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIBooleanSchema>, PropertyUIBoolean> = true\n}\n\nexport const PropertyUINumberSchema = z.discriminatedUnion(\"component\", [\n PropertyUINumberInputPropsSchema,\n PropertyUISliderPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUINumberSchema>, PropertyUINumber> = true\n}\n\nexport const PropertyUIStringSchema = z.discriminatedUnion(\"component\", [\n PropertyUIInputPropsSchema,\n PropertyUITextareaPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUICredentialSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n PropertyUIEmojiPickerPropsSchema,\n PropertyUIColorPickerPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIStringSchema>, PropertyUIString> = true\n}\n\nexport const PropertyUIArraySchema = z.discriminatedUnion(\"component\", [\n PropertyUIMultiSelectPropsSchema,\n PropertyUITagInputPropsSchema,\n PropertyUIKeyValueEditorPropsSchema,\n PropertyUISliderPropsSchema,\n PropertyUIArraySectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIArraySchema>, PropertyUIArray> = true\n}\n\nexport const PropertyUIContainerSchema = z.discriminatedUnion(\"component\", [\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIContainerSchema>, PropertyUIContainer> = true\n}\n\nexport const PropertyUIObjectSchema = z.discriminatedUnion(\"component\", [\n PropertyUIJsonSchemaEditorPropsSchema,\n PropertyUIConditionsEditorPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIObjectSchema>, PropertyUIObject> = true\n}\n\nexport const PropertyUICredentialIdSchema = z.discriminatedUnion(\"component\", [\n PropertyUICredentialSelectPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUICredentialIdSchema>, PropertyUICredentialId> = true\n}\n\nexport const PropertyUIDiscriminatorUISchema = z.discriminatedUnion(\"component\", [\n PropertyUISwitchPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n])\n\nexport const PropertyUIEncryptedStringSchema = z.discriminatedUnion(\"component\", [\n PropertyUIEncryptedInputPropsSchema,\n])\n","import type { IsEqual, JsonValue } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n DisplayCondition,\n FilterOperators,\n Property,\n PropertyArray,\n PropertyBase,\n PropertyBoolean,\n PropertyCredentialId,\n PropertyDiscriminatedUnion,\n PropertyEncryptedString,\n PropertyNumber,\n PropertyObject,\n PropertyScalar,\n PropertyString,\n} from \"../types\"\nimport { compact } from \"../utils/toolkit\"\nimport { I18nEntrySchema } from \"./common\"\nimport {\n PropertyUIArraySchema,\n PropertyUIBooleanSchema,\n PropertyUICommonPropsSchema,\n PropertyUICredentialIdSchema,\n PropertyUIDiscriminatorUISchema,\n PropertyUIEncryptedStringSchema,\n PropertyUINumberSchema,\n PropertyUIObjectSchema,\n PropertyUIStringSchema,\n} from \"./property-ui\"\n\nconst JsonPrimitiveSchema = z.union([z.string(), z.number(), z.boolean(), z.null()])\nconst JsonValueSchema: z.ZodType<JsonValue> = z.lazy(() =>\n z.union([JsonPrimitiveSchema, z.array(JsonValueSchema), z.record(z.string(), JsonValueSchema)]),\n)\n\nconst FilterOperatorsSchema = z.object({\n $eq: JsonValueSchema.nullish(),\n $exists: z.boolean().nullish(),\n $gt: JsonValueSchema.nullish(),\n $gte: JsonValueSchema.nullish(),\n $in: z.array(JsonValueSchema).nullish(),\n $lt: JsonValueSchema.nullish(),\n $lte: JsonValueSchema.nullish(),\n $mod: z.tuple([z.number(), z.number()]).nullish(),\n $ne: JsonValueSchema.nullish(),\n $nin: z.array(JsonValueSchema).nullish(),\n $options: z.string().nullish(),\n $regex: z.union([z.string(), z.instanceof(RegExp)]).nullish(),\n $size: z.number().nullish(),\n})\n\nconst ConditionSchema = z.union([JsonValueSchema, FilterOperatorsSchema])\n\nconst RootFilterSchema = z.object({\n get $and() {\n return z.array(FilterSchema).nullish()\n },\n get $nor() {\n return z.array(FilterSchema).nullish()\n },\n get $or() {\n return z.array(FilterSchema).nullish()\n },\n})\n{\n const _: IsEqual<z.infer<typeof FilterOperatorsSchema>, FilterOperators> = true\n}\n\n// skip infer because of recursive structure\nconst FilterSchema: z.ZodType<DisplayCondition> = z.union([\n z.record(z.string(), ConditionSchema),\n RootFilterSchema,\n])\n\nconst PropertyBaseSchema = z.object({\n name: z\n .string()\n .min(1, \"name cannot be empty\")\n .refine(\n (val) => {\n const regexStartsWithDollarOrWhitespace = /^[\\s$]/\n return !regexStartsWithDollarOrWhitespace.test(val)\n },\n {\n error: \"name cannot start with $ or whitespace\",\n abort: true,\n },\n )\n .refine(\n (val) => {\n const forbiddenCharacters = [\".\", \"[\", \"]\"]\n return !forbiddenCharacters.some((char) => val.includes(char))\n },\n {\n error: 'name cannot contain \".\", \"[\", or \"]\" characters',\n abort: true,\n },\n ),\n\n display_name: I18nEntrySchema.nullish(),\n required: z.boolean().nullish(),\n display: z\n .object({\n hide: FilterSchema.nullish(),\n show: FilterSchema.nullish(),\n })\n .nullish(),\n ai: z\n .object({\n llm_description: I18nEntrySchema.nullish(),\n })\n .nullish(),\n ui: PropertyUICommonPropsSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyBaseSchema>, PropertyBase<string>> = true\n}\n\nexport const PropertyStringSchema = PropertyBaseSchema.extend({\n type: z.literal(\"string\"),\n constant: z.string().nullish(),\n default: z.string().nullish(),\n enum: z.array(z.string()).nullish(),\n max_length: z.number().nullish(),\n min_length: z.number().nullish(),\n ui: PropertyUIStringSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyStringSchema>, PropertyString<string>> = true\n}\n\nexport const PropertyNumberSchema = PropertyBaseSchema.extend({\n type: z.union([z.literal(\"number\"), z.literal(\"integer\")]),\n constant: z.number().nullish(),\n default: z.number().nullish(),\n enum: z.array(z.number()).nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n ui: PropertyUINumberSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyNumberSchema>, PropertyNumber<string>> = true\n}\n\nexport const PropertyBooleanSchema = PropertyBaseSchema.extend({\n type: z.literal(\"boolean\"),\n constant: z.boolean().nullish(),\n default: z.boolean().nullish(),\n enum: z.array(z.boolean()).nullish(),\n ui: PropertyUIBooleanSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyBooleanSchema>, PropertyBoolean<string>> = true\n}\n\nconst checkDuplicateNames = {\n checkFn: (properties: { name: string }[]) => {\n const names = new Set<string>()\n for (const prop of properties) {\n if (names.has(prop.name)) return false\n names.add(prop.name)\n }\n return true\n },\n customError: {\n error: \"duplicate property names are not allowed\",\n } as const,\n}\n\n// use type assertion and lazy to avoid circular reference error\nconst ArrayPropertiesSchema: z.ZodType<PropertyObject[\"properties\"]> = z.lazy(() =>\n z.array(PropertySchema).refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError),\n)\n\nconst additionalPropertiesSchema: z.ZodType<Property> = z.lazy(() => PropertySchema)\n\nexport const PropertyObjectSchema = PropertyBaseSchema.extend({\n type: z.literal(\"object\"),\n properties: ArrayPropertiesSchema,\n additional_properties: additionalPropertiesSchema.nullish(),\n constant: z.record(z.string(), JsonValueSchema).nullish(),\n default: z.record(z.string(), JsonValueSchema).nullish(),\n enum: z.array(z.record(z.string(), JsonValueSchema)).nullish(),\n ui: PropertyUIObjectSchema.nullish(),\n}).refine(\n (v) => {\n if (v.constant) return v.properties.length === 0\n return true\n },\n {\n error: \"properties must be empty when constant is defined\",\n abort: true,\n },\n)\n{\n type PropertyObjectInferred = z.infer<typeof PropertyObjectSchema>\n const _: IsEqual<PropertyObjectInferred, PropertyObject> = true\n}\n\nexport const PropertyDiscriminatedUnionSchema = PropertyBaseSchema.extend({\n type: z.literal(\"discriminated_union\"),\n get any_of() {\n return z\n .array(PropertyObjectSchema)\n .refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError)\n .min(2, \"anyOf must have at least two items\")\n },\n discriminator: z.string().min(1, \"discriminator cannot be empty\"),\n discriminator_ui: PropertyUIDiscriminatorUISchema.nullish(),\n})\n .refine(\n (v) => {\n const { any_of, discriminator } = v\n return any_of.every((i) => {\n const discriminatorProperty = i.properties?.find((p) => p.name === discriminator)\n if (!discriminatorProperty) return false\n if (!(\"constant\" in discriminatorProperty)) return false\n if (\n typeof discriminatorProperty.constant !== \"string\" &&\n typeof discriminatorProperty.constant !== \"number\" &&\n typeof discriminatorProperty.constant !== \"boolean\"\n ) {\n return false\n }\n return true\n })\n },\n {\n error:\n \"Each item in anyOf must contain the discriminator field with constant string/number/boolean value\",\n abort: true,\n },\n )\n .refine(\n (v) => {\n const { any_of } = v\n const allDiscriminatorProperty = compact(\n any_of.map((i) => {\n const discriminatorProperty = i.properties?.find((p) => p.name === v.discriminator)\n if (!discriminatorProperty) return null\n if (!(\"constant\" in discriminatorProperty)) return null\n return discriminatorProperty.constant\n }),\n )\n const uniqueValues = new Set(allDiscriminatorProperty)\n return uniqueValues.size === allDiscriminatorProperty.length\n },\n {\n error: \"Discriminator values must be unique across all anyOf items\",\n },\n )\n{\n const _: IsEqual<\n z.infer<typeof PropertyDiscriminatedUnionSchema>,\n PropertyDiscriminatedUnion\n > = true\n}\n\nexport const PropertyArraySchema = PropertyBaseSchema.extend({\n type: z.literal(\"array\"),\n constant: z.array(JsonValueSchema).nullish(),\n default: z.array(JsonValueSchema).nullish(),\n enum: z.array(z.array(JsonValueSchema)).nullish(),\n get items() {\n return PropertySchema\n },\n max_items: z.number().nullish(),\n min_items: z.number().nullish(),\n ui: PropertyUIArraySchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyArraySchema>, PropertyArray> = true\n}\n\nexport const PropertyCredentialIdSchema = PropertyBaseSchema.extend({\n type: z.literal(\"credential_id\"),\n credential_name: z.string().min(1, \"credential_name cannot be empty\"),\n ui: PropertyUICredentialIdSchema.nullish(),\n})\n\n{\n const _: IsEqual<z.infer<typeof PropertyCredentialIdSchema>, PropertyCredentialId<string>> = true\n}\nexport const PropertyEncryptedStringSchema = PropertyBaseSchema.extend({\n type: z.literal(\"encrypted_string\"),\n ui: PropertyUIEncryptedStringSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyEncryptedStringSchema>, PropertyEncryptedString> = true\n}\n\nconst PropertyScalarSchema = z.union([\n PropertyStringSchema,\n PropertyBooleanSchema,\n PropertyNumberSchema,\n PropertyEncryptedStringSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyScalarSchema>, PropertyScalar<string>> = true\n}\n\nexport const PropertiesScalarSchema = z.lazy(() =>\n z\n .array(PropertyScalarSchema)\n .refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError),\n)\n\nconst PropertySchema = z.union([\n ...PropertyScalarSchema.options,\n PropertyCredentialIdSchema,\n PropertyArraySchema,\n PropertyObjectSchema,\n PropertyDiscriminatedUnionSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertySchema>, Property> = true\n}\n\nexport const PropertiesSchema = ArrayPropertiesSchema\n","import type { IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n BaseDefinition,\n CredentialDefinition,\n ModelDefinition,\n PluginDefinition,\n ToolDefinition,\n} from \"../types\"\nimport { JsonValueSchema } from \"../utils/custom-json-value\"\nimport { I18nEntrySchema } from \"./common\"\nimport { PropertiesScalarSchema, PropertiesSchema } from \"./property\"\n\n/**\n * Base Definition Schema\n *\n * This is the base class for all function definition schemas, defining common properties and not used independently\n */\nexport const BaseDefinitionSchema = z.object({\n // 1. Can only contain English letters (case insensitive), numbers, _ and -\n // 2. Must start with an English letter and cannot end with _ or -\n // 3. _ and - cannot appear consecutively more than once\n // 4. Minimum length 4, maximum length 64\n name: z.string().regex(/^[a-zA-Z](?:(?![_-]{2,})[a-zA-Z0-9_-]){3,63}[a-zA-Z0-9]$/, {\n error:\n \"Invalid name, should match the following rules: 1. only English letters, numbers, _ and - 2. start with English letter, end with English letter or number 3. _ and - cannot appear consecutively more than twice 4. minimum length 4, maximum length 64\",\n }),\n display_name: I18nEntrySchema,\n description: I18nEntrySchema,\n icon: z.string(),\n})\n{\n const _: IsEqual<z.infer<typeof BaseDefinitionSchema>, BaseDefinition> = true\n}\n\nexport const PluginDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n author: z.string().nullish(),\n email: z.email().nullish(),\n repo: z.httpUrl().nullish(),\n version: z.string().nullish(),\n locales: z.array(z.string()),\n lang: z.enum([\"elixir\", \"typescript\"]),\n})\n{\n const _: IsEqual<\n z.infer<typeof PluginDefinitionSchema>,\n Omit<PluginDefinition<string[], unknown>, \"transporterOptions\"> // not necessary to verify transpoterOptions\n > = true\n}\n\nexport const CredentialDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n authenticate: z\n .function({\n input: z.tuple([\n z.object({\n args: z.object({\n credential: z.record(z.string(), z.string().nullish()),\n extra: z.looseObject({\n model: z.string().optional(),\n }),\n }),\n }),\n ]),\n output: z.promise(\n z.looseObject({\n adapter: z.enum([\"anthropic\", \"openai\", \"google\", \"deepseek\"]),\n api_key: z.string(),\n endpoint: z.httpUrl().optional(),\n model: z.string().optional(),\n headers: z.record(z.string(), z.string()).optional(),\n }),\n ),\n })\n .optional(),\n parameters: PropertiesScalarSchema,\n})\n{\n const _: IsEqual<z.infer<typeof CredentialDefinitionSchema>, CredentialDefinition> = true\n}\n\nexport const DataSourceDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n parameters: PropertiesScalarSchema,\n})\n\nexport type DataSourceDefinition = z.infer<typeof DataSourceDefinitionSchema>\n\nexport const ModelDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n name: z.string().regex(/^[a-zA-Z](?:(?![_.-]{2,})[a-zA-Z0-9._/-])*[a-zA-Z0-9]$/, {\n error:\n \"Invalid model name, should match the following rules: 1. only English letters, numbers, _, - and . 2. start with English letter, end with English letter or number 3. _, - and . cannot appear consecutively more than twice 4. allow '/' in the middle\",\n }),\n model_type: z.literal(\"llm\"),\n default_endpoint: z.httpUrl().nullish(),\n input_modalities: z.array(z.enum([\"file\", \"image\", \"text\"])),\n output_modalities: z.array(z.enum([\"text\"])),\n pricing: z\n .object({\n currency: z.string().nullish(),\n input: z.number().nullish(),\n input_cache_read: z.number().nullish(),\n input_cache_write: z.number().nullish(),\n output: z.number().nullish(),\n request: z.number().nullish(),\n })\n .nullish(),\n override_parameters: z\n .object({\n temperature: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n })\n .nullish(),\n frequency_penalty: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n })\n .nullish(),\n max_tokens: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n })\n .nullish(),\n verbosity: z\n .object({\n default: z.enum([\"low\", \"medium\", \"high\"]).nullish(),\n })\n .nullish(),\n })\n .nullish(),\n unsupported_parameters: z.array(\n z.enum([\n \"endpoint\",\n \"temperature\",\n // \"top_p\",\n // \"top_k\",\n \"frequency_penalty\",\n // \"presence_penalty\",\n // \"repetition_penalty\",\n // \"min_p\",\n // \"top_a\",\n \"seed\",\n \"max_tokens\",\n // \"logit_bias\",\n // \"logprobs\",\n // \"top_logprobs\",\n // \"response_format\",\n // \"json_response\",\n \"json_schema\",\n \"stream\",\n \"stream_options\",\n \"structured_outputs\",\n // \"stop\",\n // \"tools\",\n // \"tool_choice\",\n \"parallel_tool_calls\",\n \"verbosity\",\n ]),\n ),\n})\n{\n const _: IsEqual<z.infer<typeof ModelDefinitionSchema>, ModelDefinition> = true\n}\n\nexport const ToolDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n invoke: z.function({\n input: z.tuple([\n z.object({\n args: z.object({\n parameters: z.record(z.string(), z.any()),\n credentials: z.record(z.string(), z.string()).optional(),\n }),\n }),\n ]),\n output: z.promise(JsonValueSchema),\n }),\n parameters: PropertiesSchema,\n})\n{\n const _: IsEqual<z.infer<typeof ToolDefinitionSchema>, ToolDefinition> = true\n}\n"],"mappings":";;;AAAA,SAAgB,cAAc,OAAkD;AAC9E,KAAI,UAAU,QAAQ,OAAO,UAAU,SAAU,QAAO;AACxD,KAAI,OAAO,UAAU,SAAS,KAAK,MAAM,KAAK,kBAAmB,QAAO;CAExE,MAAM,QAAQ,OAAO,eAAe,MAAM;AAC1C,QAAO,UAAU,OAAO,aAAa,UAAU;;AAGjD,SAAgB,QACd,QACK;AAGL,QAAO,OAAO,OAAO,QAAQ;;;;;;;;;;ACH/B,MAAa,kBAAkB,EAAE,QAAkB,UAAU;AAE3D,KAAI,CAAC,cAAc,MAAM,CAAE,QAAO;AAElC,KAAI,EAAE,WAAW,OAAQ,QAAO;AAEhC,MAAK,MAAM,CAAC,QAAQ,SAAS,OAAO,QAAQ,MAAM,EAAE;AAElD,MAAI,OAAO,SAAS,SAAU,QAAO;EAIrC,MAAM,QAAQ,OAAO,MAAM,IAAI;AAE/B,MAAI,MAAM,WAAW,KAAK,MAAM,GAAG,OAAO,MAAM,GAAG,GAAG,aAAa,CACjE,QAAO;;AAGX,QAAO;GACN,qBAAqB;;;;;;;;;;;;;ACjBxB,MAAa,kBAAkB,EAAE,MAAM;;;;ACcvC,MAAM,oBAAoB,EAAE,MAAM;CAChC,EAAE,QAAQ,EAAE;CACZ,EAAE,QAAQ,EAAE;CACZ,EAAE,QAAQ,EAAE;CACZ,EAAE,QAAQ,EAAE;CACZ,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACb,EAAE,QAAQ,GAAG;CACd,CAAC;AAMF,MAAa,8BAA8B,EAAE,OAAO;CAClD,UAAU,EAAE,SAAS,CAAC,UAAU;CAChC,MAAM,gBAAgB,UAAU;CAChC,aAAa,gBAAgB,UAAU;CACvC,UAAU,EAAE,SAAS,CAAC,UAAU;CAChC,WAAW,EAAE,SAAS,CAAC,UAAU;CACjC,oBAAoB,EAAE,SAAS,CAAC,UAAU;CAC1C,OAAO,EAAE,KAAK;EAAC;EAAS;EAAU;EAAO,CAAC,CAAC,UAAU;CACrD,aAAa,kBAAkB,UAAU;CACzC,cAAc,EAAE,SAAS,CAAC,UAAU;CACrC,CAAC;AAGF,MAAa,yBAAyB,EAAE,OAAO;CAC7C,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC3B,OAAO;CACP,OAAO,EAAE,MAAM;EAAC,EAAE,QAAQ;EAAE,EAAE,QAAQ;EAAE,EAAE,SAAS;EAAC,CAAC;CACtD,CAAC;AAKF,MAAM,6BAA6B,4BAA4B,OAAO,EACpE,WAAW,EAAE,QAAQ,QAAQ,EAC9B,CAAC;AAKF,MAAa,sCAAsC,4BAA4B,OAAO,EACpF,WAAW,EAAE,QAAQ,kBAAkB,EACxC,CAAC;AASF,MAAM,gCAAgC,4BAA4B,OAAO;CACvE,WAAW,EAAE,QAAQ,WAAW;CAChC,YAAY,EAAE,QAAQ,CAAC,UAAU;CACjC,YAAY,EAAE,QAAQ,CAAC,UAAU;CAClC,CAAC;AAGF,MAAM,mCAAmC,4BAA4B,OAAO;CAC1E,WAAW,EAAE,QAAQ,eAAe;CACpC,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC3B,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC9B,CAAC;AAGF,MAAM,kCAAkC,4BAA4B,OAAO;CACzE,WAAW,EAAE,QAAQ,cAAc;CACnC,UAAU,EAAE,KAAK;EAAC;EAAQ;EAAc;EAAU,CAAC,CAAC,UAAU;CAC9D,cAAc,EAAE,SAAS,CAAC,UAAU;CACpC,eAAe,EAAE,SAAS,CAAC,UAAU;CACrC,YAAY,EAAE,QAAQ,CAAC,UAAU;CACjC,YAAY,EAAE,QAAQ,CAAC,UAAU;CACjC,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC5B,CAAC;AAGF,MAAM,kCAAkC,EAAE,OAAO;CAC/C,WAAW,EAAE,SAAS,CAAC,UAAU;CACjC,SAAS,EAAE,MAAM,uBAAuB,CAAC,UAAU;CACnD,YAAY,EAAE,SAAS,CAAC,UAAU;CACnC,CAAC;AAGF,MAAM,oCAAoC,4BAA4B,MACpE,gCACD,CAAC,OAAO,EACP,WAAW,EAAE,QAAQ,SAAS,EAC/B,CAAC;AASF,MAAM,kCAAkC,4BAA4B,MAClE,gCACD,CAAC,OAAO,EACP,WAAW,EAAE,QAAQ,cAAc,EACpC,CAAC;AASF,MAAM,mCAAmC,4BAA4B,MACnE,gCACD,CAAC,OAAO,EACP,WAAW,EAAE,QAAQ,eAAe,EACrC,CAAC;AAGF,MAAM,8BAA8B,4BAA4B,OAAO,EACrE,WAAW,EAAE,QAAQ,SAAS,EAC/B,CAAC;AAMF,MAAM,8BAA8B,4BAA4B,OAAO;CACrE,WAAW,EAAE,QAAQ,SAAS;CAC9B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,UAAU;CAClD,YAAY,EAAE,SAAS,CAAC,UAAU;CAClC,MAAM,EAAE,QAAQ,CAAC,UAAU;CAC5B,CAAC;AAGF,MAAM,sCAAsC,4BAA4B,OAAO;CAC7E,kBAAkB,gBAAgB,UAAU;CAC5C,WAAW,EAAE,QAAQ,mBAAmB;CACxC,mBAAmB,gBAAgB,UAAU;CAC7C,gBAAgB,gBAAgB,UAAU;CAC3C,CAAC;AASF,MAAM,gCAAgC,4BAA4B,OAAO,EACvE,WAAW,EAAE,QAAQ,YAAY,EAClC,CAAC;AAGF,MAAM,mCAAmC,4BAA4B,OAAO;CAC1E,WAAW,EAAE,QAAQ,eAAe;CACpC,MAAM,EAAE,KAAK;EAAC;EAAe;EAAS;EAAU;EAAQ,CAAC,CAAC,UAAU;CACrE,CAAC;AASF,MAAM,mCAAmC,4BAA4B,OAAO,EAC1E,WAAW,EAAE,QAAQ,eAAe,EACrC,CAAC;AASF,MAAM,wCAAwC,4BAA4B,OAAO;CAC/E,WAAW,EAAE,SAAS,CAAC,UAAU;CACjC,WAAW,EAAE,QAAQ,oBAAoB;CACzC,YAAY,EAAE,SAAS,CAAC,UAAU;CACnC,CAAC;AAGF,MAAM,wCAAwC,4BAA4B,OAAO,EAC/E,WAAW,EAAE,QAAQ,qBAAqB,EAC3C,CAAC;AAGF,MAAM,wCAAwC,4BAA4B,OAAO,EAC/E,WAAW,EAAE,QAAQ,oBAAoB,EAC1C,CAAC;AAGF,MAAM,oCAAoC,4BAA4B,OAAO;CAC3E,WAAW,gBAAgB,UAAU;CACrC,aAAa,EAAE,SAAS,CAAC,UAAU;CACnC,WAAW,EAAE,QAAQ,gBAAgB;CACrC,eAAe,gBAAgB,UAAU;CACzC,gBAAgB,gBAAgB,UAAU;CAC1C,UAAU,EAAE,SAAS,CAAC,UAAU;CACjC,CAAC;AASF,MAAM,wCAAwC,4BAA4B,OAAO;CAC/E,aAAa,EAAE,SAAS,CAAC,UAAU;CACnC,WAAW,EAAE,QAAQ,oBAAoB;CACzC,mBAAmB,EAAE,SAAS,CAAC,UAAU;CACzC,aAAa,gBAAgB,UAAU;CACvC,gBAAgB,gBAAgB,UAAU;CAC1C,UAAU,EAAE,SAAS,CAAC,UAAU;CACjC,CAAC;AASF,MAAM,+BAA+B,4BAA4B,OAAO,EACtE,WAAW,EAAE,QAAQ,UAAU,EAChC,CAAC;AAKF,MAAa,wBAAwB,EAAE,mBAAmB,aAAa;CACrE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,0BAA0B,EAAE,mBAAmB,aAAa,CACvE,4BACD,CAAC;AAKF,MAAa,yBAAyB,EAAE,mBAAmB,aAAa,CACtE,kCACA,4BACD,CAAC;AAKF,MAAa,yBAAyB,EAAE,mBAAmB,aAAa;CACtE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,wBAAwB,EAAE,mBAAmB,aAAa;CACrE;CACA;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,4BAA4B,EAAE,mBAAmB,aAAa,CACzE,uCACA,6BACD,CAAC;AAKF,MAAa,yBAAyB,EAAE,mBAAmB,aAAa;CACtE;CACA;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,+BAA+B,EAAE,mBAAmB,aAAa,CAC5E,sCACD,CAAC;AAKF,MAAa,kCAAkC,EAAE,mBAAmB,aAAa;CAC/E;CACA;CACA;CACD,CAAC;AAEF,MAAa,kCAAkC,EAAE,mBAAmB,aAAa,CAC/E,oCACD,CAAC;;;;ACzWF,MAAM,sBAAsB,EAAE,MAAM;CAAC,EAAE,QAAQ;CAAE,EAAE,QAAQ;CAAE,EAAE,SAAS;CAAE,EAAE,MAAM;CAAC,CAAC;AACpF,MAAMA,oBAAwC,EAAE,WAC9C,EAAE,MAAM;CAAC;CAAqB,EAAE,MAAMA,kBAAgB;CAAE,EAAE,OAAO,EAAE,QAAQ,EAAEA,kBAAgB;CAAC,CAAC,CAChG;AAED,MAAM,wBAAwB,EAAE,OAAO;CACrC,KAAKA,kBAAgB,SAAS;CAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;CAC9B,KAAKA,kBAAgB,SAAS;CAC9B,MAAMA,kBAAgB,SAAS;CAC/B,KAAK,EAAE,MAAMA,kBAAgB,CAAC,SAAS;CACvC,KAAKA,kBAAgB,SAAS;CAC9B,MAAMA,kBAAgB,SAAS;CAC/B,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;CACjD,KAAKA,kBAAgB,SAAS;CAC9B,MAAM,EAAE,MAAMA,kBAAgB,CAAC,SAAS;CACxC,UAAU,EAAE,QAAQ,CAAC,SAAS;CAC9B,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,WAAW,OAAO,CAAC,CAAC,CAAC,SAAS;CAC7D,OAAO,EAAE,QAAQ,CAAC,SAAS;CAC5B,CAAC;AAEF,MAAM,kBAAkB,EAAE,MAAM,CAACA,mBAAiB,sBAAsB,CAAC;AAEzE,MAAM,mBAAmB,EAAE,OAAO;CAChC,IAAI,OAAO;AACT,SAAO,EAAE,MAAM,aAAa,CAAC,SAAS;;CAExC,IAAI,OAAO;AACT,SAAO,EAAE,MAAM,aAAa,CAAC,SAAS;;CAExC,IAAI,MAAM;AACR,SAAO,EAAE,MAAM,aAAa,CAAC,SAAS;;CAEzC,CAAC;AAMF,MAAM,eAA4C,EAAE,MAAM,CACxD,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EACrC,iBACD,CAAC;AAEF,MAAM,qBAAqB,EAAE,OAAO;CAClC,MAAM,EACH,QAAQ,CACR,IAAI,GAAG,uBAAuB,CAC9B,QACE,QAAQ;AAEP,SAAO,CADmC,SACA,KAAK,IAAI;IAErD;EACE,OAAO;EACP,OAAO;EACR,CACF,CACA,QACE,QAAQ;AAEP,SAAO,CADqB;GAAC;GAAK;GAAK;GAAI,CACf,MAAM,SAAS,IAAI,SAAS,KAAK,CAAC;IAEhE;EACE,OAAO;EACP,OAAO;EACR,CACF;CAEH,cAAc,gBAAgB,SAAS;CACvC,UAAU,EAAE,SAAS,CAAC,SAAS;CAC/B,SAAS,EACN,OAAO;EACN,MAAM,aAAa,SAAS;EAC5B,MAAM,aAAa,SAAS;EAC7B,CAAC,CACD,SAAS;CACZ,IAAI,EACD,OAAO,EACN,iBAAiB,gBAAgB,SAAS,EAC3C,CAAC,CACD,SAAS;CACZ,IAAI,4BAA4B,SAAS;CAC1C,CAAC;AAKF,MAAa,uBAAuB,mBAAmB,OAAO;CAC5D,MAAM,EAAE,QAAQ,SAAS;CACzB,UAAU,EAAE,QAAQ,CAAC,SAAS;CAC9B,SAAS,EAAE,QAAQ,CAAC,SAAS;CAC7B,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,SAAS;CACnC,YAAY,EAAE,QAAQ,CAAC,SAAS;CAChC,YAAY,EAAE,QAAQ,CAAC,SAAS;CAChC,IAAI,uBAAuB,SAAS;CACrC,CAAC;AAKF,MAAa,uBAAuB,mBAAmB,OAAO;CAC5D,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,SAAS,EAAE,EAAE,QAAQ,UAAU,CAAC,CAAC;CAC1D,UAAU,EAAE,QAAQ,CAAC,SAAS;CAC9B,SAAS,EAAE,QAAQ,CAAC,SAAS;CAC7B,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,SAAS;CACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;CAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;CAC7B,IAAI,uBAAuB,SAAS;CACrC,CAAC;AAKF,MAAa,wBAAwB,mBAAmB,OAAO;CAC7D,MAAM,EAAE,QAAQ,UAAU;CAC1B,UAAU,EAAE,SAAS,CAAC,SAAS;CAC/B,SAAS,EAAE,SAAS,CAAC,SAAS;CAC9B,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,SAAS;CACpC,IAAI,wBAAwB,SAAS;CACtC,CAAC;AAKF,MAAM,sBAAsB;CAC1B,UAAU,eAAmC;EAC3C,MAAM,wBAAQ,IAAI,KAAa;AAC/B,OAAK,MAAM,QAAQ,YAAY;AAC7B,OAAI,MAAM,IAAI,KAAK,KAAK,CAAE,QAAO;AACjC,SAAM,IAAI,KAAK,KAAK;;AAEtB,SAAO;;CAET,aAAa,EACX,OAAO,4CACR;CACF;AAGD,MAAM,wBAAiE,EAAE,WACvE,EAAE,MAAM,eAAe,CAAC,OAAO,oBAAoB,SAAS,oBAAoB,YAAY,CAC7F;AAED,MAAM,6BAAkD,EAAE,WAAW,eAAe;AAEpF,MAAa,uBAAuB,mBAAmB,OAAO;CAC5D,MAAM,EAAE,QAAQ,SAAS;CACzB,YAAY;CACZ,uBAAuB,2BAA2B,SAAS;CAC3D,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAEA,kBAAgB,CAAC,SAAS;CACzD,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAEA,kBAAgB,CAAC,SAAS;CACxD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAEA,kBAAgB,CAAC,CAAC,SAAS;CAC9D,IAAI,uBAAuB,SAAS;CACrC,CAAC,CAAC,QACA,MAAM;AACL,KAAI,EAAE,SAAU,QAAO,EAAE,WAAW,WAAW;AAC/C,QAAO;GAET;CACE,OAAO;CACP,OAAO;CACR,CACF;AAMD,MAAa,mCAAmC,mBAAmB,OAAO;CACxE,MAAM,EAAE,QAAQ,sBAAsB;CACtC,IAAI,SAAS;AACX,SAAO,EACJ,MAAM,qBAAqB,CAC3B,OAAO,oBAAoB,SAAS,oBAAoB,YAAY,CACpE,IAAI,GAAG,qCAAqC;;CAEjD,eAAe,EAAE,QAAQ,CAAC,IAAI,GAAG,gCAAgC;CACjE,kBAAkB,gCAAgC,SAAS;CAC5D,CAAC,CACC,QACE,MAAM;CACL,MAAM,EAAE,QAAQ,kBAAkB;AAClC,QAAO,OAAO,OAAO,MAAM;EACzB,MAAM,wBAAwB,EAAE,YAAY,MAAM,MAAM,EAAE,SAAS,cAAc;AACjF,MAAI,CAAC,sBAAuB,QAAO;AACnC,MAAI,EAAE,cAAc,uBAAwB,QAAO;AACnD,MACE,OAAO,sBAAsB,aAAa,YAC1C,OAAO,sBAAsB,aAAa,YAC1C,OAAO,sBAAsB,aAAa,UAE1C,QAAO;AAET,SAAO;GACP;GAEJ;CACE,OACE;CACF,OAAO;CACR,CACF,CACA,QACE,MAAM;CACL,MAAM,EAAE,WAAW;CACnB,MAAM,2BAA2B,QAC/B,OAAO,KAAK,MAAM;EAChB,MAAM,wBAAwB,EAAE,YAAY,MAAM,MAAM,EAAE,SAAS,EAAE,cAAc;AACnF,MAAI,CAAC,sBAAuB,QAAO;AACnC,MAAI,EAAE,cAAc,uBAAwB,QAAO;AACnD,SAAO,sBAAsB;GAC7B,CACH;AAED,QADqB,IAAI,IAAI,yBAAyB,CAClC,SAAS,yBAAyB;GAExD,EACE,OAAO,8DACR,CACF;AAQH,MAAa,sBAAsB,mBAAmB,OAAO;CAC3D,MAAM,EAAE,QAAQ,QAAQ;CACxB,UAAU,EAAE,MAAMA,kBAAgB,CAAC,SAAS;CAC5C,SAAS,EAAE,MAAMA,kBAAgB,CAAC,SAAS;CAC3C,MAAM,EAAE,MAAM,EAAE,MAAMA,kBAAgB,CAAC,CAAC,SAAS;CACjD,IAAI,QAAQ;AACV,SAAO;;CAET,WAAW,EAAE,QAAQ,CAAC,SAAS;CAC/B,WAAW,EAAE,QAAQ,CAAC,SAAS;CAC/B,IAAI,sBAAsB,SAAS;CACpC,CAAC;AAKF,MAAa,6BAA6B,mBAAmB,OAAO;CAClE,MAAM,EAAE,QAAQ,gBAAgB;CAChC,iBAAiB,EAAE,QAAQ,CAAC,IAAI,GAAG,kCAAkC;CACrE,IAAI,6BAA6B,SAAS;CAC3C,CAAC;AAKF,MAAa,gCAAgC,mBAAmB,OAAO;CACrE,MAAM,EAAE,QAAQ,mBAAmB;CACnC,IAAI,gCAAgC,SAAS;CAC9C,CAAC;AAKF,MAAM,uBAAuB,EAAE,MAAM;CACnC;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,yBAAyB,EAAE,WACtC,EACG,MAAM,qBAAqB,CAC3B,OAAO,oBAAoB,SAAS,oBAAoB,YAAY,CACxE;AAED,MAAM,iBAAiB,EAAE,MAAM;CAC7B,GAAG,qBAAqB;CACxB;CACA;CACA;CACA;CACD,CAAC;AAKF,MAAa,mBAAmB;;;;;;;;;AC7ShC,MAAa,uBAAuB,EAAE,OAAO;CAK3C,MAAM,EAAE,QAAQ,CAAC,MAAM,4DAA4D,EACjF,OACE,2PACH,CAAC;CACF,cAAc;CACd,aAAa;CACb,MAAM,EAAE,QAAQ;CACjB,CAAC;AAKF,MAAa,yBAAyB,EAAE,OAAO;CAC7C,GAAG,qBAAqB;CACxB,QAAQ,EAAE,QAAQ,CAAC,SAAS;CAC5B,OAAO,EAAE,OAAO,CAAC,SAAS;CAC1B,MAAM,EAAE,SAAS,CAAC,SAAS;CAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;CAC7B,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;CAC5B,MAAM,EAAE,KAAK,CAAC,UAAU,aAAa,CAAC;CACvC,CAAC;AAQF,MAAa,6BAA6B,EAAE,OAAO;CACjD,GAAG,qBAAqB;CACxB,cAAc,EACX,SAAS;EACR,OAAO,EAAE,MAAM,CACb,EAAE,OAAO,EACP,MAAM,EAAE,OAAO;GACb,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC;GACtD,OAAO,EAAE,YAAY,EACnB,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC7B,CAAC;GACH,CAAC,EACH,CAAC,CACH,CAAC;EACF,QAAQ,EAAE,QACR,EAAE,YAAY;GACZ,SAAS,EAAE,KAAK;IAAC;IAAa;IAAU;IAAU;IAAW,CAAC;GAC9D,SAAS,EAAE,QAAQ;GACnB,UAAU,EAAE,SAAS,CAAC,UAAU;GAChC,OAAO,EAAE,QAAQ,CAAC,UAAU;GAC5B,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,UAAU;GACrD,CAAC,CACH;EACF,CAAC,CACD,UAAU;CACb,YAAY;CACb,CAAC;AAKF,MAAa,6BAA6B,EAAE,OAAO;CACjD,GAAG,qBAAqB;CACxB,YAAY;CACb,CAAC;AAIF,MAAa,wBAAwB,EAAE,OAAO;CAC5C,GAAG,qBAAqB;CACxB,MAAM,EAAE,QAAQ,CAAC,MAAM,0DAA0D,EAC/E,OACE,2PACH,CAAC;CACF,YAAY,EAAE,QAAQ,MAAM;CAC5B,kBAAkB,EAAE,SAAS,CAAC,SAAS;CACvC,kBAAkB,EAAE,MAAM,EAAE,KAAK;EAAC;EAAQ;EAAS;EAAO,CAAC,CAAC;CAC5D,mBAAmB,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;CAC5C,SAAS,EACN,OAAO;EACN,UAAU,EAAE,QAAQ,CAAC,SAAS;EAC9B,OAAO,EAAE,QAAQ,CAAC,SAAS;EAC3B,kBAAkB,EAAE,QAAQ,CAAC,SAAS;EACtC,mBAAmB,EAAE,QAAQ,CAAC,SAAS;EACvC,QAAQ,EAAE,QAAQ,CAAC,SAAS;EAC5B,SAAS,EAAE,QAAQ,CAAC,SAAS;EAC9B,CAAC,CACD,SAAS;CACZ,qBAAqB,EAClB,OAAO;EACN,aAAa,EACV,OAAO;GACN,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC9B,CAAC,CACD,SAAS;EACZ,mBAAmB,EAChB,OAAO;GACN,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC9B,CAAC,CACD,SAAS;EACZ,YAAY,EACT,OAAO;GACN,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;GAC9B,CAAC,CACD,SAAS;EACZ,WAAW,EACR,OAAO,EACN,SAAS,EAAE,KAAK;GAAC;GAAO;GAAU;GAAO,CAAC,CAAC,SAAS,EACrD,CAAC,CACD,SAAS;EACb,CAAC,CACD,SAAS;CACZ,wBAAwB,EAAE,MACxB,EAAE,KAAK;EACL;EACA;EAGA;EAKA;EACA;EAMA;EACA;EACA;EACA;EAIA;EACA;EACD,CAAC,CACH;CACF,CAAC;AAKF,MAAa,uBAAuB,EAAE,OAAO;CAC3C,GAAG,qBAAqB;CACxB,QAAQ,EAAE,SAAS;EACjB,OAAO,EAAE,MAAM,CACb,EAAE,OAAO,EACP,MAAM,EAAE,OAAO;GACb,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC;GACzC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,UAAU;GACzD,CAAC,EACH,CAAC,CACH,CAAC;EACF,QAAQ,EAAE,QAAQ,gBAAgB;EACnC,CAAC;CACF,YAAY;CACb,CAAC"}
1
+ {"version":3,"file":"schemas.mjs","names":["JsonValueSchema"],"sources":["../src/utils/toolkit.ts","../src/schemas/common.ts","../src/utils/custom-json-value.ts","../src/schemas/property-ui.ts","../src/schemas/property.ts","../src/schemas/definition.ts"],"sourcesContent":["export function isPlainObject(value: unknown): value is Record<string, unknown> {\n if (value === null || typeof value !== \"object\") return false\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false\n\n const proto = Object.getPrototypeOf(value)\n return proto === Object.prototype || proto === null\n}\n\nexport function compact<T>(\n values: Array<T | null | undefined | false | 0 | \"\" | typeof Number.NaN>,\n): T[] {\n // Match common \"compact\" behavior: drop falsy values.\n // Note: `NaN` is truthy? Actually `Boolean(NaN) === false`, so it will be removed too.\n return values.filter(Boolean) as T[]\n}\n","import type { IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type { I18nText } from \"../types\"\nimport { isPlainObject } from \"../utils/toolkit\"\n\n/**\n * I18n 词条模式\n *\n * NOTE: Zod 无法定义复杂的字面量模版,此处使用 `z.custom` 实现自定义验证\n */\nexport const I18nEntrySchema = z.custom<I18nText>((value) => {\n // 必须是对象字面量\n if (!isPlainObject(value)) return false\n // 必须包含 en_US 键\n if (!(\"en_US\" in value)) return false\n\n for (const [locale, text] of Object.entries(value)) {\n // 值必须是字符串\n if (typeof text !== \"string\") return false\n\n // NOTE: 支持的语言码并不严格符合标准,因为 TS 字面量模版无法描述所有可能的情况\n // 故以下仅对满足需求的子集做简单检查而不是严格的 RFC 5646 标准检查\n const parts = locale.split(\"_\")\n // 其它语言代码必须符合格式:<语言代码>_<国家或脚本代码>,且第二部份首字母必须大写\n if (parts.length !== 2 || parts[1][0] !== parts[1][0].toUpperCase()) {\n return false\n }\n }\n return true\n}, \"Invalid I18n entry\")\n{\n const _: IsEqual<z.infer<typeof I18nEntrySchema>, I18nText> = true\n}\n","/**\n * Custom JSON Value Schema and Type\n *\n * Why? Because `z.json()` is not compatible with `JSONValue` from type-fest\n */\n\nimport { z } from \"zod\"\n\n/**\n * Custom JSON Value Schema\n * @description Custom JSON Value Schema is a schema that allows any JSON value\n */\nexport const JsonValueSchema = z.json()\n\n/**\n * Custom JSON Value Type\n * @description Custom JSON Value Type is the type of the JSON value\n */\nexport type JsonValue = z.infer<typeof JsonValueSchema>\n","import type { IntRange, IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n PropertyUIArray,\n PropertyUIArraySectionProps,\n PropertyUIBoolean,\n PropertyUICollapsiblePanelProps,\n PropertyUIColorPickerProps,\n PropertyUIContainer,\n PropertyUICredentialId,\n PropertyUIEmojiPickerProps,\n PropertyUIEncryptedInputProps,\n PropertyUIInputProps,\n PropertyUIKeyValueEditorProps,\n PropertyUINumber,\n PropertyUIObject,\n PropertyUIOption,\n PropertyUIProps,\n PropertyUIRadioGroupProps,\n PropertyUISectionProps,\n PropertyUISingleSelectProps,\n PropertyUIString,\n PropertyUISwitchProps,\n} from \"../types\"\nimport { I18nEntrySchema } from \"./common\"\n\nconst indentationSchema = z.union([\n z.literal(2),\n z.literal(4),\n z.literal(6),\n z.literal(8),\n z.literal(10),\n z.literal(12),\n z.literal(14),\n z.literal(16),\n z.literal(18),\n z.literal(20),\n z.literal(22),\n z.literal(24),\n z.literal(26),\n z.literal(28),\n z.literal(30),\n z.literal(32),\n z.literal(34),\n z.literal(36),\n z.literal(38),\n z.literal(40),\n z.literal(42),\n z.literal(44),\n z.literal(46),\n z.literal(48),\n z.literal(50),\n z.literal(52),\n z.literal(54),\n z.literal(56),\n z.literal(58),\n z.literal(60),\n z.literal(62),\n z.literal(64),\n z.literal(66),\n z.literal(68),\n z.literal(70),\n z.literal(72),\n z.literal(74),\n z.literal(76),\n z.literal(78),\n z.literal(80),\n])\n{\n const _: IsEqual<z.infer<typeof indentationSchema>, IntRange<2, 81, 2>> = true\n}\n\n// Common UI properties schema\nexport const PropertyUICommonPropsSchema = z.object({\n disabled: z.boolean().optional(),\n hint: I18nEntrySchema.optional(),\n placeholder: I18nEntrySchema.optional(),\n readonly: z.boolean().optional(),\n sensitive: z.boolean().optional(),\n support_expression: z.boolean().optional(),\n width: z.enum([\"small\", \"medium\", \"full\"]).optional(),\n indentation: indentationSchema.optional(),\n display_none: z.boolean().optional(),\n})\n\n// Option schema for select components\nexport const PropertyUIOptionSchema = z.object({\n icon: z.string().optional(),\n label: I18nEntrySchema,\n value: z.union([z.string(), z.number(), z.boolean()]),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUIOptionSchema>, PropertyUIOption> = true\n}\n\nconst PropertyUIInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"input\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUIInputPropsSchema>, PropertyUIInputProps> = true\n}\n\nexport const PropertyUIEncryptedInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"encrypted-input\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIEncryptedInputPropsSchema>,\n PropertyUIEncryptedInputProps\n > = true\n}\n\n// Textarea component schema\nconst PropertyUITextareaPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"textarea\"),\n max_height: z.number().optional(),\n min_height: z.number().optional(),\n})\n\n// Number input component schema\nconst PropertyUINumberInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"number-input\"),\n step: z.number().optional(),\n suffix: z.string().optional(),\n})\n\n// Code editor component schema\nconst PropertyUICodeEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"code-editor\"),\n language: z.enum([\"json\", \"javascript\", \"python3\"]).optional(),\n line_numbers: z.boolean().optional(),\n line_wrapping: z.boolean().optional(),\n max_height: z.number().optional(),\n min_height: z.number().optional(),\n rows: z.number().optional(),\n})\n\n// Select base schema\nconst PropertyUISelectPropsBaseSchema = z.object({\n clearable: z.boolean().optional(),\n options: z.array(PropertyUIOptionSchema).optional(),\n searchable: z.boolean().optional(),\n})\n\n// Single select component schema\nconst PropertyUISingleSelectPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"select\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUISingleSelectPropsSchema>,\n PropertyUISingleSelectProps\n > = true\n}\n\n// Radio group component schema\nconst PropertyUIRadioGroupPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"radio-group\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIRadioGroupPropsSchema>,\n PropertyUIRadioGroupProps\n > = true\n}\n\n// Multi select component schema\nconst PropertyUIMultiSelectPropsSchema = PropertyUICommonPropsSchema.merge(\n PropertyUISelectPropsBaseSchema,\n).extend({\n component: z.literal(\"multi-select\"),\n})\n\n// Switch component schema\nconst PropertyUISwitchPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"switch\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUISwitchPropsSchema>, PropertyUISwitchProps> = true\n}\n\n// Slider component schema\nconst PropertyUISliderPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"slider\"),\n marks: z.record(z.number(), z.string()).optional(),\n show_value: z.boolean().optional(),\n step: z.number().optional(),\n})\n\n// Key-value editor component schema\nconst PropertyUIKeyValueEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n add_button_label: I18nEntrySchema.optional(),\n component: z.literal(\"key-value-editor\"),\n empty_description: I18nEntrySchema.optional(),\n section_header: I18nEntrySchema.optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIKeyValueEditorPropsSchema>,\n PropertyUIKeyValueEditorProps\n > = true\n}\n\n// Tag input component schema\nconst PropertyUITagInputPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"tag-input\"),\n})\n\n// Emoji picker component schema\nconst PropertyUIEmojiPickerPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"emoji-picker\"),\n size: z.enum([\"extra-small\", \"small\", \"medium\", \"large\"]).optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIEmojiPickerPropsSchema>,\n PropertyUIEmojiPickerProps\n > = true\n}\n\n// Color picker component schema\nconst PropertyUIColorPickerPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"color-picker\"),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIColorPickerPropsSchema>,\n PropertyUIColorPickerProps\n > = true\n}\n\n// Credential select component schema\nconst PropertyUICredentialSelectPropsSchema = PropertyUICommonPropsSchema.extend({\n clearable: z.boolean().optional(),\n component: z.literal(\"credential-select\"),\n searchable: z.boolean().optional(),\n})\n\n// JSON Schema editor component schema\nconst PropertyUIJsonSchemaEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"json-schema-editor\"),\n})\n\n// Conditions editor component schema\nconst PropertyUIConditionsEditorPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"conditions-editor\"),\n})\n\n// Array section component schema\nconst PropertyUIArraySectionPropsSchema = PropertyUICommonPropsSchema.extend({\n add_label: I18nEntrySchema.optional(),\n collapsible: z.boolean().optional(),\n component: z.literal(\"array-section\"),\n empty_message: I18nEntrySchema.optional(),\n remove_tooltip: I18nEntrySchema.optional(),\n sortable: z.boolean().optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUIArraySectionPropsSchema>,\n PropertyUIArraySectionProps\n > = true\n}\n\n// Collapsible panel component schema\nconst PropertyUICollapsiblePanelPropsSchema = PropertyUICommonPropsSchema.extend({\n collapsible: z.boolean().optional(),\n component: z.literal(\"collapsible-panel\"),\n default_collapsed: z.boolean().optional(),\n panel_title: I18nEntrySchema.optional(),\n remove_tooltip: I18nEntrySchema.optional(),\n sortable: z.boolean().optional(),\n})\n{\n const _: IsEqual<\n z.infer<typeof PropertyUICollapsiblePanelPropsSchema>,\n PropertyUICollapsiblePanelProps\n > = true\n}\n\n// Section component schema\nconst PropertyUISectionPropsSchema = PropertyUICommonPropsSchema.extend({\n component: z.literal(\"section\"),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyUISectionPropsSchema>, PropertyUISectionProps> = true\n}\n\nexport const PropertyUIPropsSchema = z.discriminatedUnion(\"component\", [\n PropertyUIInputPropsSchema,\n PropertyUITextareaPropsSchema,\n PropertyUINumberInputPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n PropertyUIEmojiPickerPropsSchema,\n PropertyUIColorPickerPropsSchema,\n PropertyUIMultiSelectPropsSchema,\n PropertyUISwitchPropsSchema,\n PropertyUISliderPropsSchema,\n PropertyUIKeyValueEditorPropsSchema,\n PropertyUITagInputPropsSchema,\n PropertyUICredentialSelectPropsSchema,\n PropertyUIJsonSchemaEditorPropsSchema,\n PropertyUIConditionsEditorPropsSchema,\n PropertyUIArraySectionPropsSchema,\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n PropertyUIEncryptedInputPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIPropsSchema>, PropertyUIProps> = true\n}\n\nexport const PropertyUIBooleanSchema = z.discriminatedUnion(\"component\", [\n PropertyUISwitchPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIBooleanSchema>, PropertyUIBoolean> = true\n}\n\nexport const PropertyUINumberSchema = z.discriminatedUnion(\"component\", [\n PropertyUINumberInputPropsSchema,\n PropertyUISliderPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUINumberSchema>, PropertyUINumber> = true\n}\n\nexport const PropertyUIStringSchema = z.discriminatedUnion(\"component\", [\n PropertyUIInputPropsSchema,\n PropertyUITextareaPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUICredentialSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n PropertyUIEmojiPickerPropsSchema,\n PropertyUIColorPickerPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIStringSchema>, PropertyUIString> = true\n}\n\nexport const PropertyUIArraySchema = z.discriminatedUnion(\"component\", [\n PropertyUIMultiSelectPropsSchema,\n PropertyUITagInputPropsSchema,\n PropertyUIKeyValueEditorPropsSchema,\n PropertyUISliderPropsSchema,\n PropertyUIArraySectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIArraySchema>, PropertyUIArray> = true\n}\n\nexport const PropertyUIContainerSchema = z.discriminatedUnion(\"component\", [\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIContainerSchema>, PropertyUIContainer> = true\n}\n\nexport const PropertyUIObjectSchema = z.discriminatedUnion(\"component\", [\n PropertyUIJsonSchemaEditorPropsSchema,\n PropertyUIConditionsEditorPropsSchema,\n PropertyUICodeEditorPropsSchema,\n PropertyUICollapsiblePanelPropsSchema,\n PropertyUISectionPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUIObjectSchema>, PropertyUIObject> = true\n}\n\nexport const PropertyUICredentialIdSchema = z.discriminatedUnion(\"component\", [\n PropertyUICredentialSelectPropsSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyUICredentialIdSchema>, PropertyUICredentialId> = true\n}\n\nexport const PropertyUIDiscriminatorUISchema = z.discriminatedUnion(\"component\", [\n PropertyUISwitchPropsSchema,\n PropertyUISingleSelectPropsSchema,\n PropertyUIRadioGroupPropsSchema,\n])\n\nexport const PropertyUIEncryptedStringSchema = z.discriminatedUnion(\"component\", [\n PropertyUIEncryptedInputPropsSchema,\n])\n","import type { IsEqual, JsonValue } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n DisplayCondition,\n FilterOperators,\n Property,\n PropertyArray,\n PropertyBase,\n PropertyBoolean,\n PropertyCredentialId,\n PropertyDiscriminatedUnion,\n PropertyEncryptedString,\n PropertyNumber,\n PropertyObject,\n PropertyScalar,\n PropertyString,\n} from \"../types\"\nimport { compact } from \"../utils/toolkit\"\nimport { I18nEntrySchema } from \"./common\"\nimport {\n PropertyUIArraySchema,\n PropertyUIBooleanSchema,\n PropertyUICommonPropsSchema,\n PropertyUICredentialIdSchema,\n PropertyUIDiscriminatorUISchema,\n PropertyUIEncryptedStringSchema,\n PropertyUINumberSchema,\n PropertyUIObjectSchema,\n PropertyUIStringSchema,\n} from \"./property-ui\"\n\nconst JsonPrimitiveSchema = z.union([z.string(), z.number(), z.boolean(), z.null()])\nconst JsonValueSchema: z.ZodType<JsonValue> = z.lazy(() =>\n z.union([JsonPrimitiveSchema, z.array(JsonValueSchema), z.record(z.string(), JsonValueSchema)]),\n)\n\nconst FilterOperatorsSchema = z.object({\n $eq: JsonValueSchema.nullish(),\n $exists: z.boolean().nullish(),\n $gt: JsonValueSchema.nullish(),\n $gte: JsonValueSchema.nullish(),\n $in: z.array(JsonValueSchema).nullish(),\n $lt: JsonValueSchema.nullish(),\n $lte: JsonValueSchema.nullish(),\n $mod: z.tuple([z.number(), z.number()]).nullish(),\n $ne: JsonValueSchema.nullish(),\n $nin: z.array(JsonValueSchema).nullish(),\n $options: z.string().nullish(),\n $regex: z.union([z.string(), z.instanceof(RegExp)]).nullish(),\n $size: z.number().nullish(),\n})\n\nconst ConditionSchema = z.union([JsonValueSchema, FilterOperatorsSchema])\n\nconst RootFilterSchema = z.object({\n get $and() {\n return z.array(FilterSchema).nullish()\n },\n get $nor() {\n return z.array(FilterSchema).nullish()\n },\n get $or() {\n return z.array(FilterSchema).nullish()\n },\n})\n{\n const _: IsEqual<z.infer<typeof FilterOperatorsSchema>, FilterOperators> = true\n}\n\n// skip infer because of recursive structure\nconst FilterSchema: z.ZodType<DisplayCondition> = z.union([\n z.record(z.string(), ConditionSchema),\n RootFilterSchema,\n])\n\nconst PropertyBaseSchema = z.object({\n name: z\n .string()\n .min(1, \"name cannot be empty\")\n .refine(\n (val) => {\n const regexStartsWithDollarOrWhitespace = /^[\\s$]/\n return !regexStartsWithDollarOrWhitespace.test(val)\n },\n {\n error: \"name cannot start with $ or whitespace\",\n abort: true,\n },\n )\n .refine(\n (val) => {\n const forbiddenCharacters = [\".\", \"[\", \"]\"]\n return !forbiddenCharacters.some((char) => val.includes(char))\n },\n {\n error: 'name cannot contain \".\", \"[\", or \"]\" characters',\n abort: true,\n },\n ),\n display_name: I18nEntrySchema.nullish(),\n required: z.boolean().nullish(),\n display: z\n .object({\n hide: FilterSchema.nullish(),\n show: FilterSchema.nullish(),\n })\n .nullish(),\n ai: z\n .object({\n llm_description: I18nEntrySchema.nullish(),\n })\n .nullish(),\n ui: PropertyUICommonPropsSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyBaseSchema>, PropertyBase<string>> = true\n}\n\nexport const PropertyStringSchema = PropertyBaseSchema.extend({\n type: z.literal(\"string\"),\n constant: z.string().nullish(),\n default: z.string().nullish(),\n enum: z.array(z.string()).nullish(),\n max_length: z.number().nullish(),\n min_length: z.number().nullish(),\n ui: PropertyUIStringSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyStringSchema>, PropertyString<string>> = true\n}\n\nexport const PropertyNumberSchema = PropertyBaseSchema.extend({\n type: z.union([z.literal(\"number\"), z.literal(\"integer\")]),\n constant: z.number().nullish(),\n default: z.number().nullish(),\n enum: z.array(z.number()).nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n ui: PropertyUINumberSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyNumberSchema>, PropertyNumber<string>> = true\n}\n\nexport const PropertyBooleanSchema = PropertyBaseSchema.extend({\n type: z.literal(\"boolean\"),\n constant: z.boolean().nullish(),\n default: z.boolean().nullish(),\n enum: z.array(z.boolean()).nullish(),\n ui: PropertyUIBooleanSchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyBooleanSchema>, PropertyBoolean<string>> = true\n}\n\nconst checkDuplicateNames = {\n checkFn: (properties: { name: string }[]) => {\n const names = new Set<string>()\n for (const prop of properties) {\n if (names.has(prop.name)) return false\n names.add(prop.name)\n }\n return true\n },\n customError: {\n error: \"duplicate property names are not allowed\",\n } as const,\n}\n\n// use type assertion and lazy to avoid circular reference error\nconst ArrayPropertiesSchema: z.ZodType<PropertyObject[\"properties\"]> = z.lazy(() =>\n z.array(PropertySchema).refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError),\n)\n\nconst additionalPropertiesSchema: z.ZodType<Property | PropertyDiscriminatedUnion<string>> = z.lazy(\n () => PropertySchema,\n)\n\nexport const PropertyObjectSchema = PropertyBaseSchema.extend({\n type: z.literal(\"object\"),\n properties: ArrayPropertiesSchema,\n additional_properties: additionalPropertiesSchema.nullish(),\n constant: z.record(z.string(), JsonValueSchema).nullish(),\n default: z.record(z.string(), JsonValueSchema).nullish(),\n enum: z.array(z.record(z.string(), JsonValueSchema)).nullish(),\n ui: PropertyUIObjectSchema.nullish(),\n}).refine(\n (v) => {\n if (v.constant) return v.properties.length === 0\n return true\n },\n {\n error: \"properties must be empty when constant is defined\",\n abort: true,\n },\n)\n{\n type PropertyObjectInferred = z.infer<typeof PropertyObjectSchema>\n const _: IsEqual<PropertyObjectInferred, PropertyObject> = true\n}\n\nexport const PropertyDiscriminatedUnionSchema = z\n .object({\n type: z.literal(\"discriminated_union\"),\n get any_of() {\n return z\n .array(PropertyObjectSchema)\n .refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError)\n .min(2, \"anyOf must have at least two items\")\n },\n discriminator: z.string().min(1, \"discriminator cannot be empty\"),\n discriminator_ui: PropertyUIDiscriminatorUISchema.nullish(),\n })\n .refine(\n (v) => {\n const { any_of, discriminator } = v\n return any_of.every((i) => {\n const discriminatorProperty = i.properties?.find((p) => p.name === discriminator)\n if (!discriminatorProperty) return false\n if (!(\"constant\" in discriminatorProperty)) return false\n if (\n typeof discriminatorProperty.constant !== \"string\" &&\n typeof discriminatorProperty.constant !== \"number\" &&\n typeof discriminatorProperty.constant !== \"boolean\"\n ) {\n return false\n }\n return true\n })\n },\n {\n error:\n \"Each item in anyOf must contain the discriminator field with constant string/number/boolean value\",\n abort: true,\n },\n )\n .refine(\n (v) => {\n const { any_of } = v\n const allDiscriminatorProperty = compact(\n any_of.map((i) => {\n const discriminatorProperty = i.properties?.find((p) => p.name === v.discriminator)\n if (!discriminatorProperty) return null\n if (!(\"constant\" in discriminatorProperty)) return null\n return discriminatorProperty.constant\n }),\n )\n const uniqueValues = new Set(allDiscriminatorProperty)\n return uniqueValues.size === allDiscriminatorProperty.length\n },\n {\n error: \"Discriminator values must be unique across all anyOf items\",\n },\n )\n{\n const _: IsEqual<\n z.infer<typeof PropertyDiscriminatedUnionSchema>,\n PropertyDiscriminatedUnion\n > = true\n}\n\nexport const PropertyArraySchema = PropertyBaseSchema.extend({\n type: z.literal(\"array\"),\n constant: z.array(JsonValueSchema).nullish(),\n default: z.array(JsonValueSchema).nullish(),\n enum: z.array(z.array(JsonValueSchema)).nullish(),\n get items() {\n return z.union([PropertySchema, PropertyDiscriminatedUnionSchema])\n },\n max_items: z.number().nullish(),\n min_items: z.number().nullish(),\n ui: PropertyUIArraySchema.nullish(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyArraySchema>, PropertyArray> = true\n}\n\nexport const PropertyCredentialIdSchema = PropertyBaseSchema.extend({\n type: z.literal(\"credential_id\"),\n credential_name: z.string().min(1, \"credential_name cannot be empty\"),\n ui: PropertyUICredentialIdSchema.nullish(),\n constant: z.null().optional(),\n default: z.null().optional(),\n enum: z.null().optional(),\n})\n\n{\n const _: IsEqual<z.infer<typeof PropertyCredentialIdSchema>, PropertyCredentialId<string>> = true\n}\nexport const PropertyEncryptedStringSchema = PropertyBaseSchema.extend({\n type: z.literal(\"encrypted_string\"),\n ui: PropertyUIEncryptedStringSchema.nullish(),\n constant: z.null().optional(),\n default: z.null().optional(),\n enum: z.null().optional(),\n})\n{\n const _: IsEqual<z.infer<typeof PropertyEncryptedStringSchema>, PropertyEncryptedString> = true\n}\n\nconst PropertyScalarSchema = z.union([\n PropertyStringSchema,\n PropertyBooleanSchema,\n PropertyNumberSchema,\n PropertyEncryptedStringSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertyScalarSchema>, PropertyScalar<string>> = true\n}\n\nexport const PropertiesScalarSchema = z.lazy(() =>\n z\n .array(PropertyScalarSchema)\n .refine(checkDuplicateNames.checkFn, checkDuplicateNames.customError),\n)\n\nconst PropertySchema = z.union([\n ...PropertyScalarSchema.options,\n PropertyCredentialIdSchema,\n PropertyArraySchema,\n PropertyObjectSchema,\n])\n{\n const _: IsEqual<z.infer<typeof PropertySchema>, Property> = true\n}\n\nexport const PropertiesSchema = ArrayPropertiesSchema\n","import type { IsEqual } from \"type-fest\"\nimport { z } from \"zod\"\nimport type {\n BaseDefinition,\n CredentialDefinition,\n ModelDefinition,\n PluginDefinition,\n ToolDefinition,\n} from \"../types\"\nimport { JsonValueSchema } from \"../utils/custom-json-value\"\nimport { I18nEntrySchema } from \"./common\"\nimport { PropertiesScalarSchema, PropertiesSchema } from \"./property\"\n\n/**\n * Base Definition Schema\n *\n * This is the base class for all function definition schemas, defining common properties and not used independently\n */\nexport const BaseDefinitionSchema = z.object({\n // 1. Can only contain English letters (case insensitive), numbers, _ and -\n // 2. Must start with an English letter and cannot end with _ or -\n // 3. _ and - cannot appear consecutively more than once\n // 4. Minimum length 4, maximum length 64\n name: z.string().regex(/^[a-zA-Z](?:(?![_-]{2,})[a-zA-Z0-9_-]){3,63}[a-zA-Z0-9]$/, {\n error:\n \"Invalid name, should match the following rules: 1. only English letters, numbers, _ and - 2. start with English letter, end with English letter or number 3. _ and - cannot appear consecutively more than twice 4. minimum length 4, maximum length 64\",\n }),\n display_name: I18nEntrySchema,\n description: I18nEntrySchema,\n icon: z.string(),\n})\n{\n const _: IsEqual<z.infer<typeof BaseDefinitionSchema>, BaseDefinition> = true\n}\n\nexport const PluginDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n author: z.string().nullish(),\n email: z.email().nullish(),\n repo: z.httpUrl().nullish(),\n version: z.string().nullish(),\n locales: z.array(z.string()),\n lang: z.enum([\"elixir\", \"typescript\"]),\n})\n{\n const _: IsEqual<\n z.infer<typeof PluginDefinitionSchema>,\n Omit<PluginDefinition<string[], unknown>, \"transporterOptions\"> // not necessary to verify transpoterOptions\n > = true\n}\n\nexport const CredentialDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n authenticate: z\n .function({\n input: z.tuple([\n z.object({\n args: z.object({\n credential: z.record(z.string(), z.string().nullish()),\n extra: z.looseObject({\n model: z.string().optional(),\n }),\n }),\n }),\n ]),\n output: z.promise(\n z.looseObject({\n adapter: z.enum([\"anthropic\", \"openai\", \"google\", \"deepseek\"]),\n api_key: z.string(),\n endpoint: z.httpUrl().optional(),\n model: z.string().optional(),\n headers: z.record(z.string(), z.string()).optional(),\n }),\n ),\n })\n .optional(),\n parameters: PropertiesScalarSchema,\n})\n{\n const _: IsEqual<z.infer<typeof CredentialDefinitionSchema>, CredentialDefinition> = true\n}\n\nexport const DataSourceDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n parameters: PropertiesScalarSchema,\n})\n\nexport type DataSourceDefinition = z.infer<typeof DataSourceDefinitionSchema>\n\nexport const ModelDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n name: z.string().regex(/^[a-zA-Z](?:(?![_.-]{2,})[a-zA-Z0-9._/-])*[a-zA-Z0-9]$/, {\n error:\n \"Invalid model name, should match the following rules: 1. only English letters, numbers, _, - and . 2. start with English letter, end with English letter or number 3. _, - and . cannot appear consecutively more than twice 4. allow '/' in the middle\",\n }),\n model_type: z.literal(\"llm\"),\n default_endpoint: z.httpUrl().nullish(),\n input_modalities: z.array(z.enum([\"file\", \"image\", \"text\"])),\n output_modalities: z.array(z.enum([\"text\"])),\n pricing: z\n .object({\n currency: z.string().nullish(),\n input: z.number().nullish(),\n input_cache_read: z.number().nullish(),\n input_cache_write: z.number().nullish(),\n output: z.number().nullish(),\n request: z.number().nullish(),\n })\n .nullish(),\n override_parameters: z\n .object({\n temperature: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n })\n .nullish(),\n frequency_penalty: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n minimum: z.number().nullish(),\n })\n .nullish(),\n max_tokens: z\n .object({\n default: z.number().nullish(),\n maximum: z.number().nullish(),\n })\n .nullish(),\n verbosity: z\n .object({\n default: z.enum([\"low\", \"medium\", \"high\"]).nullish(),\n })\n .nullish(),\n })\n .nullish(),\n unsupported_parameters: z.array(\n z.enum([\n \"endpoint\",\n \"temperature\",\n // \"top_p\",\n // \"top_k\",\n \"frequency_penalty\",\n // \"presence_penalty\",\n // \"repetition_penalty\",\n // \"min_p\",\n // \"top_a\",\n \"seed\",\n \"max_tokens\",\n // \"logit_bias\",\n // \"logprobs\",\n // \"top_logprobs\",\n // \"response_format\",\n // \"json_response\",\n \"json_schema\",\n \"stream\",\n \"stream_options\",\n \"structured_outputs\",\n // \"stop\",\n // \"tools\",\n // \"tool_choice\",\n \"parallel_tool_calls\",\n \"verbosity\",\n ]),\n ),\n})\n{\n const _: IsEqual<z.infer<typeof ModelDefinitionSchema>, ModelDefinition> = true\n}\n\nexport const ToolDefinitionSchema = z.object({\n ...BaseDefinitionSchema.shape,\n invoke: z.function({\n input: z.tuple([\n z.object({\n args: z.object({\n parameters: z.record(z.string(), z.any()),\n credentials: z.record(z.string(), z.any()).optional(),\n }),\n }),\n ]),\n output: z.promise(JsonValueSchema),\n }),\n parameters: PropertiesSchema,\n})\n{\n const _: IsEqual<z.infer<typeof ToolDefinitionSchema>, ToolDefinition> = true\n}\n"],"mappings":"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"}
package/dist/types.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { A as PropertyUIEmojiPickerProps, B as PropertyUIRadioGroupProps, C as PropertyUIBoolean, D as PropertyUIComponentType, E as PropertyUICommonProps, F as PropertyUIMisc, G as JsonValue, H as PropertyUISingleSelectProps, I as PropertyUINumber, K as JsonValueSchema, L as PropertyUIObject, M as PropertyUIEncryptedString, N as PropertyUIInputProps, O as PropertyUIContainer, P as PropertyUIKeyValueEditorProps, R as PropertyUIOption, S as PropertyUIArraySectionProps, T as PropertyUIColorPickerProps, U as PropertyUIString, V as PropertyUISectionProps, W as PropertyUISwitchProps, _ as PropertyNumber, a as ModelDefinition, b as PropertyString, c as DisplayCondition, d as PropertyArray, f as PropertyBase, g as PropertyEncryptedString, h as PropertyDiscriminatedUnion, i as Feature, j as PropertyUIEncryptedInputProps, k as PropertyUICredentialId, l as FilterOperators, m as PropertyCredentialId, n as CredentialDefinition, o as PluginDefinition, p as PropertyBoolean, q as I18nText, r as DataSourceDefinition, s as ToolDefinition, t as BaseDefinition, u as Property, v as PropertyObject, w as PropertyUICollapsiblePanelProps, x as PropertyUIArray, y as PropertyScalar, z as PropertyUIProps } from "./definition-DTX6vvxh.mjs";
1
+ import { A as PropertyUIEmojiPickerProps, B as PropertyUIRadioGroupProps, C as PropertyUIBoolean, D as PropertyUIComponentType, E as PropertyUICommonProps, F as PropertyUIMisc, G as JsonValue, H as PropertyUISingleSelectProps, I as PropertyUINumber, K as JsonValueSchema, L as PropertyUIObject, M as PropertyUIEncryptedString, N as PropertyUIInputProps, O as PropertyUIContainer, P as PropertyUIKeyValueEditorProps, R as PropertyUIOption, S as PropertyUIArraySectionProps, T as PropertyUIColorPickerProps, U as PropertyUIString, V as PropertyUISectionProps, W as PropertyUISwitchProps, _ as PropertyNumber, a as ModelDefinition, b as PropertyString, c as DisplayCondition, d as PropertyArray, f as PropertyBase, g as PropertyEncryptedString, h as PropertyDiscriminatedUnion, i as Feature, j as PropertyUIEncryptedInputProps, k as PropertyUICredentialId, l as FilterOperators, m as PropertyCredentialId, n as CredentialDefinition, o as PluginDefinition, p as PropertyBoolean, q as I18nText, r as DataSourceDefinition, s as ToolDefinition, t as BaseDefinition, u as Property, v as PropertyObject, w as PropertyUICollapsiblePanelProps, x as PropertyUIArray, y as PropertyScalar, z as PropertyUIProps } from "./definition-DNDIAj3p.mjs";
2
2
  export { BaseDefinition, CredentialDefinition, DataSourceDefinition, DisplayCondition, Feature, FilterOperators, I18nText, JsonValue, JsonValueSchema, ModelDefinition, PluginDefinition, Property, PropertyArray, PropertyBase, PropertyBoolean, PropertyCredentialId, PropertyDiscriminatedUnion, PropertyEncryptedString, PropertyNumber, PropertyObject, PropertyScalar, PropertyString, PropertyUIArray, PropertyUIArraySectionProps, PropertyUIBoolean, PropertyUICollapsiblePanelProps, PropertyUIColorPickerProps, PropertyUICommonProps, PropertyUIComponentType, PropertyUIContainer, PropertyUICredentialId, PropertyUIEmojiPickerProps, PropertyUIEncryptedInputProps, PropertyUIEncryptedString, PropertyUIInputProps, PropertyUIKeyValueEditorProps, PropertyUIMisc, PropertyUINumber, PropertyUIObject, PropertyUIOption, PropertyUIProps, PropertyUIRadioGroupProps, PropertyUISectionProps, PropertyUISingleSelectProps, PropertyUIString, PropertyUISwitchProps, ToolDefinition };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@choiceopen/atomemo-plugin-schema",
3
- "version": "0.2.11",
3
+ "version": "0.2.13",
4
4
  "description": "Schema for developing Choiceform atomemo plugins",
5
5
  "homepage": "https://github.com/choice-open/atomemo-plugin-schema#readme",
6
6
  "bugs": {