@happyvertical/smrt-planner 0.57.4 → 0.57.6

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 (487) hide show
  1. package/app/404.html +21 -21
  2. package/app/_app/immutable/assets/AppShell.DrL8T9I9.css +1 -0
  3. package/app/_app/immutable/assets/labels.AVmg4hBz.css +1 -0
  4. package/app/_app/immutable/chunks/{ukqw0V0Z.js → 0as86J1A.js} +1 -1
  5. package/app/_app/immutable/chunks/{B6GaAylQ.js → B7d7dGCP.js} +1 -1
  6. package/app/_app/immutable/chunks/{VCg3x54j.js → BPsie9Wr.js} +1 -1
  7. package/app/_app/immutable/chunks/{CztFAhpp.js → BSYvnYu8.js} +1 -1
  8. package/app/_app/immutable/chunks/{CVcfTI5P.js → C3nKLKKd.js} +1 -1
  9. package/app/_app/immutable/chunks/CXKa_xdk.js +4 -0
  10. package/app/_app/immutable/chunks/CdBvpdnq.js +4 -0
  11. package/app/_app/immutable/chunks/{BhsxCKaI.js → CdlkzC7D.js} +1 -1
  12. package/app/_app/immutable/chunks/{gnVUq1Tr.js → CoXf-L_3.js} +22 -22
  13. package/app/_app/immutable/chunks/{h1rof478.js → CwNhmq3e.js} +1 -1
  14. package/app/_app/immutable/chunks/{XlsfHlOd.js → D2Ykv2Y3.js} +1 -1
  15. package/app/_app/immutable/chunks/{Burj9UYU.js → D31rqKs1.js} +1 -1
  16. package/app/_app/immutable/chunks/{CdPJK-gf.js → D8rEUyzO.js} +1 -1
  17. package/app/_app/immutable/chunks/{D76yH9OO.js → DBp81N-t.js} +1 -1
  18. package/app/_app/immutable/chunks/DIE02RSm.js +1 -0
  19. package/app/_app/immutable/chunks/{BvRNePGN.js → DrjdLb0M.js} +1 -1
  20. package/app/_app/immutable/chunks/{8vF2REci.js → Dyf3Cj8R.js} +1 -1
  21. package/app/_app/immutable/chunks/{Ckc_1feF.js → DypPefJO.js} +1 -1
  22. package/app/_app/immutable/chunks/DzRTyOpH.js +1 -0
  23. package/app/_app/immutable/chunks/{CQ13lq7J.js → Dzh-1KQR.js} +1 -1
  24. package/app/_app/immutable/chunks/GVQNHDp5.js +1 -0
  25. package/app/_app/immutable/chunks/{DCr75fDJ.js → ORlJSBRk.js} +1 -1
  26. package/app/_app/immutable/chunks/{CUAfmRua.js → PsiVGwJV.js} +1 -1
  27. package/app/_app/immutable/chunks/{DEwvWTFM.js → eNZ3ToP2.js} +1 -1
  28. package/app/_app/immutable/chunks/{D8D_RStZ.js → exPME6UK.js} +1 -1
  29. package/app/_app/immutable/chunks/{A_IpJrNN.js → jol435F5.js} +1 -1
  30. package/app/_app/immutable/entry/{app.C-mGsUDb.js → app.C_C191oT.js} +2 -2
  31. package/app/_app/immutable/entry/start.C01jT-Kj.js +1 -0
  32. package/app/_app/immutable/nodes/{0.CG8nFTeW.js → 0._tbUx7Ky.js} +1 -1
  33. package/app/_app/immutable/nodes/{1.BY2zPWBD.js → 1.CTatAlE5.js} +1 -1
  34. package/app/_app/immutable/nodes/{10.y59vLZOY.js → 10.DHnK3kbB.js} +1 -1
  35. package/app/_app/immutable/nodes/{11.HBRO8fTE.js → 11.Ck1kcQLu.js} +1 -1
  36. package/app/_app/immutable/nodes/{12.DiV3I_fX.js → 12.oK17D56_.js} +1 -1
  37. package/app/_app/immutable/nodes/{13.f4cxyt4f.js → 13.DlEsuw6F.js} +1 -1
  38. package/app/_app/immutable/nodes/{14.DnBBJxxq.js → 14.sDZ3z4Zh.js} +1 -1
  39. package/app/_app/immutable/nodes/{2.DR5lKFBV.js → 2.GYBHfqdI.js} +3 -3
  40. package/app/_app/immutable/nodes/{3.gu2TJwhp.js → 3.DOL1VeVM.js} +1 -1
  41. package/app/_app/immutable/nodes/{4.CU9BPw5o.js → 4.CiKq5-ek.js} +1 -1
  42. package/app/_app/immutable/nodes/{5.CD78hESs.js → 5.nKUg_W9L.js} +1 -1
  43. package/app/_app/immutable/nodes/{6.B5LspHdV.js → 6.CVGw-hLa.js} +1 -1
  44. package/app/_app/immutable/nodes/{7.lSo_04_4.js → 7.Clo6kG4w.js} +1 -1
  45. package/app/_app/immutable/nodes/{8.OVIZi4uJ.js → 8.C3moca98.js} +1 -1
  46. package/app/_app/immutable/nodes/{9.BLNgntah.js → 9.BnVJx5kW.js} +1 -1
  47. package/app/_app/version.json +1 -1
  48. package/app/advanced-styles/index.html +26 -26
  49. package/app/ai/index.html +30 -30
  50. package/app/blueprint/index.html +23 -23
  51. package/app/cookbook/index.html +23 -23
  52. package/app/index.html +32 -32
  53. package/app/m/ads/AdDeliveryTier/index.html +26 -26
  54. package/app/m/ads/AdEvent/index.html +26 -26
  55. package/app/m/ads/AdFormat/index.html +26 -26
  56. package/app/m/ads/AdGroup/index.html +26 -26
  57. package/app/m/ads/AdVariation/index.html +26 -26
  58. package/app/m/analytics/AnalyticsDataStream/index.html +26 -26
  59. package/app/m/analytics/AnalyticsEvent/index.html +26 -26
  60. package/app/m/analytics/AnalyticsProperty/index.html +26 -26
  61. package/app/m/analytics/AnalyticsReport/index.html +26 -26
  62. package/app/m/approvals/ApprovalEvent/index.html +26 -26
  63. package/app/m/approvals/ApprovalPolicy/index.html +26 -26
  64. package/app/m/approvals/ApprovalRequest/index.html +26 -26
  65. package/app/m/assets/Asset/attachments/index.html +27 -27
  66. package/app/m/assets/Asset/index.html +26 -26
  67. package/app/m/assets/AssetAssociation/index.html +26 -26
  68. package/app/m/assets/AssetMetafield/index.html +26 -26
  69. package/app/m/assets/AssetStatus/index.html +26 -26
  70. package/app/m/assets/AssetType/index.html +26 -26
  71. package/app/m/assets/Folder/index.html +26 -26
  72. package/app/m/chat/AgentSession/index.html +26 -26
  73. package/app/m/chat/ChatMessage/index.html +26 -26
  74. package/app/m/chat/ChatParticipant/index.html +26 -26
  75. package/app/m/chat/ChatReaction/index.html +26 -26
  76. package/app/m/chat/ChatRoom/index.html +26 -26
  77. package/app/m/chat/ChatThread/index.html +26 -26
  78. package/app/m/chat/VoiceGatewayTurn/index.html +26 -26
  79. package/app/m/chat/VoiceSession/index.html +26 -26
  80. package/app/m/commerce/Agreement/index.html +26 -26
  81. package/app/m/commerce/Cart/index.html +26 -26
  82. package/app/m/commerce/Contract/index.html +26 -26
  83. package/app/m/commerce/ContractLineItem/index.html +26 -26
  84. package/app/m/commerce/Customer/index.html +26 -26
  85. package/app/m/commerce/DocumentTax/index.html +26 -26
  86. package/app/m/commerce/Estimate/index.html +26 -26
  87. package/app/m/commerce/Fulfillment/index.html +26 -26
  88. package/app/m/commerce/FulfillmentLineItem/index.html +26 -26
  89. package/app/m/commerce/HistoricalCustomerFunds/index.html +26 -26
  90. package/app/m/commerce/HistoricalCustomerFundsAllocation/index.html +26 -26
  91. package/app/m/commerce/HistoricalSalesLine/index.html +26 -26
  92. package/app/m/commerce/Invoice/index.html +26 -26
  93. package/app/m/commerce/InvoiceLineItem/index.html +26 -26
  94. package/app/m/commerce/Lease/index.html +26 -26
  95. package/app/m/commerce/LicenseSale/index.html +26 -26
  96. package/app/m/commerce/Order/index.html +26 -26
  97. package/app/m/commerce/Payment/index.html +26 -26
  98. package/app/m/commerce/PaymentAllocation/index.html +26 -26
  99. package/app/m/commerce/PaymentInstrument/index.html +26 -26
  100. package/app/m/commerce/PaymentIntent/index.html +26 -26
  101. package/app/m/commerce/Payout/index.html +26 -26
  102. package/app/m/commerce/ProductionOrder/index.html +26 -26
  103. package/app/m/commerce/PurchaseContract/index.html +26 -26
  104. package/app/m/commerce/PurchaseOrder/index.html +26 -26
  105. package/app/m/commerce/SalesContract/index.html +26 -26
  106. package/app/m/commerce/SupplierQuote/index.html +26 -26
  107. package/app/m/commerce/TaxCode/index.html +26 -26
  108. package/app/m/commerce/TaxComponent/index.html +26 -26
  109. package/app/m/commerce/TaxSettings/index.html +26 -26
  110. package/app/m/commerce/TaxSummaryReport/index.html +26 -26
  111. package/app/m/commerce/Vendor/index.html +26 -26
  112. package/app/m/commerce/WholesaleOrder/index.html +26 -26
  113. package/app/m/content/Content/index.html +26 -26
  114. package/app/m/content/ContentContribution/index.html +26 -26
  115. package/app/m/content/ContentContributionAttachment/index.html +26 -26
  116. package/app/m/content/ContentContributionRevision/index.html +26 -26
  117. package/app/m/content/ContentContributionType/index.html +26 -26
  118. package/app/m/content/ContentContributor/index.html +26 -26
  119. package/app/m/content/ContentCorrection/index.html +26 -26
  120. package/app/m/content/ContentFeedSource/index.html +26 -26
  121. package/app/m/content/ContentGovernanceAssignment/index.html +26 -26
  122. package/app/m/content/ContentGovernancePolicy/index.html +26 -26
  123. package/app/m/content/ContentGovernanceProfile/index.html +26 -26
  124. package/app/m/content/ContentReference/index.html +26 -26
  125. package/app/m/content/ContentReview/index.html +26 -26
  126. package/app/m/content/ContentVersion/index.html +26 -26
  127. package/app/m/events/Event/index.html +26 -26
  128. package/app/m/events/EventParticipant/index.html +26 -26
  129. package/app/m/events/EventSeries/index.html +26 -26
  130. package/app/m/events/EventType/index.html +26 -26
  131. package/app/m/expenses/Expense/index.html +26 -26
  132. package/app/m/facts/Fact/index.html +26 -26
  133. package/app/m/facts/FactContent/index.html +26 -26
  134. package/app/m/facts/FactEvidence/index.html +26 -26
  135. package/app/m/facts/FactSource/index.html +26 -26
  136. package/app/m/facts/FactSubject/index.html +26 -26
  137. package/app/m/facts/FactTag/index.html +26 -26
  138. package/app/m/fields/FieldPolicy/index.html +26 -26
  139. package/app/m/fields/FieldPolicySuggestion/index.html +26 -26
  140. package/app/m/fields/FieldUsageCounter/index.html +26 -26
  141. package/app/m/images/Image/index.html +26 -26
  142. package/app/m/inventory/InventoryLocation/index.html +26 -26
  143. package/app/m/inventory/StockLevel/index.html +26 -26
  144. package/app/m/inventory/StockMovement/index.html +26 -26
  145. package/app/m/ledgers/Account/index.html +26 -26
  146. package/app/m/ledgers/Journal/index.html +26 -26
  147. package/app/m/ledgers/JournalEntry/index.html +26 -26
  148. package/app/m/ledgers/Ledger/index.html +26 -26
  149. package/app/m/manufacturing/Assembly/index.html +26 -26
  150. package/app/m/manufacturing/BillOfMaterials/index.html +26 -26
  151. package/app/m/manufacturing/BomLine/index.html +26 -26
  152. package/app/m/manufacturing/Operation/index.html +26 -26
  153. package/app/m/manufacturing/ProductionRun/index.html +26 -26
  154. package/app/m/manufacturing/ProductionRunCompletion/index.html +26 -26
  155. package/app/m/manufacturing/RoutingStep/index.html +26 -26
  156. package/app/m/marketing/Campaign/index.html +26 -26
  157. package/app/m/marketing/CampaignChannel/index.html +26 -26
  158. package/app/m/marketing/CampaignMetricSnapshot/index.html +26 -26
  159. package/app/m/messages/Account/index.html +26 -26
  160. package/app/m/messages/Attachment/index.html +26 -26
  161. package/app/m/messages/Blacklist/index.html +26 -26
  162. package/app/m/messages/Email/failed-sends/index.html +27 -27
  163. package/app/m/messages/Email/index.html +26 -26
  164. package/app/m/messages/Email/mailbox/index.html +27 -27
  165. package/app/m/messages/EmailAccount/index.html +26 -26
  166. package/app/m/messages/EmailAttachment/index.html +26 -26
  167. package/app/m/messages/EmailFolder/index.html +26 -26
  168. package/app/m/messages/Message/index.html +26 -26
  169. package/app/m/messages/MessagingEndpoint/index.html +26 -26
  170. package/app/m/messages/PersonaMessageRoute/index.html +26 -26
  171. package/app/m/messages/SlackAccount/index.html +26 -26
  172. package/app/m/messages/SlackMessage/index.html +26 -26
  173. package/app/m/messages/TelegramAccount/index.html +26 -26
  174. package/app/m/messages/Tweet/index.html +26 -26
  175. package/app/m/messages/TwitterAccount/index.html +26 -26
  176. package/app/m/messages/Whitelist/index.html +26 -26
  177. package/app/m/messages/ZulipAccount/index.html +26 -26
  178. package/app/m/places/Place/index.html +26 -26
  179. package/app/m/places/PlaceType/index.html +26 -26
  180. package/app/m/products/Category/index.html +26 -26
  181. package/app/m/products/Material/index.html +26 -26
  182. package/app/m/products/Product/index.html +26 -26
  183. package/app/m/products/Product/ingredients/index.html +27 -27
  184. package/app/m/products/ProductVariant/index.html +26 -26
  185. package/app/m/products/Sku/index.html +26 -26
  186. package/app/m/profiles/ApiKey/index.html +26 -26
  187. package/app/m/profiles/Bot/index.html +26 -26
  188. package/app/m/profiles/MagicLinkToken/index.html +26 -26
  189. package/app/m/profiles/NostrIdentity/index.html +26 -26
  190. package/app/m/profiles/OidcIdentity/index.html +26 -26
  191. package/app/m/profiles/Organization/index.html +26 -26
  192. package/app/m/profiles/Person/index.html +26 -26
  193. package/app/m/profiles/Profile/index.html +26 -26
  194. package/app/m/profiles/ProfileMetadata/index.html +26 -26
  195. package/app/m/profiles/ProfileMetafield/index.html +26 -26
  196. package/app/m/profiles/ProfileRelationship/index.html +26 -26
  197. package/app/m/profiles/ProfileRelationshipTerm/index.html +26 -26
  198. package/app/m/profiles/ProfileRelationshipType/index.html +26 -26
  199. package/app/m/profiles/ProfileType/index.html +26 -26
  200. package/app/m/projects/Comment/index.html +26 -26
  201. package/app/m/projects/Issue/index.html +26 -26
  202. package/app/m/projects/Label/index.html +26 -26
  203. package/app/m/projects/Project/index.html +26 -26
  204. package/app/m/projects/ProjectIntegration/index.html +26 -26
  205. package/app/m/projects/PullRequest/index.html +26 -26
  206. package/app/m/projects/Repository/index.html +26 -26
  207. package/app/m/properties/Property/index.html +26 -26
  208. package/app/m/properties/Zone/index.html +26 -26
  209. package/app/m/reports/RuntimeReport/index.html +26 -26
  210. package/app/m/reports/SmrtPrincipalReportRefreshTask/index.html +26 -26
  211. package/app/m/reports/SmrtReportLock/index.html +26 -26
  212. package/app/m/reports/SmrtReportRefreshTask/index.html +26 -26
  213. package/app/m/reports/SmrtReportRun/index.html +26 -26
  214. package/app/m/reports/SmrtReportSchedule/index.html +26 -26
  215. package/app/m/reports/SmrtReportWatermark/index.html +26 -26
  216. package/app/m/sales/Agreement/index.html +26 -26
  217. package/app/m/sales/AttributionException/index.html +26 -26
  218. package/app/m/sales/AttributionPolicy/index.html +26 -26
  219. package/app/m/sales/Commission/index.html +26 -26
  220. package/app/m/sales/CommissionAdjustment/index.html +26 -26
  221. package/app/m/sales/CommissionPayout/index.html +26 -26
  222. package/app/m/sales/CommissionPlan/index.html +26 -26
  223. package/app/m/sales/Earner/index.html +26 -26
  224. package/app/m/sales/EarnerSourceAttribution/index.html +26 -26
  225. package/app/m/sales/EarningEvent/index.html +26 -26
  226. package/app/m/sales/ExecutedAgreement/index.html +26 -26
  227. package/app/m/sales/Lead/index.html +26 -26
  228. package/app/m/sales/Opportunity/index.html +26 -26
  229. package/app/m/sales/OpportunityConversion/index.html +26 -26
  230. package/app/m/sales/PipelineDefinition/index.html +26 -26
  231. package/app/m/sales/PipelineStage/index.html +26 -26
  232. package/app/m/sales/Referral/index.html +26 -26
  233. package/app/m/sales/ReferralAgreement/index.html +26 -26
  234. package/app/m/sales/ReferralLink/index.html +26 -26
  235. package/app/m/sales/ReferralProgram/index.html +26 -26
  236. package/app/m/sales/ReferralTermSnapshot/index.html +26 -26
  237. package/app/m/sales/ReferralTouch/index.html +26 -26
  238. package/app/m/sales/Referrer/index.html +26 -26
  239. package/app/m/sales/SalesActivity/index.html +26 -26
  240. package/app/m/sales/SalesRepresentative/index.html +26 -26
  241. package/app/m/sites/Site/index.html +26 -26
  242. package/app/m/sites/SiteAgentBinding/index.html +26 -26
  243. package/app/m/social/OAuthState/index.html +26 -26
  244. package/app/m/social/SocialAccount/index.html +26 -26
  245. package/app/m/social/SocialPost/index.html +26 -26
  246. package/app/m/social/SocialPostAnalyticsSnapshot/index.html +26 -26
  247. package/app/m/subscriptions/BillingAdjustment/index.html +26 -26
  248. package/app/m/subscriptions/ClientCharge/index.html +26 -26
  249. package/app/m/subscriptions/CreditGrant/index.html +26 -26
  250. package/app/m/subscriptions/PricingRule/index.html +26 -26
  251. package/app/m/subscriptions/RetailCharge/index.html +26 -26
  252. package/app/m/subscriptions/SpendingPolicy/index.html +26 -26
  253. package/app/m/subscriptions/SubscriptionPlan/index.html +26 -26
  254. package/app/m/subscriptions/TenantSubscription/index.html +26 -26
  255. package/app/m/subscriptions/TenantUsageMetric/index.html +26 -26
  256. package/app/m/support/ServiceTimeEntry/index.html +26 -26
  257. package/app/m/support/SupportAiRun/index.html +26 -26
  258. package/app/m/support/SupportAvailability/index.html +26 -26
  259. package/app/m/support/SupportCase/index.html +26 -26
  260. package/app/m/support/SupportCaseEvent/index.html +26 -26
  261. package/app/m/support/SupportChannelBinding/index.html +26 -26
  262. package/app/m/support/SupportCharge/index.html +26 -26
  263. package/app/m/support/SupportCompensation/index.html +26 -26
  264. package/app/m/support/SupportCompensationPlan/index.html +26 -26
  265. package/app/m/support/SupportEscalation/index.html +26 -26
  266. package/app/m/support/SupportInteraction/index.html +26 -26
  267. package/app/m/support/SupportPlan/index.html +26 -26
  268. package/app/m/support/SupportPolicy/index.html +26 -26
  269. package/app/m/support/SupportQualification/index.html +26 -26
  270. package/app/m/support/SupportServiceTarget/index.html +26 -26
  271. package/app/m/support/SupportSpecialist/index.html +26 -26
  272. package/app/m/support/SupportWorkLink/index.html +26 -26
  273. package/app/m/tags/Tag/index.html +26 -26
  274. package/app/m/tags/TagAlias/index.html +26 -26
  275. package/app/m/timesheets/AttendanceBreak/index.html +26 -26
  276. package/app/m/timesheets/AttendancePunch/index.html +26 -26
  277. package/app/m/timesheets/AttendanceSegment/index.html +26 -26
  278. package/app/m/timesheets/ServiceChargeSnapshot/index.html +26 -26
  279. package/app/m/timesheets/ServiceCompensationSnapshot/index.html +26 -26
  280. package/app/m/timesheets/ServiceTimeEntry/index.html +26 -26
  281. package/app/m/users/Group/index.html +26 -26
  282. package/app/m/users/GroupMember/index.html +26 -26
  283. package/app/m/users/GroupRole/index.html +26 -26
  284. package/app/m/users/Membership/index.html +26 -26
  285. package/app/m/users/MembershipOverride/index.html +26 -26
  286. package/app/m/users/Permission/index.html +26 -26
  287. package/app/m/users/Role/index.html +26 -26
  288. package/app/m/users/RolePermission/index.html +26 -26
  289. package/app/m/users/Session/index.html +26 -26
  290. package/app/m/users/Tenant/index.html +26 -26
  291. package/app/m/users/TenantIntegration/index.html +26 -26
  292. package/app/m/users/TenantPermissionOverride/index.html +26 -26
  293. package/app/m/users/User/index.html +26 -26
  294. package/app/m/video/Character/index.html +26 -26
  295. package/app/m/video/CharacterAsset/index.html +26 -26
  296. package/app/m/video/CompositeJob/index.html +26 -26
  297. package/app/m/video/Performer/index.html +26 -26
  298. package/app/m/video/PerformerAsset/index.html +26 -26
  299. package/app/m/video/Scene/index.html +26 -26
  300. package/app/m/video/SceneAsset/index.html +26 -26
  301. package/app/m/video/VideoComposition/index.html +26 -26
  302. package/app/m/video/VideoCompositionAsset/index.html +26 -26
  303. package/app/m/video/VideoSequence/index.html +26 -26
  304. package/app/m/video/VideoSequenceAsset/index.html +26 -26
  305. package/app/m/video/VideoShot/index.html +26 -26
  306. package/app/m/video/VideoShotAsset/index.html +26 -26
  307. package/app/m/video/VideoShotCharacter/index.html +26 -26
  308. package/app/m/video/VideoWorkflow/index.html +26 -26
  309. package/app/m/voice/VoiceOutput/index.html +26 -26
  310. package/app/m/voice/VoiceProfile/index.html +26 -26
  311. package/app/m/voice/VoiceSample/index.html +26 -26
  312. package/app/mcp.html +2 -2
  313. package/app/packages/ads/index.html +24 -24
  314. package/app/packages/analytics/index.html +24 -24
  315. package/app/packages/approvals/index.html +24 -24
  316. package/app/packages/assets/index.html +24 -24
  317. package/app/packages/chat/index.html +24 -24
  318. package/app/packages/comments/index.html +24 -24
  319. package/app/packages/commerce/index.html +24 -24
  320. package/app/packages/content/index.html +24 -24
  321. package/app/packages/events/index.html +24 -24
  322. package/app/packages/expenses/index.html +24 -24
  323. package/app/packages/facts/index.html +24 -24
  324. package/app/packages/fields/index.html +24 -24
  325. package/app/packages/human-resources/index.html +24 -24
  326. package/app/packages/images/index.html +24 -24
  327. package/app/packages/index.html +24 -24
  328. package/app/packages/ingestion/index.html +24 -24
  329. package/app/packages/inventory/index.html +24 -24
  330. package/app/packages/ledgers/index.html +24 -24
  331. package/app/packages/manufacturing/index.html +24 -24
  332. package/app/packages/marketing/index.html +24 -24
  333. package/app/packages/messages/index.html +24 -24
  334. package/app/packages/places/index.html +24 -24
  335. package/app/packages/preferences/index.html +24 -24
  336. package/app/packages/products/index.html +24 -24
  337. package/app/packages/profiles/index.html +24 -24
  338. package/app/packages/projects/index.html +24 -24
  339. package/app/packages/properties/index.html +24 -24
  340. package/app/packages/reports/index.html +24 -24
  341. package/app/packages/sales/index.html +24 -24
  342. package/app/packages/sites/index.html +24 -24
  343. package/app/packages/social/index.html +24 -24
  344. package/app/packages/subscriptions/index.html +24 -24
  345. package/app/packages/support/index.html +24 -24
  346. package/app/packages/tags/index.html +24 -24
  347. package/app/packages/timesheets/index.html +24 -24
  348. package/app/packages/users/index.html +24 -24
  349. package/app/packages/video/index.html +24 -24
  350. package/app/packages/voice/index.html +24 -24
  351. package/app/packages/webhooks/index.html +24 -24
  352. package/app/recipes/account-access/help/index.html +25 -25
  353. package/app/recipes/account-access/index.html +28 -28
  354. package/app/recipes/activity/help/index.html +25 -25
  355. package/app/recipes/activity/index.html +28 -28
  356. package/app/recipes/agreements/help/index.html +25 -25
  357. package/app/recipes/agreements/index.html +28 -28
  358. package/app/recipes/analytics.reports/help/index.html +25 -25
  359. package/app/recipes/analytics.reports/index.html +28 -28
  360. package/app/recipes/assets/help/index.html +25 -25
  361. package/app/recipes/assets/index.html +28 -28
  362. package/app/recipes/billing/help/index.html +25 -25
  363. package/app/recipes/billing/index.html +28 -28
  364. package/app/recipes/chat.assistant/help/index.html +25 -25
  365. package/app/recipes/chat.assistant/index.html +28 -28
  366. package/app/recipes/comments/help/index.html +25 -25
  367. package/app/recipes/comments/index.html +28 -28
  368. package/app/recipes/commerce.customers/help/index.html +25 -25
  369. package/app/recipes/commerce.customers/index.html +28 -28
  370. package/app/recipes/commerce.estimates/help/index.html +25 -25
  371. package/app/recipes/commerce.estimates/index.html +28 -28
  372. package/app/recipes/commerce.purchases/help/index.html +25 -25
  373. package/app/recipes/commerce.purchases/index.html +28 -28
  374. package/app/recipes/commerce.sales/help/index.html +25 -25
  375. package/app/recipes/commerce.sales/index.html +28 -28
  376. package/app/recipes/commerce.vendors/help/index.html +25 -25
  377. package/app/recipes/commerce.vendors/index.html +28 -28
  378. package/app/recipes/commerce.wholesale/help/index.html +25 -25
  379. package/app/recipes/commerce.wholesale/index.html +28 -28
  380. package/app/recipes/events.calendar/help/index.html +25 -25
  381. package/app/recipes/events.calendar/index.html +28 -28
  382. package/app/recipes/expenses.tracking/help/index.html +25 -25
  383. package/app/recipes/expenses.tracking/index.html +28 -28
  384. package/app/recipes/fields.form-customization/help/index.html +25 -25
  385. package/app/recipes/fields.form-customization/index.html +28 -28
  386. package/app/recipes/ingestion/help/index.html +25 -25
  387. package/app/recipes/ingestion/index.html +28 -28
  388. package/app/recipes/integrations/help/index.html +25 -25
  389. package/app/recipes/integrations/index.html +28 -28
  390. package/app/recipes/inventory.stock/help/index.html +25 -25
  391. package/app/recipes/inventory.stock/index.html +28 -28
  392. package/app/recipes/ledgers.bookkeeping/help/index.html +25 -25
  393. package/app/recipes/ledgers.bookkeeping/index.html +28 -28
  394. package/app/recipes/messages/help/index.html +25 -25
  395. package/app/recipes/messages/index.html +28 -28
  396. package/app/recipes/products/help/index.html +25 -25
  397. package/app/recipes/products/index.html +28 -28
  398. package/app/recipes/projects.tracker/help/index.html +25 -25
  399. package/app/recipes/projects.tracker/index.html +28 -28
  400. package/app/recipes/reports.materialized/help/index.html +25 -25
  401. package/app/recipes/reports.materialized/index.html +28 -28
  402. package/app/recipes/reports.runtime/help/index.html +25 -25
  403. package/app/recipes/reports.runtime/index.html +28 -28
  404. package/app/recipes/sales.pipeline/help/index.html +25 -25
  405. package/app/recipes/sales.pipeline/index.html +28 -28
  406. package/app/recipes/tags.taxonomy/help/index.html +25 -25
  407. package/app/recipes/tags.taxonomy/index.html +28 -28
  408. package/app/recipes/team-collaboration/help/index.html +25 -25
  409. package/app/recipes/team-collaboration/index.html +28 -28
  410. package/app/recipes/timesheets.time-entries/help/index.html +25 -25
  411. package/app/recipes/timesheets.time-entries/index.html +28 -28
  412. package/app/s/custom-accounts/index.html +23 -23
  413. package/app/s/custom-appointments/index.html +23 -23
  414. package/app/s/custom-billing/index.html +23 -23
  415. package/app/s/custom-bookings/index.html +82 -0
  416. package/app/s/custom-buying/index.html +23 -23
  417. package/app/s/custom-checkout/index.html +23 -23
  418. package/app/s/custom-classes/index.html +23 -23
  419. package/app/s/custom-clients/index.html +23 -23
  420. package/app/s/custom-events/index.html +23 -23
  421. package/app/s/custom-fleet/index.html +23 -23
  422. package/app/s/custom-gigs/index.html +82 -0
  423. package/app/s/custom-giving/index.html +23 -23
  424. package/app/s/custom-instruments/index.html +82 -0
  425. package/app/s/custom-jobs/index.html +23 -23
  426. package/app/s/custom-kitchen/index.html +23 -23
  427. package/app/s/custom-lessons/index.html +82 -0
  428. package/app/s/custom-material/index.html +23 -23
  429. package/app/s/custom-meetings/index.html +23 -23
  430. package/app/s/custom-members/index.html +23 -23
  431. package/app/s/custom-merch/index.html +82 -0
  432. package/app/s/custom-money/index.html +82 -0
  433. package/app/s/custom-paint/index.html +23 -23
  434. package/app/s/custom-parts/index.html +23 -23
  435. package/app/s/custom-rentals/index.html +23 -23
  436. package/app/s/custom-roastery/index.html +23 -23
  437. package/app/s/custom-schedule/index.html +23 -23
  438. package/app/s/custom-shelf/index.html +23 -23
  439. package/app/s/custom-shop/index.html +23 -23
  440. package/app/s/custom-students/index.html +82 -0
  441. package/app/s/custom-wholesale/index.html +23 -23
  442. package/app/s/custom-work/index.html +23 -23
  443. package/app/s/custom-yard/index.html +23 -23
  444. package/app/s/section-access-control/index.html +23 -23
  445. package/app/s/section-account-security/index.html +23 -23
  446. package/app/s/section-accounting/index.html +23 -23
  447. package/app/s/section-activity/index.html +23 -23
  448. package/app/s/section-agreements/index.html +23 -23
  449. package/app/s/section-analytics/index.html +23 -23
  450. package/app/s/section-assets/index.html +23 -23
  451. package/app/s/section-billing/index.html +23 -23
  452. package/app/s/section-calendar/index.html +23 -23
  453. package/app/s/section-catalog/index.html +23 -23
  454. package/app/s/section-chat.assistant/index.html +23 -23
  455. package/app/s/section-comments/index.html +23 -23
  456. package/app/s/section-fields.form-customization/index.html +23 -23
  457. package/app/s/section-ingestion/index.html +23 -23
  458. package/app/s/section-integrations/index.html +23 -23
  459. package/app/s/section-messages/index.html +23 -23
  460. package/app/s/section-more/index.html +23 -23
  461. package/app/s/section-operations/index.html +23 -23
  462. package/app/s/section-projects/index.html +23 -23
  463. package/app/s/section-purchasing/index.html +23 -23
  464. package/app/s/section-reports.materialized/index.html +23 -23
  465. package/app/s/section-reports.runtime/index.html +23 -23
  466. package/app/s/section-sales/index.html +23 -23
  467. package/app/s/section-taxonomy/index.html +23 -23
  468. package/app/s/section-team/index.html +23 -23
  469. package/app/s/section-work/index.html +23 -23
  470. package/dist/catalog/catalog.json +50 -38
  471. package/dist/components/ThemeBridge.svelte +2 -2
  472. package/dist/data/packs.d.ts.map +1 -1
  473. package/dist/data/packs.js +415 -0
  474. package/dist/library/icons.d.ts.map +1 -1
  475. package/dist/library/icons.js +10 -0
  476. package/dist/library/library.json +506 -0
  477. package/dist/smrt-version.d.ts +1 -1
  478. package/dist/smrt-version.js +1 -1
  479. package/package.json +56 -56
  480. package/app/_app/immutable/assets/AppShell.Dnc9PAvY.css +0 -1
  481. package/app/_app/immutable/assets/labels.DrQMsG17.css +0 -1
  482. package/app/_app/immutable/chunks/9pRTae44.js +0 -1
  483. package/app/_app/immutable/chunks/BMRtN-eN.js +0 -4
  484. package/app/_app/immutable/chunks/Bc_SIIIS.js +0 -1
  485. package/app/_app/immutable/chunks/C7z2g6fG.js +0 -1
  486. package/app/_app/immutable/chunks/D7t4xFw6.js +0 -4
  487. package/app/_app/immutable/entry/start.DnB4rZdO.js +0 -1
