Skip to content

Commit

Permalink
Merge branch 'main' into CS-7693-embedded-account-card
Browse files Browse the repository at this point in the history
  • Loading branch information
lucaslyl committed Jan 24, 2025
2 parents 2ca2580 + 32a3e8a commit 3bb19b7
Show file tree
Hide file tree
Showing 112 changed files with 1,922 additions and 480 deletions.
24 changes: 14 additions & 10 deletions packages/base/card-api.gts
Original file line number Diff line number Diff line change
Expand Up @@ -1699,7 +1699,10 @@ export class BaseDef {
}
return Object.fromEntries(
Object.entries(
getFields(value, { includeComputeds: true, usedFieldsOnly: true }),
getFields(value, {
includeComputeds: true,
usedLinksToFieldsOnly: true,
}),
).map(([fieldName, field]) => {
let rawValue = peekAtField(value, fieldName);
if (field?.fieldType === 'linksToMany') {
Expand Down Expand Up @@ -1967,7 +1970,7 @@ export function subscribeToChanges(
changeSubscribers.add(subscriber);

let fields = getFields(fieldOrCard, {
usedFieldsOnly: true,
usedLinksToFieldsOnly: true,
includeComputeds: false,
});
Object.keys(fields).forEach((fieldName) => {
Expand Down Expand Up @@ -2010,7 +2013,7 @@ export function unsubscribeFromChanges(
changeSubscribers.delete(subscriber);

let fields = getFields(fieldOrCard, {
usedFieldsOnly: true,
usedLinksToFieldsOnly: true,
includeComputeds: false,
});
Object.keys(fields).forEach((fieldName) => {
Expand Down Expand Up @@ -2308,7 +2311,7 @@ function serializeCardResource(
let { includeUnrenderedFields: remove, ...fieldOpts } = opts ?? {};
let { id: removedIdField, ...fields } = getFields(model, {
...fieldOpts,
usedFieldsOnly: !opts?.includeUnrenderedFields,
usedLinksToFieldsOnly: !opts?.includeUnrenderedFields,
});
let fieldResources = Object.entries(fields)
.filter(([_fieldName, field]) =>
Expand Down Expand Up @@ -2830,7 +2833,7 @@ export async function recompute(
Object.keys(
getFields(model, {
includeComputeds: true,
usedFieldsOnly: !opts?.recomputeAllFields,
usedLinksToFieldsOnly: !opts?.recomputeAllFields,
}),
),
);
Expand Down Expand Up @@ -2936,15 +2939,15 @@ export async function getIfReady<T extends BaseDef, K extends keyof T>(

export function getFields(
card: typeof BaseDef,
opts?: { usedFieldsOnly?: boolean; includeComputeds?: boolean },
opts?: { usedLinksToFieldsOnly?: boolean; includeComputeds?: boolean },
): { [fieldName: string]: Field<BaseDefConstructor> };
export function getFields<T extends BaseDef>(
card: T,
opts?: { usedFieldsOnly?: boolean; includeComputeds?: boolean },
opts?: { usedLinksToFieldsOnly?: boolean; includeComputeds?: boolean },
): { [P in keyof T]?: Field<BaseDefConstructor> };
export function getFields(
cardInstanceOrClass: BaseDef | typeof BaseDef,
opts?: { usedFieldsOnly?: boolean; includeComputeds?: boolean },
opts?: { usedLinksToFieldsOnly?: boolean; includeComputeds?: boolean },
): { [fieldName: string]: Field<BaseDefConstructor> } {
let obj: object | null;
let usedFields: string[] = [];
Expand Down Expand Up @@ -2979,9 +2982,10 @@ export function getFields(
!['contains', 'containsMany'].includes(maybeField.fieldType)
) {
if (
opts?.usedFieldsOnly &&
opts?.usedLinksToFieldsOnly &&
!usedFields.includes(maybeFieldName) &&
!maybeField.isUsed
!maybeField.isUsed &&
!['contains', 'containsMany'].includes(maybeField.fieldType)
) {
return [];
}
Expand Down
8 changes: 7 additions & 1 deletion packages/base/cards-grid.gts
Original file line number Diff line number Diff line change
Expand Up @@ -384,13 +384,19 @@ class Isolated extends Component<typeof CardsGrid> {
on: catalogEntryRef,
eq: { ref: activeFilterRef },
},
sort: [
{
by: 'createdAt',
direction: 'desc',
},
],
};
}
let card = await chooseCard<CatalogEntry>(
{
filter: {
on: catalogEntryRef,
every: [{ eq: { isField: false } }],
every: [{ eq: { specType: 'card' } }],
},
},
{ preselectedCardTypeQuery },
Expand Down
Loading

0 comments on commit 3bb19b7

Please sign in to comment.