@aglyn/plugins-ai 1.0.0-beta.292 → 1.0.0-beta.293

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.
Files changed (149) hide show
  1. package/package.json +17 -17
  2. package/src/lib/components/ai-site-import-job.component.js +5 -4
  3. package/src/lib/components/ai-site-import-job.component.js.map +1 -1
  4. package/src/lib/components/ai-site-import-start.component.js +3 -3
  5. package/src/lib/components/ai-site-import-start.component.js.map +1 -1
  6. package/src/lib/components/ai-site-start-card.component.d.ts +1 -1
  7. package/src/lib/components/ai-site-start-card.component.js +129 -29
  8. package/src/lib/components/ai-site-start-card.component.js.map +1 -1
  9. package/src/lib/components/ai-site-start-steps.component.d.ts +15 -3
  10. package/src/lib/components/ai-site-start-steps.component.js +42 -25
  11. package/src/lib/components/ai-site-start-steps.component.js.map +1 -1
  12. package/src/lib/components/ai-site-style-previews.d.ts +17 -0
  13. package/src/lib/components/ai-site-style-previews.js +26 -95
  14. package/src/lib/components/ai-site-style-previews.js.map +1 -1
  15. package/src/lib/declarations.server.js +22 -0
  16. package/src/lib/declarations.server.js.map +1 -1
  17. package/src/lib/jobs/ai-job-import-step.d.ts +21 -2
  18. package/src/lib/jobs/ai-job-import-step.js +179 -49
  19. package/src/lib/jobs/ai-job-import-step.js.map +1 -1
  20. package/src/lib/jobs/ai-job-layout-language.d.ts +27 -3
  21. package/src/lib/jobs/ai-job-layout-language.js +156 -113
  22. package/src/lib/jobs/ai-job-layout-language.js.map +1 -1
  23. package/src/lib/jobs/ai-job-layout-step.js +56 -17
  24. package/src/lib/jobs/ai-job-layout-step.js.map +1 -1
  25. package/src/lib/jobs/ai-job-page-language.d.ts +25 -15
  26. package/src/lib/jobs/ai-job-page-language.js +120 -66
  27. package/src/lib/jobs/ai-job-page-language.js.map +1 -1
  28. package/src/lib/jobs/ai-job-page-step.js +27 -7
  29. package/src/lib/jobs/ai-job-page-step.js.map +1 -1
  30. package/src/lib/jobs/ai-job-site-datasets.d.ts +12 -4
  31. package/src/lib/jobs/ai-job-site-datasets.js +36 -16
  32. package/src/lib/jobs/ai-job-site-datasets.js.map +1 -1
  33. package/src/lib/jobs/ai-jobs.js +6 -2
  34. package/src/lib/jobs/ai-jobs.js.map +1 -1
  35. package/src/lib/jobs/ai-layout-stock-photos.d.ts +50 -1
  36. package/src/lib/jobs/ai-layout-stock-photos.js +586 -35
  37. package/src/lib/jobs/ai-layout-stock-photos.js.map +1 -1
  38. package/src/lib/jobs/ai-site-import-compile.d.ts +147 -0
  39. package/src/lib/jobs/ai-site-import-compile.js +1143 -0
  40. package/src/lib/jobs/ai-site-import-compile.js.map +1 -0
  41. package/src/lib/jobs/ai-site-import-document.d.ts +9 -36
  42. package/src/lib/jobs/ai-site-import-document.js +23 -489
  43. package/src/lib/jobs/ai-site-import-document.js.map +1 -1
  44. package/src/lib/jobs/ai-site-import-look.d.ts +54 -7
  45. package/src/lib/jobs/ai-site-import-look.js +163 -52
  46. package/src/lib/jobs/ai-site-import-look.js.map +1 -1
  47. package/src/lib/jobs/ai-site-import-publish.d.ts +7 -1
  48. package/src/lib/jobs/ai-site-import-publish.js +19 -5
  49. package/src/lib/jobs/ai-site-import-publish.js.map +1 -1
  50. package/src/lib/jobs/ai-site-late-photos.js +4 -2
  51. package/src/lib/jobs/ai-site-late-photos.js.map +1 -1
  52. package/src/lib/jobs/ai-site-publish.d.ts +10 -1
  53. package/src/lib/jobs/ai-site-publish.js +8 -3
  54. package/src/lib/jobs/ai-site-publish.js.map +1 -1
  55. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.d.ts +23 -0
  56. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.js +677 -0
  57. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.js.map +1 -0
  58. package/src/lib/layout-language/ai-layout-compiler.d.ts +26 -0
  59. package/src/lib/layout-language/ai-layout-compiler.js +677 -33
  60. package/src/lib/layout-language/ai-layout-compiler.js.map +1 -1
  61. package/src/lib/layout-language/ai-layout-frame-hollows.js +5 -1
  62. package/src/lib/layout-language/ai-layout-frame-hollows.js.map +1 -1
  63. package/src/lib/layout-language/ai-layout-frame-source.d.ts +196 -0
  64. package/src/lib/layout-language/ai-layout-frame-source.js +726 -0
  65. package/src/lib/layout-language/ai-layout-frame-source.js.map +1 -0
  66. package/src/lib/layout-language/ai-layout-frame.d.ts +22 -0
  67. package/src/lib/layout-language/ai-layout-frame.js +121 -29
  68. package/src/lib/layout-language/ai-layout-frame.js.map +1 -1
  69. package/src/lib/layout-language/ai-layout-language.d.ts +103 -37
  70. package/src/lib/layout-language/ai-layout-language.js +85 -120
  71. package/src/lib/layout-language/ai-layout-language.js.map +1 -1
  72. package/src/lib/model/ai-credit-estimate.d.ts +11 -7
  73. package/src/lib/model/ai-credit-estimate.js +11 -7
  74. package/src/lib/model/ai-credit-estimate.js.map +1 -1
  75. package/src/lib/model/ai-site-import.d.ts +307 -13
  76. package/src/lib/model/ai-site-import.js +227 -19
  77. package/src/lib/model/ai-site-import.js.map +1 -1
  78. package/src/lib/model/ai-site-look.d.ts +65 -1
  79. package/src/lib/model/ai-site-look.js +141 -23
  80. package/src/lib/model/ai-site-look.js.map +1 -1
  81. package/src/lib/model/ai-site-photos.d.ts +2 -0
  82. package/src/lib/model/ai-site-photos.js.map +1 -1
  83. package/src/lib/model/ai-site-start-steps.d.ts +4 -3
  84. package/src/lib/model/ai-site-start-steps.js +11 -3
  85. package/src/lib/model/ai-site-start-steps.js.map +1 -1
  86. package/src/lib/model/ai-site-start.d.ts +23 -2
  87. package/src/lib/model/ai-site-start.js +25 -3
  88. package/src/lib/model/ai-site-start.js.map +1 -1
  89. package/src/lib/providers/routing.d.ts +11 -0
  90. package/src/lib/providers/routing.js +23 -0
  91. package/src/lib/providers/routing.js.map +1 -1
  92. package/src/lib/runtime/ai-doctrine-validators.d.ts +4 -2
  93. package/src/lib/runtime/ai-doctrine-validators.js +7 -2
  94. package/src/lib/runtime/ai-doctrine-validators.js.map +1 -1
  95. package/src/lib/runtime/ai-icon-library.d.ts +4 -0
  96. package/src/lib/runtime/ai-icon-library.js +4 -0
  97. package/src/lib/runtime/ai-icon-library.js.map +1 -1
  98. package/src/lib/runtime/ai-node-tree.js +5 -1
  99. package/src/lib/runtime/ai-node-tree.js.map +1 -1
  100. package/src/lib/runtime/ai-palette.d.ts +2 -0
  101. package/src/lib/runtime/ai-palette.generated.js +19 -3
  102. package/src/lib/runtime/ai-palette.generated.js.map +1 -1
  103. package/src/lib/runtime/ai-palette.js +2 -1
  104. package/src/lib/runtime/ai-palette.js.map +1 -1
  105. package/src/lib/site-import/fixtures/site-layout-recordings.d.ts +50 -0
  106. package/src/lib/site-import/fixtures/site-layout-recordings.js +86 -0
  107. package/src/lib/site-import/fixtures/site-layout-recordings.js.map +1 -0
  108. package/src/lib/site-import/site-import-crawl.d.ts +18 -1
  109. package/src/lib/site-import/site-import-crawl.js +70 -10
  110. package/src/lib/site-import/site-import-crawl.js.map +1 -1
  111. package/src/lib/site-import/site-import-css.d.ts +110 -0
  112. package/src/lib/site-import/site-import-css.js +826 -0
  113. package/src/lib/site-import/site-import-css.js.map +1 -0
  114. package/src/lib/site-import/site-import-html.d.ts +116 -1
  115. package/src/lib/site-import/site-import-html.js +538 -46
  116. package/src/lib/site-import/site-import-html.js.map +1 -1
  117. package/src/lib/site-import/site-import-layout.d.ts +79 -0
  118. package/src/lib/site-import/site-import-layout.js +1608 -0
  119. package/src/lib/site-import/site-import-layout.js.map +1 -0
  120. package/src/lib/site-import/site-import-nav.d.ts +40 -0
  121. package/src/lib/site-import/site-import-nav.js +437 -0
  122. package/src/lib/site-import/site-import-nav.js.map +1 -0
  123. package/src/lib/site-import/site-import-page.d.ts +8 -1
  124. package/src/lib/site-import/site-import-page.js +24 -2
  125. package/src/lib/site-import/site-import-page.js.map +1 -1
  126. package/src/lib/assets/site-styles/beauty.webp +0 -0
  127. package/src/lib/assets/site-styles/blog.webp +0 -0
  128. package/src/lib/assets/site-styles/business.webp +0 -0
  129. package/src/lib/assets/site-styles/coming-soon.webp +0 -0
  130. package/src/lib/assets/site-styles/education.webp +0 -0
  131. package/src/lib/assets/site-styles/events.webp +0 -0
  132. package/src/lib/assets/site-styles/fitness.webp +0 -0
  133. package/src/lib/assets/site-styles/landing.webp +0 -0
  134. package/src/lib/assets/site-styles/music.webp +0 -0
  135. package/src/lib/assets/site-styles/nonprofit.webp +0 -0
  136. package/src/lib/assets/site-styles/personal.webp +0 -0
  137. package/src/lib/assets/site-styles/photography.webp +0 -0
  138. package/src/lib/assets/site-styles/portfolio.webp +0 -0
  139. package/src/lib/assets/site-styles/professional.webp +0 -0
  140. package/src/lib/assets/site-styles/realestate.webp +0 -0
  141. package/src/lib/assets/site-styles/restaurant.webp +0 -0
  142. package/src/lib/assets/site-styles/store.webp +0 -0
  143. package/src/lib/assets/site-styles/studio.webp +0 -0
  144. package/src/lib/assets/site-styles/trades.webp +0 -0
  145. package/src/lib/assets/site-styles/wellness.webp +0 -0
  146. package/src/lib/assets/site-styles/yoga.webp +0 -0
  147. package/src/lib/site-import/site-import-review.d.ts +0 -40
  148. package/src/lib/site-import/site-import-review.js +0 -149
  149. package/src/lib/site-import/site-import-review.js.map +0 -1
