[{"data":1,"prerenderedAt":1542},["ShallowReactive",2],{"navigation":3,"\u002Fdataviews\u002Fcreating":773,"\u002Fdataviews\u002Fcreating-surround":1537},[4,28,63,85,103,112,269,355,453,485,506,542,576,594,647,669,693,721,747],{"title":5,"path":6,"stem":7,"children":8,"icon":27},"Getting Started","\u002Fgetting-started","01.getting-started\u002F01.index",[9,11,15,19,23],{"title":10,"path":6,"stem":7},"Introduction",{"title":12,"path":13,"stem":14},"Installation","\u002Fgetting-started\u002Finstallation","01.getting-started\u002F02.installation",{"title":16,"path":17,"stem":18},"Quickstart with AI","\u002Fgetting-started\u002Fquickstart-with-ai","01.getting-started\u002F03.quickstart-with-ai",{"title":20,"path":21,"stem":22},"Quickstart by Hand","\u002Fgetting-started\u002Fquickstart-by-hand","01.getting-started\u002F04.quickstart-by-hand",{"title":24,"path":25,"stem":26},"The Admin","\u002Fgetting-started\u002Fadmin-tour","01.getting-started\u002F05.admin-tour","i-lucide-rocket",{"title":29,"icon":30,"path":31,"stem":32,"children":33,"page":62},"Concepts","i-lucide-lightbulb","\u002Fconcepts","02.concepts",[34,38,42,46,50,54,58],{"title":35,"path":36,"stem":37},"PostgreSQL First","\u002Fconcepts\u002Fpostgresql-first","02.concepts\u002F01.postgresql-first",{"title":39,"path":40,"stem":41},"Resources","\u002Fconcepts\u002Fresources","02.concepts\u002F02.resources",{"title":43,"path":44,"stem":45},"Users and Roles","\u002Fconcepts\u002Fusers-and-roles","02.concepts\u002F03.users-and-roles",{"title":47,"path":48,"stem":49},"Permissions","\u002Fconcepts\u002Fpermissions","02.concepts\u002F04.permissions",{"title":51,"path":52,"stem":53},"Drafts and Publishing","\u002Fconcepts\u002Fdrafts-and-publishing","02.concepts\u002F05.drafts-and-publishing",{"title":55,"path":56,"stem":57},"Audit and Events","\u002Fconcepts\u002Faudit-and-events","02.concepts\u002F06.audit-and-events",{"title":59,"path":60,"stem":61},"Object Access","\u002Fconcepts\u002Fobject-access","02.concepts\u002F07.object-access",false,{"title":64,"icon":65,"path":66,"stem":67,"children":68,"page":62},"App","i-lucide-app-window","\u002Fapp","03.app",[69,73,77,81],{"title":70,"path":71,"stem":72},"The App","\u002Fapp\u002Foverview","03.app\u002F01.overview",{"title":74,"path":75,"stem":76},"DataViews","\u002Fapp\u002Fdataviews","03.app\u002F02.dataviews",{"title":78,"path":79,"stem":80},"Dashboards","\u002Fapp\u002Fdashboards","03.app\u002F03.dashboards",{"title":82,"path":83,"stem":84},"Arrange menu","\u002Fapp\u002Farrange-menu","03.app\u002F04.arrange-menu",{"title":86,"icon":87,"path":88,"stem":89,"children":90,"page":62},"Database","i-lucide-database","\u002Fdatabase","04.database",[91,95,99],{"title":92,"path":93,"stem":94},"Tables","\u002Fdatabase\u002Ftables","04.database\u002F01.tables",{"title":96,"path":97,"stem":98},"Views","\u002Fdatabase\u002Fviews","04.database\u002F02.views",{"title":100,"path":101,"stem":102},"Functions","\u002Fdatabase\u002Ffunctions","04.database\u002F03.functions",{"title":104,"icon":105,"path":106,"stem":107,"children":108,"page":62},"SQL Console","i-lucide-square-terminal","\u002Fsql-console","05.sql-console",[109],{"title":104,"path":110,"stem":111},"\u002Fsql-console\u002Foverview","05.sql-console\u002F01.overview",{"title":74,"icon":113,"path":114,"stem":115,"children":116,"page":62},"i-lucide-layout-list","\u002Fdataviews","06.dataviews",[117,121,125,129,183,214],{"title":118,"path":119,"stem":120},"Overview","\u002Fdataviews\u002Foverview","06.dataviews\u002F01.overview",{"title":122,"path":123,"stem":124},"Creating a DataView","\u002Fdataviews\u002Fcreating","06.dataviews\u002F02.creating",{"title":126,"path":127,"stem":128},"Publishing","\u002Fdataviews\u002Fpublishing","06.dataviews\u002F03.publishing",{"title":130,"icon":131,"path":132,"stem":133,"children":134,"page":62},"Types","i-lucide-shapes","\u002Fdataviews\u002Ftypes","06.dataviews\u002F04.types",[135,139,143,147,151,155,159,163,167,171,175,179],{"title":136,"path":137,"stem":138},"Table","\u002Fdataviews\u002Ftypes\u002Ftable","06.dataviews\u002F04.types\u002F01.table",{"title":140,"path":141,"stem":142},"Cards","\u002Fdataviews\u002Ftypes\u002Fcards","06.dataviews\u002F04.types\u002F02.cards",{"title":144,"path":145,"stem":146},"Kanban","\u002Fdataviews\u002Ftypes\u002Fkanban","06.dataviews\u002F04.types\u002F03.kanban",{"title":148,"path":149,"stem":150},"Calendar","\u002Fdataviews\u002Ftypes\u002Fcalendar","06.dataviews\u002F04.types\u002F04.calendar",{"title":152,"path":153,"stem":154},"Gantt","\u002Fdataviews\u002Ftypes\u002Fgantt","06.dataviews\u002F04.types\u002F05.gantt",{"title":156,"path":157,"stem":158},"Map","\u002Fdataviews\u002Ftypes\u002Fmap","06.dataviews\u002F04.types\u002F06.map",{"title":160,"path":161,"stem":162},"Tree","\u002Fdataviews\u002Ftypes\u002Ftree","06.dataviews\u002F04.types\u002F07.tree",{"title":164,"path":165,"stem":166},"Form","\u002Fdataviews\u002Ftypes\u002Fform","06.dataviews\u002F04.types\u002F08.form",{"title":168,"path":169,"stem":170},"Master-detail","\u002Fdataviews\u002Ftypes\u002Fmaster-detail","06.dataviews\u002F04.types\u002F09.master-detail",{"title":172,"path":173,"stem":174},"Settings","\u002Fdataviews\u002Ftypes\u002Fsettings","06.dataviews\u002F04.types\u002F10.settings",{"title":176,"path":177,"stem":178},"Custom","\u002Fdataviews\u002Ftypes\u002Fcustom","06.dataviews\u002F04.types\u002F11.custom",{"title":180,"path":181,"stem":182},"External Frame","\u002Fdataviews\u002Ftypes\u002Fexternal-frame","06.dataviews\u002F04.types\u002F12.external-frame",{"title":172,"icon":184,"path":185,"stem":186,"children":187,"page":62},"i-lucide-settings-2","\u002Fdataviews\u002Fsettings","06.dataviews\u002F05.settings",[188,192,196,199,202,206,210],{"title":189,"path":190,"stem":191},"General","\u002Fdataviews\u002Fsettings\u002Fgeneral","06.dataviews\u002F05.settings\u002F01.general",{"title":193,"path":194,"stem":195},"Data","\u002Fdataviews\u002Fsettings\u002Fdata","06.dataviews\u002F05.settings\u002F02.data",{"title":96,"path":197,"stem":198},"\u002Fdataviews\u002Fsettings\u002Fviews","06.dataviews\u002F05.settings\u002F03.views",{"title":164,"path":200,"stem":201},"\u002Fdataviews\u002Fsettings\u002Fform","06.dataviews\u002F05.settings\u002F04.form",{"title":203,"path":204,"stem":205},"Actions","\u002Fdataviews\u002Fsettings\u002Factions","06.dataviews\u002F05.settings\u002F05.actions",{"title":207,"path":208,"stem":209},"Security","\u002Fdataviews\u002Fsettings\u002Fsecurity","06.dataviews\u002F05.settings\u002F06.security",{"title":211,"path":212,"stem":213},"Versions","\u002Fdataviews\u002Fsettings\u002Fversions","06.dataviews\u002F05.settings\u002F07.versions",{"title":215,"icon":216,"path":217,"stem":218,"children":219,"page":62},"Design Form","i-lucide-pencil-ruler","\u002Fdataviews\u002Fdesign-form","06.dataviews\u002F06.design-form",[220,223,257,261,265],{"title":118,"path":221,"stem":222},"\u002Fdataviews\u002Fdesign-form\u002Foverview","06.dataviews\u002F06.design-form\u002F01.overview",{"title":224,"icon":131,"path":225,"stem":226,"children":227,"page":62},"Widgets","\u002Fdataviews\u002Fdesign-form\u002Fwidgets","06.dataviews\u002F06.design-form\u002F02.widgets",[228,231,234,238,242,246,250,254],{"title":224,"path":229,"stem":230},"\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Foverview","06.dataviews\u002F06.design-form\u002F02.widgets\u002F01.overview",{"title":164,"path":232,"stem":233},"\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Fform","06.dataviews\u002F06.design-form\u002F02.widgets\u002F02.form",{"title":235,"path":236,"stem":237},"Inputs","\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Finputs","06.dataviews\u002F06.design-form\u002F02.widgets\u002F03.inputs",{"title":239,"path":240,"stem":241},"Display","\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Fdisplay","06.dataviews\u002F06.design-form\u002F02.widgets\u002F04.display",{"title":243,"path":244,"stem":245},"Embeds","\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Fembeds","06.dataviews\u002F06.design-form\u002F02.widgets\u002F05.embeds",{"title":247,"path":248,"stem":249},"Layout","\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Flayout","06.dataviews\u002F06.design-form\u002F02.widgets\u002F06.layout",{"title":251,"path":252,"stem":253},"Overlays","\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Foverlays","06.dataviews\u002F06.design-form\u002F02.widgets\u002F07.overlays",{"title":203,"path":255,"stem":256},"\u002Fdataviews\u002Fdesign-form\u002Fwidgets\u002Factions","06.dataviews\u002F06.design-form\u002F02.widgets\u002F08.actions",{"title":258,"path":259,"stem":260},"Variables","\u002Fdataviews\u002Fdesign-form\u002Fvariables","06.dataviews\u002F06.design-form\u002F03.variables",{"title":262,"path":263,"stem":264},"Code","\u002Fdataviews\u002Fdesign-form\u002Fcode","06.dataviews\u002F06.design-form\u002F04.code",{"title":266,"path":267,"stem":268},"Formulas","\u002Fdataviews\u002Fdesign-form\u002Fformulas","06.dataviews\u002F06.design-form\u002F05.formulas",{"title":78,"icon":270,"path":271,"stem":272,"children":273,"page":62},"i-lucide-layout-dashboard","\u002Fdashboards","07.dashboards",[274,277,281,285,332],{"title":118,"path":275,"stem":276},"\u002Fdashboards\u002Foverview","07.dashboards\u002F01.overview",{"title":278,"path":279,"stem":280},"Creating a Dashboard","\u002Fdashboards\u002Fcreating","07.dashboards\u002F02.creating",{"title":282,"path":283,"stem":284},"Editor","\u002Fdashboards\u002Feditor","07.dashboards\u002F03.editor",{"title":224,"icon":286,"path":287,"stem":288,"children":289,"page":62},"i-lucide-chart-bar","\u002Fdashboards\u002Fwidgets","07.dashboards\u002F04.widgets",[290,293,297,301,305,309,313,317,321,324,328],{"title":224,"path":291,"stem":292},"\u002Fdashboards\u002Fwidgets\u002Foverview","07.dashboards\u002F04.widgets\u002F01.overview",{"title":294,"path":295,"stem":296},"Editing a Widget","\u002Fdashboards\u002Fwidgets\u002Fediting-a-widget","07.dashboards\u002F04.widgets\u002F02.editing-a-widget",{"title":298,"path":299,"stem":300},"Indicators","\u002Fdashboards\u002Fwidgets\u002Findicators","07.dashboards\u002F04.widgets\u002F03.indicators",{"title":302,"path":303,"stem":304},"Comparison","\u002Fdashboards\u002Fwidgets\u002Fcomparison","07.dashboards\u002F04.widgets\u002F04.comparison",{"title":306,"path":307,"stem":308},"Trend","\u002Fdashboards\u002Fwidgets\u002Ftrend","07.dashboards\u002F04.widgets\u002F05.trend",{"title":310,"path":311,"stem":312},"Proportion","\u002Fdashboards\u002Fwidgets\u002Fproportion","07.dashboards\u002F04.widgets\u002F06.proportion",{"title":314,"path":315,"stem":316},"Distribution and Relation","\u002Fdashboards\u002Fwidgets\u002Fdistribution-and-relation","07.dashboards\u002F04.widgets\u002F07.distribution-and-relation",{"title":318,"path":319,"stem":320},"Maps","\u002Fdashboards\u002Fwidgets\u002Fmaps","07.dashboards\u002F04.widgets\u002F08.maps",{"title":92,"path":322,"stem":323},"\u002Fdashboards\u002Fwidgets\u002Ftables","07.dashboards\u002F04.widgets\u002F09.tables",{"title":325,"path":326,"stem":327},"Visualization and Insertion","\u002Fdashboards\u002Fwidgets\u002Fvisualization-and-insertion","07.dashboards\u002F04.widgets\u002F10.visualization-and-insertion",{"title":329,"path":330,"stem":331},"SQL Conventions","\u002Fdashboards\u002Fwidgets\u002Fsql-conventions","07.dashboards\u002F04.widgets\u002F11.sql-conventions",{"title":172,"icon":184,"path":333,"stem":334,"children":335,"page":62},"\u002Fdashboards\u002Fsettings","07.dashboards\u002F05.settings",[336,339,342,345,349,352],{"title":189,"path":337,"stem":338},"\u002Fdashboards\u002Fsettings\u002Fgeneral","07.dashboards\u002F05.settings\u002F01.general",{"title":258,"path":340,"stem":341},"\u002Fdashboards\u002Fsettings\u002Fvariables","07.dashboards\u002F05.settings\u002F02.variables",{"title":193,"path":343,"stem":344},"\u002Fdashboards\u002Fsettings\u002Fdata","07.dashboards\u002F05.settings\u002F03.data",{"title":346,"path":347,"stem":348},"Share","\u002Fdashboards\u002Fsettings\u002Fshare","07.dashboards\u002F05.settings\u002F04.share",{"title":207,"path":350,"stem":351},"\u002Fdashboards\u002Fsettings\u002Fsecurity","07.dashboards\u002F05.settings\u002F05.security",{"title":211,"path":353,"stem":354},"\u002Fdashboards\u002Fsettings\u002Fversions","07.dashboards\u002F05.settings\u002F06.versions",{"title":356,"icon":357,"path":358,"stem":359,"children":360,"page":62},"Workflows","i-lucide-workflow","\u002Fworkflows","08.workflows",[361,364,368,371,393,432],{"title":118,"path":362,"stem":363},"\u002Fworkflows\u002Foverview","08.workflows\u002F01.overview",{"title":365,"path":366,"stem":367},"Creating a Workflow","\u002Fworkflows\u002Fcreating","08.workflows\u002F02.creating",{"title":282,"path":369,"stem":370},"\u002Fworkflows\u002Feditor","08.workflows\u002F03.editor",{"title":372,"icon":373,"path":374,"stem":375,"children":376,"page":62},"Triggers","i-lucide-zap","\u002Fworkflows\u002Ftriggers","08.workflows\u002F04.triggers",[377,381,385,389],{"title":378,"path":379,"stem":380},"Manual","\u002Fworkflows\u002Ftriggers\u002Fmanual","08.workflows\u002F04.triggers\u002F01.manual",{"title":382,"path":383,"stem":384},"Database Event","\u002Fworkflows\u002Ftriggers\u002Fdatabase-event","08.workflows\u002F04.triggers\u002F02.database-event",{"title":386,"path":387,"stem":388},"Schedule","\u002Fworkflows\u002Ftriggers\u002Fschedule","08.workflows\u002F04.triggers\u002F03.schedule",{"title":390,"path":391,"stem":392},"Webhook","\u002Fworkflows\u002Ftriggers\u002Fwebhook","08.workflows\u002F04.triggers\u002F04.webhook",{"title":394,"icon":357,"path":395,"stem":396,"children":397,"page":62},"Steps","\u002Fworkflows\u002Fsteps","08.workflows\u002F05.steps",[398,401,405,408,412,416,420,424,428],{"title":193,"path":399,"stem":400},"\u002Fworkflows\u002Fsteps\u002Fdata","08.workflows\u002F05.steps\u002F01.data",{"title":402,"path":403,"stem":404},"Control","\u002Fworkflows\u002Fsteps\u002Fcontrol","08.workflows\u002F05.steps\u002F02.control",{"title":262,"path":406,"stem":407},"\u002Fworkflows\u002Fsteps\u002Fcode","08.workflows\u002F05.steps\u002F03.code",{"title":409,"path":410,"stem":411},"Integration","\u002Fworkflows\u002Fsteps\u002Fintegration","08.workflows\u002F05.steps\u002F04.integration",{"title":413,"path":414,"stem":415},"Communication","\u002Fworkflows\u002Fsteps\u002Fcommunication","08.workflows\u002F05.steps\u002F05.communication",{"title":417,"path":418,"stem":419},"Files","\u002Fworkflows\u002Fsteps\u002Ffiles","08.workflows\u002F05.steps\u002F06.files",{"title":421,"path":422,"stem":423},"Documents","\u002Fworkflows\u002Fsteps\u002Fdocuments","08.workflows\u002F05.steps\u002F07.documents",{"title":425,"path":426,"stem":427},"Composition","\u002Fworkflows\u002Fsteps\u002Fcomposition","08.workflows\u002F05.steps\u002F08.composition",{"title":429,"path":430,"stem":431},"Values","\u002Fworkflows\u002Fsteps\u002Fvalues","08.workflows\u002F05.steps\u002F09.values",{"title":172,"icon":184,"path":433,"stem":434,"children":435,"page":62},"\u002Fworkflows\u002Fsettings","08.workflows\u002F06.settings",[436,439,443,446,449],{"title":189,"path":437,"stem":438},"\u002Fworkflows\u002Fsettings\u002Fgeneral","08.workflows\u002F06.settings\u002F01.general",{"title":440,"path":441,"stem":442},"Trigger","\u002Fworkflows\u002Fsettings\u002Ftrigger","08.workflows\u002F06.settings\u002F02.trigger",{"title":207,"path":444,"stem":445},"\u002Fworkflows\u002Fsettings\u002Fsecurity","08.workflows\u002F06.settings\u002F03.security",{"title":211,"path":447,"stem":448},"\u002Fworkflows\u002Fsettings\u002Fversions","08.workflows\u002F06.settings\u002F04.versions",{"title":450,"path":451,"stem":452},"Runs","\u002Fworkflows\u002Fsettings\u002Fruns","08.workflows\u002F06.settings\u002F05.runs",{"title":417,"icon":454,"path":455,"stem":456,"children":457,"page":62},"i-lucide-files","\u002Ffiles","09.files",[458,461,465,469,473,477,481],{"title":118,"path":459,"stem":460},"\u002Ffiles\u002Foverview","09.files\u002F01.overview",{"title":462,"path":463,"stem":464},"Uploading","\u002Ffiles\u002Fuploading","09.files\u002F02.uploading",{"title":466,"path":467,"stem":468},"File Details","\u002Ffiles\u002Ffile-details","09.files\u002F03.file-details",{"title":470,"path":471,"stem":472},"Editing Files","\u002Ffiles\u002Fediting-files","09.files\u002F04.editing-files",{"title":474,"path":475,"stem":476},"Using Files in Tables","\u002Ffiles\u002Fusing-files-in-tables","09.files\u002F05.using-files-in-tables",{"title":478,"path":479,"stem":480},"Image Transformations","\u002Ffiles\u002Fimage-transformations","09.files\u002F06.image-transformations",{"title":482,"path":483,"stem":484},"Who Can See a File","\u002Ffiles\u002Fwho-can-see-a-file","09.files\u002F07.who-can-see-a-file",{"title":486,"icon":487,"path":488,"stem":489,"children":490,"page":62},"Templates","i-lucide-file-text","\u002Ftemplates","10.templates",[491,494,498,502],{"title":118,"path":492,"stem":493},"\u002Ftemplates\u002Foverview","10.templates\u002F01.overview",{"title":495,"path":496,"stem":497},"Emails","\u002Ftemplates\u002Femails","10.templates\u002F02.emails",{"title":499,"path":500,"stem":501},"PDF","\u002Ftemplates\u002Fpdf","10.templates\u002F03.pdf",{"title":503,"path":504,"stem":505},"System Emails","\u002Ftemplates\u002Fsystem-emails","10.templates\u002F04.system-emails",{"title":507,"icon":508,"path":509,"stem":510,"children":511,"page":62},"Users","i-lucide-users","\u002Fusers","11.users",[512,516,520,524,528],{"title":513,"path":514,"stem":515},"Managing Users","\u002Fusers\u002Fmanaging-users","11.users\u002F01.managing-users",{"title":517,"path":518,"stem":519},"A User's Page","\u002Fusers\u002Fa-users-page","11.users\u002F02.a-users-page",{"title":521,"path":522,"stem":523},"API Tokens","\u002Fusers\u002Fapi-tokens","11.users\u002F03.api-tokens",{"title":525,"path":526,"stem":527},"Sessions","\u002Fusers\u002Fsessions","11.users\u002F04.sessions",{"title":529,"icon":530,"path":531,"stem":532,"children":533,"page":62},"Insights","i-lucide-chart-line","\u002Fusers\u002Finsights","11.users\u002F05.insights",[534,538],{"title":535,"path":536,"stem":537},"Sign-ins","\u002Fusers\u002Finsights\u002Fsign-ins","11.users\u002F05.insights\u002F01.sign-ins",{"title":539,"path":540,"stem":541},"Activity","\u002Fusers\u002Finsights\u002Factivity","11.users\u002F05.insights\u002F02.activity",{"title":543,"icon":544,"path":545,"stem":546,"children":547,"page":62},"Roles","i-lucide-shield-check","\u002Froles","12.roles",[548,552,556,560,564,568,572],{"title":549,"path":550,"stem":551},"Creating a Role","\u002Froles\u002Fcreating-a-role","12.roles\u002F01.creating-a-role",{"title":553,"path":554,"stem":555},"Granting Permissions","\u002Froles\u002Fgranting-permissions","12.roles\u002F02.granting-permissions",{"title":557,"path":558,"stem":559},"Row Filters","\u002Froles\u002Frow-filters","12.roles\u002F03.row-filters",{"title":561,"path":562,"stem":563},"Payload Checks","\u002Froles\u002Fpayload-checks","12.roles\u002F04.payload-checks",{"title":565,"path":566,"stem":567},"Members","\u002Froles\u002Fmembers","12.roles\u002F05.members",{"title":569,"path":570,"stem":571},"Access Reviews","\u002Froles\u002Faccess-reviews","12.roles\u002F06.access-reviews",{"title":573,"path":574,"stem":575},"Delegated Administration","\u002Froles\u002Fdelegated-administration","12.roles\u002F07.delegated-administration",{"title":577,"icon":578,"path":579,"stem":580,"children":581,"page":62},"Logs","i-lucide-scroll-text","\u002Flogs","13.logs",[582,586,590],{"title":583,"path":584,"stem":585},"Audit Log","\u002Flogs\u002Faudit-log","13.logs\u002F01.audit-log",{"title":587,"path":588,"stem":589},"An Entry","\u002Flogs\u002Fan-entry","13.logs\u002F02.an-entry",{"title":591,"path":592,"stem":593},"Where Else It Shows","\u002Flogs\u002Fwhere-else-it-shows","13.logs\u002F03.where-else-it-shows",{"title":595,"icon":596,"path":597,"stem":598,"children":599,"page":62},"Data API","i-lucide-braces","\u002Fdata-api","14.data-api",[600,603,607,611,615,619,623,627,631,635,639,643],{"title":118,"path":601,"stem":602},"\u002Fdata-api\u002Foverview","14.data-api\u002F01.overview",{"title":604,"path":605,"stem":606},"Authentication","\u002Fdata-api\u002Fauthentication","14.data-api\u002F02.authentication",{"title":608,"path":609,"stem":610},"Reading","\u002Fdata-api\u002Freading","14.data-api\u002F03.reading",{"title":612,"path":613,"stem":614},"Filtering","\u002Fdata-api\u002Ffiltering","14.data-api\u002F04.filtering",{"title":616,"path":617,"stem":618},"Aggregating","\u002Fdata-api\u002Faggregating","14.data-api\u002F05.aggregating",{"title":620,"path":621,"stem":622},"Writing","\u002Fdata-api\u002Fwriting","14.data-api\u002F06.writing",{"title":624,"path":625,"stem":626},"Nested Writes","\u002Fdata-api\u002Fnested-writes","14.data-api\u002F07.nested-writes",{"title":628,"path":629,"stem":630},"Transactions","\u002Fdata-api\u002Ftransactions","14.data-api\u002F08.transactions",{"title":632,"path":633,"stem":634},"Calling Functions","\u002Fdata-api\u002Fcalling-functions","14.data-api\u002F09.calling-functions",{"title":636,"path":637,"stem":638},"OpenAPI","\u002Fdata-api\u002Fopenapi","14.data-api\u002F10.openapi",{"title":640,"path":641,"stem":642},"Routes","\u002Fdata-api\u002Froutes","14.data-api\u002F11.routes",{"title":644,"path":645,"stem":646},"A client, end to end","\u002Fdata-api\u002Fa-client","14.data-api\u002F12.a-client",{"title":172,"icon":648,"path":649,"stem":650,"children":651,"page":62},"i-lucide-settings","\u002Fsettings","15.settings",[652,655,659,662,665],{"title":189,"path":653,"stem":654},"\u002Fsettings\u002Fgeneral","15.settings\u002F01.general",{"title":656,"path":657,"stem":658},"Access","\u002Fsettings\u002Faccess","15.settings\u002F02.access",{"title":207,"path":660,"stem":661},"\u002Fsettings\u002Fsecurity","15.settings\u002F03.security",{"title":595,"path":663,"stem":664},"\u002Fsettings\u002Fdata-api","15.settings\u002F04.data-api",{"title":666,"path":667,"stem":668},"Features","\u002Fsettings\u002Ffeatures","15.settings\u002F05.features",{"title":670,"icon":671,"path":672,"stem":673,"children":674,"page":62},"User Profile","i-lucide-circle-user","\u002Fuser-profile","16.user-profile",[675,679,682,686,690],{"title":676,"path":677,"stem":678},"My Account","\u002Fuser-profile\u002Fmy-account","16.user-profile\u002F01.my-account",{"title":525,"path":680,"stem":681},"\u002Fuser-profile\u002Fsessions","16.user-profile\u002F02.sessions",{"title":683,"path":684,"stem":685},"Tokens","\u002Fuser-profile\u002Ftokens","16.user-profile\u002F03.tokens",{"title":687,"path":688,"stem":689},"Preferences","\u002Fuser-profile\u002Fpreferences","16.user-profile\u002F04.preferences",{"title":539,"path":691,"stem":692},"\u002Fuser-profile\u002Factivity","16.user-profile\u002F05.activity",{"title":694,"icon":695,"path":696,"stem":697,"children":698,"page":62},"AI Agents","i-lucide-bot","\u002Fai-agents","17.ai-agents",[699,702,705,709,713,717],{"title":118,"path":700,"stem":701},"\u002Fai-agents\u002Foverview","17.ai-agents\u002F01.overview",{"title":683,"path":703,"stem":704},"\u002Fai-agents\u002Ftokens","17.ai-agents\u002F02.tokens",{"title":706,"path":707,"stem":708},"MCP Server","\u002Fai-agents\u002Fmcp-server","17.ai-agents\u002F03.mcp-server",{"title":710,"path":711,"stem":712},"Recipes","\u002Fai-agents\u002Frecipes","17.ai-agents\u002F04.recipes",{"title":714,"path":715,"stem":716},"Tools","\u002Fai-agents\u002Ftools","17.ai-agents\u002F05.tools",{"title":718,"path":719,"stem":720},"llms.txt","\u002Fai-agents\u002Fllms-txt","17.ai-agents\u002F06.llms-txt",{"title":722,"icon":723,"path":724,"stem":725,"children":726,"page":62},"Operations","i-lucide-server","\u002Foperations","18.operations",[727,731,735,739,743],{"title":728,"path":729,"stem":730},"Deployment","\u002Foperations\u002Fdeployment","18.operations\u002F01.deployment",{"title":732,"path":733,"stem":734},"PostgreSQL","\u002Foperations\u002Fpostgresql","18.operations\u002F02.postgresql",{"title":736,"path":737,"stem":738},"Public URL, Proxy and CORS","\u002Foperations\u002Fpublic-url-proxy-cors","18.operations\u002F03.public-url-proxy-cors",{"title":740,"path":741,"stem":742},"Backup and Restore","\u002Foperations\u002Fbackup-restore","18.operations\u002F04.backup-restore",{"title":744,"path":745,"stem":746},"Upgrading","\u002Foperations\u002Fupgrading","18.operations\u002F05.upgrading",{"title":748,"icon":749,"path":750,"stem":751,"children":752,"page":62},"Reference","i-lucide-library","\u002Freference","19.reference",[753,757,761,765,769],{"title":754,"path":755,"stem":756},"Query Language","\u002Freference\u002Fquery-language","19.reference\u002F01.query-language",{"title":758,"path":759,"stem":760},"Errors","\u002Freference\u002Ferrors","19.reference\u002F02.errors",{"title":762,"path":763,"stem":764},"Admin API","\u002Freference\u002Fadmin-api","19.reference\u002F03.admin-api",{"title":766,"path":767,"stem":768},"Authentication API","\u002Freference\u002Fauth-api","19.reference\u002F04.auth-api",{"title":770,"path":771,"stem":772},"Environment Variables","\u002Freference\u002Fenvironment","19.reference\u002F05.environment",{"id":774,"title":122,"admin":775,"body":776,"description":1530,"extension":1531,"links":1532,"meta":1533,"navigation":1534,"path":123,"seo":1535,"stem":124,"__hash__":1536},"docs\u002F06.dataviews\u002F02.creating.md","DataViews › New DataView",{"type":777,"value":778,"toc":1519},"minimark",[779,791,798,803,831,836,871,878,882,885,948,955,1346,1350,1389,1392,1395,1479,1484,1488,1502,1506],[780,781,782,786,787,790],"p",{},[783,784,785],"strong",{},"New DataView"," opens a wizard. Its steps are the sections of the DataView's ",[788,789,172],"a",{"href":190},", in the same order and with the same controls, so what you set while creating is where you'll find it when you come back to change it. Nothing is published when you finish: the DataView is a draft only administrators see.",[780,792,793,794,797],{},"This page builds Acme's ",[783,795,796],{},"Work orders"," kanban.",[799,800],"screenshot",{"caption":801,"id":802},"The wizard's first step: the types, grouped by what each is for.","dataview-wizard-type",[804,805,806],"tip",{},[780,807,808,811,812,816,817,821,822,825,826,830],{},[783,809,810],{},"With an AI agent."," Ask ",[813,814,815],"em",{},"\"Make a kanban of work orders by status for dispatchers\"",". The agent calls ",[818,819,820],"code",{},"create_dataview"," with the type, the table, its columns and the layout, then ",[818,823,824],{},"publish_dataview"," with the roles that open it. See ",[788,827,829],{"href":828},"\u002Fai-agents\u002Frecipes#a-dataview","Recipes › A DataView",".",[832,833,835],"h2",{"id":834},"from-a-table-in-one-step","From a table, in one step",[780,837,838,839,842,843,846,847,850,851,854,855,858,859,862,863,866,867,830],{},"On a table's page (",[783,840,841],{},"Database › Tables","), ",[783,844,845],{},"Create DataView"," makes a screen of it in one window: its ",[783,848,849],{},"Name"," (the table's, humanized), ",[783,852,853],{},"Who opens it"," (the roles), and ",[783,856,857],{},"Publish now"," (on). ",[783,860,861],{},"Create"," makes a Table DataView over every column, grants the roles and publishes it, so it's in the App at once, and opens its Settings › Security. If a role still lacks something, such as ",[818,864,865],{},"READ"," on the table, the header's warnings say so with the fix. See ",[788,868,870],{"href":869},"\u002Fdataviews\u002Fpublishing#warnings","Publishing › Warnings",[780,872,873,874,877],{},"Everything stays editable in its Settings. ",[783,875,876],{},"More options…"," opens the wizard below instead, with the table already chosen.",[832,879,881],{"id":880},"the-steps","The steps",[780,883,884],{},"Which steps you get depends on the type:",[886,887,888,900],"table",{},[889,890,891],"thead",{},[892,893,894,898],"tr",{},[895,896,897],"th",{},"Type",[895,899,394],{},[901,902,903,912,919,926,933,940],"tbody",{},[892,904,905,909],{},[906,907,908],"td",{},"Table, Cards, Kanban, Calendar, Gantt, Map, Tree",[906,910,911],{},"Type → General → Data → Views → Form → Actions → Security",[892,913,914,916],{},[906,915,164],{},[906,917,918],{},"Type → General → Data → Form → Actions → Security",[892,920,921,923],{},[906,922,168],{},[906,924,925],{},"Type → General → Master → Detail → Detail columns → Form → Actions → Security",[892,927,928,930],{},[906,929,172],{},[906,931,932],{},"Type → General → Data → Settings → Actions → Security",[892,934,935,937],{},[906,936,176],{},[906,938,939],{},"Type → General → Record → Security",[892,941,942,945],{},[906,943,944],{},"External frame",[906,946,947],{},"Type → General → Frame → Security",[780,949,950,951,954],{},"A step you've reached can be opened again from the rail on the left, so you can go back without losing what you entered. ",[783,952,953],{},"Next"," waits until the step is complete.",[956,957,958,962,980,1002,1011,1014,1063,1066,1081,1088,1150,1153,1172,1178,1184,1187,1190,1230,1243,1249,1253,1256,1259,1304,1310,1313,1323,1329,1332],"steps",{},[959,960,897],"h3",{"id":961},"type",[780,963,964,965,968,969,972,973,976,977,830],{},"Pick what you're building. The types are grouped by purpose: ",[813,966,967],{},"See and work with many rows",", ",[813,970,971],{},"Enter or edit one record",", and ",[813,974,975],{},"Pages of your own",". Table is marked ",[813,978,979],{},"Recommended",[780,981,982,983,986,987,990,991,994,995,998,999,830],{},"A type that needs a particular column says so on its card: Calendar ",[813,984,985],{},"Needs a date column",", Gantt ",[813,988,989],{},"Needs a start and an end",", Map ",[813,992,993],{},"Needs a location",", Kanban ",[813,996,997],{},"Needs a status column",", Tree ",[813,1000,1001],{},"Needs a column pointing at its own table",[780,1003,1004,1005,1007,1008,830],{},"For Acme's board, pick ",[783,1006,144],{},". You can offer more views of the same rows later, such as a table and a calendar, in ",[788,1009,1010],{"href":197},"Settings › Views",[959,1012,189],{"id":1013},"general",[886,1015,1016,1025],{},[889,1017,1018],{},[892,1019,1020,1023],{},[895,1021,1022],{},"Field",[895,1024],{},[901,1026,1027,1036,1047,1055],{},[892,1028,1029,1031],{},[906,1030,849],{},[906,1032,1033,1034],{},"Required, up to 32 characters, unique. ",[813,1035,796],{},[892,1037,1038,1041],{},[906,1039,1040],{},"Slug",[906,1042,1043,1044],{},"Required, proposed from the name, unique. It's the DataView's address in the App: ",[818,1045,1046],{},"\u002Fadmin\u002Fapp\u002Fdataviews\u002Fwork-orders",[892,1048,1049,1052],{},[906,1050,1051],{},"Description",[906,1053,1054],{},"Optional, up to 128 characters. Shown as a tooltip in the App menu",[892,1056,1057,1060],{},[906,1058,1059],{},"Icon, Color",[906,1061,1062],{},"Optional. Without an icon, the type's icon is used",[959,1064,193],{"id":1065},"data",[780,1067,1068,1069,1072,1073,1076,1077,1080],{},"Pick the ",[783,1070,1071],{},"source",": a table or a view that is ",[818,1074,1075],{},"ACTIVE"," and exposed for ",[818,1078,1079],{},"GET",". Master-detail and Custom need a table, because they write records. Functions are never a source.",[780,1082,1083,1084,1087],{},"Then the ",[783,1085,1086],{},"columns",", one row each:",[886,1089,1090,1099],{},[889,1091,1092],{},[892,1093,1094,1097],{},[895,1095,1096],{},"Column",[895,1098],{},[901,1100,1101,1126,1134,1142],{},[892,1102,1103,1106],{},[906,1104,1105],{},"Show",[906,1107,1108,1109,1112,1113,968,1116,968,1119,968,1122,1125],{},"Whether the column is in the DataView. All are checked, except a ",[818,1110,1111],{},"uuid"," primary key and the audit columns PostgreSQL fills (",[818,1114,1115],{},"created_at",[818,1117,1118],{},"updated_at",[818,1120,1121],{},"created_by",[818,1123,1124],{},"updated_by",")",[892,1127,1128,1131],{},[906,1129,1130],{},"Label",[906,1132,1133],{},"The column's title, read-only here: it comes from the table's column presentation",[892,1135,1136,1139],{},[906,1137,1138],{},"Help text",[906,1140,1141],{},"Shown under the field in the record form",[892,1143,1144,1147],{},[906,1145,1146],{},"Widget",[906,1148,1149],{},"The control that edits it, proposed from the column's type and constraints",[780,1151,1152],{},"The primary key is always read, because editing and deleting a row need it. Unchecked, it's only hidden.",[780,1154,1155,1156,1159,1160,1163,1164,1167,1168,1171],{},"Under the columns, ",[783,1157,1158],{},"Column set"," decides what happens to a column added to the table later: ",[813,1161,1162],{},"Auto-hide new columns"," (the default) adds it hidden, ",[813,1165,1166],{},"Auto-show new columns"," adds it visible, ",[813,1169,1170],{},"Lock to selected columns"," keeps it out.",[780,1173,1174,1177],{},[783,1175,1176],{},"Show records"," runs the query the DataView will make, with your permissions, so you see what it will read before you finish. A viewer's own permissions can narrow it further.",[780,1179,1180,1181,1183],{},"If the table looks like a parameter table (a key and a value column), the wizard suggests the ",[788,1182,172],{"href":173}," type.",[959,1185,96],{"id":1186},"views",[780,1188,1189],{},"The main view's layout, with a select for each column it needs. Each type has its own; for a kanban:",[886,1191,1192,1200],{},[889,1193,1194],{},[892,1195,1196,1198],{},[895,1197,1022],{},[895,1199],{},[901,1201,1202,1214,1222],{},[892,1203,1204,1207],{},[906,1205,1206],{},"Group by",[906,1208,1209,1210,1213],{},"Required. A foreign key (a lane per row of the table it points at) or a column with a ",[818,1211,1212],{},"CHECK"," list (a lane per value)",[892,1215,1216,1219],{},[906,1217,1218],{},"Card title",[906,1220,1221],{},"Required. The card's headline",[892,1223,1224,1227],{},[906,1225,1226],{},"Card description, Card image",[906,1228,1229],{},"Optional",[780,1231,1232,1233,1236,1237,1240,1241,830],{},"Acme groups by ",[818,1234,1235],{},"status"," and titles each card with ",[818,1238,1239],{},"description",". Each type's page describes its layout: see ",[788,1242,130],{"href":137},[780,1244,1245,1248],{},[783,1246,1247],{},"More options"," holds what every view shares: the density and page size a first-time viewer starts with, the toolbar's mode, the list's margin and the auto-refresh.",[799,1250],{"caption":1251,"id":1252},"The Views step for a kanban: grouped by status, titled by the description.","dataview-wizard-views",[959,1254,164],{"id":1255},"form",[780,1257,1258],{},"How a row's record form opens from the list:",[886,1260,1261,1270],{},[889,1262,1263],{},[892,1264,1265,1268],{},[895,1266,1267],{},"Mode",[895,1269],{},[901,1271,1272,1280,1288,1296],{},[892,1273,1274,1277],{},[906,1275,1276],{},"Sidebar",[906,1278,1279],{},"Beside the list, which stays in view. The default, and right for most forms",[892,1281,1282,1285],{},[906,1283,1284],{},"Modal",[906,1286,1287],{},"A centered dialog, for short forms",[892,1289,1290,1293],{},[906,1291,1292],{},"Drawer",[906,1294,1295],{},"From the bottom, covering most of the screen, for a heavy form",[892,1297,1298,1301],{},[906,1299,1300],{},"Page",[906,1302,1303],{},"Its own address, for long forms",[780,1305,1306,1307,830],{},"Past 8 visible columns in a Sidebar or a Modal, the wizard suggests a Page. Below, the record's actions: Clone, Save & New, Copy, Print, Activity. See ",[788,1308,1309],{"href":200},"Settings › Form",[959,1311,203],{"id":1312},"actions",[780,1314,1315,1318,1319,1322],{},[783,1316,1317],{},"Allow"," sets what viewers may do besides reading: Create, Edit, Delete. It can only take away what their permissions give, never add to it. A ",[813,1320,1321],{},"Closed orders"," history can have no New button while the same roles create orders in another DataView.",[780,1324,1325,1326,830],{},"Then the toolbar's functions, on or off: search, saved views, activity, filter, import, export, refresh. See ",[788,1327,1328],{"href":204},"Settings › Actions",[959,1330,207],{"id":1331},"security",[780,1333,1334,1335,1338,1339,1342,1343,830],{},"The roles that may open it. They're granted as soon as the DataView is created, but users only see it once it's published. Give the Work orders kanban to ",[783,1336,1337],{},"Dispatcher"," and ",[783,1340,1341],{},"Manager",". See ",[788,1344,1345],{"href":208},"Settings › Security",[832,1347,1349],{"id":1348},"what-the-wizard-creates","What the wizard creates",[1351,1352,1353,1360,1366,1372,1380],"ul",{},[1354,1355,1356,1359],"li",{},[783,1357,1358],{},"The DataView",", as a draft, with the columns you checked shown and the primary key hidden if you unchecked it.",[1354,1361,1362,1365],{},[783,1363,1364],{},"Its record form",", generated from the same columns: one field per column, in one column for a Sidebar or a Modal, two per row past 8 fields in a Drawer or a Page. Each field gets the widget you chose. Over a view there is no record form: a DataView never writes to a view.",[1354,1367,1368,1371],{},[783,1369,1370],{},"Its default order",", taken from the source's default order. From then on the order is the DataView's own.",[1354,1373,1374,1375,1377,1378,830],{},"For a ",[783,1376,168],{},", two DataViews: the master, and a detail DataView over the items table that lives inside it and is published with it. See ",[788,1379,168],{"href":169},[1354,1381,1374,1382,1384,1385,1388],{},[783,1383,160],{},", optionally a trigger on the table that refuses a row placed under itself or one of its descendants (",[813,1386,1387],{},"Protect against cycles","). It applies to every writer, not only the DataView.",[780,1390,1391],{},"Only what differs from the defaults is stored, so a DataView keeps following the defaults you didn't touch.",[832,1393,758],{"id":1394},"errors",[886,1396,1397,1406],{},[889,1398,1399],{},[892,1400,1401,1403],{},[895,1402,262],{},[895,1404,1405],{},"When",[901,1407,1408,1422,1433,1446,1456,1469],{},[892,1409,1410,1419],{},[906,1411,1412,968,1415,1418],{},[818,1413,1414],{},"DATAVIEW_NAME_DUPLICATE",[818,1416,1417],{},"DATAVIEW_SLUG_DUPLICATE"," (409)",[906,1420,1421],{},"another DataView already has the name or the slug",[892,1423,1424,1430],{},[906,1425,1426,1429],{},[818,1427,1428],{},"INVALID_DATAVIEW_COLOR"," (422)",[906,1431,1432],{},"a color that isn't one of the palette's",[892,1434,1435,1440],{},[906,1436,1437,1429],{},[818,1438,1439],{},"DATAVIEW_SOURCE_TYPE_INVALID",[906,1441,1442,1443,1445],{},"the source isn't a table or a view, isn't ",[818,1444,1075],{},", or is a view for a type that writes",[892,1447,1448,1453],{},[906,1449,1450,1429],{},[818,1451,1452],{},"DATAVIEW_FIELD_WIDGET_INVALID",[906,1454,1455],{},"a widget that can't edit that column",[892,1457,1458,1466],{},[906,1459,1460,968,1463,1429],{},[818,1461,1462],{},"DATAVIEW_DETAIL_REQUIRED",[818,1464,1465],{},"DATAVIEW_DETAIL_INVALID",[906,1467,1468],{},"a Master-detail without a detail table, or with one that has no foreign key to the master",[892,1470,1471,1476],{},[906,1472,1473,1429],{},[818,1474,1475],{},"DATAVIEW_VIEW_CONFIG_INVALID",[906,1477,1478],{},"a layout that doesn't fit the source, such as a Settings DataView without its four columns",[780,1480,1481,1482,830],{},"See ",[788,1483,758],{"href":759},[832,1485,1487],{"id":1486},"without-the-wizard","Without the wizard",[780,1489,1490,1491,1494,1495,1497,1498,825,1500,830],{},"The wizard sends one request, ",[818,1492,1493],{},"POST \u002Fadmin\u002Fapi\u002Fdataviews",", with the name, the type, the source, the chosen columns and the configuration. Agents use the MCP tool ",[818,1496,820],{},", which takes the same, and then ",[818,1499,824],{},[788,1501,762],{"href":763},[832,1503,1505],{"id":1504},"next-steps","Next steps",[1351,1507,1508,1513],{},[1354,1509,1510,1512],{},[788,1511,126],{"href":127},": put it in front of users.",[1354,1514,1515,1518],{},[788,1516,1517],{"href":194},"Settings › Data",": change its columns afterwards.",{"title":1520,"searchDepth":1521,"depth":1522,"links":1523},"",1,2,[1524,1525,1526,1527,1528,1529],{"id":834,"depth":1522,"text":835},{"id":880,"depth":1522,"text":881},{"id":1348,"depth":1522,"text":1349},{"id":1394,"depth":1522,"text":758},{"id":1486,"depth":1522,"text":1487},{"id":1504,"depth":1522,"text":1505},"The New DataView wizard, step by step, and what it creates.","md",null,{},true,{"title":122,"description":1530},"R6VWoEyDJndKUwBHJVaz3NbiKwQN_BIXlhjghTQYuaw",[1538,1540],{"title":118,"path":119,"stem":120,"description":1539,"children":-1},"Screens built on your tables, published to the roles that use them.",{"title":126,"path":127,"stem":128,"description":1541,"children":-1},"Publish a DataView, go back to an earlier version, and grant it to roles.",1792339945296]