package/app/index.html CHANGED
@@ -3,43 +3,43 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <link href="./_app/immutable/entry/start.DnB4rZdO.js" rel="modulepreload">
7
- <link href="./_app/immutable/chunks/Burj9UYU.js" rel="modulepreload">
6
+ <link href="./_app/immutable/entry/start.C01jT-Kj.js" rel="modulepreload">
7
+ <link href="./_app/immutable/chunks/D31rqKs1.js" rel="modulepreload">
8
8
  <link href="./_app/immutable/chunks/DG3qFFTE.js" rel="modulepreload">
9
9
  <link href="./_app/immutable/chunks/COiEfhsA.js" rel="modulepreload">
10
10
  <link href="./_app/immutable/chunks/Dt-HX3Vu.js" rel="modulepreload">
11
- <link href="./_app/immutable/entry/app.C-mGsUDb.js" rel="modulepreload">
11
+ <link href="./_app/immutable/entry/app.C_C191oT.js" rel="modulepreload">
12
12
  <link href="./_app/immutable/chunks/uBIymjUX.js" rel="modulepreload">
13
13
  <link href="./_app/immutable/chunks/xihTtKlq.js" rel="modulepreload">
14
- <link href="./_app/immutable/nodes/0.CG8nFTeW.js" rel="modulepreload">
14
+ <link href="./_app/immutable/nodes/0._tbUx7Ky.js" rel="modulepreload">
15
15
  <link href="./_app/immutable/chunks/Bv5jGtB8.js" rel="modulepreload">
16
16
  <link href="./_app/immutable/chunks/YUSKx8_q.js" rel="modulepreload">
17
- <link href="./_app/immutable/chunks/gnVUq1Tr.js" rel="modulepreload">
17
+ <link href="./_app/immutable/chunks/CoXf-L_3.js" rel="modulepreload">
18
18
  <link href="./_app/immutable/chunks/DK8Blf1Y.js" rel="modulepreload">
19
- <link href="./_app/immutable/chunks/BMRtN-eN.js" rel="modulepreload">
19
+ <link href="./_app/immutable/chunks/CdBvpdnq.js" rel="modulepreload">
20
20
  <link href="./_app/immutable/chunks/M-CuJzQN.js" rel="modulepreload">
21
- <link href="./_app/immutable/chunks/9pRTae44.js" rel="modulepreload">
22
- <link href="./_app/immutable/chunks/DEwvWTFM.js" rel="modulepreload">
21
+ <link href="./_app/immutable/chunks/DIE02RSm.js" rel="modulepreload">
22
+ <link href="./_app/immutable/chunks/eNZ3ToP2.js" rel="modulepreload">
23
23
  <link href="./_app/immutable/chunks/CUyVrfsu.js" rel="modulepreload">
