From 51f208307e56af9e9bc502d6b633bcf240fb9cd6 Mon Sep 17 00:00:00 2001 From: Scott Duncombe Date: Fri, 27 Oct 2023 17:03:01 -0700 Subject: [PATCH] Send pizza module --- src/components.d.ts | 39 ++ src/components/app-root/app-root.scss | 1 + src/components/app-root/app-root.tsx | 4 +- src/components/form-report/form-report.tsx | 349 +++++++----------- src/components/page-home/Deliveries.tsx | 1 - src/components/page-home/page-home.scss | 46 +++ src/components/page-home/page-home.tsx | 14 +- src/components/page-report/page-report.scss | 135 +++++++ src/components/page-report/page-report.tsx | 27 ++ .../page-report/test/page-report.e2e.ts | 11 + src/components/ui-card/ui-card.scss | 3 +- .../ui-location-search/ui-location-search.tsx | 124 +++++++ 12 files changed, 542 insertions(+), 212 deletions(-) create mode 100644 src/components/page-report/page-report.scss create mode 100644 src/components/page-report/page-report.tsx create mode 100644 src/components/page-report/test/page-report.e2e.ts create mode 100644 src/components/ui-location-search/ui-location-search.tsx diff --git a/src/components.d.ts b/src/components.d.ts index f45ff39e..1a5377e4 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -12,6 +12,7 @@ export namespace Components { "location": LocationSegments | undefined; } interface FormReport { + "formattedAddress"?: string; } interface PageAbout { } @@ -37,6 +38,7 @@ export namespace Components { interface PageGuidelines { } interface PageHome { + "history": RouterHistory; } interface PageInstructions { } @@ -48,6 +50,9 @@ export namespace Components { } interface PagePrivacy { } + interface PageReport { + "history"?: RouterHistory; + } interface PageSession { "match": MatchResults; } @@ -81,6 +86,11 @@ export namespace Components { "trucks"?: { coords: google.maps.LatLngLiteral; id: LocationId }[]; "zoom"?: number; } + interface UiLocationSearch { + "error": string | null; + "placeholder": string; + "readOnly": boolean; + } interface UiMainContent { "background": "yellow" | "cyan" | "teal" | "red" | "none"; "fullBleed": boolean; @@ -208,6 +218,12 @@ declare global { prototype: HTMLPagePrivacyElement; new (): HTMLPagePrivacyElement; }; + interface HTMLPageReportElement extends Components.PageReport, HTMLStencilElement { + } + var HTMLPageReportElement: { + prototype: HTMLPageReportElement; + new (): HTMLPageReportElement; + }; interface HTMLPageSessionElement extends Components.PageSession, HTMLStencilElement { } var HTMLPageSessionElement: { @@ -250,6 +266,12 @@ declare global { prototype: HTMLUiGeoMapElement; new (): HTMLUiGeoMapElement; }; + interface HTMLUiLocationSearchElement extends Components.UiLocationSearch, HTMLStencilElement { + } + var HTMLUiLocationSearchElement: { + prototype: HTMLUiLocationSearchElement; + new (): HTMLUiLocationSearchElement; + }; interface HTMLUiMainContentElement extends Components.UiMainContent, HTMLStencilElement { } var HTMLUiMainContentElement: { @@ -298,6 +320,7 @@ declare global { "page-partners": HTMLPagePartnersElement; "page-press": HTMLPagePressElement; "page-privacy": HTMLPagePrivacyElement; + "page-report": HTMLPageReportElement; "page-session": HTMLPageSessionElement; "page-trucks": HTMLPageTrucksElement; "page-vax-and-snacks": HTMLPageVaxAndSnacksElement; @@ -305,6 +328,7 @@ declare global { "ui-card": HTMLUiCardElement; "ui-dynamic-text": HTMLUiDynamicTextElement; "ui-geo-map": HTMLUiGeoMapElement; + "ui-location-search": HTMLUiLocationSearchElement; "ui-main-content": HTMLUiMainContentElement; "ui-modal": HTMLUiModalElement; "ui-pizza-list": HTMLUiPizzaListElement; @@ -317,6 +341,7 @@ declare namespace LocalJSX { "location"?: LocationSegments | undefined; } interface FormReport { + "formattedAddress"?: string; } interface PageAbout { } @@ -342,6 +367,7 @@ declare namespace LocalJSX { interface PageGuidelines { } interface PageHome { + "history": RouterHistory; } interface PageInstructions { } @@ -353,6 +379,9 @@ declare namespace LocalJSX { } interface PagePrivacy { } + interface PageReport { + "history"?: RouterHistory; + } interface PageSession { "match": MatchResults; } @@ -392,6 +421,12 @@ declare namespace LocalJSX { "trucks"?: { coords: google.maps.LatLngLiteral; id: LocationId }[]; "zoom"?: number; } + interface UiLocationSearch { + "error"?: string | null; + "onLocationSelected"?: (event: CustomEvent<{ formattedAddress: string; locationName: string }>) => void; + "placeholder"?: string; + "readOnly"?: boolean; + } interface UiMainContent { "background"?: "yellow" | "cyan" | "teal" | "red" | "none"; "fullBleed"?: boolean; @@ -432,6 +467,7 @@ declare namespace LocalJSX { "page-partners": PagePartners; "page-press": PagePress; "page-privacy": PagePrivacy; + "page-report": PageReport; "page-session": PageSession; "page-trucks": PageTrucks; "page-vax-and-snacks": PageVaxAndSnacks; @@ -439,6 +475,7 @@ declare namespace LocalJSX { "ui-card": UiCard; "ui-dynamic-text": UiDynamicText; "ui-geo-map": UiGeoMap; + "ui-location-search": UiLocationSearch; "ui-main-content": UiMainContent; "ui-modal": UiModal; "ui-pizza-list": UiPizzaList; @@ -467,6 +504,7 @@ declare module "@stencil/core" { "page-partners": LocalJSX.PagePartners & JSXBase.HTMLAttributes; "page-press": LocalJSX.PagePress & JSXBase.HTMLAttributes; "page-privacy": LocalJSX.PagePrivacy & JSXBase.HTMLAttributes; + "page-report": LocalJSX.PageReport & JSXBase.HTMLAttributes; "page-session": LocalJSX.PageSession & JSXBase.HTMLAttributes; "page-trucks": LocalJSX.PageTrucks & JSXBase.HTMLAttributes; "page-vax-and-snacks": LocalJSX.PageVaxAndSnacks & JSXBase.HTMLAttributes; @@ -474,6 +512,7 @@ declare module "@stencil/core" { "ui-card": LocalJSX.UiCard & JSXBase.HTMLAttributes; "ui-dynamic-text": LocalJSX.UiDynamicText & JSXBase.HTMLAttributes; "ui-geo-map": LocalJSX.UiGeoMap & JSXBase.HTMLAttributes; + "ui-location-search": LocalJSX.UiLocationSearch & JSXBase.HTMLAttributes; "ui-main-content": LocalJSX.UiMainContent & JSXBase.HTMLAttributes; "ui-modal": LocalJSX.UiModal & JSXBase.HTMLAttributes; "ui-pizza-list": LocalJSX.UiPizzaList & JSXBase.HTMLAttributes; diff --git a/src/components/app-root/app-root.scss b/src/components/app-root/app-root.scss index 97dc1753..3636ac7d 100644 --- a/src/components/app-root/app-root.scss +++ b/src/components/app-root/app-root.scss @@ -166,6 +166,7 @@ } footer { + margin-top: 16px; background: $light-red; color: $red; diff --git a/src/components/app-root/app-root.tsx b/src/components/app-root/app-root.tsx index 8f814385..15fbda25 100644 --- a/src/components/app-root/app-root.tsx +++ b/src/components/app-root/app-root.tsx @@ -49,7 +49,7 @@ export class AppRoot {