github.com/NpoolPlatform/chain-middleware@v0.0.0-20240228100535-eb1bcf896eb9/pkg/db/ent/schema/chainbase.go (about)

     1  package schema
     2  
     3  import (
     4  	"entgo.io/ent"
     5  	"entgo.io/ent/schema/field"
     6  	"github.com/NpoolPlatform/chain-middleware/pkg/db/mixin"
     7  	crudermixin "github.com/NpoolPlatform/libent-cruder/pkg/mixin"
     8  	basetypes "github.com/NpoolPlatform/message/npool/basetypes/v1"
     9  )
    10  
    11  // ChainBase holds the schema definition for the ChainBase entity.
    12  type ChainBase struct {
    13  	ent.Schema
    14  }
    15  
    16  func (ChainBase) Mixin() []ent.Mixin {
    17  	return []ent.Mixin{
    18  		mixin.TimeMixin{},
    19  		crudermixin.AutoIDMixin{},
    20  	}
    21  }
    22  
    23  // Fields of the ChainBase.
    24  func (ChainBase) Fields() []ent.Field {
    25  	return []ent.Field{
    26  		field.
    27  			String("name").
    28  			Optional().
    29  			Default(""),
    30  		field.
    31  			String("logo").
    32  			Optional().
    33  			Default(""),
    34  		field.
    35  			String("native_unit").
    36  			Optional().
    37  			Default(""),
    38  		field.
    39  			String("atomic_unit").
    40  			Optional().
    41  			Default(""),
    42  		field.
    43  			Uint32("unit_exp").
    44  			Optional().
    45  			Default(0),
    46  		field.
    47  			String("env").
    48  			Optional().
    49  			Default(""),
    50  		field.
    51  			String("chain_id").
    52  			Optional().
    53  			Default(""),
    54  		field.
    55  			String("nickname").
    56  			Optional().
    57  			Default(""),
    58  		field.
    59  			String("gas_type").
    60  			Optional().
    61  			Default(basetypes.GasType_DefaultGasType.String()),
    62  	}
    63  }
    64  
    65  // Edges of the ChainBase.
    66  func (ChainBase) Edges() []ent.Edge {
    67  	return nil
    68  }