24
24
  <link href="./_app/immutable/chunks/gMSmS-_y.js" rel="modulepreload">
25
25
  <link href="./_app/immutable/chunks/BYcBM-fh.js" rel="modulepreload">
26
- <link href="./_app/immutable/chunks/XlsfHlOd.js" rel="modulepreload">
27
- <link href="./_app/immutable/chunks/C7z2g6fG.js" rel="modulepreload">
28
- <link href="./_app/immutable/chunks/Bc_SIIIS.js" rel="modulepreload">
29
- <link href="./_app/immutable/chunks/CdPJK-gf.js" rel="modulepreload">
26
+ <link href="./_app/immutable/chunks/D2Ykv2Y3.js" rel="modulepreload">
27
+ <link href="./_app/immutable/chunks/GVQNHDp5.js" rel="modulepreload">
28
+ <link href="./_app/immutable/chunks/DzRTyOpH.js" rel="modulepreload">
29
+ <link href="./_app/immutable/chunks/D8rEUyzO.js" rel="modulepreload">
30
30
  <link href="./_app/immutable/chunks/d934w91N.js" rel="modulepreload">
31
31
  <link href="./_app/immutable/chunks/D_U_DYjx.js" rel="modulepreload">
32
- <link href="./_app/immutable/chunks/DCr75fDJ.js" rel="modulepreload">
33
- <link href="./_app/immutable/chunks/8vF2REci.js" rel="modulepreload">
34
- <link href="./_app/immutable/chunks/D8D_RStZ.js" rel="modulepreload">
35
- <link href="./_app/immutable/chunks/Ckc_1feF.js" rel="modulepreload">
36
- <link href="./_app/immutable/chunks/VCg3x54j.js" rel="modulepreload">
32
+ <link href="./_app/immutable/chunks/ORlJSBRk.js" rel="modulepreload">
33
+ <link href="./_app/immutable/chunks/Dyf3Cj8R.js" rel="modulepreload">
34
+ <link href="./_app/immutable/chunks/exPME6UK.js" rel="modulepreload">
35
+ <link href="./_app/immutable/chunks/DypPefJO.js" rel="modulepreload">
36
+ <link href="./_app/immutable/chunks/BPsie9Wr.js" rel="modulepreload">
37
37
  <link href="./_app/immutable/chunks/BMgzWMdF.js" rel="modulepreload">
38
38
  <link href="./_app/immutable/chunks/CgAkqYsL.js" rel="modulepreload">
39
- <link href="./_app/immutable/nodes/2.DR5lKFBV.js" rel="modulepreload">
40
- <link href="./_app/immutable/chunks/A_IpJrNN.js" rel="modulepreload">
41
- <link href="./_app/immutable/chunks/BhsxCKaI.js" rel="modulepreload">
42
- <link href="./_app/immutable/chunks/CztFAhpp.js" rel="modulepreload">
39
+ <link href="./_app/immutable/nodes/2.GYBHfqdI.js" rel="modulepreload">
40
+ <link href="./_app/immutable/chunks/jol435F5.js" rel="modulepreload">
41
+ <link href="./_app/immutable/chunks/CdlkzC7D.js" rel="modulepreload">
42
+ <link href="./_app/immutable/chunks/BSYvnYu8.js" rel="modulepreload">
43
43
  <!--1vy8ks8--><!----><style id="smrt-cascade-layers">@layer smrt.reset, smrt.structure, smrt.theme;</style><!----><!----><!--1uha8ag--><!----><title>Planner · smrt planner</title>
44
44
  <link href="./_app/immutable/assets/feedback.qFktqYFY.css" rel="stylesheet">
45
45
  <link href="./_app/immutable/assets/currency-metadata.ksbBA8-C.css" rel="stylesheet">
@@ -48,7 +48,7 @@
48
48
  <link href="./_app/immutable/assets/webmcp-ui-context.hO24Ni5w.css" rel="stylesheet">
49
49
  <link href="./_app/immutable/assets/data.CVlX_W0i.css" rel="stylesheet">
50
50
  <link href="./_app/immutable/assets/forms.DXOeP4wZ.css" rel="stylesheet">
51
- <link href="./_app/immutable/assets/AppShell.Dnc9PAvY.css" rel="stylesheet">
51
+ <link href="./_app/immutable/assets/AppShell.DrL8T9I9.css" rel="stylesheet">
52
52
  <link href="./_app/immutable/assets/workspace.C40zM0Mb.css" rel="stylesheet">
53
53
  <link href="./_app/immutable/assets/SectionIcons.BGFcFuOf.css" rel="stylesheet">
54
54
  <link href="./_app/immutable/assets/SectionActions.BE1CPmxk.css" rel="stylesheet">
@@ -58,9 +58,9 @@
58
58
  <link href="./_app/immutable/assets/2.CdEXvRg0.css" rel="stylesheet">
59
59
  </head>
60
60
  <body data-sveltekit-preload-data="hover">
