SYMBOL INDEX (2205 symbols across 361 files) FILE: go-b2b-starter/cmd/api/main.go function main (line 26) | func main() { FILE: go-b2b-starter/internal/api/provider.go type moduleRoutes (line 20) | type moduleRoutes struct function Init (line 29) | func Init(container *dig.Container) error { function registerAPI (line 41) | func registerAPI(container *dig.Container) error { function setupDependencies (line 74) | func setupDependencies(container *dig.Container) error { FILE: go-b2b-starter/internal/bootstrap/init_mods.go type orgLookupAdapter (line 31) | type orgLookupAdapter struct method GetByStytchID (line 35) | func (a *orgLookupAdapter) GetByStytchID(ctx context.Context, stytchOr... type accLookupAdapter (line 40) | type accLookupAdapter struct method GetByEmail (line 44) | func (a *accLookupAdapter) GetByEmail(ctx context.Context, orgID int32... function InitMods (line 48) | func InitMods(container *dig.Container) { FILE: go-b2b-starter/internal/bootstrap/root.go function Execute (line 12) | func Execute() { FILE: go-b2b-starter/internal/db/adapters/cognitive_store.go type EmbeddingStore (line 11) | type EmbeddingStore interface type ChatStore (line 21) | type ChatStore interface type VectorHelper (line 38) | type VectorHelper interface FILE: go-b2b-starter/internal/db/adapters/document_store.go type DocumentStore (line 10) | type DocumentStore interface FILE: go-b2b-starter/internal/db/adapters/file_asset_store.go type FileAssetStore (line 11) | type FileAssetStore interface FILE: go-b2b-starter/internal/db/adapters/organization_store.go type OrganizationStore (line 11) | type OrganizationStore interface type AccountStore (line 25) | type AccountStore interface FILE: go-b2b-starter/internal/db/adapters/subscription_store.go type SubscriptionStore (line 10) | type SubscriptionStore interface FILE: go-b2b-starter/internal/db/cmd/init.go function Init (line 7) | func Init(container *dig.Container) { FILE: go-b2b-starter/internal/db/cmd/providers.go function ProvideDependencies (line 9) | func ProvideDependencies(container *dig.Container) error { function ProvideDependenciesWithOptions (line 15) | func ProvideDependenciesWithOptions(container *dig.Container, opts db.In... FILE: go-b2b-starter/internal/db/core/connection.go type Connection (line 9) | type Connection interface type Pool (line 30) | type Pool interface type PoolStats (line 47) | type PoolStats struct type Rows (line 55) | type Rows interface type Row (line 70) | type Row interface FILE: go-b2b-starter/internal/db/core/errors.go type ErrTxRollbackFailed (line 27) | type ErrTxRollbackFailed struct method Error (line 32) | func (e ErrTxRollbackFailed) Error() string { method Unwrap (line 36) | func (e ErrTxRollbackFailed) Unwrap() error { type ErrTxCommitFailed (line 41) | type ErrTxCommitFailed struct method Error (line 45) | func (e ErrTxCommitFailed) Error() string { method Unwrap (line 49) | func (e ErrTxCommitFailed) Unwrap() error { type ErrConstraintViolation (line 54) | type ErrConstraintViolation struct method Error (line 59) | func (e ErrConstraintViolation) Error() string { function IsNoRowsError (line 64) | func IsNoRowsError(err error) bool { function IsConstraintError (line 69) | func IsConstraintError(err error) bool { function IsTimeoutError (line 75) | func IsTimeoutError(err error) bool { FILE: go-b2b-starter/internal/db/core/transaction.go type Transaction (line 6) | type Transaction interface type TxFunc (line 17) | type TxFunc function WithTransaction (line 21) | func WithTransaction(ctx context.Context, pool Pool, fn TxFunc) error { FILE: go-b2b-starter/internal/db/helpers/helpers.go function ToPgText (line 14) | func ToPgText(s string) pgtype.Text { function FromPgText (line 22) | func FromPgText(t pgtype.Text) string { function ToPgInt4 (line 30) | func ToPgInt4(i int32) pgtype.Int4 { function ToPgInt4Ptr (line 35) | func ToPgInt4Ptr(i *int32) pgtype.Int4 { function FromPgInt4 (line 43) | func FromPgInt4(i pgtype.Int4) int32 { function ToPgBool (line 51) | func ToPgBool(b bool) pgtype.Bool { function ToPgBoolPtr (line 56) | func ToPgBoolPtr(b *bool) pgtype.Bool { function FromPgBool (line 64) | func FromPgBool(b pgtype.Bool) bool { function ToJSONB (line 72) | func ToJSONB(m map[string]any) []byte { function FromJSONB (line 84) | func FromJSONB(b []byte) map[string]any { function ToVector (line 96) | func ToVector(embedding []float64) pgvector.Vector { function FromVector (line 106) | func FromVector(v pgvector.Vector) []float64 { FILE: go-b2b-starter/internal/db/inject.go function Inject (line 34) | func Inject(container *dig.Container) error { function provideDBPool (line 69) | func provideDBPool(config postgres.Config) (*pgxpool.Pool, error) { function provideSQLCStore (line 74) | func provideSQLCStore(pool *pgxpool.Pool) sqlc.Store { function provideSQLDB (line 79) | func provideSQLDB(pool *pgxpool.Pool) *sql.DB { function provideDBManager (line 86) | func provideDBManager(config postgres.Config, pool *pgxpool.Pool) *postg... function registerDomainStores (line 92) | func registerDomainStores(container *dig.Container) error { type InjectOptions (line 205) | type InjectOptions struct function InjectWithOptions (line 214) | func InjectWithOptions(container *dig.Container, opts InjectOptions) err... FILE: go-b2b-starter/internal/db/postgres/adapter_impl/cognitive_store.go type embeddingStore (line 11) | type embeddingStore struct method CreateDocumentEmbedding (line 19) | func (s *embeddingStore) CreateDocumentEmbedding(ctx context.Context, ... method GetDocumentEmbeddingByID (line 23) | func (s *embeddingStore) GetDocumentEmbeddingByID(ctx context.Context,... method GetDocumentEmbeddingsByDocumentID (line 27) | func (s *embeddingStore) GetDocumentEmbeddingsByDocumentID(ctx context... method SearchSimilarDocuments (line 31) | func (s *embeddingStore) SearchSimilarDocuments(ctx context.Context, a... method DeleteDocumentEmbeddings (line 35) | func (s *embeddingStore) DeleteDocumentEmbeddings(ctx context.Context,... method CountDocumentEmbeddingsByOrganization (line 39) | func (s *embeddingStore) CountDocumentEmbeddingsByOrganization(ctx con... function NewEmbeddingStore (line 15) | func NewEmbeddingStore(store sqlc.Store) adapters.EmbeddingStore { type chatStore (line 44) | type chatStore struct method CreateChatSession (line 54) | func (s *chatStore) CreateChatSession(ctx context.Context, arg sqlc.Cr... method GetChatSessionByID (line 58) | func (s *chatStore) GetChatSessionByID(ctx context.Context, arg sqlc.G... method ListChatSessionsByAccount (line 62) | func (s *chatStore) ListChatSessionsByAccount(ctx context.Context, arg... method UpdateChatSessionTitle (line 66) | func (s *chatStore) UpdateChatSessionTitle(ctx context.Context, arg sq... method DeleteChatSession (line 70) | func (s *chatStore) DeleteChatSession(ctx context.Context, arg sqlc.De... method CreateChatMessage (line 76) | func (s *chatStore) CreateChatMessage(ctx context.Context, arg sqlc.Cr... method GetChatMessagesBySession (line 80) | func (s *chatStore) GetChatMessagesBySession(ctx context.Context, sess... method GetRecentChatMessages (line 84) | func (s *chatStore) GetRecentChatMessages(ctx context.Context, arg sql... method CountChatMessagesBySession (line 88) | func (s *chatStore) CountChatMessagesBySession(ctx context.Context, se... method DeleteChatMessage (line 92) | func (s *chatStore) DeleteChatMessage(ctx context.Context, id int32) e... function NewChatStore (line 48) | func NewChatStore(store sqlc.Store) adapters.ChatStore { FILE: go-b2b-starter/internal/db/postgres/adapter_impl/document_store.go type documentStore (line 11) | type documentStore struct method CreateDocument (line 19) | func (s *documentStore) CreateDocument(ctx context.Context, arg sqlc.C... method GetDocumentByID (line 23) | func (s *documentStore) GetDocumentByID(ctx context.Context, arg sqlc.... method GetDocumentByFileAssetID (line 27) | func (s *documentStore) GetDocumentByFileAssetID(ctx context.Context, ... method ListDocumentsByOrganization (line 31) | func (s *documentStore) ListDocumentsByOrganization(ctx context.Contex... method ListDocumentsByStatus (line 35) | func (s *documentStore) ListDocumentsByStatus(ctx context.Context, arg... method UpdateDocumentStatus (line 39) | func (s *documentStore) UpdateDocumentStatus(ctx context.Context, arg ... method UpdateDocumentExtractedText (line 43) | func (s *documentStore) UpdateDocumentExtractedText(ctx context.Contex... method UpdateDocument (line 47) | func (s *documentStore) UpdateDocument(ctx context.Context, arg sqlc.U... method DeleteDocument (line 51) | func (s *documentStore) DeleteDocument(ctx context.Context, arg sqlc.D... method CountDocumentsByOrganization (line 55) | func (s *documentStore) CountDocumentsByOrganization(ctx context.Conte... method CountDocumentsByStatus (line 59) | func (s *documentStore) CountDocumentsByStatus(ctx context.Context, ar... function NewDocumentStore (line 15) | func NewDocumentStore(store sqlc.Store) adapters.DocumentStore { FILE: go-b2b-starter/internal/db/postgres/adapter_impl/file_asset_store.go type fileAssetStore (line 12) | type fileAssetStore struct method CreateFileAsset (line 23) | func (f *fileAssetStore) CreateFileAsset(ctx context.Context, arg sqlc... method GetFileAssetByID (line 27) | func (f *fileAssetStore) GetFileAssetByID(ctx context.Context, id int3... method DeleteFileAsset (line 31) | func (f *fileAssetStore) DeleteFileAsset(ctx context.Context, id int32... method GetFileAssetsByEntity (line 35) | func (f *fileAssetStore) GetFileAssetsByEntity(ctx context.Context, ar... method GetFileAssetsByEntityAndPurpose (line 39) | func (f *fileAssetStore) GetFileAssetsByEntityAndPurpose(ctx context.C... method GetFileAssetsByCategory (line 44) | func (f *fileAssetStore) GetFileAssetsByCategory(ctx context.Context, ... method GetFileAssetsByContext (line 48) | func (f *fileAssetStore) GetFileAssetsByContext(ctx context.Context, c... method UpdateFileAsset (line 53) | func (f *fileAssetStore) UpdateFileAsset(ctx context.Context, arg sqlc... method GetFileAssetByStoragePath (line 58) | func (f *fileAssetStore) GetFileAssetByStoragePath(ctx context.Context... method ListFileAssets (line 62) | func (f *fileAssetStore) ListFileAssets(ctx context.Context, arg sqlc.... method GetFileCategories (line 67) | func (f *fileAssetStore) GetFileCategories(ctx context.Context) ([]sql... method GetFileContexts (line 71) | func (f *fileAssetStore) GetFileContexts(ctx context.Context) ([]sqlc.... function NewFileAssetStore (line 16) | func NewFileAssetStore(store sqlc.Store) adapters.FileAssetStore { FILE: go-b2b-starter/internal/db/postgres/adapter_impl/organization_store.go type organizationStore (line 12) | type organizationStore struct method GetOrganizationByID (line 20) | func (s *organizationStore) GetOrganizationByID(ctx context.Context, i... method GetOrganizationBySlug (line 24) | func (s *organizationStore) GetOrganizationBySlug(ctx context.Context,... method GetOrganizationByStytchID (line 28) | func (s *organizationStore) GetOrganizationByStytchID(ctx context.Cont... method GetOrganizationByUserEmail (line 32) | func (s *organizationStore) GetOrganizationByUserEmail(ctx context.Con... method CreateOrganization (line 36) | func (s *organizationStore) CreateOrganization(ctx context.Context, ar... method UpdateOrganization (line 40) | func (s *organizationStore) UpdateOrganization(ctx context.Context, ar... method UpdateOrganizationStytchInfo (line 44) | func (s *organizationStore) UpdateOrganizationStytchInfo(ctx context.C... method ListOrganizations (line 48) | func (s *organizationStore) ListOrganizations(ctx context.Context, arg... method DeleteOrganization (line 52) | func (s *organizationStore) DeleteOrganization(ctx context.Context, id... method GetOrganizationStats (line 56) | func (s *organizationStore) GetOrganizationStats(ctx context.Context, ... function NewOrganizationStore (line 16) | func NewOrganizationStore(store sqlc.Store) adapters.OrganizationStore { type accountStore (line 61) | type accountStore struct method CreateAccount (line 69) | func (s *accountStore) CreateAccount(ctx context.Context, arg sqlc.Cre... method GetAccountByID (line 73) | func (s *accountStore) GetAccountByID(ctx context.Context, arg sqlc.Ge... method GetAccountByEmail (line 77) | func (s *accountStore) GetAccountByEmail(ctx context.Context, arg sqlc... method ListAccountsByOrganization (line 81) | func (s *accountStore) ListAccountsByOrganization(ctx context.Context,... method UpdateAccount (line 85) | func (s *accountStore) UpdateAccount(ctx context.Context, arg sqlc.Upd... method UpdateAccountStytchInfo (line 89) | func (s *accountStore) UpdateAccountStytchInfo(ctx context.Context, ar... method UpdateAccountLastLogin (line 93) | func (s *accountStore) UpdateAccountLastLogin(ctx context.Context, arg... method DeleteAccount (line 97) | func (s *accountStore) DeleteAccount(ctx context.Context, arg sqlc.Del... method GetAccountOrganization (line 101) | func (s *accountStore) GetAccountOrganization(ctx context.Context, id ... method CheckAccountPermission (line 105) | func (s *accountStore) CheckAccountPermission(ctx context.Context, arg... method GetAccountStats (line 109) | func (s *accountStore) GetAccountStats(ctx context.Context, id int32) ... function NewAccountStore (line 65) | func NewAccountStore(store sqlc.Store) adapters.AccountStore { FILE: go-b2b-starter/internal/db/postgres/adapter_impl/subscription_store.go type subscriptionStore (line 11) | type subscriptionStore struct method GetSubscriptionByOrgID (line 21) | func (s *subscriptionStore) GetSubscriptionByOrgID(ctx context.Context... method GetSubscriptionBySubscriptionID (line 25) | func (s *subscriptionStore) GetSubscriptionBySubscriptionID(ctx contex... method UpsertSubscription (line 29) | func (s *subscriptionStore) UpsertSubscription(ctx context.Context, ar... method DeleteSubscription (line 33) | func (s *subscriptionStore) DeleteSubscription(ctx context.Context, or... method ListActiveSubscriptions (line 37) | func (s *subscriptionStore) ListActiveSubscriptions(ctx context.Contex... method GetQuotaByOrgID (line 43) | func (s *subscriptionStore) GetQuotaByOrgID(ctx context.Context, organ... method UpsertQuota (line 47) | func (s *subscriptionStore) UpsertQuota(ctx context.Context, arg sqlc.... method DecrementInvoiceCount (line 51) | func (s *subscriptionStore) DecrementInvoiceCount(ctx context.Context,... method ResetQuotaForPeriod (line 55) | func (s *subscriptionStore) ResetQuotaForPeriod(ctx context.Context, a... method GetQuotaStatus (line 61) | func (s *subscriptionStore) GetQuotaStatus(ctx context.Context, organi... method ListQuotasNearLimit (line 65) | func (s *subscriptionStore) ListQuotasNearLimit(ctx context.Context, t... function NewSubscriptionStore (line 15) | func NewSubscriptionStore(store sqlc.Store) adapters.SubscriptionStore { FILE: go-b2b-starter/internal/db/postgres/connection.go function connPool (line 12) | func connPool(cfg Config) (*pgxpool.Pool, error) { FILE: go-b2b-starter/internal/db/postgres/db_config.go type Config (line 10) | type Config struct method ConnectionString (line 29) | func (c Config) ConnectionString() string { function LoadConfig (line 35) | func LoadConfig() (Config, error) { FILE: go-b2b-starter/internal/db/postgres/init.go function InitDB (line 12) | func InitDB(cfg Config) (*pgxpool.Pool, error) { FILE: go-b2b-starter/internal/db/postgres/postgres_manager.go type PostgresManager (line 21) | type PostgresManager struct method CheckHealth (line 34) | func (pm *PostgresManager) CheckHealth(ctx context.Context) error { method RunMigrations (line 50) | func (pm *PostgresManager) RunMigrations() error { method RunSeeds (line 104) | func (pm *PostgresManager) RunSeeds() error { function NewPostgresManager (line 26) | func NewPostgresManager(config Config, connPool *pgxpool.Pool) *Postgres... FILE: go-b2b-starter/internal/db/postgres/retry.go constant maxRetries (line 11) | maxRetries = 3 constant retryDelay (line 12) | retryDelay = 100 * time.Millisecond constant maxRetryDelay (line 13) | maxRetryDelay = 1 * time.Second function RetryOperation (line 17) | func RetryOperation(ctx context.Context, operation func(context.Context)... function CreateDBContext (line 55) | func CreateDBContext(parent context.Context) (context.Context, context.C... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/cognitive.sql.go constant countChatMessagesBySession (line 15) | countChatMessagesBySession = `-- name: CountChatMessagesBySession :one method CountChatMessagesBySession (line 20) | func (q *Queries) CountChatMessagesBySession(ctx context.Context, sessio... constant countDocumentEmbeddingsByOrganization (line 27) | countDocumentEmbeddingsByOrganization = `-- name: CountDocumentEmbedding... method CountDocumentEmbeddingsByOrganization (line 32) | func (q *Queries) CountDocumentEmbeddingsByOrganization(ctx context.Cont... constant createChatMessage (line 39) | createChatMessage = `-- name: CreateChatMessage :one type CreateChatMessageParams (line 52) | type CreateChatMessageParams struct method CreateChatMessage (line 61) | func (q *Queries) CreateChatMessage(ctx context.Context, arg CreateChatM... constant createChatSession (line 82) | createChatSession = `-- name: CreateChatSession :one type CreateChatSessionParams (line 93) | type CreateChatSessionParams struct method CreateChatSession (line 100) | func (q *Queries) CreateChatSession(ctx context.Context, arg CreateChatS... constant createDocumentEmbedding (line 114) | createDocumentEmbedding = `-- name: CreateDocumentEmbedding :one type CreateDocumentEmbeddingParams (line 129) | type CreateDocumentEmbeddingParams struct method CreateDocumentEmbedding (line 140) | func (q *Queries) CreateDocumentEmbedding(ctx context.Context, arg Creat... constant deleteChatMessage (line 164) | deleteChatMessage = `-- name: DeleteChatMessage :exec method DeleteChatMessage (line 169) | func (q *Queries) DeleteChatMessage(ctx context.Context, id int32) error { constant deleteChatSession (line 174) | deleteChatSession = `-- name: DeleteChatSession :exec type DeleteChatSessionParams (line 179) | type DeleteChatSessionParams struct method DeleteChatSession (line 184) | func (q *Queries) DeleteChatSession(ctx context.Context, arg DeleteChatS... constant deleteDocumentEmbeddings (line 189) | deleteDocumentEmbeddings = `-- name: DeleteDocumentEmbeddings :exec type DeleteDocumentEmbeddingsParams (line 194) | type DeleteDocumentEmbeddingsParams struct method DeleteDocumentEmbeddings (line 199) | func (q *Queries) DeleteDocumentEmbeddings(ctx context.Context, arg Dele... constant getChatMessagesBySession (line 204) | getChatMessagesBySession = `-- name: GetChatMessagesBySession :many method GetChatMessagesBySession (line 210) | func (q *Queries) GetChatMessagesBySession(ctx context.Context, sessionI... constant getChatSessionByID (line 238) | getChatSessionByID = `-- name: GetChatSessionByID :one type GetChatSessionByIDParams (line 243) | type GetChatSessionByIDParams struct method GetChatSessionByID (line 248) | func (q *Queries) GetChatSessionByID(ctx context.Context, arg GetChatSes... constant getDocumentEmbeddingByID (line 262) | getDocumentEmbeddingByID = `-- name: GetDocumentEmbeddingByID :one type GetDocumentEmbeddingByIDParams (line 267) | type GetDocumentEmbeddingByIDParams struct method GetDocumentEmbeddingByID (line 272) | func (q *Queries) GetDocumentEmbeddingByID(ctx context.Context, arg GetD... constant getDocumentEmbeddingsByDocumentID (line 289) | getDocumentEmbeddingsByDocumentID = `-- name: GetDocumentEmbeddingsByDoc... type GetDocumentEmbeddingsByDocumentIDParams (line 295) | type GetDocumentEmbeddingsByDocumentIDParams struct method GetDocumentEmbeddingsByDocumentID (line 300) | func (q *Queries) GetDocumentEmbeddingsByDocumentID(ctx context.Context,... constant getRecentChatMessages (line 330) | getRecentChatMessages = `-- name: GetRecentChatMessages :many type GetRecentChatMessagesParams (line 337) | type GetRecentChatMessagesParams struct method GetRecentChatMessages (line 342) | func (q *Queries) GetRecentChatMessages(ctx context.Context, arg GetRece... constant listChatSessionsByAccount (line 370) | listChatSessionsByAccount = `-- name: ListChatSessionsByAccount :many type ListChatSessionsByAccountParams (line 377) | type ListChatSessionsByAccountParams struct method ListChatSessionsByAccount (line 384) | func (q *Queries) ListChatSessionsByAccount(ctx context.Context, arg Lis... constant searchSimilarDocuments (line 416) | searchSimilarDocuments = `-- name: SearchSimilarDocuments :many type SearchSimilarDocumentsParams (line 433) | type SearchSimilarDocumentsParams struct type SearchSimilarDocumentsRow (line 439) | type SearchSimilarDocumentsRow struct method SearchSimilarDocuments (line 451) | func (q *Queries) SearchSimilarDocuments(ctx context.Context, arg Search... constant updateChatSessionTitle (line 481) | updateChatSessionTitle = `-- name: UpdateChatSessionTitle :one type UpdateChatSessionTitleParams (line 488) | type UpdateChatSessionTitleParams struct method UpdateChatSessionTitle (line 494) | func (q *Queries) UpdateChatSessionTitle(ctx context.Context, arg Update... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/db.go type DBTX (line 14) | type DBTX interface function New (line 20) | func New(db DBTX) *Queries { type Queries (line 24) | type Queries struct method WithTx (line 28) | func (q *Queries) WithTx(tx pgx.Tx) *Queries { FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/documents.sql.go constant countDocumentsByOrganization (line 14) | countDocumentsByOrganization = `-- name: CountDocumentsByOrganization :one method CountDocumentsByOrganization (line 19) | func (q *Queries) CountDocumentsByOrganization(ctx context.Context, orga... constant countDocumentsByStatus (line 26) | countDocumentsByStatus = `-- name: CountDocumentsByStatus :one type CountDocumentsByStatusParams (line 31) | type CountDocumentsByStatusParams struct method CountDocumentsByStatus (line 36) | func (q *Queries) CountDocumentsByStatus(ctx context.Context, arg CountD... constant createDocument (line 43) | createDocument = `-- name: CreateDocument :one type CreateDocumentParams (line 60) | type CreateDocumentParams struct method CreateDocument (line 73) | func (q *Queries) CreateDocument(ctx context.Context, arg CreateDocument... constant deleteDocument (line 103) | deleteDocument = `-- name: DeleteDocument :exec type DeleteDocumentParams (line 108) | type DeleteDocumentParams struct method DeleteDocument (line 113) | func (q *Queries) DeleteDocument(ctx context.Context, arg DeleteDocument... constant getDocumentByFileAssetID (line 118) | getDocumentByFileAssetID = `-- name: GetDocumentByFileAssetID :one type GetDocumentByFileAssetIDParams (line 123) | type GetDocumentByFileAssetIDParams struct method GetDocumentByFileAssetID (line 128) | func (q *Queries) GetDocumentByFileAssetID(ctx context.Context, arg GetD... constant getDocumentByID (line 148) | getDocumentByID = `-- name: GetDocumentByID :one type GetDocumentByIDParams (line 153) | type GetDocumentByIDParams struct method GetDocumentByID (line 158) | func (q *Queries) GetDocumentByID(ctx context.Context, arg GetDocumentBy... constant listDocumentsByOrganization (line 178) | listDocumentsByOrganization = `-- name: ListDocumentsByOrganization :many type ListDocumentsByOrganizationParams (line 185) | type ListDocumentsByOrganizationParams struct method ListDocumentsByOrganization (line 191) | func (q *Queries) ListDocumentsByOrganization(ctx context.Context, arg L... constant listDocumentsByStatus (line 224) | listDocumentsByStatus = `-- name: ListDocumentsByStatus :many type ListDocumentsByStatusParams (line 231) | type ListDocumentsByStatusParams struct method ListDocumentsByStatus (line 238) | func (q *Queries) ListDocumentsByStatus(ctx context.Context, arg ListDoc... constant updateDocument (line 276) | updateDocument = `-- name: UpdateDocument :one type UpdateDocumentParams (line 286) | type UpdateDocumentParams struct method UpdateDocument (line 293) | func (q *Queries) UpdateDocument(ctx context.Context, arg UpdateDocument... constant updateDocumentExtractedText (line 318) | updateDocumentExtractedText = `-- name: UpdateDocumentExtractedText :one type UpdateDocumentExtractedTextParams (line 325) | type UpdateDocumentExtractedTextParams struct method UpdateDocumentExtractedText (line 331) | func (q *Queries) UpdateDocumentExtractedText(ctx context.Context, arg U... constant updateDocumentStatus (line 351) | updateDocumentStatus = `-- name: UpdateDocumentStatus :one type UpdateDocumentStatusParams (line 358) | type UpdateDocumentStatusParams struct method UpdateDocumentStatus (line 364) | func (q *Queries) UpdateDocumentStatus(ctx context.Context, arg UpdateDo... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/error.go constant ForeignKeyViolation (line 11) | ForeignKeyViolation = "23503" constant UniqueViolation (line 12) | UniqueViolation = "23505" function ErrorCode (line 21) | func ErrorCode(err error) string { FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/example_resource.sql.go constant assignResourceApproval (line 14) | assignResourceApproval = `-- name: AssignResourceApproval :exec type AssignResourceApprovalParams (line 22) | type AssignResourceApprovalParams struct method AssignResourceApproval (line 29) | func (q *Queries) AssignResourceApproval(ctx context.Context, arg Assign... constant attachFileToResource (line 34) | attachFileToResource = `-- name: AttachFileToResource :exec type AttachFileToResourceParams (line 41) | type AttachFileToResourceParams struct method AttachFileToResource (line 48) | func (q *Queries) AttachFileToResource(ctx context.Context, arg AttachFi... constant countResources (line 53) | countResources = `-- name: CountResources :one type CountResourcesParams (line 61) | type CountResourcesParams struct method CountResources (line 69) | func (q *Queries) CountResources(ctx context.Context, arg CountResources... constant createMinimalResource (line 81) | createMinimalResource = `-- name: CreateMinimalResource :one type CreateMinimalResourceParams (line 89) | type CreateMinimalResourceParams struct method CreateMinimalResource (line 97) | func (q *Queries) CreateMinimalResource(ctx context.Context, arg CreateM... constant createResource (line 129) | createResource = `-- name: CreateResource :one type CreateResourceParams (line 141) | type CreateResourceParams struct method CreateResource (line 159) | func (q *Queries) CreateResource(ctx context.Context, arg CreateResource... constant deleteResource (line 198) | deleteResource = `-- name: DeleteResource :exec type DeleteResourceParams (line 206) | type DeleteResourceParams struct method DeleteResource (line 213) | func (q *Queries) DeleteResource(ctx context.Context, arg DeleteResource... constant getRecentResources (line 218) | getRecentResources = `-- name: GetRecentResources :many type GetRecentResourcesParams (line 228) | type GetRecentResourcesParams struct type GetRecentResourcesRow (line 233) | type GetRecentResourcesRow struct method GetRecentResources (line 244) | func (q *Queries) GetRecentResources(ctx context.Context, arg GetRecentR... constant getResourceByID (line 272) | getResourceByID = `-- name: GetResourceByID :one type GetResourceByIDParams (line 278) | type GetResourceByIDParams struct method GetResourceByID (line 284) | func (q *Queries) GetResourceByID(ctx context.Context, arg GetResourceBy... constant getResourceByNumber (line 311) | getResourceByNumber = `-- name: GetResourceByNumber :one type GetResourceByNumberParams (line 316) | type GetResourceByNumberParams struct method GetResourceByNumber (line 321) | func (q *Queries) GetResourceByNumber(ctx context.Context, arg GetResour... constant getResourceStats (line 348) | getResourceStats = `-- name: GetResourceStats :one type GetResourceStatsRow (line 362) | type GetResourceStatsRow struct method GetResourceStats (line 374) | func (q *Queries) GetResourceStats(ctx context.Context, organizationID i... constant getResourcesByCreator (line 389) | getResourcesByCreator = `-- name: GetResourcesByCreator :many type GetResourcesByCreatorParams (line 398) | type GetResourcesByCreatorParams struct method GetResourcesByCreator (line 406) | func (q *Queries) GetResourcesByCreator(ctx context.Context, arg GetReso... constant hardDeleteResource (line 451) | hardDeleteResource = `-- name: HardDeleteResource :exec type HardDeleteResourceParams (line 456) | type HardDeleteResourceParams struct method HardDeleteResource (line 462) | func (q *Queries) HardDeleteResource(ctx context.Context, arg HardDelete... constant listResources (line 467) | listResources = `-- name: ListResources :many type ListResourcesParams (line 482) | type ListResourcesParams struct type ListResourcesRow (line 491) | type ListResourcesRow struct method ListResources (line 509) | func (q *Queries) ListResources(ctx context.Context, arg ListResourcesPa... constant searchResourcesByText (line 551) | searchResourcesByText = `-- name: SearchResourcesByText :many type SearchResourcesByTextParams (line 565) | type SearchResourcesByTextParams struct type SearchResourcesByTextRow (line 572) | type SearchResourcesByTextRow struct method SearchResourcesByText (line 586) | func (q *Queries) SearchResourcesByText(ctx context.Context, arg SearchR... constant updateResource (line 621) | updateResource = `-- name: UpdateResource :exec type UpdateResourceParams (line 632) | type UpdateResourceParams struct method UpdateResource (line 642) | func (q *Queries) UpdateResource(ctx context.Context, arg UpdateResource... constant updateResourceApprovalStatus (line 654) | updateResourceApprovalStatus = `-- name: UpdateResourceApprovalStatus :exec type UpdateResourceApprovalStatusParams (line 663) | type UpdateResourceApprovalStatusParams struct method UpdateResourceApprovalStatus (line 672) | func (q *Queries) UpdateResourceApprovalStatus(ctx context.Context, arg ... constant updateResourceProcessingData (line 683) | updateResourceProcessingData = `-- name: UpdateResourceProcessingData :exec type UpdateResourceProcessingDataParams (line 693) | type UpdateResourceProcessingDataParams struct method UpdateResourceProcessingData (line 703) | func (q *Queries) UpdateResourceProcessingData(ctx context.Context, arg ... constant updateResourceStatus (line 715) | updateResourceStatus = `-- name: UpdateResourceStatus :exec type UpdateResourceStatusParams (line 722) | type UpdateResourceStatusParams struct method UpdateResourceStatus (line 728) | func (q *Queries) UpdateResourceStatus(ctx context.Context, arg UpdateRe... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/exec.go method execTx (line 9) | func (store *SQLStore) execTx(ctx context.Context, fn func(*Queries) err... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/file_manager.sql.go constant createFileAsset (line 14) | createFileAsset = `-- name: CreateFileAsset :one type CreateFileAssetParams (line 35) | type CreateFileAssetParams struct method CreateFileAsset (line 51) | func (q *Queries) CreateFileAsset(ctx context.Context, arg CreateFileAss... constant deleteFileAsset (line 89) | deleteFileAsset = `-- name: DeleteFileAsset :exec method DeleteFileAsset (line 94) | func (q *Queries) DeleteFileAsset(ctx context.Context, id int32) error { constant getFileAssetByID (line 99) | getFileAssetByID = `-- name: GetFileAssetByID :one method GetFileAssetByID (line 104) | func (q *Queries) GetFileAssetByID(ctx context.Context, id int32) (FileM... constant getFileAssetByStoragePath (line 128) | getFileAssetByStoragePath = `-- name: GetFileAssetByStoragePath :one method GetFileAssetByStoragePath (line 133) | func (q *Queries) GetFileAssetByStoragePath(ctx context.Context, storage... constant getFileAssetsByCategory (line 157) | getFileAssetsByCategory = `-- name: GetFileAssetsByCategory :many type GetFileAssetsByCategoryRow (line 165) | type GetFileAssetsByCategoryRow struct method GetFileAssetsByCategory (line 185) | func (q *Queries) GetFileAssetsByCategory(ctx context.Context, name stri... constant getFileAssetsByContext (line 223) | getFileAssetsByContext = `-- name: GetFileAssetsByContext :many type GetFileAssetsByContextRow (line 231) | type GetFileAssetsByContextRow struct method GetFileAssetsByContext (line 251) | func (q *Queries) GetFileAssetsByContext(ctx context.Context, name strin... constant getFileAssetsByEntity (line 289) | getFileAssetsByEntity = `-- name: GetFileAssetsByEntity :many type GetFileAssetsByEntityParams (line 294) | type GetFileAssetsByEntityParams struct method GetFileAssetsByEntity (line 299) | func (q *Queries) GetFileAssetsByEntity(ctx context.Context, arg GetFile... constant getFileAssetsByEntityAndPurpose (line 336) | getFileAssetsByEntityAndPurpose = `-- name: GetFileAssetsByEntityAndPurp... type GetFileAssetsByEntityAndPurposeParams (line 342) | type GetFileAssetsByEntityAndPurposeParams struct method GetFileAssetsByEntityAndPurpose (line 348) | func (q *Queries) GetFileAssetsByEntityAndPurpose(ctx context.Context, a... constant getFileCategories (line 385) | getFileCategories = `-- name: GetFileCategories :many method GetFileCategories (line 389) | func (q *Queries) GetFileCategories(ctx context.Context) ([]FileManagerF... constant getFileContexts (line 409) | getFileContexts = `-- name: GetFileContexts :many method GetFileContexts (line 413) | func (q *Queries) GetFileContexts(ctx context.Context) ([]FileManagerFil... constant listFileAssets (line 433) | listFileAssets = `-- name: ListFileAssets :many type ListFileAssetsParams (line 442) | type ListFileAssetsParams struct type ListFileAssetsRow (line 447) | type ListFileAssetsRow struct method ListFileAssets (line 468) | func (q *Queries) ListFileAssets(ctx context.Context, arg ListFileAssets... constant updateFileAsset (line 507) | updateFileAsset = `-- name: UpdateFileAsset :exec type UpdateFileAssetParams (line 518) | type UpdateFileAssetParams struct method UpdateFileAsset (line 526) | func (q *Queries) UpdateFileAsset(ctx context.Context, arg UpdateFileAss... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/models.go type CognitiveChatMessage (line 13) | type CognitiveChatMessage struct type CognitiveChatSession (line 24) | type CognitiveChatSession struct type CognitiveDocumentEmbedding (line 34) | type CognitiveDocumentEmbedding struct type DocumentsDocument (line 49) | type DocumentsDocument struct type DuplicateCandidate (line 67) | type DuplicateCandidate struct type ExampleResource (line 86) | type ExampleResource struct type FileManagerFileAsset (line 112) | type FileManagerFileAsset struct type FileManagerFileCategory (line 131) | type FileManagerFileCategory struct type FileManagerFileContext (line 137) | type FileManagerFileContext struct type OrganizationsAccount (line 143) | type OrganizationsAccount struct type OrganizationsOrganization (line 165) | type OrganizationsOrganization struct type ResourceEmbedding (line 182) | type ResourceEmbedding struct type SubscriptionBillingQuotaTracking (line 196) | type SubscriptionBillingQuotaTracking struct type SubscriptionBillingSubscription (line 210) | type SubscriptionBillingSubscription struct FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/organizations.sql.go constant checkAccountPermission (line 14) | checkAccountPermission = `-- name: CheckAccountPermission :one type CheckAccountPermissionParams (line 25) | type CheckAccountPermissionParams struct type CheckAccountPermissionRow (line 30) | type CheckAccountPermissionRow struct method CheckAccountPermission (line 37) | func (q *Queries) CheckAccountPermission(ctx context.Context, arg CheckA... constant createAccount (line 49) | createAccount = `-- name: CreateAccount :one type CreateAccountParams (line 87) | type CreateAccountParams struct method CreateAccount (line 100) | func (q *Queries) CreateAccount(ctx context.Context, arg CreateAccountPa... constant createOrganization (line 131) | createOrganization = `-- name: CreateOrganization :one type CreateOrganizationParams (line 152) | type CreateOrganizationParams struct method CreateOrganization (line 158) | func (q *Queries) CreateOrganization(ctx context.Context, arg CreateOrga... constant deleteAccount (line 175) | deleteAccount = `-- name: DeleteAccount :exec type DeleteAccountParams (line 183) | type DeleteAccountParams struct method DeleteAccount (line 188) | func (q *Queries) DeleteAccount(ctx context.Context, arg DeleteAccountPa... constant deleteOrganization (line 193) | deleteOrganization = `-- name: DeleteOrganization :exec method DeleteOrganization (line 198) | func (q *Queries) DeleteOrganization(ctx context.Context, id int32) error { constant getAccountByEmail (line 203) | getAccountByEmail = `-- name: GetAccountByEmail :one type GetAccountByEmailParams (line 222) | type GetAccountByEmailParams struct method GetAccountByEmail (line 227) | func (q *Queries) GetAccountByEmail(ctx context.Context, arg GetAccountB... constant getAccountByID (line 248) | getAccountByID = `-- name: GetAccountByID :one type GetAccountByIDParams (line 267) | type GetAccountByIDParams struct method GetAccountByID (line 272) | func (q *Queries) GetAccountByID(ctx context.Context, arg GetAccountByID... constant getAccountOrganization (line 293) | getAccountOrganization = `-- name: GetAccountOrganization :one method GetAccountOrganization (line 309) | func (q *Queries) GetAccountOrganization(ctx context.Context, id int32) ... constant getAccountStats (line 326) | getAccountStats = `-- name: GetAccountStats :one type GetAccountStatsRow (line 348) | type GetAccountStatsRow struct method GetAccountStats (line 366) | func (q *Queries) GetAccountStats(ctx context.Context, id int32) (GetAcc... constant getOrganizationByID (line 389) | getOrganizationByID = `-- name: GetOrganizationByID :one method GetOrganizationByID (line 404) | func (q *Queries) GetOrganizationByID(ctx context.Context, id int32) (Or... constant getOrganizationBySlug (line 421) | getOrganizationBySlug = `-- name: GetOrganizationBySlug :one method GetOrganizationBySlug (line 436) | func (q *Queries) GetOrganizationBySlug(ctx context.Context, slug string... constant getOrganizationByStytchID (line 453) | getOrganizationByStytchID = `-- name: GetOrganizationByStytchID :one method GetOrganizationByStytchID (line 468) | func (q *Queries) GetOrganizationByStytchID(ctx context.Context, stytchO... constant getOrganizationByUserEmail (line 485) | getOrganizationByUserEmail = `-- name: GetOrganizationByUserEmail :one method GetOrganizationByUserEmail (line 506) | func (q *Queries) GetOrganizationByUserEmail(ctx context.Context, email ... constant getOrganizationStats (line 523) | getOrganizationStats = `-- name: GetOrganizationStats :one type GetOrganizationStatsRow (line 543) | type GetOrganizationStatsRow struct method GetOrganizationStats (line 558) | func (q *Queries) GetOrganizationStats(ctx context.Context, id int32) (G... constant listAccountsByOrganization (line 577) | listAccountsByOrganization = `-- name: ListAccountsByOrganization :many method ListAccountsByOrganization (line 597) | func (q *Queries) ListAccountsByOrganization(ctx context.Context, organi... constant listOrganizations (line 631) | listOrganizations = `-- name: ListOrganizations :many type ListOrganizationsParams (line 647) | type ListOrganizationsParams struct method ListOrganizations (line 652) | func (q *Queries) ListOrganizations(ctx context.Context, arg ListOrganiz... constant updateAccount (line 682) | updateAccount = `-- name: UpdateAccount :one type UpdateAccountParams (line 709) | type UpdateAccountParams struct method UpdateAccount (line 720) | func (q *Queries) UpdateAccount(ctx context.Context, arg UpdateAccountPa... constant updateAccountLastLogin (line 750) | updateAccountLastLogin = `-- name: UpdateAccountLastLogin :one type UpdateAccountLastLoginParams (line 772) | type UpdateAccountLastLoginParams struct method UpdateAccountLastLogin (line 777) | func (q *Queries) UpdateAccountLastLogin(ctx context.Context, arg Update... constant updateAccountStytchInfo (line 798) | updateAccountStytchInfo = `-- name: UpdateAccountStytchInfo :one type UpdateAccountStytchInfoParams (line 823) | type UpdateAccountStytchInfoParams struct method UpdateAccountStytchInfo (line 832) | func (q *Queries) UpdateAccountStytchInfo(ctx context.Context, arg Updat... constant updateOrganization (line 860) | updateOrganization = `-- name: UpdateOrganization :one type UpdateOrganizationParams (line 882) | type UpdateOrganizationParams struct method UpdateOrganization (line 891) | func (q *Queries) UpdateOrganization(ctx context.Context, arg UpdateOrga... constant updateOrganizationStytchInfo (line 915) | updateOrganizationStytchInfo = `-- name: UpdateOrganizationStytchInfo :one type UpdateOrganizationStytchInfoParams (line 935) | type UpdateOrganizationStytchInfoParams struct method UpdateOrganizationStytchInfo (line 942) | func (q *Queries) UpdateOrganizationStytchInfo(ctx context.Context, arg ... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/querier.go type Querier (line 13) | type Querier interface FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/resource_embeddings.sql.go constant confirmDuplicate (line 15) | confirmDuplicate = `-- name: ConfirmDuplicate :exec method ConfirmDuplicate (line 22) | func (q *Queries) ConfirmDuplicate(ctx context.Context, id int32) error { constant countDuplicatesByStatus (line 27) | countDuplicatesByStatus = `-- name: CountDuplicatesByStatus :one type CountDuplicatesByStatusParams (line 32) | type CountDuplicatesByStatusParams struct method CountDuplicatesByStatus (line 38) | func (q *Queries) CountDuplicatesByStatus(ctx context.Context, arg Count... constant countEmbeddingsByOrganization (line 45) | countEmbeddingsByOrganization = `-- name: CountEmbeddingsByOrganization ... method CountEmbeddingsByOrganization (line 51) | func (q *Queries) CountEmbeddingsByOrganization(ctx context.Context, org... constant createDuplicateCandidateExactMatch (line 58) | createDuplicateCandidateExactMatch = `-- name: CreateDuplicateCandidateE... type CreateDuplicateCandidateExactMatchParams (line 72) | type CreateDuplicateCandidateExactMatchParams struct method CreateDuplicateCandidateExactMatch (line 80) | func (q *Queries) CreateDuplicateCandidateExactMatch(ctx context.Context... constant createDuplicateCandidateLLM (line 106) | createDuplicateCandidateLLM = `-- name: CreateDuplicateCandidateLLM :one type CreateDuplicateCandidateLLMParams (line 123) | type CreateDuplicateCandidateLLMParams struct method CreateDuplicateCandidateLLM (line 135) | func (q *Queries) CreateDuplicateCandidateLLM(ctx context.Context, arg C... constant createResourceDuplicateCandidate (line 165) | createResourceDuplicateCandidate = `-- name: CreateResourceDuplicateCand... type CreateResourceDuplicateCandidateParams (line 183) | type CreateResourceDuplicateCandidateParams struct method CreateResourceDuplicateCandidate (line 198) | func (q *Queries) CreateResourceDuplicateCandidate(ctx context.Context, ... constant deleteDuplicateCandidate (line 230) | deleteDuplicateCandidate = `-- name: DeleteDuplicateCandidate :exec method DeleteDuplicateCandidate (line 236) | func (q *Queries) DeleteDuplicateCandidate(ctx context.Context, id int32... constant deleteResourceEmbedding (line 241) | deleteResourceEmbedding = `-- name: DeleteResourceEmbedding :exec type DeleteResourceEmbeddingParams (line 247) | type DeleteResourceEmbeddingParams struct method DeleteResourceEmbedding (line 254) | func (q *Queries) DeleteResourceEmbedding(ctx context.Context, arg Delet... constant dismissDuplicate (line 259) | dismissDuplicate = `-- name: DismissDuplicate :exec method DismissDuplicate (line 266) | func (q *Queries) DismissDuplicate(ctx context.Context, id int32) error { constant findExactDuplicateByHash (line 271) | findExactDuplicateByHash = `-- name: FindExactDuplicateByHash :many type FindExactDuplicateByHashParams (line 282) | type FindExactDuplicateByHashParams struct type FindExactDuplicateByHashRow (line 288) | type FindExactDuplicateByHashRow struct method FindExactDuplicateByHash (line 295) | func (q *Queries) FindExactDuplicateByHash(ctx context.Context, arg Find... constant findSimilarResources (line 315) | findSimilarResources = `-- name: FindSimilarResources :many type FindSimilarResourcesParams (line 329) | type FindSimilarResourcesParams struct type FindSimilarResourcesRow (line 337) | type FindSimilarResourcesRow struct method FindSimilarResources (line 354) | func (q *Queries) FindSimilarResources(ctx context.Context, arg FindSimi... constant getDuplicateCandidate (line 385) | getDuplicateCandidate = `-- name: GetDuplicateCandidate :one method GetDuplicateCandidate (line 391) | func (q *Queries) GetDuplicateCandidate(ctx context.Context, id int32) (... constant getResourceDuplicateStats (line 412) | getResourceDuplicateStats = `-- name: GetResourceDuplicateStats :one type GetResourceDuplicateStatsRow (line 425) | type GetResourceDuplicateStatsRow struct method GetResourceDuplicateStats (line 436) | func (q *Queries) GetResourceDuplicateStats(ctx context.Context, organiz... constant getResourceEmbedding (line 451) | getResourceEmbedding = `-- name: GetResourceEmbedding :one type GetResourceEmbeddingParams (line 457) | type GetResourceEmbeddingParams struct method GetResourceEmbedding (line 463) | func (q *Queries) GetResourceEmbedding(ctx context.Context, arg GetResou... constant listDuplicateCandidatesForResource (line 479) | listDuplicateCandidatesForResource = `-- name: ListDuplicateCandidatesFo... type ListDuplicateCandidatesForResourceParams (line 485) | type ListDuplicateCandidatesForResourceParams struct method ListDuplicateCandidatesForResource (line 491) | func (q *Queries) ListDuplicateCandidatesForResource(ctx context.Context... constant listPendingDuplicates (line 525) | listPendingDuplicates = `-- name: ListPendingDuplicates :many type ListPendingDuplicatesParams (line 532) | type ListPendingDuplicatesParams struct method ListPendingDuplicates (line 539) | func (q *Queries) ListPendingDuplicates(ctx context.Context, arg ListPen... constant saveResourceEmbedding (line 573) | saveResourceEmbedding = `-- name: SaveResourceEmbedding :exec type SaveResourceEmbeddingParams (line 591) | type SaveResourceEmbeddingParams struct method SaveResourceEmbedding (line 603) | func (q *Queries) SaveResourceEmbedding(ctx context.Context, arg SaveRes... constant updateDuplicateCandidateStatus (line 614) | updateDuplicateCandidateStatus = `-- name: UpdateDuplicateCandidateStatu... type UpdateDuplicateCandidateStatusParams (line 620) | type UpdateDuplicateCandidateStatusParams struct method UpdateDuplicateCandidateStatus (line 626) | func (q *Queries) UpdateDuplicateCandidateStatus(ctx context.Context, ar... FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/store.go type Store (line 13) | type Store interface type SQLStore (line 17) | type SQLStore struct method WithTx (line 29) | func (store *SQLStore) WithTx(db DBTX) Store { method ExecTx (line 36) | func (store *SQLStore) ExecTx(ctx context.Context, fn func(*Queries) e... function NewStore (line 22) | func NewStore(connPool *pgxpool.Pool) Store { FILE: go-b2b-starter/internal/db/postgres/sqlc/gen/subscription_billing.sql.go constant decrementInvoiceCount (line 14) | decrementInvoiceCount = `-- name: DecrementInvoiceCount :one method DecrementInvoiceCount (line 24) | func (q *Queries) DecrementInvoiceCount(ctx context.Context, organizatio... constant deleteSubscription (line 41) | deleteSubscription = `-- name: DeleteSubscription :exec method DeleteSubscription (line 47) | func (q *Queries) DeleteSubscription(ctx context.Context, organizationID... constant getQuotaByOrgID (line 52) | getQuotaByOrgID = `-- name: GetQuotaByOrgID :one method GetQuotaByOrgID (line 59) | func (q *Queries) GetQuotaByOrgID(ctx context.Context, organizationID in... constant getQuotaStatus (line 76) | getQuotaStatus = `-- name: GetQuotaStatus :one type GetQuotaStatusRow (line 95) | type GetQuotaStatusRow struct method GetQuotaStatus (line 106) | func (q *Queries) GetQuotaStatus(ctx context.Context, organizationID int... constant getSubscriptionByOrgID (line 121) | getSubscriptionByOrgID = `-- name: GetSubscriptionByOrgID :one method GetSubscriptionByOrgID (line 128) | func (q *Queries) GetSubscriptionByOrgID(ctx context.Context, organizati... constant getSubscriptionBySubscriptionID (line 151) | getSubscriptionBySubscriptionID = `-- name: GetSubscriptionBySubscriptio... method GetSubscriptionBySubscriptionID (line 158) | func (q *Queries) GetSubscriptionBySubscriptionID(ctx context.Context, s... constant listActiveSubscriptions (line 181) | listActiveSubscriptions = `-- name: ListActiveSubscriptions :many method ListActiveSubscriptions (line 188) | func (q *Queries) ListActiveSubscriptions(ctx context.Context) ([]Subscr... constant listQuotasNearLimit (line 224) | listQuotasNearLimit = `-- name: ListQuotasNearLimit :many type ListQuotasNearLimitRow (line 237) | type ListQuotasNearLimitRow struct method ListQuotasNearLimit (line 252) | func (q *Queries) ListQuotasNearLimit(ctx context.Context, invoiceCount ... constant resetQuotaForPeriod (line 284) | resetQuotaForPeriod = `-- name: ResetQuotaForPeriod :one type ResetQuotaForPeriodParams (line 295) | type ResetQuotaForPeriodParams struct method ResetQuotaForPeriod (line 303) | func (q *Queries) ResetQuotaForPeriod(ctx context.Context, arg ResetQuot... constant upsertQuota (line 325) | upsertQuota = `-- name: UpsertQuota :one type UpsertQuotaParams (line 348) | type UpsertQuotaParams struct method UpsertQuota (line 357) | func (q *Queries) UpsertQuota(ctx context.Context, arg UpsertQuotaParams... constant upsertSubscription (line 380) | upsertSubscription = `-- name: UpsertSubscription :one type UpsertSubscriptionParams (line 415) | type UpsertSubscriptionParams struct method UpsertSubscription (line 431) | func (q *Queries) UpsertSubscription(ctx context.Context, arg UpsertSubs... FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000001_create_file_manager_schema.up.sql type file_manager (line 4) | CREATE TABLE file_manager.file_categories ( type file_manager (line 11) | CREATE TABLE file_manager.file_contexts ( type file_manager (line 17) | CREATE TABLE file_manager.file_assets ( type idx_file_assets_entity (line 37) | CREATE INDEX idx_file_assets_entity ON file_manager.file_assets(entity_t... type idx_file_assets_category (line 38) | CREATE INDEX idx_file_assets_category ON file_manager.file_assets(file_c... type idx_file_assets_context (line 39) | CREATE INDEX idx_file_assets_context ON file_manager.file_assets(file_co... type idx_file_assets_created_at (line 40) | CREATE INDEX idx_file_assets_created_at ON file_manager.file_assets(crea... FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000002_create_organizations_schema.up.sql type organizations (line 5) | CREATE TABLE organizations.organizations ( type organizations (line 24) | CREATE TABLE organizations.accounts ( type idx_organizations_slug (line 58) | CREATE INDEX idx_organizations_slug ON organizations.organizations(slug)... type idx_organizations_status (line 59) | CREATE INDEX idx_organizations_status ON organizations.organizations(sta... type idx_organizations_created_at (line 60) | CREATE INDEX idx_organizations_created_at ON organizations.organizations... type idx_organizations_stytch_org_id (line 61) | CREATE UNIQUE INDEX idx_organizations_stytch_org_id ON organizations.org... type idx_accounts_org_id (line 63) | CREATE INDEX idx_accounts_org_id ON organizations.accounts(organization_id) type idx_accounts_email (line 64) | CREATE INDEX idx_accounts_email ON organizations.accounts(email) type idx_accounts_status (line 65) | CREATE INDEX idx_accounts_status ON organizations.accounts(status) type idx_accounts_role (line 66) | CREATE INDEX idx_accounts_role ON organizations.accounts(role) type idx_accounts_stytch_member_id (line 67) | CREATE INDEX idx_accounts_stytch_member_id ON organizations.accounts(sty... function update_updated_at_column (line 70) | CREATE OR REPLACE FUNCTION update_updated_at_column() FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000004_create_subscription_billing_schema.up.sql type subscription_billing (line 5) | CREATE TABLE subscription_billing.subscriptions ( type subscription_billing (line 36) | CREATE TABLE subscription_billing.quota_tracking ( type idx_subscriptions_organization_id (line 60) | CREATE INDEX idx_subscriptions_organization_id ON subscription_billing.s... type idx_subscriptions_subscription_status (line 61) | CREATE INDEX idx_subscriptions_subscription_status ON subscription_billi... type idx_subscriptions_external_customer_id (line 62) | CREATE INDEX idx_subscriptions_external_customer_id ON subscription_bill... type idx_quota_tracking_organization_id (line 64) | CREATE INDEX idx_quota_tracking_organization_id ON subscription_billing.... type idx_quota_tracking_period_end (line 65) | CREATE INDEX idx_quota_tracking_period_end ON subscription_billing.quota... FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000006_create_example_resources.up.sql type example_resources (line 11) | CREATE TABLE IF NOT EXISTS example_resources ( type idx_example_resources_organization (line 48) | CREATE INDEX idx_example_resources_organization ON example_resources(org... type idx_example_resources_status (line 49) | CREATE INDEX idx_example_resources_status ON example_resources(status_id) type idx_example_resources_created_by (line 50) | CREATE INDEX idx_example_resources_created_by ON example_resources(creat... type idx_example_resources_file (line 51) | CREATE INDEX idx_example_resources_file ON example_resources(file_id) type idx_example_resources_approval_assigned (line 52) | CREATE INDEX idx_example_resources_approval_assigned ON example_resource... type idx_example_resources_created_at (line 53) | CREATE INDEX idx_example_resources_created_at ON example_resources(creat... type idx_example_resources_active (line 54) | CREATE INDEX idx_example_resources_active ON example_resources(is_active) type idx_example_resources_search (line 57) | CREATE INDEX idx_example_resources_search ON example_resources USING gin... function update_example_resources_updated_at (line 60) | CREATE OR REPLACE FUNCTION update_example_resources_updated_at() FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000007_create_resource_embeddings.up.sql type resource_embeddings (line 6) | CREATE TABLE resource_embeddings ( type idx_resource_embeddings_vector (line 21) | CREATE INDEX idx_resource_embeddings_vector type idx_resource_embeddings_organization (line 27) | CREATE INDEX idx_resource_embeddings_organization ON resource_embeddings... type idx_resource_embeddings_content_hash (line 28) | CREATE INDEX idx_resource_embeddings_content_hash ON resource_embeddings... type idx_resource_embeddings_resource (line 29) | CREATE INDEX idx_resource_embeddings_resource ON resource_embeddings(res... type duplicate_candidates (line 33) | CREATE TABLE duplicate_candidates ( type idx_duplicate_candidates_resource (line 51) | CREATE INDEX idx_duplicate_candidates_resource ON duplicate_candidates(r... type idx_duplicate_candidates_candidate (line 52) | CREATE INDEX idx_duplicate_candidates_candidate ON duplicate_candidates(... type idx_duplicate_candidates_organization (line 53) | CREATE INDEX idx_duplicate_candidates_organization ON duplicate_candidat... type idx_duplicate_candidates_status (line 54) | CREATE INDEX idx_duplicate_candidates_status ON duplicate_candidates(sta... type idx_duplicate_candidates_method (line 55) | CREATE INDEX idx_duplicate_candidates_method ON duplicate_candidates(det... type idx_duplicate_candidates_resource_org (line 58) | CREATE INDEX idx_duplicate_candidates_resource_org ON duplicate_candidat... function update_resource_embeddings_updated_at (line 61) | CREATE OR REPLACE FUNCTION update_resource_embeddings_updated_at() function update_duplicate_candidates_updated_at (line 74) | CREATE OR REPLACE FUNCTION update_duplicate_candidates_updated_at() FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000008_create_documents_schema.up.sql type documents (line 5) | CREATE TABLE documents.documents ( type idx_documents_organization (line 22) | CREATE INDEX idx_documents_organization ON documents.documents(organizat... type idx_documents_file_asset (line 23) | CREATE INDEX idx_documents_file_asset ON documents.documents(file_asset_id) type idx_documents_status (line 24) | CREATE INDEX idx_documents_status ON documents.documents(status) type idx_documents_created_at (line 25) | CREATE INDEX idx_documents_created_at ON documents.documents(created_at ... function documents (line 28) | CREATE OR REPLACE FUNCTION documents.update_documents_updated_at() FILE: go-b2b-starter/internal/db/postgres/sqlc/migrations/000009_create_cognitive_schema.up.sql type cognitive (line 8) | CREATE TABLE cognitive.document_embeddings ( type idx_doc_embeddings_vector (line 22) | CREATE INDEX idx_doc_embeddings_vector ON cognitive.document_embeddings type idx_doc_embeddings_organization (line 25) | CREATE INDEX idx_doc_embeddings_organization ON cognitive.document_embed... type idx_doc_embeddings_document (line 26) | CREATE INDEX idx_doc_embeddings_document ON cognitive.document_embedding... type idx_doc_embeddings_content_hash (line 27) | CREATE INDEX idx_doc_embeddings_content_hash ON cognitive.document_embed... type cognitive (line 30) | CREATE TABLE cognitive.chat_sessions ( type idx_chat_sessions_organization (line 39) | CREATE INDEX idx_chat_sessions_organization ON cognitive.chat_sessions(o... type idx_chat_sessions_account (line 40) | CREATE INDEX idx_chat_sessions_account ON cognitive.chat_sessions(accoun... type idx_chat_sessions_created_at (line 41) | CREATE INDEX idx_chat_sessions_created_at ON cognitive.chat_sessions(cre... type cognitive (line 44) | CREATE TABLE cognitive.chat_messages ( type idx_chat_messages_session (line 55) | CREATE INDEX idx_chat_messages_session ON cognitive.chat_messages(sessio... type idx_chat_messages_created_at (line 56) | CREATE INDEX idx_chat_messages_created_at ON cognitive.chat_messages(cre... function cognitive (line 59) | CREATE OR REPLACE FUNCTION cognitive.update_embeddings_updated_at() function cognitive (line 72) | CREATE OR REPLACE FUNCTION cognitive.update_sessions_updated_at() FILE: go-b2b-starter/internal/db/postgres/types_transform.go function Int16Ptr (line 19) | func Int16Ptr(i pgtype.Int2) *int16 { function Int32Ptr (line 27) | func Int32Ptr(i pgtype.Int4) *int32 { function Int64Ptr (line 35) | func Int64Ptr(i pgtype.Int8) *int64 { function Float32Ptr (line 43) | func Float32Ptr(f pgtype.Float4) *float32 { function Float64Ptr (line 51) | func Float64Ptr(f pgtype.Float8) *float64 { function StringPtr (line 59) | func StringPtr(t pgtype.Text) *string { function TimeStampPtr (line 67) | func TimeStampPtr(t pgtype.Timestamp) *time.Time { function TimeStampTzPtr (line 76) | func TimeStampTzPtr(t pgtype.Timestamptz) *time.Time { function TimePtr (line 85) | func TimePtr(t pgtype.Time) *time.Time { function BoolPtr (line 97) | func BoolPtr(b pgtype.Bool) *bool { function PgInt2 (line 106) | func PgInt2(i *int16) pgtype.Int2 { function PgInt4 (line 114) | func PgInt4(i *int32) pgtype.Int4 { function PgInt8 (line 122) | func PgInt8(i *int64) pgtype.Int8 { function PgFloat4 (line 130) | func PgFloat4(f *float32) pgtype.Float4 { function PgFloat8 (line 138) | func PgFloat8(f *float64) pgtype.Float8 { function PgText (line 146) | func PgText(s *string) pgtype.Text { function PgTimestamp (line 154) | func PgTimestamp(t *time.Time) pgtype.Timestamp { function PgTimestamptz (line 162) | func PgTimestamptz(t *time.Time) pgtype.Timestamptz { function PgTime (line 170) | func PgTime(t *time.Time) pgtype.Time { function PgBool (line 183) | func PgBool(b *bool) pgtype.Bool { function UUIDPtr (line 191) | func UUIDPtr(u pgtype.UUID) *uuid.UUID { function PgUUID (line 200) | func PgUUID(u *uuid.UUID) pgtype.UUID { function NumericPtr (line 211) | func NumericPtr(n pgtype.Numeric) *float64 { function Numeric (line 245) | func Numeric(f *float64) pgtype.Numeric { function NumericFromDecimal (line 261) | func NumericFromDecimal(d *decimal.Decimal) pgtype.Numeric { function NumericFromFloat32 (line 274) | func NumericFromFloat32(f float32) pgtype.Numeric { function Float32FromNumeric (line 284) | func Float32FromNumeric(n pgtype.Numeric) float32 { function DatePtr (line 320) | func DatePtr(d pgtype.Date) *time.Time { function PgDate (line 328) | func PgDate(t *time.Time) pgtype.Date { function PgTextFromString (line 336) | func PgTextFromString(s string) pgtype.Text { function StringFromPgText (line 344) | func StringFromPgText(t pgtype.Text) string { function PgInt4FromInt32 (line 352) | func PgInt4FromInt32(i int32) pgtype.Int4 { function Int32FromPgInt4 (line 357) | func Int32FromPgInt4(i pgtype.Int4) int32 { function ConvertWKBToPoint (line 364) | func ConvertWKBToPoint(wkbHex string) (*geomPkg.Point, error) { function ConvertWKBToPointString (line 387) | func ConvertWKBToPointString(wkbHex string) (string, error) { FILE: go-b2b-starter/internal/docs/api/handler.go type Handler (line 3) | type Handler struct function NewHandler (line 6) | func NewHandler() *Handler { FILE: go-b2b-starter/internal/docs/api/routes.go method Routes (line 11) | func (h *Handler) Routes(router *gin.RouterGroup, resolver domain.Middle... FILE: go-b2b-starter/internal/docs/cmd/init.go function Init (line 12) | func Init(container *dig.Container) { FILE: go-b2b-starter/internal/docs/gen/docs.go constant docTemplate (line 6) | docTemplate = `{ function init (line 1545) | func init() { FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/adapter.go type StytchAuthAdapter (line 52) | type StytchAuthAdapter struct method VerifyToken (line 132) | func (a *StytchAuthAdapter) VerifyToken(ctx context.Context, token str... method Client (line 160) | func (a *StytchAuthAdapter) Client() *b2bstytchapi.API { method Config (line 165) | func (a *StytchAuthAdapter) Config() *Config { method PolicyService (line 172) | func (a *StytchAuthAdapter) PolicyService() *RBACPolicyService { function NewStytchAuthAdapter (line 65) | func NewStytchAuthAdapter( function NewStytchAuthAdapterWithClient (line 102) | func NewStytchAuthAdapterWithClient( FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/config.go constant EnvTest (line 13) | EnvTest = "test" constant EnvLive (line 14) | EnvLive = "live" type Config (line 21) | type Config struct method Validate (line 137) | func (c *Config) Validate() error { function LoadConfig (line 65) | func LoadConfig() (*Config, error) { function NewConfigFromExisting (line 148) | func NewConfigFromExisting(projectID, secret, env, baseURL, jwksURL stri... FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/jwks_cache.go constant jwksCacheKeyPattern (line 19) | jwksCacheKeyPattern = "auth:stytch:jwks:key:%s" constant jwksCacheTTL (line 20) | jwksCacheTTL = 24 * time.Hour type JWKSCache (line 28) | type JWKSCache struct method GetPublicKey (line 68) | func (c *JWKSCache) GetPublicKey(ctx context.Context, kid string) (*rs... method fetchJWKS (line 133) | func (c *JWKSCache) fetchJWKS(ctx context.Context) (*JWKS, error) { method jwkToPublicKey (line 162) | func (c *JWKSCache) jwkToPublicKey(jwk *JWK) (*rsa.PublicKey, error) { method cachePublicKey (line 188) | func (c *JWKSCache) cachePublicKey(ctx context.Context, kid string, jw... method deserializePublicKey (line 210) | func (c *JWKSCache) deserializePublicKey(serialized *serializedPublicK... type JWKS (line 36) | type JWKS struct type JWK (line 41) | type JWK struct type serializedPublicKey (line 51) | type serializedPublicKey struct function NewJWKSCache (line 56) | func NewJWKSCache(jwksURL string, redisClient redis.Client, logger logge... FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/jwt_parser.go type JWTParser (line 15) | type JWTParser struct method ParseWithoutVerification (line 31) | func (p *JWTParser) ParseWithoutVerification(token string) (header map... method ExtractKeyID (line 65) | func (p *JWTParser) ExtractKeyID(token string) (string, error) { function NewJWTParser (line 17) | func NewJWTParser() *JWTParser { FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/mock_adapter.go type MockAuthAdapter (line 17) | type MockAuthAdapter struct method VerifyToken (line 32) | func (m *MockAuthAdapter) VerifyToken(ctx context.Context, token strin... method GetRolePermissions (line 60) | func (m *MockAuthAdapter) GetRolePermissions(ctx context.Context, role... method ValidatePermission (line 72) | func (m *MockAuthAdapter) ValidatePermission(ctx context.Context, iden... method RefreshSession (line 82) | func (m *MockAuthAdapter) RefreshSession(ctx context.Context, sessionT... function NewMockAuthAdapter (line 24) | func NewMockAuthAdapter(log logger.Logger) *MockAuthAdapter { FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/rbac_policy.go constant rbacPolicyCacheKey (line 19) | rbacPolicyCacheKey = "auth:stytch:rbac:policy" constant rbacPolicyCacheTTL (line 21) | rbacPolicyCacheTTL = 5 * time.Minute type RBACPolicyService (line 28) | type RBACPolicyService struct method GetRolePermissions (line 45) | func (s *RBACPolicyService) GetRolePermissions(ctx context.Context, ro... method getPolicy (line 71) | func (s *RBACPolicyService) getPolicy(ctx context.Context) (*rbac.Poli... method fetchPolicyFromStytch (line 99) | func (s *RBACPolicyService) fetchPolicyFromStytch(ctx context.Context)... method cachePolicy (line 120) | func (s *RBACPolicyService) cachePolicy(ctx context.Context, policy *r... method convertPermissions (line 142) | func (s *RBACPolicyService) convertPermissions(permissions []rbac.Poli... method expandWildcardActions (line 171) | func (s *RBACPolicyService) expandWildcardActions(resourceID string, a... function NewRBACPolicyService (line 34) | func NewRBACPolicyService(client *b2bstytchapi.API, redisClient redis.Cl... function normalizeRoleID (line 203) | func normalizeRoleID(roleID string) string { FILE: go-b2b-starter/internal/modules/auth/adapters/stytch/token_verifier.go type TokenVerifier (line 23) | type TokenVerifier struct method Verify (line 69) | func (v *TokenVerifier) Verify(ctx context.Context, token string) (*au... method verifyLocally (line 96) | func (v *TokenVerifier) verifyLocally(ctx context.Context, token strin... method verifyViaAPI (line 157) | func (v *TokenVerifier) verifyViaAPI(ctx context.Context, token string... method verifyWithoutSignature (line 210) | func (v *TokenVerifier) verifyWithoutSignature(ctx context.Context, to... method parseClaimsFromMap (line 232) | func (v *TokenVerifier) parseClaimsFromMap(claimsMap map[string]any) *... method validateClaims (line 322) | func (v *TokenVerifier) validateClaims(claims *internalClaims) error { method derivePermissions (line 354) | func (v *TokenVerifier) derivePermissions(ctx context.Context, roles [... method convertRoles (line 404) | func (v *TokenVerifier) convertRoles(roles []string) []auth.Role { method translateStytchError (line 424) | func (v *TokenVerifier) translateStytchError(err error) error { function NewTokenVerifier (line 32) | func NewTokenVerifier( type internalClaims (line 50) | type internalClaims struct function parseStringSlice (line 445) | func parseStringSlice(value any) []string { function parseNumericTime (line 467) | func parseNumericTime(value any) time.Time { function timeValue (line 480) | func timeValue(ts *time.Time) time.Time { FILE: go-b2b-starter/internal/modules/auth/auth.go type AuthProvider (line 76) | type AuthProvider interface type Identity (line 89) | type Identity struct method HasRole (line 121) | func (i *Identity) HasRole(role Role) bool { method HasPermission (line 131) | func (i *Identity) HasPermission(permission Permission) bool { method HasResourcePermission (line 141) | func (i *Identity) HasResourcePermission(resource, action string) bool { type RequestContext (line 152) | type RequestContext struct type OrganizationRepository (line 173) | type OrganizationRepository interface type AccountRepository (line 183) | type AccountRepository interface type Organization (line 190) | type Organization struct type Account (line 196) | type Account struct FILE: go-b2b-starter/internal/modules/auth/cmd/init.go function Init (line 36) | func Init(container *dig.Container) error { function InitMiddleware (line 90) | func InitMiddleware(container *dig.Container) error { function isPlaceholderCredentials (line 98) | func isPlaceholderCredentials(cfg *stytch.Config) bool { FILE: go-b2b-starter/internal/modules/auth/context.go type contextKey (line 11) | type contextKey constant identityKey (line 15) | identityKey contextKey = "auth_identity" constant requestContextKey (line 18) | requestContextKey contextKey = "auth_request_context" function SetIdentity (line 25) | func SetIdentity(c *gin.Context, identity *Identity) { function GetIdentity (line 40) | func GetIdentity(c *gin.Context) *Identity { function MustGetIdentity (line 53) | func MustGetIdentity(c *gin.Context) *Identity { function SetRequestContext (line 65) | func SetRequestContext(c *gin.Context, reqCtx *RequestContext) { function GetRequestContext (line 81) | func GetRequestContext(c *gin.Context) *RequestContext { function MustGetRequestContext (line 100) | func MustGetRequestContext(c *gin.Context) *RequestContext { function GetOrganizationID (line 112) | func GetOrganizationID(c *gin.Context) int32 { function GetAccountID (line 123) | func GetAccountID(c *gin.Context) int32 { function WithIdentity (line 134) | func WithIdentity(ctx context.Context, identity *Identity) context.Conte... function IdentityFromContext (line 141) | func IdentityFromContext(ctx context.Context) *Identity { function WithRequestContext (line 154) | func WithRequestContext(ctx context.Context, reqCtx *RequestContext) con... function RequestContextFromContext (line 161) | func RequestContextFromContext(ctx context.Context) *RequestContext { FILE: go-b2b-starter/internal/modules/auth/errors.go function IsAuthError (line 58) | func IsAuthError(err error) bool { function IsForbiddenError (line 67) | func IsForbiddenError(err error) bool { function HTTPStatusCode (line 82) | func HTTPStatusCode(err error) int { FILE: go-b2b-starter/internal/modules/auth/handler.go type Handler (line 12) | type Handler struct method GetRoles (line 30) | func (h *Handler) GetRoles(c *gin.Context) { method GetPermissions (line 51) | func (h *Handler) GetPermissions(c *gin.Context) { method GetPermissionsByCategory (line 72) | func (h *Handler) GetPermissionsByCategory(c *gin.Context) { method GetRoleDetails (line 100) | func (h *Handler) GetRoleDetails(c *gin.Context) { method CheckPermission (line 127) | func (h *Handler) CheckPermission(c *gin.Context) { method GetMetadata (line 156) | func (h *Handler) GetMetadata(c *gin.Context) { function NewHandler (line 16) | func NewHandler(service RBACService) *Handler { FILE: go-b2b-starter/internal/modules/auth/middleware.go type OrganizationResolver (line 15) | type OrganizationResolver interface type AccountResolver (line 25) | type AccountResolver interface type MiddlewareConfig (line 32) | type MiddlewareConfig struct function DefaultMiddlewareConfig (line 38) | func DefaultMiddlewareConfig() *MiddlewareConfig { function defaultErrorHandler (line 45) | func defaultErrorHandler(c *gin.Context, statusCode int, message string,... type Middleware (line 59) | type Middleware struct method RequireAuth (line 100) | func (m *Middleware) RequireAuth() gin.HandlerFunc { method RequireOrganization (line 147) | func (m *Middleware) RequireOrganization() gin.HandlerFunc { method RequirePermission (line 217) | func (m *Middleware) RequirePermission(resource, action string) gin.Ha... method RequireAnyPermission (line 249) | func (m *Middleware) RequireAnyPermission(permissions ...Permission) g... method RequireAllPermissions (line 282) | func (m *Middleware) RequireAllPermissions(permissions ...Permission) ... method RequireRole (line 310) | func (m *Middleware) RequireRole(role Role) gin.HandlerFunc { method RequireAnyRole (line 336) | func (m *Middleware) RequireAnyRole(roles ...Role) gin.HandlerFunc { function NewMiddleware (line 71) | func NewMiddleware( function extractBearerToken (line 360) | func extractBearerToken(c *gin.Context) (string, error) { function hasPermission (line 375) | func hasPermission(identity *Identity, resource, action string) bool { function hasRole (line 396) | func hasRole(identity *Identity, role Role) bool { function errorMessage (line 407) | func errorMessage(err error) string { function RequirePermissionFunc (line 434) | func RequirePermissionFunc(resource, action string) gin.HandlerFunc { function RequireAnyPermissionFunc (line 461) | func RequireAnyPermissionFunc(permissions ...Permission) gin.HandlerFunc { FILE: go-b2b-starter/internal/modules/auth/permissions.go type Permission (line 26) | type Permission method String (line 39) | func (p Permission) String() string { method Resource (line 49) | func (p Permission) Resource() string { method Action (line 63) | func (p Permission) Action() string { method IsValid (line 72) | func (p Permission) IsValid() bool { method Matches (line 81) | func (p Permission) Matches(other Permission) bool { method MatchesWithWildcard (line 97) | func (p Permission) MatchesWithWildcard(other Permission) bool { function NewPermission (line 34) | func NewPermission(resource, action string) Permission { type PermissionSet (line 115) | type PermissionSet method Contains (line 136) | func (ps PermissionSet) Contains(permission Permission) bool { method ContainsResourceAction (line 142) | func (ps PermissionSet) ContainsResourceAction(resource, action string... method ContainsAny (line 147) | func (ps PermissionSet) ContainsAny(permissions ...Permission) bool { method ContainsAll (line 157) | func (ps PermissionSet) ContainsAll(permissions ...Permission) bool { method ToSlice (line 167) | func (ps PermissionSet) ToSlice() []Permission { function NewPermissionSet (line 118) | func NewPermissionSet(permissions []Permission) PermissionSet { function NewPermissionSetFromStrings (line 127) | func NewPermissionSetFromStrings(permissions []string) PermissionSet { function PermissionsToStrings (line 176) | func PermissionsToStrings(permissions []Permission) []string { function StringsToPermissions (line 185) | func StringsToPermissions(permissions []string) []Permission { FILE: go-b2b-starter/internal/modules/auth/provider.go type ServerMiddlewareRegistrar (line 12) | type ServerMiddlewareRegistrar interface type Provider (line 17) | type Provider struct method RegisterDependencies (line 28) | func (p *Provider) RegisterDependencies() error { function NewProvider (line 21) | func NewProvider(container *dig.Container) *Provider { function SetupMiddleware (line 69) | func SetupMiddleware(container *dig.Container) error { function RegisterNamedMiddlewares (line 95) | func RegisterNamedMiddlewares(container *dig.Container) error { function ProvideResolvers (line 124) | func ProvideResolvers( FILE: go-b2b-starter/internal/modules/auth/rbac.go type RoleInfo (line 72) | type RoleInfo struct function GetRoleInfo (line 144) | func GetRoleInfo(roleID string) *RoleInfo { function GetRolePermissionIDs (line 155) | func GetRolePermissionIDs(roleID string) []string { function HasPermission (line 169) | func HasPermission(roleID string, permission Permission) bool { type PermissionDTO (line 209) | type PermissionDTO struct function NewPermissionDTO (line 219) | func NewPermissionDTO(perm Permission) PermissionDTO { type RoleDTO (line 232) | type RoleDTO struct function NewRoleDTO (line 240) | func NewRoleDTO(role RoleInfo) RoleDTO { type RolesResponse (line 255) | type RolesResponse struct type PermissionsResponse (line 260) | type PermissionsResponse struct type PermissionsByCategoryResponse (line 265) | type PermissionsByCategoryResponse struct type RolePermissionsResponse (line 270) | type RolePermissionsResponse struct type RoleStatistics (line 277) | type RoleStatistics struct type RoleRestrictions (line 285) | type RoleRestrictions struct function NewRolePermissionsResponse (line 292) | func NewRolePermissionsResponse(roleID string) *RolePermissionsResponse { type PermissionCheckRequest (line 342) | type PermissionCheckRequest struct type PermissionCheckResponse (line 348) | type PermissionCheckResponse struct type RBACMetadata (line 355) | type RBACMetadata struct function NewRBACMetadata (line 363) | func NewRBACMetadata() RBACMetadata { type RBACService (line 382) | type RBACService interface type defaultRBACService (line 394) | type defaultRBACService struct method GetAllRoles (line 400) | func (s *defaultRBACService) GetAllRoles() []RoleInfo { method GetRoleInfo (line 404) | func (s *defaultRBACService) GetRoleInfo(roleID string) *RoleInfo { method GetAllPermissions (line 408) | func (s *defaultRBACService) GetAllPermissions() []Permission { method GetRolePermissions (line 412) | func (s *defaultRBACService) GetRolePermissions(roleID string) []Permi... method GetPermissionsByCategory (line 420) | func (s *defaultRBACService) GetPermissionsByCategory() map[string][]P... method GetPermissionsByRoleID (line 427) | func (s *defaultRBACService) GetPermissionsByRoleID(roleID string) []s... method HasPermission (line 431) | func (s *defaultRBACService) HasPermission(roleID string, permissionID... method GetRBACMetadata (line 435) | func (s *defaultRBACService) GetRBACMetadata() RBACMetadata { function NewRBACService (line 396) | func NewRBACService() RBACService { FILE: go-b2b-starter/internal/modules/auth/resolvers.go type OrganizationLookup (line 12) | type OrganizationLookup interface type OrganizationEntity (line 19) | type OrganizationEntity interface type AccountLookup (line 27) | type AccountLookup interface type AccountEntity (line 34) | type AccountEntity interface function NewOrganizationResolver (line 49) | func NewOrganizationResolver(lookup OrganizationLookup) OrganizationReso... function NewAccountResolver (line 61) | func NewAccountResolver(lookup AccountLookup) AccountResolver { type orgResolverAdapter (line 66) | type orgResolverAdapter struct method ResolveByProviderID (line 70) | func (a *orgResolverAdapter) ResolveByProviderID(ctx context.Context, ... type accResolverAdapter (line 79) | type accResolverAdapter struct method ResolveByEmail (line 83) | func (a *accResolverAdapter) ResolveByEmail(ctx context.Context, orgID... type SimpleOrganization (line 93) | type SimpleOrganization struct method GetID (line 97) | func (o *SimpleOrganization) GetID() int32 { return o.ID } type SimpleAccount (line 101) | type SimpleAccount struct method GetID (line 105) | func (a *SimpleAccount) GetID() int32 { return a.ID } FILE: go-b2b-starter/internal/modules/auth/roles.go type Role (line 24) | type Role method String (line 67) | func (r Role) String() string { method IsValid (line 72) | func (r Role) IsValid() bool { constant RoleMember (line 33) | RoleMember Role = "member" constant RoleManager (line 38) | RoleManager Role = "manager" constant RoleAdmin (line 42) | RoleAdmin Role = "admin" constant RoleOwner (line 51) | RoleOwner Role = "owner" constant RoleApprover (line 55) | RoleApprover Role = "approver" constant RoleReviewer (line 59) | RoleReviewer Role = "reviewer" constant RoleEmployee (line 63) | RoleEmployee Role = "employee" function NormalizeRole (line 86) | func NormalizeRole(roleStr string) Role { function GetRolePermissions (line 118) | func GetRolePermissions(role Role) []Permission { function HasRolePermission (line 135) | func HasRolePermission(role Role, resource, action string) bool { FILE: go-b2b-starter/internal/modules/auth/routes.go type Routes (line 10) | type Routes struct method RegisterRoutes (line 23) | func (r *Routes) RegisterRoutes(router *gin.RouterGroup, resolver serv... method Routes (line 61) | func (r *Routes) Routes(router *gin.RouterGroup, resolver serverDomain... function NewRoutes (line 14) | func NewRoutes(handler *Handler) *Routes { FILE: go-b2b-starter/internal/modules/billing/app/services/check_quota_availability_service.go method CheckQuotaAvailability (line 14) | func (s *billingService) CheckQuotaAvailability(ctx context.Context, org... FILE: go-b2b-starter/internal/modules/billing/app/services/consume_invoice_quota_service.go method ConsumeInvoiceQuota (line 14) | func (s *billingService) ConsumeInvoiceQuota(ctx context.Context, organi... method ingestMeterEventToPolar (line 65) | func (s *billingService) ingestMeterEventToPolar(ctx context.Context, or... FILE: go-b2b-starter/internal/modules/billing/app/services/get_billing_status_service.go method GetBillingStatus (line 11) | func (s *billingService) GetBillingStatus(ctx context.Context, organizat... method buildStatusReason (line 37) | func (s *billingService) buildStatusReason(status *domain.QuotaStatus) s... FILE: go-b2b-starter/internal/modules/billing/app/services/module.go type Module (line 16) | type Module struct method Configure (line 23) | func (m *Module) Configure(container *dig.Container) error { function NewModule (line 18) | func NewModule() *Module { FILE: go-b2b-starter/internal/modules/billing/app/services/process_webhook_event_service.go constant invoicesProcessedMeterSlug (line 15) | invoicesProcessedMeterSlug = "invoice.processed" method ProcessWebhookEvent (line 17) | func (s *billingService) ProcessWebhookEvent(ctx context.Context, eventT... method parseSubscriptionWebhookPayload (line 56) | func (s *billingService) parseSubscriptionWebhookPayload(payload map[str... method handleSubscriptionUpsert (line 211) | func (s *billingService) handleSubscriptionUpsert(ctx context.Context, e... method handleSubscriptionCanceled (line 304) | func (s *billingService) handleSubscriptionCanceled(ctx context.Context,... method handleCustomerUpdated (line 351) | func (s *billingService) handleCustomerUpdated(ctx context.Context, even... method handleMeterGrantEvent (line 421) | func (s *billingService) handleMeterGrantEvent(ctx context.Context, payl... method parseMeterGrantPayload (line 486) | func (s *billingService) parseMeterGrantPayload(payload map[string]any) ... function normalizePolarObject (line 618) | func normalizePolarObject(payload map[string]any) map[string]any { function extractProductMap (line 646) | func extractProductMap(input map[string]any) map[string]any { function firstMapFromSlice (line 681) | func firstMapFromSlice(value any) map[string]any { function stringMapFrom (line 696) | func stringMapFrom(value any) map[string]string { function toStringMap (line 710) | func toStringMap(input map[string]any) map[string]string { function toString (line 720) | func toString(value any) (string, bool) { function toInt32 (line 770) | func toInt32(value any) (int32, bool) { function parseISOTime (line 851) | func parseISOTime(value any) (time.Time, bool) { function toBool (line 869) | func toBool(value any) (bool, bool) { function mapKeys (line 897) | func mapKeys(m map[string]any) []string { function extractInvoiceCountFromProduct (line 909) | func extractInvoiceCountFromProduct(product map[string]any) string { FILE: go-b2b-starter/internal/modules/billing/app/services/refresh_subscription_status_service.go method RefreshSubscriptionStatus (line 14) | func (s *billingService) RefreshSubscriptionStatus(ctx context.Context, ... FILE: go-b2b-starter/internal/modules/billing/app/services/subscription_service_dec.go type BillingService (line 27) | type BillingService interface type billingService (line 73) | type billingService struct function NewBillingService (line 80) | func NewBillingService( FILE: go-b2b-starter/internal/modules/billing/app/services/sync_subscription_service.go method SyncSubscriptionFromPolar (line 12) | func (s *billingService) SyncSubscriptionFromPolar(ctx context.Context, ... FILE: go-b2b-starter/internal/modules/billing/app/services/verify_and_consume_quota_service.go method VerifyAndConsumeQuota (line 11) | func (s *billingService) VerifyAndConsumeQuota(ctx context.Context, orga... method needsFallbackVerification (line 77) | func (s *billingService) needsFallbackVerification(status *domain.QuotaS... FILE: go-b2b-starter/internal/modules/billing/app/services/verify_payment_service.go method VerifyPaymentFromCheckout (line 12) | func (s *billingService) VerifyPaymentFromCheckout(ctx context.Context, ... FILE: go-b2b-starter/internal/modules/billing/cmd/init.go function Init (line 16) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/billing/cmd/provider.go function ProvideDependencies (line 14) | func ProvideDependencies(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/billing/domain/repository.go type SubscriptionRepository (line 6) | type SubscriptionRepository interface type OrganizationAdapter (line 22) | type OrganizationAdapter interface type BillingProvider (line 29) | type BillingProvider interface FILE: go-b2b-starter/internal/modules/billing/domain/types.go type Subscription (line 6) | type Subscription struct type QuotaTracking (line 25) | type QuotaTracking struct type QuotaStatus (line 39) | type QuotaStatus struct type BillingStatus (line 50) | type BillingStatus struct type WebhookEvent (line 61) | type WebhookEvent struct type SubscriptionEventData (line 67) | type SubscriptionEventData struct type MeterGrantEventData (line 82) | type MeterGrantEventData struct type CheckoutSessionResponse (line 89) | type CheckoutSessionResponse struct FILE: go-b2b-starter/internal/modules/billing/handler.go type Handler (line 18) | type Handler struct method GetBillingStatus (line 40) | func (h *Handler) GetBillingStatus(c *gin.Context) { method VerifyPayment (line 97) | func (h *Handler) VerifyPayment(c *gin.Context) { function NewHandler (line 23) | func NewHandler(billingService billingServices.BillingService, log logge... type VerifyPaymentRequest (line 81) | type VerifyPaymentRequest struct FILE: go-b2b-starter/internal/modules/billing/infra/adapters/status_provider.go type StatusProviderAdapter (line 16) | type StatusProviderAdapter struct method GetSubscriptionStatus (line 28) | func (a *StatusProviderAdapter) GetSubscriptionStatus(ctx context.Cont... method RefreshSubscriptionStatus (line 59) | func (a *StatusProviderAdapter) RefreshSubscriptionStatus(ctx context.... function NewStatusProviderAdapter (line 20) | func NewStatusProviderAdapter(service services.BillingService) paywall.S... function parseStatusFromReason (line 87) | func parseStatusFromReason(reason string) string { function containsStatus (line 104) | func containsStatus(reason, status string) bool { function contains (line 109) | func contains(s, substr string) bool { FILE: go-b2b-starter/internal/modules/billing/infra/polar/polar_adapter.go type polarAdapter (line 21) | type polarAdapter struct method GetSubscription (line 33) | func (p *polarAdapter) GetSubscription(ctx context.Context, externalCu... method GetCheckoutSession (line 128) | func (p *polarAdapter) GetCheckoutSession(ctx context.Context, session... method GetCheckoutSessionWithPolling (line 207) | func (p *polarAdapter) GetCheckoutSessionWithPolling(ctx context.Conte... method IngestMeterEvent (line 330) | func (p *polarAdapter) IngestMeterEvent(ctx context.Context, externalC... function NewPolarAdapter (line 26) | func NewPolarAdapter(client *polarpkg.Client, log logger.Logger) domain.... function isRetryableError (line 299) | func isRetryableError(err error) bool { function parseTime (line 378) | func parseTime(s string) (time.Time, error) { FILE: go-b2b-starter/internal/modules/billing/infra/repositories/organization_adapter.go type organizationAdapter (line 12) | type organizationAdapter struct method GetStytchOrgID (line 22) | func (a *organizationAdapter) GetStytchOrgID(ctx context.Context, orga... method GetOrganizationIDByStytchOrgID (line 35) | func (a *organizationAdapter) GetOrganizationIDByStytchOrgID(ctx conte... function NewOrganizationAdapter (line 16) | func NewOrganizationAdapter(orgStore adapters.OrganizationStore) domain.... FILE: go-b2b-starter/internal/modules/billing/infra/repositories/subscription_repository.go type subscriptionRepository (line 19) | type subscriptionRepository struct method GetSubscriptionByOrgID (line 28) | func (r *subscriptionRepository) GetSubscriptionByOrgID(ctx context.Co... method UpsertSubscription (line 40) | func (r *subscriptionRepository) UpsertSubscription(ctx context.Contex... method DeleteSubscription (line 70) | func (r *subscriptionRepository) DeleteSubscription(ctx context.Contex... method GetQuotaByOrgID (line 77) | func (r *subscriptionRepository) GetQuotaByOrgID(ctx context.Context, ... method UpsertQuota (line 89) | func (r *subscriptionRepository) UpsertQuota(ctx context.Context, quot... method DecrementInvoiceCount (line 106) | func (r *subscriptionRepository) DecrementInvoiceCount(ctx context.Con... method GetQuotaStatus (line 115) | func (r *subscriptionRepository) GetQuotaStatus(ctx context.Context, o... method mapToDomainSubscription (line 129) | func (r *subscriptionRepository) mapToDomainSubscription(s *sqlc.Subsc... method mapToDomainQuota (line 162) | func (r *subscriptionRepository) mapToDomainQuota(q *sqlc.Subscription... method mapToDomainQuotaStatus (line 182) | func (r *subscriptionRepository) mapToDomainQuotaStatus(qs *sqlc.GetQu... function NewSubscriptionRepository (line 24) | func NewSubscriptionRepository(store sqlc.Store) domain.SubscriptionRepo... function toPgTimestamp (line 204) | func toPgTimestamp(t time.Time) pgtype.Timestamp { function toPgTimestampPtr (line 211) | func toPgTimestampPtr(t *time.Time) pgtype.Timestamp { FILE: go-b2b-starter/internal/modules/billing/provider.go function RegisterHandlers (line 8) | func RegisterHandlers(container *dig.Container) error { function ProvideHandler (line 16) | func ProvideHandler(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/billing/routes.go method Routes (line 11) | func (h *Handler) Routes(router *gin.RouterGroup, resolver serverDomain.... FILE: go-b2b-starter/internal/modules/cognitive/app/services/document_listener.go type documentListener (line 8) | type documentListener struct method HandleDocumentUploaded (line 20) | func (l *documentListener) HandleDocumentUploaded(ctx context.Context,... function NewDocumentListener (line 12) | func NewDocumentListener( FILE: go-b2b-starter/internal/modules/cognitive/app/services/embedding_service.go constant MaxChunkSize (line 14) | MaxChunkSize = 8000 constant ContentPreviewLength (line 16) | ContentPreviewLength = 500 type embeddingService (line 19) | type embeddingService struct method EmbedDocument (line 34) | func (s *embeddingService) EmbedDocument(ctx context.Context, orgID, d... method GetDocumentEmbeddings (line 68) | func (s *embeddingService) GetDocumentEmbeddings(ctx context.Context, ... method SearchSimilarDocuments (line 72) | func (s *embeddingService) SearchSimilarDocuments(ctx context.Context,... method DeleteDocumentEmbeddings (line 83) | func (s *embeddingService) DeleteDocumentEmbeddings(ctx context.Contex... method GetStats (line 91) | func (s *embeddingService) GetStats(ctx context.Context, orgID int32) ... method hashContent (line 104) | func (s *embeddingService) hashContent(content string) string { function NewEmbeddingService (line 24) | func NewEmbeddingService( FILE: go-b2b-starter/internal/modules/cognitive/app/services/interface.go type EmbeddingService (line 10) | type EmbeddingService interface type RAGService (line 28) | type RAGService interface type DocumentListener (line 49) | type DocumentListener interface FILE: go-b2b-starter/internal/modules/cognitive/app/services/rag_service.go constant DefaultMaxDocuments (line 13) | DefaultMaxDocuments = 3 constant DefaultContextHistory (line 15) | DefaultContextHistory = 10 constant SystemPrompt (line 17) | SystemPrompt = `You are a helpful assistant that answers questions based... type ragService (line 22) | type ragService struct method Chat (line 43) | func (s *ragService) Chat(ctx context.Context, orgID, accountID int32,... method GetSession (line 155) | func (s *ragService) GetSession(ctx context.Context, orgID, sessionID ... method ListSessions (line 159) | func (s *ragService) ListSessions(ctx context.Context, orgID, accountI... method DeleteSession (line 163) | func (s *ragService) DeleteSession(ctx context.Context, orgID, session... method GetSessionHistory (line 167) | func (s *ragService) GetSessionHistory(ctx context.Context, orgID, ses... method UpdateSessionTitle (line 177) | func (s *ragService) UpdateSessionTitle(ctx context.Context, orgID, se... method buildRAGPrompt (line 182) | func (s *ragService) buildRAGPrompt(query string, docs []*domain.Simil... method buildPromptWithHistory (line 203) | func (s *ragService) buildPromptWithHistory(prompt string, history []*... function NewRAGService (line 29) | func NewRAGService( function generateSessionTitle (line 228) | func generateSessionTitle(message string) string { FILE: go-b2b-starter/internal/modules/cognitive/cmd/init.go function Init (line 15) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/cognitive/domain/ai_provider.go type TextVectorizer (line 8) | type TextVectorizer interface type AssistantProvider (line 16) | type AssistantProvider interface type AssistantResponse (line 22) | type AssistantResponse struct FILE: go-b2b-starter/internal/modules/cognitive/domain/entity.go type ChatRole (line 8) | type ChatRole constant ChatRoleUser (line 11) | ChatRoleUser ChatRole = "user" constant ChatRoleAssistant (line 12) | ChatRoleAssistant ChatRole = "assistant" constant ChatRoleSystem (line 13) | ChatRoleSystem ChatRole = "system" type DocumentEmbedding (line 17) | type DocumentEmbedding struct type SimilarDocument (line 30) | type SimilarDocument struct type ChatSession (line 36) | type ChatSession struct method GetID (line 45) | func (s *ChatSession) GetID() int32 { method Validate (line 50) | func (s *ChatSession) Validate() error { type ChatMessage (line 61) | type ChatMessage struct method GetID (line 71) | func (m *ChatMessage) GetID() int32 { method Validate (line 76) | func (m *ChatMessage) Validate() error { method IsUserMessage (line 89) | func (m *ChatMessage) IsUserMessage() bool { method IsAssistantMessage (line 93) | func (m *ChatMessage) IsAssistantMessage() bool { type RAGContext (line 98) | type RAGContext struct type ChatRequest (line 104) | type ChatRequest struct type ChatResponse (line 113) | type ChatResponse struct type EmbeddingStats (line 121) | type EmbeddingStats struct type ChatStats (line 127) | type ChatStats struct FILE: go-b2b-starter/internal/modules/cognitive/domain/repository.go type EmbeddingRepository (line 6) | type EmbeddingRepository interface type ChatRepository (line 27) | type ChatRepository interface FILE: go-b2b-starter/internal/modules/cognitive/handler.go type Handler (line 15) | type Handler struct method Chat (line 47) | func (h *Handler) Chat(c *gin.Context) { method ListSessions (line 100) | func (h *Handler) ListSessions(c *gin.Context) { method GetSessionHistory (line 142) | func (h *Handler) GetSessionHistory(c *gin.Context) { function NewHandler (line 20) | func NewHandler(ragService services.RAGService, embeddingService service... type ChatRequest (line 28) | type ChatRequest struct FILE: go-b2b-starter/internal/modules/cognitive/infra/ai/assistant_provider.go type openAIAssistantProvider (line 10) | type openAIAssistantProvider struct method GenerateResponse (line 19) | func (p *openAIAssistantProvider) GenerateResponse(ctx context.Context... function NewAssistantProvider (line 15) | func NewAssistantProvider(llmClient llmdomain.LLMClient) domain.Assistan... FILE: go-b2b-starter/internal/modules/cognitive/infra/ai/text_vectorizer.go constant embeddingModel (line 10) | embeddingModel = "text-embedding-3-small" type openAITextVectorizer (line 12) | type openAITextVectorizer struct method Vectorize (line 20) | func (v *openAITextVectorizer) Vectorize(ctx context.Context, text str... function NewTextVectorizer (line 16) | func NewTextVectorizer(llmClient llmdomain.LLMClient) domain.TextVectori... FILE: go-b2b-starter/internal/modules/cognitive/infra/repositories/chat_repository.go type chatRepository (line 14) | type chatRepository struct method CreateSession (line 25) | func (r *chatRepository) CreateSession(ctx context.Context, session *d... method GetSessionByID (line 40) | func (r *chatRepository) GetSessionByID(ctx context.Context, orgID, se... method ListSessionsByAccount (line 54) | func (r *chatRepository) ListSessionsByAccount(ctx context.Context, or... method UpdateSessionTitle (line 75) | func (r *chatRepository) UpdateSessionTitle(ctx context.Context, orgID... method DeleteSession (line 90) | func (r *chatRepository) DeleteSession(ctx context.Context, orgID, ses... method CreateMessage (line 105) | func (r *chatRepository) CreateMessage(ctx context.Context, message *d... method GetMessagesBySession (line 122) | func (r *chatRepository) GetMessagesBySession(ctx context.Context, ses... method GetRecentMessages (line 136) | func (r *chatRepository) GetRecentMessages(ctx context.Context, sessio... method CountMessagesBySession (line 155) | func (r *chatRepository) CountMessagesBySession(ctx context.Context, s... method DeleteMessage (line 164) | func (r *chatRepository) DeleteMessage(ctx context.Context, messageID ... method mapSessionToDomain (line 174) | func (r *chatRepository) mapSessionToDomain(s *sqlc.CognitiveChatSessi... method mapMessageToDomain (line 187) | func (r *chatRepository) mapMessageToDomain(m *sqlc.CognitiveChatMessa... function NewChatRepository (line 19) | func NewChatRepository(store sqlc.Store) domain.ChatRepository { FILE: go-b2b-starter/internal/modules/cognitive/infra/repositories/embedding_repository.go type embeddingRepository (line 14) | type embeddingRepository struct method Create (line 23) | func (r *embeddingRepository) Create(ctx context.Context, embedding *d... method GetByID (line 41) | func (r *embeddingRepository) GetByID(ctx context.Context, orgID, embe... method GetByDocumentID (line 55) | func (r *embeddingRepository) GetByDocumentID(ctx context.Context, org... method SearchSimilar (line 74) | func (r *embeddingRepository) SearchSimilar(ctx context.Context, orgID... method Delete (line 106) | func (r *embeddingRepository) Delete(ctx context.Context, orgID, docum... method Count (line 119) | func (r *embeddingRepository) Count(ctx context.Context, orgID int32) ... method mapToDomain (line 130) | func (r *embeddingRepository) mapToDomain(e *sqlc.CognitiveDocumentEmb... function NewEmbeddingRepository (line 19) | func NewEmbeddingRepository(store sqlc.Store) domain.EmbeddingRepository { FILE: go-b2b-starter/internal/modules/cognitive/infra/repositories/helpers.go function toPgText (line 7) | func toPgText(s string) pgtype.Text { function fromPgText (line 14) | func fromPgText(t pgtype.Text) string { function toPgInt4 (line 21) | func toPgInt4(i int32) pgtype.Int4 { function fromPgInt4 (line 28) | func fromPgInt4(i pgtype.Int4) int32 { FILE: go-b2b-starter/internal/modules/cognitive/module.go type Module (line 13) | type Module struct method RegisterDependencies (line 25) | func (m *Module) RegisterDependencies() error { function NewModule (line 17) | func NewModule(container *dig.Container) *Module { FILE: go-b2b-starter/internal/modules/cognitive/provider.go type Provider (line 7) | type Provider struct method RegisterDependencies (line 15) | func (p *Provider) RegisterDependencies() error { function NewProvider (line 11) | func NewProvider(container *dig.Container) *Provider { FILE: go-b2b-starter/internal/modules/cognitive/routes.go type Routes (line 10) | type Routes struct method RegisterRoutes (line 20) | func (r *Routes) RegisterRoutes(router *gin.RouterGroup, resolver serv... method Routes (line 48) | func (r *Routes) Routes(router *gin.RouterGroup, resolver serverDomain... function NewRoutes (line 14) | func NewRoutes(handler *Handler) *Routes { FILE: go-b2b-starter/internal/modules/documents/app/services/document_service.go type documentService (line 21) | type documentService struct method UploadDocument (line 45) | func (s *documentService) UploadDocument(ctx context.Context, orgID in... method GetDocument (line 101) | func (s *documentService) GetDocument(ctx context.Context, orgID, docI... method ListDocuments (line 110) | func (s *documentService) ListDocuments(ctx context.Context, orgID int... method UpdateDocument (line 141) | func (s *documentService) UpdateDocument(ctx context.Context, orgID, d... method DeleteDocument (line 164) | func (s *documentService) DeleteDocument(ctx context.Context, orgID, d... method GetDocumentStats (line 184) | func (s *documentService) GetDocumentStats(ctx context.Context, orgID ... method ProcessDocument (line 213) | func (s *documentService) ProcessDocument(ctx context.Context, orgID, ... method markDocumentFailed (line 252) | func (s *documentService) markDocumentFailed(ctx context.Context, orgI... method extractTextFromPDF (line 261) | func (s *documentService) extractTextFromPDF(content io.Reader) (strin... function NewDocumentService (line 29) | func NewDocumentService( FILE: go-b2b-starter/internal/modules/documents/app/services/interface.go type DocumentService (line 11) | type DocumentService interface type UploadDocumentRequest (line 35) | type UploadDocumentRequest struct type ListDocumentsRequest (line 44) | type ListDocumentsRequest struct type ListDocumentsResponse (line 51) | type ListDocumentsResponse struct type UpdateDocumentRequest (line 59) | type UpdateDocumentRequest struct FILE: go-b2b-starter/internal/modules/documents/cmd/init.go function Init (line 9) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/documents/domain/entity.go type DocumentStatus (line 8) | type DocumentStatus constant DocumentStatusPending (line 11) | DocumentStatusPending DocumentStatus = "pending" constant DocumentStatusProcessing (line 12) | DocumentStatusProcessing DocumentStatus = "processing" constant DocumentStatusProcessed (line 13) | DocumentStatusProcessed DocumentStatus = "processed" constant DocumentStatusFailed (line 14) | DocumentStatusFailed DocumentStatus = "failed" type Document (line 18) | type Document struct method GetID (line 33) | func (d *Document) GetID() int32 { method Validate (line 38) | func (d *Document) Validate() error { method IsProcessed (line 54) | func (d *Document) IsProcessed() bool { method IsPending (line 58) | func (d *Document) IsPending() bool { method HasText (line 62) | func (d *Document) HasText() bool { type DocumentUploadRequest (line 67) | type DocumentUploadRequest struct type DocumentFilter (line 77) | type DocumentFilter struct type DocumentStats (line 82) | type DocumentStats struct FILE: go-b2b-starter/internal/modules/documents/domain/events/document_events.go constant DocumentUploadedEventType (line 11) | DocumentUploadedEventType = "document.uploaded" constant DocumentProcessedEventType (line 12) | DocumentProcessedEventType = "document.processed" constant DocumentFailedEventType (line 13) | DocumentFailedEventType = "document.failed" type DocumentUploaded (line 17) | type DocumentUploaded struct function NewDocumentUploaded (line 26) | func NewDocumentUploaded(documentID, organizationID, fileAssetID int32, ... type DocumentProcessed (line 43) | type DocumentProcessed struct function NewDocumentProcessed (line 50) | func NewDocumentProcessed(documentID, organizationID, embeddingID int32)... type DocumentFailed (line 65) | type DocumentFailed struct function NewDocumentFailed (line 72) | func NewDocumentFailed(documentID, organizationID int32, err string) *Do... FILE: go-b2b-starter/internal/modules/documents/domain/repository.go type DocumentRepository (line 6) | type DocumentRepository interface FILE: go-b2b-starter/internal/modules/documents/handler.go type Handler (line 16) | type Handler struct method UploadDocument (line 36) | func (h *Handler) UploadDocument(c *gin.Context) { method ListDocuments (line 98) | func (h *Handler) ListDocuments(c *gin.Context) { method DeleteDocument (line 142) | func (h *Handler) DeleteDocument(c *gin.Context) { function NewHandler (line 20) | func NewHandler(service services.DocumentService) *Handler { FILE: go-b2b-starter/internal/modules/documents/infra/repositories/document_repository.go type documentRepository (line 14) | type documentRepository struct method Create (line 23) | func (r *documentRepository) Create(ctx context.Context, doc *domain.D... method GetByID (line 44) | func (r *documentRepository) GetByID(ctx context.Context, orgID, docID... method GetByFileAssetID (line 58) | func (r *documentRepository) GetByFileAssetID(ctx context.Context, org... method List (line 72) | func (r *documentRepository) List(ctx context.Context, orgID int32, li... method ListByStatus (line 92) | func (r *documentRepository) ListByStatus(ctx context.Context, orgID i... method UpdateStatus (line 113) | func (r *documentRepository) UpdateStatus(ctx context.Context, orgID, ... method UpdateExtractedText (line 128) | func (r *documentRepository) UpdateExtractedText(ctx context.Context, ... method Update (line 143) | func (r *documentRepository) Update(ctx context.Context, doc *domain.D... method Delete (line 159) | func (r *documentRepository) Delete(ctx context.Context, orgID, docID ... method Count (line 172) | func (r *documentRepository) Count(ctx context.Context, orgID int32) (... method CountByStatus (line 181) | func (r *documentRepository) CountByStatus(ctx context.Context, orgID ... method mapToDomain (line 197) | func (r *documentRepository) mapToDomain(doc *sqlc.DocumentsDocument) ... function NewDocumentRepository (line 19) | func NewDocumentRepository(store sqlc.Store) domain.DocumentRepository { FILE: go-b2b-starter/internal/modules/documents/module.go type Module (line 15) | type Module struct method RegisterDependencies (line 27) | func (m *Module) RegisterDependencies() error { function NewModule (line 19) | func NewModule(container *dig.Container) *Module { FILE: go-b2b-starter/internal/modules/documents/provider.go type Provider (line 7) | type Provider struct method RegisterDependencies (line 15) | func (p *Provider) RegisterDependencies() error { function NewProvider (line 11) | func NewProvider(container *dig.Container) *Provider { FILE: go-b2b-starter/internal/modules/documents/routes.go type Routes (line 10) | type Routes struct method RegisterRoutes (line 20) | func (r *Routes) RegisterRoutes(router *gin.RouterGroup, resolver serv... method Routes (line 46) | func (r *Routes) Routes(router *gin.RouterGroup, resolver serverDomain... function NewRoutes (line 14) | func NewRoutes(handler *Handler) *Routes { FILE: go-b2b-starter/internal/modules/files/cmd/init.go function Init (line 10) | func Init(container *dig.Container) { FILE: go-b2b-starter/internal/modules/files/cmd/provider.go function SetupDependencies (line 15) | func SetupDependencies(container *dig.Container) error { function isPlaceholderR2Credentials (line 52) | func isPlaceholderR2Credentials(cfg *config.Config) bool { FILE: go-b2b-starter/internal/modules/files/config/config.go type Config (line 7) | type Config struct type R2Config (line 11) | type R2Config struct function LoadConfig (line 19) | func LoadConfig() (*Config, error) { FILE: go-b2b-starter/internal/modules/files/constants.go type FileCategory (line 8) | type FileCategory constant CategoryDocument (line 11) | CategoryDocument FileCategory = "document" constant CategoryImage (line 12) | CategoryImage FileCategory = "image" constant CategoryArchive (line 13) | CategoryArchive FileCategory = "archive" type FileContext (line 27) | type FileContext constant ContextInvoice (line 30) | ContextInvoice FileContext = "invoice" constant ContextReceipt (line 31) | ContextReceipt FileContext = "receipt" constant ContextContract (line 32) | ContextContract FileContext = "contract" constant ContextReport (line 33) | ContextReport FileContext = "report" constant ContextProfile (line 34) | ContextProfile FileContext = "profile" constant ContextGeneral (line 35) | ContextGeneral FileContext = "general" constant ContextPaymentInstruction (line 36) | ContextPaymentInstruction FileContext = "payment_instruction" constant ContextPaymentBatch (line 37) | ContextPaymentBatch FileContext = "payment_batch" constant MaxDocumentSize (line 43) | MaxDocumentSize = 2 * 1024 * 1024 constant MaxImageSize (line 44) | MaxImageSize = 1 * 1024 * 1024 constant MaxArchiveSize (line 45) | MaxArchiveSize = 0 function GetFileCategory (line 49) | func GetFileCategory(filename string) FileCategory { function GetMaxFileSize (line 74) | func GetMaxFileSize(category FileCategory) int64 { function IsAllowedFileType (line 86) | func IsAllowedFileType(filename string) bool { function getFileExtension (line 101) | func getFileExtension(filename string) string { FILE: go-b2b-starter/internal/modules/files/domain/entity.go type FileAsset (line 10) | type FileAsset struct type FileUploadRequest (line 31) | type FileUploadRequest struct type FileSearchFilter (line 39) | type FileSearchFilter struct FILE: go-b2b-starter/internal/modules/files/domain/helpers.go function ConvertFileToBase64 (line 12) | func ConvertFileToBase64(ctx context.Context, repo FileRepository, fileI... function ConvertReaderToBase64 (line 32) | func ConvertReaderToBase64(content io.Reader, contentType string) (strin... function formatAsDataURI (line 44) | func formatAsDataURI(data []byte, contentType string) string { FILE: go-b2b-starter/internal/modules/files/domain/repository.go type FileRepository (line 10) | type FileRepository interface type R2Repository (line 27) | type R2Repository interface type FileMetadataRepository (line 36) | type FileMetadataRepository interface FILE: go-b2b-starter/internal/modules/files/domain/service.go type FileService (line 13) | type FileService interface type fileService (line 22) | type fileService struct method UploadFile (line 32) | func (s *fileService) UploadFile(ctx context.Context, req *FileUploadR... method DownloadFile (line 94) | func (s *fileService) DownloadFile(ctx context.Context, id int32) (io.... method GetFile (line 103) | func (s *fileService) GetFile(ctx context.Context, id int32) (*FileAss... method DeleteFile (line 107) | func (s *fileService) DeleteFile(ctx context.Context, id int32) error { method ListFiles (line 120) | func (s *fileService) ListFiles(ctx context.Context, filter *FileSearc... method GetFileURL (line 124) | func (s *fileService) GetFileURL(ctx context.Context, id int32, expiry... function NewFileService (line 26) | func NewFileService(repo FileRepository) FileService { function generateFilePath (line 165) | func generateFilePath(category files.FileCategory, context files.FileCon... FILE: go-b2b-starter/internal/modules/files/domain/validator.go function ValidateFileContent (line 15) | func ValidateFileContent(reader io.Reader, filename string) error { function getAllowedMIMETypes (line 43) | func getAllowedMIMETypes(ext string) ([]string, bool) { function SanitizeFilename (line 66) | func SanitizeFilename(filename string) string { function IsInvoiceFileType (line 115) | func IsInvoiceFileType(filename string) bool { FILE: go-b2b-starter/internal/modules/files/infra/file_metadata_repository.go type fileMetadataRepository (line 18) | type fileMetadataRepository struct method Create (line 27) | func (r *fileMetadataRepository) Create(ctx context.Context, file *dom... method GetByID (line 69) | func (r *fileMetadataRepository) GetByID(ctx context.Context, id int32... method Update (line 78) | func (r *fileMetadataRepository) Update(ctx context.Context, file *dom... method Delete (line 95) | func (r *fileMetadataRepository) Delete(ctx context.Context, id int32)... method List (line 99) | func (r *fileMetadataRepository) List(ctx context.Context, filter *dom... method GetByStoragePath (line 118) | func (r *fileMetadataRepository) GetByStoragePath(ctx context.Context,... method GetByCategory (line 127) | func (r *fileMetadataRepository) GetByCategory(ctx context.Context, ca... method GetByContext (line 141) | func (r *fileMetadataRepository) GetByContext(ctx context.Context, fil... method GetByEntity (line 155) | func (r *fileMetadataRepository) GetByEntity(ctx context.Context, enti... method getCategoryID (line 176) | func (r *fileMetadataRepository) getCategoryID(ctx context.Context, ca... method getContextID (line 191) | func (r *fileMetadataRepository) getContextID(ctx context.Context, fil... method convertFromDBModel (line 208) | func (r *fileMetadataRepository) convertFromDBModel(dbFile *sqlc.FileM... method convertFromListRow (line 253) | func (r *fileMetadataRepository) convertFromListRow(row *sqlc.ListFile... method convertFromCategoryRow (line 300) | func (r *fileMetadataRepository) convertFromCategoryRow(row *sqlc.GetF... method convertFromContextRow (line 346) | func (r *fileMetadataRepository) convertFromContextRow(row *sqlc.GetFi... function NewFileMetadataRepository (line 23) | func NewFileMetadataRepository(store sqlc.Store) domain.FileMetadataRepo... FILE: go-b2b-starter/internal/modules/files/internal/infra/composite_repository.go type compositeRepository (line 14) | type compositeRepository struct method Upload (line 28) | func (r *compositeRepository) Upload(ctx context.Context, file *domain... method Download (line 101) | func (r *compositeRepository) Download(ctx context.Context, id int32) ... method GetByID (line 117) | func (r *compositeRepository) GetByID(ctx context.Context, id int32) (... method Delete (line 121) | func (r *compositeRepository) Delete(ctx context.Context, id int32) er... method List (line 143) | func (r *compositeRepository) List(ctx context.Context, filter *domain... method GetURL (line 147) | func (r *compositeRepository) GetURL(ctx context.Context, id int32, ex... method Exists (line 195) | func (r *compositeRepository) Exists(ctx context.Context, id int32) (b... method GetByCategory (line 249) | func (r *compositeRepository) GetByCategory(ctx context.Context, categ... method GetByContext (line 253) | func (r *compositeRepository) GetByContext(ctx context.Context, contex... method GetByEntity (line 257) | func (r *compositeRepository) GetByEntity(ctx context.Context, entityT... method generateStoragePath (line 262) | func (r *compositeRepository) generateStoragePath(category file_manage... method generateObjectKey (line 267) | func (r *compositeRepository) generateObjectKey(id int32, filename str... function NewCompositeRepository (line 20) | func NewCompositeRepository(cfg *config.Config, r2Repo domain.R2Reposito... FILE: go-b2b-starter/internal/modules/files/internal/infra/db_repository.go type dbRepository (line 17) | type dbRepository struct method Create (line 27) | func (r *dbRepository) Create(ctx context.Context, file *domain.FileAs... method GetByID (line 69) | func (r *dbRepository) GetByID(ctx context.Context, id int32) (*domain... method Update (line 104) | func (r *dbRepository) Update(ctx context.Context, file *domain.FileAs... method Delete (line 143) | func (r *dbRepository) Delete(ctx context.Context, id int32) error { method List (line 147) | func (r *dbRepository) List(ctx context.Context, filter *domain.FileSe... method GetByStoragePath (line 166) | func (r *dbRepository) GetByStoragePath(ctx context.Context, storagePa... method GetByCategory (line 175) | func (r *dbRepository) GetByCategory(ctx context.Context, category str... method GetByContext (line 189) | func (r *dbRepository) GetByContext(ctx context.Context, context strin... method GetByEntity (line 203) | func (r *dbRepository) GetByEntity(ctx context.Context, entityType str... method getCategoryID (line 223) | func (r *dbRepository) getCategoryID(ctx context.Context, category fil... method getContextID (line 238) | func (r *dbRepository) getContextID(ctx context.Context, context file_... method convertFromDBModel (line 253) | func (r *dbRepository) convertFromDBModel(dbFile *sqlc.FileManagerFile... method convertFromListRow (line 298) | func (r *dbRepository) convertFromListRow(row *sqlc.ListFileAssetsRow)... method convertFromCategoryRow (line 345) | func (r *dbRepository) convertFromCategoryRow(row *sqlc.GetFileAssetsB... method convertFromContextRow (line 391) | func (r *dbRepository) convertFromContextRow(row *sqlc.GetFileAssetsBy... function NewDBRepository (line 21) | func NewDBRepository(store adapters.FileAssetStore) domain.FileMetadataR... FILE: go-b2b-starter/internal/modules/files/internal/infra/mock_r2_repository.go type mockR2Repository (line 13) | type mockR2Repository struct method UploadObject (line 25) | func (m *mockR2Repository) UploadObject(ctx context.Context, objectKey... method DownloadObject (line 38) | func (m *mockR2Repository) DownloadObject(ctx context.Context, objectK... method DeleteObject (line 47) | func (m *mockR2Repository) DeleteObject(ctx context.Context, objectKey... method GetPresignedURL (line 55) | func (m *mockR2Repository) GetPresignedURL(ctx context.Context, object... method ObjectExists (line 65) | func (m *mockR2Repository) ObjectExists(ctx context.Context, objectKey... function NewMockR2Repository (line 19) | func NewMockR2Repository(log logger.Logger) domain.R2Repository { FILE: go-b2b-starter/internal/modules/files/internal/infra/r2_repository.go type r2Repository (line 20) | type r2Repository struct method ensureBucket (line 63) | func (r *r2Repository) ensureBucket(ctx context.Context) error { method UploadObject (line 76) | func (r *r2Repository) UploadObject(ctx context.Context, objectKey str... method DownloadObject (line 93) | func (r *r2Repository) DownloadObject(ctx context.Context, objectKey s... method DeleteObject (line 106) | func (r *r2Repository) DeleteObject(ctx context.Context, objectKey str... method GetPresignedURL (line 120) | func (r *r2Repository) GetPresignedURL(ctx context.Context, objectKey ... method ObjectExists (line 140) | func (r *r2Repository) ObjectExists(ctx context.Context, objectKey str... function NewR2Repository (line 25) | func NewR2Repository(cfg *fileconfig.Config) (domain.R2Repository, error) { FILE: go-b2b-starter/internal/modules/organizations/account_handler.go type AccountHandler (line 16) | type AccountHandler struct method CreateAccount (line 29) | func (h *AccountHandler) CreateAccount(c *gin.Context) { method GetAccount (line 60) | func (h *AccountHandler) GetAccount(c *gin.Context) { method GetAccountByEmail (line 92) | func (h *AccountHandler) GetAccountByEmail(c *gin.Context) { method ListAccounts (line 121) | func (h *AccountHandler) ListAccounts(c *gin.Context) { method UpdateAccount (line 144) | func (h *AccountHandler) UpdateAccount(c *gin.Context) { method DeleteAccount (line 183) | func (h *AccountHandler) DeleteAccount(c *gin.Context) { method UpdateAccountLastLogin (line 215) | func (h *AccountHandler) UpdateAccountLastLogin(c *gin.Context) { method CheckAccountPermission (line 246) | func (h *AccountHandler) CheckAccountPermission(c *gin.Context) { method GetAccountStats (line 278) | func (h *AccountHandler) GetAccountStats(c *gin.Context) { function NewAccountHandler (line 21) | func NewAccountHandler(orgService services.OrganizationService, logger l... FILE: go-b2b-starter/internal/modules/organizations/app/services/member_service.go type MemberService (line 11) | type MemberService interface type BootstrapOrganizationRequest (line 39) | type BootstrapOrganizationRequest struct method Validate (line 49) | func (r *BootstrapOrganizationRequest) Validate() error { type BootstrapOrganizationResponse (line 63) | type BootstrapOrganizationResponse struct type AddMemberRequest (line 75) | type AddMemberRequest struct method Validate (line 88) | func (r *AddMemberRequest) Validate() error { type AddMemberResponse (line 100) | type AddMemberResponse struct type MemberInfo (line 110) | type MemberInfo struct type ListMembersResponse (line 122) | type ListMembersResponse struct type ProfileResponse (line 129) | type ProfileResponse struct type ProfileOrganization (line 149) | type ProfileOrganization struct type CheckEmailRequest (line 158) | type CheckEmailRequest struct FILE: go-b2b-starter/internal/modules/organizations/app/services/member_service_impl.go type rollbackFunc (line 14) | type rollbackFunc type rollbackStack (line 17) | type rollbackStack method add (line 20) | func (rs *rollbackStack) add(fn rollbackFunc) { method execute (line 25) | func (rs rollbackStack) execute(ctx context.Context, logger loggerDoma... type memberService (line 38) | type memberService struct method BootstrapOrganizationWithOwner (line 67) | func (s *memberService) BootstrapOrganizationWithOwner( method AddMemberDirect (line 263) | func (s *memberService) AddMemberDirect( method ListOrganizationMembers (line 362) | func (s *memberService) ListOrganizationMembers( method GetCurrentUserProfile (line 407) | func (s *memberService) GetCurrentUserProfile( method DeleteOrganizationMember (line 495) | func (s *memberService) DeleteOrganizationMember( method CheckEmailExists (line 534) | func (s *memberService) CheckEmailExists(ctx context.Context, email st... method resolveLocalOrganizationID (line 563) | func (s *memberService) resolveLocalOrganizationID(ctx context.Context... function NewMemberService (line 47) | func NewMemberService( function mapRoleSlugToAccountRole (line 571) | func mapRoleSlugToAccountRole(slug string) string { FILE: go-b2b-starter/internal/modules/organizations/app/services/organization_service.go type organizationService (line 10) | type organizationService struct method CreateOrganization (line 22) | func (s *organizationService) CreateOrganization(ctx context.Context, ... method GetOrganization (line 65) | func (s *organizationService) GetOrganization(ctx context.Context, org... method GetOrganizationBySlug (line 69) | func (s *organizationService) GetOrganizationBySlug(ctx context.Contex... method GetOrganizationByStytchID (line 73) | func (s *organizationService) GetOrganizationByStytchID(ctx context.Co... method GetOrganizationByUserEmail (line 77) | func (s *organizationService) GetOrganizationByUserEmail(ctx context.C... method UpdateOrganization (line 81) | func (s *organizationService) UpdateOrganization(ctx context.Context, ... method ListOrganizations (line 104) | func (s *organizationService) ListOrganizations(ctx context.Context, r... method GetOrganizationStats (line 122) | func (s *organizationService) GetOrganizationStats(ctx context.Context... method CreateAccount (line 126) | func (s *organizationService) CreateAccount(ctx context.Context, orgID... method GetAccount (line 148) | func (s *organizationService) GetAccount(ctx context.Context, orgID, a... method GetAccountByEmail (line 152) | func (s *organizationService) GetAccountByEmail(ctx context.Context, o... method ListAccounts (line 156) | func (s *organizationService) ListAccounts(ctx context.Context, orgID ... method UpdateAccount (line 166) | func (s *organizationService) UpdateAccount(ctx context.Context, orgID... method DeleteAccount (line 190) | func (s *organizationService) DeleteAccount(ctx context.Context, orgID... method UpdateAccountLastLogin (line 194) | func (s *organizationService) UpdateAccountLastLogin(ctx context.Conte... method CheckAccountPermission (line 198) | func (s *organizationService) CheckAccountPermission(ctx context.Conte... method GetAccountStats (line 202) | func (s *organizationService) GetAccountStats(ctx context.Context, acc... function NewOrganizationService (line 15) | func NewOrganizationService(orgRepo domain.OrganizationRepository, accou... FILE: go-b2b-starter/internal/modules/organizations/app/services/organization_service_interface.go type OrganizationService (line 10) | type OrganizationService interface type CreateOrganizationRequest (line 36) | type CreateOrganizationRequest struct type UpdateOrganizationRequest (line 47) | type UpdateOrganizationRequest struct type CreateAccountRequest (line 56) | type CreateAccountRequest struct type UpdateAccountRequest (line 67) | type UpdateAccountRequest struct type ListOrganizationsRequest (line 77) | type ListOrganizationsRequest struct type ListOrganizationsResponse (line 83) | type ListOrganizationsResponse struct FILE: go-b2b-starter/internal/modules/organizations/cmd/init.go function Init (line 9) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/organizations/domain/auth_provider.go type AuthMember (line 10) | type AuthMember struct type AuthOrganization (line 23) | type AuthOrganization struct type AuthRole (line 33) | type AuthRole struct type CreateAuthMemberRequest (line 41) | type CreateAuthMemberRequest struct method Validate (line 88) | func (r *CreateAuthMemberRequest) Validate() error { type UpdateAuthMemberRequest (line 51) | type UpdateAuthMemberRequest struct method Validate (line 119) | func (r *UpdateAuthMemberRequest) Validate() error { type CreateAuthOrganizationRequest (line 61) | type CreateAuthOrganizationRequest struct method Validate (line 130) | func (r *CreateAuthOrganizationRequest) Validate() error { type AssignAuthRolesRequest (line 67) | type AssignAuthRolesRequest struct method Validate (line 141) | func (r *AssignAuthRolesRequest) Validate() error { type RemoveAuthMembersRequest (line 74) | type RemoveAuthMembersRequest struct method Validate (line 155) | func (r *RemoveAuthMembersRequest) Validate() error { type SendMagicLinkRequest (line 80) | type SendMagicLinkRequest struct method Validate (line 105) | func (r *SendMagicLinkRequest) Validate() error { type AuthOrganizationRepository (line 166) | type AuthOrganizationRepository interface type AuthMemberRepository (line 174) | type AuthMemberRepository interface type AuthRoleRepository (line 186) | type AuthRoleRepository interface FILE: go-b2b-starter/internal/modules/organizations/domain/entity.go type Organization (line 6) | type Organization struct method GetID (line 43) | func (o *Organization) GetID() int32 { method Validate (line 48) | func (o *Organization) Validate() error { type Account (line 19) | type Account struct method GetID (line 62) | func (a *Account) GetID() int32 { method Validate (line 67) | func (a *Account) Validate() error { method IsOwner (line 81) | func (a *Account) IsOwner() bool { method IsAdmin (line 86) | func (a *Account) IsAdmin() bool { method CanManageAccounts (line 91) | func (a *Account) CanManageAccounts() bool { type OrganizationContext (line 36) | type OrganizationContext struct FILE: go-b2b-starter/internal/modules/organizations/domain/errors.go type OrganizationError (line 69) | type OrganizationError struct method Error (line 76) | func (e *OrganizationError) Error() string { method Unwrap (line 80) | func (e *OrganizationError) Unwrap() error { function NewOrganizationError (line 84) | func NewOrganizationError(errorType, message string, orgID *int32, cause... type AccountError (line 94) | type AccountError struct method Error (line 102) | func (e *AccountError) Error() string { method Unwrap (line 106) | func (e *AccountError) Unwrap() error { function NewAccountError (line 110) | func NewAccountError(errorType, message string, accountID, orgID *int32,... FILE: go-b2b-starter/internal/modules/organizations/domain/events/organization_events.go constant OrganizationCreatedEventType (line 10) | OrganizationCreatedEventType = "organization.created" constant OrganizationUpdatedEventType (line 11) | OrganizationUpdatedEventType = "organization.updated" constant AccountCreatedEventType (line 12) | AccountCreatedEventType = "account.created" constant AccountUpdatedEventType (line 13) | AccountUpdatedEventType = "account.updated" constant AccountDeletedEventType (line 14) | AccountDeletedEventType = "account.deleted" constant AccountLoginEventType (line 15) | AccountLoginEventType = "account.login" type OrganizationCreatedEvent (line 18) | type OrganizationCreatedEvent struct type OrganizationUpdatedEvent (line 26) | type OrganizationUpdatedEvent struct type AccountCreatedEvent (line 34) | type AccountCreatedEvent struct type AccountUpdatedEvent (line 42) | type AccountUpdatedEvent struct type AccountDeletedEvent (line 52) | type AccountDeletedEvent struct type AccountLoginEvent (line 61) | type AccountLoginEvent struct FILE: go-b2b-starter/internal/modules/organizations/domain/repository.go type OrganizationRepository (line 6) | type OrganizationRepository interface type AccountRepository (line 20) | type AccountRepository interface type OrganizationStats (line 35) | type OrganizationStats struct type AccountStats (line 42) | type AccountStats struct type AccountPermission (line 49) | type AccountPermission struct FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/account_repository.go type accountRepository (line 16) | type accountRepository struct method Create (line 25) | func (r *accountRepository) Create(ctx context.Context, account *domai... method GetByID (line 46) | func (r *accountRepository) GetByID(ctx context.Context, orgID, accoun... method GetByEmail (line 63) | func (r *accountRepository) GetByEmail(ctx context.Context, orgID int3... method ListByOrganization (line 80) | func (r *accountRepository) ListByOrganization(ctx context.Context, or... method Update (line 94) | func (r *accountRepository) Update(ctx context.Context, account *domai... method UpdateStytchInfo (line 117) | func (r *accountRepository) UpdateStytchInfo(ctx context.Context, orgI... method UpdateLastLogin (line 138) | func (r *accountRepository) UpdateLastLogin(ctx context.Context, orgID... method Delete (line 155) | func (r *accountRepository) Delete(ctx context.Context, orgID, account... method GetOrganization (line 172) | func (r *accountRepository) GetOrganization(ctx context.Context, accou... method CheckPermission (line 191) | func (r *accountRepository) CheckPermission(ctx context.Context, orgID... method GetStats (line 213) | func (r *accountRepository) GetStats(ctx context.Context, accountID in... method mapToDomain (line 252) | func (r *accountRepository) mapToDomain(sqlcAccount *sqlc.Organization... function NewAccountRepository (line 21) | func NewAccountRepository(store sqlc.Store) domain.AccountRepository { FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/organization_repository.go type organizationRepository (line 16) | type organizationRepository struct method Create (line 25) | func (r *organizationRepository) Create(ctx context.Context, org *doma... method GetByID (line 40) | func (r *organizationRepository) GetByID(ctx context.Context, id int32... method GetBySlug (line 52) | func (r *organizationRepository) GetBySlug(ctx context.Context, slug s... method GetByStytchID (line 64) | func (r *organizationRepository) GetByStytchID(ctx context.Context, st... method GetByUserEmail (line 76) | func (r *organizationRepository) GetByUserEmail(ctx context.Context, e... method Update (line 88) | func (r *organizationRepository) Update(ctx context.Context, org *doma... method UpdateStytchInfo (line 109) | func (r *organizationRepository) UpdateStytchInfo(ctx context.Context,... method List (line 128) | func (r *organizationRepository) List(ctx context.Context, limit, offs... method Delete (line 147) | func (r *organizationRepository) Delete(ctx context.Context, id int32)... method GetStats (line 154) | func (r *organizationRepository) GetStats(ctx context.Context, id int3... method mapToDomain (line 186) | func (r *organizationRepository) mapToDomain(sqlcOrg *sqlc.Organizatio... function NewOrganizationRepository (line 21) | func NewOrganizationRepository(store sqlc.Store) domain.OrganizationRepo... FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/slug_generator.go function generateSlug (line 11) | func generateSlug(name string) string { function generateSlugWithSuffix (line 42) | func generateSlugWithSuffix(baseSlug string, attempt int) string { FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/stytch_member_repository.go type stytchMemberRepository (line 17) | type stytchMemberRepository struct method CreateMember (line 32) | func (r *stytchMemberRepository) CreateMember(ctx context.Context, req... method UpdateMember (line 58) | func (r *stytchMemberRepository) UpdateMember(ctx context.Context, req... method GetMember (line 90) | func (r *stytchMemberRepository) GetMember(ctx context.Context, organi... method GetMemberByEmail (line 109) | func (r *stytchMemberRepository) GetMemberByEmail(ctx context.Context,... method ListMembers (line 128) | func (r *stytchMemberRepository) ListMembers(ctx context.Context, orga... method RemoveMembers (line 173) | func (r *stytchMemberRepository) RemoveMembers(ctx context.Context, re... method AssignRoles (line 191) | func (r *stytchMemberRepository) AssignRoles(ctx context.Context, req ... method SendMagicLink (line 212) | func (r *stytchMemberRepository) SendMagicLink(ctx context.Context, re... function NewStytchMemberRepository (line 24) | func NewStytchMemberRepository(client *stytchcfg.Client, cfg stytchcfg.C... function mapToAuthMember (line 248) | func mapToAuthMember(src organizations.Member) *domain.AuthMember { FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/stytch_organization_repository.go type stytchOrganizationRepository (line 16) | type stytchOrganizationRepository struct method CreateOrganization (line 35) | func (r *stytchOrganizationRepository) CreateOrganization(ctx context.... method GetOrganization (line 109) | func (r *stytchOrganizationRepository) GetOrganization(ctx context.Con... method DeleteOrganization (line 122) | func (r *stytchOrganizationRepository) DeleteOrganization(ctx context.... method CheckEmailExists (line 135) | func (r *stytchOrganizationRepository) CheckEmailExists(ctx context.Co... function NewStytchOrganizationRepository (line 23) | func NewStytchOrganizationRepository( function mapToAuthOrganization (line 169) | func mapToAuthOrganization(src organizations.Organization) *domain.AuthO... FILE: go-b2b-starter/internal/modules/organizations/infra/repositories/stytch_role_repository.go type stytchRoleRepository (line 13) | type stytchRoleRepository struct method GetRoleByID (line 26) | func (r *stytchRoleRepository) GetRoleByID(ctx context.Context, roleID... method GetRoleBySlug (line 43) | func (r *stytchRoleRepository) GetRoleBySlug(ctx context.Context, slug... method ListRoles (line 60) | func (r *stytchRoleRepository) ListRoles(ctx context.Context, limit, o... method findRole (line 91) | func (r *stytchRoleRepository) findRole(ctx context.Context, predicate... method fetchPolicy (line 109) | func (r *stytchRoleRepository) fetchPolicy(ctx context.Context) (*rbac... function NewStytchRoleRepository (line 19) | func NewStytchRoleRepository(client *stytchcfg.Client, logger loggerDoma... function mapToAuthRole (line 117) | func mapToAuthRole(src *rbac.PolicyRole) *domain.AuthRole { FILE: go-b2b-starter/internal/modules/organizations/member_handler.go type MemberHandler (line 15) | type MemberHandler struct method BootstrapOrganization (line 41) | func (h *MemberHandler) BootstrapOrganization(c *gin.Context) { method AddMember (line 85) | func (h *MemberHandler) AddMember(c *gin.Context) { method ListMembers (line 138) | func (h *MemberHandler) ListMembers(c *gin.Context) { method GetProfile (line 175) | func (h *MemberHandler) GetProfile(c *gin.Context) { method DeleteMember (line 234) | func (h *MemberHandler) DeleteMember(c *gin.Context) { method CheckEmail (line 300) | func (h *MemberHandler) CheckEmail(c *gin.Context) { function NewMemberHandler (line 20) | func NewMemberHandler( FILE: go-b2b-starter/internal/modules/organizations/module.go type Module (line 14) | type Module struct method RegisterDependencies (line 26) | func (m *Module) RegisterDependencies() error { function NewModule (line 18) | func NewModule(container *dig.Container) *Module { FILE: go-b2b-starter/internal/modules/organizations/organization_handler.go type OrganizationHandler (line 15) | type OrganizationHandler struct method CreateOrganization (line 28) | func (h *OrganizationHandler) CreateOrganization(c *gin.Context) { method GetOrganization (line 47) | func (h *OrganizationHandler) GetOrganization(c *gin.Context) { method GetOrganizationBySlug (line 70) | func (h *OrganizationHandler) GetOrganizationBySlug(c *gin.Context) { method UpdateOrganization (line 92) | func (h *OrganizationHandler) UpdateOrganization(c *gin.Context) { method ListOrganizations (line 122) | func (h *OrganizationHandler) ListOrganizations(c *gin.Context) { method GetOrganizationStats (line 146) | func (h *OrganizationHandler) GetOrganizationStats(c *gin.Context) { function NewOrganizationHandler (line 20) | func NewOrganizationHandler(orgService services.OrganizationService, log... FILE: go-b2b-starter/internal/modules/organizations/provider.go type Provider (line 11) | type Provider struct method RegisterDependencies (line 22) | func (p *Provider) RegisterDependencies() error { function NewProvider (line 15) | func NewProvider(container *dig.Container) *Provider { FILE: go-b2b-starter/internal/modules/organizations/routes.go type Routes (line 10) | type Routes struct method RegisterRoutes (line 29) | func (r *Routes) RegisterRoutes(router *gin.RouterGroup, resolver serv... method Routes (line 100) | func (r *Routes) Routes(router *gin.RouterGroup, resolver serverDomain... function NewRoutes (line 16) | func NewRoutes( FILE: go-b2b-starter/internal/modules/paywall/cmd/init.go function InitMiddleware (line 27) | func InitMiddleware(container *dig.Container) error { function InitMiddlewareWithConfig (line 44) | func InitMiddlewareWithConfig(container *dig.Container, config *paywall.... function SetupMiddleware (line 52) | func SetupMiddleware(container *dig.Container) error { function RegisterNamedMiddlewares (line 57) | func RegisterNamedMiddlewares(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/paywall/context.go type contextKey (line 11) | type contextKey constant subscriptionStatusKey (line 15) | subscriptionStatusKey contextKey = "subscription_status" function SetSubscriptionStatus (line 22) | func SetSubscriptionStatus(c *gin.Context, status *SubscriptionStatus) { function GetSubscriptionStatus (line 37) | func GetSubscriptionStatus(c *gin.Context) *SubscriptionStatus { function MustGetSubscriptionStatus (line 50) | func MustGetSubscriptionStatus(c *gin.Context) *SubscriptionStatus { function IsSubscriptionActive (line 68) | func IsSubscriptionActive(c *gin.Context) bool { function WithSubscriptionStatus (line 79) | func WithSubscriptionStatus(ctx context.Context, status *SubscriptionSta... function SubscriptionStatusFromContext (line 86) | func SubscriptionStatusFromContext(ctx context.Context) *SubscriptionSta... FILE: go-b2b-starter/internal/modules/paywall/errors.go function IsPaymentRequiredError (line 38) | func IsPaymentRequiredError(err error) bool { function HTTPStatusCode (line 51) | func HTTPStatusCode(err error) int { type ErrorResponse (line 65) | type ErrorResponse struct FILE: go-b2b-starter/internal/modules/paywall/middleware.go type MiddlewareConfig (line 12) | type MiddlewareConfig struct function DefaultMiddlewareConfig (line 27) | func DefaultMiddlewareConfig() *MiddlewareConfig { function defaultErrorHandler (line 36) | func defaultErrorHandler(c *gin.Context, statusCode int, response *Error... type Middleware (line 43) | type Middleware struct method RequireActiveSubscription (line 79) | func (m *Middleware) RequireActiveSubscription() gin.HandlerFunc { method buildErrorResponse (line 145) | func (m *Middleware) buildErrorResponse(status *SubscriptionStatus) *E... method OptionalSubscriptionStatus (line 200) | func (m *Middleware) OptionalSubscriptionStatus() gin.HandlerFunc { function NewMiddleware (line 51) | func NewMiddleware(provider SubscriptionStatusProvider, config *Middlewa... function RequireActiveSubscriptionFunc (line 182) | func RequireActiveSubscriptionFunc(provider SubscriptionStatusProvider) ... FILE: go-b2b-starter/internal/modules/paywall/provider.go type ServerMiddlewareRegistrar (line 12) | type ServerMiddlewareRegistrar interface function SetupMiddleware (line 30) | func SetupMiddleware(container *dig.Container) error { function SetupMiddlewareWithConfig (line 52) | func SetupMiddlewareWithConfig(container *dig.Container, config *Middlew... function RegisterNamedMiddlewares (line 80) | func RegisterNamedMiddlewares(container *dig.Container) error { FILE: go-b2b-starter/internal/modules/paywall/subscription.go type SubscriptionStatusProvider (line 85) | type SubscriptionStatusProvider interface type SubscriptionStatus (line 102) | type SubscriptionStatus struct method IsTrialing (line 124) | func (s *SubscriptionStatus) IsTrialing() bool { method IsPastDue (line 129) | func (s *SubscriptionStatus) IsPastDue() bool { method IsCanceled (line 134) | func (s *SubscriptionStatus) IsCanceled() bool { constant StatusActive (line 141) | StatusActive = "active" constant StatusTrialing (line 142) | StatusTrialing = "trialing" constant StatusPastDue (line 143) | StatusPastDue = "past_due" constant StatusCanceled (line 144) | StatusCanceled = "canceled" constant StatusUnpaid (line 145) | StatusUnpaid = "unpaid" constant StatusNone (line 146) | StatusNone = "none" function IsActiveStatus (line 151) | func IsActiveStatus(status string) bool { FILE: go-b2b-starter/internal/platform/eventbus/bus.go type EventBus (line 11) | type EventBus interface type InMemoryEventBus (line 23) | type InMemoryEventBus struct method Publish (line 39) | func (bus *InMemoryEventBus) Publish(ctx context.Context, event Event)... method Subscribe (line 93) | func (bus *InMemoryEventBus) Subscribe(eventName string, handler Event... method Unsubscribe (line 107) | func (bus *InMemoryEventBus) Unsubscribe(eventName string, handler Eve... method Close (line 124) | func (bus *InMemoryEventBus) Close() error { method GetSubscriberCount (line 134) | func (bus *InMemoryEventBus) GetSubscriberCount(eventName string) int { function NewInMemoryEventBus (line 30) | func NewInMemoryEventBus(middleware ...EventMiddleware) EventBus { FILE: go-b2b-starter/internal/platform/eventbus/cmd/init.go function Init (line 5) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/eventbus/cmd/provider.go function ProvideEventBus (line 11) | func ProvideEventBus(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/eventbus/event.go type Event (line 9) | type Event interface type BaseEvent (line 21) | type BaseEvent struct method EventName (line 28) | func (e BaseEvent) EventName() string { method EventID (line 32) | func (e BaseEvent) EventID() string { method Timestamp (line 36) | func (e BaseEvent) Timestamp() time.Time { method Metadata (line 40) | func (e BaseEvent) Metadata() map[string]interface{} { type EventHandler (line 45) | type EventHandler type EventMiddleware (line 48) | type EventMiddleware FILE: go-b2b-starter/internal/platform/eventbus/events.go type InvoiceUploaded (line 13) | type InvoiceUploaded struct function NewInvoiceUploaded (line 22) | func NewInvoiceUploaded(invoiceID, fileID, userID int32, vendorName stri... type InvoiceValidated (line 38) | type InvoiceValidated struct function NewInvoiceValidated (line 45) | func NewInvoiceValidated(invoiceID, fileID int32, validationData map[str... type OCRRequested (line 60) | type OCRRequested struct function NewOCRRequested (line 66) | func NewOCRRequested(invoiceID, fileID int32) *OCRRequested { type TextExtracted (line 79) | type TextExtracted struct function NewTextExtracted (line 87) | func NewTextExtracted(invoiceID, fileID int32, extractedData map[string]... type DuplicateCheckRequested (line 103) | type DuplicateCheckRequested struct function NewDuplicateCheckRequested (line 109) | func NewDuplicateCheckRequested(invoiceID int32, data map[string]interfa... type DuplicateDetected (line 122) | type DuplicateDetected struct function NewDuplicateDetected (line 130) | func NewDuplicateDetected(invoiceID, duplicateOf int32, similarityScore ... type UniqueConfirmed (line 145) | type UniqueConfirmed struct function NewUniqueConfirmed (line 150) | func NewUniqueConfirmed(invoiceID int32) *UniqueConfirmed { type ApprovalRequested (line 163) | type ApprovalRequested struct function NewApprovalRequested (line 172) | func NewApprovalRequested(invoiceID, vendorID, requesterID int32, amount... type ApprovalGranted (line 188) | type ApprovalGranted struct function NewApprovalGranted (line 196) | func NewApprovalGranted(invoiceID, approverID, approvalID int32, comment... type ApprovalRejected (line 211) | type ApprovalRejected struct function NewApprovalRejected (line 219) | func NewApprovalRejected(invoiceID, approverID, approvalID int32, reason... type PaymentScheduled (line 235) | type PaymentScheduled struct function NewPaymentScheduled (line 245) | func NewPaymentScheduled(invoiceID, paymentID int32, scheduledDate time.... type PaymentExecuted (line 262) | type PaymentExecuted struct function NewPaymentExecuted (line 273) | func NewPaymentExecuted(invoiceID, paymentID, organizationID int32, tran... FILE: go-b2b-starter/internal/platform/eventbus/middleware.go function LoggingMiddleware (line 13) | func LoggingMiddleware(logger domain.Logger) EventMiddleware { function RecoveryMiddleware (line 47) | func RecoveryMiddleware(logger domain.Logger) EventMiddleware { function getMapKeys (line 78) | func getMapKeys(m map[string]interface{}) []string { function MetricsMiddleware (line 87) | func MetricsMiddleware() EventMiddleware { FILE: go-b2b-starter/internal/platform/llm/cmd/init.go function Init (line 11) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/llm/domain/service.go type CompletionRequest (line 5) | type CompletionRequest struct type CompletionResponse (line 11) | type CompletionResponse struct type EmbeddingRequest (line 17) | type EmbeddingRequest struct type EmbeddingResponse (line 22) | type EmbeddingResponse struct type StreamChunk (line 28) | type StreamChunk struct type LLMService (line 33) | type LLMService interface type LLMClient (line 38) | type LLMClient interface FILE: go-b2b-starter/internal/platform/llm/infra/openai_client.go type Config (line 23) | type Config struct method Validate (line 33) | func (c Config) Validate() error { type CircuitBreaker (line 44) | type CircuitBreaker struct method CanExecute (line 63) | func (cb *CircuitBreaker) CanExecute() bool { method RecordSuccess (line 84) | func (cb *CircuitBreaker) RecordSuccess() { method RecordFailure (line 96) | func (cb *CircuitBreaker) RecordFailure() { method GetStats (line 109) | func (cb *CircuitBreaker) GetStats() map[string]interface{} { function NewCircuitBreaker (line 54) | func NewCircuitBreaker(maxFailures int, resetTimeout time.Duration) *Cir... type OpenAIClient (line 121) | type OpenAIClient struct method Complete (line 260) | func (c *OpenAIClient) Complete(ctx context.Context, request domain.Co... method CompleteStream (line 427) | func (c *OpenAIClient) CompleteStream(ctx context.Context, request dom... method makeRequest (line 527) | func (c *OpenAIClient) makeRequest(ctx context.Context, request openAI... method GenerateEmbedding (line 659) | func (c *OpenAIClient) GenerateEmbedding(ctx context.Context, text str... method makeStreamRequest (line 756) | func (c *OpenAIClient) makeStreamRequest(ctx context.Context, request ... type openAIRequest (line 128) | type openAIRequest struct type ToolCall (line 137) | type ToolCall struct type openAIMessage (line 146) | type openAIMessage struct type openAIResponse (line 153) | type openAIResponse struct type openAIChoice (line 163) | type openAIChoice struct type CompletionTokensDetails (line 169) | type CompletionTokensDetails struct type openAIUsage (line 173) | type openAIUsage struct type openAIError (line 181) | type openAIError struct function NewLLMConfig (line 188) | func NewLLMConfig() Config { function NewOpenAIClient (line 206) | func NewOpenAIClient(config Config, logger loggerDomain.Logger) (domain.... function getEnvOrDefault (line 641) | func getEnvOrDefault(key, defaultValue string) string { function supportsTemperature (line 648) | func supportsTemperature(model string) bool { function supportsStop (line 653) | func supportsStop(model string) bool { type streamResponse (line 741) | type streamResponse struct function generateJitter (line 863) | func generateJitter(maxJitterMs int64) int64 { function isTemporaryError (line 876) | func isTemporaryError(err error) bool { function isPermanentError (line 904) | func isPermanentError(err error) bool { FILE: go-b2b-starter/internal/platform/logger/cmd/init.go function Init (line 7) | func Init(container *dig.Container) { FILE: go-b2b-starter/internal/platform/logger/cmd/provider.go function ProvideDependencies (line 8) | func ProvideDependencies(container *dig.Container) { FILE: go-b2b-starter/internal/platform/logger/domain/logger.go type Level (line 3) | type Level constant DebugLevel (line 6) | DebugLevel Level = iota constant InfoLevel (line 7) | InfoLevel constant WarnLevel (line 8) | WarnLevel constant ErrorLevel (line 9) | ErrorLevel constant FatalLevel (line 10) | FatalLevel type OutputType (line 13) | type OutputType constant ConsoleOutput (line 16) | ConsoleOutput OutputType = iota constant FileOutput (line 17) | FileOutput constant BothOutput (line 18) | BothOutput type Logger (line 23) | type Logger interface FILE: go-b2b-starter/internal/platform/logger/domain/options.go type Option (line 3) | type Option type Options (line 5) | type Options struct type FileOptions (line 11) | type FileOptions struct function WithLevel (line 19) | func WithLevel(level Level) Option { function WithOutput (line 25) | func WithOutput(output OutputType) Option { function WithFileOptions (line 31) | func WithFileOptions(fileOpts FileOptions) Option { FILE: go-b2b-starter/internal/platform/logger/factory.go function New (line 8) | func New(opts ...domain.Option) domain.Logger { FILE: go-b2b-starter/internal/platform/logger/internal/zerologger/factory.go function NewLogger (line 7) | func NewLogger(opts *domain.Options) domain.Logger { FILE: go-b2b-starter/internal/platform/logger/internal/zerologger/logger.go type zerologLogger (line 13) | type zerologLogger struct method Debug (line 55) | func (l *zerologLogger) Debug(msg string, fields ...logger.Fields) { method Info (line 59) | func (l *zerologLogger) Info(msg string, fields ...logger.Fields) { method Warn (line 63) | func (l *zerologLogger) Warn(msg string, fields ...logger.Fields) { method Error (line 67) | func (l *zerologLogger) Error(msg string, fields ...logger.Fields) { method Fatal (line 71) | func (l *zerologLogger) Fatal(msg string, fields ...logger.Fields) { method WithFields (line 75) | func (l *zerologLogger) WithFields(fields logger.Fields) logger.Logger { method log (line 79) | func (l *zerologLogger) log(event *zerolog.Event, msg string, fields .... function newZerologLogger (line 17) | func newZerologLogger(opts *logger.Options) logger.Logger { function convertLogLevel (line 86) | func convertLogLevel(level logger.Level) zerolog.Level { FILE: go-b2b-starter/internal/platform/ocr/cmd/init.go function Init (line 11) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/ocr/domain/entity.go type OCRResponse (line 4) | type OCRResponse struct FILE: go-b2b-starter/internal/platform/ocr/domain/service.go type OCRService (line 6) | type OCRService interface FILE: go-b2b-starter/internal/platform/ocr/infra/config.go type Config (line 9) | type Config struct method Validate (line 15) | func (c Config) Validate() error { function NewOCRConfig (line 25) | func NewOCRConfig() Config { function getEnvOrDefault (line 35) | func getEnvOrDefault(key, defaultValue string) string { FILE: go-b2b-starter/internal/platform/ocr/infra/mistral_ocr_client.go type MistralOCRClient (line 17) | type MistralOCRClient struct method ExtractText (line 76) | func (m *MistralOCRClient) ExtractText(ctx context.Context, base64File... method validateInput (line 108) | func (m *MistralOCRClient) validateInput(base64File string, mimeType s... method isSupportedMimeType (line 122) | func (m *MistralOCRClient) isSupportedMimeType(mimeType string) bool { method buildMistralRequest (line 142) | func (m *MistralOCRClient) buildMistralRequest(base64File string, mime... method callMistralAPI (line 166) | func (m *MistralOCRClient) callMistralAPI(ctx context.Context, mistral... method convertResponse (line 210) | func (m *MistralOCRClient) convertResponse(mistralResponse *MistralOCR... method calculateConfidence (line 230) | func (m *MistralOCRClient) calculateConfidence(text string, pages int)... type MistralOCRRequest (line 24) | type MistralOCRRequest struct type MistralDocument (line 30) | type MistralDocument struct type MistralOCRResponse (line 36) | type MistralOCRResponse struct type MistralPage (line 40) | type MistralPage struct type MistralImage (line 47) | type MistralImage struct type MistralBoundingBox (line 51) | type MistralBoundingBox struct function NewMistralOCRClient (line 59) | func NewMistralOCRClient(config Config, logger loggerDomain.Logger) (dom... FILE: go-b2b-starter/internal/platform/ocr/infra/mock_ocr_client.go type MockOCRClient (line 14) | type MockOCRClient struct method ExtractText (line 30) | func (m *MockOCRClient) ExtractText(ctx context.Context, base64File st... function NewMockOCRClient (line 19) | func NewMockOCRClient(config Config, logger loggerDomain.Logger) (domain... FILE: go-b2b-starter/internal/platform/polar/client.go type Client (line 15) | type Client struct method Get (line 38) | func (c *Client) Get(ctx context.Context, path string) (*http.Response... method Patch (line 43) | func (c *Client) Patch(ctx context.Context, path string, body interfac... method Post (line 48) | func (c *Client) Post(ctx context.Context, path string, body interface... method doRequest (line 53) | func (c *Client) doRequest(ctx context.Context, method, path string, b... function NewClient (line 22) | func NewClient(config *Config) (*Client, error) { function DecodeJSON (line 95) | func DecodeJSON(resp *http.Response, v interface{}) error { FILE: go-b2b-starter/internal/platform/polar/cmd/init.go function Init (line 10) | func Init(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/polar/config.go type Config (line 10) | type Config struct method Validate (line 59) | func (c *Config) Validate() error { function LoadConfig (line 29) | func LoadConfig() (Config, error) { function DefaultConfig (line 75) | func DefaultConfig() *Config { function SandboxConfig (line 83) | func SandboxConfig() *Config { FILE: go-b2b-starter/internal/platform/polar/inject.go function Module (line 10) | func Module(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/polar/webhook.go function VerifyWebhookSignature (line 26) | func VerifyWebhookSignature(secret string, webhookID string, timestamp s... function ComputeWebhookSignature (line 78) | func ComputeWebhookSignature(secret string, webhookID string, timestamp ... FILE: go-b2b-starter/internal/platform/redis/cmd/init.go function Init (line 9) | func Init(dig *dig.Container) error { FILE: go-b2b-starter/internal/platform/redis/cmd/provider.go function provideRedisDependencies (line 10) | func provideRedisDependencies(container *dig.Container) error { function provideRedisStore (line 25) | func provideRedisStore() (redis.Client, error) { FILE: go-b2b-starter/internal/platform/redis/config.go type Config (line 7) | type Config struct function LoadConfig (line 15) | func LoadConfig() (Config, error) { FILE: go-b2b-starter/internal/platform/redis/init.go function InitRedis (line 5) | func InitRedis() (Client, error) { FILE: go-b2b-starter/internal/platform/redis/redis.go type redisClient (line 11) | type redisClient struct method Set (line 30) | func (c *redisClient) Set(ctx context.Context, key string, value inter... method Get (line 34) | func (c *redisClient) Get(ctx context.Context, key string) (string, er... method Delete (line 38) | func (c *redisClient) Delete(ctx context.Context, key string) error { method Exists (line 42) | func (c *redisClient) Exists(ctx context.Context, key string) (bool, e... function newRedisClient (line 15) | func newRedisClient(cfg Config) (*redisClient, error) { FILE: go-b2b-starter/internal/platform/redis/store.go type Client (line 8) | type Client interface FILE: go-b2b-starter/internal/platform/server/cmd/di.go type serverMiddlewareAdapter (line 16) | type serverMiddlewareAdapter struct method RegisterNamedMiddleware (line 20) | func (a *serverMiddlewareAdapter) RegisterNamedMiddleware(name string,... function SetupDependencies (line 25) | func SetupDependencies(container *dig.Container) { FILE: go-b2b-starter/internal/platform/server/cmd/init.go function Init (line 5) | func Init(container *dig.Container) { FILE: go-b2b-starter/internal/platform/server/config/config.go type Environment (line 10) | type Environment constant DEV (line 13) | DEV Environment = "DEV" constant PROD (line 14) | PROD Environment = "PROD" type Config (line 17) | type Config struct method GetSanitizationConfig (line 73) | func (c *Config) GetSanitizationConfig() SanitizationConfig { method IsProd (line 81) | func (c *Config) IsProd() bool { type SanitizationConfig (line 66) | type SanitizationConfig struct function LoadConfig (line 86) | func LoadConfig() (*Config, error) { function validateProductionConfig (line 129) | func validateProductionConfig(cfg *Config) error { FILE: go-b2b-starter/internal/platform/server/domain/health.go method setupHealthCheck (line 10) | func (s *HTTPServer) setupHealthCheck() { method setupRootEndpoint (line 31) | func (s *HTTPServer) setupRootEndpoint() { FILE: go-b2b-starter/internal/platform/server/domain/http_server.go type HTTPServer (line 17) | type HTTPServer struct method Start (line 53) | func (s *HTTPServer) Start() error { method MiddlewareResolver (line 62) | func (s *HTTPServer) MiddlewareResolver() MiddlewareResolver { method RegisterRoutes (line 67) | func (s *HTTPServer) RegisterRoutes(registrar RouteRegistrar, prefix s... method RegisterNamedMiddleware (line 84) | func (s *HTTPServer) RegisterNamedMiddleware(name string, middleware M... method createHTTPServer (line 89) | func (s *HTTPServer) createHTTPServer() *http.Server { method startServer (line 101) | func (s *HTTPServer) startServer(srv *http.Server) { method handleGracefulShutdown (line 119) | func (s *HTTPServer) handleGracefulShutdown(srv *http.Server) error { method Get (line 142) | func (s *HTTPServer) Get(name string) gin.HandlerFunc { method GetMiddleware (line 154) | func (s *HTTPServer) GetMiddleware(name string) gin.HandlerFunc { function NewHTTPServer (line 27) | func NewHTTPServer( FILE: go-b2b-starter/internal/platform/server/domain/middleware.go method setupMiddleware (line 10) | func (s *HTTPServer) setupMiddleware() { method requestLoggingMiddleware (line 40) | func (s *HTTPServer) requestLoggingMiddleware() gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/server/domain/middleware_resolver.go type MiddlewareResolver (line 6) | type MiddlewareResolver interface FILE: go-b2b-starter/internal/platform/server/domain/server.go constant ApiPrefix (line 7) | ApiPrefix = "/api" constant ApiVersion1 (line 8) | ApiVersion1 = "v1" type RouteRegistrar (line 13) | type RouteRegistrar type MiddlewareFunc (line 16) | type MiddlewareFunc type Server (line 21) | type Server interface FILE: go-b2b-starter/internal/platform/server/errors/errors.go type APIError (line 3) | type APIError struct function NewAPIError (line 8) | func NewAPIError(code int, message string) *APIError { FILE: go-b2b-starter/internal/platform/server/gin/gin.go type GinRouter (line 8) | type GinRouter struct method GetHandler (line 22) | func (g *GinRouter) GetHandler() *gin.Engine { function NewGinRouter (line 13) | func NewGinRouter(cfg *config.Config) *GinRouter { FILE: go-b2b-starter/internal/platform/server/logging/logger.go type Logger (line 7) | type Logger struct method Error (line 20) | func (l *Logger) Error(msg string, err error) { method Fatal (line 24) | func (l *Logger) Fatal(msg string, err error) { function InitLogger (line 11) | func InitLogger() (*Logger, error) { function Error (line 29) | func Error(err error) zap.Field { FILE: go-b2b-starter/internal/platform/server/logging/security_logger.go type SecurityLogger (line 11) | type SecurityLogger struct method LogSecurityEvent (line 32) | func (sl *SecurityLogger) LogSecurityEvent(event SecurityEvent) { method LogFailedAuth (line 45) | func (sl *SecurityLogger) LogFailedAuth(ip string, userID string, reas... method LogSuspiciousActivity (line 56) | func (sl *SecurityLogger) LogSuspiciousActivity(ip string, description... method LogBlacklisted (line 66) | func (sl *SecurityLogger) LogBlacklisted(ip string) { type SecurityEvent (line 15) | type SecurityEvent struct function NewSecurityLogger (line 26) | func NewSecurityLogger(baseLogger *zap.SugaredLogger) *SecurityLogger { FILE: go-b2b-starter/internal/platform/server/metrics/prometheus.go function SetupPrometheus (line 8) | func SetupPrometheus(router *gin.Engine) { FILE: go-b2b-starter/internal/platform/server/middleware/cors.go function CORS (line 10) | func CORS(allowedOrigins []string) gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/server/middleware/ip_protection.go type IPProtection (line 12) | type IPProtection struct method Stop (line 43) | func (ip *IPProtection) Stop() { method periodicCleanup (line 49) | func (ip *IPProtection) periodicCleanup() { method cleanupFailedAttempts (line 61) | func (ip *IPProtection) cleanupFailedAttempts() { method Protect (line 75) | func (ip *IPProtection) Protect() gin.HandlerFunc { method isWhitelisted (line 102) | func (ip *IPProtection) isWhitelisted(clientIP string) bool { method isBlacklisted (line 108) | func (ip *IPProtection) isBlacklisted(clientIP string) bool { method isSuspicious (line 115) | func (ip *IPProtection) isSuspicious(clientIP string) bool { method RecordFailedAttempt (line 132) | func (ip *IPProtection) RecordFailedAttempt(clientIP string) { method addToBlacklist (line 157) | func (ip *IPProtection) addToBlacklist(clientIP string) { method AddToWhitelist (line 164) | func (ip *IPProtection) AddToWhitelist(clientIP string) { method RemoveFromBlacklist (line 171) | func (ip *IPProtection) RemoveFromBlacklist(clientIP string) { type FailedAttempt (line 21) | type FailedAttempt struct function NewIPProtection (line 27) | func NewIPProtection() *IPProtection { FILE: go-b2b-starter/internal/platform/server/middleware/ratelimit.go function RateLimiter (line 10) | func RateLimiter(rateLimitPerSecond int) gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/server/middleware/recovery.go constant stackSize (line 18) | stackSize = 4 << 10 function Recovery (line 21) | func Recovery(logger *logging.Logger) gin.HandlerFunc { function stack (line 61) | func stack(_ int) []byte { FILE: go-b2b-starter/internal/platform/server/middleware/request_id.go constant RequestIDHeader (line 10) | RequestIDHeader = "X-Request-ID" constant RequestIDKey (line 13) | RequestIDKey = "request_id" function RequestID (line 17) | func RequestID() gin.HandlerFunc { function generateRequestID (line 36) | func generateRequestID() string { function GetRequestID (line 41) | func GetRequestID(c *gin.Context) string { FILE: go-b2b-starter/internal/platform/server/middleware/request_size_limit.go function RequestSizeLimit (line 12) | func RequestSizeLimit(maxSize int64) gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/server/middleware/sanatization.go function RequestSanitization (line 14) | func RequestSanitization(config config.SanitizationConfig) gin.HandlerFu... function containsPathTraversal (line 51) | func containsPathTraversal(path string) bool { function containsXSS (line 61) | func containsXSS(input string) bool { function containsSQLInjection (line 77) | func containsSQLInjection(input string) bool { FILE: go-b2b-starter/internal/platform/server/middleware/security_headers.go function SecurityHeaders (line 7) | func SecurityHeaders() gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/server/middleware/timeout.go function Timeout (line 14) | func Timeout(timeout time.Duration) gin.HandlerFunc { type bodyLogWriter (line 67) | type bodyLogWriter struct method WriteHeader (line 72) | func (w *bodyLogWriter) WriteHeader(code int) { FILE: go-b2b-starter/internal/platform/server/middleware/validator.go function InitValidator (line 10) | func InitValidator() *validator.Validate { function ValidateRequest (line 15) | func ValidateRequest(structPtr interface{}) gin.HandlerFunc { FILE: go-b2b-starter/internal/platform/stytch/client.go type Client (line 12) | type Client struct method API (line 43) | func (c *Client) API() *b2bstytchapi.API { method Config (line 48) | func (c *Client) Config() Config { function NewClient (line 18) | func NewClient(cfg Config) (*Client, error) { FILE: go-b2b-starter/internal/platform/stytch/cmd/provider.go function ProvideStytchDependencies (line 14) | func ProvideStytchDependencies(container *dig.Container) error { function provideStytchClient (line 30) | func provideStytchClient(cfg *stytch.Config, log logger.Logger) (*stytch... function isPlaceholderCredentials (line 45) | func isPlaceholderCredentials(cfg *stytch.Config) bool { function provideRBACPolicyService (line 52) | func provideRBACPolicyService( FILE: go-b2b-starter/internal/platform/stytch/config.go constant EnvTest (line 13) | EnvTest = "test" constant EnvLive (line 14) | EnvLive = "live" type Config (line 18) | type Config struct function LoadConfig (line 34) | func LoadConfig() (*Config, error) { FILE: go-b2b-starter/internal/platform/stytch/errors.go function IsDuplicateSlugError (line 32) | func IsDuplicateSlugError(err error) bool { function MapError (line 46) | func MapError(err error) error { FILE: go-b2b-starter/internal/platform/stytch/inject.go function ProvideDependencies (line 12) | func ProvideDependencies(container *dig.Container) error { FILE: go-b2b-starter/internal/platform/stytch/rbac_policy.go constant rbacPolicyCacheKey (line 17) | rbacPolicyCacheKey = "stytch:rbac:policy" constant rbacPolicyCacheTTL (line 19) | rbacPolicyCacheTTL = 5 * time.Minute type RBACPolicyService (line 23) | type RBACPolicyService struct method GetRolePermissions (line 43) | func (s *RBACPolicyService) GetRolePermissions(ctx context.Context, ro... method getPolicy (line 65) | func (s *RBACPolicyService) getPolicy(ctx context.Context) (*rbac.Poli... method fetchPolicyFromStytch (line 93) | func (s *RBACPolicyService) fetchPolicyFromStytch(ctx context.Context)... method cachePolicy (line 114) | func (s *RBACPolicyService) cachePolicy(ctx context.Context, policy *r... method convertPermissions (line 144) | func (s *RBACPolicyService) convertPermissions(permissions []rbac.Poli... method expandWildcardActions (line 177) | func (s *RBACPolicyService) expandWildcardActions(resourceID string, a... function NewRBACPolicyService (line 29) | func NewRBACPolicyService( function normalizeRoleID (line 218) | func normalizeRoleID(roleID string) string { FILE: go-b2b-starter/pkg/httperr/errors.go function IsNotFoundError (line 8) | func IsNotFoundError(err error) bool { function IsConflictError (line 16) | func IsConflictError(err error) bool { function IsBadRequestError (line 24) | func IsBadRequestError(err error) bool { function IsAuthenticationError (line 32) | func IsAuthenticationError(err error) bool { function IsAuthorizationError (line 40) | func IsAuthorizationError(err error) bool { function IsInternalServerError (line 48) | func IsInternalServerError(err error) bool { function GetErrorCode (line 56) | func GetErrorCode(err error) string { function GetErrorMessage (line 64) | func GetErrorMessage(err error) string { FILE: go-b2b-starter/pkg/httperr/http_error.go type HTTPError (line 3) | type HTTPError struct method Error (line 9) | func (e HTTPError) Error() string { function NewHTTPError (line 13) | func NewHTTPError(statusCode int, code, message string) HTTPError { FILE: go-b2b-starter/pkg/pagination/pagination.go type PagePagination (line 5) | type PagePagination struct type Meta (line 10) | type Meta struct function NewPagePagination (line 23) | func NewPagePagination[T any](totalItems, page, pageSize int, items []T)... function PageToOffset (line 62) | func PageToOffset(page int, limit int) (int, error) { FILE: go-b2b-starter/pkg/pagination/pramas.go type SearchableParams (line 3) | type SearchableParams struct method Validate (line 10) | func (s *SearchableParams) Validate() error { type ListableParams (line 26) | type ListableParams struct method Validate (line 32) | func (s *ListableParams) Validate() error { FILE: go-b2b-starter/pkg/pagination/util.go function PaginationCalc (line 5) | func PaginationCalc(offset, limit int) (page, pageSize int) { FILE: go-b2b-starter/pkg/response/response.go function Success (line 10) | func Success(c *gin.Context, statusCode int, data interface{}) { function Error (line 18) | func Error(c *gin.Context, statusCode int, message string, err error) { FILE: go-b2b-starter/pkg/slugify/slugify.go function Slugify (line 10) | func Slugify(s string) string { FILE: next_b2b_starter/app/api/auth/session/refresh/route.ts function POST (line 15) | async function POST() { FILE: next_b2b_starter/app/api/billing/webhook/route.ts function handleSubscriptionEvent (line 6) | async function handleSubscriptionEvent(_eventType: string, _payload: unk... constant POST (line 16) | const POST = webhookSecret FILE: next_b2b_starter/app/auth/page.tsx function AuthPage (line 40) | function AuthPage() { FILE: next_b2b_starter/app/authenticate/page.tsx constant SESSION_DURATION_MINUTES (line 11) | const SESSION_DURATION_MINUTES = Number( constant DEFAULT_DESTINATION (line 15) | const DEFAULT_DESTINATION = "/dashboard"; type StatusState (line 17) | type StatusState = { constant INITIAL_STATUS (line 23) | const INITIAL_STATUS: StatusState = { function extractErrorMessage (line 29) | function extractErrorMessage(error: unknown): string { function AuthenticateRedirectPage (line 45) | function AuthenticateRedirectPage() { FILE: next_b2b_starter/app/dashboard/knowledge/components/chat-interface.tsx type ChatInterfaceProps (line 13) | interface ChatInterfaceProps { function EmptyState (line 24) | function EmptyState({ onSuggestionClick }: { onSuggestionClick?: (text: ... function LoadingSkeleton (line 61) | function LoadingSkeleton() { function ChatInterface (line 75) | function ChatInterface({ FILE: next_b2b_starter/app/dashboard/knowledge/components/chat-message.tsx type ChatMessageProps (line 11) | interface ChatMessageProps { function ChatMessage (line 16) | function ChatMessage({ message, sources }: ChatMessageProps) { function TypingIndicator (line 59) | function TypingIndicator() { FILE: next_b2b_starter/app/dashboard/knowledge/components/document-list.tsx type DocumentListProps (line 26) | interface DocumentListProps { function DocumentCard (line 35) | function DocumentCard({ function DocumentListSkeleton (line 137) | function DocumentListSkeleton({ compact }: { compact?: boolean }) { function EmptyDocumentsState (line 153) | function EmptyDocumentsState({ compact }: { compact?: boolean }) { function DocumentList (line 180) | function DocumentList({ FILE: next_b2b_starter/app/dashboard/knowledge/components/document-sources.tsx type DocumentSourcesProps (line 8) | interface DocumentSourcesProps { function DocumentSources (line 12) | function DocumentSources({ sources }: DocumentSourcesProps) { FILE: next_b2b_starter/app/dashboard/knowledge/components/document-upload.tsx type DocumentUploadProps (line 13) | interface DocumentUploadProps { function DocumentUpload (line 18) | function DocumentUpload({ FILE: next_b2b_starter/app/dashboard/knowledge/components/knowledge-content.tsx function KnowledgeContent (line 13) | function KnowledgeContent() { FILE: next_b2b_starter/app/dashboard/knowledge/components/knowledge-sidebar.tsx type KnowledgeSidebarProps (line 14) | interface KnowledgeSidebarProps { function KnowledgeSidebar (line 29) | function KnowledgeSidebar({ function ChatsTab (line 103) | function ChatsTab({ function SourcesTab (line 172) | function SourcesTab({ FILE: next_b2b_starter/app/dashboard/knowledge/layout.tsx function KnowledgeLayout (line 8) | function KnowledgeLayout({ FILE: next_b2b_starter/app/dashboard/knowledge/page.tsx function KnowledgePage (line 3) | function KnowledgePage() { FILE: next_b2b_starter/app/dashboard/layout.tsx function Layout (line 7) | async function Layout({ FILE: next_b2b_starter/app/dashboard/page.tsx type DashboardPageProps (line 4) | interface DashboardPageProps { function DashboardPage (line 8) | async function DashboardPage({ searchParams }: DashboardPageProps) { FILE: next_b2b_starter/app/dashboard/settings/components/invite-member.tsx type InviteMemberProps (line 19) | interface InviteMemberProps { type RoleOption (line 29) | interface RoleOption { constant DEFAULT_ROLES (line 38) | const DEFAULT_ROLES: RoleOption[] = [ function InviteMember (line 59) | function InviteMember({ FILE: next_b2b_starter/app/dashboard/settings/components/member-list.tsx type MemberListProps (line 27) | interface MemberListProps { function MemberList (line 36) | function MemberList({ FILE: next_b2b_starter/app/dashboard/settings/components/profile-section.tsx type ProfileSectionProps (line 5) | interface ProfileSectionProps { function ProfileSection (line 9) | function ProfileSection({ profile }: ProfileSectionProps) { FILE: next_b2b_starter/app/dashboard/settings/components/profile-tab.tsx type ProfileTabProps (line 24) | interface ProfileTabProps { function ProfileTab (line 34) | function ProfileTab({ FILE: next_b2b_starter/app/dashboard/settings/components/settings-content.tsx type SettingsContentProps (line 50) | interface SettingsContentProps { type SettingsView (line 54) | type SettingsView = "overview" | "profile" | "members" | "subscription"; type OverviewSection (line 56) | interface OverviewSection { constant DETAIL_META (line 66) | const DETAIL_META: Record, { title: st... function parseViewParam (line 81) | function parseViewParam(raw: string | null): SettingsView | null { function getPlanNameFromRecord (line 90) | function getPlanNameFromRecord(record: Record | null | ... function resolvePlanLabel (line 117) | function resolvePlanLabel(state: SubscriptionGateState | null): string { function getSubscriptionQuickStatus (line 150) | function getSubscriptionQuickStatus( function SettingsContent (line 213) | function SettingsContent({}: SettingsContentProps = {}) { FILE: next_b2b_starter/app/dashboard/settings/components/subscription-tab.tsx type SubscriptionTabProps (line 43) | interface SubscriptionTabProps { function SubscriptionTab (line 50) | function SubscriptionTab({ function SummaryMetric (line 481) | function SummaryMetric({ label, value }: { label: string; value: string ... function remainingInvoicesText (line 492) | function remainingInvoicesText(limit: number, used: number) { function SubscriptionSkeleton (line 498) | function SubscriptionSkeleton() { function getStatusDisplay (line 516) | function getStatusDisplay( function titleCase (line 560) | function titleCase(value: string) { FILE: next_b2b_starter/app/dashboard/settings/layout.tsx function SettingsLayout (line 8) | function SettingsLayout({ FILE: next_b2b_starter/app/dashboard/settings/page.tsx function SettingsPage (line 3) | function SettingsPage() { FILE: next_b2b_starter/app/head.tsx function Head (line 1) | function Head() { FILE: next_b2b_starter/app/layout.tsx function RootLayout (line 92) | async function RootLayout({ FILE: next_b2b_starter/app/not-found.tsx function NotFound (line 7) | function NotFound() { FILE: next_b2b_starter/app/page.tsx function HomePage (line 5) | function HomePage() { FILE: next_b2b_starter/app/robots.ts function robots (line 3) | function robots(): MetadataRoute.Robots { FILE: next_b2b_starter/app/signup/page.tsx function SignupPage (line 9) | function SignupPage() { FILE: next_b2b_starter/app/sitemap.ts function sitemap (line 3) | function sitemap(): MetadataRoute.Sitemap { FILE: next_b2b_starter/components/auth/can.tsx type CanProps (line 11) | interface CanProps { function Can (line 92) | function Can({ FILE: next_b2b_starter/components/auth/permission-gate.tsx type PermissionGateProps (line 15) | interface PermissionGateProps { function AccessDenied (line 66) | function AccessDenied({ onGoBack }: { onGoBack: () => void }) { function PermissionGate (line 133) | function PermissionGate({ FILE: next_b2b_starter/components/auth/stytch-provider.tsx type Props (line 13) | interface Props { constant COOKIE_OPTIONS (line 18) | const COOKIE_OPTIONS = { function StytchProvider (line 26) | function StytchProvider({ children, config }: Props) { FILE: next_b2b_starter/components/billing/plans-modal.tsx type PlansModalProps (line 10) | interface PlansModalProps { function PlansModal (line 17) | function PlansModal({ type PlanCardProps (line 191) | interface PlanCardProps { function PlanCard (line 199) | function PlanCard({ plan, disabled, isSelected, isCurrent, onSelect }: P... function formatCurrency (line 271) | function formatCurrency(amount: number) { FILE: next_b2b_starter/components/billing/subscription-alerts.tsx type SubscriptionAlertVariant (line 12) | type SubscriptionAlertVariant = "info" | "warning" | "critical"; type SubscriptionAlertAction (line 14) | interface SubscriptionAlertAction { type SubscriptionAlertDescriptor (line 21) | interface SubscriptionAlertDescriptor { type SubscriptionAlertsProps (line 30) | interface SubscriptionAlertsProps { function SubscriptionAlerts (line 56) | function SubscriptionAlerts({ alerts, className }: SubscriptionAlertsPro... FILE: next_b2b_starter/components/billing/subscription-paywall.tsx type SubscriptionPaywallProps (line 15) | interface SubscriptionPaywallProps { function SubscriptionPaywall (line 19) | function SubscriptionPaywall({}: SubscriptionPaywallProps = {}) { type FeatureProps (line 233) | interface FeatureProps { function Feature (line 238) | function Feature({ title, description }: FeatureProps) { type UsageItemProps (line 247) | interface UsageItemProps { function UsageItem (line 253) | function UsageItem({ label, value, total }: UsageItemProps) { function resolvePlanFromState (line 272) | function resolvePlanFromState(state: SubscriptionGateState, products: Po... function buildFeatureList (line 297) | function buildFeatureList({ function formatUsd (line 341) | function formatUsd(amount: number) { FILE: next_b2b_starter/components/common/obfuscated-email.tsx type Props (line 5) | type Props = { function ObfuscatedEmail (line 12) | function ObfuscatedEmail({ user, domain, className, children }: Props) { FILE: next_b2b_starter/components/layout/dashboard-layout.tsx type DashboardLayoutProps (line 26) | interface DashboardLayoutProps { function DashboardLayout (line 31) | function DashboardLayout({ function deriveSubscriptionUiState (line 180) | function deriveSubscriptionUiState( function getInactiveDescription (line 375) | function getInactiveDescription(state: SubscriptionGateState): string { function formatNumber (line 396) | function formatNumber(value: number): string { function formatDateString (line 400) | function formatDateString(value: string): string { function daysUntil (line 413) | function daysUntil(value: string): number | null { FILE: next_b2b_starter/components/layout/header.tsx function Header (line 20) | function Header() { FILE: next_b2b_starter/components/layout/sidebar.tsx type NavigationItem (line 22) | interface NavigationItem { type SidebarProps (line 47) | interface SidebarProps { function Sidebar (line 51) | function Sidebar({ FILE: next_b2b_starter/components/layout/user-menu.tsx function getInitials (line 20) | function getInitials(name?: string) { function UserMenu (line 28) | function UserMenu() { FILE: next_b2b_starter/components/seo/jsonld.tsx type JsonLdProps (line 3) | type JsonLdProps = { function JsonLd (line 8) | function JsonLd({ data, id }: JsonLdProps) { FILE: next_b2b_starter/components/ui/badge.tsx type BadgeProps (line 26) | interface BadgeProps function Badge (line 30) | function Badge({ className, variant, ...props }: BadgeProps) { FILE: next_b2b_starter/components/ui/button.tsx type ButtonProps (line 37) | interface ButtonProps FILE: next_b2b_starter/components/ui/calendar.tsx function Calendar (line 14) | function Calendar({ function CalendarDayButton (line 175) | function CalendarDayButton({ FILE: next_b2b_starter/components/ui/date-picker.tsx type DatePickerProps (line 17) | interface DatePickerProps { function DatePicker (line 25) | function DatePicker({ FILE: next_b2b_starter/components/ui/dialog.tsx type DialogContentProps (line 32) | interface DialogContentProps FILE: next_b2b_starter/components/ui/form.tsx type FormFieldContextValue (line 20) | type FormFieldContextValue< type FormItemContextValue (line 67) | type FormItemContextValue = { FILE: next_b2b_starter/components/ui/select.tsx type SelectContentProps (line 70) | interface SelectContentProps FILE: next_b2b_starter/components/ui/sheet-header.tsx type SheetHeaderProps (line 7) | interface SheetHeaderProps { function SheetHeader (line 12) | function SheetHeader({ title, onClose }: SheetHeaderProps) { FILE: next_b2b_starter/components/ui/sheet.tsx type SheetContentProps (line 52) | interface SheetContentProps FILE: next_b2b_starter/components/ui/skeleton.tsx function Skeleton (line 3) | function Skeleton({ FILE: next_b2b_starter/hooks/use-signup-flow.ts type SignupStep (line 9) | type SignupStep = "account" | "organization"; type UseSignupFlowState (line 11) | interface UseSignupFlowState { function useSignupFlow (line 40) | function useSignupFlow(): UseSignupFlowState { FILE: next_b2b_starter/hooks/use-toast.ts type ToastProps (line 4) | interface ToastProps { function useToast (line 10) | function useToast() { FILE: next_b2b_starter/lib/actions/auth/consume-magic-link.ts type ConsumeMagicLinkResult (line 20) | interface ConsumeMagicLinkResult { function consumeMagicLink (line 46) | async function consumeMagicLink( FILE: next_b2b_starter/lib/actions/auth/logout.ts function logout (line 19) | async function logout(returnTo?: string): Promise { function resolveReturnTo (line 61) | function resolveReturnTo(returnTo?: string): string { FILE: next_b2b_starter/lib/actions/auth/send-magic-link.ts function sendMagicLink (line 22) | async function sendMagicLink( FILE: next_b2b_starter/lib/actions/billing/cancel-subscription.ts constant ALLOWED_REASONS (line 15) | const ALLOWED_REASONS = new Set([ type CancelSubscriptionParams (line 26) | interface CancelSubscriptionParams { type CancelSubscriptionData (line 32) | interface CancelSubscriptionData { function cancelSubscription (line 52) | async function cancelSubscription( FILE: next_b2b_starter/lib/actions/billing/create-checkout.ts function getAppBaseUrl (line 15) | function getAppBaseUrl(): string { type CreateCheckoutParams (line 23) | interface CreateCheckoutParams { type CheckoutData (line 28) | interface CheckoutData { function createCheckout (line 41) | async function createCheckout( FILE: next_b2b_starter/lib/actions/billing/get-products.ts function getProducts (line 19) | async function getProducts(): Promise> { FILE: next_b2b_starter/lib/actions/billing/get-subscription-status.ts function getSubscriptionStatus (line 21) | async function getSubscriptionStatus(): Promise< FILE: next_b2b_starter/lib/actions/billing/verify-payment.ts type BillingStatus (line 11) | interface BillingStatus { function verifyPayment (line 29) | async function verifyPayment( FILE: next_b2b_starter/lib/api/api/client/api-client.ts type ApiClientConfig (line 15) | interface ApiClientConfig { type RequestOptions (line 20) | interface RequestOptions { class ApiClient (line 25) | class ApiClient { method constructor (line 28) | constructor(config?: Partial) { method get (line 45) | async get(endpoint: string, options?: RequestOptions): Promise { method post (line 52) | async post( method put (line 63) | async put( method delete (line 74) | async delete(endpoint: string, options?: RequestOptions): Promise { method getBaseUrl (line 81) | getBaseUrl(): string { method request (line 85) | private async request( method prepareBody (line 199) | private prepareBody(body: any): BodyInit | undefined { method applyOptions (line 205) | private applyOptions( method prepareHeaders (line 218) | private prepareHeaders( method handleUnauthorizedResponse (line 231) | private async handleUnauthorizedResponse({ method buildApiError (line 273) | private async buildApiError(response: Response): Promise { type ResolveAccessTokenOptions (line 292) | type ResolveAccessTokenOptions = { constant MAX_REFRESH_RETRIES (line 303) | const MAX_REFRESH_RETRIES = 3; constant REFRESH_RETRY_DELAYS (line 304) | const REFRESH_RETRY_DELAYS = [1000, 2000, 4000]; constant REFRESH_PROMISE_TIMEOUT_MS (line 305) | const REFRESH_PROMISE_TIMEOUT_MS = 10000; function resolveAccessToken (line 307) | async function resolveAccessToken( function sleep (line 343) | async function sleep(ms: number): Promise { function refreshTokenWithRetry (line 348) | async function refreshTokenWithRetry(attempt: number = 0): Promise { function performTokenRefresh (line 422) | async function performTokenRefresh(): Promise { function readStoredAccessToken (line 430) | async function readStoredAccessToken(): Promise { function readServerSessionToken (line 444) | async function readServerSessionToken(): Promise { function clearSessionCookies (line 458) | async function clearSessionCookies(): Promise { function logoutUser (line 482) | async function logoutUser(): Promise { function deleteBrowserCookie (line 493) | function deleteBrowserCookie(name: string, expiry: string) { function readBrowserCookie (line 497) | function readBrowserCookie(name: string): string | null { function escapeRegExp (line 509) | function escapeRegExp(value: string): string { function updateCachedToken (line 513) | function updateCachedToken( function resetCachedToken (line 521) | function resetCachedToken() { function exchangeSessionTokenForJwt (line 529) | async function exchangeSessionTokenForJwt( function loadStytchB2BClient (line 554) | async function loadStytchB2BClient(): Promise { function createStytchB2BClient (line 569) | async function createStytchB2BClient(): Promise { function tryRefreshServerToken (line 596) | async function tryRefreshServerToken(): Promise { function persistBrowserSessionJwt (line 606) | function persistBrowserSessionJwt(token: string): void { function fetchSessionJwtFromApi (line 629) | async function fetchSessionJwtFromApi(): Promise { type TokenState (line 659) | type TokenState = "none" | "invalid" | "expired" | "valid"; function classifyTokenState (line 661) | function classifyTokenState(token: string | null): TokenState { FILE: next_b2b_starter/lib/api/api/dto/auth.dto.ts type BootstrapOrganizationRequestDto (line 1) | interface BootstrapOrganizationRequestDto { type SignupMagicLinkRequestDto (line 9) | interface SignupMagicLinkRequestDto { type SignupMagicLinkResponseDto (line 17) | interface SignupMagicLinkResponseDto { type BootstrapOrganizationResponseDto (line 27) | interface BootstrapOrganizationResponseDto { type LoginRequestDto (line 37) | interface LoginRequestDto { type LoginResponseDto (line 42) | interface LoginResponseDto { FILE: next_b2b_starter/lib/api/api/dto/cognitive.dto.ts type ChatRole (line 3) | type ChatRole = "user" | "assistant" | "system"; type ChatSessionDto (line 5) | interface ChatSessionDto { type ChatMessageDto (line 12) | interface ChatMessageDto { type SimilarDocumentDto (line 22) | interface SimilarDocumentDto { type ChatRequestDto (line 29) | interface ChatRequestDto { type ChatResponseDto (line 37) | interface ChatResponseDto { type ListSessionsResponseDto (line 44) | interface ListSessionsResponseDto { type SessionMessagesResponseDto (line 48) | interface SessionMessagesResponseDto { FILE: next_b2b_starter/lib/api/api/dto/document.dto.ts type DocumentStatus (line 3) | type DocumentStatus = "pending" | "processing" | "processed" | "failed"; type DocumentDto (line 5) | interface DocumentDto { type ListDocumentsRequestDto (line 18) | interface ListDocumentsRequestDto { type ListDocumentsResponseDto (line 24) | interface ListDocumentsResponseDto { type UploadDocumentResponseDto (line 31) | interface UploadDocumentResponseDto { FILE: next_b2b_starter/lib/api/api/dto/member.dto.ts type MemberListRequestDto (line 9) | interface MemberListRequestDto { type MemberListResponseDto (line 16) | interface MemberListResponseDto { type MemberDto (line 21) | interface MemberDto { type InviteMemberRequestDto (line 33) | interface InviteMemberRequestDto { type InviteMemberResponseDto (line 39) | interface InviteMemberResponseDto { type RemoveMemberRequestDto (line 47) | interface RemoveMemberRequestDto { type RemoveMemberResponseDto (line 52) | interface RemoveMemberResponseDto { type UpdateProfileRequestDto (line 58) | interface UpdateProfileRequestDto { type UpdateProfileResponseDto (line 63) | interface UpdateProfileResponseDto { type ResendInvitationRequestDto (line 69) | interface ResendInvitationRequestDto { type ResendInvitationResponseDto (line 73) | interface ResendInvitationResponseDto { FILE: next_b2b_starter/lib/api/api/dto/organization.dto.ts type CreateOrganizationRequestDto (line 1) | interface CreateOrganizationRequestDto { type CreateOrganizationResponseDto (line 6) | interface CreateOrganizationResponseDto { FILE: next_b2b_starter/lib/api/api/dto/profile.dto.ts type ProfileOrganizationDto (line 5) | interface ProfileOrganizationDto { type ProfileResponseDto (line 12) | interface ProfileResponseDto { FILE: next_b2b_starter/lib/api/api/dto/rbac.dto.ts type RbacPermissionDto (line 3) | interface RbacPermissionDto { type RbacRoleDto (line 12) | interface RbacRoleDto { type RbacRolesResponseDto (line 20) | interface RbacRolesResponseDto { FILE: next_b2b_starter/lib/api/api/repositories/cognitive-repository.ts class CognitiveRepository (line 22) | class CognitiveRepository { method chat (line 26) | async chat(request: ChatRequest): Promise { method listSessions (line 62) | async listSessions(): Promise { method getSessionMessages (line 87) | async getSessionMessages(sessionId: number): Promise { method toSession (line 105) | private toSession(dto: ChatSessionDto): ChatSession { method toMessage (line 117) | private toMessage(dto: ChatMessageDto): ChatMessage { method toSimilarDocument (line 132) | private toSimilarDocument(dto: SimilarDocumentDto): SimilarDocument { FILE: next_b2b_starter/lib/api/api/repositories/document-repository.ts class DocumentRepository (line 16) | class DocumentRepository { method uploadDocument (line 20) | async uploadDocument(file: File, title: string): Promise { method listDocuments (line 36) | async listDocuments(options?: DocumentListFilter): Promise { method toDocument (line 100) | private toDocument(dto: DocumentDto | UploadDocumentResponseDto): Docu... FILE: next_b2b_starter/lib/api/api/repositories/member-repository.ts class MemberRepository (line 27) | class MemberRepository { method getProfile (line 31) | async getProfile(): Promise { method updateProfile (line 61) | async updateProfile(request: UpdateProfileRequest): Promise { method resendInvitation (line 184) | async resendInvitation(memberId: string): Promise { method toUserProfile (line 197) | private toUserProfile(dto: ProfileResponseDto): UserProfile { method toOrganizationMember (line 232) | private toOrganizationMember(dto: MemberDto): OrganizationMember { FILE: next_b2b_starter/lib/api/api/repositories/profile-repository.ts class ProfileRepository (line 8) | class ProfileRepository { method getProfile (line 19) | async getProfile(sessionToken?: string): Promise { FILE: next_b2b_starter/lib/api/api/repositories/rbac-repository.ts type RbacPermission (line 10) | interface RbacPermission { type RbacRole (line 19) | interface RbacRole { class RbacRepository (line 27) | class RbacRepository { method getRoles (line 34) | async getRoles(forceRefresh = false): Promise { method toRbacRole (line 48) | private toRbacRole(dto: RbacRoleDto): RbacRole { method toRbacPermission (line 60) | private toRbacPermission(dto: RbacPermissionDto): RbacPermission { FILE: next_b2b_starter/lib/api/api/repositories/signup-repository.ts class SignupRepository (line 15) | class SignupRepository { method bootstrapOrganization (line 17) | async bootstrapOrganization( method createOrganizationWithMagicLink (line 38) | async createOrganizationWithMagicLink( method toSignupResult (line 69) | private toSignupResult(dto: BootstrapOrganizationResponseDto): SignupR... method toMagicLinkResult (line 81) | private toMagicLinkResult(dto: SignupMagicLinkResponseDto): SignupResu... FILE: next_b2b_starter/lib/auth/bootstrap.ts function authBootstrap (line 4) | async function authBootstrap() { FILE: next_b2b_starter/lib/auth/config-types.ts type StytchClientConfig (line 6) | interface StytchClientConfig { type CookieConfiguration (line 15) | interface CookieConfiguration { FILE: next_b2b_starter/lib/auth/constants.ts constant SESSION_COOKIE_NAME (line 7) | const SESSION_COOKIE_NAME = "stytch_session"; constant SESSION_JWT_COOKIE_NAME (line 8) | const SESSION_JWT_COOKIE_NAME = "stytch_session_jwt"; constant TOKEN_EXPIRY_GRACE_SECONDS (line 9) | const TOKEN_EXPIRY_GRACE_SECONDS = 60; constant AUTH_ROUTES (line 13) | const AUTH_ROUTES = { FILE: next_b2b_starter/lib/auth/permission-utils.ts function matchesPermission (line 17) | function matchesPermission( function hasPermission (line 59) | function hasPermission( function hasAnyPermission (line 79) | function hasAnyPermission( function hasAllPermissions (line 103) | function hasAllPermissions( function hasRole (line 123) | function hasRole(userRoles: string[], role: string): boolean { function hasAnyRole (line 134) | function hasAnyRole(userRoles: string[], roles: string[]): boolean { function hasAllRoles (line 145) | function hasAllRoles(userRoles: string[], roles: string[]): boolean { FILE: next_b2b_starter/lib/auth/permissions.ts constant PERMISSIONS (line 8) | const PERMISSIONS = { type Permission (line 43) | type Permission = (typeof PERMISSIONS)[keyof typeof PERMISSIONS]; constant PERMISSION_GROUPS (line 48) | const PERMISSION_GROUPS = { FILE: next_b2b_starter/lib/auth/server-constants.ts function getSessionDurationMinutes (line 4) | function getSessionDurationMinutes(): number { function getCookieConfig (line 12) | function getCookieConfig() { function getSecureCookieConfig (line 23) | function getSecureCookieConfig() { FILE: next_b2b_starter/lib/auth/server-permissions.ts type ServerPermissions (line 13) | interface ServerPermissions { constant KNOWN_PERMISSIONS (line 36) | const KNOWN_PERMISSIONS = new Set(Object.values(PERMISSIONS)); function getServerPermissions (line 48) | async function getServerPermissions( FILE: next_b2b_starter/lib/auth/stytch-client.ts type LoginUrlOptions (line 8) | interface LoginUrlOptions { type LogoutUrlOptions (line 12) | interface LogoutUrlOptions { function sanitizeReturnTo (line 16) | function sanitizeReturnTo(value: string | undefined): string | undefined { function resolveRoute (line 25) | function resolveRoute( function buildLoginUrl (line 44) | function buildLoginUrl( function buildLogoutUrl (line 58) | function buildLogoutUrl( FILE: next_b2b_starter/lib/auth/stytch-server.ts type LoginUrlOptions (line 10) | interface LoginUrlOptions { type LogoutUrlOptions (line 14) | interface LogoutUrlOptions { function sanitizeReturnTo (line 18) | function sanitizeReturnTo(value: string | undefined): string | undefined { function getBaseUrl (line 27) | function getBaseUrl(): string { function resolveRoute (line 39) | function resolveRoute(value: string | undefined, fallback: string): URL { function buildLoginUrl (line 55) | function buildLoginUrl(options?: LoginUrlOptions): string { function buildLogoutUrl (line 66) | function buildLogoutUrl(options?: LogoutUrlOptions): string { function buildStytchClientConfig (line 84) | function buildStytchClientConfig(): StytchClientConfig { FILE: next_b2b_starter/lib/auth/stytch.ts type LoginUrlOptions (line 4) | interface LoginUrlOptions { type LogoutUrlOptions (line 8) | interface LogoutUrlOptions { function sanitizeReturnTo (line 12) | function sanitizeReturnTo(value: string | undefined): string | undefined { function getBaseUrl (line 21) | function getBaseUrl(): string { function resolveRoute (line 37) | function resolveRoute(value: string | undefined, fallback: string): URL { function buildLoginUrl (line 53) | function buildLoginUrl(options?: LoginUrlOptions): string { function buildLogoutUrl (line 64) | function buildLogoutUrl(options?: LogoutUrlOptions): string { FILE: next_b2b_starter/lib/auth/stytch/server.ts function decodeJWT (line 14) | function decodeJWT(token: string): Record | null { function extractRolesFromJWT (line 35) | function extractRolesFromJWT(token: string): string[] { type RequireSessionOptions (line 55) | type RequireSessionOptions = { type StytchClient (line 59) | type StytchClient = InstanceType; function requiredEnv (line 64) | function requiredEnv(name: string, value: string | undefined): string { function getStytchB2BClient (line 73) | function getStytchB2BClient(): StytchClient { function parseAllowedOrganizationIdsEnv (line 95) | function parseAllowedOrganizationIdsEnv(): string[] { function loadOrganizationIdsFromStytch (line 105) | async function loadOrganizationIdsFromStytch(): Promise { function getOrganizationIdsForMemberSearch (line 144) | async function getOrganizationIdsForMemberSearch(): Promise { function requireMemberSession (line 195) | async function requireMemberSession( FILE: next_b2b_starter/lib/auth/subscription.ts constant SUBSCRIPTION_CLAIM (line 10) | const SUBSCRIPTION_CLAIM = "https://api.yourdomain.com/subscription"; constant SUBSCRIPTION_FLAG (line 11) | const SUBSCRIPTION_FLAG = "https://api.yourdomain.com/has_active_subscri... function hasActiveSubscription (line 17) | function hasActiveSubscription( function getBaseUrl (line 65) | function getBaseUrl(): string { type LoginUrlOptions (line 73) | interface LoginUrlOptions { function buildLoginUrl (line 81) | function buildLoginUrl(options?: LoginUrlOptions) { type LogoutUrlOptions (line 87) | interface LogoutUrlOptions { function buildLogoutUrl (line 95) | function buildLogoutUrl(options?: LogoutUrlOptions) { FILE: next_b2b_starter/lib/auth/token-utils.ts type AccessTokenPayload (line 5) | type AccessTokenPayload = JwtPayload & { function decodeAccessToken (line 9) | function decodeAccessToken( function isTokenExpired (line 39) | function isTokenExpired( FILE: next_b2b_starter/lib/contexts/auth-context.tsx constant STORAGE_KEY (line 24) | const STORAGE_KEY = "apcash.auth.state"; constant SESSION_DURATION_MS (line 25) | const SESSION_DURATION_MS = 8 * 60 * 60 * 1000; type AuthState (line 27) | type AuthState = { function sanitizeRoles (line 34) | function sanitizeRoles(roles: unknown): string[] { function sanitizePermissions (line 45) | function sanitizePermissions(permissions: unknown): string[] { type AuthContextValue (line 59) | interface AuthContextValue { function readStoredState (line 77) | function readStoredState(): AuthState | null { function persistState (line 112) | function persistState(state: AuthState): void { function readBrowserCookie (line 139) | function readBrowserCookie(name: string): string | null { function isSessionTokenValid (line 156) | function isSessionTokenValid(): boolean { type AuthProviderProps (line 166) | interface AuthProviderProps { function AuthProvider (line 174) | function AuthProvider({ function useAuthContext (line 287) | function useAuthContext(): AuthContextValue | null { FILE: next_b2b_starter/lib/contexts/stytch-config-context.tsx function StytchConfigProvider (line 8) | function StytchConfigProvider({ function useStytchConfig (line 22) | function useStytchConfig(): StytchClientConfig { FILE: next_b2b_starter/lib/hooks/mutations/use-chat.ts function useChat (line 8) | function useChat() { FILE: next_b2b_starter/lib/hooks/mutations/use-delete-document.ts type DeleteDocumentVariables (line 7) | interface DeleteDocumentVariables { function useDeleteDocument (line 11) | function useDeleteDocument() { FILE: next_b2b_starter/lib/hooks/mutations/use-invite-member.ts type InviteMemberVariables (line 15) | interface InviteMemberVariables { function useInviteMember (line 20) | function useInviteMember() { FILE: next_b2b_starter/lib/hooks/mutations/use-remove-member.ts type RemoveMemberVariables (line 13) | interface RemoveMemberVariables { function useRemoveMember (line 17) | function useRemoveMember() { FILE: next_b2b_starter/lib/hooks/mutations/use-resend-invitation.ts type ResendInvitationVariables (line 11) | interface ResendInvitationVariables { function useResendInvitation (line 15) | function useResendInvitation() { FILE: next_b2b_starter/lib/hooks/mutations/use-update-profile.ts function useUpdateProfile (line 12) | function useUpdateProfile() { FILE: next_b2b_starter/lib/hooks/mutations/use-upload-document.ts type UploadDocumentVariables (line 8) | interface UploadDocumentVariables { function useUploadDocument (line 13) | function useUploadDocument() { FILE: next_b2b_starter/lib/hooks/queries/query-keys.ts type InvoiceListFilter (line 23) | type InvoiceListFilter = any; type ApprovalRequestListFilter (line 24) | type ApprovalRequestListFilter = any; type PaymentOptimizationListFilter (line 25) | type PaymentOptimizationListFilter = any; type AuditListFilter (line 26) | type AuditListFilter = any; type PerformanceAnalyticsDateRange (line 27) | type PerformanceAnalyticsDateRange = any; FILE: next_b2b_starter/lib/hooks/queries/use-documents-query.ts type UseDocumentsQueryOptions (line 8) | interface UseDocumentsQueryOptions { function useDocumentsQuery (line 15) | function useDocumentsQuery( function useDocuments (line 41) | function useDocuments(options: UseDocumentsQueryOptions = {}) { function useDocumentCount (line 49) | function useDocumentCount(options: UseDocumentsQueryOptions = {}) { FILE: next_b2b_starter/lib/hooks/queries/use-members-query.ts type UseMembersQueryOptions (line 13) | interface UseMembersQueryOptions { function useMembersQuery (line 20) | function useMembersQuery( function useMembers (line 61) | function useMembers(options: UseMembersQueryOptions = {}) { FILE: next_b2b_starter/lib/hooks/queries/use-products-query.ts function useProductsQuery (line 13) | function useProductsQuery( FILE: next_b2b_starter/lib/hooks/queries/use-profile-query.ts function useProfileQuery (line 13) | function useProfileQuery( function useProfile (line 44) | function useProfile() { function useOrganizationId (line 52) | function useOrganizationId() { FILE: next_b2b_starter/lib/hooks/queries/use-sessions-query.ts type UseSessionsQueryOptions (line 8) | interface UseSessionsQueryOptions { function useSessionsQuery (line 12) | function useSessionsQuery( function useSessions (line 36) | function useSessions(options: UseSessionsQueryOptions = {}) { type UseSessionMessagesQueryOptions (line 41) | interface UseSessionMessagesQueryOptions { function useSessionMessagesQuery (line 46) | function useSessionMessagesQuery( function useSessionMessages (line 70) | function useSessionMessages(sessionId: number, enabled: boolean = true) { FILE: next_b2b_starter/lib/hooks/queries/use-subscription-query.ts function fetchSubscriptionStatus (line 13) | async function fetchSubscriptionStatus(): Promise { function useSubscriptionQuery (line 23) | function useSubscriptionQuery( function useSubscription (line 52) | function useSubscription() { function useIsSubscriptionActive (line 60) | function useIsSubscriptionActive() { FILE: next_b2b_starter/lib/hooks/use-permissions.ts type UsePermissionsReturn (line 19) | interface UsePermissionsReturn { function usePermissions (line 105) | function usePermissions(): UsePermissionsReturn { FILE: next_b2b_starter/lib/models/cognitive.model.ts type ChatRole (line 3) | type ChatRole = "user" | "assistant" | "system"; type ChatSession (line 5) | interface ChatSession { type ChatMessage (line 12) | interface ChatMessage { type SimilarDocument (line 22) | interface SimilarDocument { type ChatRequest (line 29) | interface ChatRequest { type ChatResponse (line 37) | interface ChatResponse { FILE: next_b2b_starter/lib/models/document.model.ts type DocumentStatus (line 3) | type DocumentStatus = "pending" | "processing" | "processed" | "failed"; type Document (line 5) | interface Document { type DocumentListResponse (line 18) | interface DocumentListResponse { type DocumentListFilter (line 25) | interface DocumentListFilter { FILE: next_b2b_starter/lib/models/member.model.ts type MemberRole (line 7) | type MemberRole = "admin" | "manager" | "member"; type MemberStatus (line 8) | type MemberStatus = "active" | "pending" | "inactive"; type OrganizationMember (line 13) | interface OrganizationMember { type UserProfile (line 28) | interface UserProfile { type InviteMemberRequest (line 41) | interface InviteMemberRequest { type InviteMemberResponse (line 51) | interface InviteMemberResponse { type UpdateProfileRequest (line 61) | interface UpdateProfileRequest { type MemberListResponse (line 69) | interface MemberListResponse { FILE: next_b2b_starter/lib/models/signup.model.ts type SignupOwner (line 1) | interface SignupOwner { type SignupOrganization (line 6) | interface SignupOrganization { type SignupDraft (line 11) | interface SignupDraft { type CreatedUser (line 16) | interface CreatedUser { type AuthTokens (line 23) | interface AuthTokens { type CreatedOrganization (line 30) | interface CreatedOrganization { type SignupResult (line 38) | interface SignupResult { FILE: next_b2b_starter/lib/polar/client.ts function createPolarClient (line 5) | function createPolarClient(): Polar | null { function getPolarClient (line 23) | function getPolarClient(): Polar | null { FILE: next_b2b_starter/lib/polar/config.ts constant POLAR_METER_ID (line 3) | const POLAR_METER_ID = meterId; function isPolarEnabled (line 11) | function isPolarEnabled(): boolean { FILE: next_b2b_starter/lib/polar/current-subscription.ts type SubscriptionSnapshot (line 6) | interface SubscriptionSnapshot { type UsageSnapshot (line 26) | interface UsageSnapshot { type SubscriptionGateState (line 36) | interface SubscriptionGateState { function resolveCurrentSubscription (line 50) | async function resolveCurrentSubscription(): Promise { FILE: next_b2b_starter/lib/polar/server-products.ts type FetchProductsResult (line 14) | interface FetchProductsResult { function fetchProducts (line 28) | async function fetchProducts(): Promise { FILE: next_b2b_starter/lib/polar/subscription.ts constant ACTIVE_STATUSES (line 9) | const ACTIVE_STATUSES = new Set(["active", "tria... type SubscriptionLookupInput (line 11) | interface SubscriptionLookupInput { type SubscriptionStatusResult (line 17) | interface SubscriptionStatusResult { function getActiveSubscription (line 28) | async function getActiveSubscription( function findCustomerByEmail (line 151) | async function findCustomerByEmail( FILE: next_b2b_starter/lib/polar/usage.ts type MeterUsageSummary (line 7) | interface MeterUsageSummary { function getInvoiceUsage (line 23) | async function getInvoiceUsage( function listMeters (line 143) | async function listMeters(): Promise { function getCustomerMeterUsage (line 164) | async function getCustomerMeterUsage(_meterId: string) { FILE: next_b2b_starter/lib/providers/query-provider.tsx function makeQueryClient (line 17) | function makeQueryClient() { function getQueryClient (line 50) | function getQueryClient() { type QueryProviderProps (line 63) | interface QueryProviderProps { function QueryProvider (line 67) | function QueryProvider({ children }: QueryProviderProps) { FILE: next_b2b_starter/lib/stores/sidebar-store.ts type SidebarState (line 3) | type SidebarState = { FILE: next_b2b_starter/lib/types/loadable.ts type LoadableState (line 1) | enum LoadableState { type Loadable (line 9) | type Loadable = FILE: next_b2b_starter/lib/utils.ts function cn (line 4) | function cn(...inputs: ClassValue[]) { FILE: next_b2b_starter/lib/utils/api-logger.ts type LoggedRequest (line 8) | interface LoggedRequest { type LoggedResponse (line 16) | interface LoggedResponse { type LoggedError (line 25) | interface LoggedError { class ApiLogger (line 33) | class ApiLogger { method constructor (line 37) | constructor() { method setEnabled (line 50) | setEnabled(enabled: boolean): void { method logRequest (line 64) | logRequest(requestId: string, request: LoggedRequest): void { method logResponse (line 109) | logResponse(requestId: string, response: LoggedResponse): void { method logError (line 153) | logError(requestId: string, error: LoggedError): void { method sanitizeHeaders (line 197) | private sanitizeHeaders(headers: Record): Record = type SessionResult (line 23) | type SessionResult = { function getActionSession (line 32) | async function getActionSession(): Promise { function requireActionSessionWithPermissions (line 65) | async function requireActionSessionWithPermissions(): Promise<{ function createActionError (line 79) | function createActionError( function createActionSuccess (line 94) | function createActionSuccess(data: T): ActionResult { function createActionSuccessEmpty (line 104) | function createActionSuccessEmpty(): ActionResult { function withErrorHandling (line 115) | async function withErrorHandling( function requirePermission (line 134) | function requirePermission( FILE: next_b2b_starter/next.config.ts method headers (line 63) | async headers() { method redirects (line 188) | async redirects() { FILE: next_b2b_starter/proxy.ts constant CANONICAL_HOST (line 9) | const CANONICAL_HOST = "yourdomain.com"; constant PROTECTED_ROUTES (line 12) | const PROTECTED_ROUTES = ["/dashboard", "/settings"]; constant PUBLIC_ROUTES (line 15) | const PUBLIC_ROUTES = ["/auth", "/authenticate", "/api/auth"]; function proxy (line 17) | function proxy(request: NextRequest) { FILE: next_b2b_starter/scripts/convert-svg-to-png.js function convertSVGtoPNG (line 5) | async function convertSVGtoPNG() { FILE: next_b2b_starter/scripts/generate-favicons.js function generateFavicons (line 5) | async function generateFavicons() { FILE: next_b2b_starter/scripts/generate-og-images.js function createOGImage (line 7) | function createOGImage() { function createTwitterImage (line 56) | function createTwitterImage() { FILE: next_b2b_starter/stores/ui-store.ts type UIState (line 15) | interface UIState {