your-ai-workflow-firebase-os 1.2.49 → 1.2.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ContactPopup-DaLnjoL7.js → ContactPopup-BurbGShS.js} +4492 -4417
- package/dist/{ContactPopup-BEjdVo2u.cjs → ContactPopup-BzlpoeoW.cjs} +1 -1
- package/dist/{PhoneInputField-jzt5B2SR.js → PhoneInputField-DZFhNM2v.js} +1 -1
- package/dist/renderer.cjs.js +1 -1
- package/dist/renderer.es.js +1 -1
- package/dist/vite.cjs.js +7 -7
- package/dist/vite.es.js +84 -63
- package/dist/your-ai-workflow-firebase-os.cjs.js +18 -17
- package/dist/your-ai-workflow-firebase-os.css +1 -1
- package/dist/your-ai-workflow-firebase-os.es.js +4498 -4713
- package/package.json +1 -1
- package/scripts/postinstall.js +50 -9
- package/src/index.css +20 -14
package/package.json
CHANGED
package/scripts/postinstall.js
CHANGED
|
@@ -295,13 +295,24 @@ change the owner can use and a change they cannot.
|
|
|
295
295
|
first. Never write a form of your own with inputs and a submit handler —
|
|
296
296
|
its entries would never reach the Inbox.
|
|
297
297
|
6. Build what was asked and nothing more. Do not add extra pages, extra views,
|
|
298
|
-
extra forms, sample data or metrics the owner did not mention.
|
|
298
|
+
extra forms, sample data or metrics the owner did not mention. Write the
|
|
299
|
+
page for the people who will VISIT it: never reprint words off the owner's
|
|
300
|
+
own admin screens on it — no "Copy this into your assistant's chat", no
|
|
301
|
+
"Ask your assistant", no prompt box, no instruction addressed to the owner
|
|
302
|
+
or to you. Those headings belong to the tools the owner asks for the page
|
|
303
|
+
WITH; on the page itself they are nonsense to a visitor, and the build
|
|
304
|
+
warns about them. Inside a page
|
|
299
305
|
you design freely — "an impressive hero" is yours to make good — the limit
|
|
300
306
|
is on adding THINGS, not on doing the asked thing well. Lay the page out as
|
|
301
307
|
ONE clean column of sections using the full width: never nest a panel
|
|
302
308
|
inside another panel, never absolutely position sections over each other,
|
|
303
309
|
and never give a section a fixed height that clips it — more stages, more
|
|
304
310
|
columns or more cards just make the page taller, and the page scrolls.
|
|
311
|
+
Above all, never cap the PAGE itself: no \`h-screen\`, \`max-h-screen\` or
|
|
312
|
+
\`h-[100vh]\` wrapper and no \`overflow-hidden\`/\`overflow-y-auto\` around
|
|
313
|
+
the whole page — on a phone that box swallows everything below one screen
|
|
314
|
+
and the visitor cannot scroll to the end. The build warns, and the app
|
|
315
|
+
force-grows such a box at runtime.
|
|
305
316
|
7. A page the owner added on their Pages screen ALREADY EXISTS. The sentence
|
|
306
317
|
they paste says so, names its web address and names its one content file —
|
|
307
318
|
write exactly that file plus its two registry.ts lines (and, only when the
|
|
@@ -332,6 +343,19 @@ change the owner can use and a change they cannot.
|
|
|
332
343
|
CSS in a component — one global rule restyles and re-pads every page of
|
|
333
344
|
the app at once. The app also disables any \`<style>\` tag inside a
|
|
334
345
|
content slot at runtime, so global CSS cannot work — do not try it.
|
|
346
|
+
Pictures: every \`<img>\` gets \`loading="lazy"\` (except one at the very top
|
|
347
|
+
of the page), \`decoding="async"\` and a \`width\` and \`height\` — a public
|
|
348
|
+
page that pulls in several full-size pictures at once takes seconds to
|
|
349
|
+
appear on a phone. Use the links the owner gave you as they are; the app
|
|
350
|
+
already shrinks what they upload. Never add a picture from anywhere else.
|
|
351
|
+
And NEVER change the size of the page title: the big heading at the top of
|
|
352
|
+
every page is the library's, it sizes itself to fit the words and the
|
|
353
|
+
screen, and it is not yours to touch — not with a \`font-size\` on \`h1\`,
|
|
354
|
+
\`h2\`, \`h3\` or \`.page-title\` in \`theme.css\` (the build fails on that
|
|
355
|
+
rule, and the app ignores it anyway), and not with an \`<h1>\` in a content
|
|
356
|
+
file (they are hidden inside the slot). Headings you write inside your own
|
|
357
|
+
content are yours to size freely — \`SectionHeading\`, or an \`<h2>\` /
|
|
358
|
+
\`<h3>\` of your own.
|
|
335
359
|
|
|
336
360
|
Before you answer, re-read the request and this list, and delete anything you
|
|
337
361
|
built that breaks a line of it.
|
|
@@ -357,7 +381,10 @@ stops the build with one sentence that says the fix.
|
|
|
357
381
|
content file (global CSS — it restyles and re-pads every page of the app,
|
|
358
382
|
style with theme classes instead); a \`*Content.tsx\` or \`*.config.ts\`
|
|
359
383
|
saved anywhere except directly in its own folder — a subfolder, another
|
|
360
|
-
directory — is invisible to the app, so the build stops and names the move
|
|
384
|
+
directory — is invisible to the app, so the build stops and names the move;
|
|
385
|
+
and a rule in \`theme.css\` that sizes \`h1\`, \`h2\`, \`h3\` or
|
|
386
|
+
\`.page-title\` — it would resize every page title in the app, so the build
|
|
387
|
+
stops and says to delete it.
|
|
361
388
|
- A hand-written form — a \`<form>\` or an \`onSubmit\` in a content file with
|
|
362
389
|
no \`<ContactPopup />\` — prints a warning, because its entries never reach
|
|
363
390
|
the Inbox. So does a hard-coded colour
|
|
@@ -465,14 +492,19 @@ address to wire — the page finds its content by that key.
|
|
|
465
492
|
|
|
466
493
|
### The pages that already exist, and the one file each is filled by
|
|
467
494
|
|
|
468
|
-
|
|
495
|
+
Four pages already exist and are NEVER created, re-created or re-addressed.
|
|
469
496
|
Each is filled by exactly one file, the same way as any other page:
|
|
470
497
|
|
|
471
|
-
| page | web address
|
|
472
|
-
| ------------- |
|
|
473
|
-
| Home | \`/\`
|
|
474
|
-
| Contact | \`/contact\`
|
|
475
|
-
| Support | \`/support\`
|
|
498
|
+
| page | web address | the one file to write |
|
|
499
|
+
| ------------- | ------------ | ------------------------------------------------------------------ |
|
|
500
|
+
| Home | \`/\` | \`src/your-ai-workflow-firebase-os/Home.tsx\` (edit it, do not add one) |
|
|
501
|
+
| Contact | \`/contact\` | \`microcomponents/ContactContent.tsx\` |
|
|
502
|
+
| Support | \`/support\` | \`microcomponents/SupportContent.tsx\` |
|
|
503
|
+
| Dashboard | \`/dashboard\` | \`microcomponents/DashboardContent.tsx\` |
|
|
504
|
+
|
|
505
|
+
The dashboard is the screen a signed-in person lands on. It ships empty, and
|
|
506
|
+
\`DashboardContent.tsx\` draws inside its panel, below the welcome heading and
|
|
507
|
+
the dashboard menu the page already renders.
|
|
476
508
|
|
|
477
509
|
Contact and Support show their form as a pop-up until one of those files
|
|
478
510
|
exists; the moment it does, the page draws that file instead. So "put the
|
|
@@ -516,7 +548,11 @@ everywhere, including the home page.
|
|
|
516
548
|
See "Presets" below.
|
|
517
549
|
9. In \`theme.css\`, change CSS variables only. Never redefine \`.glass-panel\`,
|
|
518
550
|
\`.text-gradient\` or \`.btn-primary\` — they ship compiled in the library and
|
|
519
|
-
redefining them breaks the app's chrome everywhere.
|
|
551
|
+
redefining them breaks the app's chrome everywhere. Never add a
|
|
552
|
+
\`font-size\` to \`h1\`, \`h2\`, \`h3\` or \`.page-title\` there either: that
|
|
553
|
+
resizes every page title in the app, the build now fails on it, and the
|
|
554
|
+
app pins the title's size regardless. The heading WEIGHT rules already in
|
|
555
|
+
that file are the theme's own — leave them as they are.
|
|
520
556
|
|
|
521
557
|
## Changing the home page
|
|
522
558
|
|
|
@@ -545,6 +581,11 @@ the Assets screen, copy its link there, and paste the link back to you — then
|
|
|
545
581
|
put it in. This is for pictures on pages only — the logo and the favicon are
|
|
546
582
|
never yours to change (see the theme section).
|
|
547
583
|
|
|
584
|
+
A sentence pasted from the Pages screen can carry several pictures, and each
|
|
585
|
+
one says where it goes — \"where it goes: across the top, behind the heading\".
|
|
586
|
+
Put every picture it names on the page, each one where the sentence says. Only
|
|
587
|
+
a picture with nothing said about it is yours to place.
|
|
588
|
+
|
|
548
589
|
You can reuse the built-in forms anywhere on the page you design:
|
|
549
590
|
|
|
550
591
|
\`\`\`tsx
|
package/src/index.css
CHANGED
|
@@ -472,27 +472,33 @@ h3,
|
|
|
472
472
|
|
|
473
473
|
/* The page-title h1 (components/PageTitle.tsx). Fluid on a phone — the
|
|
474
474
|
component shrinks a long title to fit the line and only sets data-fold
|
|
475
|
-
when even the floor size cannot hold it —
|
|
476
|
-
the
|
|
477
|
-
as
|
|
475
|
+
when even the floor size cannot hold it — and 36px is the ceiling at
|
|
476
|
+
every width above that. The old lg step took the title to 48px on a wide
|
|
477
|
+
screen, which read as shouting; a page title stops growing once the line
|
|
478
|
+
is comfortable. No .text-2xl/.text-3xl here on purpose: those classes
|
|
478
479
|
carry weight rules that would fight these sizes — the weight comes from
|
|
479
480
|
the unlayered .page-title rule further up, which pins the h2 weight the
|
|
480
|
-
title has always rendered at.
|
|
481
|
+
title has always rendered at.
|
|
482
|
+
|
|
483
|
+
`!important`, and inside a layer, is the whole point: a page title is
|
|
484
|
+
the app's chrome, not the assistant's to resize, and it kept being
|
|
485
|
+
resized anyway. The consumer's theme.css is unlayered, so an `h1 {
|
|
486
|
+
font-size: 3rem }` written there — with or without !important — beat
|
|
487
|
+
these rules and every page title in the app grew. An important
|
|
488
|
+
declaration inside a layer outranks any unlayered one, so nothing
|
|
489
|
+
written in theme.css can reach the title now. The one thing that still
|
|
490
|
+
can is PageTitle's own shrink-to-fit, which sets the size inline WITH
|
|
491
|
+
priority for exactly this reason. */
|
|
481
492
|
.page-title {
|
|
482
|
-
font-size: clamp(1.5rem, 1.05rem + 1.9vw, 2.25rem);
|
|
483
|
-
line-height: 1.2;
|
|
493
|
+
font-size: clamp(1.5rem, 1.05rem + 1.9vw, 2.25rem) !important;
|
|
494
|
+
line-height: 1.2 !important;
|
|
484
495
|
white-space: nowrap;
|
|
485
496
|
}
|
|
486
497
|
|
|
487
|
-
/* The line
|
|
488
|
-
|
|
489
|
-
did and pushes the route row down with it. */
|
|
498
|
+
/* The line height is the old text-4xl one, not a single ratio: 1.2 at 36px
|
|
499
|
+
stands taller than the title always did and pushes the route row down. */
|
|
490
500
|
@media (min-width: 768px) {
|
|
491
|
-
.page-title { font-size: 2.25rem; line-height: 2.5rem; }
|
|
492
|
-
}
|
|
493
|
-
|
|
494
|
-
@media (min-width: 1024px) {
|
|
495
|
-
.page-title { font-size: 3rem; line-height: 1; }
|
|
501
|
+
.page-title { font-size: 2.25rem !important; line-height: 2.5rem !important; }
|
|
496
502
|
}
|
|
497
503
|
|
|
498
504
|
.page-title[data-fold] {
|