61
- <div style="display: contents"><!--[--><!--[0--><!--[--><!--[-1--><!--]--> <div class="shell-host svelte-12qhfyh"><!--[-1--><!--]--> <!----> <div class="smrt-theme-root svelte-1vy8ks8" data-theme="smrt" data-color-scheme="light" data-contrast="standard" data-smrt-component="ThemeProvider"><!--[-1--><div class="smrt-admin-shell svelte-1ifuk0b" data-top-state="collapsed" data-left-state="expanded" data-right-state="collapsed" data-bottom-state="hidden" data-viewport="desktop" data-bottom-bar="none" style="--smrt-admin-shell-left-track: 16rem; --smrt-admin-shell-right-track: 0rem; --smrt-admin-shell-top-track: 3.5rem; --smrt-admin-shell-bottom-track: 0rem; --smrt-admin-shell-left-collapsed: 4.25rem; --smrt-admin-shell-right-collapsed: 0rem; --smrt-admin-shell-left-expanded: 16rem; --smrt-admin-shell-right-expanded: 20rem; --smrt-admin-shell-top-expanded: 18rem; --smrt-admin-shell-bottom-expanded: 18rem; --smrt-admin-shell-bottom-track: 0rem; --smrt-admin-shell-right-track: 0rem; --smrt-admin-shell-header-track: 0rem; --smrt-admin-shell-phone-bar-track: 0rem; --smrt-shell-floating-reserve-inline: 0px; --smrt-shell-floating-reserve-block: 0px; --smrt-shell-floating-reserve-main: 0px" data-smrt-component="AdminShell"><!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><header id="smrt-admin-shell-top-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--top svelte-1ifuk0b" data-state="collapsed" data-presentation="overlay" style="--smrt-admin-shell-edge-columns: 0px minmax(0, 1fr) 0px;"><!--[-1--><!--]--> <div class="smrt-admin-shell__band smrt-admin-shell__band--top svelte-1ifuk0b" style="--smrt-admin-shell-band-column: 2;"><!--[-1--><!--[-1--><!--]--> <!--[-1--><!--]--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-opener svelte-1ifuk0b"><button type="button" class="smrt-admin-shell__chrome-button svelte-1ifuk0b" data-smrt-part="trigger" aria-label="Menu" title="Menu" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel"><svg viewBox="0 0 24 24" width="20" height="20" fill="currentColor" aria-hidden="true" focusable="false"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></svg></button><!----></div><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-start svelte-1ifuk0b" data-slot="header.start"><!--[--><!--[--><!--[1--><!--[0--><a class="smrt-admin-shell__brand smrt-admin-shell__brand-link svelte-r3uxsf" href="./" aria-label="Planner"><!--[-1--><!--[0--><img class="smrt-admin-shell__logo svelte-r3uxsf" src="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20128%20128'%20role='img'%3e%3cdefs%3e%3clinearGradient%20id='flame'%20x1='26'%20y1='16'%20x2='101'%20y2='112'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23f05b2b'/%3e%3cstop%20offset='1'%20stop-color='%23c9381e'/%3e%3c/linearGradient%3e%3clinearGradient%20id='heat'%20x1='51'%20y1='49'%20x2='72'%20y2='111'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23ffd33d'/%3e%3cstop%20offset='1'%20stop-color='%23f2a817'/%3e%3c/linearGradient%3e%3c/defs%3e%3cpath%20fill='url(%23flame)'%20d='M64%205c-3%2018-15%2026-13%2043-9-5-13-13-13-22C20%2043%2015%2062%2022%2082c7%2022%2023%2037%2042%2041%2022-4%2039-21%2043-43%203-17-3-32-18-45%202%2011%200%2018-6%2025C84%2036%2075%2019%2064%205Z'%20/%3e%3cpath%20fill='url(%23heat)'%20d='M64%2045c-2%2015-14%2022-13%2038-5-4-8-9-9-15-7%2010-8%2020-4%2030%205%2012%2014%2020%2026%2023%2013-3%2023-12%2027-25%203-11%200-20-8-29%200%207-2%2012-6%2016%201-16-5-27-13-38Z'%20/%3e%3c!--%20The%20glasses%20render%20as%20two%20stacked%20stroke%20groups:%20a%20pale%20warm%20casing%20under%20a%20dark%20warm-charcoal%20stroke.%20The%20casing%20keeps%20the%20dark%20strokes%20legible%20where%20they%20leave%20the%20flame%20body%20(temple%20tips,%20lower%20rims)%20on%20dark%20backgrounds,%20and%20reads%20as%20a%20rim%20light%20against%20the%20flame%20on%20light%20ones.%20--%3e%3cg%20fill='none'%20stroke='%23ffe3ae'%20stroke-opacity='0.85'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20stroke-width='14'%20d='M7%2063c12-4%2027-5%2043-1M78%2062c16-4%2031-3%2043%201'/%3e%3crect%20x='12'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='14'/%3e%3crect%20x='70'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='14'/%3e%3cpath%20stroke-width='13'%20d='M57%2066c5-4%209-4%2014%200'/%3e%3c/g%3e%3cg%20fill='none'%20stroke='%2333221b'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20stroke-width='8'%20d='M7%2063c12-4%2027-5%2043-1M78%2062c16-4%2031-3%2043%201'/%3e%3crect%20x='12'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='8'/%3e%3crect%20x='70'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='8'/%3e%3cpath%20stroke-width='7'%20d='M57%2066c5-4%209-4%2014%200'/%3e%3c/g%3e%3c/svg%3e" alt=""/><!--]--> <!--[-1--><div class="smrt-admin-shell__brand-text svelte-r3uxsf wordmark"><strong class="svelte-r3uxsf">Planner</strong><!--[-1--><!--]--></div><!--]--><!--]--><!----></a><!--]--><!----><!--]--><!--[1--><span class="smrt-layout-toggle svelte-1pgtgoi" data-testid="layout-edit-toggle"><button type="button" class="smrt-shell-icon-button svelte-1mggjot" aria-label="Edit layout" title="Edit layout" aria-pressed="false" data-smrt-component="ShellIconButton"><!--[1--><svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></svg><!--]--></button><!----></span><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-center svelte-1ifuk0b" data-slot="header.center"><!--[--><!--[--><!--[1--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__ghost smrt-button__sm smrt-command-palette-trigger svelte-1yq1ej5" aria-label="Search" aria-haspopup="dialog" aria-expanded="false" aria-keyshortcuts="Control+K Meta+K" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><svg viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"></circle><path d="m20 20-3.5-3.5"></path></svg> <!--[0--><span class="smrt-command-palette-trigger__label svelte-122kczf">Search</span> <!--[0--><kbd class="smrt-command-palette-trigger__hint svelte-122kczf">Ctrl+K</kbd><!--]--><!--]--><!----></span></button><!--]--><!--]--> <!--$s1--><dialog class="modal modal--md modal--center svelte-1ebmadl" aria-label="Search" data-smrt-component="Modal"><div class="modal__container svelte-1ebmadl"><!--[-1--><!--]--> <div class="modal__body svelte-1ebmadl" data-smrt-part="body"><!--[0--><div class="smrt-command-palette svelte-c516pr"><div class="smrt-command-palette__field svelte-c516pr"><svg class="smrt-command-palette__search-icon svelte-c516pr" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"></circle><path d="m20 20-3.5-3.5"></path></svg> <input type="text" value="" placeholder="Search or run a command" aria-label="Search" class="smrt-input__root smrt-command-palette__input svelte-zo4qku" role="combobox" aria-expanded="false" aria-controls="smrt-palette-list-s1" aria-autocomplete="list" autocomplete="off" autocapitalize="off" spellcheck="false" enterkeyhint="go" data-smrt-component="Input"/><!----></div> <div class="smrt-command-palette__list svelte-c516pr" id="smrt-palette-list-s1" role="listbox" aria-label="Results" aria-busy="false"><!--[--><!--]--></div> <!--[0--><p class="smrt-command-palette__empty svelte-c516pr"></p><!--]--> <div class="smrt-command-palette__hints svelte-c516pr" aria-hidden="true"><span><kbd class="svelte-c516pr">↑</kbd><kbd class="svelte-c516pr">↓</kbd> to move</span> <span><kbd class="svelte-c516pr">↵</kbd> to select</span> <span><kbd class="svelte-c516pr">Esc</kbd> to close</span></div> <div class="smrt-command-palette__live svelte-c516pr" role="status" aria-live="polite"></div></div><!----><!--]--></div> <!--[-1--><!--]--></div></dialog><!----><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-end svelte-1ifuk0b" data-slot="header.end"><!--[--><!--[--><!--[1--><a class="header-link svelte-d0fjw8" href="./" aria-label="Plan the app" title="Plan the app" aria-current="page" style="--smrt-header-icon-link-transition-name: planner-customize;"><svg xmlns="http://www.w3.org/2000/svg" width="18px" height="18px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M4 9.5a3.5 3.5 0 1 1 7 0a3.5 3.5 0 1 1-7 0zM13 9.5a3.5 3.5 0 1 1 7 0a3.5 3.5 0 1 1-7 0zM8 7a4 4 0 1 1 8 0a4 4 0 1 1-8 0zM6 9.5h12V15H6zM7 16.5h10a1 1 0 0 1 1 1V19a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-1.5a1 1 0 0 1 1-1z"></path></svg><!----></a><!----><!--]--><!--[1--><a class="header-link svelte-d0fjw8" href="./?tab=export" aria-label="Export the app" title="Export the app" style="--smrt-header-icon-link-transition-name: planner-export;"><svg xmlns="http://www.w3.org/2000/svg" width="18px" height="18px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M11 3h2v9l4-4 1.5 1.5L12 16l-6.5-6.5L7 8l4 4V3zM3 18h18v3H3v-3z"></path></svg><!----></a><!----><!--]--><!--[0--><!--[0--><div class="smrt-dock-toggles svelte-1u9e85z" data-testid="dock-toggles"><!--[--><!--[0--><a class="smrt-dock-toggles__button svelte-1u9e85z" href="./ai/" data-dock-tool="assistant" aria-label="Set up the assistant" title="Set up the assistant"><!--[0--><svg viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 11.5a8.5 8.5 0 0 1-12.4 7.5L3 20.5l1.6-5A8.5 8.5 0 1 1 21 11.5z"></path></svg><!--]--><!----></a><!--]--><!--]--></div><!--]--><!--]--><!--[1--><span class="smrt-app-shell-color-scheme svelte-1pgtgoi"><div class="smrt-color-scheme-toggle switch svelte-1cz5wqt" data-smrt-component="ColorSchemeToggle"><!--[0--><button class="smrt-color-scheme-toggle__switch svelte-1cz5wqt" type="button" aria-label="Toggle color scheme" title="Light"><!--[-1--><span class="smrt-color-scheme-toggle__icon svelte-1cz5wqt">☀️</span><!--]--> <!--[0--><span class="smrt-color-scheme-toggle__label svelte-1cz5wqt">Light</span><!--]--></button><!--]--></div><!----></span><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><!--]--><!----></div> <!--[-1--><!--]--> <!--[-1--><!--]--></header><!--]--> <!--[-1--><!--]--><!----> <!--[0--><aside id="smrt-admin-shell-left-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--left svelte-1ifuk0b" data-state="expanded" data-presentation="push" aria-label="Left sidebar"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__rail svelte-1ifuk0b"><!--[-1--><!--]--><!----> <!--[-1--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-stack svelte-1ifuk0b"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__tenant-content svelte-1ifuk0b"><!--[0--><!--[-1--><!--]--><!----><!--]--></div> <!--[0--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__ghost smrt-button__sm smrt-admin-shell__edge-toggle smrt-admin-shell__edge-toggle--left svelte-1yq1ej5" aria-label="Collapse sidebar" title="Collapse sidebar" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><svg class="smrt-admin-shell__edge-toggle-chevron" viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></svg><!--[-1--><!--]--><!----><!----></span></button><!--]--><!--]--><!--]--> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--leftSidebar-footer svelte-1ifuk0b" data-slot="leftSidebar.footer"><!--[--><!--[--><!--[1--><div class="ai-status svelte-nioco2" role="group" aria-label="AI models"><!--[--><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Think: not set up" title="Think: not set up"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M11 4.2C10.4 3 8.6 2.8 7.6 3.8C6.2 3.6 5 4.8 5.2 6.1C3.8 6.6 3.3 8.2 4.1 9.3C3 10.2 3 11.9 4 12.8C3.6 14.2 4.4 15.6 5.8 15.9C6.2 17.3 7.6 18.2 9 17.9C9.7 19.2 11 19.6 11 19.6ZM13 4.2 C13.6 3 15.4 2.8 16.4 3.8 C17.8 3.6 19 4.8 18.8 6.1 C20.2 6.6 20.7 8.2 19.9 9.3 C21 10.2 21 11.9 20 12.8 C20.4 14.2 19.6 15.6 18.2 15.9 C17.8 17.3 16.4 18.2 15 17.9 C14.3 19.2 13 19.6 13 19.6 ZM10.2 7.4C8.6 7.8 7.5 7 7 6.2L7.7 5.8C8.2 6.5 9 6.8 10 6.5ZM10.3 11C8.4 11.6 6.6 10.8 5.9 9.6L6.6 9.2C7.2 10.2 8.6 10.7 10.1 10.2ZM10.2 15C8.5 15.6 6.8 15 6 13.9L6.7 13.5C7.4 14.3 8.6 14.6 10 14.2ZM13.8 7.4 C15.4 7.8 16.5 7 17 6.2 L16.3 5.8 C15.8 6.5 15 6.8 14 6.5 ZM13.7 11 C15.6 11.6 17.4 10.8 18.1 9.6 L17.4 9.2 C16.8 10.2 15.4 10.7 13.9 10.2 ZM13.8 15 C15.5 15.6 17.2 15 18 13.9 L17.3 13.5 C16.6 14.3 15.4 14.6 14 14.2 Z"></path></svg><!----></a><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Hear: not set up" title="Hear: not set up"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M17 20c-.29 0-.56-.06-.76-.15-.71-.37-1.21-.88-1.71-2.38-.51-1.56-1.47-2.29-2.39-3-.79-.61-1.61-1.24-2.32-2.53C9.29 10.98 9 9.93 9 9c0-2.8 2.2-5 5-5s5 2.2 5 5h2c0-3.93-3.07-7-7-7S7 5.07 7 9c0 1.26.38 2.65 1.07 3.9.91 1.65 1.98 2.48 2.85 3.15.81.62 1.39 1.07 1.71 2.05.6 1.82 1.37 2.84 2.73 3.55.51.23 1.07.35 1.64.35 2.21 0 4-1.79 4-4h-2c0 1.1-.9 2-2 2zM7.64 2.64L6.22 1.22C4.23 3.21 3 5.96 3 9s1.23 5.79 3.22 7.78l1.41-1.41C6.01 13.74 5 11.49 5 9s1.01-4.74 2.64-6.36zM11.5 9c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5-1.12-2.5-2.5-2.5-2.5 1.12-2.5 2.5z"></path></svg><!----></a><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Speak: not switched on" title="Speak: not switched on"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M3 9v6h4l5 5V4L7 9H3zm13.5 3c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77s-2.99-7.86-7-8.77z"></path></svg><!----></a><!--]--></div><!----><!--]--><!--[1--><!--$s2--><div class="smrt-workspace-account-menu svelte-1703h4r" title="You" data-smrt-component="WorkspaceAccountMenu"><button type="button" class="smrt-workspace-account-menu__trigger svelte-1703h4r" data-smrt-part="trigger" aria-haspopup="menu" aria-expanded="false" disabled=""><span class="smrt-workspace-account-menu__open svelte-1703h4r">Open account menu</span> <span class="avatar sm svelte-3d1ux4" aria-hidden="true" data-smrt-component="Avatar"><!--[-1--><span class="avatar__initials svelte-3d1ux4" role="img" aria-label="You">YO</span><!--]--> <!--[-1--><!--]--></span><!----> <span class="smrt-workspace-account-menu__identity svelte-1703h4r"><span class="smrt-workspace-account-menu__summary svelte-1703h4r">You</span> <!--[-1--><!--]--></span> <span class="smrt-workspace-account-menu__indicator svelte-1703h4r" aria-hidden="true">•••</span></button> <!--[-1--><!--]--></div><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----></div><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></div></aside><!--]--> <main id="smrt-admin-shell-main" class="smrt-admin-shell__main svelte-1ifuk0b"><div class="smrt-layout-live svelte-1pgtgoi" role="status" aria-live="polite"></div> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><!--[0--><!----><!--]--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!----> <span hidden="" data-smrt-planner-anchor=""></span><!----> <!--[--><main class="svelte-1uha8ag"><!--[-1--><!--[0--><!--]--> <!--[0--><div class="planner svelte-zuxcuo"><!--$s3--><!--[-1--><div class="smrt-tabs__container svelte-19k21oo" data-smrt-component="Tabs"><div class="smrt-tabs__nav svelte-19k21oo" data-smrt-part="list" role="tablist" aria-label="Planner"><!--[--><button type="button" class="smrt-tabs__tab-button svelte-19k21oo smrt-tabs__active" data-smrt-part="tab" role="tab" id="tab-s3-cookbooks" aria-selected="true" aria-controls="tab-panel-s3" tabindex="0" data-tab-id="cookbooks"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Cookbooks</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-recipes" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="recipes"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Recipes</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-theme" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="theme"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Theme</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-settings" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="settings"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Settings</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-export" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="export"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Export</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><!--]--></div> <!--[0--><div class="smrt-tabs__tab-panel svelte-19k21oo" data-smrt-part="panel" role="tabpanel" id="tab-panel-s3" aria-labelledby="tab-s3-cookbooks"><!--[0--><div><div class="cookbooks svelte-mzas8k"><!--[-1--><!--]--> <p class="meta svelte-mzas8k">A cookbook is a ready-made starting point: the recipes, menu and settings a
61
+ <div style="display: contents"><!--[--><!--[0--><!--[--><!--[-1--><!--]--> <div class="shell-host svelte-12qhfyh"><!--[-1--><!--]--> <!----> <div class="smrt-theme-root svelte-1vy8ks8" data-theme="smrt" data-color-scheme="light" data-contrast="standard" data-smrt-component="ThemeProvider"><!--[-1--><div class="smrt-admin-shell svelte-1ifuk0b" data-top-state="collapsed" data-left-state="expanded" data-right-state="collapsed" data-bottom-state="hidden" data-viewport="desktop" data-bottom-bar="none" style="--smrt-admin-shell-left-track: 16rem; --smrt-admin-shell-right-track: 0rem; --smrt-admin-shell-top-track: 3.5rem; --smrt-admin-shell-bottom-track: 0rem; --smrt-admin-shell-left-collapsed: 4.25rem; --smrt-admin-shell-right-collapsed: 0rem; --smrt-admin-shell-left-expanded: 16rem; --smrt-admin-shell-right-expanded: 20rem; --smrt-admin-shell-top-expanded: 18rem; --smrt-admin-shell-bottom-expanded: 18rem; --smrt-admin-shell-bottom-track: 0rem; --smrt-admin-shell-right-track: 0rem; --smrt-admin-shell-header-track: 0rem; --smrt-admin-shell-phone-bar-track: 0rem; --smrt-shell-floating-reserve-inline: 0px; --smrt-shell-floating-reserve-block: 0px; --smrt-shell-floating-reserve-main: 0px" data-smrt-component="AdminShell"><!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><header id="smrt-admin-shell-top-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--top svelte-1ifuk0b" data-state="collapsed" data-presentation="overlay" style="--smrt-admin-shell-edge-columns: 0px minmax(0, 1fr) 0px;"><!--[-1--><!--]--> <div class="smrt-admin-shell__band smrt-admin-shell__band--top svelte-1ifuk0b" style="--smrt-admin-shell-band-column: 2;"><!--[-1--><!--[-1--><!--]--> <!--[-1--><!--]--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-opener svelte-1ifuk0b"><button type="button" class="smrt-admin-shell__chrome-button svelte-1ifuk0b" data-smrt-part="trigger" aria-label="Menu" title="Menu" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel"><svg viewBox="0 0 24 24" width="20" height="20" fill="currentColor" aria-hidden="true" focusable="false"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></svg></button><!----></div><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-start svelte-1ifuk0b" data-slot="header.start"><!--[--><!--[--><!--[1--><!--[0--><a class="smrt-admin-shell__brand smrt-admin-shell__brand-link svelte-r3uxsf" href="./" aria-label="Planner"><!--[-1--><!--[0--><img class="smrt-admin-shell__logo svelte-r3uxsf" src="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20128%20128'%20role='img'%3e%3cdefs%3e%3clinearGradient%20id='flame'%20x1='26'%20y1='16'%20x2='101'%20y2='112'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23f05b2b'/%3e%3cstop%20offset='1'%20stop-color='%23c9381e'/%3e%3c/linearGradient%3e%3clinearGradient%20id='heat'%20x1='51'%20y1='49'%20x2='72'%20y2='111'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23ffd33d'/%3e%3cstop%20offset='1'%20stop-color='%23f2a817'/%3e%3c/linearGradient%3e%3c/defs%3e%3cpath%20fill='url(%23flame)'%20d='M64%205c-3%2018-15%2026-13%2043-9-5-13-13-13-22C20%2043%2015%2062%2022%2082c7%2022%2023%2037%2042%2041%2022-4%2039-21%2043-43%203-17-3-32-18-45%202%2011%200%2018-6%2025C84%2036%2075%2019%2064%205Z'%20/%3e%3cpath%20fill='url(%23heat)'%20d='M64%2045c-2%2015-14%2022-13%2038-5-4-8-9-9-15-7%2010-8%2020-4%2030%205%2012%2014%2020%2026%2023%2013-3%2023-12%2027-25%203-11%200-20-8-29%200%207-2%2012-6%2016%201-16-5-27-13-38Z'%20/%3e%3c!--%20The%20glasses%20render%20as%20two%20stacked%20stroke%20groups:%20a%20pale%20warm%20casing%20under%20a%20dark%20warm-charcoal%20stroke.%20The%20casing%20keeps%20the%20dark%20strokes%20legible%20where%20they%20leave%20the%20flame%20body%20(temple%20tips,%20lower%20rims)%20on%20dark%20backgrounds,%20and%20reads%20as%20a%20rim%20light%20against%20the%20flame%20on%20light%20ones.%20--%3e%3cg%20fill='none'%20stroke='%23ffe3ae'%20stroke-opacity='0.85'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20stroke-width='14'%20d='M7%2063c12-4%2027-5%2043-1M78%2062c16-4%2031-3%2043%201'/%3e%3crect%20x='12'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='14'/%3e%3crect%20x='70'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='14'/%3e%3cpath%20stroke-width='13'%20d='M57%2066c5-4%209-4%2014%200'/%3e%3c/g%3e%3cg%20fill='none'%20stroke='%2333221b'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20stroke-width='8'%20d='M7%2063c12-4%2027-5%2043-1M78%2062c16-4%2031-3%2043%201'/%3e%3crect%20x='12'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='8'/%3e%3crect%20x='70'%20y='58'%20width='46'%20height='35'%20rx='13'%20stroke-width='8'/%3e%3cpath%20stroke-width='7'%20d='M57%2066c5-4%209-4%2014%200'/%3e%3c/g%3e%3c/svg%3e" alt=""/><!--]--> <!--[-1--><div class="smrt-admin-shell__brand-text svelte-r3uxsf wordmark"><strong class="svelte-r3uxsf">Planner</strong><!--[-1--><!--]--></div><!--]--><!--]--><!----></a><!--]--><!----><!--]--><!--[1--><span class="smrt-layout-toggle svelte-1pgtgoi" data-testid="layout-edit-toggle"><button type="button" class="smrt-shell-icon-button svelte-1mggjot" aria-label="Edit layout" title="Edit layout" aria-pressed="false" data-smrt-component="ShellIconButton"><!--[1--><svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></svg><!--]--></button><!----></span><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-center svelte-1ifuk0b" data-slot="header.center"><!--[--><!--[--><!--[1--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__ghost smrt-button__sm smrt-command-palette-trigger svelte-1yq1ej5" aria-label="Search" aria-haspopup="dialog" aria-expanded="false" aria-keyshortcuts="Control+K Meta+K" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><svg viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"></circle><path d="m20 20-3.5-3.5"></path></svg> <!--[0--><span class="smrt-command-palette-trigger__label svelte-122kczf">Search</span> <!--[0--><kbd class="smrt-command-palette-trigger__hint svelte-122kczf">Ctrl+K</kbd><!--]--><!--]--><!----></span></button><!--]--><!--]--> <!--$s1--><dialog class="modal modal--md modal--center svelte-1ebmadl" aria-label="Search" data-smrt-component="Modal"><div class="modal__container svelte-1ebmadl"><!--[-1--><!--]--> <div class="modal__body svelte-1ebmadl" data-smrt-part="body"><!--[0--><div class="smrt-command-palette svelte-c516pr"><div class="smrt-command-palette__field svelte-c516pr"><svg class="smrt-command-palette__search-icon svelte-c516pr" viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false"><circle cx="11" cy="11" r="7"></circle><path d="m20 20-3.5-3.5"></path></svg> <input type="text" value="" placeholder="Search or run a command" aria-label="Search" class="smrt-input__root smrt-command-palette__input svelte-zo4qku" role="combobox" aria-expanded="false" aria-controls="smrt-palette-list-s1" aria-autocomplete="list" autocomplete="off" autocapitalize="off" spellcheck="false" enterkeyhint="go" data-smrt-component="Input"/><!----></div> <div class="smrt-command-palette__list svelte-c516pr" id="smrt-palette-list-s1" role="listbox" aria-label="Results" aria-busy="false"><!--[--><!--]--></div> <!--[0--><p class="smrt-command-palette__empty svelte-c516pr"></p><!--]--> <div class="smrt-command-palette__hints svelte-c516pr" aria-hidden="true"><span><kbd class="svelte-c516pr">↑</kbd><kbd class="svelte-c516pr">↓</kbd> to move</span> <span><kbd class="svelte-c516pr">↵</kbd> to select</span> <span><kbd class="svelte-c516pr">Esc</kbd> to close</span></div> <div class="smrt-command-palette__live svelte-c516pr" role="status" aria-live="polite"></div></div><!----><!--]--></div> <!--[-1--><!--]--></div></dialog><!----><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-end svelte-1ifuk0b" data-slot="header.end"><!--[--><!--[--><!--[1--><a class="header-link svelte-d0fjw8" href="./" aria-label="Plan the app" title="Plan the app" aria-current="page" style="--smrt-header-icon-link-transition-name: planner-customize;"><svg xmlns="http://www.w3.org/2000/svg" width="18px" height="18px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M4 9.5a3.5 3.5 0 1 1 7 0a3.5 3.5 0 1 1-7 0zM13 9.5a3.5 3.5 0 1 1 7 0a3.5 3.5 0 1 1-7 0zM8 7a4 4 0 1 1 8 0a4 4 0 1 1-8 0zM6 9.5h12V15H6zM7 16.5h10a1 1 0 0 1 1 1V19a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-1.5a1 1 0 0 1 1-1z"></path></svg><!----></a><!----><!--]--><!--[1--><a class="header-link svelte-d0fjw8" href="./?tab=export" aria-label="Export the app" title="Export the app" style="--smrt-header-icon-link-transition-name: planner-export;"><svg xmlns="http://www.w3.org/2000/svg" width="18px" height="18px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M11 3h2v9l4-4 1.5 1.5L12 16l-6.5-6.5L7 8l4 4V3zM3 18h18v3H3v-3z"></path></svg><!----></a><!----><!--]--><!--[0--><!--[0--><div class="smrt-dock-toggles svelte-1u9e85z" data-testid="dock-toggles"><!--[--><!--[0--><a class="smrt-dock-toggles__button svelte-1u9e85z" href="./ai/" data-dock-tool="assistant" aria-label="Set up the assistant" title="Set up the assistant"><!--[0--><svg viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 11.5a8.5 8.5 0 0 1-12.4 7.5L3 20.5l1.6-5A8.5 8.5 0 1 1 21 11.5z"></path></svg><!--]--><!----></a><!--]--><!--]--></div><!--]--><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><!--]--><!----></div> <!--[-1--><!--]--> <!--[-1--><!--]--></header><!--]--> <!--[-1--><!--]--><!----> <!--[0--><aside id="smrt-admin-shell-left-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--left svelte-1ifuk0b" data-state="expanded" data-presentation="push" aria-label="Left sidebar"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__rail svelte-1ifuk0b"><!--[-1--><!--]--><!----> <!--[-1--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-stack svelte-1ifuk0b"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__tenant-content svelte-1ifuk0b"><!--[0--><!--[-1--><!--]--><!----><!--]--></div> <!--[0--><div class="smrt-admin-shell__tenant-utilities svelte-1ifuk0b" data-smrt-part="utilities"><!--[0--><span class="smrt-app-shell-color-scheme svelte-1dzfp19" data-smrt-component="ShellColorSchemeToggle"><button type="button" class="smrt-shell-icon-button svelte-1mggjot" aria-label="Dark mode" title="Switch to dark mode" aria-pressed="false" data-smrt-component="ShellIconButton"><!--[1--><svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false"><path d="M12 3c-4.97 0-9 4.03-9 9s4.03 9 9 9 9-4.03 9-9c0-.46-.04-.92-.1-1.36-.98 1.37-2.58 2.26-4.4 2.26-2.98 0-5.4-2.42-5.4-5.4 0-1.81.89-3.42 2.26-4.4-.44-.06-.9-.1-1.36-.1z"></path></svg><!--]--></button><!----></span><!----><!--]--> <!--[0--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__ghost smrt-button__sm smrt-admin-shell__edge-toggle smrt-admin-shell__edge-toggle--left svelte-1yq1ej5" aria-label="Collapse sidebar" title="Collapse sidebar" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><svg class="smrt-admin-shell__edge-toggle-chevron" viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></svg><!--[-1--><!--]--><!----><!----></span></button><!--]--><!--]--><!--]--></div><!--]--> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--leftSidebar-footer svelte-1ifuk0b" data-slot="leftSidebar.footer"><!--[--><!--[--><!--[1--><div class="ai-status svelte-nioco2" role="group" aria-label="AI models"><!--[--><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Think: not set up" title="Think: not set up"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M11 4.2C10.4 3 8.6 2.8 7.6 3.8C6.2 3.6 5 4.8 5.2 6.1C3.8 6.6 3.3 8.2 4.1 9.3C3 10.2 3 11.9 4 12.8C3.6 14.2 4.4 15.6 5.8 15.9C6.2 17.3 7.6 18.2 9 17.9C9.7 19.2 11 19.6 11 19.6ZM13 4.2 C13.6 3 15.4 2.8 16.4 3.8 C17.8 3.6 19 4.8 18.8 6.1 C20.2 6.6 20.7 8.2 19.9 9.3 C21 10.2 21 11.9 20 12.8 C20.4 14.2 19.6 15.6 18.2 15.9 C17.8 17.3 16.4 18.2 15 17.9 C14.3 19.2 13 19.6 13 19.6 ZM10.2 7.4C8.6 7.8 7.5 7 7 6.2L7.7 5.8C8.2 6.5 9 6.8 10 6.5ZM10.3 11C8.4 11.6 6.6 10.8 5.9 9.6L6.6 9.2C7.2 10.2 8.6 10.7 10.1 10.2ZM10.2 15C8.5 15.6 6.8 15 6 13.9L6.7 13.5C7.4 14.3 8.6 14.6 10 14.2ZM13.8 7.4 C15.4 7.8 16.5 7 17 6.2 L16.3 5.8 C15.8 6.5 15 6.8 14 6.5 ZM13.7 11 C15.6 11.6 17.4 10.8 18.1 9.6 L17.4 9.2 C16.8 10.2 15.4 10.7 13.9 10.2 ZM13.8 15 C15.5 15.6 17.2 15 18 13.9 L17.3 13.5 C16.6 14.3 15.4 14.6 14 14.2 Z"></path></svg><!----></a><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Hear: not set up" title="Hear: not set up"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M17 20c-.29 0-.56-.06-.76-.15-.71-.37-1.21-.88-1.71-2.38-.51-1.56-1.47-2.29-2.39-3-.79-.61-1.61-1.24-2.32-2.53C9.29 10.98 9 9.93 9 9c0-2.8 2.2-5 5-5s5 2.2 5 5h2c0-3.93-3.07-7-7-7S7 5.07 7 9c0 1.26.38 2.65 1.07 3.9.91 1.65 1.98 2.48 2.85 3.15.81.62 1.39 1.07 1.71 2.05.6 1.82 1.37 2.84 2.73 3.55.51.23 1.07.35 1.64.35 2.21 0 4-1.79 4-4h-2c0 1.1-.9 2-2 2zM7.64 2.64L6.22 1.22C4.23 3.21 3 5.96 3 9s1.23 5.79 3.22 7.78l1.41-1.41C6.01 13.74 5 11.49 5 9s1.01-4.74 2.64-6.36zM11.5 9c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5-1.12-2.5-2.5-2.5-2.5 1.12-2.5 2.5z"></path></svg><!----></a><a href="./ai/" class="cap svelte-nioco2" data-state="available" aria-label="Speak: not switched on" title="Speak: not switched on"><svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-smrt-component="Icon" class="svelte-em2a54"><path d="M3 9v6h4l5 5V4L7 9H3zm13.5 3c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77s-2.99-7.86-7-8.77z"></path></svg><!----></a><!--]--></div><!----><!--]--><!--[1--><!--$s2--><div class="smrt-workspace-account-menu svelte-1703h4r" title="You" data-smrt-component="WorkspaceAccountMenu"><button type="button" class="smrt-workspace-account-menu__trigger svelte-1703h4r" data-smrt-part="trigger" aria-haspopup="menu" aria-expanded="false" disabled=""><span class="smrt-workspace-account-menu__open svelte-1703h4r">Open account menu</span> <span class="avatar sm svelte-3d1ux4" aria-hidden="true" data-smrt-component="Avatar"><!--[-1--><span class="avatar__initials svelte-3d1ux4" role="img" aria-label="You">YO</span><!--]--> <!--[-1--><!--]--></span><!----> <span class="smrt-workspace-account-menu__identity svelte-1703h4r"><span class="smrt-workspace-account-menu__summary svelte-1703h4r">You</span> <!--[-1--><!--]--></span> <span class="smrt-workspace-account-menu__indicator svelte-1703h4r" aria-hidden="true">•••</span></button> <!--[-1--><!--]--></div><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----></div><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></div></aside><!--]--> <main id="smrt-admin-shell-main" class="smrt-admin-shell__main svelte-1ifuk0b"><div class="smrt-layout-live svelte-1pgtgoi" role="status" aria-live="polite"></div> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><!--[0--><!----><!--]--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!----> <span hidden="" data-smrt-planner-anchor=""></span><!----> <!--[--><main class="svelte-1uha8ag"><!--[-1--><!--[0--><!--]--> <!--[0--><div class="planner svelte-zuxcuo"><!--$s3--><!--[-1--><div class="smrt-tabs__container svelte-19k21oo" data-smrt-component="Tabs"><div class="smrt-tabs__nav svelte-19k21oo" data-smrt-part="list" role="tablist" aria-label="Planner"><!--[--><button type="button" class="smrt-tabs__tab-button svelte-19k21oo smrt-tabs__active" data-smrt-part="tab" role="tab" id="tab-s3-cookbooks" aria-selected="true" aria-controls="tab-panel-s3" tabindex="0" data-tab-id="cookbooks"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Cookbooks</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-recipes" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="recipes"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Recipes</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-theme" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="theme"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Theme</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-settings" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="settings"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Settings</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><button type="button" class="smrt-tabs__tab-button svelte-19k21oo" data-smrt-part="tab" role="tab" id="tab-s3-export" aria-selected="false" aria-controls="tab-panel-s3" tabindex="-1" data-tab-id="export"><span class="smrt-tabs__tab-content-wrapper svelte-19k21oo" data-smrt-part="body"><span data-smrt-part="label">Export</span> <!--[-1--><!--]--> <!--[-1--><!--]--></span> <div class="smrt-tabs__active-indicator svelte-19k21oo" data-smrt-part="indicator"></div></button><!--]--></div> <!--[0--><div class="smrt-tabs__tab-panel svelte-19k21oo" data-smrt-part="panel" role="tabpanel" id="tab-panel-s3" aria-labelledby="tab-s3-cookbooks"><!--[0--><div><div class="cookbooks svelte-mzas8k"><!--[-1--><!--]--> <p class="meta svelte-mzas8k">A cookbook is a ready-made starting point: the recipes, menu and settings a
62
62
  kind of business usually needs. Pick one, look it over, then change
63
- anything in the other tabs.</p> <div class="swap svelte-mzas8k"><!--[0--><ul class="grid svelte-mzas8k" aria-label="Cookbooks"><!--[--><li><button type="button" class="card svelte-mzas8k" data-cookbook="agency"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M4 20h4l10.5-10.5a2.828 2.828 0 1 0-4-4l-10.5 10.5v4"></path><path d="M13.5 6.5l4 4"></path><!--]--></svg> <span class="name svelte-mzas8k">Agency</span></span> <span class="summary svelte-mzas8k">Clients, proposals, retainers, projects, time, expenses and invoices for a consulting or design studio.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="bakery"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M7 3h10a4 4 0 0 1 2.4 7.2L20 19a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2l.6-8.8A4 4 0 0 1 7 3z"></path><path d="M9 13l1 3"></path><path d="M14 13l1 3"></path><!--]--></svg> <span class="name svelte-mzas8k">Bakery</span></span> <span class="summary svelte-mzas8k">Retail and cafe wholesale orders, ingredient stock, batches and suppliers.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="roaster"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M3 14c.83.642 2.077 1.017 3.5 1c1.423.017 2.67-.358 3.5-1c.83-.642 2.077-1.017 3.5-1c1.423-.017 2.67.358 3.5 1"></path><path d="M8 3a2.4 2.4 0 0 0-1 2a2.4 2.4 0 0 0 1 2"></path><path d="M12 3a2.4 2.4 0 0 0-1 2a2.4 2.4 0 0 0 1 2"></path><path d="M3 10h14v5a6 6 0 0 1-6 6h-2a6 6 0 0 1-6-6v-5z"></path><path d="M16.746 16.726a3 3 0 1 0 .252-5.555"></path><!--]--></svg> <span class="name svelte-mzas8k">Coffee roaster</span></span> <span class="summary svelte-mzas8k">Cafe accounts, online orders, green coffee, roast batches and importers for a small roastery or brewery.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="electrician"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M13 3v7h6l-8 11v-7H5l8-11"></path><!--]--></svg> <span class="name svelte-mzas8k">Electrician</span></span> <span class="summary svelte-mzas8k">Quotes, installs, repairs, materials and billing for an electrical contractor.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="equipment-rental"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M13 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M7 17h4"></path><path d="M3 17v-6h13v6"></path><path d="M5 11v-4h4"></path><path d="M9 11v-6h4l3 6"></path><path d="M22 15h-3v-10"></path><path d="M16 13h3"></path><!--]--></svg> <span class="name svelte-mzas8k">Equipment rental</span></span> <span class="summary svelte-mzas8k">Rentals, quotes, the fleet and its availability, pickups and returns, and billing for a hire yard.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="salon"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M6 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M6 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M8.6 8.6l10.4 10.4"></path><path d="M8.6 15.4l10.4-10.4"></path><!--]--></svg> <span class="name svelte-mzas8k">Hair salon</span></span> <span class="summary svelte-mzas8k">Appointments, clients, services, retail stock and payments at the desk for a salon or barbershop.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="landscaping"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 21c.5-4.5 2.5-8 7-10"></path><path d="M9 18c6.218 0 10.5-3.288 11-12v-2h-4.014c-9 0-11.986 4-12 9c0 1 0 3 2 5h3z"></path><!--]--></svg> <span class="name svelte-mzas8k">Landscaping</span></span> <span class="summary svelte-mzas8k">Quotes, jobs, maintenance contracts, materials and the crew schedule for a lawn and landscape business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="mechanic"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M15 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M5 17h-2v-6l2-5h9l4 5h1a2 2 0 0 1 2 2v4h-2m-4 0h-6m-6-6h15m-6 0v-5"></path><!--]--></svg> <span class="name svelte-mzas8k">Mechanic</span></span> <span class="summary svelte-mzas8k">Quotes, work orders, parts, appointments and billing for a repair shop.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="nonprofit"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M19.5 12.572l-7.5 7.428l-7.5-7.428a5 5 0 1 1 7.5-6.566a5 5 0 1 1 7.5 6.572"></path><!--]--></svg> <span class="name svelte-mzas8k">Non-profit</span></span> <span class="summary svelte-mzas8k">Members, memberships, dues and donations, events and the books for a club, society or charity.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="painter"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M3 21v-4a4 4 0 1 1 4 4h-4"></path><path d="M21 3a16 16 0 0 0-12.8 10.2"></path><path d="M21 3a16 16 0 0 1-10.2 12.8"></path><path d="M10.6 9a9 9 0 0 1 4.4 4.4"></path><!--]--></svg> <span class="name svelte-mzas8k">Painter</span></span> <span class="summary svelte-mzas8k">Estimates, jobs, paint and materials, crew schedule and billing for a painting business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="plumber"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M7 10h3v-3l-3.5-3.5a6 6 0 0 1 8 8l6 6a2 2 0 0 1-3 3l-6-6a6 6 0 0 1-8-8l3.5 3.5"></path><!--]--></svg> <span class="name svelte-mzas8k">Plumber</span></span> <span class="summary svelte-mzas8k">Quotes, service calls, parts, appointments and billing for a plumbing business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="roofer"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 12H3l9-9l9 9h-2"></path><path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-7"></path><path d="M9 21v-6a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v6"></path><!--]--></svg> <span class="name svelte-mzas8k">Roofer</span></span> <span class="summary svelte-mzas8k">Inspections, quotes, jobs, materials and billing for a roofing contractor.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="welder"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M12 12c2-2.96 0-7-1-8 0 3.038-1.773 4.741-3 6-1.226 1.26-2 3.24-2 5a6 6 0 1 0 12 0c0-1.532-1.056-3.94-2-5-1.786 3-2.791 3-4 2z"></path><!--]--></svg> <span class="name svelte-mzas8k">Welder</span></span> <span class="summary svelte-mzas8k">Quotes, jobs, agreements, material and site visits for a welding business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="yoga-studio"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M11 4a1 1 0 1 0 2 0a1 1 0 1 0-2 0"></path><path d="M4 20h4l1.5-3"></path><path d="M17 20l-1-5h-5l1-7"></path><path d="M4 10l4-1l4-1l4 1.5l4 1.5"></path><!--]--></svg> <span class="name svelte-mzas8k">Yoga studio</span></span> <span class="summary svelte-mzas8k">Classes, class series, members, memberships and a small retail shop.</span> <!--[-1--><!--]--></button></li><!--]--></ul><!--]--></div> <!--[-1--><!--]--></div> <!--$s4--><!--[-1--><!--]--><!----><!----></div><!--]--> <!--[0--><div hidden=""><ul class="cards svelte-1d5gge1" aria-label="Recipes"><!--[--><li class="svelte-1d5gge1"><h2 id="card-account-access" class="svelte-1d5gge1">Account access</h2> <p class="description svelte-1d5gge1" id="card-account-access-summary">Sign in and manage account sessions.</p> <!--$s5--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s5" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s5" type="checkbox" role="switch" aria-label="Account access" aria-describedby="card-account-access-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Account access</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s6--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Account access recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s7--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s7" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s7" type="checkbox" role="switch" aria-label="Roles and permissions" aria-describedby="sub-users.roles-and-permissions-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Roles and permissions</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-users.roles-and-permissions-summary">Manage tenant roles, memberships, permissions, and controlled sharing.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s8--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s8" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s8" type="checkbox" role="switch" aria-label="Sign in" aria-describedby="sub-users.sign-in-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Sign in</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-users.sign-in-summary">Access an account through an application-authorized sign-in flow.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-activity" class="svelte-1d5gge1">Activity</h2> <p class="description svelte-1d5gge1" id="card-activity-summary">Review authorized record history independently of messaging.</p> <!--$s9--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s9" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s9" type="checkbox" role="switch" aria-label="Activity" aria-describedby="card-activity-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Activity</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-agreements" class="svelte-1d5gge1">Agreements</h2> <p class="description svelte-1d5gge1" id="card-agreements-summary">Contracts with customers: general agreements, leases and licence sales.</p> <!--$s10--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s10" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s10" type="checkbox" role="switch" aria-label="Agreements" aria-describedby="card-agreements-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Agreements</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s11--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Agreements recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s12--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s12" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s12" type="checkbox" role="switch" aria-label="General agreements" aria-describedby="sub-commerce.agreements-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">General agreements</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.agreements-summary">Keep signed agreements with customers, and see every contract in one list.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s13--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s13" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s13" type="checkbox" role="switch" aria-label="Leases" aria-describedby="sub-commerce.leases-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Leases</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.leases-summary">Rent things out and track the term and the payments due.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s14--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s14" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s14" type="checkbox" role="switch" aria-label="Licence sales" aria-describedby="sub-commerce.licenses-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Licence sales</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.licenses-summary">Sell licences to software, content or other rights.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-analytics.reports" class="svelte-1d5gge1">Analytics</h2> <p class="description svelte-1d5gge1" id="card-analytics.reports-summary">Save traffic reports for your websites and apps and get a plain-language read on the results.</p> <!--$s15--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s15" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s15" type="checkbox" role="switch" aria-label="Analytics" aria-describedby="card-analytics.reports-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Analytics</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-chat.assistant" class="svelte-1d5gge1">Assistant</h2> <p class="description svelte-1d5gge1" id="card-chat.assistant-summary">Ask an AI assistant about the page you are on, from a dock in the app shell.</p> <!--$s16--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s16" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s16" type="checkbox" role="switch" aria-label="Assistant" aria-describedby="card-chat.assistant-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Assistant</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-billing" class="svelte-1d5gge1">Billing &amp; shipping</h2> <p class="description svelte-1d5gge1" id="card-billing-summary">Invoice your customers, record what they pay and ship what they ordered.</p> <!--$s17--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s17" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s17" type="checkbox" role="switch" aria-label="Billing &amp; shipping" aria-describedby="card-billing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Billing &amp; shipping</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s18--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Billing &amp; shipping recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s19--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s19" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s19" type="checkbox" role="switch" aria-label="Invoicing" aria-describedby="sub-commerce.invoicing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Invoicing</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.invoicing-summary">Bill customers and record the payments that come in.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s20--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s20" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s20" type="checkbox" role="switch" aria-label="Shipping" aria-describedby="sub-commerce.fulfillment-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Shipping</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.fulfillment-summary">Pack, ship and deliver orders, with tracking.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-ledgers.bookkeeping" class="svelte-1d5gge1">Bookkeeping</h2> <p class="description svelte-1d5gge1" id="card-ledgers.bookkeeping-summary">Keep your books: a chart of accounts and double-entry journals.</p> <!--$s21--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s21" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s21" type="checkbox" role="switch" aria-label="Bookkeeping" aria-describedby="card-ledgers.bookkeeping-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Bookkeeping</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-comments" class="svelte-1d5gge1">Comments</h2> <p class="description svelte-1d5gge1" id="card-comments-summary">Keep discussions alongside the records your team works on.</p> <!--$s22--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s22" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s22" type="checkbox" role="switch" aria-label="Comments" aria-describedby="card-comments-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Comments</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.customers" class="svelte-1d5gge1">Customers</h2> <p class="description svelte-1d5gge1" id="card-commerce.customers-summary">Keep a list of the people and companies you sell to.</p> <!--$s23--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s23" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s23" type="checkbox" role="switch" aria-label="Customers" aria-describedby="card-commerce.customers-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Customers</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.estimates" class="svelte-1d5gge1">Estimates</h2> <p class="description svelte-1d5gge1" id="card-commerce.estimates-summary">Send customers a price quote before they commit.</p> <!--$s24--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s24" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s24" type="checkbox" role="switch" aria-label="Estimates" aria-describedby="card-commerce.estimates-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Estimates</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-events.calendar" class="svelte-1d5gge1">Events</h2> <p class="description svelte-1d5gge1" id="card-events.calendar-summary">Schedule events, group them in series and track who takes part.</p> <!--$s25--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s25" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s25" type="checkbox" role="switch" aria-label="Events" aria-describedby="card-events.calendar-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Events</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-expenses.tracking" class="svelte-1d5gge1">Expenses</h2> <p class="description svelte-1d5gge1" id="card-expenses.tracking-summary">Record what the business spends, with receipts, and review it.</p> <!--$s26--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s26" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s26" type="checkbox" role="switch" aria-label="Expenses" aria-describedby="card-expenses.tracking-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Expenses</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-assets" class="svelte-1d5gge1">Files and media</h2> <p class="description svelte-1d5gge1" id="card-assets-summary">Organize files and media, then attach them to the records that need them.</p> <!--$s27--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s27" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s27" type="checkbox" role="switch" aria-label="Files and media" aria-describedby="card-assets-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Files and media</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s28--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Files and media recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s29--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s29" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s29" type="checkbox" role="switch" aria-label="Attachments" aria-describedby="sub-assets.attachments-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Attachments</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-assets.attachments-summary">Attach authorized files to records and retain their history.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s30--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s30" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s30" type="checkbox" role="switch" aria-label="Asset Library" aria-describedby="sub-assets.library-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Asset Library</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-assets.library-summary">Organize files and media with folders, types, and statuses.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-fields.form-customization" class="svelte-1d5gge1">Form customization</h2> <p class="description svelte-1d5gge1" id="card-fields.form-customization-summary">Choose what your forms ask for: defaults, labels, hints and which fields are shown.</p> <!--$s31--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s31" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s31" type="checkbox" role="switch" aria-label="Form customization" aria-describedby="card-fields.form-customization-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Form customization</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-ingestion" class="svelte-1d5gge1">Ingestion</h2> <p class="description svelte-1d5gge1" id="card-ingestion-summary">Review incoming material safely before it can change records.</p> <!--$s32--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s32" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s32" type="checkbox" role="switch" aria-label="Ingestion" aria-describedby="card-ingestion-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s33--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Ingestion recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s34--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s34" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s34" type="checkbox" role="switch" aria-label="Ingestion inbox" aria-describedby="sub-ingestion.inbox-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion inbox</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-ingestion.inbox-summary">Review incoming material and see which items need attention.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s35--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s35" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s35" type="checkbox" role="switch" aria-label="Ingestion review" aria-describedby="sub-ingestion.review-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion review</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-ingestion.review-summary">Inspect evidence and approve, change, reject, or defer proposed actions.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-integrations" class="svelte-1d5gge1">Integrations</h2> <p class="description svelte-1d5gge1" id="card-integrations-summary">Connect your application to external services.</p> <!--$s36--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s36" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s36" type="checkbox" role="switch" aria-label="Integrations" aria-describedby="card-integrations-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Integrations</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-inventory.stock" class="svelte-1d5gge1">Inventory</h2> <p class="description svelte-1d5gge1" id="card-inventory.stock-summary">Keep count of how many of each product you have.</p> <!--$s37--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s37" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s37" type="checkbox" role="switch" aria-label="Inventory" aria-describedby="card-inventory.stock-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Inventory</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs one of Simple products, Clothing.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-sales.pipeline" class="svelte-1d5gge1">Leads &amp; pipeline</h2> <p class="description svelte-1d5gge1" id="card-sales.pipeline-summary">Capture leads and move them through your sales stages.</p> <!--$s38--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s38" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s38" type="checkbox" role="switch" aria-label="Leads &amp; pipeline" aria-describedby="card-sales.pipeline-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Leads &amp; pipeline</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-messages" class="svelte-1d5gge1">Messaging</h2> <p class="description svelte-1d5gge1" id="card-messages-summary">Choose email and personal updates independently.</p> <!--$s39--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s39" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s39" type="checkbox" role="switch" aria-label="Messaging" aria-describedby="card-messages-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Messaging</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s40--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Messaging recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s41--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s41" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s41" type="checkbox" role="switch" aria-label="Mailbox" aria-describedby="sub-messages.mailbox-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Mailbox</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-messages.mailbox-summary">Read and compose email from your connected accounts.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s42--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s42" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s42" type="checkbox" role="switch" aria-label="Notifications" aria-describedby="sub-messages.notifications-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Notifications</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-messages.notifications-summary">See updates addressed to you and mark them read.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-products" class="svelte-1d5gge1">Products</h2> <p class="description svelte-1d5gge1" id="card-products-summary">Sell goods: simple items, or clothing that comes in sizes and colors.</p> <!--$s43--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s43" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s43" type="checkbox" role="switch" aria-label="Products" aria-describedby="card-products-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Products</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s44--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Products recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s45--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s45" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s45" type="checkbox" role="switch" aria-label="Simple products" aria-describedby="sub-products.simple-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Simple products</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.simple-summary">Items with a name, a price and a description.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s46--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s46" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s46" type="checkbox" role="switch" aria-label="Clothing" aria-describedby="sub-products.clothing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Clothing</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.clothing-summary">Products that come in sizes and colors, with a stock-keeping unit for each combination.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s47--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s47" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s47" type="checkbox" role="switch" aria-label="Ingredients" aria-describedby="sub-products.ingredients-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingredients</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.ingredients-summary">Things you buy in to make what you sell, kept as products of the material kind with their own list.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-projects.tracker" class="svelte-1d5gge1">Projects</h2> <p class="description svelte-1d5gge1" id="card-projects.tracker-summary">Track projects and the issues, labels and comments inside them.</p> <!--$s48--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s48" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s48" type="checkbox" role="switch" aria-label="Projects" aria-describedby="card-projects.tracker-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Projects</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.purchases" class="svelte-1d5gge1">Purchases</h2> <p class="description svelte-1d5gge1" id="card-commerce.purchases-summary">Order from your vendors and track what you have bought.</p> <!--$s49--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s49" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s49" type="checkbox" role="switch" aria-label="Purchases" aria-describedby="card-commerce.purchases-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Purchases</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Vendors.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-reports.runtime" class="svelte-1d5gge1">Reports</h2> <p class="description svelte-1d5gge1" id="card-reports.runtime-summary">Ask for a report, approve it, and share its live totals with your team.</p> <!--$s50--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s50" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s50" type="checkbox" role="switch" aria-label="Reports" aria-describedby="card-reports.runtime-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Reports</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.sales" class="svelte-1d5gge1">Sales</h2> <p class="description svelte-1d5gge1" id="card-commerce.sales-summary">Take customer orders and track them.</p> <!--$s51--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s51" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s51" type="checkbox" role="switch" aria-label="Sales" aria-describedby="card-commerce.sales-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Sales</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-reports.materialized" class="svelte-1d5gge1">Scheduled reports</h2> <p class="description svelte-1d5gge1" id="card-reports.materialized-summary">Keep totals and trends ready to read, refreshed on a schedule and open to the assistant.</p> <!--$s52--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s52" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s52" type="checkbox" role="switch" aria-label="Scheduled reports" aria-describedby="card-reports.materialized-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Scheduled reports</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-tags.taxonomy" class="svelte-1d5gge1">Taxonomy</h2> <p class="description svelte-1d5gge1" id="card-tags.taxonomy-summary">Organise anything with a shared set of nested tags and alternative names.</p> <!--$s53--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s53" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s53" type="checkbox" role="switch" aria-label="Taxonomy" aria-describedby="card-tags.taxonomy-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Taxonomy</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-team-collaboration" class="svelte-1d5gge1">Team collaboration</h2> <p class="description svelte-1d5gge1" id="card-team-collaboration-summary">Keep conversations and shared work in one place.</p> <!--$s54--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s54" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s54" type="checkbox" role="switch" aria-label="Team collaboration" aria-describedby="card-team-collaboration-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Team collaboration</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-timesheets.time-entries" class="svelte-1d5gge1">Time entries</h2> <p class="description svelte-1d5gge1" id="card-timesheets.time-entries-summary">Record who worked how long on what, for approval.</p> <!--$s55--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s55" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s55" type="checkbox" role="switch" aria-label="Time entries" aria-describedby="card-timesheets.time-entries-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Time entries</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.vendors" class="svelte-1d5gge1">Vendors</h2> <p class="description svelte-1d5gge1" id="card-commerce.vendors-summary">Keep a list of the suppliers you buy from.</p> <!--$s56--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s56" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s56" type="checkbox" role="switch" aria-label="Vendors" aria-describedby="card-commerce.vendors-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Vendors</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.wholesale" class="svelte-1d5gge1">Wholesale orders</h2> <p class="description svelte-1d5gge1" id="card-commerce.wholesale-summary">Take bulk orders from trade customers.</p> <!--$s57--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s57" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s57" type="checkbox" role="switch" aria-label="Wholesale orders" aria-describedby="card-commerce.wholesale-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Wholesale orders</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><!--]--></ul> <p class="notice svelte-1d5gge1" role="status" aria-live="polite"></p><!----></div><!--]--> <!--[0--><div hidden=""><div class="features svelte-q9yl1j"><p class="meta svelte-q9yl1j">Everything s-m-r-t can add to your app. Switch a feature on to add it, with
63
+ anything in the other tabs.</p> <div class="swap svelte-mzas8k"><!--[0--><ul class="grid svelte-mzas8k" aria-label="Cookbooks"><!--[--><li><button type="button" class="card svelte-mzas8k" data-cookbook="agency"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M4 20h4l10.5-10.5a2.828 2.828 0 1 0-4-4l-10.5 10.5v4"></path><path d="M13.5 6.5l4 4"></path><!--]--></svg> <span class="name svelte-mzas8k">Agency</span></span> <span class="summary svelte-mzas8k">Clients, proposals, retainers, projects, time, expenses and invoices for a consulting or design studio.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="bakery"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M7 3h10a4 4 0 0 1 2.4 7.2L20 19a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2l.6-8.8A4 4 0 0 1 7 3z"></path><path d="M9 13l1 3"></path><path d="M14 13l1 3"></path><!--]--></svg> <span class="name svelte-mzas8k">Bakery</span></span> <span class="summary svelte-mzas8k">Retail and cafe wholesale orders, ingredient stock, batches and suppliers.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="band"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M15 12.9a5 5 0 1 0-3.902-3.9"></path><path d="M15 12.9l-3.902-3.899l-7.513 8.584a2 2 0 1 0 2.827 2.83l8.588-7.515z"></path><!--]--></svg> <span class="name svelte-mzas8k">Band</span></span> <span class="summary svelte-mzas8k">Gigs, venues, booking contracts, merch and billing for a band.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="roaster"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M3 14c.83.642 2.077 1.017 3.5 1c1.423.017 2.67-.358 3.5-1c.83-.642 2.077-1.017 3.5-1c1.423-.017 2.67.358 3.5 1"></path><path d="M8 3a2.4 2.4 0 0 0-1 2a2.4 2.4 0 0 0 1 2"></path><path d="M12 3a2.4 2.4 0 0 0-1 2a2.4 2.4 0 0 0 1 2"></path><path d="M3 10h14v5a6 6 0 0 1-6 6h-2a6 6 0 0 1-6-6v-5z"></path><path d="M16.746 16.726a3 3 0 1 0 .252-5.555"></path><!--]--></svg> <span class="name svelte-mzas8k">Coffee roaster</span></span> <span class="summary svelte-mzas8k">Cafe accounts, online orders, green coffee, roast batches and importers for a small roastery or brewery.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="electrician"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M13 3v7h6l-8 11v-7H5l8-11"></path><!--]--></svg> <span class="name svelte-mzas8k">Electrician</span></span> <span class="summary svelte-mzas8k">Quotes, installs, repairs, materials and billing for an electrical contractor.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="equipment-rental"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M13 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M7 17h4"></path><path d="M3 17v-6h13v6"></path><path d="M5 11v-4h4"></path><path d="M9 11v-6h4l3 6"></path><path d="M22 15h-3v-10"></path><path d="M16 13h3"></path><!--]--></svg> <span class="name svelte-mzas8k">Equipment rental</span></span> <span class="summary svelte-mzas8k">Rentals, quotes, the fleet and its availability, pickups and returns, and billing for a hire yard.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="salon"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M6 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M6 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M8.6 8.6l10.4 10.4"></path><path d="M8.6 15.4l10.4-10.4"></path><!--]--></svg> <span class="name svelte-mzas8k">Hair salon</span></span> <span class="summary svelte-mzas8k">Appointments, clients, services, retail stock and payments at the desk for a salon or barbershop.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="landscaping"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 21c.5-4.5 2.5-8 7-10"></path><path d="M9 18c6.218 0 10.5-3.288 11-12v-2h-4.014c-9 0-11.986 4-12 9c0 1 0 3 2 5h3z"></path><!--]--></svg> <span class="name svelte-mzas8k">Landscaping</span></span> <span class="summary svelte-mzas8k">Quotes, jobs, maintenance contracts, materials and the crew schedule for a lawn and landscape business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="mechanic"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M15 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0"></path><path d="M5 17h-2v-6l2-5h9l4 5h1a2 2 0 0 1 2 2v4h-2m-4 0h-6m-6-6h15m-6 0v-5"></path><!--]--></svg> <span class="name svelte-mzas8k">Mechanic</span></span> <span class="summary svelte-mzas8k">Quotes, work orders, parts, appointments and billing for a repair shop.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="music-teacher"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M3 17a3 3 0 1 0 6 0a3 3 0 0 0-6 0"></path><path d="M13 17a3 3 0 1 0 6 0a3 3 0 0 0-6 0"></path><path d="M9 17v-13h10v13"></path><path d="M9 8h10"></path><!--]--></svg> <span class="name svelte-mzas8k">Music teacher</span></span> <span class="summary svelte-mzas8k">Students, lesson schedule, packages, recitals and billing for a music teacher or studio.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="nonprofit"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M19.5 12.572l-7.5 7.428l-7.5-7.428a5 5 0 1 1 7.5-6.566a5 5 0 1 1 7.5 6.572"></path><!--]--></svg> <span class="name svelte-mzas8k">Non-profit</span></span> <span class="summary svelte-mzas8k">Members, memberships, dues and donations, events and the books for a club, society or charity.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="painter"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M3 21v-4a4 4 0 1 1 4 4h-4"></path><path d="M21 3a16 16 0 0 0-12.8 10.2"></path><path d="M21 3a16 16 0 0 1-10.2 12.8"></path><path d="M10.6 9a9 9 0 0 1 4.4 4.4"></path><!--]--></svg> <span class="name svelte-mzas8k">Painter</span></span> <span class="summary svelte-mzas8k">Estimates, jobs, paint and materials, crew schedule and billing for a painting business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="plumber"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M7 10h3v-3l-3.5-3.5a6 6 0 0 1 8 8l6 6a2 2 0 0 1-3 3l-6-6a6 6 0 0 1-8-8l3.5 3.5"></path><!--]--></svg> <span class="name svelte-mzas8k">Plumber</span></span> <span class="summary svelte-mzas8k">Quotes, service calls, parts, appointments and billing for a plumbing business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="roofer"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M5 12H3l9-9l9 9h-2"></path><path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-7"></path><path d="M9 21v-6a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v6"></path><!--]--></svg> <span class="name svelte-mzas8k">Roofer</span></span> <span class="summary svelte-mzas8k">Inspections, quotes, jobs, materials and billing for a roofing contractor.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="welder"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M12 12c2-2.96 0-7-1-8 0 3.038-1.773 4.741-3 6-1.226 1.26-2 3.24-2 5a6 6 0 1 0 12 0c0-1.532-1.056-3.94-2-5-1.786 3-2.791 3-4 2z"></path><!--]--></svg> <span class="name svelte-mzas8k">Welder</span></span> <span class="summary svelte-mzas8k">Quotes, jobs, agreements, material and site visits for a welding business.</span> <!--[-1--><!--]--></button></li><li><button type="button" class="card svelte-mzas8k" data-cookbook="yoga-studio"><span class="heading svelte-mzas8k"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><!--[--><path d="M11 4a1 1 0 1 0 2 0a1 1 0 1 0-2 0"></path><path d="M4 20h4l1.5-3"></path><path d="M17 20l-1-5h-5l1-7"></path><path d="M4 10l4-1l4-1l4 1.5l4 1.5"></path><!--]--></svg> <span class="name svelte-mzas8k">Yoga studio</span></span> <span class="summary svelte-mzas8k">Classes, class series, members, memberships and a small retail shop.</span> <!--[-1--><!--]--></button></li><!--]--></ul><!--]--></div> <!--[-1--><!--]--></div> <!--$s4--><!--[-1--><!--]--><!----><!----></div><!--]--> <!--[0--><div hidden=""><ul class="cards svelte-1d5gge1" aria-label="Recipes"><!--[--><li class="svelte-1d5gge1"><h2 id="card-account-access" class="svelte-1d5gge1">Account access</h2> <p class="description svelte-1d5gge1" id="card-account-access-summary">Sign in and manage account sessions.</p> <!--$s5--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s5" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s5" type="checkbox" role="switch" aria-label="Account access" aria-describedby="card-account-access-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Account access</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s6--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Account access recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s7--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s7" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s7" type="checkbox" role="switch" aria-label="Roles and permissions" aria-describedby="sub-users.roles-and-permissions-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Roles and permissions</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-users.roles-and-permissions-summary">Manage tenant roles, memberships, permissions, and controlled sharing.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s8--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s8" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s8" type="checkbox" role="switch" aria-label="Sign in" aria-describedby="sub-users.sign-in-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Sign in</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-users.sign-in-summary">Access an account through an application-authorized sign-in flow.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-activity" class="svelte-1d5gge1">Activity</h2> <p class="description svelte-1d5gge1" id="card-activity-summary">Review authorized record history independently of messaging.</p> <!--$s9--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s9" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s9" type="checkbox" role="switch" aria-label="Activity" aria-describedby="card-activity-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Activity</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-agreements" class="svelte-1d5gge1">Agreements</h2> <p class="description svelte-1d5gge1" id="card-agreements-summary">Contracts with customers: general agreements, leases and licence sales.</p> <!--$s10--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s10" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s10" type="checkbox" role="switch" aria-label="Agreements" aria-describedby="card-agreements-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Agreements</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s11--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Agreements recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s12--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s12" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s12" type="checkbox" role="switch" aria-label="General agreements" aria-describedby="sub-commerce.agreements-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">General agreements</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.agreements-summary">Keep signed agreements with customers, and see every contract in one list.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s13--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s13" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s13" type="checkbox" role="switch" aria-label="Leases" aria-describedby="sub-commerce.leases-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Leases</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.leases-summary">Rent things out and track the term and the payments due.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s14--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s14" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s14" type="checkbox" role="switch" aria-label="Licence sales" aria-describedby="sub-commerce.licenses-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Licence sales</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.licenses-summary">Sell licences to software, content or other rights.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-analytics.reports" class="svelte-1d5gge1">Analytics</h2> <p class="description svelte-1d5gge1" id="card-analytics.reports-summary">Save traffic reports for your websites and apps and get a plain-language read on the results.</p> <!--$s15--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s15" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s15" type="checkbox" role="switch" aria-label="Analytics" aria-describedby="card-analytics.reports-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Analytics</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-chat.assistant" class="svelte-1d5gge1">Assistant</h2> <p class="description svelte-1d5gge1" id="card-chat.assistant-summary">Ask an AI assistant about the page you are on, from a dock in the app shell.</p> <!--$s16--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s16" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s16" type="checkbox" role="switch" aria-label="Assistant" aria-describedby="card-chat.assistant-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Assistant</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-billing" class="svelte-1d5gge1">Billing &amp; shipping</h2> <p class="description svelte-1d5gge1" id="card-billing-summary">Invoice your customers, record what they pay and ship what they ordered.</p> <!--$s17--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s17" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s17" type="checkbox" role="switch" aria-label="Billing &amp; shipping" aria-describedby="card-billing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Billing &amp; shipping</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s18--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Billing &amp; shipping recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s19--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s19" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s19" type="checkbox" role="switch" aria-label="Invoicing" aria-describedby="sub-commerce.invoicing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Invoicing</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.invoicing-summary">Bill customers and record the payments that come in.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s20--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s20" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s20" type="checkbox" role="switch" aria-label="Shipping" aria-describedby="sub-commerce.fulfillment-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Shipping</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-commerce.fulfillment-summary">Pack, ship and deliver orders, with tracking.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-ledgers.bookkeeping" class="svelte-1d5gge1">Bookkeeping</h2> <p class="description svelte-1d5gge1" id="card-ledgers.bookkeeping-summary">Keep your books: a chart of accounts and double-entry journals.</p> <!--$s21--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s21" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s21" type="checkbox" role="switch" aria-label="Bookkeeping" aria-describedby="card-ledgers.bookkeeping-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Bookkeeping</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-comments" class="svelte-1d5gge1">Comments</h2> <p class="description svelte-1d5gge1" id="card-comments-summary">Keep discussions alongside the records your team works on.</p> <!--$s22--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s22" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s22" type="checkbox" role="switch" aria-label="Comments" aria-describedby="card-comments-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Comments</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.customers" class="svelte-1d5gge1">Customers</h2> <p class="description svelte-1d5gge1" id="card-commerce.customers-summary">Keep a list of the people and companies you sell to.</p> <!--$s23--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s23" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s23" type="checkbox" role="switch" aria-label="Customers" aria-describedby="card-commerce.customers-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Customers</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.estimates" class="svelte-1d5gge1">Estimates</h2> <p class="description svelte-1d5gge1" id="card-commerce.estimates-summary">Send customers a price quote before they commit.</p> <!--$s24--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s24" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s24" type="checkbox" role="switch" aria-label="Estimates" aria-describedby="card-commerce.estimates-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Estimates</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-events.calendar" class="svelte-1d5gge1">Events</h2> <p class="description svelte-1d5gge1" id="card-events.calendar-summary">Schedule events, group them in series and track who takes part.</p> <!--$s25--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s25" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s25" type="checkbox" role="switch" aria-label="Events" aria-describedby="card-events.calendar-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Events</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-expenses.tracking" class="svelte-1d5gge1">Expenses</h2> <p class="description svelte-1d5gge1" id="card-expenses.tracking-summary">Record what the business spends, with receipts, and review it.</p> <!--$s26--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s26" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s26" type="checkbox" role="switch" aria-label="Expenses" aria-describedby="card-expenses.tracking-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Expenses</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-assets" class="svelte-1d5gge1">Files and media</h2> <p class="description svelte-1d5gge1" id="card-assets-summary">Organize files and media, then attach them to the records that need them.</p> <!--$s27--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s27" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s27" type="checkbox" role="switch" aria-label="Files and media" aria-describedby="card-assets-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Files and media</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s28--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Files and media recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s29--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s29" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s29" type="checkbox" role="switch" aria-label="Attachments" aria-describedby="sub-assets.attachments-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Attachments</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-assets.attachments-summary">Attach authorized files to records and retain their history.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s30--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s30" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s30" type="checkbox" role="switch" aria-label="Asset Library" aria-describedby="sub-assets.library-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Asset Library</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-assets.library-summary">Organize files and media with folders, types, and statuses.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-fields.form-customization" class="svelte-1d5gge1">Form customization</h2> <p class="description svelte-1d5gge1" id="card-fields.form-customization-summary">Choose what your forms ask for: defaults, labels, hints and which fields are shown.</p> <!--$s31--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s31" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s31" type="checkbox" role="switch" aria-label="Form customization" aria-describedby="card-fields.form-customization-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Form customization</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-ingestion" class="svelte-1d5gge1">Ingestion</h2> <p class="description svelte-1d5gge1" id="card-ingestion-summary">Review incoming material safely before it can change records.</p> <!--$s32--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s32" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s32" type="checkbox" role="switch" aria-label="Ingestion" aria-describedby="card-ingestion-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s33--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Ingestion recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s34--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s34" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s34" type="checkbox" role="switch" aria-label="Ingestion inbox" aria-describedby="sub-ingestion.inbox-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion inbox</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-ingestion.inbox-summary">Review incoming material and see which items need attention.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s35--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s35" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s35" type="checkbox" role="switch" aria-label="Ingestion review" aria-describedby="sub-ingestion.review-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingestion review</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-ingestion.review-summary">Inspect evidence and approve, change, reject, or defer proposed actions.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-integrations" class="svelte-1d5gge1">Integrations</h2> <p class="description svelte-1d5gge1" id="card-integrations-summary">Connect your application to external services.</p> <!--$s36--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s36" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s36" type="checkbox" role="switch" aria-label="Integrations" aria-describedby="card-integrations-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Integrations</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-inventory.stock" class="svelte-1d5gge1">Inventory</h2> <p class="description svelte-1d5gge1" id="card-inventory.stock-summary">Keep count of how many of each product you have.</p> <!--$s37--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s37" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s37" type="checkbox" role="switch" aria-label="Inventory" aria-describedby="card-inventory.stock-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Inventory</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs one of Simple products, Clothing.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-sales.pipeline" class="svelte-1d5gge1">Leads &amp; pipeline</h2> <p class="description svelte-1d5gge1" id="card-sales.pipeline-summary">Capture leads and move them through your sales stages.</p> <!--$s38--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s38" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s38" type="checkbox" role="switch" aria-label="Leads &amp; pipeline" aria-describedby="card-sales.pipeline-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Leads &amp; pipeline</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-messages" class="svelte-1d5gge1">Messaging</h2> <p class="description svelte-1d5gge1" id="card-messages-summary">Choose email and personal updates independently.</p> <!--$s39--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s39" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s39" type="checkbox" role="switch" aria-label="Messaging" aria-describedby="card-messages-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Messaging</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s40--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Messaging recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s41--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s41" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s41" type="checkbox" role="switch" aria-label="Mailbox" aria-describedby="sub-messages.mailbox-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Mailbox</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-messages.mailbox-summary">Read and compose email from your connected accounts.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s42--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s42" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s42" type="checkbox" role="switch" aria-label="Notifications" aria-describedby="sub-messages.notifications-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Notifications</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-messages.notifications-summary">See updates addressed to you and mark them read.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-products" class="svelte-1d5gge1">Products</h2> <p class="description svelte-1d5gge1" id="card-products-summary">Sell goods: simple items, or clothing that comes in sizes and colors.</p> <!--$s43--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s43" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s43" type="checkbox" role="switch" aria-label="Products" aria-describedby="card-products-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Products</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[0--><!--$s44--><fieldset class="fieldset subs svelte-ptc7pm" data-smrt-component="Fieldset"><legend class="svelte-ptc7pm">Products recipes</legend><!--[-1--><!--]--><div class="content svelte-ptc7pm content--stack"><!--[--><div class="sub svelte-1d5gge1"><!--$s45--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s45" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s45" type="checkbox" role="switch" aria-label="Simple products" aria-describedby="sub-products.simple-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Simple products</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.simple-summary">Items with a name, a price and a description.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s46--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s46" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s46" type="checkbox" role="switch" aria-label="Clothing" aria-describedby="sub-products.clothing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Clothing</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.clothing-summary">Products that come in sizes and colors, with a stock-keeping unit for each combination.</p> <!--[-1--><!--]--></div><div class="sub svelte-1d5gge1"><!--$s47--><label class="smrt-switch__root smrt-switch__sm svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s47" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s47" type="checkbox" role="switch" aria-label="Ingredients" aria-describedby="sub-products.ingredients-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Ingredients</span><!--]--></label><!----> <p class="meta svelte-1d5gge1" id="sub-products.ingredients-summary">Things you buy in to make what you sell, kept as products of the material kind with their own list.</p> <!--[-1--><!--]--></div><!--]--><!----></div><!--[-1--><!--]--></fieldset><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-projects.tracker" class="svelte-1d5gge1">Projects</h2> <p class="description svelte-1d5gge1" id="card-projects.tracker-summary">Track projects and the issues, labels and comments inside them.</p> <!--$s48--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s48" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s48" type="checkbox" role="switch" aria-label="Projects" aria-describedby="card-projects.tracker-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Projects</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.purchases" class="svelte-1d5gge1">Purchases</h2> <p class="description svelte-1d5gge1" id="card-commerce.purchases-summary">Order from your vendors and track what you have bought.</p> <!--$s49--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s49" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s49" type="checkbox" role="switch" aria-label="Purchases" aria-describedby="card-commerce.purchases-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Purchases</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Vendors.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-reports.runtime" class="svelte-1d5gge1">Reports</h2> <p class="description svelte-1d5gge1" id="card-reports.runtime-summary">Ask for a report, approve it, and share its live totals with your team.</p> <!--$s50--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s50" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s50" type="checkbox" role="switch" aria-label="Reports" aria-describedby="card-reports.runtime-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Reports</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.sales" class="svelte-1d5gge1">Sales</h2> <p class="description svelte-1d5gge1" id="card-commerce.sales-summary">Take customer orders and track them.</p> <!--$s51--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s51" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s51" type="checkbox" role="switch" aria-label="Sales" aria-describedby="card-commerce.sales-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Sales</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-reports.materialized" class="svelte-1d5gge1">Scheduled reports</h2> <p class="description svelte-1d5gge1" id="card-reports.materialized-summary">Keep totals and trends ready to read, refreshed on a schedule and open to the assistant.</p> <!--$s52--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s52" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s52" type="checkbox" role="switch" aria-label="Scheduled reports" aria-describedby="card-reports.materialized-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Scheduled reports</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-tags.taxonomy" class="svelte-1d5gge1">Taxonomy</h2> <p class="description svelte-1d5gge1" id="card-tags.taxonomy-summary">Organise anything with a shared set of nested tags and alternative names.</p> <!--$s53--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s53" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s53" type="checkbox" role="switch" aria-label="Taxonomy" aria-describedby="card-tags.taxonomy-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Taxonomy</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-team-collaboration" class="svelte-1d5gge1">Team collaboration</h2> <p class="description svelte-1d5gge1" id="card-team-collaboration-summary">Keep conversations and shared work in one place.</p> <!--$s54--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s54" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s54" type="checkbox" role="switch" aria-label="Team collaboration" aria-describedby="card-team-collaboration-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Team collaboration</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-timesheets.time-entries" class="svelte-1d5gge1">Time entries</h2> <p class="description svelte-1d5gge1" id="card-timesheets.time-entries-summary">Record who worked how long on what, for approval.</p> <!--$s55--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s55" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s55" type="checkbox" role="switch" aria-label="Time entries" aria-describedby="card-timesheets.time-entries-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Time entries</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.vendors" class="svelte-1d5gge1">Vendors</h2> <p class="description svelte-1d5gge1" id="card-commerce.vendors-summary">Keep a list of the suppliers you buy from.</p> <!--$s56--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s56" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s56" type="checkbox" role="switch" aria-label="Vendors" aria-describedby="card-commerce.vendors-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Vendors</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></li><li class="svelte-1d5gge1"><h2 id="card-commerce.wholesale" class="svelte-1d5gge1">Wholesale orders</h2> <p class="description svelte-1d5gge1" id="card-commerce.wholesale-summary">Take bulk orders from trade customers.</p> <!--$s57--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s57" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s57" type="checkbox" role="switch" aria-label="Wholesale orders" aria-describedby="card-commerce.wholesale-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Wholesale orders</span><!--]--></label><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1d5gge1">Needs Customers.</p><!--]--></li><!--]--></ul> <p class="notice svelte-1d5gge1" role="status" aria-live="polite"></p><!----></div><!--]--> <!--[0--><div hidden=""><div class="features svelte-q9yl1j"><p class="meta svelte-q9yl1j">Everything s-m-r-t can add to your app. Switch a feature on to add it, with
64
64
  what it needs, to your cookbook. Each label says how far it runs in this
65
65
  browser-only demo; menu entries appear in the sidebar, while widgets, pages
66
66
  and panels are listed for the real app and are not mounted here.</p> <!--$s58--><div class="search-input svelte-1gxducu" role="search" data-smrt-component="SearchInput"><label class="search-input__label svelte-1gxducu" for="smrt-search-s58">Search features</label> <span class="search-input__icon svelte-1gxducu" aria-hidden="true"><svg viewBox="0 0 24 24" width="18" height="18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="7"></circle><path d="m20 20-3.5-3.5"></path></svg></span> <input id="smrt-search-s58" type="search" value="" placeholder="Search features" name="q" class="smrt-input__root search-input__field svelte-zo4qku" data-smrt-control="q" enterkeyhint="search" autocomplete="off" data-smrt-component="Input"/><!----> <!--[-1--><!--]--></div><!----> <!--[0--><div class="chips svelte-q9yl1j" role="group" aria-label="Browse by group"><!--$s59--><button id="smrt-toggle-button-s59" type="button" class="toggle-button svelte-1ihepq pressed" aria-pressed="true" data-smrt-control="smrt-toggle-button-s59" data-smrt-component="ToggleButton"><!---->All<!----></button><!----> <!--[--><!--$s60--><button id="smrt-toggle-button-s60" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s60" data-smrt-component="ToggleButton"><!---->Account access<!----></button><!--$s61--><button id="smrt-toggle-button-s61" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s61" data-smrt-component="ToggleButton"><!---->Activity<!----></button><!--$s62--><button id="smrt-toggle-button-s62" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s62" data-smrt-component="ToggleButton"><!---->Agreements<!----></button><!--$s63--><button id="smrt-toggle-button-s63" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s63" data-smrt-component="ToggleButton"><!---->Analytics<!----></button><!--$s64--><button id="smrt-toggle-button-s64" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s64" data-smrt-component="ToggleButton"><!---->Billing &amp; shipping<!----></button><!--$s65--><button id="smrt-toggle-button-s65" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s65" data-smrt-component="ToggleButton"><!---->Chat<!----></button><!--$s66--><button id="smrt-toggle-button-s66" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s66" data-smrt-component="ToggleButton"><!---->Comments<!----></button><!--$s67--><button id="smrt-toggle-button-s67" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s67" data-smrt-component="ToggleButton"><!---->Commerce<!----></button><!--$s68--><button id="smrt-toggle-button-s68" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s68" data-smrt-component="ToggleButton"><!---->Events<!----></button><!--$s69--><button id="smrt-toggle-button-s69" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s69" data-smrt-component="ToggleButton"><!---->Expenses<!----></button><!--$s70--><button id="smrt-toggle-button-s70" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s70" data-smrt-component="ToggleButton"><!---->Fields<!----></button><!--$s71--><button id="smrt-toggle-button-s71" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s71" data-smrt-component="ToggleButton"><!---->Files and media<!----></button><!--$s72--><button id="smrt-toggle-button-s72" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s72" data-smrt-component="ToggleButton"><!---->Ingestion<!----></button><!--$s73--><button id="smrt-toggle-button-s73" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s73" data-smrt-component="ToggleButton"><!---->Integrations<!----></button><!--$s74--><button id="smrt-toggle-button-s74" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s74" data-smrt-component="ToggleButton"><!---->Inventory<!----></button><!--$s75--><button id="smrt-toggle-button-s75" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s75" data-smrt-component="ToggleButton"><!---->Ledgers<!----></button><!--$s76--><button id="smrt-toggle-button-s76" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s76" data-smrt-component="ToggleButton"><!---->Messaging<!----></button><!--$s77--><button id="smrt-toggle-button-s77" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s77" data-smrt-component="ToggleButton"><!---->Products<!----></button><!--$s78--><button id="smrt-toggle-button-s78" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s78" data-smrt-component="ToggleButton"><!---->Projects<!----></button><!--$s79--><button id="smrt-toggle-button-s79" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s79" data-smrt-component="ToggleButton"><!---->Reports<!----></button><!--$s80--><button id="smrt-toggle-button-s80" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s80" data-smrt-component="ToggleButton"><!---->Sales<!----></button><!--$s81--><button id="smrt-toggle-button-s81" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s81" data-smrt-component="ToggleButton"><!---->Tags<!----></button><!--$s82--><button id="smrt-toggle-button-s82" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s82" data-smrt-component="ToggleButton"><!---->Team collaboration<!----></button><!--$s83--><button id="smrt-toggle-button-s83" type="button" class="toggle-button svelte-1ihepq" aria-pressed="false" data-smrt-control="smrt-toggle-button-s83" data-smrt-component="ToggleButton"><!---->Timesheets<!----></button><!--]--></div><!--]--> <p class="count svelte-q9yl1j" aria-live="polite">39 features</p> <!--[--><section aria-labelledby="group-group:account-access" class="svelte-q9yl1j"><h2 id="group-group:account-access" class="svelte-q9yl1j">Account access</h2> <!--[0--><p class="meta svelte-q9yl1j">Sign in and manage account sessions.</p><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Account access features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Roles and permissions</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-users.roles-and-permissions-summary">Manage tenant roles, memberships, permissions, and controlled sharing.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Roles and permissions: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Roles<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">List and form</span> Permissions<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Roles and permissions: reasons"><!--[--><li>Needs a server because its package does not build for a browser: node:crypto/async_hooks; core migrations; and its package depends on @happyvertical/smrt-profiles, @happyvertical/smrt-tenancy, which do not build for a browser (#3617, #3624, #3626).</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (node:crypto/async_hooks; core migrations) and is tracked in #3617, #3624, #3626.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s84--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s84" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s84" type="checkbox" role="switch" aria-label="Roles and permissions" aria-describedby="feature-users.roles-and-permissions-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Roles and permissions</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Sign in</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-users.sign-in-summary">Access an account through an application-authorized sign-in flow.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Sign in: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Security sessions<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">Settings panel</span> Account security<!--[-1--><!--]--></li><!--]--></ul> <!--[0--><h4 class="svelte-1tvhds4">Needs</h4> <ul class="plain svelte-1tvhds4" aria-label="Sign in: providers"><!--[--><li><span class="kind svelte-1tvhds4">Sign-in (OAuth)</span> Optional: Oidc. <!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--><!--]--> <!--[-1--><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Sign in: reasons"><!--[--><li>Needs a server because its package does not build for a browser: node:crypto/async_hooks; core migrations; and its package depends on @happyvertical/smrt-profiles, @happyvertical/smrt-tenancy, which do not build for a browser (#3617, #3624, #3626).</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (node:crypto/async_hooks; core migrations) and is tracked in #3617, #3624, #3626.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s85--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s85" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s85" type="checkbox" role="switch" aria-label="Sign in" aria-describedby="feature-users.sign-in-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Sign in</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><!--]--></ul></section><section aria-labelledby="group-group:activity" class="svelte-q9yl1j"><h2 id="group-group:activity" class="svelte-q9yl1j">Activity</h2> <!--[0--><p class="meta svelte-q9yl1j">Review authorized record history independently of messaging.</p><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Activity features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Activity log</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-profiles.audit-log-summary">Review who changed a record and when.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Activity log: what you get"><!--[--><li><span class="kind svelte-1tvhds4">Page</span> Activity log<!--[0--><span class="meta where svelte-1tvhds4">(/activity)</span><!--]--></li><!--]--></ul> <!--[0--><h4 class="svelte-1tvhds4">Needs</h4> <ul class="plain svelte-1tvhds4" aria-label="Activity log: providers"><!--[--><li><span class="kind svelte-1tvhds4">Activity</span> Required: Audit-log. <!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--><!--]--> <!--[-1--><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Activity log: reasons"><!--[--><li>Needs a server because its package does not build for a browser: node:crypto in root; core migrations (node:os); and its package depends on @happyvertical/smrt-tenancy, which do not build for a browser (#3617, #3624, #3626).</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (node:crypto in root; core migrations (node:os)) and is tracked in #3617, #3624, #3626.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s86--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s86" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s86" type="checkbox" role="switch" aria-label="Activity log" aria-describedby="feature-profiles.audit-log-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Activity log</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><!--]--></ul></section><section aria-labelledby="group-group:agreements" class="svelte-q9yl1j"><h2 id="group-group:agreements" class="svelte-q9yl1j">Agreements</h2> <!--[0--><p class="meta svelte-q9yl1j">Contracts with customers: general agreements, leases and licence sales.</p><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Agreements features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">General agreements</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-commerce.agreements-summary">Keep signed agreements with customers, and see every contract in one list.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="General agreements: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> General agreements<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">List and form</span> All contracts<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Also adds Customers.</p><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="General agreements: reasons"><!--[--><li>Needs a server because its package does not build for a browser: @happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs; and its package depends on @happyvertical/smrt-agents, @happyvertical/smrt-jobs, @happyvertical/smrt-ledgers, @happyvertical/smrt-products, @happyvertical/smrt-profiles, @happyvertical/smrt-reports, @happyvertical/smrt-secrets, @happyvertical/smrt-subscriptions, @happyvertical/smrt-tenancy, @happyvertical/smrt-users, which do not build for a browser (#3615, #3616, #3617, #3624, #3625, #3626, #3627).</li><li>Needs commerce.customers, which is server.</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (@happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs) and is tracked in #3615, #3616, #3617, #3624, #3625, #3626, #3627.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s87--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s87" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s87" type="checkbox" role="switch" aria-label="General agreements" aria-describedby="feature-commerce.agreements-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">General agreements</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Leases</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-commerce.leases-summary">Rent things out and track the term and the payments due.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Leases: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Leases<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Also adds Customers.</p><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Leases: reasons"><!--[--><li>Needs a server because its package does not build for a browser: @happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs; and its package depends on @happyvertical/smrt-agents, @happyvertical/smrt-jobs, @happyvertical/smrt-ledgers, @happyvertical/smrt-products, @happyvertical/smrt-profiles, @happyvertical/smrt-reports, @happyvertical/smrt-secrets, @happyvertical/smrt-subscriptions, @happyvertical/smrt-tenancy, @happyvertical/smrt-users, which do not build for a browser (#3615, #3616, #3617, #3624, #3625, #3626, #3627).</li><li>Needs commerce.customers, which is server.</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (@happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs) and is tracked in #3615, #3616, #3617, #3624, #3625, #3626, #3627.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s88--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s88" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s88" type="checkbox" role="switch" aria-label="Leases" aria-describedby="feature-commerce.leases-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Leases</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Licence sales</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-commerce.licenses-summary">Sell licences to software, content or other rights.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Licence sales: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Licence sales<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Also adds Customers.</p><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Licence sales: reasons"><!--[--><li>Needs a server because its package does not build for a browser: @happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs; and its package depends on @happyvertical/smrt-agents, @happyvertical/smrt-jobs, @happyvertical/smrt-ledgers, @happyvertical/smrt-products, @happyvertical/smrt-profiles, @happyvertical/smrt-reports, @happyvertical/smrt-secrets, @happyvertical/smrt-subscriptions, @happyvertical/smrt-tenancy, @happyvertical/smrt-users, which do not build for a browser (#3615, #3616, #3617, #3624, #3625, #3626, #3627).</li><li>Needs commerce.customers, which is server.</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (@happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs) and is tracked in #3615, #3616, #3617, #3624, #3625, #3626, #3627.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s89--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s89" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s89" type="checkbox" role="switch" aria-label="Licence sales" aria-describedby="feature-commerce.licenses-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Licence sales</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><!--]--></ul></section><section aria-labelledby="group-package:analytics" class="svelte-q9yl1j"><h2 id="group-package:analytics" class="svelte-q9yl1j">Analytics</h2> <!--[-1--><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Analytics features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Analytics</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-analytics.reports-summary">Save traffic reports for your websites and apps and get a plain-language read on the results.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Analytics: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Analytics properties<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">List and form</span> Analytics reports<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">Page</span> Traffic summary<!--[0--><span class="meta where svelte-1tvhds4">(/analytics/summary)</span><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Analytics: reasons"><!--[--><li>The recipe declares runtime "server".</li><li>Needs a server because its package depends on @happyvertical/smrt-tenancy, which do not build for a browser (#3624).</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet and is tracked in #3624.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s90--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s90" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s90" type="checkbox" role="switch" aria-label="Analytics" aria-describedby="feature-analytics.reports-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Analytics</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><!--]--></ul></section><section aria-labelledby="group-group:billing" class="svelte-q9yl1j"><h2 id="group-group:billing" class="svelte-q9yl1j">Billing &amp; shipping</h2> <!--[0--><p class="meta svelte-q9yl1j">Invoice your customers, record what they pay and ship what they ordered.</p><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Billing &amp; shipping features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Invoicing</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-commerce.invoicing-summary">Bill customers and record the payments that come in.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Invoicing: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Invoices<!--[-1--><!--]--></li><li><span class="kind svelte-1tvhds4">List and form</span> Payments<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Also adds Customers.</p><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Invoicing: reasons"><!--[--><li>Needs a server because its package does not build for a browser: @happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs; and its package depends on @happyvertical/smrt-agents, @happyvertical/smrt-jobs, @happyvertical/smrt-ledgers, @happyvertical/smrt-products, @happyvertical/smrt-profiles, @happyvertical/smrt-reports, @happyvertical/smrt-secrets, @happyvertical/smrt-subscriptions, @happyvertical/smrt-tenancy, @happyvertical/smrt-users, which do not build for a browser (#3615, #3616, #3617, #3624, #3625, #3626, #3627).</li><li>Needs commerce.customers, which is server.</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (@happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs) and is tracked in #3615, #3616, #3617, #3624, #3625, #3626, #3627.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s91--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s91" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s91" type="checkbox" role="switch" aria-label="Invoicing" aria-describedby="feature-commerce.invoicing-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Invoicing</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Shipping</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-commerce.fulfillment-summary">Pack, ship and deliver orders, with tracking.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Shipping: what you get"><!--[--><li><span class="kind svelte-1tvhds4">List and form</span> Shipments<!--[-1--><!--]--></li><!--]--></ul> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Also adds Customers, Sales.</p><!--]--> <!--[0--><details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Why Server?</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><!--[0--><ul class="plain reasons svelte-1tvhds4" aria-label="Shipping: reasons"><!--[--><li>Needs a server because its package does not build for a browser: @happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs; and its package depends on @happyvertical/smrt-agents, @happyvertical/smrt-jobs, @happyvertical/smrt-ledgers, @happyvertical/smrt-products, @happyvertical/smrt-profiles, @happyvertical/smrt-reports, @happyvertical/smrt-secrets, @happyvertical/smrt-subscriptions, @happyvertical/smrt-tenancy, @happyvertical/smrt-users, which do not build for a browser (#3615, #3616, #3617, #3624, #3625, #3626, #3627).</li><li>Needs commerce.sales, which is server.</li><!--]--></ul><!--]--> <!--[-1--><!--]--> <!--[0--><p class="meta svelte-1tvhds4">Its package does not build for a browser yet (@happyvertical/payments btcpay (node:crypto); core migrations (node:os). The jobs runner edge (#3615) is reported on smrt-jobs) and is tracked in #3615, #3616, #3617, #3624, #3625, #3626, #3627.</p><!--]--><!----><!--]--></div></details><!--]--> <div class="foot svelte-1tvhds4"><!--$s92--><label class="smrt-switch__root smrt-switch__md svelte-1kh2dfy" data-smrt-hit-target="" data-smrt-control="smrt-switch-s92" data-smrt-component="Switch"><!--[-1--><!--]--> <span class="smrt-switch__control svelte-1kh2dfy" data-smrt-part="control"><input id="smrt-switch-s92" type="checkbox" role="switch" aria-label="Shipping" aria-describedby="feature-commerce.fulfillment-summary" data-smrt-part="input" class="svelte-1kh2dfy"/> <span class="smrt-switch__track svelte-1kh2dfy" data-smrt-part="track" aria-hidden="true"><span class="smrt-switch__thumb svelte-1kh2dfy" data-smrt-part="thumb"></span></span></span> <!--[0--><span class="smrt-switch__label svelte-1kh2dfy" data-smrt-part="label">Shipping</span><!--]--></label><!----> <!--[-1--><!--]--></div></li><!--]--></ul></section><section aria-labelledby="group-package:chat" class="svelte-q9yl1j"><h2 id="group-package:chat" class="svelte-q9yl1j">Chat</h2> <!--[-1--><!--]--> <ul class="cards svelte-q9yl1j" aria-label="Chat features"><!--[--><li class="card svelte-1tvhds4"><div class="head svelte-1tvhds4"><h3 class="svelte-1tvhds4">Assistant</h3> <!--[0--><span class="smrt-badge__root smrt-badge__default smrt-badge__sm svelte-p89d2c" title="Needs a server, which this browser-only demo does not have." data-smrt-component="Badge"><!---->Server<!----></span><!--]--></div> <p class="summary svelte-1tvhds4" id="feature-chat.assistant-summary">Ask an AI assistant about the page you are on, from a dock in the app shell.</p> <p class="meta svelte-1tvhds4"><!--[0-->Needs a server, which this browser-only demo does not have.<!--]--></p> <h4 class="svelte-1tvhds4">You get</h4> <ul class="plain svelte-1tvhds4" aria-label="Assistant: what you get"><!--[--><li><span class="kind svelte-1tvhds4">Shell widget</span> Assistant<!--[0--><span class="meta where svelte-1tvhds4">(header, right side)</span><!--]--></li><!--]--></ul> <!--[0--><h4 class="svelte-1tvhds4">Needs</h4> <ul class="plain svelte-1tvhds4" aria-label="Assistant: providers"><!--[--><li><span class="kind svelte-1tvhds4">Language model</span> Required: OpenAI, Anthropic, Gemini, WebLLM or BitGPU. <!--[0--><span class="meta svelte-1tvhds4">WebLLM and BitGPU
@@ -73,7 +73,7 @@
73
73
  customer pays none.</p> <ul class="svelte-1adyoey"><!--[--><li data-tax-code="exempt" class="svelte-1adyoey"><span class="name">Exempt</span> <span class="rates svelte-1adyoey">No tax, reported as exempt</span></li><li data-tax-code="zero-rated" class="svelte-1adyoey"><span class="name">Zero-rated</span> <span class="rates svelte-1adyoey">No tax, reported as zero rated</span></li><li data-tax-code="ca-gst" class="svelte-1adyoey"><span class="name">Canada GST</span> <span class="rates svelte-1adyoey">Canada GST 5%</span></li><li data-tax-code="ca-gst-pst-bc" class="svelte-1adyoey"><span class="name">BC GST + PST</span> <span class="rates svelte-1adyoey">Canada GST 5% + BC PST 7%</span></li><li data-tax-code="ca-hst-on" class="svelte-1adyoey"><span class="name">Ontario HST</span> <span class="rates svelte-1adyoey">Ontario HST 13%</span></li><li data-tax-code="uk-vat-standard" class="svelte-1adyoey"><span class="name">UK VAT standard</span> <span class="rates svelte-1adyoey">UK VAT 20%</span></li><li data-tax-code="au-gst" class="svelte-1adyoey"><span class="name">Australia GST</span> <span class="rates svelte-1adyoey">Australia GST 10%</span></li><li data-tax-code="nz-gst" class="svelte-1adyoey"><span class="name">New Zealand GST</span> <span class="rates svelte-1adyoey">New Zealand GST 15%</span></li><!--]--></ul> <p class="meta svelte-1adyoey">The country codes are smrt’s examples; check they apply before using one.</p></section><!----></div><!----></div><!--]--> <!--[0--><div hidden=""><div class="export svelte-17nkvtk"><p class="meta svelte-17nkvtk">Your recipes, their options, the theme, the layout and customised pages,
74
74
  kept together in this browser as one cookbook. Sample records are not part
75
75
  of it.</p> <section class="block svelte-17nkvtk" aria-labelledby="summary-heading" data-export-section="summary"><h2 id="summary-heading" class="svelte-17nkvtk">In this cookbook</h2> <!--[-1--><p class="quiet svelte-17nkvtk">Nothing customised yet. Add recipes or apply a cookbook first.</p><!--]--></section> <section class="block svelte-17nkvtk" aria-labelledby="prompt-heading" data-export-section="prompt"><h2 id="prompt-heading" class="svelte-17nkvtk">Copy prompt for your coding agent</h2> <p class="meta svelte-17nkvtk" id="prompt-note">Paste it into Claude Code, Codex or another coding agent. The prompt
76
- carries the cookbook, creates the app <code class="svelte-17nkvtk">my-app</code> with the smrt CLI 0.57.4 and
76
+ carries the cookbook, creates the app <code class="svelte-17nkvtk">my-app</code> with the smrt CLI 0.57.6 and
77
77
  starts it. About 1.2 KB.</p> <textarea readonly="" aria-label="Prompt for your coding agent" rows="10" aria-describedby="prompt-note" class="textarea prompt svelte-5xfgxc" spellcheck="false" wrap="soft" data-smrt-component="Textarea">Create a new s-m-r-t app from the cookbook below. Work in a new, empty directory outside any existing project, run the steps in order, and when you finish report what you ran and what happened, including anything that failed.
78
78
 
79
79
  1. Prerequisites: Node 26 or newer (`node --version`), git, and pnpm 11 or newer (`npm install -g pnpm` if missing).
@@ -86,16 +86,16 @@ COOKBOOK_EOF
86
86
 
87
87
  3. Validate it, then create the app in ./my-app:
88
88
 
89
- npx -y @happyvertical/smrt-cli@0.57.4 cookbook validate cookbook.json
90
- npx -y @happyvertical/smrt-cli@0.57.4 cookbook apply cookbook.json my-app
89
+ npx -y @happyvertical/smrt-cli@0.57.6 cookbook validate cookbook.json
90
+ npx -y @happyvertical/smrt-cli@0.57.6 cookbook apply cookbook.json my-app
91
91
 
92
92
  4. Set it up (in a subshell, so the commands below still run from this directory):
93
93
 
94
94
  (cd my-app &amp;&amp; pnpm exec smrt app install)
95
95
 
96
- If any step fails, run `pnpm exec smrt app doctor` inside my-app and include its findings in your report. Do not hand-edit the app's smrt.cookbook.json: change cookbook.json and run `npx -y @happyvertical/smrt-cli@0.57.4 cookbook apply cookbook.json --into my-app` instead.
96
+ If any step fails, run `pnpm exec smrt app doctor` inside my-app and include its findings in your report. Do not hand-edit the app's smrt.cookbook.json: change cookbook.json and run `npx -y @happyvertical/smrt-cli@0.57.6 cookbook apply cookbook.json --into my-app` instead.
97
97
  </textarea><!----> <div class="actions svelte-17nkvtk" data-export-actions="primary"><!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__primary smrt-button__md svelte-1yq1ej5" aria-live="polite" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><!---->Copy prompt<!----></span></button><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__secondary smrt-button__md svelte-1yq1ej5" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><!---->Download cookbook<!----></span></button><!--]--><!----></div> <p class="notice svelte-17nkvtk" role="status" aria-live="polite"></p></section> <section class="block svelte-17nkvtk" aria-labelledby="file-heading" data-export-section="file"><h2 id="file-heading" class="svelte-17nkvtk">The downloaded file</h2> <p class="meta svelte-17nkvtk">Download writes <code class="svelte-17nkvtk">my-app.cookbook.json</code> (133 bytes). To make the app from
98
- it yourself, run this where the file is:</p> <div class="command svelte-17nkvtk"><code data-export-command="" class="svelte-17nkvtk">npx -y @happyvertical/smrt-cli@0.57.4 cookbook apply my-app.cookbook.json my-app</code> <!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__secondary smrt-button__md svelte-1yq1ej5" aria-live="polite" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><!---->Copy command<!----></span></button><!--]--><!----></div> <details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Preview JSON</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><pre class="json svelte-17nkvtk">{
98
+ it yourself, run this where the file is:</p> <div class="command svelte-17nkvtk"><code data-export-command="" class="svelte-17nkvtk">npx -y @happyvertical/smrt-cli@0.57.6 cookbook apply my-app.cookbook.json my-app</code> <!--[-1--><button type="button" aria-busy="false" class="smrt-button__root smrt-button__secondary smrt-button__md svelte-1yq1ej5" aria-live="polite" data-smrt-component="Button"><!--[-1--><!--]--> <span class="smrt-button__content svelte-1yq1ej5" data-smrt-part="label"><!---->Copy command<!----></span></button><!--]--><!----></div> <details class="disclosure svelte-ma3p8w" data-smrt-component="Disclosure"><summary aria-disabled="false" class="svelte-ma3p8w"><span>Preview JSON</span><span class="chevron svelte-ma3p8w" aria-hidden="true">⌄</span></summary> <div class="content svelte-ma3p8w"><!--[0--><pre class="json svelte-17nkvtk">{
99
99
  "$schema": "https://s-m-r-t.dev/schemas/cookbook/v1.json",
100
100
  "version": 1,
101
101
  "recipes": [],
@@ -107,15 +107,15 @@ If any step fails, run `pnpm exec smrt app doctor` inside my-app and include its
107
107
 
108
108
  <script>
109
109
  {
110
- __sveltekit_1y8xily = {
110
+ __sveltekit_1hn4qm0 = {
111
111
  base: new URL(".", location).pathname.slice(0, -1)
112
112
  };
113
113
 
114
114
  const element = document.currentScript.parentElement;
115
115
 
116
116
  Promise.all([
117
- import("./_app/immutable/entry/start.DnB4rZdO.js"),
118
- import("./_app/immutable/entry/app.C-mGsUDb.js")
117
+ import("./_app/immutable/entry/start.C01jT-Kj.js"),
118
+ import("./_app/immutable/entry/app.C_C191oT.js")
119
119
  ]).then(([kit, app]) => {
120
120
  kit.start(app, element, {
121
121
  node_ids: [0, 2],