@deepagents/context 0.28.0 → 0.29.0

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.
package/dist/browser.js CHANGED
@@ -901,6 +901,27 @@ async function estimate(modelId, renderer, ...fragments) {
901
901
 
902
902
  // packages/context/src/lib/fragments/message/user.ts
903
903
  import { generateId as generateId2, isTextUIPart } from "ai";
904
+ function everyNTurns(n) {
905
+ return (turn) => turn % n === 0;
906
+ }
907
+ function once() {
908
+ return (turn) => turn === 1;
909
+ }
910
+ function firstN(n) {
911
+ return (turn) => turn <= n;
912
+ }
913
+ function afterTurn(n) {
914
+ return (turn) => turn > n;
915
+ }
916
+ function and(...predicates) {
917
+ return (turn) => predicates.every((p) => p(turn));
918
+ }
919
+ function or(...predicates) {
920
+ return (turn) => predicates.some((p) => p(turn));
921
+ }
922
+ function not(predicate) {
923
+ return (turn) => !predicate(turn);
924
+ }
904
925
  var SYSTEM_REMINDER_OPEN_TAG = "<system-reminder>";
905
926
  var SYSTEM_REMINDER_CLOSE_TAG = "</system-reminder>";
906
927
  function getReminderRanges(metadata) {
@@ -1036,15 +1057,9 @@ function applyPartReminder(message2, value) {
1036
1057
  };
1037
1058
  }
1038
1059
  function hasSchedule(reminder2) {
1039
- return reminder2.everyNTurns !== void 0 || reminder2.once !== void 0 || reminder2.firstN !== void 0 || reminder2.afterTurn !== void 0 || reminder2.when !== void 0;
1060
+ return reminder2.when !== void 0;
1040
1061
  }
1041
1062
  function shouldIncludeReminder(reminder2, turn) {
1042
- if (reminder2.once && turn !== 1) return false;
1043
- if (reminder2.firstN !== void 0 && turn > reminder2.firstN) return false;
1044
- if (reminder2.afterTurn !== void 0 && turn <= reminder2.afterTurn)
1045
- return false;
1046
- if (reminder2.everyNTurns !== void 0 && turn % reminder2.everyNTurns !== 0)
1047
- return false;
1048
1063
  if (reminder2.when && !reminder2.when(turn)) return false;
1049
1064
  return true;
1050
1065
  }
@@ -1055,12 +1070,6 @@ function reminder(text, options) {
1055
1070
  return {
1056
1071
  text,
1057
1072
  asPart: options?.asPart ?? false,
1058
- ...options?.everyNTurns !== void 0 && {
1059
- everyNTurns: options.everyNTurns
1060
- },
1061
- ...options?.once !== void 0 && { once: options.once },
1062
- ...options?.firstN !== void 0 && { firstN: options.firstN },
1063
- ...options?.afterTurn !== void 0 && { afterTurn: options.afterTurn },
1064
1073
  ...options?.when !== void 0 && { when: options.when }
1065
1074
  };
1066
1075
  }
@@ -2174,8 +2183,10 @@ export {
2174
2183
  TomlRenderer,
2175
2184
  ToonRenderer,
2176
2185
  XmlRenderer,
2186
+ afterTurn,
2177
2187
  alias,
2178
2188
  analogy,
2189
+ and,
2179
2190
  applyInlineReminder,
2180
2191
  applyPartReminder,
2181
2192
  assistant,
@@ -2184,9 +2195,11 @@ export {
2184
2195
  correction,
2185
2196
  defaultTokenizer,
2186
2197
  estimate,
2198
+ everyNTurns,
2187
2199
  example,
2188
2200
  explain,
2189
2201
  fail,
2202
+ firstN,
2190
2203
  fragment,
2191
2204
  fromFragment,
2192
2205
  getFragmentData,
@@ -2203,6 +2216,9 @@ export {
2203
2216
  isMessageFragment,
2204
2217
  lastAssistantMessage,
2205
2218
  message,
2219
+ not,
2220
+ once,
2221
+ or,
2206
2222
  pass,
2207
2223
  persistedWriter,
2208
2224
  persona,