@aglyn/plugins-ai 1.0.0-beta.288 → 1.0.0-beta.290
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/package.json +17 -17
- package/src/lib/activity/ai-activity-actions.d.ts +3 -2
- package/src/lib/activity/ai-activity-actions.js +3 -0
- package/src/lib/activity/ai-activity-actions.js.map +1 -1
- package/src/lib/components/ai-job-requests.d.ts +2 -0
- package/src/lib/components/ai-job-requests.js +2 -0
- package/src/lib/components/ai-job-requests.js.map +1 -1
- package/src/lib/components/ai-site-build-page.component.js +4 -0
- package/src/lib/components/ai-site-build-page.component.js.map +1 -1
- package/src/lib/components/ai-site-import-job.component.d.ts +6 -1
- package/src/lib/components/ai-site-import-job.component.js +124 -17
- package/src/lib/components/ai-site-import-job.component.js.map +1 -1
- package/src/lib/components/ai-site-import-start.component.d.ts +6 -0
- package/src/lib/components/ai-site-import-start.component.js +18 -4
- package/src/lib/components/ai-site-import-start.component.js.map +1 -1
- package/src/lib/components/ai-site-start-card.component.js +2 -1
- package/src/lib/components/ai-site-start-card.component.js.map +1 -1
- package/src/lib/jobs/ai-image-reads.d.ts +20 -2
- package/src/lib/jobs/ai-image-reads.js +47 -0
- package/src/lib/jobs/ai-image-reads.js.map +1 -1
- package/src/lib/jobs/ai-job-import-step.d.ts +53 -3
- package/src/lib/jobs/ai-job-import-step.js +386 -64
- package/src/lib/jobs/ai-job-import-step.js.map +1 -1
- package/src/lib/jobs/ai-job-layout-language.d.ts +33 -0
- package/src/lib/jobs/ai-job-layout-language.js +75 -1
- package/src/lib/jobs/ai-job-layout-language.js.map +1 -1
- package/src/lib/jobs/ai-job-layout-step.js +8 -3
- package/src/lib/jobs/ai-job-layout-step.js.map +1 -1
- package/src/lib/jobs/ai-job-page-language.d.ts +29 -0
- package/src/lib/jobs/ai-job-page-language.js +178 -2
- package/src/lib/jobs/ai-job-page-language.js.map +1 -1
- package/src/lib/jobs/ai-job-page-step.js +3 -0
- package/src/lib/jobs/ai-job-page-step.js.map +1 -1
- package/src/lib/jobs/ai-site-import-document.d.ts +117 -0
- package/src/lib/jobs/ai-site-import-document.js +710 -0
- package/src/lib/jobs/ai-site-import-document.js.map +1 -0
- package/src/lib/jobs/ai-site-import-look.d.ts +112 -0
- package/src/lib/jobs/ai-site-import-look.js +402 -0
- package/src/lib/jobs/ai-site-import-look.js.map +1 -0
- package/src/lib/jobs/ai-site-import-publish.d.ts +41 -0
- package/src/lib/jobs/ai-site-import-publish.js +92 -0
- package/src/lib/jobs/ai-site-import-publish.js.map +1 -0
- package/src/lib/jobs/ai-theme-brand-inputs.d.ts +27 -2
- package/src/lib/jobs/ai-theme-brand-inputs.js +37 -8
- package/src/lib/jobs/ai-theme-brand-inputs.js.map +1 -1
- package/src/lib/layout-language/ai-layout-frame.d.ts +17 -0
- package/src/lib/layout-language/ai-layout-frame.js +73 -2
- package/src/lib/layout-language/ai-layout-frame.js.map +1 -1
- package/src/lib/layout-language/ai-layout-language.d.ts +43 -0
- package/src/lib/layout-language/ai-layout-language.js +199 -0
- package/src/lib/layout-language/ai-layout-language.js.map +1 -1
- package/src/lib/model/ai-credit-estimate.d.ts +15 -0
- package/src/lib/model/ai-credit-estimate.js +14 -1
- package/src/lib/model/ai-credit-estimate.js.map +1 -1
- package/src/lib/model/ai-jobs.types.d.ts +13 -1
- package/src/lib/model/ai-jobs.types.js.map +1 -1
- package/src/lib/model/ai-site-import-view.d.ts +47 -3
- package/src/lib/model/ai-site-import-view.js +122 -20
- package/src/lib/model/ai-site-import-view.js.map +1 -1
- package/src/lib/model/ai-site-import.d.ts +232 -7
- package/src/lib/model/ai-site-import.js +365 -35
- package/src/lib/model/ai-site-import.js.map +1 -1
- package/src/lib/runtime/ai-doctrine-validators.d.ts +18 -0
- package/src/lib/runtime/ai-doctrine-validators.js +16 -5
- package/src/lib/runtime/ai-doctrine-validators.js.map +1 -1
- package/src/lib/runtime/ai-palette.generated.js +31 -0
- package/src/lib/runtime/ai-palette.generated.js.map +1 -1
- package/src/lib/server/ai-image-reads-route.js +24 -1
- package/src/lib/server/ai-image-reads-route.js.map +1 -1
- package/src/lib/server/ai-jobs-resume.js +7 -1
- package/src/lib/server/ai-jobs-resume.js.map +1 -1
- package/src/lib/site-import/fixtures/aglyn-com-recordings.d.ts +57 -0
- package/src/lib/site-import/fixtures/aglyn-com-recordings.js +172 -0
- package/src/lib/site-import/fixtures/aglyn-com-recordings.js.map +1 -0
- package/src/lib/site-import/site-import-crawl.d.ts +32 -7
- package/src/lib/site-import/site-import-crawl.js +133 -44
- package/src/lib/site-import/site-import-crawl.js.map +1 -1
- package/src/lib/site-import/site-import-edge-server.d.ts +31 -0
- package/src/lib/site-import/site-import-edge-server.js +31 -0
- package/src/lib/site-import/site-import-edge-server.js.map +1 -0
- package/src/lib/site-import/site-import-edge.d.ts +44 -0
- package/src/lib/site-import/site-import-edge.js +108 -0
- package/src/lib/site-import/site-import-edge.js.map +1 -0
- package/src/lib/site-import/site-import-html.d.ts +73 -3
- package/src/lib/site-import/site-import-html.js +332 -45
- package/src/lib/site-import/site-import-html.js.map +1 -1
- package/src/lib/site-import/site-import-images.d.ts +22 -0
- package/src/lib/site-import/site-import-images.js +78 -2
- package/src/lib/site-import/site-import-images.js.map +1 -1
- package/src/lib/site-import/site-import-page.d.ts +44 -2
- package/src/lib/site-import/site-import-page.js +116 -16
- package/src/lib/site-import/site-import-page.js.map +1 -1
|
@@ -16,9 +16,12 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { type PluginMediaIngest } from '@aglyn/aglyn/plugin-manager/plugin-media-ingest';
|
|
18
18
|
import type { AiJob, AiJobItemLedger } from '../model/ai-jobs.types';
|
|
19
|
-
import { type AiSiteImportLeftOutReason, type AiSiteImportPage, type AiSiteImportPageRead, type AiSiteImportState, type AiSiteImportWave } from '../model/ai-site-import';
|
|
19
|
+
import { type AiSiteImportBuild, type AiSiteImportHome, type AiSiteImportLeftOutReason, type AiSiteImportPage, type AiSiteImportPageRead, type AiSiteImportState, type AiSiteImportWave } from '../model/ai-site-import';
|
|
20
20
|
import { crawlSiteForImport, type SiteImportCrawlSeams, type SiteImportInventory } from '../site-import/site-import-crawl';
|
|
21
21
|
import { type SiteImportPhotosDeps } from '../site-import/site-import-images';
|
|
22
|
+
import { type AiSiteImportDocument } from './ai-site-import-document';
|
|
23
|
+
import { aiRunSiteImportLook, type AiSiteImportLookDeps } from './ai-site-import-look';
|
|
24
|
+
import { aiPublishImportedWave } from './ai-site-import-publish';
|
|
22
25
|
import { fileSiteImportReview } from '../site-import/site-import-review';
|
|
23
26
|
import { type AiJobAdmission } from './ai-job-admission';
|
|
24
27
|
import { readAiScreenRoom } from './ai-job-drafts';
|
|
@@ -91,6 +94,13 @@ export interface AiSiteImportStepDeps {
|
|
|
91
94
|
pageWritten?: typeof aiSitePageWritten;
|
|
92
95
|
mintId?: () => string;
|
|
93
96
|
clock?: () => number;
|
|
97
|
+
/** The first wave's look pass (AGL-4084), and what it reads and writes through. */
|
|
98
|
+
look?: typeof aiRunSiteImportLook;
|
|
99
|
+
lookDeps?: AiSiteImportLookDeps;
|
|
100
|
+
/** A closed wave's pages into the site's preview (AGL-4084). */
|
|
101
|
+
publishWave?: typeof aiPublishImportedWave;
|
|
102
|
+
/** The words a page that came in shows, read off its draft (AGL-4084). */
|
|
103
|
+
draftWords?: (firestore: FirebaseFirestore.Firestore, hostId: string, draftId: string) => Promise<number | null>;
|
|
94
104
|
}
|
|
95
105
|
/** The proved domain an import job is for, or `null`. */
|
|
96
106
|
export declare function aiSiteImportDomainOf(job: Pick<AiJob, 'inputs'>): string | null;
|
|
@@ -100,12 +110,41 @@ export declare function aiSiteImportDomainOf(job: Pick<AiJob, 'inputs'>): string
|
|
|
100
110
|
* seven. A page of a later wave is not linked: it may never be brought in.
|
|
101
111
|
*/
|
|
102
112
|
export declare function aiSiteImportLinkedPages(state: AiSiteImportState, items: readonly AiJobItemLedger[], wave: number): AiLayoutSitePage[];
|
|
103
|
-
/**
|
|
113
|
+
/**
|
|
114
|
+
* How a page is built (AGL-4084): a collection's page, or a long page, is
|
|
115
|
+
* copied as it is; a main page is arranged. The home page is always
|
|
116
|
+
* arranged, however long: it is the site's front door, never a document.
|
|
117
|
+
*/
|
|
118
|
+
export declare function aiSiteImportBuildOf(page: Pick<AiSiteImportPage, 'group' | 'words' | 'slug'>): AiSiteImportBuild;
|
|
119
|
+
/**
|
|
120
|
+
* The name the header and footer carry (AGL-4084): the site's own name where
|
|
121
|
+
* it is the name the person gave Create site but for its case or its
|
|
122
|
+
* punctuation, else the person's.
|
|
123
|
+
*/
|
|
124
|
+
export declare function aiSiteImportBrandName(given: string, own: string): string;
|
|
125
|
+
/** The header and footer's job: a layout of the site's brand, linking the wave's pages, in the layout language. */
|
|
104
126
|
export declare function aiSiteImportFrameJob(job: AiJob, state: AiSiteImportState, wave: AiSiteImportWave, items: readonly AiJobItemLedger[]): AiJob;
|
|
105
|
-
/**
|
|
127
|
+
/** The page brought in, as its page job carries it: its lines, its photos, and the pages its links may go to (AGL-4084). */
|
|
128
|
+
export declare function aiSiteImportDocumentFor(state: AiSiteImportState, page: AiSiteImportPage): AiSiteImportDocument | null;
|
|
129
|
+
/** One page's job: a page job's plan of one screen, its sections the old page's own, its words carried as they are. */
|
|
106
130
|
export declare function aiSiteImportPageJob(job: AiJob, state: AiSiteImportState, page: AiSiteImportPage, items: readonly AiJobItemLedger[]): AiJob;
|
|
131
|
+
/** What the home page says of the site as a whole (AGL-4084), kept for the look, the header and footer and the listing. */
|
|
132
|
+
export declare function aiSiteImportHomeOf(crawled: Pick<SiteImportInventory, 'pages'>): AiSiteImportHome | null;
|
|
107
133
|
/** The least time the import's next pass needs: a read's, a photo pass's, or the time of the step its unit is handed to. */
|
|
108
134
|
export declare function aiSiteImportRunMinimumMs(job: AiJob, runnerFor?: typeof aiJobStepRunnerFor): number;
|
|
135
|
+
/**
|
|
136
|
+
* The state with how each page is built (AGL-4084): from its main region's
|
|
137
|
+
* words as the inventory listed them, and again from a wave's fresh read,
|
|
138
|
+
* which is what the page is built from.
|
|
139
|
+
*/
|
|
140
|
+
export declare function aiSiteImportWithBuilds(state: AiSiteImportState, mainWords?: ReadonlyMap<string, number>): AiSiteImportState;
|
|
141
|
+
/** The words a stored page shows (AGL-4084): its text, its list lines and its buttons. */
|
|
142
|
+
export declare function aiSiteImportShownWords(nodes: Readonly<Record<string, unknown>>): number;
|
|
143
|
+
/**
|
|
144
|
+
* The review a wave that went live in the site's preview parks on (AGL-4084):
|
|
145
|
+
* where its pages are now, who sees them, and the next wave's start.
|
|
146
|
+
*/
|
|
147
|
+
export declare function aiSiteImportPreviewMessage(state: AiSiteImportState, wave: Pick<AiSiteImportWave, 'label'>, published: number): string;
|
|
109
148
|
export declare function createAiJobImportStep(deps?: AiSiteImportStepDeps): AiJobStepRunner;
|
|
110
149
|
/** The home page's menu, as same-site paths in its order. */
|
|
111
150
|
export declare function siteImportMenu(crawled: Pick<SiteImportInventory, 'pages' | 'origins'>): string[];
|
|
@@ -118,6 +157,17 @@ export declare function siteImportWaveReads(asked: readonly AiSiteImportPage[],
|
|
|
118
157
|
/** The read's clock ran out: a page it did not reach is left for the next pass, not left out. */
|
|
119
158
|
cutShort?: boolean;
|
|
120
159
|
}): Map<string, AiSiteImportPageRead | AiSiteImportLeftOutReason>;
|
|
160
|
+
/**
|
|
161
|
+
* "Start every remaining wave" (AGL-4083, wired by AGL-4084), as the resume
|
|
162
|
+
* door writes it onto an import waiting to start its next wave: every
|
|
163
|
+
* remaining wave starts after the one before it closes, with no review
|
|
164
|
+
* between them, and the person's one start is the one the day's limit
|
|
165
|
+
* counts. `null` when the job is not an import waiting for a wave.
|
|
166
|
+
*/
|
|
167
|
+
export declare function aiSiteImportStartAllUpdate(job: Pick<AiJob, 'kind' | 'status' | 'review' | 'siteImport'>): {
|
|
168
|
+
'siteImport.autoContinue': true;
|
|
169
|
+
'siteImport.autoContinueFrom': number;
|
|
170
|
+
} | null;
|
|
121
171
|
export interface AiSiteImportAdmissionDeps {
|
|
122
172
|
releaseFlagOn?: (orgId: string) => Promise<boolean>;
|
|
123
173
|
ownership?: (orgId: string, domain: string) => Promise<AiSiteImportOwnership | null>;
|