✅ COMPLETED: 1. Dockerfile uses port 80 (astro preview) 2. BaseLayout imports globals.css 3. globals.css with Tailwind v4 @theme syntax 4. index.astro has Header, Footer, FixedContact 5. All image references fixed to existing files 6. Hero uses hdpe_pipe_main.jpg 7. Product cards use hdpe001.jpg 8. pt-20 on main for fixed header ✅ TESTED LOCALLY: - Build: 15 pages in 1.27s - Docker build successful - Port 80 working - Images load - CSS works Ready for Easypanel deployment.
25 lines
1.2 KiB
TypeScript
25 lines
1.2 KiB
TypeScript
import type { AnyColumn, Column } from "./column.cjs";
|
|
import type { SQL } from "./sql/sql.cjs";
|
|
import type { Subquery } from "./subquery.cjs";
|
|
import type { Table } from "./table.cjs";
|
|
export type RequiredKeyOnly<TKey extends string, T extends Column> = T extends AnyColumn<{
|
|
notNull: true;
|
|
hasDefault: false;
|
|
}> ? TKey : never;
|
|
export type OptionalKeyOnly<TKey extends string, T extends Column, OverrideT extends boolean | undefined = false> = TKey extends RequiredKeyOnly<TKey, T> ? never : T extends {
|
|
_: {
|
|
generated: undefined;
|
|
};
|
|
} ? (T extends {
|
|
_: {
|
|
identity: undefined;
|
|
};
|
|
} ? TKey : T['_']['identity'] extends 'always' ? OverrideT extends true ? TKey : never : TKey) : never;
|
|
export type SelectedFieldsFlat<TColumn extends Column> = Record<string, TColumn | SQL | SQL.Aliased | Subquery>;
|
|
export type SelectedFieldsFlatFull<TColumn extends Column> = Record<string, TColumn | SQL | SQL.Aliased>;
|
|
export type SelectedFields<TColumn extends Column, TTable extends Table> = Record<string, SelectedFieldsFlat<TColumn>[string] | TTable | SelectedFieldsFlat<TColumn>>;
|
|
export type SelectedFieldsOrdered<TColumn extends Column> = {
|
|
path: string[];
|
|
field: TColumn | SQL | SQL.Aliased | Subquery;
|
|
}[];
|