feat: add puzzle clear template runtime

This commit is contained in:
2026-06-03 22:11:46 +08:00
parent 6e74cf5add
commit 1b5e098225
148 changed files with 19588 additions and 241 deletions

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_next_level_input_type::PuzzleClearRunNextLevelInput;
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct AdvancePuzzleClearNextLevelArgs {
pub input: PuzzleClearRunNextLevelInput,
}
impl __sdk::InModule for AdvancePuzzleClearNextLevelArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `advance_puzzle_clear_next_level`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait advance_puzzle_clear_next_level {
fn advance_puzzle_clear_next_level(&self, input: PuzzleClearRunNextLevelInput) {
self.advance_puzzle_clear_next_level_then(input, |_, _| {});
}
fn advance_puzzle_clear_next_level_then(
&self,
input: PuzzleClearRunNextLevelInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl advance_puzzle_clear_next_level for super::RemoteProcedures {
fn advance_puzzle_clear_next_level_then(
&self,
input: PuzzleClearRunNextLevelInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"advance_puzzle_clear_next_level",
AdvancePuzzleClearNextLevelArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_agent_session_procedure_result_type::PuzzleClearAgentSessionProcedureResult;
use super::puzzle_clear_draft_compile_input_type::PuzzleClearDraftCompileInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct CompilePuzzleClearDraftArgs {
pub input: PuzzleClearDraftCompileInput,
}
impl __sdk::InModule for CompilePuzzleClearDraftArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `compile_puzzle_clear_draft`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait compile_puzzle_clear_draft {
fn compile_puzzle_clear_draft(&self, input: PuzzleClearDraftCompileInput) {
self.compile_puzzle_clear_draft_then(input, |_, _| {});
}
fn compile_puzzle_clear_draft_then(
&self,
input: PuzzleClearDraftCompileInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl compile_puzzle_clear_draft for super::RemoteProcedures {
fn compile_puzzle_clear_draft_then(
&self,
input: PuzzleClearDraftCompileInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearAgentSessionProcedureResult>(
"compile_puzzle_clear_draft",
CompilePuzzleClearDraftArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_agent_session_create_input_type::PuzzleClearAgentSessionCreateInput;
use super::puzzle_clear_agent_session_procedure_result_type::PuzzleClearAgentSessionProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct CreatePuzzleClearAgentSessionArgs {
pub input: PuzzleClearAgentSessionCreateInput,
}
impl __sdk::InModule for CreatePuzzleClearAgentSessionArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `create_puzzle_clear_agent_session`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait create_puzzle_clear_agent_session {
fn create_puzzle_clear_agent_session(&self, input: PuzzleClearAgentSessionCreateInput) {
self.create_puzzle_clear_agent_session_then(input, |_, _| {});
}
fn create_puzzle_clear_agent_session_then(
&self,
input: PuzzleClearAgentSessionCreateInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl create_puzzle_clear_agent_session for super::RemoteProcedures {
fn create_puzzle_clear_agent_session_then(
&self,
input: PuzzleClearAgentSessionCreateInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearAgentSessionProcedureResult>(
"create_puzzle_clear_agent_session",
CreatePuzzleClearAgentSessionArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_agent_session_get_input_type::PuzzleClearAgentSessionGetInput;
use super::puzzle_clear_agent_session_procedure_result_type::PuzzleClearAgentSessionProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct GetPuzzleClearAgentSessionArgs {
pub input: PuzzleClearAgentSessionGetInput,
}
impl __sdk::InModule for GetPuzzleClearAgentSessionArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `get_puzzle_clear_agent_session`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait get_puzzle_clear_agent_session {
fn get_puzzle_clear_agent_session(&self, input: PuzzleClearAgentSessionGetInput) {
self.get_puzzle_clear_agent_session_then(input, |_, _| {});
}
fn get_puzzle_clear_agent_session_then(
&self,
input: PuzzleClearAgentSessionGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl get_puzzle_clear_agent_session for super::RemoteProcedures {
fn get_puzzle_clear_agent_session_then(
&self,
input: PuzzleClearAgentSessionGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearAgentSessionProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearAgentSessionProcedureResult>(
"get_puzzle_clear_agent_session",
GetPuzzleClearAgentSessionArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_get_input_type::PuzzleClearRunGetInput;
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct GetPuzzleClearRuntimeRunArgs {
pub input: PuzzleClearRunGetInput,
}
impl __sdk::InModule for GetPuzzleClearRuntimeRunArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `get_puzzle_clear_runtime_run`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait get_puzzle_clear_runtime_run {
fn get_puzzle_clear_runtime_run(&self, input: PuzzleClearRunGetInput) {
self.get_puzzle_clear_runtime_run_then(input, |_, _| {});
}
fn get_puzzle_clear_runtime_run_then(
&self,
input: PuzzleClearRunGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl get_puzzle_clear_runtime_run for super::RemoteProcedures {
fn get_puzzle_clear_runtime_run_then(
&self,
input: PuzzleClearRunGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"get_puzzle_clear_runtime_run",
GetPuzzleClearRuntimeRunArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_work_get_input_type::PuzzleClearWorkGetInput;
use super::puzzle_clear_work_procedure_result_type::PuzzleClearWorkProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct GetPuzzleClearWorkProfileArgs {
pub input: PuzzleClearWorkGetInput,
}
impl __sdk::InModule for GetPuzzleClearWorkProfileArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `get_puzzle_clear_work_profile`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait get_puzzle_clear_work_profile {
fn get_puzzle_clear_work_profile(&self, input: PuzzleClearWorkGetInput) {
self.get_puzzle_clear_work_profile_then(input, |_, _| {});
}
fn get_puzzle_clear_work_profile_then(
&self,
input: PuzzleClearWorkGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl get_puzzle_clear_work_profile for super::RemoteProcedures {
fn get_puzzle_clear_work_profile_then(
&self,
input: PuzzleClearWorkGetInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearWorkProcedureResult>(
"get_puzzle_clear_work_profile",
GetPuzzleClearWorkProfileArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_works_list_input_type::PuzzleClearWorksListInput;
use super::puzzle_clear_works_procedure_result_type::PuzzleClearWorksProcedureResult;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct ListPuzzleClearWorksArgs {
pub input: PuzzleClearWorksListInput,
}
impl __sdk::InModule for ListPuzzleClearWorksArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `list_puzzle_clear_works`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait list_puzzle_clear_works {
fn list_puzzle_clear_works(&self, input: PuzzleClearWorksListInput) {
self.list_puzzle_clear_works_then(input, |_, _| {});
}
fn list_puzzle_clear_works_then(
&self,
input: PuzzleClearWorksListInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorksProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl list_puzzle_clear_works for super::RemoteProcedures {
fn list_puzzle_clear_works_then(
&self,
input: PuzzleClearWorksListInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorksProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearWorksProcedureResult>(
"list_puzzle_clear_works",
ListPuzzleClearWorksArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
use super::puzzle_clear_run_time_up_input_type::PuzzleClearRunTimeUpInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct MarkPuzzleClearLevelTimeUpArgs {
pub input: PuzzleClearRunTimeUpInput,
}
impl __sdk::InModule for MarkPuzzleClearLevelTimeUpArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `mark_puzzle_clear_level_time_up`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait mark_puzzle_clear_level_time_up {
fn mark_puzzle_clear_level_time_up(&self, input: PuzzleClearRunTimeUpInput) {
self.mark_puzzle_clear_level_time_up_then(input, |_, _| {});
}
fn mark_puzzle_clear_level_time_up_then(
&self,
input: PuzzleClearRunTimeUpInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl mark_puzzle_clear_level_time_up for super::RemoteProcedures {
fn mark_puzzle_clear_level_time_up_then(
&self,
input: PuzzleClearRunTimeUpInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"mark_puzzle_clear_level_time_up",
MarkPuzzleClearLevelTimeUpArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_work_procedure_result_type::PuzzleClearWorkProcedureResult;
use super::puzzle_clear_work_publish_input_type::PuzzleClearWorkPublishInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct PublishPuzzleClearWorkArgs {
pub input: PuzzleClearWorkPublishInput,
}
impl __sdk::InModule for PublishPuzzleClearWorkArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `publish_puzzle_clear_work`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait publish_puzzle_clear_work {
fn publish_puzzle_clear_work(&self, input: PuzzleClearWorkPublishInput) {
self.publish_puzzle_clear_work_then(input, |_, _| {});
}
fn publish_puzzle_clear_work_then(
&self,
input: PuzzleClearWorkPublishInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl publish_puzzle_clear_work for super::RemoteProcedures {
fn publish_puzzle_clear_work_then(
&self,
input: PuzzleClearWorkPublishInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearWorkProcedureResult>(
"publish_puzzle_clear_work",
PublishPuzzleClearWorkArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,23 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearAgentSessionCreateInput {
pub session_id: String,
pub owner_user_id: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset_json: Option<String>,
pub board_background_prompt: String,
pub created_at_micros: i64,
}
impl __sdk::InModule for PuzzleClearAgentSessionCreateInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,16 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearAgentSessionGetInput {
pub session_id: String,
pub owner_user_id: String,
}
impl __sdk::InModule for PuzzleClearAgentSessionGetInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_agent_session_snapshot_type::PuzzleClearAgentSessionSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearAgentSessionProcedureResult {
pub ok: bool,
pub session: Option<PuzzleClearAgentSessionSnapshot>,
pub error_message: Option<String>,
}
impl __sdk::InModule for PuzzleClearAgentSessionProcedureResult {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,72 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearAgentSessionRow {
pub session_id: String,
pub owner_user_id: String,
pub status: String,
pub draft_json: String,
pub published_profile_id: String,
pub created_at: __sdk::Timestamp,
pub updated_at: __sdk::Timestamp,
}
impl __sdk::InModule for PuzzleClearAgentSessionRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearAgentSessionRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearAgentSessionRowCols {
pub session_id: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, String>,
pub status: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, String>,
pub draft_json: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, String>,
pub published_profile_id: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, String>,
pub created_at: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, __sdk::Timestamp>,
pub updated_at: __sdk::__query_builder::Col<PuzzleClearAgentSessionRow, __sdk::Timestamp>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearAgentSessionRow {
type Cols = PuzzleClearAgentSessionRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearAgentSessionRowCols {
session_id: __sdk::__query_builder::Col::new(table_name, "session_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
status: __sdk::__query_builder::Col::new(table_name, "status"),
draft_json: __sdk::__query_builder::Col::new(table_name, "draft_json"),
published_profile_id: __sdk::__query_builder::Col::new(
table_name,
"published_profile_id",
),
created_at: __sdk::__query_builder::Col::new(table_name, "created_at"),
updated_at: __sdk::__query_builder::Col::new(table_name, "updated_at"),
}
}
}
/// Indexed column accessor struct for the table `PuzzleClearAgentSessionRow`.
///
/// Provides typed access to indexed columns for query building.
pub struct PuzzleClearAgentSessionRowIxCols {
pub owner_user_id: __sdk::__query_builder::IxCol<PuzzleClearAgentSessionRow, String>,
pub session_id: __sdk::__query_builder::IxCol<PuzzleClearAgentSessionRow, String>,
}
impl __sdk::__query_builder::HasIxCols for PuzzleClearAgentSessionRow {
type IxCols = PuzzleClearAgentSessionRowIxCols;
fn ix_cols(table_name: &'static str) -> Self::IxCols {
PuzzleClearAgentSessionRowIxCols {
owner_user_id: __sdk::__query_builder::IxCol::new(table_name, "owner_user_id"),
session_id: __sdk::__query_builder::IxCol::new(table_name, "session_id"),
}
}
}
impl __sdk::__query_builder::CanBeLookupTable for PuzzleClearAgentSessionRow {}

View File

@@ -0,0 +1,23 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_draft_snapshot_type::PuzzleClearDraftSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearAgentSessionSnapshot {
pub session_id: String,
pub owner_user_id: String,
pub status: String,
pub draft: Option<PuzzleClearDraftSnapshot>,
pub published_profile_id: Option<String>,
pub created_at_micros: i64,
pub updated_at_micros: i64,
}
impl __sdk::InModule for PuzzleClearAgentSessionSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,166 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_agent_session_row_type::PuzzleClearAgentSessionRow;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_agent_session`.
///
/// Obtain a handle from the [`PuzzleClearAgentSessionTableAccess::puzzle_clear_agent_session`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_agent_session()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_agent_session().on_insert(...)`.
pub struct PuzzleClearAgentSessionTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearAgentSessionRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_agent_session`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearAgentSessionTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearAgentSessionTableHandle`], which mediates access to the table `puzzle_clear_agent_session`.
fn puzzle_clear_agent_session(&self) -> PuzzleClearAgentSessionTableHandle<'_>;
}
impl PuzzleClearAgentSessionTableAccess for super::RemoteTables {
fn puzzle_clear_agent_session(&self) -> PuzzleClearAgentSessionTableHandle<'_> {
PuzzleClearAgentSessionTableHandle {
imp: self
.imp
.get_table::<PuzzleClearAgentSessionRow>("puzzle_clear_agent_session"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearAgentSessionInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearAgentSessionDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearAgentSessionTableHandle<'ctx> {
type Row = PuzzleClearAgentSessionRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearAgentSessionRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearAgentSessionInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearAgentSessionInsertCallbackId {
PuzzleClearAgentSessionInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearAgentSessionInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearAgentSessionDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearAgentSessionDeleteCallbackId {
PuzzleClearAgentSessionDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearAgentSessionDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
pub struct PuzzleClearAgentSessionUpdateCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::TableWithPrimaryKey for PuzzleClearAgentSessionTableHandle<'ctx> {
type UpdateCallbackId = PuzzleClearAgentSessionUpdateCallbackId;
fn on_update(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row, &Self::Row) + Send + 'static,
) -> PuzzleClearAgentSessionUpdateCallbackId {
PuzzleClearAgentSessionUpdateCallbackId(self.imp.on_update(Box::new(callback)))
}
fn remove_on_update(&self, callback: PuzzleClearAgentSessionUpdateCallbackId) {
self.imp.remove_on_update(callback.0)
}
}
/// Access to the `session_id` unique index on the table `puzzle_clear_agent_session`,
/// which allows point queries on the field of the same name
/// via the [`PuzzleClearAgentSessionSessionIdUnique::find`] method.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_agent_session().session_id().find(...)`.
pub struct PuzzleClearAgentSessionSessionIdUnique<'ctx> {
imp: __sdk::UniqueConstraintHandle<PuzzleClearAgentSessionRow, String>,
phantom: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
impl<'ctx> PuzzleClearAgentSessionTableHandle<'ctx> {
/// Get a handle on the `session_id` unique index on the table `puzzle_clear_agent_session`.
pub fn session_id(&self) -> PuzzleClearAgentSessionSessionIdUnique<'ctx> {
PuzzleClearAgentSessionSessionIdUnique {
imp: self.imp.get_unique_constraint::<String>("session_id"),
phantom: std::marker::PhantomData,
}
}
}
impl<'ctx> PuzzleClearAgentSessionSessionIdUnique<'ctx> {
/// Find the subscribed row whose `session_id` column value is equal to `col_val`,
/// if such a row is present in the client cache.
pub fn find(&self, col_val: &String) -> Option<PuzzleClearAgentSessionRow> {
self.imp.find(col_val)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table =
client_cache.get_or_make_table::<PuzzleClearAgentSessionRow>("puzzle_clear_agent_session");
_table.add_unique_constraint::<String>("session_id", |row| &row.session_id);
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearAgentSessionRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse("TableUpdate<PuzzleClearAgentSessionRow>", "TableUpdate")
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearAgentSessionRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_agent_sessionQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearAgentSessionRow`.
fn puzzle_clear_agent_session(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearAgentSessionRow>;
}
impl puzzle_clear_agent_sessionQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_agent_session(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearAgentSessionRow> {
__sdk::__query_builder::Table::new("puzzle_clear_agent_session")
}
}

View File

@@ -0,0 +1,20 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearBoardCellSnapshot {
pub row: u32,
pub col: u32,
pub card: Option<PuzzleClearCardAssetSnapshot>,
pub locked_group_id: Option<String>,
}
impl __sdk::InModule for PuzzleClearBoardCellSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_board_cell_snapshot_type::PuzzleClearBoardCellSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearBoardSnapshot {
pub rows: u32,
pub cols: u32,
pub cells: Vec<PuzzleClearBoardCellSnapshot>,
}
impl __sdk::InModule for PuzzleClearBoardSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,24 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearCardAssetSnapshot {
pub card_id: String,
pub group_id: String,
pub shape: String,
pub orientation: String,
pub part_x: u32,
pub part_y: u32,
pub image_src: String,
pub image_object_key: String,
pub asset_object_id: String,
pub source_atlas_cell: String,
}
impl __sdk::InModule for PuzzleClearCardAssetSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,29 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearDraftCompileInput {
pub session_id: String,
pub owner_user_id: String,
pub profile_id: String,
pub author_display_name: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset_json: Option<String>,
pub board_background_prompt: String,
pub atlas_asset_json: Option<String>,
pub pattern_groups_json: Option<String>,
pub card_assets_json: Option<String>,
pub generation_status: Option<String>,
pub compiled_at_micros: i64,
}
impl __sdk::InModule for PuzzleClearDraftCompileInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,32 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
use super::puzzle_clear_image_asset_snapshot_type::PuzzleClearImageAssetSnapshot;
use super::puzzle_clear_pattern_group_snapshot_type::PuzzleClearPatternGroupSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearDraftSnapshot {
pub template_id: String,
pub template_name: String,
pub profile_id: Option<String>,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset: Option<PuzzleClearImageAssetSnapshot>,
pub board_background_prompt: String,
pub card_back_image_src: Option<String>,
pub atlas_asset: Option<PuzzleClearImageAssetSnapshot>,
pub pattern_groups: Vec<PuzzleClearPatternGroupSnapshot>,
pub card_assets: Vec<PuzzleClearCardAssetSnapshot>,
pub generation_status: String,
}
impl __sdk::InModule for PuzzleClearDraftSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,71 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearEventRow {
pub event_id: String,
pub owner_user_id: String,
pub profile_id: String,
pub run_id: String,
pub event_type: String,
pub result: String,
pub occurred_at: __sdk::Timestamp,
}
impl __sdk::InModule for PuzzleClearEventRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearEventRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearEventRowCols {
pub event_id: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub profile_id: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub run_id: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub event_type: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub result: __sdk::__query_builder::Col<PuzzleClearEventRow, String>,
pub occurred_at: __sdk::__query_builder::Col<PuzzleClearEventRow, __sdk::Timestamp>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearEventRow {
type Cols = PuzzleClearEventRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearEventRowCols {
event_id: __sdk::__query_builder::Col::new(table_name, "event_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
profile_id: __sdk::__query_builder::Col::new(table_name, "profile_id"),
run_id: __sdk::__query_builder::Col::new(table_name, "run_id"),
event_type: __sdk::__query_builder::Col::new(table_name, "event_type"),
result: __sdk::__query_builder::Col::new(table_name, "result"),
occurred_at: __sdk::__query_builder::Col::new(table_name, "occurred_at"),
}
}
}
/// Indexed column accessor struct for the table `PuzzleClearEventRow`.
///
/// Provides typed access to indexed columns for query building.
pub struct PuzzleClearEventRowIxCols {
pub event_id: __sdk::__query_builder::IxCol<PuzzleClearEventRow, String>,
pub profile_id: __sdk::__query_builder::IxCol<PuzzleClearEventRow, String>,
pub run_id: __sdk::__query_builder::IxCol<PuzzleClearEventRow, String>,
}
impl __sdk::__query_builder::HasIxCols for PuzzleClearEventRow {
type IxCols = PuzzleClearEventRowIxCols;
fn ix_cols(table_name: &'static str) -> Self::IxCols {
PuzzleClearEventRowIxCols {
event_id: __sdk::__query_builder::IxCol::new(table_name, "event_id"),
profile_id: __sdk::__query_builder::IxCol::new(table_name, "profile_id"),
run_id: __sdk::__query_builder::IxCol::new(table_name, "run_id"),
}
}
}
impl __sdk::__query_builder::CanBeLookupTable for PuzzleClearEventRow {}

View File

@@ -0,0 +1,161 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_event_row_type::PuzzleClearEventRow;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_event`.
///
/// Obtain a handle from the [`PuzzleClearEventTableAccess::puzzle_clear_event`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_event()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_event().on_insert(...)`.
pub struct PuzzleClearEventTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearEventRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_event`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearEventTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearEventTableHandle`], which mediates access to the table `puzzle_clear_event`.
fn puzzle_clear_event(&self) -> PuzzleClearEventTableHandle<'_>;
}
impl PuzzleClearEventTableAccess for super::RemoteTables {
fn puzzle_clear_event(&self) -> PuzzleClearEventTableHandle<'_> {
PuzzleClearEventTableHandle {
imp: self
.imp
.get_table::<PuzzleClearEventRow>("puzzle_clear_event"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearEventInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearEventDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearEventTableHandle<'ctx> {
type Row = PuzzleClearEventRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearEventRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearEventInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearEventInsertCallbackId {
PuzzleClearEventInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearEventInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearEventDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearEventDeleteCallbackId {
PuzzleClearEventDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearEventDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
pub struct PuzzleClearEventUpdateCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::TableWithPrimaryKey for PuzzleClearEventTableHandle<'ctx> {
type UpdateCallbackId = PuzzleClearEventUpdateCallbackId;
fn on_update(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row, &Self::Row) + Send + 'static,
) -> PuzzleClearEventUpdateCallbackId {
PuzzleClearEventUpdateCallbackId(self.imp.on_update(Box::new(callback)))
}
fn remove_on_update(&self, callback: PuzzleClearEventUpdateCallbackId) {
self.imp.remove_on_update(callback.0)
}
}
/// Access to the `event_id` unique index on the table `puzzle_clear_event`,
/// which allows point queries on the field of the same name
/// via the [`PuzzleClearEventEventIdUnique::find`] method.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_event().event_id().find(...)`.
pub struct PuzzleClearEventEventIdUnique<'ctx> {
imp: __sdk::UniqueConstraintHandle<PuzzleClearEventRow, String>,
phantom: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
impl<'ctx> PuzzleClearEventTableHandle<'ctx> {
/// Get a handle on the `event_id` unique index on the table `puzzle_clear_event`.
pub fn event_id(&self) -> PuzzleClearEventEventIdUnique<'ctx> {
PuzzleClearEventEventIdUnique {
imp: self.imp.get_unique_constraint::<String>("event_id"),
phantom: std::marker::PhantomData,
}
}
}
impl<'ctx> PuzzleClearEventEventIdUnique<'ctx> {
/// Find the subscribed row whose `event_id` column value is equal to `col_val`,
/// if such a row is present in the client cache.
pub fn find(&self, col_val: &String) -> Option<PuzzleClearEventRow> {
self.imp.find(col_val)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table = client_cache.get_or_make_table::<PuzzleClearEventRow>("puzzle_clear_event");
_table.add_unique_constraint::<String>("event_id", |row| &row.event_id);
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearEventRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse("TableUpdate<PuzzleClearEventRow>", "TableUpdate")
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearEventRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_eventQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearEventRow`.
fn puzzle_clear_event(&self) -> __sdk::__query_builder::Table<PuzzleClearEventRow>;
}
impl puzzle_clear_eventQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_event(&self) -> __sdk::__query_builder::Table<PuzzleClearEventRow> {
__sdk::__query_builder::Table::new("puzzle_clear_event")
}
}

View File

@@ -0,0 +1,77 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearGalleryCardViewRow {
pub public_work_code: String,
pub work_id: String,
pub profile_id: String,
pub owner_user_id: String,
pub author_display_name: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub cover_image_src: Option<String>,
pub publication_status: String,
pub play_count: u32,
pub updated_at_micros: i64,
pub published_at_micros: Option<i64>,
pub generation_status: String,
}
impl __sdk::InModule for PuzzleClearGalleryCardViewRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearGalleryCardViewRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearGalleryCardViewRowCols {
pub public_work_code: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub work_id: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub profile_id: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub author_display_name: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub work_title: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub work_description: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub theme_prompt: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub cover_image_src: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, Option<String>>,
pub publication_status: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
pub play_count: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, u32>,
pub updated_at_micros: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, i64>,
pub published_at_micros:
__sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, Option<i64>>,
pub generation_status: __sdk::__query_builder::Col<PuzzleClearGalleryCardViewRow, String>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearGalleryCardViewRow {
type Cols = PuzzleClearGalleryCardViewRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearGalleryCardViewRowCols {
public_work_code: __sdk::__query_builder::Col::new(table_name, "public_work_code"),
work_id: __sdk::__query_builder::Col::new(table_name, "work_id"),
profile_id: __sdk::__query_builder::Col::new(table_name, "profile_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
author_display_name: __sdk::__query_builder::Col::new(
table_name,
"author_display_name",
),
work_title: __sdk::__query_builder::Col::new(table_name, "work_title"),
work_description: __sdk::__query_builder::Col::new(table_name, "work_description"),
theme_prompt: __sdk::__query_builder::Col::new(table_name, "theme_prompt"),
cover_image_src: __sdk::__query_builder::Col::new(table_name, "cover_image_src"),
publication_status: __sdk::__query_builder::Col::new(table_name, "publication_status"),
play_count: __sdk::__query_builder::Col::new(table_name, "play_count"),
updated_at_micros: __sdk::__query_builder::Col::new(table_name, "updated_at_micros"),
published_at_micros: __sdk::__query_builder::Col::new(
table_name,
"published_at_micros",
),
generation_status: __sdk::__query_builder::Col::new(table_name, "generation_status"),
}
}
}

View File

@@ -0,0 +1,121 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_gallery_card_view_row_type::PuzzleClearGalleryCardViewRow;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_gallery_card_view`.
///
/// Obtain a handle from the [`PuzzleClearGalleryCardViewTableAccess::puzzle_clear_gallery_card_view`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_gallery_card_view()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_gallery_card_view().on_insert(...)`.
pub struct PuzzleClearGalleryCardViewTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearGalleryCardViewRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_gallery_card_view`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearGalleryCardViewTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearGalleryCardViewTableHandle`], which mediates access to the table `puzzle_clear_gallery_card_view`.
fn puzzle_clear_gallery_card_view(&self) -> PuzzleClearGalleryCardViewTableHandle<'_>;
}
impl PuzzleClearGalleryCardViewTableAccess for super::RemoteTables {
fn puzzle_clear_gallery_card_view(&self) -> PuzzleClearGalleryCardViewTableHandle<'_> {
PuzzleClearGalleryCardViewTableHandle {
imp: self
.imp
.get_table::<PuzzleClearGalleryCardViewRow>("puzzle_clear_gallery_card_view"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearGalleryCardViewInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearGalleryCardViewDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearGalleryCardViewTableHandle<'ctx> {
type Row = PuzzleClearGalleryCardViewRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearGalleryCardViewRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearGalleryCardViewInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearGalleryCardViewInsertCallbackId {
PuzzleClearGalleryCardViewInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearGalleryCardViewInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearGalleryCardViewDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearGalleryCardViewDeleteCallbackId {
PuzzleClearGalleryCardViewDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearGalleryCardViewDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table = client_cache
.get_or_make_table::<PuzzleClearGalleryCardViewRow>("puzzle_clear_gallery_card_view");
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearGalleryCardViewRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse(
"TableUpdate<PuzzleClearGalleryCardViewRow>",
"TableUpdate",
)
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearGalleryCardViewRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_gallery_card_viewQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearGalleryCardViewRow`.
fn puzzle_clear_gallery_card_view(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearGalleryCardViewRow>;
}
impl puzzle_clear_gallery_card_viewQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_gallery_card_view(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearGalleryCardViewRow> {
__sdk::__query_builder::Table::new("puzzle_clear_gallery_card_view")
}
}

View File

@@ -0,0 +1,124 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
use super::puzzle_clear_image_asset_snapshot_type::PuzzleClearImageAssetSnapshot;
use super::puzzle_clear_pattern_group_snapshot_type::PuzzleClearPatternGroupSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearGalleryViewRow {
pub work_id: String,
pub profile_id: String,
pub owner_user_id: String,
pub source_session_id: String,
pub author_display_name: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset: Option<PuzzleClearImageAssetSnapshot>,
pub board_background_prompt: String,
pub card_back_image_src: Option<String>,
pub atlas_asset: PuzzleClearImageAssetSnapshot,
pub pattern_groups: Vec<PuzzleClearPatternGroupSnapshot>,
pub card_assets: Vec<PuzzleClearCardAssetSnapshot>,
pub cover_image_src: Option<String>,
pub publication_status: String,
pub publish_ready: bool,
pub play_count: u32,
pub generation_status: String,
pub updated_at_micros: i64,
pub published_at_micros: Option<i64>,
}
impl __sdk::InModule for PuzzleClearGalleryViewRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearGalleryViewRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearGalleryViewRowCols {
pub work_id: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub profile_id: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub source_session_id: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub author_display_name: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub work_title: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub work_description: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub theme_prompt: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub generate_board_background: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, bool>,
pub board_background_asset: __sdk::__query_builder::Col<
PuzzleClearGalleryViewRow,
Option<PuzzleClearImageAssetSnapshot>,
>,
pub board_background_prompt: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub card_back_image_src: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, Option<String>>,
pub atlas_asset:
__sdk::__query_builder::Col<PuzzleClearGalleryViewRow, PuzzleClearImageAssetSnapshot>,
pub pattern_groups: __sdk::__query_builder::Col<
PuzzleClearGalleryViewRow,
Vec<PuzzleClearPatternGroupSnapshot>,
>,
pub card_assets:
__sdk::__query_builder::Col<PuzzleClearGalleryViewRow, Vec<PuzzleClearCardAssetSnapshot>>,
pub cover_image_src: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, Option<String>>,
pub publication_status: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub publish_ready: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, bool>,
pub play_count: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, u32>,
pub generation_status: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, String>,
pub updated_at_micros: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, i64>,
pub published_at_micros: __sdk::__query_builder::Col<PuzzleClearGalleryViewRow, Option<i64>>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearGalleryViewRow {
type Cols = PuzzleClearGalleryViewRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearGalleryViewRowCols {
work_id: __sdk::__query_builder::Col::new(table_name, "work_id"),
profile_id: __sdk::__query_builder::Col::new(table_name, "profile_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
source_session_id: __sdk::__query_builder::Col::new(table_name, "source_session_id"),
author_display_name: __sdk::__query_builder::Col::new(
table_name,
"author_display_name",
),
work_title: __sdk::__query_builder::Col::new(table_name, "work_title"),
work_description: __sdk::__query_builder::Col::new(table_name, "work_description"),
theme_prompt: __sdk::__query_builder::Col::new(table_name, "theme_prompt"),
generate_board_background: __sdk::__query_builder::Col::new(
table_name,
"generate_board_background",
),
board_background_asset: __sdk::__query_builder::Col::new(
table_name,
"board_background_asset",
),
board_background_prompt: __sdk::__query_builder::Col::new(
table_name,
"board_background_prompt",
),
card_back_image_src: __sdk::__query_builder::Col::new(
table_name,
"card_back_image_src",
),
atlas_asset: __sdk::__query_builder::Col::new(table_name, "atlas_asset"),
pattern_groups: __sdk::__query_builder::Col::new(table_name, "pattern_groups"),
card_assets: __sdk::__query_builder::Col::new(table_name, "card_assets"),
cover_image_src: __sdk::__query_builder::Col::new(table_name, "cover_image_src"),
publication_status: __sdk::__query_builder::Col::new(table_name, "publication_status"),
publish_ready: __sdk::__query_builder::Col::new(table_name, "publish_ready"),
play_count: __sdk::__query_builder::Col::new(table_name, "play_count"),
generation_status: __sdk::__query_builder::Col::new(table_name, "generation_status"),
updated_at_micros: __sdk::__query_builder::Col::new(table_name, "updated_at_micros"),
published_at_micros: __sdk::__query_builder::Col::new(
table_name,
"published_at_micros",
),
}
}
}

View File

@@ -0,0 +1,120 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
use super::puzzle_clear_gallery_view_row_type::PuzzleClearGalleryViewRow;
use super::puzzle_clear_image_asset_snapshot_type::PuzzleClearImageAssetSnapshot;
use super::puzzle_clear_pattern_group_snapshot_type::PuzzleClearPatternGroupSnapshot;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_gallery_view`.
///
/// Obtain a handle from the [`PuzzleClearGalleryViewTableAccess::puzzle_clear_gallery_view`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_gallery_view()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_gallery_view().on_insert(...)`.
pub struct PuzzleClearGalleryViewTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearGalleryViewRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_gallery_view`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearGalleryViewTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearGalleryViewTableHandle`], which mediates access to the table `puzzle_clear_gallery_view`.
fn puzzle_clear_gallery_view(&self) -> PuzzleClearGalleryViewTableHandle<'_>;
}
impl PuzzleClearGalleryViewTableAccess for super::RemoteTables {
fn puzzle_clear_gallery_view(&self) -> PuzzleClearGalleryViewTableHandle<'_> {
PuzzleClearGalleryViewTableHandle {
imp: self
.imp
.get_table::<PuzzleClearGalleryViewRow>("puzzle_clear_gallery_view"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearGalleryViewInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearGalleryViewDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearGalleryViewTableHandle<'ctx> {
type Row = PuzzleClearGalleryViewRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearGalleryViewRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearGalleryViewInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearGalleryViewInsertCallbackId {
PuzzleClearGalleryViewInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearGalleryViewInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearGalleryViewDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearGalleryViewDeleteCallbackId {
PuzzleClearGalleryViewDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearGalleryViewDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table =
client_cache.get_or_make_table::<PuzzleClearGalleryViewRow>("puzzle_clear_gallery_view");
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearGalleryViewRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse("TableUpdate<PuzzleClearGalleryViewRow>", "TableUpdate")
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearGalleryViewRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_gallery_viewQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearGalleryViewRow`.
fn puzzle_clear_gallery_view(&self)
-> __sdk::__query_builder::Table<PuzzleClearGalleryViewRow>;
}
impl puzzle_clear_gallery_viewQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_gallery_view(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearGalleryViewRow> {
__sdk::__query_builder::Table::new("puzzle_clear_gallery_view")
}
}

View File

@@ -0,0 +1,22 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearImageAssetSnapshot {
pub asset_id: String,
pub image_src: String,
pub image_object_key: String,
pub asset_object_id: String,
pub generation_provider: String,
pub prompt: String,
pub width: u32,
pub height: u32,
}
impl __sdk::InModule for PuzzleClearImageAssetSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,22 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearPatternGroupSnapshot {
pub group_id: String,
pub shape: String,
pub width: u32,
pub height: u32,
pub atlas_x: u32,
pub atlas_y: u32,
pub atlas_width: u32,
pub atlas_height: u32,
}
impl __sdk::InModule for PuzzleClearPatternGroupSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,16 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunGetInput {
pub run_id: String,
pub owner_user_id: String,
}
impl __sdk::InModule for PuzzleClearRunGetInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,18 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunNextLevelInput {
pub run_id: String,
pub owner_user_id: String,
pub client_action_id: String,
pub started_at_ms: i64,
}
impl __sdk::InModule for PuzzleClearRunNextLevelInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_runtime_snapshot_type::PuzzleClearRuntimeSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunProcedureResult {
pub ok: bool,
pub run: Option<PuzzleClearRuntimeSnapshot>,
pub error_message: Option<String>,
}
impl __sdk::InModule for PuzzleClearRunProcedureResult {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,18 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunRetryLevelInput {
pub run_id: String,
pub owner_user_id: String,
pub client_action_id: String,
pub restarted_at_ms: i64,
}
impl __sdk::InModule for PuzzleClearRunRetryLevelInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunStartInput {
pub run_id: String,
pub owner_user_id: String,
pub profile_id: String,
pub client_event_id: String,
pub started_at_ms: i64,
}
impl __sdk::InModule for PuzzleClearRunStartInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,22 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunSwapInput {
pub run_id: String,
pub owner_user_id: String,
pub from_row: u32,
pub from_col: u32,
pub to_row: u32,
pub to_col: u32,
pub client_action_id: String,
pub swapped_at_ms: i64,
}
impl __sdk::InModule for PuzzleClearRunSwapInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,18 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRunTimeUpInput {
pub run_id: String,
pub owner_user_id: String,
pub client_action_id: String,
pub occurred_at_ms: i64,
}
impl __sdk::InModule for PuzzleClearRunTimeUpInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,83 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRuntimeRunRow {
pub run_id: String,
pub owner_user_id: String,
pub profile_id: String,
pub status: String,
pub level_index: u32,
pub clears_done: u32,
pub snapshot_json: String,
pub started_at_ms: i64,
pub finished_at_ms: i64,
pub created_at: __sdk::Timestamp,
pub updated_at: __sdk::Timestamp,
}
impl __sdk::InModule for PuzzleClearRuntimeRunRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearRuntimeRunRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearRuntimeRunRowCols {
pub run_id: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, String>,
pub profile_id: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, String>,
pub status: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, String>,
pub level_index: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, u32>,
pub clears_done: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, u32>,
pub snapshot_json: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, String>,
pub started_at_ms: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, i64>,
pub finished_at_ms: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, i64>,
pub created_at: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, __sdk::Timestamp>,
pub updated_at: __sdk::__query_builder::Col<PuzzleClearRuntimeRunRow, __sdk::Timestamp>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearRuntimeRunRow {
type Cols = PuzzleClearRuntimeRunRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearRuntimeRunRowCols {
run_id: __sdk::__query_builder::Col::new(table_name, "run_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
profile_id: __sdk::__query_builder::Col::new(table_name, "profile_id"),
status: __sdk::__query_builder::Col::new(table_name, "status"),
level_index: __sdk::__query_builder::Col::new(table_name, "level_index"),
clears_done: __sdk::__query_builder::Col::new(table_name, "clears_done"),
snapshot_json: __sdk::__query_builder::Col::new(table_name, "snapshot_json"),
started_at_ms: __sdk::__query_builder::Col::new(table_name, "started_at_ms"),
finished_at_ms: __sdk::__query_builder::Col::new(table_name, "finished_at_ms"),
created_at: __sdk::__query_builder::Col::new(table_name, "created_at"),
updated_at: __sdk::__query_builder::Col::new(table_name, "updated_at"),
}
}
}
/// Indexed column accessor struct for the table `PuzzleClearRuntimeRunRow`.
///
/// Provides typed access to indexed columns for query building.
pub struct PuzzleClearRuntimeRunRowIxCols {
pub owner_user_id: __sdk::__query_builder::IxCol<PuzzleClearRuntimeRunRow, String>,
pub profile_id: __sdk::__query_builder::IxCol<PuzzleClearRuntimeRunRow, String>,
pub run_id: __sdk::__query_builder::IxCol<PuzzleClearRuntimeRunRow, String>,
}
impl __sdk::__query_builder::HasIxCols for PuzzleClearRuntimeRunRow {
type IxCols = PuzzleClearRuntimeRunRowIxCols;
fn ix_cols(table_name: &'static str) -> Self::IxCols {
PuzzleClearRuntimeRunRowIxCols {
owner_user_id: __sdk::__query_builder::IxCol::new(table_name, "owner_user_id"),
profile_id: __sdk::__query_builder::IxCol::new(table_name, "profile_id"),
run_id: __sdk::__query_builder::IxCol::new(table_name, "run_id"),
}
}
}
impl __sdk::__query_builder::CanBeLookupTable for PuzzleClearRuntimeRunRow {}

View File

@@ -0,0 +1,162 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_runtime_run_row_type::PuzzleClearRuntimeRunRow;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_runtime_run`.
///
/// Obtain a handle from the [`PuzzleClearRuntimeRunTableAccess::puzzle_clear_runtime_run`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_runtime_run()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_runtime_run().on_insert(...)`.
pub struct PuzzleClearRuntimeRunTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearRuntimeRunRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_runtime_run`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearRuntimeRunTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearRuntimeRunTableHandle`], which mediates access to the table `puzzle_clear_runtime_run`.
fn puzzle_clear_runtime_run(&self) -> PuzzleClearRuntimeRunTableHandle<'_>;
}
impl PuzzleClearRuntimeRunTableAccess for super::RemoteTables {
fn puzzle_clear_runtime_run(&self) -> PuzzleClearRuntimeRunTableHandle<'_> {
PuzzleClearRuntimeRunTableHandle {
imp: self
.imp
.get_table::<PuzzleClearRuntimeRunRow>("puzzle_clear_runtime_run"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearRuntimeRunInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearRuntimeRunDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearRuntimeRunTableHandle<'ctx> {
type Row = PuzzleClearRuntimeRunRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearRuntimeRunRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearRuntimeRunInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearRuntimeRunInsertCallbackId {
PuzzleClearRuntimeRunInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearRuntimeRunInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearRuntimeRunDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearRuntimeRunDeleteCallbackId {
PuzzleClearRuntimeRunDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearRuntimeRunDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
pub struct PuzzleClearRuntimeRunUpdateCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::TableWithPrimaryKey for PuzzleClearRuntimeRunTableHandle<'ctx> {
type UpdateCallbackId = PuzzleClearRuntimeRunUpdateCallbackId;
fn on_update(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row, &Self::Row) + Send + 'static,
) -> PuzzleClearRuntimeRunUpdateCallbackId {
PuzzleClearRuntimeRunUpdateCallbackId(self.imp.on_update(Box::new(callback)))
}
fn remove_on_update(&self, callback: PuzzleClearRuntimeRunUpdateCallbackId) {
self.imp.remove_on_update(callback.0)
}
}
/// Access to the `run_id` unique index on the table `puzzle_clear_runtime_run`,
/// which allows point queries on the field of the same name
/// via the [`PuzzleClearRuntimeRunRunIdUnique::find`] method.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_runtime_run().run_id().find(...)`.
pub struct PuzzleClearRuntimeRunRunIdUnique<'ctx> {
imp: __sdk::UniqueConstraintHandle<PuzzleClearRuntimeRunRow, String>,
phantom: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
impl<'ctx> PuzzleClearRuntimeRunTableHandle<'ctx> {
/// Get a handle on the `run_id` unique index on the table `puzzle_clear_runtime_run`.
pub fn run_id(&self) -> PuzzleClearRuntimeRunRunIdUnique<'ctx> {
PuzzleClearRuntimeRunRunIdUnique {
imp: self.imp.get_unique_constraint::<String>("run_id"),
phantom: std::marker::PhantomData,
}
}
}
impl<'ctx> PuzzleClearRuntimeRunRunIdUnique<'ctx> {
/// Find the subscribed row whose `run_id` column value is equal to `col_val`,
/// if such a row is present in the client cache.
pub fn find(&self, col_val: &String) -> Option<PuzzleClearRuntimeRunRow> {
self.imp.find(col_val)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table =
client_cache.get_or_make_table::<PuzzleClearRuntimeRunRow>("puzzle_clear_runtime_run");
_table.add_unique_constraint::<String>("run_id", |row| &row.run_id);
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearRuntimeRunRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse("TableUpdate<PuzzleClearRuntimeRunRow>", "TableUpdate")
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearRuntimeRunRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_runtime_runQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearRuntimeRunRow`.
fn puzzle_clear_runtime_run(&self) -> __sdk::__query_builder::Table<PuzzleClearRuntimeRunRow>;
}
impl puzzle_clear_runtime_runQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_runtime_run(&self) -> __sdk::__query_builder::Table<PuzzleClearRuntimeRunRow> {
__sdk::__query_builder::Table::new("puzzle_clear_runtime_run")
}
}

View File

@@ -0,0 +1,30 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_board_snapshot_type::PuzzleClearBoardSnapshot;
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearRuntimeSnapshot {
pub run_id: String,
pub profile_id: String,
pub owner_user_id: String,
pub status: String,
pub level_index: u32,
pub clears_done: u32,
pub target_clears: u32,
pub level_duration_seconds: u32,
pub level_started_at_ms: u64,
pub board: PuzzleClearBoardSnapshot,
pub ready_columns: Vec<Vec<PuzzleClearCardAssetSnapshot>>,
pub started_at_ms: u64,
pub finished_at_ms: Option<u64>,
}
impl __sdk::InModule for PuzzleClearRuntimeSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,16 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkGetInput {
pub profile_id: String,
pub owner_user_id: String,
}
impl __sdk::InModule for PuzzleClearWorkGetInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_work_snapshot_type::PuzzleClearWorkSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkProcedureResult {
pub ok: bool,
pub work: Option<PuzzleClearWorkSnapshot>,
pub error_message: Option<String>,
}
impl __sdk::InModule for PuzzleClearWorkProcedureResult {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,139 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkProfileRow {
pub profile_id: String,
pub work_id: String,
pub owner_user_id: String,
pub source_session_id: String,
pub author_display_name: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset_json: String,
pub board_background_prompt: Option<String>,
pub card_back_image_src: String,
pub atlas_asset_json: String,
pub pattern_groups_json: String,
pub card_assets_json: String,
pub cover_image_src: String,
pub generation_status: String,
pub publication_status: String,
pub play_count: u32,
pub updated_at: __sdk::Timestamp,
pub published_at: Option<__sdk::Timestamp>,
pub visible: bool,
}
impl __sdk::InModule for PuzzleClearWorkProfileRow {
type Module = super::RemoteModule;
}
/// Column accessor struct for the table `PuzzleClearWorkProfileRow`.
///
/// Provides typed access to columns for query building.
pub struct PuzzleClearWorkProfileRowCols {
pub profile_id: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub work_id: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub owner_user_id: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub source_session_id: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub author_display_name: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub work_title: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub work_description: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub theme_prompt: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub generate_board_background: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, bool>,
pub board_background_asset_json: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub board_background_prompt:
__sdk::__query_builder::Col<PuzzleClearWorkProfileRow, Option<String>>,
pub card_back_image_src: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub atlas_asset_json: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub pattern_groups_json: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub card_assets_json: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub cover_image_src: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub generation_status: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub publication_status: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, String>,
pub play_count: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, u32>,
pub updated_at: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, __sdk::Timestamp>,
pub published_at:
__sdk::__query_builder::Col<PuzzleClearWorkProfileRow, Option<__sdk::Timestamp>>,
pub visible: __sdk::__query_builder::Col<PuzzleClearWorkProfileRow, bool>,
}
impl __sdk::__query_builder::HasCols for PuzzleClearWorkProfileRow {
type Cols = PuzzleClearWorkProfileRowCols;
fn cols(table_name: &'static str) -> Self::Cols {
PuzzleClearWorkProfileRowCols {
profile_id: __sdk::__query_builder::Col::new(table_name, "profile_id"),
work_id: __sdk::__query_builder::Col::new(table_name, "work_id"),
owner_user_id: __sdk::__query_builder::Col::new(table_name, "owner_user_id"),
source_session_id: __sdk::__query_builder::Col::new(table_name, "source_session_id"),
author_display_name: __sdk::__query_builder::Col::new(
table_name,
"author_display_name",
),
work_title: __sdk::__query_builder::Col::new(table_name, "work_title"),
work_description: __sdk::__query_builder::Col::new(table_name, "work_description"),
theme_prompt: __sdk::__query_builder::Col::new(table_name, "theme_prompt"),
generate_board_background: __sdk::__query_builder::Col::new(
table_name,
"generate_board_background",
),
board_background_asset_json: __sdk::__query_builder::Col::new(
table_name,
"board_background_asset_json",
),
board_background_prompt: __sdk::__query_builder::Col::new(
table_name,
"board_background_prompt",
),
card_back_image_src: __sdk::__query_builder::Col::new(
table_name,
"card_back_image_src",
),
atlas_asset_json: __sdk::__query_builder::Col::new(table_name, "atlas_asset_json"),
pattern_groups_json: __sdk::__query_builder::Col::new(
table_name,
"pattern_groups_json",
),
card_assets_json: __sdk::__query_builder::Col::new(table_name, "card_assets_json"),
cover_image_src: __sdk::__query_builder::Col::new(table_name, "cover_image_src"),
generation_status: __sdk::__query_builder::Col::new(table_name, "generation_status"),
publication_status: __sdk::__query_builder::Col::new(table_name, "publication_status"),
play_count: __sdk::__query_builder::Col::new(table_name, "play_count"),
updated_at: __sdk::__query_builder::Col::new(table_name, "updated_at"),
published_at: __sdk::__query_builder::Col::new(table_name, "published_at"),
visible: __sdk::__query_builder::Col::new(table_name, "visible"),
}
}
}
/// Indexed column accessor struct for the table `PuzzleClearWorkProfileRow`.
///
/// Provides typed access to indexed columns for query building.
pub struct PuzzleClearWorkProfileRowIxCols {
pub owner_user_id: __sdk::__query_builder::IxCol<PuzzleClearWorkProfileRow, String>,
pub profile_id: __sdk::__query_builder::IxCol<PuzzleClearWorkProfileRow, String>,
pub publication_status: __sdk::__query_builder::IxCol<PuzzleClearWorkProfileRow, String>,
}
impl __sdk::__query_builder::HasIxCols for PuzzleClearWorkProfileRow {
type IxCols = PuzzleClearWorkProfileRowIxCols;
fn ix_cols(table_name: &'static str) -> Self::IxCols {
PuzzleClearWorkProfileRowIxCols {
owner_user_id: __sdk::__query_builder::IxCol::new(table_name, "owner_user_id"),
profile_id: __sdk::__query_builder::IxCol::new(table_name, "profile_id"),
publication_status: __sdk::__query_builder::IxCol::new(
table_name,
"publication_status",
),
}
}
}
impl __sdk::__query_builder::CanBeLookupTable for PuzzleClearWorkProfileRow {}

View File

@@ -0,0 +1,165 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use super::puzzle_clear_work_profile_row_type::PuzzleClearWorkProfileRow;
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
/// Table handle for the table `puzzle_clear_work_profile`.
///
/// Obtain a handle from the [`PuzzleClearWorkProfileTableAccess::puzzle_clear_work_profile`] method on [`super::RemoteTables`],
/// like `ctx.db.puzzle_clear_work_profile()`.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_work_profile().on_insert(...)`.
pub struct PuzzleClearWorkProfileTableHandle<'ctx> {
imp: __sdk::TableHandle<PuzzleClearWorkProfileRow>,
ctx: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the table `puzzle_clear_work_profile`.
///
/// Implemented for [`super::RemoteTables`].
pub trait PuzzleClearWorkProfileTableAccess {
#[allow(non_snake_case)]
/// Obtain a [`PuzzleClearWorkProfileTableHandle`], which mediates access to the table `puzzle_clear_work_profile`.
fn puzzle_clear_work_profile(&self) -> PuzzleClearWorkProfileTableHandle<'_>;
}
impl PuzzleClearWorkProfileTableAccess for super::RemoteTables {
fn puzzle_clear_work_profile(&self) -> PuzzleClearWorkProfileTableHandle<'_> {
PuzzleClearWorkProfileTableHandle {
imp: self
.imp
.get_table::<PuzzleClearWorkProfileRow>("puzzle_clear_work_profile"),
ctx: std::marker::PhantomData,
}
}
}
pub struct PuzzleClearWorkProfileInsertCallbackId(__sdk::CallbackId);
pub struct PuzzleClearWorkProfileDeleteCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::Table for PuzzleClearWorkProfileTableHandle<'ctx> {
type Row = PuzzleClearWorkProfileRow;
type EventContext = super::EventContext;
fn count(&self) -> u64 {
self.imp.count()
}
fn iter(&self) -> impl Iterator<Item = PuzzleClearWorkProfileRow> + '_ {
self.imp.iter()
}
type InsertCallbackId = PuzzleClearWorkProfileInsertCallbackId;
fn on_insert(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearWorkProfileInsertCallbackId {
PuzzleClearWorkProfileInsertCallbackId(self.imp.on_insert(Box::new(callback)))
}
fn remove_on_insert(&self, callback: PuzzleClearWorkProfileInsertCallbackId) {
self.imp.remove_on_insert(callback.0)
}
type DeleteCallbackId = PuzzleClearWorkProfileDeleteCallbackId;
fn on_delete(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row) + Send + 'static,
) -> PuzzleClearWorkProfileDeleteCallbackId {
PuzzleClearWorkProfileDeleteCallbackId(self.imp.on_delete(Box::new(callback)))
}
fn remove_on_delete(&self, callback: PuzzleClearWorkProfileDeleteCallbackId) {
self.imp.remove_on_delete(callback.0)
}
}
pub struct PuzzleClearWorkProfileUpdateCallbackId(__sdk::CallbackId);
impl<'ctx> __sdk::TableWithPrimaryKey for PuzzleClearWorkProfileTableHandle<'ctx> {
type UpdateCallbackId = PuzzleClearWorkProfileUpdateCallbackId;
fn on_update(
&self,
callback: impl FnMut(&Self::EventContext, &Self::Row, &Self::Row) + Send + 'static,
) -> PuzzleClearWorkProfileUpdateCallbackId {
PuzzleClearWorkProfileUpdateCallbackId(self.imp.on_update(Box::new(callback)))
}
fn remove_on_update(&self, callback: PuzzleClearWorkProfileUpdateCallbackId) {
self.imp.remove_on_update(callback.0)
}
}
/// Access to the `profile_id` unique index on the table `puzzle_clear_work_profile`,
/// which allows point queries on the field of the same name
/// via the [`PuzzleClearWorkProfileProfileIdUnique::find`] method.
///
/// Users are encouraged not to explicitly reference this type,
/// but to directly chain method calls,
/// like `ctx.db.puzzle_clear_work_profile().profile_id().find(...)`.
pub struct PuzzleClearWorkProfileProfileIdUnique<'ctx> {
imp: __sdk::UniqueConstraintHandle<PuzzleClearWorkProfileRow, String>,
phantom: std::marker::PhantomData<&'ctx super::RemoteTables>,
}
impl<'ctx> PuzzleClearWorkProfileTableHandle<'ctx> {
/// Get a handle on the `profile_id` unique index on the table `puzzle_clear_work_profile`.
pub fn profile_id(&self) -> PuzzleClearWorkProfileProfileIdUnique<'ctx> {
PuzzleClearWorkProfileProfileIdUnique {
imp: self.imp.get_unique_constraint::<String>("profile_id"),
phantom: std::marker::PhantomData,
}
}
}
impl<'ctx> PuzzleClearWorkProfileProfileIdUnique<'ctx> {
/// Find the subscribed row whose `profile_id` column value is equal to `col_val`,
/// if such a row is present in the client cache.
pub fn find(&self, col_val: &String) -> Option<PuzzleClearWorkProfileRow> {
self.imp.find(col_val)
}
}
#[doc(hidden)]
pub(super) fn register_table(client_cache: &mut __sdk::ClientCache<super::RemoteModule>) {
let _table =
client_cache.get_or_make_table::<PuzzleClearWorkProfileRow>("puzzle_clear_work_profile");
_table.add_unique_constraint::<String>("profile_id", |row| &row.profile_id);
}
#[doc(hidden)]
pub(super) fn parse_table_update(
raw_updates: __ws::v2::TableUpdate,
) -> __sdk::Result<__sdk::TableUpdate<PuzzleClearWorkProfileRow>> {
__sdk::TableUpdate::parse_table_update(raw_updates).map_err(|e| {
__sdk::InternalError::failed_parse("TableUpdate<PuzzleClearWorkProfileRow>", "TableUpdate")
.with_cause(e)
.into()
})
}
#[allow(non_camel_case_types)]
/// Extension trait for query builder access to the table `PuzzleClearWorkProfileRow`.
///
/// Implemented for [`__sdk::QueryTableAccessor`].
pub trait puzzle_clear_work_profileQueryTableAccess {
#[allow(non_snake_case)]
/// Get a query builder for the table `PuzzleClearWorkProfileRow`.
fn puzzle_clear_work_profile(&self)
-> __sdk::__query_builder::Table<PuzzleClearWorkProfileRow>;
}
impl puzzle_clear_work_profileQueryTableAccess for __sdk::QueryTableAccessor {
fn puzzle_clear_work_profile(
&self,
) -> __sdk::__query_builder::Table<PuzzleClearWorkProfileRow> {
__sdk::__query_builder::Table::new("puzzle_clear_work_profile")
}
}

View File

@@ -0,0 +1,17 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkPublishInput {
pub profile_id: String,
pub owner_user_id: String,
pub published_at_micros: i64,
}
impl __sdk::InModule for PuzzleClearWorkPublishInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,40 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_card_asset_snapshot_type::PuzzleClearCardAssetSnapshot;
use super::puzzle_clear_image_asset_snapshot_type::PuzzleClearImageAssetSnapshot;
use super::puzzle_clear_pattern_group_snapshot_type::PuzzleClearPatternGroupSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkSnapshot {
pub work_id: String,
pub profile_id: String,
pub owner_user_id: String,
pub source_session_id: String,
pub author_display_name: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset: Option<PuzzleClearImageAssetSnapshot>,
pub board_background_prompt: String,
pub card_back_image_src: Option<String>,
pub atlas_asset: PuzzleClearImageAssetSnapshot,
pub pattern_groups: Vec<PuzzleClearPatternGroupSnapshot>,
pub card_assets: Vec<PuzzleClearCardAssetSnapshot>,
pub cover_image_src: Option<String>,
pub publication_status: String,
pub publish_ready: bool,
pub play_count: u32,
pub generation_status: String,
pub updated_at_micros: i64,
pub published_at_micros: Option<i64>,
}
impl __sdk::InModule for PuzzleClearWorkSnapshot {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,23 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorkUpdateInput {
pub profile_id: String,
pub owner_user_id: String,
pub work_title: String,
pub work_description: String,
pub theme_prompt: String,
pub generate_board_background: bool,
pub board_background_asset_json: Option<String>,
pub board_background_prompt: String,
pub updated_at_micros: i64,
}
impl __sdk::InModule for PuzzleClearWorkUpdateInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,16 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorksListInput {
pub owner_user_id: String,
pub published_only: bool,
}
impl __sdk::InModule for PuzzleClearWorksListInput {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,19 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_work_snapshot_type::PuzzleClearWorkSnapshot;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
pub struct PuzzleClearWorksProcedureResult {
pub ok: bool,
pub items: Vec<PuzzleClearWorkSnapshot>,
pub error_message: Option<String>,
}
impl __sdk::InModule for PuzzleClearWorksProcedureResult {
type Module = super::RemoteModule;
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
use super::puzzle_clear_run_retry_level_input_type::PuzzleClearRunRetryLevelInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct RetryPuzzleClearLevelRunArgs {
pub input: PuzzleClearRunRetryLevelInput,
}
impl __sdk::InModule for RetryPuzzleClearLevelRunArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `retry_puzzle_clear_level_run`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait retry_puzzle_clear_level_run {
fn retry_puzzle_clear_level_run(&self, input: PuzzleClearRunRetryLevelInput) {
self.retry_puzzle_clear_level_run_then(input, |_, _| {});
}
fn retry_puzzle_clear_level_run_then(
&self,
input: PuzzleClearRunRetryLevelInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl retry_puzzle_clear_level_run for super::RemoteProcedures {
fn retry_puzzle_clear_level_run_then(
&self,
input: PuzzleClearRunRetryLevelInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"retry_puzzle_clear_level_run",
RetryPuzzleClearLevelRunArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
use super::puzzle_clear_run_start_input_type::PuzzleClearRunStartInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct StartPuzzleClearRuntimeRunArgs {
pub input: PuzzleClearRunStartInput,
}
impl __sdk::InModule for StartPuzzleClearRuntimeRunArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `start_puzzle_clear_runtime_run`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait start_puzzle_clear_runtime_run {
fn start_puzzle_clear_runtime_run(&self, input: PuzzleClearRunStartInput) {
self.start_puzzle_clear_runtime_run_then(input, |_, _| {});
}
fn start_puzzle_clear_runtime_run_then(
&self,
input: PuzzleClearRunStartInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl start_puzzle_clear_runtime_run for super::RemoteProcedures {
fn start_puzzle_clear_runtime_run_then(
&self,
input: PuzzleClearRunStartInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"start_puzzle_clear_runtime_run",
StartPuzzleClearRuntimeRunArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_run_procedure_result_type::PuzzleClearRunProcedureResult;
use super::puzzle_clear_run_swap_input_type::PuzzleClearRunSwapInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct SwapPuzzleClearCardsArgs {
pub input: PuzzleClearRunSwapInput,
}
impl __sdk::InModule for SwapPuzzleClearCardsArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `swap_puzzle_clear_cards`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait swap_puzzle_clear_cards {
fn swap_puzzle_clear_cards(&self, input: PuzzleClearRunSwapInput) {
self.swap_puzzle_clear_cards_then(input, |_, _| {});
}
fn swap_puzzle_clear_cards_then(
&self,
input: PuzzleClearRunSwapInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl swap_puzzle_clear_cards for super::RemoteProcedures {
fn swap_puzzle_clear_cards_then(
&self,
input: PuzzleClearRunSwapInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearRunProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearRunProcedureResult>(
"swap_puzzle_clear_cards",
SwapPuzzleClearCardsArgs { input },
__callback,
);
}
}

View File

@@ -0,0 +1,59 @@
// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE
// WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD.
#![allow(unused, clippy::all)]
use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws};
use super::puzzle_clear_work_procedure_result_type::PuzzleClearWorkProcedureResult;
use super::puzzle_clear_work_update_input_type::PuzzleClearWorkUpdateInput;
#[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)]
#[sats(crate = __lib)]
struct UpdatePuzzleClearWorkArgs {
pub input: PuzzleClearWorkUpdateInput,
}
impl __sdk::InModule for UpdatePuzzleClearWorkArgs {
type Module = super::RemoteModule;
}
#[allow(non_camel_case_types)]
/// Extension trait for access to the procedure `update_puzzle_clear_work`.
///
/// Implemented for [`super::RemoteProcedures`].
pub trait update_puzzle_clear_work {
fn update_puzzle_clear_work(&self, input: PuzzleClearWorkUpdateInput) {
self.update_puzzle_clear_work_then(input, |_, _| {});
}
fn update_puzzle_clear_work_then(
&self,
input: PuzzleClearWorkUpdateInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
);
}
impl update_puzzle_clear_work for super::RemoteProcedures {
fn update_puzzle_clear_work_then(
&self,
input: PuzzleClearWorkUpdateInput,
__callback: impl FnOnce(
&super::ProcedureEventContext,
Result<PuzzleClearWorkProcedureResult, __sdk::InternalError>,
) + Send
+ 'static,
) {
self.imp
.invoke_procedure_with_callback::<_, PuzzleClearWorkProcedureResult>(
"update_puzzle_clear_work",
UpdatePuzzleClearWorkArgs { input },
__callback,
);
}
}