@@ -0,0 +1,147 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Aglyn LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { type AiLayoutCompiledPage, type AiLayoutPagePlan } from '../layout-language/ai-layout-compiler';
18
+ import type { AiLayoutDesign } from '../layout-language/ai-layout-design';
19
+ import { type AiLayoutDesignAnswer, type AiLayoutSection, type AiLayoutSettlement } from '../layout-language/ai-layout-language';
20
+ import type { AiLayoutTargets } from '../layout-language/ai-layout-links';
21
+ import { type SiteImportIconShape, type SiteImportLayout } from '../model/ai-site-import';
22
+ import { type AiSiteImportDocument } from './ai-site-import-document';
23
+ /**
24
+ * The model a page brought in asks its design answer on (AGL-4107): the page
25
+ * step's own tier, balanced, whatever the deployment's default model is — the
26
+ * job's own pick where it is that tier or above.
27
+ */
28
+ export declare function aiImportPageModel(modelFor?: (kind: 'job.page') => string | undefined): string;
29
+ /**
30
+ * Every page the import plans that a page brought in may link (AGL-4107), by
31
+ * the id its draft is written under: a link to one in a wave still to come
32
+ * shows its words until that page is live, then goes there.
33
+ */
34
+ export declare function aiSiteImportLinkablePages(doc: Pick<AiSiteImportDocument, 'links'> | null): Array<{
35
+ id: string;
36
+ label: string;
37
+ slug: string;
38
+ }>;
39
+ /**
40
+ * The listing a page brought in keeps (AGL-4107): its source's own title and
41
+ * description, word for word, never clipped and never rewritten — the 10/29
42
+ * import's Home was retitled "Aglyn: Build a Website with AI, Free to Start".
43
+ * Only a part the source left empty takes what was `written` for it.
44
+ */
45
+ export declare function aiImportedPageListing(screen: {
46
+ seoTitle: string;
47
+ seoDescription: string;
48
+ }, written?: {
49
+ title?: string;
50
+ description?: string;
51
+ }): {
52
+ title: string;
53
+ description: string;
54
+ };
55
+ /** Whether a page brought in still owes a part of its listing: one its source left empty. */
56
+ export declare function aiImportedPageListingOwed(listing: {
57
+ title: string;
58
+ description: string;
59
+ }): boolean;
60
+ /**
61
+ * The layout of a page whose read kept none (AGL-4107): its lines in their
62
+ * sections — the opening, then one at each second-level heading — each line
63
+ * where the source put it, in order.
64
+ */
65
+ export declare function aiSiteImportLayoutOfLines(doc: Pick<AiSiteImportDocument, 'blocks' | 'title'>): SiteImportLayout;
66
+ /** The layout a page is built from: the reader's, else one read from its lines. */
67
+ export declare function aiSiteImportLayoutOf(doc: Pick<AiSiteImportDocument, 'blocks' | 'title' | 'layout'>): SiteImportLayout;
68
+ /**
69
+ * The page's sections by name, in order (AGL-4107): the source's own, as its
70
+ * layout names them — its `aria-label`s, its headings — two of one name told
71
+ * apart, so a link to either finds it. The page's plan has exactly these.
72
+ */
73
+ export declare function aiSiteImportSectionNames(doc: Pick<AiSiteImportDocument, 'blocks' | 'title' | 'layout'>): string[];
74
+ /**
75
+ * A path's drawing moved onto the icon element's 24-unit square (AGL-4107):
76
+ * every coordinate scaled from its viewBox and centered, every relative move
77
+ * scaled alone, an arc's radii scaled and its flags and rotation kept.
78
+ * `null` for anything that is not path data.
79
+ */
80
+ export declare function aiSiteImportPathOn24(d: string, viewBox: string): string | null;
81
+ /**
82
+ * The source's icon as the icon element draws one (AGL-4107): one path on its
83
+ * 24-unit square. A one-path icon is its path, moved onto the square; a small
84
+ * drawing of several filled shapes is their paths together. A drawing made of
85
+ * strokes, or of shapes a transform moves, has no one path, and is left out:
86
+ * an icon is no word of the page.
87
+ */
88
+ export declare function aiSiteImportIconPath(shape: SiteImportIconShape | undefined): string | null;
89
+ export interface AiSiteImportDesigned {
90
+ sections: AiLayoutSection[];
91
+ /** Lines taken into a block, by index of the page's blocks. */
92
+ used: Set<number>;
93
+ /** Pictures the library could not hold. */
94
+ missing: Set<number>;
95
+ settled: AiLayoutSettlement[];
96
+ }
97
+ /**
98
+ * The page's sections in the layout language (AGL-4107): the source's layout,
99
+ * each section in its own band (or the answer's, where the source gave none),
100
+ * its row, its groups and their items, its tables, tabs and pictures, every
101
+ * line taken exactly once and every line the layout placed nowhere added at
102
+ * its section's end.
103
+ */
104
+ export declare function aiSiteImportDesignedSections(doc: AiSiteImportDocument, answer?: AiLayoutDesignAnswer | null, options?: {
105
+ formId?: string | null;
106
+ }): AiSiteImportDesigned;
107
+ export interface AiSiteImportCompileInput {
108
+ doc: AiSiteImportDocument;
109
+ /** The ids the page stores its sections under, in plan order: one for each of the page's sections. */
110
+ sectionIds: readonly string[];
111
+ /** The page's plan: its title and its sections by name. */
112
+ plan: AiLayoutPagePlan;
113
+ targets: AiLayoutTargets;
114
+ /** The site the page belongs to, which its hero is drawn for. */
115
+ design?: AiLayoutDesign | null;
116
+ language?: string;
117
+ /** The page's design answer, for a main page; absent, the page is drawn as its source lays it out. */
118
+ answer?: AiLayoutDesignAnswer | null;
119
+ }
120
+ export interface AiSiteImportCompiled extends Pick<AiLayoutCompiledPage, 'tree' | 'sectionRoots'> {
121
+ sections: AiLayoutSection[];
122
+ /** The lines on the page, by index of its blocks, in source order. */
123
+ placed: number[];
124
+ /** Every line the page has. */
125
+ lines: number;
126
+ /** The words on the page, and the words its lines hold. */
127
+ words: number;
128
+ sourceWords: number;
129
+ /** Set when the page ran past what one page may weigh, and its last sections keep only their names. */
130
+ cut: boolean;
131
+ settled: AiLayoutSettlement[];
132
+ }
133
+ /**
134
+ * The page brought in, built by the site compiler (AGL-4107): every line on
135
+ * it exactly once, every word as its source wrote it, laid out as its source
136
+ * lays it out and drawn in the site's own theme.
137
+ */
138
+ export declare function aiCompileImportedPage(input: AiSiteImportCompileInput): AiSiteImportCompiled;
139
+ /** The most characters of a page's structure a design prompt shows. */
140
+ export declare const AI_SITE_IMPORT_DESIGN_MAX_CHARS = 12000;
141
+ /**
142
+ * The page's structure as its design answer reads it (AGL-4107): each
143
+ * section's name, band, alignment and what it shows, its groups numbered as
144
+ * the answer names them. No word of the page is in it but its sections'
145
+ * names, which are fenced where the prompt shows them.
146
+ */
147
+ export declare function aiSiteImportDesignText(doc: Pick<AiSiteImportDocument, 'blocks' | 'title' | 'layout'>): string;