Conversation
chore: sync package.json version to 2.4.0 from main
…her missing fields QueryBuilder.toJSON() was silently dropping where clauses, sort keys, minus entries, nullSubject, and pendingContextName. This meant any query with .where() would lose its filter when round-tripping through JSON serialization. - Add QueryBuilderSerialization.ts with serialize/deserialize helpers for WherePath, SortByPath, RawMinusEntry, and QueryArg types - Update QueryBuilderJSON type with where, sortBy, minusEntries, nullSubject, and pendingContextName fields - Update toJSON() to evaluate callbacks and serialize all fields - Update fromJSON() to deserialize and restore all fields via pre-evaluated data (_where, _sortBy, _rawMinusEntries) - Update _buildDirectRawInput() to use pre-evaluated data as fallback when callbacks aren't available (i.e. after JSON deserialization) - Add 18 round-trip serialization tests confirming identical IR output https://claude.ai/code/session_01P6n2XLm5DSugoa8RWN97yy
…lect Preloads were the last remaining field not serialized in toJSON(). Fixed by: - Merging preload entries into the FieldSet at serialization time (same merge logic as _buildDirectRawInput), so preloaded component fields appear as subSelect entries in the JSON - Adding preloadSubSelect handling in FieldSet.toJSON() so it serializes identically to subSelect (both produce the same IR) - Adding 3 round-trip tests confirming preload serialization https://claude.ai/code/session_01P6n2XLm5DSugoa8RWN97yy
- Extract _fieldsWithPreloads() from duplicated preload merge logic in toJSON() and _buildDirectRawInput() - Extract _evaluateMinusEntries() from duplicated minus entry evaluation logic, reusing a single proxy instance - Fix WhereMethods cast from `as any` to `as WhereMethods` - Remove unused PropertyPath import from QueryBuilderSerialization.ts - Remove redundant inline comments that restated the code - Add changeset patch for the toJSON fix https://claude.ai/code/session_01P6n2XLm5DSugoa8RWN97yy
Add serialization support for QueryBuilder where/sort/minus clauses
WhereMethods, WhereEvaluationPath, WhereAndOr, and AndOrQueryToken were not reliably exported under CJS/ESM build configs. Replace with inline structural types cast via WherePath. https://claude.ai/code/session_01P6n2XLm5DSugoa8RWN97yy
…tion Fix build errors in QueryBuilderSerialization
The WherePath type was refactored on main (WhereEvaluationPath/WhereAndOr replaced with WhereExpressionPath/WhereExistsPath). Update serialization to work with both variants: - Use `as unknown as` for structural casts that span both type structures - Add ExistsCondition serialization/deserialization (exists kind) - Dynamically resolve ExistsCondition constructor for cross-branch compat - Guard evaluation path with runtime `in` check instead of fallthrough https://claude.ai/code/session_01P6n2XLm5DSugoa8RWN97yy
Fix build: WherePath compat for both old and new type structures
Refine SPARQL lowering for required outer filter bindings
Fix dev->main merge test expectations
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.