miclockwork_network_program/instructions/
config_update.rs

1use {crate::state::*, anchor_lang::prelude::*};
2
3#[derive(Accounts)]
4#[instruction(settings: ConfigSettings)]
5pub struct ConfigUpdate<'info> {
6    #[account(mut)]
7    pub admin: Signer<'info>,
8
9    #[account(
10        mut, 
11        seeds = [SEED_CONFIG],
12        bump, 
13        has_one = admin
14    )]
15    pub config: Account<'info, Config>,
16}
17
18pub fn handler(ctx: Context<ConfigUpdate>, settings: ConfigSettings) -> Result<()> {
19    let config = &mut ctx.accounts.config;
20    config.update(settings)
21}