%%{init: {'themeVariables': { 'fontSize': '12px'}}}%%
graph TD
    classDef path fill:#eee,stroke:#000,color:#000
    classDef plan fill:#fff,stroke-width:1px,color:#000
    classDef itemplan fill:#fff,stroke-width:2px,color:#000
    classDef unbatchedplan fill:#dff,stroke-width:1px,color:#000
    classDef sideeffectplan fill:#fcc,stroke-width:2px,color:#000
    classDef bucket fill:#f6f6f6,color:#000,stroke-width:2px,text-align:left


    %% define steps
    __Value3["__Value[3∈0]<br />ᐸcontextᐳ"]:::plan
    __Value5["__Value[5∈0]<br />ᐸrootValueᐳ"]:::plan
    Access8{{"Access[8∈0]<br />ᐸ3.pgSettingsᐳ"}}:::plan
    Access9{{"Access[9∈0]<br />ᐸ3.withPgClientᐳ"}}:::plan
    Object10{{"Object[10∈0]<br />ᐸ{pgSettings,withPgClient}ᐳ"}}:::plan
    PgSelect7[["PgSelect[7∈0]<br />ᐸfeatured_messagesᐳ"]]:::plan
    __Item11[/"__Item[11∈1]<br />ᐸ7ᐳ"\]:::itemplan
    PgSelectSingle12{{"PgSelectSingle[12∈1]<br />ᐸfeatured_messagesᐳ"}}:::plan
    PgClassExpression13{{"PgClassExpression[13∈2]<br />ᐸ__featured...s__.”body”ᐳ"}}:::plan

    %% plan dependencies
    __Value3 --> Access8
    __Value3 --> Access9
    Access8 & Access9 --> Object10
    Object10 --> PgSelect7
    PgSelect7 ==> __Item11
    __Item11 --> PgSelectSingle12
    PgSelectSingle12 --> PgClassExpression13

    subgraph "Buckets for queries/functions/custom-query-setof-message"
    Bucket0("Bucket 0 (root)<br />1: Access[8], Access[9]<br />2: Object[10]<br />3: PgSelect[7]"):::bucket
    classDef bucket0 stroke:#696969
    class Bucket0,__Value3,__Value5,PgSelect7,Access8,Access9,Object10 bucket0
    Bucket1("Bucket 1 (listItem)<br />ROOT __Item{1}ᐸ7ᐳ[11]"):::bucket
    classDef bucket1 stroke:#00bfff
    class Bucket1,__Item11,PgSelectSingle12 bucket1
    Bucket2("Bucket 2 (nullableBoundary)<br />Deps: 12<br /><br />ROOT PgSelectSingle{1}ᐸfeatured_messagesᐳ[12]"):::bucket
    classDef bucket2 stroke:#7f007f
    class Bucket2,PgClassExpression13 bucket2
    Bucket0 --> Bucket1
    Bucket1 --> Bucket2
    end
