Skip to content
This repository was archived by the owner on Feb 6, 2026. It is now read-only.

Commit 0e43468

Browse files
committed
feat(sdf, web): Rename the variant_defs route
Variant definitions no longer exist so we now use variants as the route instead
1 parent 423189f commit 0e43468

13 files changed

Lines changed: 86 additions & 99 deletions

File tree

app/web/src/store/asset.store.ts

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ import { useRouterStore } from "./router.store";
2323

2424
export type AssetId = string;
2525

26-
export interface ListVariantDefsResponse {
27-
variantDefs: ListedVariantDef[];
26+
export interface ListVariantsResponse {
27+
variants: ListedVariant[];
2828
}
2929

3030
export interface InstalledPkgAssetView {
@@ -70,7 +70,7 @@ export interface DetachedValidationPrototype {
7070
propKind: PropKind;
7171
}
7272

73-
export interface ListedVariantDef {
73+
export interface ListedVariant {
7474
id: AssetId;
7575
name: string;
7676
displayName?: string;
@@ -83,15 +83,15 @@ export interface ListedVariantDef {
8383
updatedAt: IsoDateString;
8484
}
8585

86-
export interface VariantDef extends ListedVariantDef {
86+
export interface Variant extends ListedVariant {
8787
link?: string;
8888
code: string;
8989
types?: string;
9090
hasComponents: boolean;
9191
}
9292

93-
export type Asset = VariantDef;
94-
export type AssetListEntry = ListedVariantDef;
93+
export type Asset = Variant;
94+
export type AssetListEntry = ListedVariant;
9595
export type AssetSaveRequest = Visibility &
9696
Omit<Asset, "createdAt" | "updatedAt" | "variantExists" | "hasComponents">;
9797
export type AssetCreateRequest = Omit<
@@ -170,7 +170,7 @@ export const useAssetStore = () => {
170170
const assetsWithSchemaVariantId = _.filter(
171171
this.assets,
172172
(a) => a.id !== undefined,
173-
) as (VariantDef & {
173+
) as (Variant & {
174174
schemaVariantId: string;
175175
})[];
176176

@@ -267,7 +267,7 @@ export const useAssetStore = () => {
267267
AssetCreateRequest
268268
>({
269269
method: "post",
270-
url: "/variant_def/create_variant_def",
270+
url: "/variant/create_variant",
271271
params: {
272272
...visibility,
273273
..._.omit(asset, [
@@ -292,7 +292,7 @@ export const useAssetStore = () => {
292292
>({
293293
method: "post",
294294
keyRequestStatusBy: assetId,
295-
url: "/variant_def/clone_variant_def",
295+
url: "/variant/clone_variant",
296296
params: {
297297
...visibility,
298298
id: assetId,
@@ -328,7 +328,7 @@ export const useAssetStore = () => {
328328
return new ApiRequest<{ success: boolean }, AssetSaveRequest>({
329329
method: "post",
330330
keyRequestStatusBy: asset.id,
331-
url: "/variant_def/save_variant_def",
331+
url: "/variant/save_variant",
332332
optimistic: () => {
333333
if (isHead) return () => {};
334334

@@ -356,7 +356,7 @@ export const useAssetStore = () => {
356356
id: AssetId;
357357
}
358358
>({
359-
url: "/variant_def/get_variant_def",
359+
url: "/variant/get_variant",
360360
keyRequestStatusBy: assetId,
361361
params: {
362362
id: assetId,
@@ -369,11 +369,11 @@ export const useAssetStore = () => {
369369
},
370370

371371
async LOAD_ASSET_LIST() {
372-
return new ApiRequest<ListVariantDefsResponse, Visibility>({
373-
url: "/variant_def/list_variant_defs",
372+
return new ApiRequest<ListVariantsResponse, Visibility>({
373+
url: "/variant/list_variants",
374374
params: { ...visibility },
375375
onSuccess: (response) => {
376-
this.assetList = response.variantDefs;
376+
this.assetList = response.variants;
377377
},
378378
});
379379
},
@@ -397,7 +397,7 @@ export const useAssetStore = () => {
397397
AssetSaveRequest
398398
>({
399399
method: "post",
400-
url: "/variant_def/exec_variant_def",
400+
url: "/variant/exec_variant",
401401
keyRequestStatusBy: assetId,
402402
params: {
403403
...visibility,
@@ -420,21 +420,21 @@ export const useAssetStore = () => {
420420
},
421421
},
422422
{
423-
eventType: "SchemaVariantDefinitionCreated",
423+
eventType: "SchemaVariantCreated",
424424
callback: (data) => {
425425
if (data.changeSetId !== changeSetId) return;
426426
this.LOAD_ASSET_LIST();
427427
},
428428
},
429429
{
430-
eventType: "SchemaVariantDefinitionCloned",
430+
eventType: "SchemaVariantCloned",
431431
callback: (data) => {
432432
if (data.changeSetId !== changeSetId) return;
433433
this.LOAD_ASSET_LIST();
434434
},
435435
},
436436
{
437-
eventType: "SchemaVariantDefinitionSaved",
437+
eventType: "SchemaVariantSaved",
438438
callback: (data) => {
439439
if (data.changeSetId !== changeSetId) return;
440440
this.LOAD_ASSET_LIST();
@@ -478,7 +478,7 @@ export const useAssetStore = () => {
478478
},
479479
},
480480
{
481-
eventType: "SchemaVariantDefinitionFinished",
481+
eventType: "SchemaVariantFinished",
482482
callback: async ({
483483
taskId,
484484
schemaVariantId,

app/web/src/store/realtime/realtime_events.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -220,21 +220,21 @@ export type WsEventPayloadMap = {
220220
secretId: SecretId;
221221
changeSetId: ChangeSetId;
222222
};
223-
SchemaVariantDefinitionCreated: {
224-
schemaVariantDefinitionId: string;
223+
SchemaVariantCreated: {
224+
schemaVariantId: string;
225225
changeSetId: ChangeSetId;
226226
};
227-
SchemaVariantDefinitionCloned: {
228-
schemaVariantDefinitionId: string;
227+
SchemaVariantCloned: {
228+
schemaVariantId: string;
229229
changeSetId: ChangeSetId;
230230
};
231-
SchemaVariantDefinitionFinished: {
231+
SchemaVariantFinished: {
232232
taskId: string;
233233
schemaVariantId: string;
234234
detachedAttributePrototypes: DetachedAttributePrototype[];
235235
};
236-
SchemaVariantDefinitionSaved: {
237-
schemaVariantDefinitionId: string;
236+
SchemaVariantSaved: {
237+
schemaVariantId: string;
238238
changeSetId: ChangeSetId;
239239
};
240240
FuncCreated: {

lib/dal/src/func.rs

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -239,21 +239,18 @@ impl Func {
239239
func_backend_response_type: FuncBackendResponseType,
240240
) -> FuncResult<FuncKind> {
241241
match func_backend_kind {
242-
FuncBackendKind::JsAttribute => {
243-
return match func_backend_response_type {
244-
FuncBackendResponseType::CodeGeneration => Ok(FuncKind::CodeGeneration),
245-
FuncBackendResponseType::Qualification => Ok(FuncKind::Qualification),
246-
FuncBackendResponseType::SchemaVariantDefinition => {
247-
dbg!("THIS IS FUCKED!");
248-
Ok(FuncKind::SchemaVariantDefinition)
249-
}
250-
_ => Ok(FuncKind::Attribute),
251-
}
252-
}
253-
FuncBackendKind::JsAction => return Ok(FuncKind::Action),
254-
FuncBackendKind::JsAuthentication => return Ok(FuncKind::Authentication),
255-
FuncBackendKind::JsSchemaVariantDefinition => {
256-
return Ok(FuncKind::SchemaVariantDefinition)
242+
FuncBackendKind::JsAttribute => match func_backend_response_type {
243+
FuncBackendResponseType::CodeGeneration => Ok(FuncKind::CodeGeneration),
244+
FuncBackendResponseType::Qualification => Ok(FuncKind::Qualification),
245+
_ => Ok(FuncKind::Attribute),
246+
},
247+
FuncBackendKind::JsAction => Ok(FuncKind::Action),
248+
FuncBackendKind::JsAuthentication => Ok(FuncKind::Authentication),
249+
FuncBackendKind::JsSchemaVariantDefinition => Ok(FuncKind::SchemaVariantDefinition),
250+
FuncBackendKind::JsValidation => {
251+
dbg!("Old func kind identifed so marked as unknown");
252+
dbg!(&func_name, &func_backend_kind, &func_backend_response_type);
253+
Ok(FuncKind::Unknown)
257254
}
258255
FuncBackendKind::Array
259256
| FuncBackendKind::Boolean
@@ -264,7 +261,7 @@ impl Func {
264261
| FuncBackendKind::Object
265262
| FuncBackendKind::String
266263
| FuncBackendKind::Unset
267-
| FuncBackendKind::Validation => return Ok(FuncKind::Intrinsic),
264+
| FuncBackendKind::Validation => Ok(FuncKind::Intrinsic),
268265
_ => {
269266
dbg!(&func_name, &func_backend_kind, &func_backend_response_type);
270267
Err(FuncError::UnknownFunctionType)

lib/dal/src/schema/variant.rs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ use crate::workspace_snapshot::WorkspaceSnapshotError;
4141
use crate::{
4242
pk,
4343
schema::variant::leaves::{LeafInput, LeafInputLocation, LeafKind},
44-
ActionPrototype, ActionPrototypeError, AttributePrototype, AttributePrototypeId, ComponentId,
45-
ComponentType, DalContext, Func, FuncId, InputSocket, OutputSocket, OutputSocketId, Prop,
46-
PropId, PropKind, Schema, SchemaError, SchemaId, SocketArity, Timestamp, TransactionsError,
44+
ActionPrototype, AttributePrototype, AttributePrototypeId, ComponentId, ComponentType,
45+
DalContext, Func, FuncId, InputSocket, OutputSocket, OutputSocketId, Prop, PropId, PropKind,
46+
Schema, SchemaError, SchemaId, SocketArity, Timestamp, TransactionsError,
4747
};
4848
use crate::{FuncBackendResponseType, InputSocketId};
4949

@@ -184,7 +184,7 @@ impl SchemaVariant {
184184
display_name: display_name.into(),
185185
component_type: component_type.into(),
186186
description: description.into(),
187-
asset_func_id: asset_func_id.into(),
187+
asset_func_id,
188188
};
189189

190190
let (hash, _) = ctx
@@ -455,7 +455,7 @@ impl SchemaVariant {
455455
}
456456

457457
pub fn asset_func_id(&self) -> Option<FuncId> {
458-
self.asset_func_id.clone()
458+
self.asset_func_id
459459
}
460460

461461
pub async fn get_root_prop_id(
@@ -1057,13 +1057,9 @@ impl SchemaVariant {
10571057
.await?
10581058
.get_func_node_weight()?;
10591059

1060-
match node_weight.func_kind() {
1061-
FuncKind::Attribute => {
1062-
let func = Func::get_by_id(ctx, func_id).await?;
1063-
all_funcs.push(func);
1064-
}
1065-
1066-
_ => {}
1060+
if node_weight.func_kind() == FuncKind::Attribute {
1061+
let func = Func::get_by_id(ctx, func_id).await?;
1062+
all_funcs.push(func);
10671063
}
10681064
}
10691065

lib/sdf-server/src/server/routes.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,7 @@ pub fn routes(state: AppState) -> Router {
4545
// .nest("/api/fix", crate::server::service::fix::routes())
4646
// .nest("/api/pkg", crate::server::service::pkg::routes())
4747
// .nest("/api/status", crate::server::service::status::routes())
48-
.nest(
49-
"/api/variant_def",
50-
crate::server::service::variant_definition::routes(),
51-
)
48+
.nest("/api/variant", crate::server::service::variant::routes())
5249
.layer(CompressionLayer::new());
5350

5451
// Load dev routes if we are in dev mode (decided by "opt-level" at the moment).

lib/sdf-server/src/server/service.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ pub mod ws;
1212

1313
// pub mod pkg;
1414
// pub mod status;
15-
pub mod variant_definition;
15+
pub mod variant;
1616

1717
/// A module containing dev routes for local development only.
1818
#[cfg(debug_assertions)]

lib/sdf-server/src/server/service/variant_definition.rs renamed to lib/sdf-server/src/server/service/variant.rs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ use crate::server::state::AppState;
99
// pub mod clone_variant_def;
1010
// pub mod create_variant_def;
1111
// pub mod exec_variant_def;
12-
pub mod get_variant_def;
13-
pub mod list_variant_defs;
12+
pub mod get_variant;
13+
pub mod list_variants;
1414
// pub mod save_variant_def;
1515

1616
#[remain::sorted]
@@ -699,11 +699,8 @@ impl IntoResponse for SchemaVariantError {
699699

700700
pub fn routes() -> Router<AppState> {
701701
Router::new()
702-
.route(
703-
"/list_variant_defs",
704-
get(list_variant_defs::list_variant_defs),
705-
)
706-
.route("/get_variant_def", get(get_variant_def::get_variant_def))
702+
.route("/list_variants", get(list_variants::list_variants))
703+
.route("/get_variant", get(get_variant::get_variant))
707704
// .route(
708705
// "/save_variant_def",
709706
// post(save_variant_def::save_variant_def),

lib/sdf-server/src/server/service/variant_definition/clone_variant_def.rs renamed to lib/sdf-server/src/server/service/variant/clone_variant_def.rs

File renamed without changes.

lib/sdf-server/src/server/service/variant_definition/create_variant_def.rs renamed to lib/sdf-server/src/server/service/variant/create_variant_def.rs

File renamed without changes.

lib/sdf-server/src/server/service/variant_definition/exec_variant_def.rs renamed to lib/sdf-server/src/server/service/variant/exec_variant_def.rs

File renamed without changes.

0 commit comments

Comments
 (0)