@happyvertical/smrt-planner 0.57.3 → 0.57.5
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/agents/assistant.md +8 -1
- package/agents/cookbook.md +8 -2
- package/app/404.html +21 -21
- package/app/_app/immutable/assets/2.CdEXvRg0.css +1 -0
- package/app/_app/immutable/assets/{feedback.DePeap37.css → feedback.qFktqYFY.css} +1 -1
- package/app/_app/immutable/chunks/{DveAWx7t.js → 5ukUzDcw.js} +1 -1
- package/app/_app/immutable/chunks/{DR_9YSDq.js → BDbFl7UA.js} +1 -1
- package/app/_app/immutable/chunks/{rkUL-DlL.js → BG9Gz_25.js} +25 -25
- package/app/_app/immutable/chunks/{BfPYbnRI.js → Bal1oPZu.js} +1 -1
- package/app/_app/immutable/chunks/BhU_yBI_.js +1 -0
- package/app/_app/immutable/chunks/{CZwkvsZI.js → BiEOJeYb.js} +1 -1
- package/app/_app/immutable/chunks/{DsY7g8iJ.js → Bsn3IIve.js} +3 -3
- package/app/_app/immutable/chunks/{PJY04JNF.js → BybfWt-B.js} +1 -1
- package/app/_app/immutable/chunks/{CF503c7E.js → C1VofLtR.js} +1 -1
- package/app/_app/immutable/chunks/{2l76O8yg.js → C3sRGrYK.js} +1 -1
- package/app/_app/immutable/chunks/{Bz0ybtg3.js → CTlMHIE6.js} +1 -1
- package/app/_app/immutable/chunks/C_3CJO_1.js +1 -0
- package/app/_app/immutable/chunks/Cga8zF3r.js +1 -0
- package/app/_app/immutable/chunks/Cr4byQts.js +24 -0
- package/app/_app/immutable/chunks/{U6_OBRq_.js → CtjBwCj8.js} +1 -1
- package/app/_app/immutable/chunks/CyUSxz1P.js +4 -0
- package/app/_app/immutable/chunks/{BAeyjCL_.js → DTWraE40.js} +1 -1
- package/app/_app/immutable/chunks/{Cfd9dmBM.js → DjJovMrk.js} +1 -1
- package/app/_app/immutable/chunks/{BJKoxDbG.js → DuZeZzOA.js} +1 -1
- package/app/_app/immutable/chunks/{C-DLpfU4.js → J9kOiFLO.js} +1 -1
- package/app/_app/immutable/chunks/NppCG--v.js +1 -0
- package/app/_app/immutable/chunks/{EZsakmZX.js → O8DAZ_le.js} +1 -1
- package/app/_app/immutable/chunks/{Dq8aYheE.js → YGONf0jr.js} +1 -1
- package/app/_app/immutable/chunks/d_dqmeIr.js +1 -0
- package/app/_app/immutable/chunks/{Bb0f-PWY.js → gCpxN2IC.js} +1 -1
- package/app/_app/immutable/chunks/nphy1MQF.js +1 -0
- package/app/_app/immutable/entry/{app.BOdcGXnx.js → app.B4gMiHwR.js} +2 -2
- package/app/_app/immutable/entry/start.BXkBl20Z.js +1 -0
- package/app/_app/immutable/nodes/0.2MYMg80l.js +9 -0
- package/app/_app/immutable/nodes/{1.CULLAAlp.js → 1.DKP901Gn.js} +1 -1
- package/app/_app/immutable/nodes/{10.D3aS_KZl.js → 10.DNN0cVai.js} +1 -1
- package/app/_app/immutable/nodes/{11.C92xaiTE.js → 11.DgbmegX3.js} +1 -1
- package/app/_app/immutable/nodes/{12.D1Lzt56L.js → 12.D5MtnJoE.js} +1 -1
- package/app/_app/immutable/nodes/{13.Bx4rov-F.js → 13._rY66Xa_.js} +1 -1
- package/app/_app/immutable/nodes/{14.CEBy0En2.js → 14.B6TD25VU.js} +1 -1
- package/app/_app/immutable/nodes/2.x9WyxQ1S.js +24 -0
- package/app/_app/immutable/nodes/{3.C8f09BsJ.js → 3.V5uGCpGb.js} +1 -1
- package/app/_app/immutable/nodes/{4.Z1MwZ_rU.js → 4.CCwzLrgu.js} +1 -1
- package/app/_app/immutable/nodes/{5.BnknP-NB.js → 5.CgHzwpns.js} +1 -1
- package/app/_app/immutable/nodes/{6.B0InO4bR.js → 6.CvQHLh_u.js} +1 -1
- package/app/_app/immutable/nodes/{7.CLnj1BGB.js → 7.7EIrly34.js} +1 -1
- package/app/_app/immutable/nodes/{8.BmZYIUmz.js → 8.DyyRBuTw.js} +1 -1
- package/app/_app/immutable/nodes/{9.BKWSHjz-.js → 9.DcURs0gN.js} +1 -1
- package/app/_app/version.json +1 -1
- package/app/advanced-styles/index.html +24 -24
- package/app/ai/index.html +28 -33
- package/app/blueprint/index.html +22 -22
- package/app/cookbook/index.html +22 -22
- package/app/index.html +38 -38
- package/app/m/ads/AdDeliveryTier/index.html +25 -25
- package/app/m/ads/AdEvent/index.html +25 -25
- package/app/m/ads/AdFormat/index.html +25 -25
- package/app/m/ads/AdGroup/index.html +25 -25
- package/app/m/ads/AdVariation/index.html +25 -25
- package/app/m/analytics/AnalyticsDataStream/index.html +25 -25
- package/app/m/analytics/AnalyticsEvent/index.html +25 -25
- package/app/m/analytics/AnalyticsProperty/index.html +25 -25
- package/app/m/analytics/AnalyticsReport/index.html +25 -25
- package/app/m/approvals/ApprovalEvent/index.html +25 -25
- package/app/m/approvals/ApprovalPolicy/index.html +25 -25
- package/app/m/approvals/ApprovalRequest/index.html +25 -25
- package/app/m/assets/Asset/attachments/index.html +26 -26
- package/app/m/assets/Asset/index.html +25 -25
- package/app/m/assets/AssetAssociation/index.html +25 -25
- package/app/m/assets/AssetMetafield/index.html +25 -25
- package/app/m/assets/AssetStatus/index.html +25 -25
- package/app/m/assets/AssetType/index.html +25 -25
- package/app/m/assets/Folder/index.html +25 -25
- package/app/m/chat/AgentSession/index.html +25 -25
- package/app/m/chat/ChatMessage/index.html +25 -25
- package/app/m/chat/ChatParticipant/index.html +25 -25
- package/app/m/chat/ChatReaction/index.html +25 -25
- package/app/m/chat/ChatRoom/index.html +25 -25
- package/app/m/chat/ChatThread/index.html +25 -25
- package/app/m/chat/VoiceGatewayTurn/index.html +25 -25
- package/app/m/chat/VoiceSession/index.html +25 -25
- package/app/m/commerce/Agreement/index.html +25 -25
- package/app/m/commerce/Cart/index.html +25 -25
- package/app/m/commerce/Contract/index.html +25 -25
- package/app/m/commerce/ContractLineItem/index.html +26 -26
- package/app/m/commerce/Customer/index.html +25 -25
- package/app/m/commerce/DocumentTax/index.html +25 -25
- package/app/m/commerce/Estimate/index.html +25 -25
- package/app/m/commerce/Fulfillment/index.html +25 -25
- package/app/m/commerce/FulfillmentLineItem/index.html +25 -25
- package/app/m/commerce/HistoricalCustomerFunds/index.html +89 -0
- package/app/m/commerce/HistoricalCustomerFundsAllocation/index.html +89 -0
- package/app/m/commerce/HistoricalSalesLine/index.html +89 -0
- package/app/m/commerce/Invoice/index.html +25 -25
- package/app/m/commerce/InvoiceLineItem/index.html +25 -25
- package/app/m/commerce/Lease/index.html +25 -25
- package/app/m/commerce/LicenseSale/index.html +25 -25
- package/app/m/commerce/Order/index.html +25 -25
- package/app/m/commerce/Payment/index.html +25 -25
- package/app/m/commerce/PaymentAllocation/index.html +25 -25
- package/app/m/commerce/PaymentInstrument/index.html +25 -25
- package/app/m/commerce/PaymentIntent/index.html +25 -25
- package/app/m/commerce/Payout/index.html +25 -25
- package/app/m/commerce/ProductionOrder/index.html +25 -25
- package/app/m/commerce/PurchaseContract/index.html +25 -25
- package/app/m/commerce/PurchaseOrder/index.html +25 -25
- package/app/m/commerce/SalesContract/index.html +25 -25
- package/app/m/commerce/SupplierQuote/index.html +25 -25
- package/app/m/commerce/TaxCode/index.html +25 -25
- package/app/m/commerce/TaxComponent/index.html +25 -25
- package/app/m/commerce/TaxSettings/index.html +25 -25
- package/app/m/commerce/TaxSummaryReport/index.html +25 -25
- package/app/m/commerce/Vendor/index.html +25 -25
- package/app/m/commerce/WholesaleOrder/index.html +25 -25
- package/app/m/content/Content/index.html +25 -25
- package/app/m/content/ContentContribution/index.html +25 -25
- package/app/m/content/ContentContributionAttachment/index.html +25 -25
- package/app/m/content/ContentContributionRevision/index.html +25 -25
- package/app/m/content/ContentContributionType/index.html +25 -25
- package/app/m/content/ContentContributor/index.html +25 -25
- package/app/m/content/ContentCorrection/index.html +25 -25
- package/app/m/content/ContentFeedSource/index.html +25 -25
- package/app/m/content/ContentGovernanceAssignment/index.html +25 -25
- package/app/m/content/ContentGovernancePolicy/index.html +25 -25
- package/app/m/content/ContentGovernanceProfile/index.html +25 -25
- package/app/m/content/ContentReference/index.html +25 -25
- package/app/m/content/ContentReview/index.html +25 -25
- package/app/m/content/ContentVersion/index.html +25 -25
- package/app/m/events/Event/index.html +25 -25
- package/app/m/events/EventParticipant/index.html +25 -25
- package/app/m/events/EventSeries/index.html +26 -26
- package/app/m/events/EventType/index.html +25 -25
- package/app/m/expenses/Expense/index.html +25 -25
- package/app/m/facts/Fact/index.html +25 -25
- package/app/m/facts/FactContent/index.html +25 -25
- package/app/m/facts/FactEvidence/index.html +25 -25
- package/app/m/facts/FactSource/index.html +25 -25
- package/app/m/facts/FactSubject/index.html +25 -25
- package/app/m/facts/FactTag/index.html +25 -25
- package/app/m/fields/FieldPolicy/index.html +25 -25
- package/app/m/fields/FieldPolicySuggestion/index.html +25 -25
- package/app/m/fields/FieldUsageCounter/index.html +25 -25
- package/app/m/images/Image/index.html +25 -25
- package/app/m/inventory/InventoryLocation/index.html +25 -25
- package/app/m/inventory/StockLevel/index.html +25 -25
- package/app/m/inventory/StockMovement/index.html +25 -25
- package/app/m/ledgers/Account/index.html +25 -25
- package/app/m/ledgers/Journal/index.html +25 -25
- package/app/m/ledgers/JournalEntry/index.html +25 -25
- package/app/m/ledgers/Ledger/index.html +25 -25
- package/app/m/manufacturing/Assembly/index.html +25 -25
- package/app/m/manufacturing/BillOfMaterials/index.html +25 -25
- package/app/m/manufacturing/BomLine/index.html +25 -25
- package/app/m/manufacturing/Operation/index.html +25 -25
- package/app/m/manufacturing/ProductionRun/index.html +25 -25
- package/app/m/manufacturing/ProductionRunCompletion/index.html +25 -25
- package/app/m/manufacturing/RoutingStep/index.html +25 -25
- package/app/m/marketing/Campaign/index.html +25 -25
- package/app/m/marketing/CampaignChannel/index.html +25 -25
- package/app/m/marketing/CampaignMetricSnapshot/index.html +25 -25
- package/app/m/messages/Account/index.html +25 -25
- package/app/m/messages/Attachment/index.html +25 -25
- package/app/m/messages/Blacklist/index.html +25 -25
- package/app/m/messages/Email/failed-sends/index.html +26 -26
- package/app/m/messages/Email/index.html +25 -25
- package/app/m/messages/Email/mailbox/index.html +26 -26
- package/app/m/messages/EmailAccount/index.html +25 -25
- package/app/m/messages/EmailAttachment/index.html +25 -25
- package/app/m/messages/EmailFolder/index.html +25 -25
- package/app/m/messages/Message/index.html +25 -25
- package/app/m/messages/MessagingEndpoint/index.html +25 -25
- package/app/m/messages/PersonaMessageRoute/index.html +25 -25
- package/app/m/messages/SlackAccount/index.html +25 -25
- package/app/m/messages/SlackMessage/index.html +25 -25
- package/app/m/messages/TelegramAccount/index.html +25 -25
- package/app/m/messages/Tweet/index.html +25 -25
- package/app/m/messages/TwitterAccount/index.html +25 -25
- package/app/m/messages/Whitelist/index.html +25 -25
- package/app/m/messages/ZulipAccount/index.html +25 -25
- package/app/m/places/Place/index.html +25 -25
- package/app/m/places/PlaceType/index.html +25 -25
- package/app/m/products/Category/index.html +25 -25
- package/app/m/products/Material/index.html +25 -25
- package/app/m/products/Product/index.html +25 -25
- package/app/m/products/Product/ingredients/index.html +26 -26
- package/app/m/products/ProductVariant/index.html +25 -25
- package/app/m/products/Sku/index.html +25 -25
- package/app/m/profiles/ApiKey/index.html +25 -25
- package/app/m/profiles/Bot/index.html +25 -25
- package/app/m/profiles/MagicLinkToken/index.html +25 -25
- package/app/m/profiles/NostrIdentity/index.html +25 -25
- package/app/m/profiles/OidcIdentity/index.html +25 -25
- package/app/m/profiles/Organization/index.html +25 -25
- package/app/m/profiles/Person/index.html +25 -25
- package/app/m/profiles/Profile/index.html +25 -25
- package/app/m/profiles/ProfileMetadata/index.html +25 -25
- package/app/m/profiles/ProfileMetafield/index.html +25 -25
- package/app/m/profiles/ProfileRelationship/index.html +25 -25
- package/app/m/profiles/ProfileRelationshipTerm/index.html +25 -25
- package/app/m/profiles/ProfileRelationshipType/index.html +25 -25
- package/app/m/profiles/ProfileType/index.html +25 -25
- package/app/m/projects/Comment/index.html +25 -25
- package/app/m/projects/Issue/index.html +25 -25
- package/app/m/projects/Label/index.html +25 -25
- package/app/m/projects/Project/index.html +25 -25
- package/app/m/projects/ProjectIntegration/index.html +25 -25
- package/app/m/projects/PullRequest/index.html +25 -25
- package/app/m/projects/Repository/index.html +25 -25
- package/app/m/properties/Property/index.html +25 -25
- package/app/m/properties/Zone/index.html +25 -25
- package/app/m/reports/RuntimeReport/index.html +25 -25
- package/app/m/reports/SmrtPrincipalReportRefreshTask/index.html +26 -26
- package/app/m/reports/SmrtReportLock/index.html +26 -26
- package/app/m/reports/SmrtReportRefreshTask/index.html +26 -26
- package/app/m/reports/SmrtReportRun/index.html +26 -26
- package/app/m/reports/SmrtReportSchedule/index.html +26 -26
- package/app/m/reports/SmrtReportWatermark/index.html +26 -26
- package/app/m/sales/Agreement/index.html +25 -25
- package/app/m/sales/AttributionException/index.html +25 -25
- package/app/m/sales/AttributionPolicy/index.html +25 -25
- package/app/m/sales/Commission/index.html +25 -25
- package/app/m/sales/CommissionAdjustment/index.html +25 -25
- package/app/m/sales/CommissionPayout/index.html +25 -25
- package/app/m/sales/CommissionPlan/index.html +25 -25
- package/app/m/sales/Earner/index.html +25 -25
- package/app/m/sales/EarnerSourceAttribution/index.html +25 -25
- package/app/m/sales/EarningEvent/index.html +25 -25
- package/app/m/sales/ExecutedAgreement/index.html +25 -25
- package/app/m/sales/Lead/index.html +25 -25
- package/app/m/sales/Opportunity/index.html +25 -25
- package/app/m/sales/OpportunityConversion/index.html +25 -25
- package/app/m/sales/PipelineDefinition/index.html +25 -25
- package/app/m/sales/PipelineStage/index.html +25 -25
- package/app/m/sales/Referral/index.html +25 -25
- package/app/m/sales/ReferralAgreement/index.html +25 -25
- package/app/m/sales/ReferralLink/index.html +25 -25
- package/app/m/sales/ReferralProgram/index.html +25 -25
- package/app/m/sales/ReferralTermSnapshot/index.html +25 -25
- package/app/m/sales/ReferralTouch/index.html +25 -25
- package/app/m/sales/Referrer/index.html +25 -25
- package/app/m/sales/SalesActivity/index.html +25 -25
- package/app/m/sales/SalesRepresentative/index.html +25 -25
- package/app/m/sites/Site/index.html +25 -25
- package/app/m/sites/SiteAgentBinding/index.html +25 -25
- package/app/m/social/OAuthState/index.html +25 -25
- package/app/m/social/SocialAccount/index.html +25 -25
- package/app/m/social/SocialPost/index.html +25 -25
- package/app/m/social/SocialPostAnalyticsSnapshot/index.html +25 -25
- package/app/m/subscriptions/BillingAdjustment/index.html +25 -25
- package/app/m/subscriptions/ClientCharge/index.html +25 -25
- package/app/m/subscriptions/CreditGrant/index.html +25 -25
- package/app/m/subscriptions/PricingRule/index.html +25 -25
- package/app/m/subscriptions/RetailCharge/index.html +25 -25
- package/app/m/subscriptions/SpendingPolicy/index.html +25 -25
- package/app/m/subscriptions/SubscriptionPlan/index.html +25 -25
- package/app/m/subscriptions/TenantSubscription/index.html +25 -25
- package/app/m/subscriptions/TenantUsageMetric/index.html +25 -25
- package/app/m/support/ServiceTimeEntry/index.html +25 -25
- package/app/m/support/SupportAiRun/index.html +25 -25
- package/app/m/support/SupportAvailability/index.html +25 -25
- package/app/m/support/SupportCase/index.html +25 -25
- package/app/m/support/SupportCaseEvent/index.html +25 -25
- package/app/m/support/SupportChannelBinding/index.html +25 -25
- package/app/m/support/SupportCharge/index.html +25 -25
- package/app/m/support/SupportCompensation/index.html +25 -25
- package/app/m/support/SupportCompensationPlan/index.html +25 -25
- package/app/m/support/SupportEscalation/index.html +25 -25
- package/app/m/support/SupportInteraction/index.html +25 -25
- package/app/m/support/SupportPlan/index.html +25 -25
- package/app/m/support/SupportPolicy/index.html +25 -25
- package/app/m/support/SupportQualification/index.html +25 -25
- package/app/m/support/SupportServiceTarget/index.html +25 -25
- package/app/m/support/SupportSpecialist/index.html +25 -25
- package/app/m/support/SupportWorkLink/index.html +25 -25
- package/app/m/tags/Tag/index.html +25 -25
- package/app/m/tags/TagAlias/index.html +25 -25
- package/app/m/timesheets/AttendanceBreak/index.html +25 -25
- package/app/m/timesheets/AttendancePunch/index.html +25 -25
- package/app/m/timesheets/AttendanceSegment/index.html +25 -25
- package/app/m/timesheets/ServiceChargeSnapshot/index.html +25 -25
- package/app/m/timesheets/ServiceCompensationSnapshot/index.html +25 -25
- package/app/m/timesheets/ServiceTimeEntry/index.html +25 -25
- package/app/m/users/Group/index.html +25 -25
- package/app/m/users/GroupMember/index.html +25 -25
- package/app/m/users/GroupRole/index.html +25 -25
- package/app/m/users/Membership/index.html +25 -25
- package/app/m/users/MembershipOverride/index.html +25 -25
- package/app/m/users/Permission/index.html +25 -25
- package/app/m/users/Role/index.html +25 -25
- package/app/m/users/RolePermission/index.html +25 -25
- package/app/m/users/Session/index.html +25 -25
- package/app/m/users/Tenant/index.html +25 -25
- package/app/m/users/TenantIntegration/index.html +25 -25
- package/app/m/users/TenantPermissionOverride/index.html +25 -25
- package/app/m/users/User/index.html +25 -25
- package/app/m/video/Character/index.html +25 -25
- package/app/m/video/CharacterAsset/index.html +25 -25
- package/app/m/video/CompositeJob/index.html +25 -25
- package/app/m/video/Performer/index.html +25 -25
- package/app/m/video/PerformerAsset/index.html +25 -25
- package/app/m/video/Scene/index.html +25 -25
- package/app/m/video/SceneAsset/index.html +25 -25
- package/app/m/video/VideoComposition/index.html +25 -25
- package/app/m/video/VideoCompositionAsset/index.html +25 -25
- package/app/m/video/VideoSequence/index.html +25 -25
- package/app/m/video/VideoSequenceAsset/index.html +25 -25
- package/app/m/video/VideoShot/index.html +25 -25
- package/app/m/video/VideoShotAsset/index.html +25 -25
- package/app/m/video/VideoShotCharacter/index.html +25 -25
- package/app/m/video/VideoWorkflow/index.html +25 -25
- package/app/m/voice/VoiceOutput/index.html +25 -25
- package/app/m/voice/VoiceProfile/index.html +25 -25
- package/app/m/voice/VoiceSample/index.html +25 -25
- package/app/mcp.html +2 -2
- package/app/packages/ads/index.html +24 -24
- package/app/packages/analytics/index.html +24 -24
- package/app/packages/approvals/index.html +24 -24
- package/app/packages/assets/index.html +24 -24
- package/app/packages/chat/index.html +24 -24
- package/app/packages/comments/index.html +24 -24
- package/app/packages/commerce/index.html +25 -25
- package/app/packages/content/index.html +24 -24
- package/app/packages/events/index.html +24 -24
- package/app/packages/expenses/index.html +25 -25
- package/app/packages/facts/index.html +24 -24
- package/app/packages/fields/index.html +24 -24
- package/app/packages/human-resources/index.html +24 -24
- package/app/packages/images/index.html +24 -24
- package/app/packages/index.html +24 -24
- package/app/packages/ingestion/index.html +24 -24
- package/app/packages/inventory/index.html +24 -24
- package/app/packages/ledgers/index.html +24 -24
- package/app/packages/manufacturing/index.html +24 -24
- package/app/packages/marketing/index.html +24 -24
- package/app/packages/messages/index.html +24 -24
- package/app/packages/places/index.html +24 -24
- package/app/packages/preferences/index.html +24 -24
- package/app/packages/products/index.html +24 -24
- package/app/packages/profiles/index.html +24 -24
- package/app/packages/projects/index.html +24 -24
- package/app/packages/properties/index.html +24 -24
- package/app/packages/reports/index.html +24 -24
- package/app/packages/sales/index.html +24 -24
- package/app/packages/sites/index.html +24 -24
- package/app/packages/social/index.html +24 -24
- package/app/packages/subscriptions/index.html +24 -24
- package/app/packages/support/index.html +24 -24
- package/app/packages/tags/index.html +24 -24
- package/app/packages/timesheets/index.html +24 -24
- package/app/packages/users/index.html +24 -24
- package/app/packages/video/index.html +24 -24
- package/app/packages/voice/index.html +24 -24
- package/app/packages/webhooks/index.html +24 -24
- package/app/recipes/account-access/help/index.html +24 -24
- package/app/recipes/account-access/index.html +26 -26
- package/app/recipes/activity/help/index.html +24 -24
- package/app/recipes/activity/index.html +26 -26
- package/app/recipes/agreements/help/index.html +26 -26
- package/app/recipes/agreements/index.html +27 -27
- package/app/recipes/analytics.reports/help/index.html +24 -24
- package/app/recipes/analytics.reports/index.html +26 -26
- package/app/recipes/assets/help/index.html +24 -24
- package/app/recipes/assets/index.html +27 -27
- package/app/recipes/billing/help/index.html +26 -26
- package/app/recipes/billing/index.html +26 -26
- package/app/recipes/chat.assistant/help/index.html +24 -24
- package/app/recipes/chat.assistant/index.html +26 -26
- package/app/recipes/comments/help/index.html +24 -24
- package/app/recipes/comments/index.html +26 -26
- package/app/recipes/commerce.customers/help/index.html +24 -24
- package/app/recipes/commerce.customers/index.html +26 -26
- package/app/recipes/commerce.estimates/help/index.html +26 -26
- package/app/recipes/commerce.estimates/index.html +26 -26
- package/app/recipes/commerce.purchases/help/index.html +26 -26
- package/app/recipes/commerce.purchases/index.html +26 -26
- package/app/recipes/commerce.sales/help/index.html +26 -26
- package/app/recipes/commerce.sales/index.html +26 -26
- package/app/recipes/commerce.vendors/help/index.html +24 -24
- package/app/recipes/commerce.vendors/index.html +26 -26
- package/app/recipes/commerce.wholesale/help/index.html +26 -26
- package/app/recipes/commerce.wholesale/index.html +26 -26
- package/app/recipes/events.calendar/help/index.html +24 -24
- package/app/recipes/events.calendar/index.html +26 -26
- package/app/recipes/expenses.tracking/help/index.html +26 -26
- package/app/recipes/expenses.tracking/index.html +26 -26
- package/app/recipes/fields.form-customization/help/index.html +24 -24
- package/app/recipes/fields.form-customization/index.html +26 -26
- package/app/recipes/ingestion/help/index.html +24 -24
- package/app/recipes/ingestion/index.html +26 -26
- package/app/recipes/integrations/help/index.html +24 -24
- package/app/recipes/integrations/index.html +26 -26
- package/app/recipes/inventory.stock/help/index.html +24 -24
- package/app/recipes/inventory.stock/index.html +26 -26
- package/app/recipes/ledgers.bookkeeping/help/index.html +24 -24
- package/app/recipes/ledgers.bookkeeping/index.html +26 -26
- package/app/recipes/messages/help/index.html +24 -24
- package/app/recipes/messages/index.html +26 -26
- package/app/recipes/products/help/index.html +24 -24
- package/app/recipes/products/index.html +26 -26
- package/app/recipes/projects.tracker/help/index.html +24 -24
- package/app/recipes/projects.tracker/index.html +27 -27
- package/app/recipes/reports.materialized/help/index.html +26 -26
- package/app/recipes/reports.materialized/index.html +29 -29
- package/app/recipes/reports.runtime/help/index.html +24 -24
- package/app/recipes/reports.runtime/index.html +27 -27
- package/app/recipes/sales.pipeline/help/index.html +24 -24
- package/app/recipes/sales.pipeline/index.html +26 -26
- package/app/recipes/tags.taxonomy/help/index.html +24 -24
- package/app/recipes/tags.taxonomy/index.html +26 -26
- package/app/recipes/team-collaboration/help/index.html +24 -24
- package/app/recipes/team-collaboration/index.html +26 -26
- package/app/recipes/timesheets.time-entries/help/index.html +24 -24
- package/app/recipes/timesheets.time-entries/index.html +26 -26
- package/app/s/custom-accounts/index.html +22 -22
- package/app/s/custom-appointments/index.html +22 -22
- package/app/s/custom-billing/index.html +22 -22
- package/app/s/custom-buying/index.html +22 -22
- package/app/s/custom-checkout/index.html +22 -22
- package/app/s/custom-classes/index.html +22 -22
- package/app/s/custom-clients/index.html +22 -22
- package/app/s/custom-events/index.html +22 -22
- package/app/s/custom-fleet/index.html +22 -22
- package/app/s/custom-giving/index.html +22 -22
- package/app/s/custom-jobs/index.html +22 -22
- package/app/s/custom-kitchen/index.html +22 -22
- package/app/s/custom-material/index.html +22 -22
- package/app/s/custom-meetings/index.html +22 -22
- package/app/s/custom-members/index.html +22 -22
- package/app/s/custom-paint/index.html +82 -0
- package/app/s/custom-parts/index.html +22 -22
- package/app/s/custom-rentals/index.html +22 -22
- package/app/s/custom-roastery/index.html +22 -22
- package/app/s/custom-schedule/index.html +22 -22
- package/app/s/custom-shelf/index.html +22 -22
- package/app/s/custom-shop/index.html +22 -22
- package/app/s/custom-wholesale/index.html +22 -22
- package/app/s/custom-work/index.html +22 -22
- package/app/s/custom-yard/index.html +22 -22
- package/app/s/section-access-control/index.html +22 -22
- package/app/s/section-account-security/index.html +22 -22
- package/app/s/section-accounting/index.html +22 -22
- package/app/s/section-activity/index.html +22 -22
- package/app/s/section-agreements/index.html +22 -22
- package/app/s/section-analytics/index.html +22 -22
- package/app/s/section-assets/index.html +22 -22
- package/app/s/section-billing/index.html +22 -22
- package/app/s/section-calendar/index.html +22 -22
- package/app/s/section-catalog/index.html +22 -22
- package/app/s/section-chat.assistant/index.html +22 -22
- package/app/s/section-comments/index.html +22 -22
- package/app/s/section-fields.form-customization/index.html +22 -22
- package/app/s/section-ingestion/index.html +22 -22
- package/app/s/section-integrations/index.html +22 -22
- package/app/s/section-messages/index.html +22 -22
- package/app/s/section-more/index.html +22 -22
- package/app/s/section-operations/index.html +22 -22
- package/app/s/section-projects/index.html +22 -22
- package/app/s/section-purchasing/index.html +22 -22
- package/app/s/section-reports.materialized/index.html +22 -22
- package/app/s/section-reports.runtime/index.html +22 -22
- package/app/s/section-sales/index.html +22 -22
- package/app/s/section-taxonomy/index.html +22 -22
- package/app/s/section-team/index.html +22 -22
- package/app/s/section-work/index.html +22 -22
- package/dist/ai/instance.d.ts.map +1 -1
- package/dist/ai/instance.js +9 -1
- package/dist/assistant/change.d.ts +13 -3
- package/dist/assistant/change.d.ts.map +1 -1
- package/dist/assistant/change.js +18 -3
- package/dist/assistant/prompt.d.ts +6 -1
- package/dist/assistant/prompt.d.ts.map +1 -1
- package/dist/assistant/prompt.js +13 -1
- package/dist/assistant/session.svelte.d.ts +5 -0
- package/dist/assistant/session.svelte.d.ts.map +1 -1
- package/dist/assistant/session.svelte.js +1 -0
- package/dist/assistant/transport.d.ts +24 -1
- package/dist/assistant/transport.d.ts.map +1 -1
- package/dist/assistant/transport.js +57 -8
- package/dist/catalog/catalog.json +1366 -51
- package/dist/components/BrowserAssistant.svelte +0 -2
- package/dist/components/BrowserAssistant.svelte.d.ts.map +1 -1
- package/dist/components/CookbooksPanel.svelte +101 -21
- package/dist/components/CookbooksPanel.svelte.d.ts.map +1 -1
- package/dist/data/format.d.ts.map +1 -1
- package/dist/data/format.js +3 -0
- package/dist/data/money.d.ts +1 -1
- package/dist/data/money.js +2 -2
- package/dist/data/packs.d.ts +0 -1
- package/dist/data/packs.d.ts.map +1 -1
- package/dist/data/packs.js +835 -1
- package/dist/library/apply.d.ts +7 -3
- package/dist/library/apply.d.ts.map +1 -1
- package/dist/library/apply.js +19 -6
- package/dist/library/document.d.ts +9 -0
- package/dist/library/document.d.ts.map +1 -1
- package/dist/library/document.js +29 -0
- package/dist/library/icons.d.ts.map +1 -1
- package/dist/library/icons.js +15 -0
- package/dist/library/index.d.ts +4 -1
- package/dist/library/index.d.ts.map +1 -1
- package/dist/library/index.js +9 -2
- package/dist/library/library.json +919 -14
- package/dist/library/state.svelte.d.ts +5 -1
- package/dist/library/state.svelte.d.ts.map +1 -1
- package/dist/library/state.svelte.js +12 -1
- package/dist/library/view.svelte.d.ts +41 -0
- package/dist/library/view.svelte.d.ts.map +1 -0
- package/dist/library/view.svelte.js +67 -0
- package/dist/planner/Planner.svelte +79 -2
- package/dist/planner/Planner.svelte.d.ts.map +1 -1
- package/dist/planner/PlannerControls.svelte +21 -2
- package/dist/planner/PlannerControls.svelte.d.ts.map +1 -1
- package/dist/planner/assistant.d.ts.map +1 -1
- package/dist/planner/assistant.js +9 -0
- package/dist/planner/commands/adapter.d.ts.map +1 -1
- package/dist/planner/commands/adapter.js +10 -3
- package/dist/planner/commands/controller.svelte.d.ts.map +1 -1
- package/dist/planner/commands/controller.svelte.js +2 -1
- package/dist/recipes/scope.d.ts +23 -0
- package/dist/recipes/scope.d.ts.map +1 -1
- package/dist/recipes/scope.js +20 -0
- package/dist/smrt-version.d.ts +1 -1
- package/dist/smrt-version.js +1 -1
- package/package.json +56 -56
- package/app/_app/immutable/assets/2.Djk1H2wk.css +0 -1
- package/app/_app/immutable/chunks/BV_A2GBw.js +0 -24
- package/app/_app/immutable/chunks/CbCYY1ps.js +0 -1
- package/app/_app/immutable/chunks/DD4mX3od.js +0 -1
- package/app/_app/immutable/chunks/DgkBKeKW.js +0 -4
- package/app/_app/immutable/chunks/DvUWb_GS.js +0 -1
- package/app/_app/immutable/chunks/M81UeXT1.js +0 -1
- package/app/_app/immutable/chunks/g7M7feZg.js +0 -1
- package/app/_app/immutable/chunks/r7IFcw-O.js +0 -1
- package/app/_app/immutable/entry/start.BixveMT0.js +0 -1
- package/app/_app/immutable/nodes/0._WFh95JB.js +0 -9
- package/app/_app/immutable/nodes/2.D3Lg90Nn.js +0 -24
- /package/app/_app/immutable/chunks/{DVQPWAnI.js → Bv5jGtB8.js} +0 -0
package/dist/data/packs.js
CHANGED
|
@@ -1218,7 +1218,7 @@ const SALON = {
|
|
|
1218
1218
|
};
|
|
1219
1219
|
const ROASTER = {
|
|
1220
1220
|
id: 'roaster',
|
|
1221
|
-
taxRate: 0,
|
|
1221
|
+
taxRate: 0.0725,
|
|
1222
1222
|
products: [
|
|
1223
1223
|
{
|
|
1224
1224
|
name: 'House espresso, 12 oz',
|
|
@@ -2002,6 +2002,836 @@ const AGENCY = {
|
|
|
2002
2002
|
},
|
|
2003
2003
|
};
|
|
2004
2004
|
/** The packs that ship with cookbooks, by cookbook id. */
|
|
2005
|
+
const PLUMBER = {
|
|
2006
|
+
id: 'plumber',
|
|
2007
|
+
taxRate: 0.07,
|
|
2008
|
+
products: [
|
|
2009
|
+
{
|
|
2010
|
+
name: 'Quarter-turn ball valve, 1/2"',
|
|
2011
|
+
description: 'Brass, lead-free, sweat ends.',
|
|
2012
|
+
price: 1850,
|
|
2013
|
+
category: 'Valves',
|
|
2014
|
+
productType: 'product',
|
|
2015
|
+
},
|
|
2016
|
+
{
|
|
2017
|
+
name: 'PEX-A pipe, 1/2" x 100 ft',
|
|
2018
|
+
description: 'Red coil for hot-water runs.',
|
|
2019
|
+
price: 6900,
|
|
2020
|
+
category: 'Pipe',
|
|
2021
|
+
productType: 'product',
|
|
2022
|
+
},
|
|
2023
|
+
{
|
|
2024
|
+
name: 'Toilet fill valve',
|
|
2025
|
+
description: 'Universal, adjustable height.',
|
|
2026
|
+
price: 2400,
|
|
2027
|
+
category: 'Fixtures',
|
|
2028
|
+
productType: 'product',
|
|
2029
|
+
},
|
|
2030
|
+
{
|
|
2031
|
+
name: 'Wax ring with flange bolts',
|
|
2032
|
+
description: 'Reinforced ring for a toilet reset.',
|
|
2033
|
+
price: 900,
|
|
2034
|
+
category: 'Fixtures',
|
|
2035
|
+
productType: 'product',
|
|
2036
|
+
},
|
|
2037
|
+
{
|
|
2038
|
+
name: 'Water heater anode rod',
|
|
2039
|
+
description: 'Magnesium rod, 44 in.',
|
|
2040
|
+
price: 4200,
|
|
2041
|
+
category: 'Water heaters',
|
|
2042
|
+
productType: 'product',
|
|
2043
|
+
},
|
|
2044
|
+
{
|
|
2045
|
+
name: 'Kitchen faucet, pull-down',
|
|
2046
|
+
description: 'Single handle, brushed nickel.',
|
|
2047
|
+
price: 18900,
|
|
2048
|
+
category: 'Fixtures',
|
|
2049
|
+
productType: 'product',
|
|
2050
|
+
},
|
|
2051
|
+
{
|
|
2052
|
+
name: 'P-trap kit, 1-1/2"',
|
|
2053
|
+
description: 'PVC trap with slip nuts.',
|
|
2054
|
+
price: 1300,
|
|
2055
|
+
category: 'Drainage',
|
|
2056
|
+
productType: 'product',
|
|
2057
|
+
},
|
|
2058
|
+
{
|
|
2059
|
+
name: 'Tank water heater, 50 gal',
|
|
2060
|
+
description: 'Gas, 40,000 BTU, 6-year warranty.',
|
|
2061
|
+
price: 98900,
|
|
2062
|
+
category: 'Water heaters',
|
|
2063
|
+
productType: 'product',
|
|
2064
|
+
},
|
|
2065
|
+
],
|
|
2066
|
+
lines: [
|
|
2067
|
+
{
|
|
2068
|
+
description: 'Service call and first hour',
|
|
2069
|
+
price: 14500,
|
|
2070
|
+
quantity: [1, 1],
|
|
2071
|
+
},
|
|
2072
|
+
{
|
|
2073
|
+
description: 'Labour, per additional hour',
|
|
2074
|
+
price: 9800,
|
|
2075
|
+
quantity: [1, 4],
|
|
2076
|
+
},
|
|
2077
|
+
{
|
|
2078
|
+
description: 'Emergency call-out surcharge',
|
|
2079
|
+
price: 12500,
|
|
2080
|
+
quantity: [1, 1],
|
|
2081
|
+
},
|
|
2082
|
+
{
|
|
2083
|
+
description: 'Drain clearing with auger',
|
|
2084
|
+
price: 19500,
|
|
2085
|
+
quantity: [1, 2],
|
|
2086
|
+
},
|
|
2087
|
+
{
|
|
2088
|
+
description: 'Camera inspection of sewer line',
|
|
2089
|
+
price: 27500,
|
|
2090
|
+
quantity: [1, 1],
|
|
2091
|
+
},
|
|
2092
|
+
{ description: 'Ball valve, 1/2"', price: 1850, quantity: [1, 6] },
|
|
2093
|
+
{ description: 'Water heater install', price: 65000, quantity: [1, 1] },
|
|
2094
|
+
{ description: 'Toilet rebuild kit', price: 3900, quantity: [1, 2] },
|
|
2095
|
+
],
|
|
2096
|
+
customers: [
|
|
2097
|
+
'Priya Raman',
|
|
2098
|
+
'Walt Kowalski',
|
|
2099
|
+
'Elena Duarte',
|
|
2100
|
+
'Marcus Bell',
|
|
2101
|
+
'Joanne Fitch',
|
|
2102
|
+
'Harbor View Apartments',
|
|
2103
|
+
'Maple Street Dental',
|
|
2104
|
+
'Corner Bistro on 5th',
|
|
2105
|
+
],
|
|
2106
|
+
vendors: [
|
|
2107
|
+
'Copperline Plumbing Supply',
|
|
2108
|
+
'Metro Pipe & Valve',
|
|
2109
|
+
'Brightwater Heater Distributors',
|
|
2110
|
+
'Drainworks Tool Rental',
|
|
2111
|
+
'Allied Fixture Wholesale',
|
|
2112
|
+
],
|
|
2113
|
+
notes: [
|
|
2114
|
+
'Shut-off is in the crawlspace by the furnace.',
|
|
2115
|
+
'Emergency: water coming through the ceiling.',
|
|
2116
|
+
'Tenant will let us in; call the property manager first.',
|
|
2117
|
+
'Quoted replacing the whole trap, not just the washer.',
|
|
2118
|
+
'Old water heater to be hauled away.',
|
|
2119
|
+
],
|
|
2120
|
+
terms: ['Due on completion', 'Net 15', 'Net 30'],
|
|
2121
|
+
customerNotes: [
|
|
2122
|
+
'Dog in the backyard; use the front door.',
|
|
2123
|
+
'Property manager approves anything over $500.',
|
|
2124
|
+
'Prefers a text when we are on the way.',
|
|
2125
|
+
'Restaurant: no work during the lunch rush.',
|
|
2126
|
+
'Water heater is under warranty until next spring.',
|
|
2127
|
+
],
|
|
2128
|
+
vendorNotes: [
|
|
2129
|
+
'Will-call counter opens at 6:30 a.m.',
|
|
2130
|
+
'Water heaters delivered next day; haul-away extra.',
|
|
2131
|
+
'Trade account; show the card at pickup.',
|
|
2132
|
+
'Rentals are due back by 5 p.m.',
|
|
2133
|
+
'Special-order fixtures take a week.',
|
|
2134
|
+
],
|
|
2135
|
+
instructors: ['Dave Ortiz', 'Shauna Riley', 'Ken Ito'],
|
|
2136
|
+
descriptions: {
|
|
2137
|
+
Event: [
|
|
2138
|
+
'Stop the leak, find the source and make it good.',
|
|
2139
|
+
'Clear the line and check it with the camera.',
|
|
2140
|
+
'Swap the old tank, test the relief valve and haul it away.',
|
|
2141
|
+
'Rebuild the flush, check the flange and reset if needed.',
|
|
2142
|
+
'Walk through the job and price it on the spot.',
|
|
2143
|
+
'Stop the leak, find the source and make it good.',
|
|
2144
|
+
'Clear the line and check it with the camera.',
|
|
2145
|
+
'Swap the old tank, test the relief valve and haul it away.',
|
|
2146
|
+
],
|
|
2147
|
+
EventType: [
|
|
2148
|
+
'A leaking pipe, valve or fitting.',
|
|
2149
|
+
'A slow or blocked drain or sewer line.',
|
|
2150
|
+
'Install or replace a water heater.',
|
|
2151
|
+
'Repair or replace a toilet.',
|
|
2152
|
+
'A visit to price bigger work.',
|
|
2153
|
+
'A yearly service under a plan.',
|
|
2154
|
+
'An after-hours emergency.',
|
|
2155
|
+
'Anything else the shop agrees to take on.',
|
|
2156
|
+
],
|
|
2157
|
+
EventSeries: [
|
|
2158
|
+
'Yearly flush and anode check under a service plan.',
|
|
2159
|
+
'Grease trap and drain jetting for restaurants.',
|
|
2160
|
+
'Common-area checks for a building.',
|
|
2161
|
+
'Draining and blowing out lines before winter.',
|
|
2162
|
+
'Install visits for a builder.',
|
|
2163
|
+
],
|
|
2164
|
+
Place: [
|
|
2165
|
+
'Van with the drain machine and camera.',
|
|
2166
|
+
'Second service van.',
|
|
2167
|
+
'Shop and parts store.',
|
|
2168
|
+
'Big-ticket stock: heaters and fixtures.',
|
|
2169
|
+
'Where customers pick up parts.',
|
|
2170
|
+
],
|
|
2171
|
+
},
|
|
2172
|
+
lineQuantity: [1, 3],
|
|
2173
|
+
eventNames: [
|
|
2174
|
+
'Leak repair',
|
|
2175
|
+
'Drain clearing',
|
|
2176
|
+
'Water heater swap',
|
|
2177
|
+
'Toilet repair',
|
|
2178
|
+
'Estimate visit',
|
|
2179
|
+
'Leak repair',
|
|
2180
|
+
'Drain clearing',
|
|
2181
|
+
'Water heater swap',
|
|
2182
|
+
],
|
|
2183
|
+
eventTypes: [
|
|
2184
|
+
'Leak repair',
|
|
2185
|
+
'Drain clearing',
|
|
2186
|
+
'Water heater',
|
|
2187
|
+
'Toilet repair',
|
|
2188
|
+
'Estimate',
|
|
2189
|
+
'Plan service',
|
|
2190
|
+
'Emergency',
|
|
2191
|
+
'Other',
|
|
2192
|
+
],
|
|
2193
|
+
seriesNames: [
|
|
2194
|
+
'Water heater service plans',
|
|
2195
|
+
'Restaurant drain program',
|
|
2196
|
+
'Building maintenance',
|
|
2197
|
+
'Winterizing',
|
|
2198
|
+
'New-build rough-ins',
|
|
2199
|
+
],
|
|
2200
|
+
placeNames: ['Van 1', 'Van 2', 'Shop', 'Warehouse bay', 'Parts counter'],
|
|
2201
|
+
placeTypes: ['Van', 'Shop', 'Warehouse', 'Counter'],
|
|
2202
|
+
locations: [
|
|
2203
|
+
{ code: 'SHOP', name: 'Shop stock', kind: 'warehouse' },
|
|
2204
|
+
{ code: 'VAN1', name: 'Van 1', kind: 'vehicle' },
|
|
2205
|
+
{ code: 'VAN2', name: 'Van 2', kind: 'vehicle' },
|
|
2206
|
+
],
|
|
2207
|
+
weights: {
|
|
2208
|
+
'Order.status': { completed: 6, accepted: 3, sent: 1, draft: 1 },
|
|
2209
|
+
'Estimate.status': { sent: 3, accepted: 3, declined: 1, draft: 1 },
|
|
2210
|
+
'Agreement.status': { accepted: 6, sent: 1, completed: 2, cancelled: 1 },
|
|
2211
|
+
'Event.status': { scheduled: 5, completed: 4, cancelled: 1 },
|
|
2212
|
+
// Homeowners, with a few landlords and businesses.
|
|
2213
|
+
'Customer.customerType': { retail: 5, wholesale: 3 },
|
|
2214
|
+
},
|
|
2215
|
+
};
|
|
2216
|
+
const ELECTRICIAN = {
|
|
2217
|
+
id: 'electrician',
|
|
2218
|
+
taxRate: 0.0625,
|
|
2219
|
+
products: [
|
|
2220
|
+
{
|
|
2221
|
+
name: 'NM-B cable, 12/2, 250 ft',
|
|
2222
|
+
description: 'Copper building wire with ground.',
|
|
2223
|
+
price: 15900,
|
|
2224
|
+
category: 'Wire',
|
|
2225
|
+
productType: 'product',
|
|
2226
|
+
},
|
|
2227
|
+
{
|
|
2228
|
+
name: '20 A single-pole breaker',
|
|
2229
|
+
description: 'Plug-on breaker for most panels.',
|
|
2230
|
+
price: 1200,
|
|
2231
|
+
category: 'Breakers',
|
|
2232
|
+
productType: 'product',
|
|
2233
|
+
},
|
|
2234
|
+
{
|
|
2235
|
+
name: 'GFCI receptacle, 20 A',
|
|
2236
|
+
description: 'Tamper-resistant, self-testing.',
|
|
2237
|
+
price: 2600,
|
|
2238
|
+
category: 'Devices',
|
|
2239
|
+
productType: 'product',
|
|
2240
|
+
},
|
|
2241
|
+
{
|
|
2242
|
+
name: 'LED wafer light, 6"',
|
|
2243
|
+
description: 'Canless, 3000 K, dimmable.',
|
|
2244
|
+
price: 2200,
|
|
2245
|
+
category: 'Lighting',
|
|
2246
|
+
productType: 'product',
|
|
2247
|
+
},
|
|
2248
|
+
{
|
|
2249
|
+
name: '200 A main breaker panel',
|
|
2250
|
+
description: '40-space load center with main.',
|
|
2251
|
+
price: 42500,
|
|
2252
|
+
category: 'Panels',
|
|
2253
|
+
productType: 'product',
|
|
2254
|
+
},
|
|
2255
|
+
{
|
|
2256
|
+
name: 'Level 2 EV charger, 48 A',
|
|
2257
|
+
description: 'Hardwired, Wi-Fi, 25 ft cable.',
|
|
2258
|
+
price: 64900,
|
|
2259
|
+
category: 'EV charging',
|
|
2260
|
+
productType: 'product',
|
|
2261
|
+
},
|
|
2262
|
+
{
|
|
2263
|
+
name: 'Smoke and CO alarm',
|
|
2264
|
+
description: 'Hardwired with battery backup.',
|
|
2265
|
+
price: 4800,
|
|
2266
|
+
category: 'Safety',
|
|
2267
|
+
productType: 'product',
|
|
2268
|
+
},
|
|
2269
|
+
{
|
|
2270
|
+
name: 'EMT conduit, 3/4" x 10 ft',
|
|
2271
|
+
description: 'Galvanized steel, sold per stick.',
|
|
2272
|
+
price: 950,
|
|
2273
|
+
category: 'Conduit',
|
|
2274
|
+
productType: 'product',
|
|
2275
|
+
},
|
|
2276
|
+
],
|
|
2277
|
+
lines: [
|
|
2278
|
+
{ description: 'Electrician, per hour', price: 11500, quantity: [2, 8] },
|
|
2279
|
+
{ description: 'Apprentice, per hour', price: 6500, quantity: [2, 8] },
|
|
2280
|
+
{ description: 'Panel upgrade to 200 A', price: 285000, quantity: [1, 1] },
|
|
2281
|
+
{ description: 'EV charger install', price: 95000, quantity: [1, 1] },
|
|
2282
|
+
{
|
|
2283
|
+
description: 'Fault finding, first hour',
|
|
2284
|
+
price: 15500,
|
|
2285
|
+
quantity: [1, 1],
|
|
2286
|
+
},
|
|
2287
|
+
{ description: 'GFCI receptacle', price: 2600, quantity: [1, 6] },
|
|
2288
|
+
{
|
|
2289
|
+
description: 'Recessed light, installed',
|
|
2290
|
+
price: 14500,
|
|
2291
|
+
quantity: [2, 8],
|
|
2292
|
+
},
|
|
2293
|
+
{
|
|
2294
|
+
description: 'Permit and inspection fee',
|
|
2295
|
+
price: 22500,
|
|
2296
|
+
quantity: [1, 1],
|
|
2297
|
+
},
|
|
2298
|
+
],
|
|
2299
|
+
customers: [
|
|
2300
|
+
'Arjun Mehta',
|
|
2301
|
+
'Colleen Murphy',
|
|
2302
|
+
'Darnell Price',
|
|
2303
|
+
'Ingrid Larsen',
|
|
2304
|
+
'Victor Huang',
|
|
2305
|
+
'Summit Ridge Homes',
|
|
2306
|
+
'Lakeside Self Storage',
|
|
2307
|
+
'Northgate Community Church',
|
|
2308
|
+
],
|
|
2309
|
+
vendors: [
|
|
2310
|
+
'Voltline Electrical Supply',
|
|
2311
|
+
'Keystone Wire & Cable',
|
|
2312
|
+
'Lumen Lighting Distributors',
|
|
2313
|
+
'ChargePoint Partners Wholesale',
|
|
2314
|
+
'City Permit Expediters',
|
|
2315
|
+
],
|
|
2316
|
+
notes: [
|
|
2317
|
+
'Panel is full; quote included a sub-panel.',
|
|
2318
|
+
'Inspection booked; rough-in must be open.',
|
|
2319
|
+
'Breaker trips when the dryer and microwave run together.',
|
|
2320
|
+
'Customer supplied the light fixtures.',
|
|
2321
|
+
'Utility disconnect scheduled for the morning.',
|
|
2322
|
+
],
|
|
2323
|
+
terms: ['Net 15', 'Due on completion', 'Net 30'],
|
|
2324
|
+
customerNotes: [
|
|
2325
|
+
'Builder account; invoice per lot.',
|
|
2326
|
+
'Facility manager needs 48 hours notice of any shutdown.',
|
|
2327
|
+
'Older house: knob-and-tube in the attic.',
|
|
2328
|
+
'Wants an EV charger in the garage next year.',
|
|
2329
|
+
'Gate code is in the work order.',
|
|
2330
|
+
],
|
|
2331
|
+
vendorNotes: [
|
|
2332
|
+
'Copper price changes weekly; confirm on order.',
|
|
2333
|
+
'Will deliver to site on orders over $500.',
|
|
2334
|
+
'Chargers drop-ship in three to five days.',
|
|
2335
|
+
'Counter credit for returned unopened stock.',
|
|
2336
|
+
'Permit runner charges per filing.',
|
|
2337
|
+
],
|
|
2338
|
+
instructors: ['Lena Brandt', 'Malik Johnson', 'Pete Szabo'],
|
|
2339
|
+
descriptions: {
|
|
2340
|
+
Event: [
|
|
2341
|
+
'Swap the panel, rebalance the circuits and label it.',
|
|
2342
|
+
'Run the circuit and mount and commission the charger.',
|
|
2343
|
+
'Trace the fault and make it safe the same day.',
|
|
2344
|
+
'Meet the inspector with the walls open.',
|
|
2345
|
+
'Run the new circuits before the drywall goes up.',
|
|
2346
|
+
'Swap the panel, rebalance the circuits and label it.',
|
|
2347
|
+
'Run the circuit and mount and commission the charger.',
|
|
2348
|
+
'Trace the fault and make it safe the same day.',
|
|
2349
|
+
],
|
|
2350
|
+
EventType: [
|
|
2351
|
+
'Replace or upgrade a service panel.',
|
|
2352
|
+
'Install a home or workplace EV charger.',
|
|
2353
|
+
'Find and fix a fault or tripping circuit.',
|
|
2354
|
+
'A city or insurance inspection.',
|
|
2355
|
+
'Wire a new build or remodel before drywall.',
|
|
2356
|
+
'Planned maintenance and testing under a contract.',
|
|
2357
|
+
'Lighting design and fit-out.',
|
|
2358
|
+
'Anything else the shop agrees to take on.',
|
|
2359
|
+
],
|
|
2360
|
+
EventSeries: [
|
|
2361
|
+
'Emergency lighting tests at commercial sites.',
|
|
2362
|
+
'Quarterly checks under maintenance contracts.',
|
|
2363
|
+
'Rough-ins for a builder, lot by lot.',
|
|
2364
|
+
'Thermal imaging of panels each year.',
|
|
2365
|
+
'Holiday lighting installs and removals.',
|
|
2366
|
+
],
|
|
2367
|
+
Place: [
|
|
2368
|
+
'Truck with the ladder rack and wire reels.',
|
|
2369
|
+
'Second service truck.',
|
|
2370
|
+
'Shop with the stock shelves.',
|
|
2371
|
+
'Locked cage for panels and chargers.',
|
|
2372
|
+
'Where the team loads up each morning.',
|
|
2373
|
+
],
|
|
2374
|
+
},
|
|
2375
|
+
lineQuantity: [1, 4],
|
|
2376
|
+
eventNames: [
|
|
2377
|
+
'Panel upgrade',
|
|
2378
|
+
'EV charger install',
|
|
2379
|
+
'Fault call',
|
|
2380
|
+
'Inspection',
|
|
2381
|
+
'Rough-in',
|
|
2382
|
+
'Panel upgrade',
|
|
2383
|
+
'EV charger install',
|
|
2384
|
+
'Fault call',
|
|
2385
|
+
],
|
|
2386
|
+
eventTypes: [
|
|
2387
|
+
'Panel upgrade',
|
|
2388
|
+
'EV charger',
|
|
2389
|
+
'Fault call',
|
|
2390
|
+
'Inspection',
|
|
2391
|
+
'Rough-in',
|
|
2392
|
+
'Maintenance',
|
|
2393
|
+
'Lighting',
|
|
2394
|
+
'Other',
|
|
2395
|
+
],
|
|
2396
|
+
seriesNames: [
|
|
2397
|
+
'Emergency lighting tests',
|
|
2398
|
+
'Maintenance contract visits',
|
|
2399
|
+
'Builder rough-ins',
|
|
2400
|
+
'Annual thermal scans',
|
|
2401
|
+
'Seasonal lighting',
|
|
2402
|
+
],
|
|
2403
|
+
placeNames: ['Truck 1', 'Truck 2', 'Shop', 'Equipment cage', 'Loading dock'],
|
|
2404
|
+
placeTypes: ['Truck', 'Shop', 'Cage', 'Dock'],
|
|
2405
|
+
locations: [
|
|
2406
|
+
{ code: 'SHOP', name: 'Shop shelves', kind: 'warehouse' },
|
|
2407
|
+
{ code: 'CAGE', name: 'Equipment cage', kind: 'cage' },
|
|
2408
|
+
{ code: 'TRK1', name: 'Truck 1', kind: 'vehicle' },
|
|
2409
|
+
],
|
|
2410
|
+
weights: {
|
|
2411
|
+
'Order.status': { completed: 5, accepted: 3, sent: 1, draft: 1 },
|
|
2412
|
+
'Estimate.status': { sent: 3, accepted: 3, declined: 1, draft: 1 },
|
|
2413
|
+
'Agreement.status': { accepted: 6, sent: 1, completed: 2, cancelled: 1 },
|
|
2414
|
+
'Event.status': { scheduled: 5, completed: 4, cancelled: 1 },
|
|
2415
|
+
'Customer.customerType': { retail: 5, wholesale: 3 },
|
|
2416
|
+
},
|
|
2417
|
+
};
|
|
2418
|
+
const PAINTER = {
|
|
2419
|
+
id: 'painter',
|
|
2420
|
+
taxRate: 0.06,
|
|
2421
|
+
products: [
|
|
2422
|
+
{
|
|
2423
|
+
name: 'Interior eggshell, 1 gal',
|
|
2424
|
+
description: 'Scrubbable acrylic, tinted to order.',
|
|
2425
|
+
price: 5400,
|
|
2426
|
+
category: 'Interior paint',
|
|
2427
|
+
productType: 'product',
|
|
2428
|
+
},
|
|
2429
|
+
{
|
|
2430
|
+
name: 'Exterior satin, 5 gal',
|
|
2431
|
+
description: '100% acrylic, mildew resistant.',
|
|
2432
|
+
price: 28900,
|
|
2433
|
+
category: 'Exterior paint',
|
|
2434
|
+
productType: 'product',
|
|
2435
|
+
},
|
|
2436
|
+
{
|
|
2437
|
+
name: 'Bonding primer, 1 gal',
|
|
2438
|
+
description: 'Sticks to glossy trim and laminate.',
|
|
2439
|
+
price: 4600,
|
|
2440
|
+
category: 'Primer',
|
|
2441
|
+
productType: 'product',
|
|
2442
|
+
},
|
|
2443
|
+
{
|
|
2444
|
+
name: 'Ceiling flat white, 5 gal',
|
|
2445
|
+
description: 'Low spatter, hides flashing.',
|
|
2446
|
+
price: 17500,
|
|
2447
|
+
category: 'Interior paint',
|
|
2448
|
+
productType: 'product',
|
|
2449
|
+
},
|
|
2450
|
+
{
|
|
2451
|
+
name: "Painter's caulk, 10 oz",
|
|
2452
|
+
description: 'Paintable acrylic latex.',
|
|
2453
|
+
price: 450,
|
|
2454
|
+
category: 'Sundries',
|
|
2455
|
+
productType: 'product',
|
|
2456
|
+
},
|
|
2457
|
+
{
|
|
2458
|
+
name: 'Masking tape, 1.88" roll',
|
|
2459
|
+
description: 'Clean release for 14 days.',
|
|
2460
|
+
price: 850,
|
|
2461
|
+
category: 'Sundries',
|
|
2462
|
+
productType: 'product',
|
|
2463
|
+
},
|
|
2464
|
+
{
|
|
2465
|
+
name: 'Cabinet enamel, 1 qt',
|
|
2466
|
+
description: 'Self-levelling urethane alkyd.',
|
|
2467
|
+
price: 3200,
|
|
2468
|
+
category: 'Trim & cabinets',
|
|
2469
|
+
productType: 'product',
|
|
2470
|
+
},
|
|
2471
|
+
{
|
|
2472
|
+
name: 'Deck stain, semi-transparent, 1 gal',
|
|
2473
|
+
description: 'Oil-based, cedar tone.',
|
|
2474
|
+
price: 5900,
|
|
2475
|
+
category: 'Stain',
|
|
2476
|
+
productType: 'product',
|
|
2477
|
+
},
|
|
2478
|
+
],
|
|
2479
|
+
lines: [
|
|
2480
|
+
{
|
|
2481
|
+
description: 'Walls, two coats, per room',
|
|
2482
|
+
price: 42500,
|
|
2483
|
+
quantity: [1, 6],
|
|
2484
|
+
},
|
|
2485
|
+
{ description: 'Ceilings, per room', price: 18500, quantity: [1, 6] },
|
|
2486
|
+
{
|
|
2487
|
+
description: 'Trim and doors, per linear foot',
|
|
2488
|
+
price: 350,
|
|
2489
|
+
quantity: [40, 240],
|
|
2490
|
+
},
|
|
2491
|
+
{ description: 'Drywall patch and sand', price: 7500, quantity: [1, 4] },
|
|
2492
|
+
{
|
|
2493
|
+
description: 'Exterior siding, per side',
|
|
2494
|
+
price: 115000,
|
|
2495
|
+
quantity: [1, 4],
|
|
2496
|
+
},
|
|
2497
|
+
{
|
|
2498
|
+
description: 'Cabinet refinish, per door',
|
|
2499
|
+
price: 9500,
|
|
2500
|
+
quantity: [8, 30],
|
|
2501
|
+
},
|
|
2502
|
+
{ description: 'Pressure wash and scrape', price: 45000, quantity: [1, 1] },
|
|
2503
|
+
{ description: 'Paint and materials', price: 5400, quantity: [2, 10] },
|
|
2504
|
+
],
|
|
2505
|
+
customers: [
|
|
2506
|
+
'Naomi Feld',
|
|
2507
|
+
'Carlos Ibarra',
|
|
2508
|
+
'Bethany Shaw',
|
|
2509
|
+
'Henry Adeyemi',
|
|
2510
|
+
'Rachel Kim',
|
|
2511
|
+
'Oakmont Property Management',
|
|
2512
|
+
'The Wren Boutique Hotel',
|
|
2513
|
+
'Fairview Elementary PTA',
|
|
2514
|
+
],
|
|
2515
|
+
vendors: [
|
|
2516
|
+
'Hue & Coat Paint Store',
|
|
2517
|
+
'ProFinish Coatings Supply',
|
|
2518
|
+
'Valley Ladder & Scaffold',
|
|
2519
|
+
'Drop Cloth Depot',
|
|
2520
|
+
'Ridgeway Lumber & Hardware',
|
|
2521
|
+
],
|
|
2522
|
+
notes: [
|
|
2523
|
+
'Colour: Swiss Coffee walls, Chantilly Lace trim.',
|
|
2524
|
+
'Deposit received; start date confirmed.',
|
|
2525
|
+
'Lead-safe practices: house built before 1978.',
|
|
2526
|
+
'Customer moving furniture before we arrive.',
|
|
2527
|
+
'Second coat on the stairwell after it cures.',
|
|
2528
|
+
],
|
|
2529
|
+
terms: ['50% deposit, balance on completion', 'Net 15', 'Due on completion'],
|
|
2530
|
+
customerNotes: [
|
|
2531
|
+
'Has a cat; keep the bedroom doors closed.',
|
|
2532
|
+
'Wants colour samples on the wall before choosing.',
|
|
2533
|
+
'Hotel: rooms released one floor at a time.',
|
|
2534
|
+
'Prefers low-VOC paint throughout.',
|
|
2535
|
+
'Board approval needed for exterior colours.',
|
|
2536
|
+
],
|
|
2537
|
+
vendorNotes: [
|
|
2538
|
+
'Contractor discount on the account.',
|
|
2539
|
+
'Tinted paint is not returnable.',
|
|
2540
|
+
'Scaffold rented by the week; delivery extra.',
|
|
2541
|
+
'Bulk drop cloths ship free over $200.',
|
|
2542
|
+
'Order before noon for same-day pickup.',
|
|
2543
|
+
],
|
|
2544
|
+
instructors: ['Gina Russo', 'Theo Walsh', 'Ama Boateng'],
|
|
2545
|
+
descriptions: {
|
|
2546
|
+
Event: [
|
|
2547
|
+
'Measure each room, note repairs and choose sheens.',
|
|
2548
|
+
'Move, mask, patch and prime before the paint goes on.',
|
|
2549
|
+
'Two coats on walls and trim, room by room.',
|
|
2550
|
+
'Wash, scrape and spot-prime the siding.',
|
|
2551
|
+
'Walk the job with the customer and touch up.',
|
|
2552
|
+
'Measure each room, note repairs and choose sheens.',
|
|
2553
|
+
'Move, mask, patch and prime before the paint goes on.',
|
|
2554
|
+
'Two coats on walls and trim, room by room.',
|
|
2555
|
+
],
|
|
2556
|
+
EventType: [
|
|
2557
|
+
'A visit to measure and price the job.',
|
|
2558
|
+
'Masking, patching and priming.',
|
|
2559
|
+
'A day of painting.',
|
|
2560
|
+
'Washing and scraping before exterior paint.',
|
|
2561
|
+
'The final walkthrough and touch-ups.',
|
|
2562
|
+
'Cabinet spraying in the shop.',
|
|
2563
|
+
'Colour consultation with samples.',
|
|
2564
|
+
'Anything else the crew agrees to take on.',
|
|
2565
|
+
],
|
|
2566
|
+
EventSeries: [
|
|
2567
|
+
'Unit turnovers for a property manager.',
|
|
2568
|
+
'Hotel floors, one at a time.',
|
|
2569
|
+
'Spring exterior season.',
|
|
2570
|
+
'School summer repaint.',
|
|
2571
|
+
'Touch-up visits after a job.',
|
|
2572
|
+
],
|
|
2573
|
+
Place: [
|
|
2574
|
+
'Van with ladders and drop cloths.',
|
|
2575
|
+
'Crew trailer with the sprayer.',
|
|
2576
|
+
'Shop where cabinet doors are sprayed.',
|
|
2577
|
+
'Store room for paint and sundries.',
|
|
2578
|
+
'Customer site.',
|
|
2579
|
+
],
|
|
2580
|
+
},
|
|
2581
|
+
eventNames: [
|
|
2582
|
+
'Estimate visit',
|
|
2583
|
+
'Prep day',
|
|
2584
|
+
'Paint day',
|
|
2585
|
+
'Exterior prep',
|
|
2586
|
+
'Final walkthrough',
|
|
2587
|
+
'Estimate visit',
|
|
2588
|
+
'Prep day',
|
|
2589
|
+
'Paint day',
|
|
2590
|
+
],
|
|
2591
|
+
eventTypes: [
|
|
2592
|
+
'Estimate',
|
|
2593
|
+
'Prep',
|
|
2594
|
+
'Paint',
|
|
2595
|
+
'Exterior prep',
|
|
2596
|
+
'Walkthrough',
|
|
2597
|
+
'Cabinet spray',
|
|
2598
|
+
'Colour consult',
|
|
2599
|
+
'Other',
|
|
2600
|
+
],
|
|
2601
|
+
seriesNames: [
|
|
2602
|
+
'Apartment turnovers',
|
|
2603
|
+
'Hotel refresh',
|
|
2604
|
+
'Exterior season',
|
|
2605
|
+
'School summer work',
|
|
2606
|
+
'Touch-up visits',
|
|
2607
|
+
],
|
|
2608
|
+
placeNames: ['Van', 'Crew trailer', 'Spray shop', 'Store room', 'On site'],
|
|
2609
|
+
placeTypes: ['Vehicle', 'Shop', 'Store room', 'Site'],
|
|
2610
|
+
locations: [
|
|
2611
|
+
{ code: 'STORE', name: 'Store room', kind: 'warehouse' },
|
|
2612
|
+
{ code: 'VAN', name: 'Crew van', kind: 'vehicle' },
|
|
2613
|
+
],
|
|
2614
|
+
weights: {
|
|
2615
|
+
'Order.status': { completed: 5, accepted: 3, sent: 1, draft: 1 },
|
|
2616
|
+
'Estimate.status': { sent: 4, accepted: 3, declined: 2, draft: 1 },
|
|
2617
|
+
'Event.status': { scheduled: 5, completed: 4, cancelled: 1 },
|
|
2618
|
+
'Customer.customerType': { retail: 5, wholesale: 3 },
|
|
2619
|
+
},
|
|
2620
|
+
};
|
|
2621
|
+
const ROOFER = {
|
|
2622
|
+
id: 'roofer',
|
|
2623
|
+
taxRate: 0.07,
|
|
2624
|
+
products: [
|
|
2625
|
+
{
|
|
2626
|
+
name: 'Architectural shingles, bundle',
|
|
2627
|
+
description: 'Laminated, 130 mph wind rating.',
|
|
2628
|
+
price: 4300,
|
|
2629
|
+
category: 'Shingles',
|
|
2630
|
+
productType: 'product',
|
|
2631
|
+
},
|
|
2632
|
+
{
|
|
2633
|
+
name: 'Synthetic underlayment, roll',
|
|
2634
|
+
description: '10 squares, walkable surface.',
|
|
2635
|
+
price: 12900,
|
|
2636
|
+
category: 'Underlayment',
|
|
2637
|
+
productType: 'product',
|
|
2638
|
+
},
|
|
2639
|
+
{
|
|
2640
|
+
name: 'Ice and water shield, roll',
|
|
2641
|
+
description: 'Self-adhered, for eaves and valleys.',
|
|
2642
|
+
price: 9800,
|
|
2643
|
+
category: 'Underlayment',
|
|
2644
|
+
productType: 'product',
|
|
2645
|
+
},
|
|
2646
|
+
{
|
|
2647
|
+
name: 'Drip edge, 10 ft',
|
|
2648
|
+
description: 'Aluminium, white.',
|
|
2649
|
+
price: 1100,
|
|
2650
|
+
category: 'Flashing',
|
|
2651
|
+
productType: 'product',
|
|
2652
|
+
},
|
|
2653
|
+
{
|
|
2654
|
+
name: 'Ridge vent, 4 ft',
|
|
2655
|
+
description: 'Shingle-over, filtered.',
|
|
2656
|
+
price: 1900,
|
|
2657
|
+
category: 'Ventilation',
|
|
2658
|
+
productType: 'product',
|
|
2659
|
+
},
|
|
2660
|
+
{
|
|
2661
|
+
name: 'Pipe boot, 3"',
|
|
2662
|
+
description: 'Lead-free, neoprene collar.',
|
|
2663
|
+
price: 1600,
|
|
2664
|
+
category: 'Flashing',
|
|
2665
|
+
productType: 'product',
|
|
2666
|
+
},
|
|
2667
|
+
{
|
|
2668
|
+
name: 'Roofing nails, coil, 7,200',
|
|
2669
|
+
description: '1-1/4" galvanized, for coil guns.',
|
|
2670
|
+
price: 5600,
|
|
2671
|
+
category: 'Fasteners',
|
|
2672
|
+
productType: 'product',
|
|
2673
|
+
},
|
|
2674
|
+
{
|
|
2675
|
+
name: 'Seamless gutter, per foot',
|
|
2676
|
+
description: '5" K-style, formed on site.',
|
|
2677
|
+
price: 950,
|
|
2678
|
+
category: 'Gutters',
|
|
2679
|
+
productType: 'product',
|
|
2680
|
+
},
|
|
2681
|
+
],
|
|
2682
|
+
lines: [
|
|
2683
|
+
{ description: 'Tear-off, per square', price: 9500, quantity: [12, 40] },
|
|
2684
|
+
{
|
|
2685
|
+
description: 'Install shingles, per square',
|
|
2686
|
+
price: 32500,
|
|
2687
|
+
quantity: [12, 40],
|
|
2688
|
+
},
|
|
2689
|
+
{
|
|
2690
|
+
description: 'Replace decking, per sheet',
|
|
2691
|
+
price: 9800,
|
|
2692
|
+
quantity: [2, 12],
|
|
2693
|
+
},
|
|
2694
|
+
{
|
|
2695
|
+
description: 'Flashing repair at chimney',
|
|
2696
|
+
price: 45000,
|
|
2697
|
+
quantity: [1, 1],
|
|
2698
|
+
},
|
|
2699
|
+
{
|
|
2700
|
+
description: 'Leak repair, minimum charge',
|
|
2701
|
+
price: 39500,
|
|
2702
|
+
quantity: [1, 1],
|
|
2703
|
+
},
|
|
2704
|
+
{
|
|
2705
|
+
description: 'Roof inspection with photo report',
|
|
2706
|
+
price: 17500,
|
|
2707
|
+
quantity: [1, 1],
|
|
2708
|
+
},
|
|
2709
|
+
{ description: 'Dumpster and haul-away', price: 55000, quantity: [1, 1] },
|
|
2710
|
+
{ description: 'Gutter clean and reseal', price: 22500, quantity: [1, 1] },
|
|
2711
|
+
],
|
|
2712
|
+
customers: [
|
|
2713
|
+
'Frank DeLuca',
|
|
2714
|
+
'Amara Okonkwo',
|
|
2715
|
+
'Ted Lindqvist',
|
|
2716
|
+
'Grace Halvorsen',
|
|
2717
|
+
'Sunil Varma',
|
|
2718
|
+
'Pinecrest HOA',
|
|
2719
|
+
'Westfield Business Park',
|
|
2720
|
+
'St. Brendan Parish',
|
|
2721
|
+
],
|
|
2722
|
+
vendors: [
|
|
2723
|
+
'Summit Roofing Distributors',
|
|
2724
|
+
'Eastside Lumber Yard',
|
|
2725
|
+
'Gutterline Metals',
|
|
2726
|
+
'Haul-It Dumpster Rental',
|
|
2727
|
+
'Skyline Crane & Hoist',
|
|
2728
|
+
],
|
|
2729
|
+
notes: [
|
|
2730
|
+
'Insurance claim: adjuster meeting on site Thursday.',
|
|
2731
|
+
'Two layers to tear off; priced extra.',
|
|
2732
|
+
'Soft decking found around the chimney.',
|
|
2733
|
+
'Shingle colour: Weathered Wood.',
|
|
2734
|
+
'Tarped after the storm; full replacement quoted.',
|
|
2735
|
+
],
|
|
2736
|
+
terms: ['Net 30', '30% deposit, balance on completion', 'Due on completion'],
|
|
2737
|
+
customerNotes: [
|
|
2738
|
+
'HOA approves colours before the job is booked.',
|
|
2739
|
+
'Skylight leaks in heavy rain only.',
|
|
2740
|
+
'Business park: work weekends only on the office roofs.',
|
|
2741
|
+
'Claim number is on the work order.',
|
|
2742
|
+
'Wants gutter guards quoted with the roof.',
|
|
2743
|
+
],
|
|
2744
|
+
vendorNotes: [
|
|
2745
|
+
'Rooftop delivery by boom truck; book two days ahead.',
|
|
2746
|
+
'Dumpster swaps same day if called before 9 a.m.',
|
|
2747
|
+
'Manufacturer warranty registered through them.',
|
|
2748
|
+
'Gutter coil colours are limited; check stock.',
|
|
2749
|
+
'Crane hire minimum is four hours.',
|
|
2750
|
+
],
|
|
2751
|
+
instructors: ['Mike Harlan', 'Rosa Jimenez', 'Kyle Benton'],
|
|
2752
|
+
descriptions: {
|
|
2753
|
+
Event: [
|
|
2754
|
+
'Walk the roof, photograph the damage and write it up.',
|
|
2755
|
+
'Measure, check the decking and price the job.',
|
|
2756
|
+
'Strip to the deck and dry it in the same day.',
|
|
2757
|
+
'Lay underlayment, shingles, flashing and ridge.',
|
|
2758
|
+
'Find the leak, reseal the flashing and test it.',
|
|
2759
|
+
'Walk the roof, photograph the damage and write it up.',
|
|
2760
|
+
'Measure, check the decking and price the job.',
|
|
2761
|
+
'Strip to the deck and dry it in the same day.',
|
|
2762
|
+
],
|
|
2763
|
+
EventType: [
|
|
2764
|
+
'An inspection with a photo report.',
|
|
2765
|
+
'A visit to measure and price.',
|
|
2766
|
+
'Tear-off day.',
|
|
2767
|
+
'Install day.',
|
|
2768
|
+
'A leak or storm repair.',
|
|
2769
|
+
'A yearly check under an agreement.',
|
|
2770
|
+
'Gutter work.',
|
|
2771
|
+
'Anything else the crew agrees to take on.',
|
|
2772
|
+
],
|
|
2773
|
+
EventSeries: [
|
|
2774
|
+
'Yearly inspections under maintenance agreements.',
|
|
2775
|
+
'Storm response after a hail event.',
|
|
2776
|
+
'Fall gutter cleaning round.',
|
|
2777
|
+
'Phased re-roof of a business park.',
|
|
2778
|
+
'Warranty checks a year after install.',
|
|
2779
|
+
],
|
|
2780
|
+
Place: [
|
|
2781
|
+
'Crew truck with the ladders and harnesses.',
|
|
2782
|
+
'Dump trailer for tear-offs.',
|
|
2783
|
+
'Yard where bundles are stored.',
|
|
2784
|
+
'Covered rack for flashing and coil.',
|
|
2785
|
+
'Customer site.',
|
|
2786
|
+
],
|
|
2787
|
+
},
|
|
2788
|
+
eventNames: [
|
|
2789
|
+
'Roof inspection',
|
|
2790
|
+
'Measure-up',
|
|
2791
|
+
'Tear-off',
|
|
2792
|
+
'Shingle install',
|
|
2793
|
+
'Leak repair',
|
|
2794
|
+
'Roof inspection',
|
|
2795
|
+
'Measure-up',
|
|
2796
|
+
'Tear-off',
|
|
2797
|
+
],
|
|
2798
|
+
eventTypes: [
|
|
2799
|
+
'Inspection',
|
|
2800
|
+
'Measure-up',
|
|
2801
|
+
'Tear-off',
|
|
2802
|
+
'Install',
|
|
2803
|
+
'Repair',
|
|
2804
|
+
'Agreement check',
|
|
2805
|
+
'Gutters',
|
|
2806
|
+
'Other',
|
|
2807
|
+
],
|
|
2808
|
+
seriesNames: [
|
|
2809
|
+
'Annual inspections',
|
|
2810
|
+
'Storm response',
|
|
2811
|
+
'Gutter round',
|
|
2812
|
+
'Business park re-roof',
|
|
2813
|
+
'Warranty checks',
|
|
2814
|
+
],
|
|
2815
|
+
placeNames: [
|
|
2816
|
+
'Crew truck',
|
|
2817
|
+
'Dump trailer',
|
|
2818
|
+
'Material yard',
|
|
2819
|
+
'Metal rack',
|
|
2820
|
+
'On site',
|
|
2821
|
+
],
|
|
2822
|
+
placeTypes: ['Vehicle', 'Trailer', 'Yard', 'Site'],
|
|
2823
|
+
locations: [
|
|
2824
|
+
{ code: 'YARD', name: 'Material yard', kind: 'yard' },
|
|
2825
|
+
{ code: 'RACK', name: 'Covered metal rack', kind: 'warehouse' },
|
|
2826
|
+
],
|
|
2827
|
+
weights: {
|
|
2828
|
+
'Order.status': { completed: 5, accepted: 3, sent: 1, draft: 1 },
|
|
2829
|
+
'Estimate.status': { sent: 3, accepted: 3, declined: 2, draft: 1 },
|
|
2830
|
+
'Agreement.status': { accepted: 6, sent: 1, completed: 2, cancelled: 1 },
|
|
2831
|
+
'Event.status': { scheduled: 5, completed: 4, cancelled: 1 },
|
|
2832
|
+
'Customer.customerType': { retail: 5, wholesale: 3 },
|
|
2833
|
+
},
|
|
2834
|
+
};
|
|
2005
2835
|
export const COOKBOOK_PACKS = {
|
|
2006
2836
|
[BAKERY.id]: BAKERY,
|
|
2007
2837
|
[MECHANIC.id]: MECHANIC,
|
|
@@ -2013,6 +2843,10 @@ export const COOKBOOK_PACKS = {
|
|
|
2013
2843
|
[EQUIPMENT_RENTAL.id]: EQUIPMENT_RENTAL,
|
|
2014
2844
|
[NONPROFIT.id]: NONPROFIT,
|
|
2015
2845
|
[AGENCY.id]: AGENCY,
|
|
2846
|
+
[PLUMBER.id]: PLUMBER,
|
|
2847
|
+
[ELECTRICIAN.id]: ELECTRICIAN,
|
|
2848
|
+
[PAINTER.id]: PAINTER,
|
|
2849
|
+
[ROOFER.id]: ROOFER,
|
|
2016
2850
|
};
|
|
2017
2851
|
let active = GENERIC_PACK;
|
|
2018
2852
|
/** The pack the generator reads right now. */
|