pupt-lib 1.2.4 → 1.2.6

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.
@@ -55,6 +55,7 @@ export declare class AskConfirm extends Component<ConfirmProps, boolean> {
55
55
  } & {
56
56
  default: z.ZodOptional<z.ZodBoolean>;
57
57
  }, z.ZodTypeAny, "passthrough">>;
58
+ static implicitDefault: boolean;
58
59
  resolve(props: ConfirmProps, context: RenderContext): boolean;
59
60
  render(props: ConfirmProps, resolvedValue: boolean | undefined, context: RenderContext): PuptNode;
60
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Confirm.d.ts","sourceRoot":"","sources":["../../../src/components/ask/Confirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAoB,MAAM,aAAa,CAAC;AAG7E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;gCAEb,CAAC;AAEjB,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGtF,qBAAa,UAAW,SAAQ,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAC9D,MAAM,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;qCAAoB;IAEjC,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;IAW7D,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,GAAG,SAAS,EAAE,OAAO,EAAE,aAAa,GAAG,QAAQ;CA8BlG"}
1
+ {"version":3,"file":"Confirm.d.ts","sourceRoot":"","sources":["../../../src/components/ask/Confirm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAoB,MAAM,aAAa,CAAC;AAG7E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;gCAEb,CAAC;AAEjB,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGtF,qBAAa,UAAW,SAAQ,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAC9D,MAAM,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;qCAAoB;IACjC,MAAM,CAAC,eAAe,UAAS;IAE/B,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;IAW7D,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,GAAG,SAAS,EAAE,OAAO,EAAE,aAAa,GAAG,QAAQ;CA8BlG"}
@@ -38,7 +38,7 @@ export declare const askRatingSchema: z.ZodObject<{
38
38
  export type RatingProps = z.infer<typeof askRatingSchema> & {
39
39
  children?: PuptNode;
40
40
  };
41
- export declare class AskRating extends Component<RatingProps, number | undefined> {
41
+ export declare class AskRating extends Component<RatingProps, number> {
42
42
  static schema: z.ZodObject<{
43
43
  name: z.ZodString;
44
44
  label: z.ZodString;
@@ -73,7 +73,7 @@ export declare class AskRating extends Component<RatingProps, number | undefined
73
73
  max: z.ZodOptional<z.ZodNumber>;
74
74
  labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
75
75
  }, z.ZodTypeAny, "passthrough">>;
76
- resolve(props: RatingProps, context: RenderContext): number | undefined;
77
- render(props: RatingProps, resolvedValue: number | undefined, context: RenderContext): PuptNode;
76
+ resolve(props: RatingProps, context: RenderContext): number;
77
+ render(props: RatingProps, resolvedValue: number, context: RenderContext): PuptNode;
78
78
  }
79
79
  //# sourceMappingURL=Rating.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rating.d.ts","sourceRoot":"","sources":["../../../src/components/ask/Rating.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAe,aAAa,EAAoB,MAAM,aAAa,CAAC;AAK1F,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAKZ,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGpF,qBAAa,SAAU,SAAQ,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IACvE,MAAM,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAAmB;IAEhC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS;IAevE,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,aAAa,GAAG,QAAQ;CAoDhG"}
1
+ {"version":3,"file":"Rating.d.ts","sourceRoot":"","sources":["../../../src/components/ask/Rating.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAe,aAAa,EAAoB,MAAM,aAAa,CAAC;AAK1F,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAKZ,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGpF,qBAAa,SAAU,SAAQ,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC3D,MAAM,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAAmB;IAEhC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM;IAe3D,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,QAAQ;CAoDpF"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  export declare const VERSION = "0.0.0-development";
2
2
  export { TYPE, PROPS, CHILDREN, DEFERRED_REF } from './types/symbols';
3
3
  export { isPuptElement, isDeferredRef } from './types/element';
4
- export type { PuptNode, PuptElement, ComponentType, DeferredRef, LlmConfig, OutputConfig, CodeConfig, UserConfig, RuntimeConfig, EnvironmentContext, RenderContext, RenderOptions, RenderResult, RenderSuccess, RenderFailure, RenderError, RenderMetadata, PostExecutionAction, InputRequirement, ValidationResult, ValidationError, ValidationWarning, CollectedInputs, ComponentProps, PromptProps, StructuralProps, CommonProps, SearchablePrompt, SearchOptions, SearchResult, SearchResultMatch, SearchEngineConfig, PuptConfig, PuptLibrary, DiscoveredPrompt, LibraryLoadResult, PuptInitConfig, } from './types';
5
- export { DEFAULT_ENVIRONMENT, createEnvironment, createRuntimeConfig, ensureRuntimeCacheReady, } from './types';
4
+ export type { PuptNode, PuptElement, ComponentType, DeferredRef, LlmConfig, LlmProvider, OutputConfig, CodeConfig, UserConfig, RuntimeConfig, EnvironmentContext, RenderContext, RenderOptions, RenderResult, RenderSuccess, RenderFailure, RenderError, RenderMetadata, PostExecutionAction, InputRequirement, ValidationResult, ValidationError, ValidationWarning, CollectedInputs, ComponentProps, PromptProps, StructuralProps, CommonProps, SearchablePrompt, SearchOptions, SearchResult, SearchResultMatch, SearchEngineConfig, PuptConfig, PuptLibrary, DiscoveredPrompt, LibraryLoadResult, PuptInitConfig, } from './types';
5
+ export { LLM_PROVIDERS, inferProviderFromModel, DEFAULT_ENVIRONMENT, createEnvironment, createRuntimeConfig, ensureRuntimeCacheReady, } from './types';
6
6
  export { Component, isComponentClass, COMPONENT_MARKER } from './component';
7
7
  export { render } from './render';
8
8
  export { createInputIterator } from './services/input-iterator';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,sBAAsB,CAAC;AAG3C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG/D,YAAY,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,EACX,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG5E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACjH,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/F,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,YAAY,EAAE,2BAA2B,EAAE,MAAM,OAAO,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACzF,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,sBAAsB,CAAC;AAG3C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG/D,YAAY,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,EACX,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG5E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACjH,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/F,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,YAAY,EAAE,2BAA2B,EAAE,MAAM,OAAO,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACzF,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC"}
package/dist/index.js CHANGED
@@ -3684,11 +3684,42 @@ async function ensureRuntimeCacheReady() {
3684
3684
  if (!isBrowser$2) {
3685
3685
  nodeRuntimeCachePromise = initNodeRuntimeCache();
3686
3686
  }
3687
+ const LLM_PROVIDERS = [
3688
+ "anthropic",
3689
+ "openai",
3690
+ "google",
3691
+ "meta",
3692
+ "mistral",
3693
+ "deepseek",
3694
+ "xai",
3695
+ "cohere",
3696
+ "unspecified"
3697
+ ];
3698
+ function inferProviderFromModel(model) {
3699
+ const m = model.toLowerCase();
3700
+ if (m.startsWith("claude") || m === "opus" || m === "sonnet" || m === "haiku") return "anthropic";
3701
+ if (m.startsWith("gpt-") || m.startsWith("chatgpt-") || /^o[134]([-_]|$)/.test(m)) return "openai";
3702
+ if (m.startsWith("gemini")) return "google";
3703
+ if (m.startsWith("llama")) return "meta";
3704
+ if (m.startsWith("mistral") || m.startsWith("mixtral") || m.startsWith("codestral") || m.startsWith("pixtral")) return "mistral";
3705
+ if (m.startsWith("deepseek")) return "deepseek";
3706
+ if (m.startsWith("grok")) return "xai";
3707
+ if (m.startsWith("command")) return "cohere";
3708
+ return null;
3709
+ }
3687
3710
  const llmConfigSchema = objectType({
3688
3711
  model: stringType().default("unspecified"),
3689
- provider: stringType().default("unspecified"),
3712
+ provider: enumType(LLM_PROVIDERS).default("unspecified"),
3690
3713
  maxTokens: numberType().positive().optional(),
3691
3714
  temperature: numberType().min(0).max(2).optional()
3715
+ }).transform((data) => {
3716
+ if (data.provider === "unspecified" && data.model !== "unspecified") {
3717
+ const inferred = inferProviderFromModel(data.model);
3718
+ if (inferred) {
3719
+ return { ...data, provider: inferred };
3720
+ }
3721
+ }
3722
+ return data;
3692
3723
  });
3693
3724
  const outputConfigSchema = objectType({
3694
3725
  format: enumType(["xml", "markdown", "json", "text", "unspecified"]).default("unspecified"),
@@ -3924,6 +3955,7 @@ async function render(element, options = {}) {
3924
3955
  resolvedValues: /* @__PURE__ */ new Map(),
3925
3956
  pendingResolutions: /* @__PURE__ */ new Map()
3926
3957
  };
3958
+ seedAskDefaults(element, context);
3927
3959
  const text = await renderNode(element, state);
3928
3960
  const trimmedText = trim ? text.trim() : text;
3929
3961
  if (errors.length > 0) {
@@ -4082,6 +4114,33 @@ async function renderElement(element, state) {
4082
4114
  }
4083
4115
  return "";
4084
4116
  }
4117
+ function seedAskDefaults(node, context) {
4118
+ if (!node || typeof node !== "object") return;
4119
+ if (Array.isArray(node)) {
4120
+ for (const child of node) {
4121
+ seedAskDefaults(child, context);
4122
+ }
4123
+ return;
4124
+ }
4125
+ if (!isPuptElement(node)) return;
4126
+ const element = node;
4127
+ const type = element[TYPE];
4128
+ const props = element[PROPS];
4129
+ const children = element[CHILDREN];
4130
+ if (typeof props.name === "string" && typeof props.label === "string" && !context.inputs.has(props.name)) {
4131
+ if (props.default !== void 0) {
4132
+ context.inputs.set(props.name, props.default);
4133
+ } else if (isComponentClass(type) && "implicitDefault" in type) {
4134
+ context.inputs.set(
4135
+ props.name,
4136
+ type.implicitDefault
4137
+ );
4138
+ }
4139
+ }
4140
+ for (const child of children) {
4141
+ seedAskDefaults(child, context);
4142
+ }
4143
+ }
4085
4144
  function detectEnvironment() {
4086
4145
  var _a2;
4087
4146
  if (typeof process !== "undefined" && ((_a2 = process.versions) == null ? void 0 : _a2.node)) {
@@ -43320,6 +43379,7 @@ class AskConfirm extends Component {
43320
43379
  }
43321
43380
  }
43322
43381
  __publicField(AskConfirm, "schema", askConfirmSchema);
43382
+ __publicField(AskConfirm, "implicitDefault", false);
43323
43383
  const askEditorSchema = askBaseSchema.extend({
43324
43384
  default: stringType().optional(),
43325
43385
  language: stringType().optional()
@@ -43739,7 +43799,7 @@ class AskRating extends Component {
43739
43799
  if (defaultValue !== void 0) {
43740
43800
  return defaultValue;
43741
43801
  }
43742
- return void 0;
43802
+ return 0;
43743
43803
  }
43744
43804
  render(props, resolvedValue, context) {
43745
43805
  const {
@@ -43772,7 +43832,7 @@ class AskRating extends Component {
43772
43832
  return "";
43773
43833
  }
43774
43834
  const actualValue = resolvedValue ?? this.resolve(props, context);
43775
- if (actualValue === void 0) {
43835
+ if (actualValue === 0 && defaultValue === void 0) {
43776
43836
  return `{${name}}`;
43777
43837
  }
43778
43838
  const labelText = allLabels[actualValue];
@@ -46571,6 +46631,7 @@ export {
46571
46631
  Hostname,
46572
46632
  If,
46573
46633
  Json,
46634
+ LLM_PROVIDERS,
46574
46635
  ModuleLoader,
46575
46636
  OpenUrl,
46576
46637
  PROPS,
@@ -46608,6 +46669,7 @@ export {
46608
46669
  generateImportMapScript,
46609
46670
  generatePuptLibImportMap,
46610
46671
  generatePuptLibImportMapScript,
46672
+ inferProviderFromModel,
46611
46673
  isComponentClass,
46612
46674
  isDeferredRef,
46613
46675
  isPromptFile,
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,aAAa,EAAmD,MAAM,SAAS,CAAC;AAuInI;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,MAAM,CAC1B,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAwCvB"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,aAAa,EAAmD,MAAM,SAAS,CAAC;AAuInI;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,MAAM,CAC1B,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA6CvB"}
@@ -9,21 +9,46 @@ import { PostExecutionAction, RenderError } from './render';
9
9
  */
10
10
  export declare function ensureRuntimeCacheReady(): Promise<void>;
11
11
  /**
12
- * Schema for LLM configuration
12
+ * Known LLM providers (model creators, not hosting platforms).
13
+ * Hosting platforms like AWS Bedrock and Azure are not included here
14
+ * because the provider represents who created the model, which determines
15
+ * the prompt optimization strategy.
13
16
  */
14
- export declare const llmConfigSchema: z.ZodObject<{
17
+ export declare const LLM_PROVIDERS: readonly ["anthropic", "openai", "google", "meta", "mistral", "deepseek", "xai", "cohere", "unspecified"];
18
+ export type LlmProvider = typeof LLM_PROVIDERS[number];
19
+ /**
20
+ * Infer the LLM provider from a model name/ID.
21
+ * Returns the provider if the model matches a known pattern, or null if unknown.
22
+ */
23
+ export declare function inferProviderFromModel(model: string): LlmProvider | null;
24
+ /**
25
+ * Schema for LLM configuration.
26
+ * When a model is specified but provider is not, the provider is automatically
27
+ * inferred from the model name.
28
+ */
29
+ export declare const llmConfigSchema: z.ZodEffects<z.ZodObject<{
15
30
  model: z.ZodDefault<z.ZodString>;
16
- provider: z.ZodDefault<z.ZodString>;
31
+ provider: z.ZodDefault<z.ZodEnum<["anthropic", "openai", "google", "meta", "mistral", "deepseek", "xai", "cohere", "unspecified"]>>;
17
32
  maxTokens: z.ZodOptional<z.ZodNumber>;
18
33
  temperature: z.ZodOptional<z.ZodNumber>;
19
34
  }, "strip", z.ZodTypeAny, {
20
35
  model: string;
21
- provider: string;
36
+ provider: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere";
37
+ maxTokens?: number | undefined;
38
+ temperature?: number | undefined;
39
+ }, {
40
+ model?: string | undefined;
41
+ provider?: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere" | undefined;
42
+ maxTokens?: number | undefined;
43
+ temperature?: number | undefined;
44
+ }>, {
45
+ model: string;
46
+ provider: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere";
22
47
  maxTokens?: number | undefined;
23
48
  temperature?: number | undefined;
24
49
  }, {
25
50
  model?: string | undefined;
26
- provider?: string | undefined;
51
+ provider?: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere" | undefined;
27
52
  maxTokens?: number | undefined;
28
53
  temperature?: number | undefined;
29
54
  }>;
@@ -107,19 +132,29 @@ export declare const runtimeConfigSchema: z.ZodObject<{
107
132
  * Schema for the full environment context
108
133
  */
109
134
  export declare const environmentContextSchema: z.ZodObject<{
110
- llm: z.ZodDefault<z.ZodObject<{
135
+ llm: z.ZodDefault<z.ZodEffects<z.ZodObject<{
111
136
  model: z.ZodDefault<z.ZodString>;
112
- provider: z.ZodDefault<z.ZodString>;
137
+ provider: z.ZodDefault<z.ZodEnum<["anthropic", "openai", "google", "meta", "mistral", "deepseek", "xai", "cohere", "unspecified"]>>;
113
138
  maxTokens: z.ZodOptional<z.ZodNumber>;
114
139
  temperature: z.ZodOptional<z.ZodNumber>;
115
140
  }, "strip", z.ZodTypeAny, {
116
141
  model: string;
117
- provider: string;
142
+ provider: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere";
143
+ maxTokens?: number | undefined;
144
+ temperature?: number | undefined;
145
+ }, {
146
+ model?: string | undefined;
147
+ provider?: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere" | undefined;
148
+ maxTokens?: number | undefined;
149
+ temperature?: number | undefined;
150
+ }>, {
151
+ model: string;
152
+ provider: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere";
118
153
  maxTokens?: number | undefined;
119
154
  temperature?: number | undefined;
120
155
  }, {
121
156
  model?: string | undefined;
122
- provider?: string | undefined;
157
+ provider?: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere" | undefined;
123
158
  maxTokens?: number | undefined;
124
159
  temperature?: number | undefined;
125
160
  }>>;
@@ -194,7 +229,7 @@ export declare const environmentContextSchema: z.ZodObject<{
194
229
  };
195
230
  llm: {
196
231
  model: string;
197
- provider: string;
232
+ provider: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere";
198
233
  maxTokens?: number | undefined;
199
234
  temperature?: number | undefined;
200
235
  };
@@ -227,7 +262,7 @@ export declare const environmentContextSchema: z.ZodObject<{
227
262
  } | undefined;
228
263
  llm?: {
229
264
  model?: string | undefined;
230
- provider?: string | undefined;
265
+ provider?: "unspecified" | "anthropic" | "openai" | "google" | "meta" | "mistral" | "deepseek" | "xai" | "cohere" | undefined;
231
266
  maxTokens?: number | undefined;
232
267
  temperature?: number | undefined;
233
268
  } | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAkEjE;;;;;;GAMG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ7D;AAYD;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAK1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAI7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;EAE3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAWhB,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnC,CAAC;AAMH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,GAAG,EAAE,kBAAkB,CAAC;IACxB,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,kBAMjC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,kBAAkB,CASpB;AAgDD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CAqCnD"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAkEjE;;;;;;GAMG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ7D;AAYD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,2GAUhB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAEvD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CA4BxE;AAMD;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;EAa1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAI7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;EAE3B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAWhB,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnC,CAAC;AAMH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,GAAG,EAAE,kBAAkB,CAAC;IACxB,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,kBAMjC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,kBAAkB,CASpB;AAgDD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CAqCnD"}
@@ -1,8 +1,8 @@
1
1
  export { TYPE, PROPS, CHILDREN, DEFERRED_REF } from './symbols';
2
2
  export type { PuptNode, PuptElement, ComponentType, DeferredRef, } from './element';
3
3
  export { isPuptElement, isDeferredRef } from './element';
4
- export type { LlmConfig, OutputConfig, CodeConfig, UserConfig, RuntimeConfig, EnvironmentContext, RenderContext, } from './context';
5
- export { DEFAULT_ENVIRONMENT, createEnvironment, createRuntimeConfig, ensureRuntimeCacheReady, llmConfigSchema, outputConfigSchema, codeConfigSchema, userConfigSchema, runtimeConfigSchema, environmentContextSchema, } from './context';
4
+ export type { LlmConfig, LlmProvider, OutputConfig, CodeConfig, UserConfig, RuntimeConfig, EnvironmentContext, RenderContext, } from './context';
5
+ export { LLM_PROVIDERS, inferProviderFromModel, DEFAULT_ENVIRONMENT, createEnvironment, createRuntimeConfig, ensureRuntimeCacheReady, llmConfigSchema, outputConfigSchema, codeConfigSchema, userConfigSchema, runtimeConfigSchema, environmentContextSchema, } from './context';
6
6
  export type { RenderOptions, RenderResult, RenderSuccess, RenderFailure, RenderError, RenderMetadata, PostExecutionAction, ReviewFileAction, OpenUrlAction, RunCommandAction, } from './render';
7
7
  export type { InputRequirement, ValidationResult, ValidationError, ValidationWarning, CollectedInputs, } from './input';
8
8
  export type { ComponentProps, PromptProps, StructuralProps, CommonProps, } from './component';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGhE,YAAY,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAGzD,YAAY,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EAEvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,GAChB,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGhE,YAAY,EACV,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAGzD,YAAY,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EAEvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,WAAW,CAAC;AAGnB,YAAY,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,GAChB,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,UAAU,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pupt-lib",
3
- "version": "1.2.4",
3
+ "version": "1.2.6",
4
4
  "description": "TypeScript library for creating AI prompts using JSX syntax",
5
5
  "license": "MIT",
6
6
  "author": "",