Meta tags:
description= pidrang init reads your Supabase schema, writes the Resource definitions, the resource routes and the generic List, Create, Show and Edit pages, wires the...;
Headings (most frequently used words):
the, it, reference, what, app, when, in, cli, guide, ui, layers, maintainers, commands, options, requirements, questions, writes, plan, file, exit, codes, second, run, new, and, an, existing, tables, need, signed, user, sign, page, changing, wrote, stops, every, key, connection, per, strategy, secrets, from, environment,
Text of the page (most frequently used words):
the (187), app (83), and (78), src (70), cli (65), page (52), sign (41), pidrang (40), when (40), init (38), lines (36), run (36), with (33), source (33), apps (30), libs (30), lib (30), new (29), resource (27), layout (27), table (26), list (26), not (25), pages (25), #tables (24), plan (23), routes (22), file (21), from (21), existing (20), supabase (20), edit (19), resources (19), route (19), for (19), writes (18), create (17), install (16), are (16), true (16), name (14), written (14), already (14), key (14), angular (13), generate (13), url (13), line (12), write (12), show (12), that (12), wizard (12), one (12), strategy (12), per (12), connection (12), json (11), files (10), instead (10), provider (10), its (10), only (10), adds (10), every (10), same (10), sidebar (10), delete (9), guard (9), secret (9), user (9), environment (9), node (8), listed (8), any (8), content (8), message (8), must (8), what (8), always (8), graphql (8), postgres (8), actions (8), false (8), before (7), never (7), first (7), question (7), asks (7), database (7), project (7), packages (6), version (6), commands (6), need (6), lists (6), stops (6), other (6), generated (6), add (6), does (6), signin (6), answers (6), readsneedsignin (6), your (6), read (6), host (6), prints (6), defaults (6), none (6), this (5), preflight (5), error (5), set (5), config (5), they (5), them (5), then (5), you (5), without (5), place (5), later (5), edited (5), has (5), there (5), providesigninpath (5), signed (5), their (5), navigation (5), both (5), schema (5), fields (5), design (4), notes (4), conflict (4), printed (4), command (4), unavailable (4), named (4), core (4), unsupported (4), nothing (4), demo (4), module (4), path (4), own (4), leaves (4), cannot (4), auth (4), needs (4), anonymous (4), after (4), link (4), html (4), entry (4), definition (4), legacy (4), cacertificatepath (4), tls (4), ref (4), string (4), hiddenfields (4), default (4), menu (4), select (4), how (4), checkbox (4), definitions (4), reference (4), components (3), missing (3), package (3), together (3), exists (3), again (3), empty (3), was (3), workspace (3), root (3), listing (3), helpers (3), generic (3), application (3), wrote (3), comment (3), those (3), bundle (3), interactive (3), asked (3), applies (3), opens (3), appends (3), yet (3), back (3), sets (3), redirect (3), second (3), variable (3), pidrang_supabase_secret_key (3), pidrang_supabase_publishable_key (3), role (3), allows (3), port (3), folder (3), optional (3), https (3), publishable (3), type (3), header (3), created_at (3), generation (3), getting (3), started (3), development (3), using (3), column (3), label (3), data (3), which (3), should (3), questions (3), reads (3), skip (3), refine (2), next (2), sources (2), check (2), 142 (2), 156 (2), detection (2), manually (2), fix (2), manager (2), failed (2), resolve (2), conflicted (2), under (2), throws (2), invalid (2), action (2), selected (2), reserved (2), reason (2), supported (2), plain (2), required (2), range (2), these (2), present (2), like (2), creates (2), problems (2), condition (2), overwrite (2), docs (2), serve (2), sync (2), build (2), whose (2), can (2), validation (2), provide (2), into (2), generates (2), out (2), kept (2), hand (2), declares (2), segment (2), refused (2), take (2), paths (2), 102 (2), call (2), goes (2), keeps (2), accept (2), where (2), driven (2), links (2), row (2), level (2), security (2), policies (2), strategies (2), global (2), once (2), answer (2), globally (2), private (2), held (2), all (2), configured (2), update (2), canmatchsignedin (2), conditions (2), map (2), match (2), requested (2), fails (2), reports (2), receives (2), else (2), could (2), appended (2), guards (2), stderr (2), date (2), installed (2), meaning (2), warning (2), pidrang_database_password (2), pidrang_supabase_service_role_key (2), pidrang_supabase_anon_key (2), used (2), secrets (2), print (2), service (2), keys (2), fills (2), password (2), boolean (2), omitted (2), views (2), least (2), object (2), see (2), side (2), gets (2), policy (2), hides (2), rows (2), visitors (2), direct (2), wires (2), itself (2), placeholder (2), component (2), calls (2), button (2), dataprovider (2), resourceform (2), field (2), prisma (2), createdat (2), timestamp (2), defaultsorters (2), readonly (2), hidden (2), checked (2), scaffold (2), top (2), order (2), 166 (2), function (2), usage (2), help (2), artifacts (2), releasing (2), maintainers (2), layers (2), mit, licensed, inspired, affiliated, previous, pager, github, 189, 226, checks, 692, 696, 969, 980, reporting, issue, remaining, older, deleted, selection, try, description, response, control, character, rename, collision, also, rejected, upgrade, downgrade, standalone, valid, 153, rule, manual, comments, 163, 175, repositories, codebase, meant, consumer, applications, pnpm, called, deleting, breaks, even, correct, regenerate, individual, regeneration, refuses, differs, expects, ordinary, freely, changing, 485, 493, instruction, logic, shared, above, earlier, yours, declared, 116, placement, 273, 315, 885, 897, 1078, 1174, 180, 182, routenameproblem, declaressigninroute, rungenerateauth, plansignin, another, since, exits, treats, three, cases, login, method, provided, 728, 741, setup, unguarded, providerreadsneedsignin, reading, actual, ask, single, referencing, marked, receive, redirects, visitor, through, may, prompt, lack, shows, words, stay, text, 743, 768, keyed, layoutui, layouts, feature, gated, four, met, been, changed, contain, template, skips, replaces, welcome, full, configures, edits, value, suggests, target, says, why, 819, 884, guarded, updates, seen, until, left, different, preserved, safely, exact, change, make, 644, install_status, exit_cancelled, exit_failed, exit_ok, interrupted, ctrl, during, cancelled, 130, input, conflicting, unknown, wrong, writing, stopped, done, covers, successful, everything, skipped, declining, code, exit, codes, 225, 237, constants, secrets_in_env, env_, wins, produces, deprecation, names, still, work, 141, 227, 229, 259, 275, plan_help, allowed, strict, extra, produce, errors, appear, use, env, vars, supabaseurl, relative, current, remote, prod, crt, 5432, override, 172, 171, ignore, keep, theirs, 170, 106, duplicates, detected, 101, table_keys, dependent, below, leave, bare, grant, credentials, come, variables, products, pages_ui_layer_packages, described, corresponding, overwritten, others, canmatchresourceaction, otherwise, past, ends, steps, two, replace, too, preceded, were, environments, had, neither, nor, replacements, import, final, enables, provides, providepidrang, demand, utils, etc, calling, deleteprovider, displaying, projected, resourcetable, injectresourcelist, regenerated, extended, added, pointing, canmatch, subsequent, runs, each, inferred, introspection, audit, columns, fixes, trigger, sorts, alter, now, null, updatedat, updated_at, nullable, hasdefault, export, const, lands, attempt, repeats, rejection, whether, fall, 148, 154, last, confirms, running, 350, say, yes, introspected, 332, 338, hide, selecting, disabled, 305, 312, 309, 321, 329, actionsmessage, support, resolved, multi, over, available, 168, choices, sb_secret_, 486, connect, dashboard, more, than, registered, 271, want, 138, supported_node, among, dependencies, against, process, shown, requirement, requirements, 120, 124, offer, choose, several, prompts, option, options, 112, scaffolds, crud, offers, launched, created, router, tailwind, css, material, overview, providers, architecture, authentication, yourself, guide, return, demos, main, search,
Text of the page (random words):
nd init prints the alter table set default now that fixes it if a trigger already fills the column set create true by hand the graphql strategy cannot see defaults and reports its own reason instead defaultsorters is written when a timestamp or date created_at column exists or else a createdat one and sorts on that column every run edited in place on subsequent runs src app resource routes ts generic routes resource resource create resource id edit resource id pointing to generated pages with canmatch guards every run regenerated an existing guard list is extended in place and the sign in route is added once the sign in page is in place src app pages resource list page ts list page using injectresourcelist resourcetable with actions projected every run on a new or an existing app a file already there with other content stops init before any write src app pages resource create page ts create page using resourceform calls dataprovider create same as the list page src app pages resource show page ts show page displaying fields and links to edit delete same as the list page src app pages resource edit page ts edit page using resourceform calls dataprovider update with a delete button calling deleteprovider delete same as the list page src app pidrang helpers provide sign in path can match signed in route utils etc same as the list page src app layout app layout ts navigation layout component with header and sidebar menu only when layout is sidebar on a new app src app pages sign in page ts sign in page component new app when you accept the sign in question existing app in an interactive run always existing app driven by a plan when the plan sets signin true omitted when app routes ts already declares the route pidrang generate auth writes it on demand app config ts adds providepidrang provides providesigninpath if configured every run app routes ts appends the resource routes import entry redirect for new apps to the first page the final resources ts enables every run angular json adds environment file replacements when the app had neither environment ts nor environment development ts on a new or an existing app src environments environment ts and environment development ts supabase url and a placeholder for the publishable key same as angular json otherwise init prints the lines to add to environment ts and does not check environment development ts every run that gets past the writes ends with the next steps when it wrote the files the two files and the placeholder to replace the project url too when it could not resolve it then ng serve preceded by the install commands when the packages were not installed how it wires the app itself is described in getting started the resource routes guard every resource action with both canmatchresourceaction and canmatchsignedin when the corresponding tables need a signed in user a file it writes is never overwritten one that already exists with other content stops init before any write an existing resources ts is edited instead a second run appends the tables it does not list yet and leaves the others as they are sources libs cli src lib generate pages bundle ts pages_ui_layer_packages lines 70 73 libs cli src lib generated pages ts page file list libs cli src lib generate resources file ts resources ts generation libs cli src lib build sign in page ts sign in page generation libs cli src lib generate layout module ts layout generation apps pidrang cli src edit app config ts apps pidrang cli src edit app routes ts the plan file json provider supabase connection tables table products actions list create show edit delete hiddenfields created_at layout sidebar signin true readsneedsignin false actions lists at least one of list create show edit delete hiddenfields is optional layout is sidebar to add a header and a side menu of the resources to a new app or none to leave the pages bare it defaults to none and an existing app never gets one signin is true to generate the sign in page that the pages and the layout link to it defaults to false and init asks for it on a new app readsneedsignin is true when the select policy of the tables hides their rows from anonymous visitors a new app then opens on the sign in page instead of an empty list it applies to every table defaults to false and the direct database connection strategy answers per table from its row level security its select policies and its grant to the anonymous role instead credentials never go in the plan file they come from environment variables every key key type default meaning provider string provider id e g supabase source libs cli src lib init plan ts line 19 connection object strategy dependent connection object see below source libs cli src lib init plan ts line 20 tables table string database table name used as resource name and url segment source libs cli src lib init plan ts line 3 table_keys tables actions string must list at least one of list create show edit delete duplicates detected source libs cli src lib init plan ts lines 95 101 tables hiddenfields string fields omitted from list and edit views source libs cli src lib init plan ts lines 102 106 layout sidebar none none sidebar for new apps only existing apps ignore it and keep theirs source libs cli src lib init plan ts lines 22 170 signin boolean false generate the sign in page defaults to false init asks on new apps source libs cli src lib init plan ts lines 23 171 readsneedsignin boolean false global per table override when the postgres strategy answers per table source libs cli src lib init plan ts lines 24 172 connection per strategy supabase plan connection one of strategy graphql url https ref supabase co publishable key from pidrang_supabase_publishable_key strategy secret key url https ref supabase co secret key from pidrang_supabase_secret_key strategy postgres host db ref supabase co port 5432 database postgres user postgres tls true cacertificatepath prod ca crt url https ref supabase co password from pidrang_database_password port database user tls cacertificatepath and url are optional tls defaults to on for a remote host a relative cacertificatepath is read from the current folder not from the folder of the plan file and url fills supabaseurl in the app when the host does not name the project keys allowed per strategy strict graphql allows strategy and url secret key allows the same postgres allows strategy host port database user tls cacertificatepath and url extra keys produce validation errors secrets must not appear in the plan use env vars source libs cli supabase src lib supabase schema provider definition ts lines 259 275 plan_help legacy names still work and print a warning service role for secret key pidrang_supabase_anon_key for pidrang_supabase_publishable_key pidrang_supabase_service_role_key for pidrang_supabase_secret_key source same file lines 141 142 227 229 secrets from the environment variable used by legacy name pidrang_supabase_publishable_key graphql connection pidrang_supabase_anon_key pidrang_supabase_secret_key secret key connection pidrang_supabase_service_role_key pidrang_database_password postgres connection when both the new variable and the legacy name are set the new variable wins the legacy name produces a deprecation warning printed to stderr source libs cli supabase src lib supabase schema provider definition ts lines 225 237 env_ constants secrets_in_env exit codes code meaning 0 done or nothing to do covers successful write everything already up to date install skipped installed present unsupported manager declining the install the files are already written init prints the install commands 1 invalid input unsupported node js or app conflicting file failed install unknown provider wrong table name writing stopped by an error init lists the files written and not written 130 interrupted by the user ctrl c before any write prints cancelled nothing was written to stderr during the writes lists the files written and those not written and asks to run init again at the install question the files are already written and init prints the install commands source apps pidrang cli src run cli ts lines 79 81 exit_ok exit_failed exit_cancelled and the install_status map at line 644 a second run resources ts is edited tables not yet listed are appended tables already listed are left as they are a file with different content stops init before any write listing the conflicted paths the layout of a first run app is preserved a second run on an existing app never sets the layout to sidebar when a file cannot be edited safely init adds a pidrang comment that lists the exact change to make guard updates a guard already written receives new private tables appended to its list guards for tables not seen in resources ts are held back until those tables are listed source apps pidrang cli src run cli ts lines 819 884 resources edit guarded resources a new app and an existing app on a new app init replaces the welcome page generates the full page bundle list create show edit creates the layout module with a sidebar writes the sign in page when requested and configures app html to host the layout on an existing app it adds the resource routes to app routes ts and edits resources ts and app config ts writes the same pages and helpers as on a new app and the sign in page always in an interactive run or when the plan sets signin true a page already there with other content stops init before any write it adds no layout and no entry redirect when app routes ts has no route it prints the redirect to add on both the entry is the list of the first table of the run that resources ts leaves with a list or else its first create page a resource already in resources ts keeps its own list and create when init cannot read them a value that is not true or false or tables it could only add as a pidrang comment it adds and suggests no target and says why the layout feature app layout ts is gated on four conditions met together the app must be new ng new s app html has not been changed app html must contain only app layout app ts must match the ng new template and the layout must be requested sidebar when any condition fails init reports the missing files and skips the layout an existing app kept its own app html and never receives a layout source apps pidrang cli src run cli ts lines 743 768 layout conditions libs cli src lib generate layout module ts lines 14 17 layouts map keyed on layoutui when the tables need a signed in user tables marked with readsneedsignin true receive a canmatchsignedin guard on all their actions the guard redirects an anonymous visitor to the sign in path when providesigninpath configured one without it the navigation goes through the generated pages show a you may need to sign in prompt only after a write is refused for lack of sign in a delete on the list page a create on the create page an update on the edit page the show page never shows it with providesigninpath the words sign in are a link without it they stay plain text for new apps init asks once do your tables need a signed in user to be read and applies the answer globally the new app opens on the sign in page when readsneedsignin is true for existing apps a new run appends private tables already listed in resources ts to the existing guard tables not yet listed are held back with an error message referencing where to add them manually only the postgres strategy answers readsneedsignin per table reading the actual row level security policies the graphql and secret key strategies ask a single global question source libs cli src lib wizard ts lines 43 55 providerreadsneedsignin apps pidrang cli src run cli ts lines 728 741 guard setup and unguarded resources message the sign in page init writes the sign in page at src app pages sign in page ts in three cases on a new app when you accept the sign in question on an existing app in an interactive run where it is always written and the question is not asked and on an existing app driven by a plan whose signin is true the page links to the login method provided by the app when src app pages sign in page ts is already there with other content init keeps it and treats the run as one without a page no new sign in route no providesigninpath and no sign in guard pidrang generate auth writes the same page when app routes ts has no existing sign in route and app config ts does not call providesigninpath with another path it needs the src app resource routes ts that init writes since the route goes there without it it exits 1 and writes nothing init writes its own sign in route into resource routes ts above the resource routes only when the sign in page it generates is in place a run that leaves the page out writes no route a later run that writes the page adds it and a route an earlier run wrote is kept pidrang generate auth adds the route with the page when resource routes ts was edited by hand it adds a pidrang comment with the route to write instead when app routes ts already declares a first segment named sign in init writes no sign in route and leaves yours in place a table named sign in or resource unavailable or like a route declared in app routes ts is refused on every run so the resource routes cannot take those paths source libs cli src lib generate pages bundle ts lines 5 10 and 102 116 sign in route placement apps pidrang cli src run cli ts lines 273 315 plansignin 885 897 sign in route on init and 1078 1174 rungenerateauth apps pidrang cli src add sign in route ts apps pidrang cli src preflight app ts lines 180 182 declaressigninroute libs cli src lib wizard ts lines 79 99 routenameproblem source apps pidrang cli src run cli ts lines 485 493 instruction printed without provider libs demo shared src lib provide sign in path ts validation logic changing what it wrote generated files are ordinary application files you can edit them freely init refuses to overwrite a generated file whose content differs from what it expects and lists it instead to regenerate the generic pages list create show edit delete src app pages and src app pidrang together then run init again individual page regeneration is not supported the helpers under src app pidrang are called by the generated pages and the layout module so deleting them breaks the build even when resources ts is correct pnpm run sync pages and sync layout serve the demo repositories in this codebase they are not meant for consumer applications source apps pidrang cli src run cli ts lines 153 156 never overwrite rule manual comments apps pidrang cli src write plan ts conflict detection docs design notes md lines 163 175 when it stops condition written what to do no angular json or not valid json error message listing problems run from the workspace root of an angular app missing app config ts or app routes ts error message these must be present in a standalone app set up like ng new creates it unsupported node js plain error with required range nothing was written install ...
|