@happyvertical/smrt-planner 0.0.1 → 0.0.2

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 (414) hide show
  1. package/app/404.html +12 -12
  2. package/app/_app/immutable/chunks/2jFBkS1C.js +1 -0
  3. package/app/_app/immutable/chunks/6P9zxrzU.js +1 -0
  4. package/app/_app/immutable/chunks/{DyGfbRG-.js → BnRri03M.js} +1 -1
  5. package/app/_app/immutable/chunks/Ci0DUht6.js +34 -0
  6. package/app/_app/immutable/chunks/{CV-2zt0K.js → CsprTb3f.js} +2 -2
  7. package/app/_app/immutable/chunks/{D333l2GL.js → DkR8_Ws6.js} +1 -1
  8. package/app/_app/immutable/chunks/{DJtH-lRi.js → Xp1g1t4n.js} +1 -1
  9. package/app/_app/immutable/entry/{app.D5JJain6.js → app.IZIJXhgq.js} +2 -2
  10. package/app/_app/immutable/entry/start.BuaYHD1N.js +1 -0
  11. package/app/_app/immutable/nodes/{0.CL1MxOva.js → 0.m_U8WC7E.js} +3 -3
  12. package/app/_app/immutable/nodes/{1.BO731RRg.js → 1.Crw8ULhB.js} +1 -1
  13. package/app/_app/immutable/nodes/{12.BmZyLHbM.js → 12.BIocA1aI.js} +1 -1
  14. package/app/_app/immutable/nodes/{2.BEw046av.js → 2.CR5BwGnt.js} +2 -2
  15. package/app/_app/immutable/nodes/{3.DvwpTAQA.js → 3.1B56hgAG.js} +1 -1
  16. package/app/_app/immutable/nodes/{4.qrT4bnmS.js → 4.SSIC7sUh.js} +1 -1
  17. package/app/_app/immutable/nodes/{5.DDLa2uhV.js → 5.DgdwleDQ.js} +1 -1
  18. package/app/_app/immutable/nodes/{6.DN0QTY6z.js → 6.DmD9rqLU.js} +1 -1
  19. package/app/_app/immutable/nodes/{7.C_8N82Wq.js → 7.DdngsBmo.js} +1 -1
  20. package/app/_app/version.json +1 -1
  21. package/app/ai/index.html +14 -14
  22. package/app/blueprint/index.html +13 -13
  23. package/app/cookbook/index.html +13 -13
  24. package/app/index.html +13 -13
  25. package/app/m/ads/AdDeliveryTier/index.html +14 -14
  26. package/app/m/ads/AdEvent/index.html +14 -14
  27. package/app/m/ads/AdFormat/index.html +14 -14
  28. package/app/m/ads/AdGroup/index.html +14 -14
  29. package/app/m/ads/AdVariation/index.html +14 -14
  30. package/app/m/analytics/AnalyticsDataStream/index.html +14 -14
  31. package/app/m/analytics/AnalyticsEvent/index.html +14 -14
  32. package/app/m/analytics/AnalyticsProperty/index.html +14 -14
  33. package/app/m/analytics/AnalyticsReport/index.html +14 -14
  34. package/app/m/approvals/ApprovalEvent/index.html +14 -14
  35. package/app/m/approvals/ApprovalPolicy/index.html +14 -14
  36. package/app/m/approvals/ApprovalRequest/index.html +14 -14
  37. package/app/m/assets/Asset/index.html +14 -14
  38. package/app/m/assets/AssetAssociation/index.html +14 -14
  39. package/app/m/assets/AssetMetafield/index.html +14 -14
  40. package/app/m/assets/AssetStatus/index.html +14 -14
  41. package/app/m/assets/AssetType/index.html +14 -14
  42. package/app/m/assets/Folder/index.html +14 -14
  43. package/app/m/chat/AgentSession/index.html +14 -14
  44. package/app/m/chat/ChatMessage/index.html +14 -14
  45. package/app/m/chat/ChatParticipant/index.html +14 -14
  46. package/app/m/chat/ChatReaction/index.html +14 -14
  47. package/app/m/chat/ChatRoom/index.html +14 -14
  48. package/app/m/chat/ChatThread/index.html +14 -14
  49. package/app/m/chat/VoiceGatewayTurn/index.html +14 -14
  50. package/app/m/chat/VoiceSession/index.html +14 -14
  51. package/app/m/commerce/Agreement/index.html +14 -14
  52. package/app/m/commerce/Cart/index.html +14 -14
  53. package/app/m/commerce/Contract/index.html +14 -14
  54. package/app/m/commerce/ContractLineItem/index.html +14 -14
  55. package/app/m/commerce/Customer/index.html +14 -14
  56. package/app/m/commerce/Estimate/index.html +14 -14
  57. package/app/m/commerce/Fulfillment/index.html +14 -14
  58. package/app/m/commerce/FulfillmentLineItem/index.html +14 -14
  59. package/app/m/commerce/Invoice/index.html +14 -14
  60. package/app/m/commerce/InvoiceLineItem/index.html +14 -14
  61. package/app/m/commerce/Lease/index.html +14 -14
  62. package/app/m/commerce/LicenseSale/index.html +14 -14
  63. package/app/m/commerce/Order/index.html +14 -14
  64. package/app/m/commerce/Payment/index.html +14 -14
  65. package/app/m/commerce/PaymentAllocation/index.html +14 -14
  66. package/app/m/commerce/PaymentInstrument/index.html +14 -14
  67. package/app/m/commerce/PaymentIntent/index.html +14 -14
  68. package/app/m/commerce/Payout/index.html +14 -14
  69. package/app/m/commerce/ProductionOrder/index.html +14 -14
  70. package/app/m/commerce/PurchaseOrder/index.html +14 -14
  71. package/app/m/commerce/Vendor/index.html +14 -14
  72. package/app/m/commerce/WholesaleOrder/index.html +14 -14
  73. package/app/m/content/Content/index.html +14 -14
  74. package/app/m/content/ContentContribution/index.html +14 -14
  75. package/app/m/content/ContentContributionAttachment/index.html +14 -14
  76. package/app/m/content/ContentContributionRevision/index.html +14 -14
  77. package/app/m/content/ContentContributionType/index.html +14 -14
  78. package/app/m/content/ContentContributor/index.html +14 -14
  79. package/app/m/content/ContentCorrection/index.html +14 -14
  80. package/app/m/content/ContentFeedSource/index.html +14 -14
  81. package/app/m/content/ContentGovernanceAssignment/index.html +14 -14
  82. package/app/m/content/ContentGovernancePolicy/index.html +14 -14
  83. package/app/m/content/ContentGovernanceProfile/index.html +14 -14
  84. package/app/m/content/ContentReference/index.html +14 -14
  85. package/app/m/content/ContentReview/index.html +14 -14
  86. package/app/m/content/ContentVersion/index.html +14 -14
  87. package/app/m/content/Contents/index.html +14 -14
  88. package/app/m/events/Event/index.html +14 -14
  89. package/app/m/events/EventParticipant/index.html +14 -14
  90. package/app/m/events/EventSeries/index.html +14 -14
  91. package/app/m/events/EventType/index.html +14 -14
  92. package/app/m/facts/Fact/index.html +14 -14
  93. package/app/m/facts/FactContent/index.html +14 -14
  94. package/app/m/facts/FactEvidence/index.html +14 -14
  95. package/app/m/facts/FactSource/index.html +14 -14
  96. package/app/m/facts/FactSubject/index.html +14 -14
  97. package/app/m/facts/FactTag/index.html +14 -14
  98. package/app/m/fields/FieldPolicy/index.html +14 -14
  99. package/app/m/fields/FieldPolicySuggestion/index.html +14 -14
  100. package/app/m/fields/FieldUsageCounter/index.html +14 -14
  101. package/app/m/images/Image/index.html +14 -14
  102. package/app/m/inventory/InventoryLocation/index.html +14 -14
  103. package/app/m/inventory/StockLevel/index.html +14 -14
  104. package/app/m/inventory/StockMovement/index.html +14 -14
  105. package/app/m/ledgers/Account/index.html +14 -14
  106. package/app/m/ledgers/Journal/index.html +14 -14
  107. package/app/m/ledgers/JournalEntry/index.html +14 -14
  108. package/app/m/manufacturing/Assembly/index.html +14 -14
  109. package/app/m/manufacturing/BillOfMaterials/index.html +14 -14
  110. package/app/m/manufacturing/BomLine/index.html +14 -14
  111. package/app/m/manufacturing/Operation/index.html +14 -14
  112. package/app/m/manufacturing/ProductionRun/index.html +14 -14
  113. package/app/m/manufacturing/ProductionRunCompletion/index.html +14 -14
  114. package/app/m/manufacturing/RoutingStep/index.html +14 -14
  115. package/app/m/marketing/Campaign/index.html +14 -14
  116. package/app/m/marketing/CampaignChannel/index.html +14 -14
  117. package/app/m/marketing/CampaignMetricSnapshot/index.html +14 -14
  118. package/app/m/messages/Account/index.html +14 -14
  119. package/app/m/messages/Attachment/index.html +14 -14
  120. package/app/m/messages/Blacklist/index.html +14 -14
  121. package/app/m/messages/Email/failed-sends/index.html +14 -14
  122. package/app/m/messages/Email/index.html +14 -14
  123. package/app/m/messages/Email/mailbox/index.html +14 -14
  124. package/app/m/messages/EmailAccount/index.html +14 -14
  125. package/app/m/messages/EmailFolder/index.html +14 -14
  126. package/app/m/messages/Message/index.html +14 -14
  127. package/app/m/messages/MessagingEndpoint/index.html +14 -14
  128. package/app/m/messages/PersonaMessageRoute/index.html +14 -14
  129. package/app/m/messages/SlackAccount/index.html +14 -14
  130. package/app/m/messages/SlackMessage/index.html +14 -14
  131. package/app/m/messages/TelegramAccount/index.html +14 -14
  132. package/app/m/messages/Tweet/index.html +14 -14
  133. package/app/m/messages/TwitterAccount/index.html +14 -14
  134. package/app/m/messages/Whitelist/index.html +14 -14
  135. package/app/m/messages/ZulipAccount/index.html +14 -14
  136. package/app/m/places/Place/index.html +14 -14
  137. package/app/m/places/PlaceType/index.html +14 -14
  138. package/app/m/preferences/UiPreferenceRecord/index.html +14 -14
  139. package/app/m/products/Category/index.html +14 -14
  140. package/app/m/products/Material/index.html +14 -14
  141. package/app/m/products/Product/index.html +14 -14
  142. package/app/m/products/Product/ingredients/index.html +14 -14
  143. package/app/m/products/ProductVariant/index.html +14 -14
  144. package/app/m/products/Sku/index.html +14 -14
  145. package/app/m/profiles/ApiKey/index.html +14 -14
  146. package/app/m/profiles/Bot/index.html +14 -14
  147. package/app/m/profiles/MagicLinkToken/index.html +14 -14
  148. package/app/m/profiles/NostrIdentity/index.html +14 -14
  149. package/app/m/profiles/OidcIdentity/index.html +14 -14
  150. package/app/m/profiles/Organization/index.html +14 -14
  151. package/app/m/profiles/Person/index.html +14 -14
  152. package/app/m/profiles/Profile/index.html +14 -14
  153. package/app/m/profiles/ProfileMetadata/index.html +14 -14
  154. package/app/m/profiles/ProfileMetafield/index.html +14 -14
  155. package/app/m/profiles/ProfileRelationship/index.html +14 -14
  156. package/app/m/profiles/ProfileRelationshipTerm/index.html +14 -14
  157. package/app/m/profiles/ProfileRelationshipType/index.html +14 -14
  158. package/app/m/profiles/ProfileType/index.html +14 -14
  159. package/app/m/projects/Comment/index.html +14 -14
  160. package/app/m/projects/Issue/index.html +14 -14
  161. package/app/m/projects/Label/index.html +14 -14
  162. package/app/m/projects/Project/index.html +14 -14
  163. package/app/m/projects/ProjectIntegration/index.html +14 -14
  164. package/app/m/projects/PullRequest/index.html +14 -14
  165. package/app/m/projects/Repository/index.html +14 -14
  166. package/app/m/properties/Property/index.html +14 -14
  167. package/app/m/properties/Zone/index.html +14 -14
  168. package/app/m/reports/RuntimeReport/index.html +14 -14
  169. package/app/m/reports/SmrtPrincipalReportRefreshTask/index.html +14 -14
  170. package/app/m/reports/SmrtReportLock/index.html +14 -14
  171. package/app/m/reports/SmrtReportRefreshTask/index.html +14 -14
  172. package/app/m/reports/SmrtReportRun/index.html +14 -14
  173. package/app/m/reports/SmrtReportSchedule/index.html +14 -14
  174. package/app/m/reports/SmrtReportWatermark/index.html +14 -14
  175. package/app/m/sales/AttributionException/index.html +14 -14
  176. package/app/m/sales/AttributionPolicy/index.html +14 -14
  177. package/app/m/sales/Commission/index.html +14 -14
  178. package/app/m/sales/CommissionAdjustment/index.html +14 -14
  179. package/app/m/sales/CommissionPayout/index.html +14 -14
  180. package/app/m/sales/CommissionPlan/index.html +14 -14
  181. package/app/m/sales/Earner/index.html +14 -14
  182. package/app/m/sales/EarnerSourceAttribution/index.html +14 -14
  183. package/app/m/sales/EarningEvent/index.html +14 -14
  184. package/app/m/sales/ExecutedAgreement/index.html +14 -14
  185. package/app/m/sales/Lead/index.html +14 -14
  186. package/app/m/sales/Opportunity/index.html +14 -14
  187. package/app/m/sales/OpportunityConversion/index.html +14 -14
  188. package/app/m/sales/PipelineDefinition/index.html +14 -14
  189. package/app/m/sales/PipelineStage/index.html +14 -14
  190. package/app/m/sales/Referral/index.html +14 -14
  191. package/app/m/sales/ReferralAgreement/index.html +14 -14
  192. package/app/m/sales/ReferralLink/index.html +14 -14
  193. package/app/m/sales/ReferralProgram/index.html +14 -14
  194. package/app/m/sales/ReferralTermSnapshot/index.html +14 -14
  195. package/app/m/sales/ReferralTouch/index.html +14 -14
  196. package/app/m/sales/Referrer/index.html +14 -14
  197. package/app/m/sales/SalesActivity/index.html +14 -14
  198. package/app/m/sales/SalesRepresentative/index.html +14 -14
  199. package/app/m/sites/Site/index.html +14 -14
  200. package/app/m/sites/SiteAgentBinding/index.html +14 -14
  201. package/app/m/social/OAuthState/index.html +14 -14
  202. package/app/m/social/SocialAccount/index.html +14 -14
  203. package/app/m/social/SocialPost/index.html +14 -14
  204. package/app/m/social/SocialPostAnalyticsSnapshot/index.html +14 -14
  205. package/app/m/subscriptions/BillingAdjustment/index.html +14 -14
  206. package/app/m/subscriptions/ClientCharge/index.html +14 -14
  207. package/app/m/subscriptions/CreditGrant/index.html +14 -14
  208. package/app/m/subscriptions/PricingRule/index.html +14 -14
  209. package/app/m/subscriptions/RetailCharge/index.html +14 -14
  210. package/app/m/subscriptions/SpendingPolicy/index.html +14 -14
  211. package/app/m/subscriptions/SubscriptionPlan/index.html +14 -14
  212. package/app/m/subscriptions/TenantSubscription/index.html +14 -14
  213. package/app/m/subscriptions/TenantUsageMetric/index.html +14 -14
  214. package/app/m/support/ServiceTimeEntry/index.html +14 -14
  215. package/app/m/support/SupportAiRun/index.html +14 -14
  216. package/app/m/support/SupportAvailability/index.html +14 -14
  217. package/app/m/support/SupportCase/index.html +14 -14
  218. package/app/m/support/SupportCaseEvent/index.html +14 -14
  219. package/app/m/support/SupportChannelBinding/index.html +14 -14
  220. package/app/m/support/SupportCharge/index.html +14 -14
  221. package/app/m/support/SupportCompensation/index.html +14 -14
  222. package/app/m/support/SupportCompensationPlan/index.html +14 -14
  223. package/app/m/support/SupportEscalation/index.html +14 -14
  224. package/app/m/support/SupportInteraction/index.html +14 -14
  225. package/app/m/support/SupportPlan/index.html +14 -14
  226. package/app/m/support/SupportPolicy/index.html +14 -14
  227. package/app/m/support/SupportQualification/index.html +14 -14
  228. package/app/m/support/SupportServiceTarget/index.html +14 -14
  229. package/app/m/support/SupportSpecialist/index.html +14 -14
  230. package/app/m/support/SupportWorkLink/index.html +14 -14
  231. package/app/m/tags/Tag/index.html +14 -14
  232. package/app/m/tags/TagAlias/index.html +14 -14
  233. package/app/m/timesheets/AttendanceBreak/index.html +14 -14
  234. package/app/m/timesheets/AttendancePunch/index.html +14 -14
  235. package/app/m/timesheets/ServiceChargeSnapshot/index.html +14 -14
  236. package/app/m/timesheets/ServiceCompensationSnapshot/index.html +14 -14
  237. package/app/m/timesheets/ServiceTimeEntry/index.html +14 -14
  238. package/app/m/users/AccessRequest/index.html +14 -14
  239. package/app/m/users/Group/index.html +14 -14
  240. package/app/m/users/GroupMember/index.html +14 -14
  241. package/app/m/users/GroupRole/index.html +14 -14
  242. package/app/m/users/Membership/index.html +14 -14
  243. package/app/m/users/MembershipOverride/index.html +14 -14
  244. package/app/m/users/Permission/index.html +14 -14
  245. package/app/m/users/ResourceGrant/index.html +14 -14
  246. package/app/m/users/Role/index.html +14 -14
  247. package/app/m/users/RolePermission/index.html +14 -14
  248. package/app/m/users/Session/index.html +14 -14
  249. package/app/m/users/Tenant/index.html +14 -14
  250. package/app/m/users/TenantIntegration/index.html +14 -14
  251. package/app/m/users/TenantPermissionOverride/index.html +14 -14
  252. package/app/m/users/User/index.html +14 -14
  253. package/app/m/users/UsersCliAuthRequest/index.html +14 -14
  254. package/app/m/users/UsersMagicLinkToken/index.html +14 -14
  255. package/app/m/video/Character/index.html +14 -14
  256. package/app/m/video/CharacterAsset/index.html +14 -14
  257. package/app/m/video/CompositeJob/index.html +14 -14
  258. package/app/m/video/Performer/index.html +14 -14
  259. package/app/m/video/PerformerAsset/index.html +14 -14
  260. package/app/m/video/Scene/index.html +14 -14
  261. package/app/m/video/SceneAsset/index.html +14 -14
  262. package/app/m/video/VideoComposition/index.html +14 -14
  263. package/app/m/video/VideoCompositionAsset/index.html +14 -14
  264. package/app/m/video/VideoSequence/index.html +14 -14
  265. package/app/m/video/VideoSequenceAsset/index.html +14 -14
  266. package/app/m/video/VideoShot/index.html +14 -14
  267. package/app/m/video/VideoShotAsset/index.html +14 -14
  268. package/app/m/video/VideoShotCharacter/index.html +14 -14
  269. package/app/m/video/VideoWorkflow/index.html +14 -14
  270. package/app/m/voice/VoiceOutput/index.html +14 -14
  271. package/app/m/voice/VoiceProfile/index.html +14 -14
  272. package/app/m/voice/VoiceSample/index.html +14 -14
  273. package/app/packages/ads/index.html +12 -12
  274. package/app/packages/analytics/index.html +12 -12
  275. package/app/packages/approvals/index.html +12 -12
  276. package/app/packages/assets/index.html +12 -12
  277. package/app/packages/chat/index.html +12 -12
  278. package/app/packages/comments/index.html +12 -12
  279. package/app/packages/commerce/index.html +12 -12
  280. package/app/packages/content/index.html +12 -12
  281. package/app/packages/events/index.html +12 -12
  282. package/app/packages/expenses/index.html +12 -12
  283. package/app/packages/facts/index.html +12 -12
  284. package/app/packages/fields/index.html +12 -12
  285. package/app/packages/human-resources/index.html +12 -12
  286. package/app/packages/images/index.html +12 -12
  287. package/app/packages/index.html +12 -12
  288. package/app/packages/inventory/index.html +12 -12
  289. package/app/packages/ledgers/index.html +12 -12
  290. package/app/packages/manufacturing/index.html +12 -12
  291. package/app/packages/marketing/index.html +12 -12
  292. package/app/packages/messages/index.html +12 -12
  293. package/app/packages/places/index.html +12 -12
  294. package/app/packages/preferences/index.html +12 -12
  295. package/app/packages/products/index.html +12 -12
  296. package/app/packages/profiles/index.html +12 -12
  297. package/app/packages/projects/index.html +12 -12
  298. package/app/packages/properties/index.html +12 -12
  299. package/app/packages/reports/index.html +12 -12
  300. package/app/packages/sales/index.html +12 -12
  301. package/app/packages/sites/index.html +12 -12
  302. package/app/packages/social/index.html +12 -12
  303. package/app/packages/subscriptions/index.html +12 -12
  304. package/app/packages/support/index.html +12 -12
  305. package/app/packages/tags/index.html +12 -12
  306. package/app/packages/timesheets/index.html +12 -12
  307. package/app/packages/users/index.html +12 -12
  308. package/app/packages/video/index.html +12 -12
  309. package/app/packages/voice/index.html +12 -12
  310. package/app/recipes/account-access/help/index.html +12 -12
  311. package/app/recipes/account-access/index.html +12 -12
  312. package/app/recipes/activity/help/index.html +12 -12
  313. package/app/recipes/activity/index.html +12 -12
  314. package/app/recipes/agreements/help/index.html +12 -12
  315. package/app/recipes/agreements/index.html +12 -12
  316. package/app/recipes/analytics.reports/help/index.html +12 -12
  317. package/app/recipes/analytics.reports/index.html +12 -12
  318. package/app/recipes/assets/help/index.html +12 -12
  319. package/app/recipes/assets/index.html +12 -12
  320. package/app/recipes/billing/help/index.html +12 -12
  321. package/app/recipes/billing/index.html +12 -12
  322. package/app/recipes/chat.assistant/help/index.html +12 -12
  323. package/app/recipes/chat.assistant/index.html +12 -12
  324. package/app/recipes/comments/help/index.html +12 -12
  325. package/app/recipes/comments/index.html +12 -12
  326. package/app/recipes/commerce.customers/help/index.html +12 -12
  327. package/app/recipes/commerce.customers/index.html +12 -12
  328. package/app/recipes/commerce.estimates/help/index.html +12 -12
  329. package/app/recipes/commerce.estimates/index.html +12 -12
  330. package/app/recipes/commerce.purchases/help/index.html +12 -12
  331. package/app/recipes/commerce.purchases/index.html +12 -12
  332. package/app/recipes/commerce.sales/help/index.html +12 -12
  333. package/app/recipes/commerce.sales/index.html +12 -12
  334. package/app/recipes/commerce.vendors/help/index.html +12 -12
  335. package/app/recipes/commerce.vendors/index.html +12 -12
  336. package/app/recipes/commerce.wholesale/help/index.html +12 -12
  337. package/app/recipes/commerce.wholesale/index.html +12 -12
  338. package/app/recipes/events.calendar/help/index.html +12 -12
  339. package/app/recipes/events.calendar/index.html +12 -12
  340. package/app/recipes/fields.form-customization/help/index.html +12 -12
  341. package/app/recipes/fields.form-customization/index.html +12 -12
  342. package/app/recipes/inventory.stock/help/index.html +12 -12
  343. package/app/recipes/inventory.stock/index.html +12 -12
  344. package/app/recipes/ledgers.bookkeeping/help/index.html +12 -12
  345. package/app/recipes/ledgers.bookkeeping/index.html +12 -12
  346. package/app/recipes/messages/help/index.html +12 -12
  347. package/app/recipes/messages/index.html +12 -12
  348. package/app/recipes/products/help/index.html +12 -12
  349. package/app/recipes/products/index.html +12 -12
  350. package/app/recipes/projects.tracker/help/index.html +12 -12
  351. package/app/recipes/projects.tracker/index.html +12 -12
  352. package/app/recipes/reports.materialized/help/index.html +12 -12
  353. package/app/recipes/reports.materialized/index.html +12 -12
  354. package/app/recipes/sales.pipeline/help/index.html +12 -12
  355. package/app/recipes/sales.pipeline/index.html +12 -12
  356. package/app/recipes/tags.taxonomy/help/index.html +12 -12
  357. package/app/recipes/tags.taxonomy/index.html +12 -12
  358. package/app/recipes/team-collaboration/help/index.html +12 -12
  359. package/app/recipes/team-collaboration/index.html +12 -12
  360. package/app/s/custom-billing/index.html +13 -13
  361. package/app/s/custom-buying/index.html +13 -13
  362. package/app/s/custom-classes/index.html +13 -13
  363. package/app/s/custom-jobs/index.html +13 -13
  364. package/app/s/custom-kitchen/index.html +13 -13
  365. package/app/s/custom-material/index.html +13 -13
  366. package/app/s/custom-members/index.html +13 -13
  367. package/app/s/custom-parts/index.html +13 -13
  368. package/app/s/custom-schedule/index.html +13 -13
  369. package/app/s/custom-shop/index.html +13 -13
  370. package/app/s/custom-wholesale/index.html +13 -13
  371. package/app/s/section-access-control/index.html +13 -13
  372. package/app/s/section-account-security/index.html +13 -13
  373. package/app/s/section-accounting/index.html +13 -13
  374. package/app/s/section-activity/index.html +13 -13
  375. package/app/s/section-agreements/index.html +13 -13
  376. package/app/s/section-analytics/index.html +13 -13
  377. package/app/s/section-assets/index.html +13 -13
  378. package/app/s/section-billing/index.html +13 -13
  379. package/app/s/section-calendar/index.html +13 -13
  380. package/app/s/section-catalog/index.html +13 -13
  381. package/app/s/section-chat.assistant/index.html +13 -13
  382. package/app/s/section-comments/index.html +13 -13
  383. package/app/s/section-fields.form-customization/index.html +13 -13
  384. package/app/s/section-messages/index.html +13 -13
  385. package/app/s/section-more/index.html +13 -13
  386. package/app/s/section-operations/index.html +13 -13
  387. package/app/s/section-projects/index.html +13 -13
  388. package/app/s/section-purchasing/index.html +13 -13
  389. package/app/s/section-reports.materialized/index.html +13 -13
  390. package/app/s/section-sales/index.html +13 -13
  391. package/app/s/section-taxonomy/index.html +13 -13
  392. package/app/s/section-team/index.html +13 -13
  393. package/dist/ai/state.svelte.d.ts +9 -4
  394. package/dist/ai/state.svelte.js +46 -16
  395. package/dist/ai/status.js +8 -0
  396. package/dist/assistant/session.svelte.d.ts +1 -0
  397. package/dist/assistant/session.svelte.js +22 -4
  398. package/dist/components/AiSetup.svelte +31 -2
  399. package/dist/components/BrowserAssistant.svelte +12 -8
  400. package/dist/core/app.d.ts +33 -8
  401. package/dist/core/app.js +112 -8
  402. package/dist/index.d.ts +1 -1
  403. package/dist/inference/byo.svelte.d.ts +8 -4
  404. package/dist/inference/byo.svelte.js +36 -8
  405. package/dist/inference/config.d.ts +12 -5
  406. package/dist/inference/config.js +96 -40
  407. package/dist/inference/openai.js +5 -0
  408. package/dist/kitchen/client.js +10 -4
  409. package/dist/planner/assistant.js +1 -1
  410. package/package.json +2 -1
  411. package/app/_app/immutable/chunks/BYde9M_U.js +0 -1
  412. package/app/_app/immutable/chunks/OJ_lLTHH.js +0 -1
  413. package/app/_app/immutable/chunks/ufuM4XBq.js +0 -33
  414. package/app/_app/immutable/entry/start.CH9DJLgI.js +0 -1
@@ -1 +1 @@
1
- import{B as e,Et as t,Tt as n,U as r,V as i,at as a,dt as o,ft as s,pt as c}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{t as l}from"../chunks/DyGfbRG-.js";var u=r(`<h1> </h1> <p> </p>`,1);function d(r,d){t(d,!0);var f=u(),p=o(f),m=s(p,!0),h=c(p,2),g=s(h,!0);a(()=>{e(m,l.status),e(g,l.error?.message)}),i(r,f),n()}export{d as component};
1
+ import{B as e,Et as t,Tt as n,U as r,V as i,at as a,dt as o,ft as s,pt as c}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{t as l}from"../chunks/BnRri03M.js";var u=r(`<h1> </h1> <p> </p>`,1);function d(r,d){t(d,!0);var f=u(),p=o(f),m=s(p,!0),h=c(p,2),g=s(h,!0);a(()=>{e(m,l.status),e(g,l.error?.message)}),i(r,f),n()}export{d as component};
@@ -1 +1 @@
1
- import{n as e}from"../chunks/Dd_uD5pT.js";import{A as t,B as n,Et as r,Ft as i,H as a,J as o,K as s,L as c,Nt as l,R as u,Tt as d,U as f,V as p,Z as m,at as h,ct as g,dt as _,et as v,ft as y,gt as b,mt as x,n as S,nt as C,ot as w,pt as T,q as E,ut as D,v as O,vt as k,xt as A}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{t as j}from"../chunks/1okeBSoq.js";import{b as M,g as N,h as ee,k as P,m as F,n as I,p as te,v as L,x as ne,y as R}from"../chunks/WxSPP8QW.js";import{B as z,C as re,F as B,H as V,N as H,S as U,W,b as G,i as K,v as q,y as ie}from"../chunks/p6bgzXiY.js";import{t as ae}from"../chunks/DyGfbRG-.js";import{J,_ as oe,f as se,g as ce,h as le,t as Y}from"../chunks/D_J_XtJy.js";import{n as X}from"../chunks/leQCwW2d.js";import{r as Z}from"../chunks/DqcD-WtP.js";import{t as ue}from"../chunks/DD7gpKb2.js";import{t as de}from"../chunks/DNRgqfTx.js";import{r as Q,t as $}from"../chunks/CgAkqYsL.js";import{t as fe}from"../chunks/D71UrO5c.js";var pe=8e3,me=262144,he=class extends Error{};function ge(e,t,n){let r=new AbortController,i=()=>r.abort();n?.addEventListener(`abort`,i,{once:!0}),n?.aborted&&r.abort();let a,o=new Promise((e,n)=>{a=setTimeout(()=>{r.abort(),n(new he(`widget load timed out`))},t)});return Promise.race([Promise.resolve().then(()=>e(r.signal)),o]).finally(()=>{a!==void 0&&clearTimeout(a),n?.removeEventListener(`abort`,i)})}function _e(e,t){if(e===void 0)return!0;try{let n=JSON.stringify(e);return n!==void 0&&n.length<=t}catch{return!1}}async function ve(e,t,n,r,i={}){let a=M(e,{registry:n,definition:t}),o=i.timeoutMs??pe,s=i.maxDataLength??me,c=await Promise.all(a.document.widgets.map(async e=>{let a=n.get(e.type),c={...e,status:`ready`};if(!a?.load)return c;let l=t=>({...e,status:`error`,error:{code:t}});try{let n=await ge(n=>a.load?.(e.options,{...r,overviewId:t.id,signal:n}),o,r.signal);return _e(n,s)?n===void 0?c:{...c,data:n}:l(`invalid_data`)}catch(t){return i.onError?.({id:e.id,type:e.type},t),l(t instanceof he?`timeout`:`load_failed`)}}));return{overviewId:t.id,widgets:c,issues:a.issues}}var ye=e({entries:()=>be,load:()=>xe}),be=()=>{let e=[...z(U).map(e=>`section:${e.id}`),`section:${H.id}`,...X.flatMap(e=>(e.document.layout?.customSections??[]).map(e=>e.id))];return[...new Set(e)].map(e=>({section:Q(e)}))},xe=({params:e})=>({sectionId:$(e.section)});function Se(e,t){let n=e.flatMap(e=>G(e)),r=new Map;for(let e of n){let t=V(e.packageId,e.model.name,e.key);if(r.has(t))continue;let i=N(e.model.id,e.key,n);r.set(t,{id:t,model:e.model,path:q(e),...e.noun?{noun:e.noun}:{},...i?{scope:i}:{}})}for(let e of B(t)){if(r.has(e.id))continue;let t=J(e.packageId,e.modelName);t&&r.set(e.id,{id:e.id,model:t,path:q({packageId:e.packageId,model:t})})}return r}function Ce(e,t){let n=new Set(e),r=[];for(let e of t){let t=G(e).some(e=>n.has(V(e.packageId,e.model.name,e.key))),i=W(e);t&&!r.some(e=>e.id===i)&&r.push({id:i,label:e.group?.label??e.label})}return r}var we=new Map(z(U).map(e=>[e.id,e])),Te=new Map(X.flatMap(e=>Object.entries(e.sectionDescriptions??{})));function Ee(e){if(e===`section:${H.id}`)return{icon:H.icon,description:H.description};if(e.startsWith(`section:`)){let t=we.get(e.slice(8));if(!t)return{};let n=t.recipes.find(e=>e.group?.summary)?.group?.summary;return{icon:t.icon,description:t.description??n}}let t=Te.get(e);return t?{description:t}:{}}function De(e){return e?.trim()||`Planner`}async function Oe(e,t,n,r){let i=(await ve({widgets:[n]},e,F,{...t,signal:r,locale:`en-US`})).widgets[0];if(!i||i.status===`error`)throw Error(i?.error?.code??`load_failed`);return i.data}function ke(e,t,n){let r=e.id;return R({definition:e,registry:F,override:()=>t.overview(r),onchange:e=>t.setOverview(r,e),...n?{loadWidget:(t,r)=>Oe(e,n(),t,r)}:{}})}function Ae(e,t){r(t,!0);let n=P(),i=Z(),a=ke(v(()=>t.definition),I,()=>({source:i,sections:n.sections,entries:t.entries,href:Y}));function o(){for(let e of a.document.widgets)a.reload(e.id)}let s=!0;w(()=>{if(JSON.stringify(n.sections),t.entries,s){s=!1;return}v(o)}),w(()=>i.onReset?.(()=>o())),S(()=>a.destroy()),L(e,{get controller(){return a},get models(){return t.models},get label(){return t.label}}),d()}var je=f(`<a class="new svelte-sp05yg"> </a>`),Me=f(`<p class="svelte-sp05yg"> </p>`),Ne=f(`<section class="entries svelte-sp05yg" aria-labelledby="section-entries"><h2 id="section-entries" class="svelte-sp05yg">Menu entries</h2> <!></section>`),Pe=f(`<!> <!>`,1),Fe=f(`<header class="svelte-sp05yg"><span class="mark svelte-sp05yg"><!></span> <div class="heading svelte-sp05yg"><h1 class="svelte-sp05yg"> </h1> <!></div> <!></header> <!>`,1),Ie=f(`<h1 class="svelte-sp05yg">Section not found</h1> <p>This section is not in your app. <a>Back to the Planner</a></p>`,1),Le=f(`<main class="svelte-sp05yg"><!></main>`);function Re(e,f){r(f,!0);let v=(e,t=i)=>{var r=a(),o=_(r),c=e=>{var r=s();h(e=>n(r,e),[()=>oe(m(G).get(t().id)??0)]),p(e,r)},l=A(()=>m(G).has(t().id));u(o,e=>{m(l)&&e(c)}),p(e,r)},S=(e,t=i)=>{let r=A(()=>X(t()));var s=a(),c=_(s),l=e=>{var i=je(),a=y(i);h(()=>{O(i,`href`,t().href),n(a,`New ${m(r)??``}`)}),o(`click`,i,()=>Q(t())),p(e,i)};u(c,e=>{m(r)&&e(l)}),p(e,s)},E=P(),M=Z(),N=A(()=>E.sections.find(e=>e.id===f.sectionId)),F=A(()=>De(m(N)?.heading)),L=A(()=>m(N)?.icon??`folder`),R=A(()=>Ee(f.sectionId).description),z=A(()=>m(N)?.items.map(e=>e.id)??[]),B=A(()=>K.ids.flatMap(e=>{let t=re.get(e);return t?[t]:[]})),V=A(()=>Se(m(B),K.features)),H=A(()=>Ce(m(z),m(B))),U=A(()=>te(f.sectionId)),W=A(()=>{let e=new Set,t=[],n=(n,r)=>{e.has(n)||(e.add(n),t.push({value:n,label:ce(se(r))}))};for(let e of m(B))for(let{model:t}of ie(e))n(t.id,t.name);for(let e of m(V).values())n(e.model.id,e.model.name);return t}),G=k(x(new Map)),q=0;async function J(){let e=++q,t=new Map;await Promise.all(m(z).map(async e=>{let n=m(V).get(e);if(!n)return;let r=await M.list(n.model);t.set(e,r.filter(e=>ee(n.scope,e)).length)})),e===q&&b(G,t,!0)}w(()=>{m(z),m(V),J()}),w(()=>M.onReset?.(()=>void J()));let X=e=>{let t=m(V).get(e.id);return t?le(e.label,t.noun):void 0};function Q(e){fe(new URL(e.href,ae.url).pathname)}var $=a();t(`sp05yg`,e=>{C(()=>{g.title=`${m(F)??``} · smrt planner`})});var pe=_($),me=e=>{var t=Le(),r=D(t),i=e=>{var t=Fe(),r=_(t),i=D(r),a=D(i);ne(a,{get name(){return m(L)},size:28}),l(i);var o=T(i,2),s=D(o),d=y(s,!0),g=T(s,2),b=e=>{var t=Me(),r=y(t,!0);h(()=>n(r,m(R))),p(e,t)};u(g,e=>{m(R)&&e(b)}),l(o);var x=T(o,2),C=e=>{ue(e,{get section(){return m(H)[0].id},get label(){return m(H)[0].label}})},w=e=>{de(e,{get label(){return m(F)},get groups(){return m(H)}})};u(x,e=>{m(H).length===1?e(C):m(H).length>1&&e(w,1)}),l(r);var O=T(r,2),k=e=>{var t=Pe(),n=_(t);c(n,()=>f.sectionId,e=>{{let t=A(()=>`${m(F)} overview`);Ae(e,{get definition(){return m(U)},get entries(){return m(V)},get models(){return m(W)},get label(){return m(t)}})}});var r=T(n,2),i=e=>{var t=Ne(),n=T(D(t),2);j(n,{get sectionId(){return f.sectionId},get meta(){return v}}),l(t),p(e,t)};u(r,e=>{E.editing&&e(i)}),p(e,t)},M=e=>{j(e,{get sectionId(){return f.sectionId},layout:`cards`,get meta(){return v},get actions(){return S}})};u(O,e=>{m(U)?e(k):e(M,-1)}),h(()=>n(d,m(F))),p(e,t)},a=e=>{var t=Ie(),n=T(_(t),2),r=T(D(n));l(n),h(e=>O(r,`href`,e),[()=>Y(`/`)]),p(e,t)};u(r,e=>{m(N)?e(i):e(a,-1)}),l(t),p(e,t)};u(pe,e=>{I.loaded&&e(me)}),p(e,$),d()}E([`click`]);function ze(e,t){r(t,!0),Re(e,{get sectionId(){return t.data.sectionId}}),d()}export{ze as component,ye as universal};
1
+ import{n as e}from"../chunks/Dd_uD5pT.js";import{A as t,B as n,Et as r,Ft as i,H as a,J as o,K as s,L as c,Nt as l,R as u,Tt as d,U as f,V as p,Z as m,at as h,ct as g,dt as _,et as v,ft as y,gt as b,mt as x,n as S,nt as C,ot as w,pt as T,q as E,ut as D,v as O,vt as k,xt as A}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{t as j}from"../chunks/1okeBSoq.js";import{b as M,g as N,h as ee,k as P,m as F,n as I,p as te,v as L,x as ne,y as R}from"../chunks/WxSPP8QW.js";import{B as z,C as re,F as B,H as V,N as H,S as U,W,b as G,i as K,v as q,y as ie}from"../chunks/p6bgzXiY.js";import{t as ae}from"../chunks/BnRri03M.js";import{J,_ as oe,f as se,g as ce,h as le,t as Y}from"../chunks/D_J_XtJy.js";import{n as X}from"../chunks/leQCwW2d.js";import{r as Z}from"../chunks/DqcD-WtP.js";import{t as ue}from"../chunks/DD7gpKb2.js";import{t as de}from"../chunks/DNRgqfTx.js";import{r as Q,t as $}from"../chunks/CgAkqYsL.js";import{t as fe}from"../chunks/D71UrO5c.js";var pe=8e3,me=262144,he=class extends Error{};function ge(e,t,n){let r=new AbortController,i=()=>r.abort();n?.addEventListener(`abort`,i,{once:!0}),n?.aborted&&r.abort();let a,o=new Promise((e,n)=>{a=setTimeout(()=>{r.abort(),n(new he(`widget load timed out`))},t)});return Promise.race([Promise.resolve().then(()=>e(r.signal)),o]).finally(()=>{a!==void 0&&clearTimeout(a),n?.removeEventListener(`abort`,i)})}function _e(e,t){if(e===void 0)return!0;try{let n=JSON.stringify(e);return n!==void 0&&n.length<=t}catch{return!1}}async function ve(e,t,n,r,i={}){let a=M(e,{registry:n,definition:t}),o=i.timeoutMs??pe,s=i.maxDataLength??me,c=await Promise.all(a.document.widgets.map(async e=>{let a=n.get(e.type),c={...e,status:`ready`};if(!a?.load)return c;let l=t=>({...e,status:`error`,error:{code:t}});try{let n=await ge(n=>a.load?.(e.options,{...r,overviewId:t.id,signal:n}),o,r.signal);return _e(n,s)?n===void 0?c:{...c,data:n}:l(`invalid_data`)}catch(t){return i.onError?.({id:e.id,type:e.type},t),l(t instanceof he?`timeout`:`load_failed`)}}));return{overviewId:t.id,widgets:c,issues:a.issues}}var ye=e({entries:()=>be,load:()=>xe}),be=()=>{let e=[...z(U).map(e=>`section:${e.id}`),`section:${H.id}`,...X.flatMap(e=>(e.document.layout?.customSections??[]).map(e=>e.id))];return[...new Set(e)].map(e=>({section:Q(e)}))},xe=({params:e})=>({sectionId:$(e.section)});function Se(e,t){let n=e.flatMap(e=>G(e)),r=new Map;for(let e of n){let t=V(e.packageId,e.model.name,e.key);if(r.has(t))continue;let i=N(e.model.id,e.key,n);r.set(t,{id:t,model:e.model,path:q(e),...e.noun?{noun:e.noun}:{},...i?{scope:i}:{}})}for(let e of B(t)){if(r.has(e.id))continue;let t=J(e.packageId,e.modelName);t&&r.set(e.id,{id:e.id,model:t,path:q({packageId:e.packageId,model:t})})}return r}function Ce(e,t){let n=new Set(e),r=[];for(let e of t){let t=G(e).some(e=>n.has(V(e.packageId,e.model.name,e.key))),i=W(e);t&&!r.some(e=>e.id===i)&&r.push({id:i,label:e.group?.label??e.label})}return r}var we=new Map(z(U).map(e=>[e.id,e])),Te=new Map(X.flatMap(e=>Object.entries(e.sectionDescriptions??{})));function Ee(e){if(e===`section:${H.id}`)return{icon:H.icon,description:H.description};if(e.startsWith(`section:`)){let t=we.get(e.slice(8));if(!t)return{};let n=t.recipes.find(e=>e.group?.summary)?.group?.summary;return{icon:t.icon,description:t.description??n}}let t=Te.get(e);return t?{description:t}:{}}function De(e){return e?.trim()||`Planner`}async function Oe(e,t,n,r){let i=(await ve({widgets:[n]},e,F,{...t,signal:r,locale:`en-US`})).widgets[0];if(!i||i.status===`error`)throw Error(i?.error?.code??`load_failed`);return i.data}function ke(e,t,n){let r=e.id;return R({definition:e,registry:F,override:()=>t.overview(r),onchange:e=>t.setOverview(r,e),...n?{loadWidget:(t,r)=>Oe(e,n(),t,r)}:{}})}function Ae(e,t){r(t,!0);let n=P(),i=Z(),a=ke(v(()=>t.definition),I,()=>({source:i,sections:n.sections,entries:t.entries,href:Y}));function o(){for(let e of a.document.widgets)a.reload(e.id)}let s=!0;w(()=>{if(JSON.stringify(n.sections),t.entries,s){s=!1;return}v(o)}),w(()=>i.onReset?.(()=>o())),S(()=>a.destroy()),L(e,{get controller(){return a},get models(){return t.models},get label(){return t.label}}),d()}var je=f(`<a class="new svelte-sp05yg"> </a>`),Me=f(`<p class="svelte-sp05yg"> </p>`),Ne=f(`<section class="entries svelte-sp05yg" aria-labelledby="section-entries"><h2 id="section-entries" class="svelte-sp05yg">Menu entries</h2> <!></section>`),Pe=f(`<!> <!>`,1),Fe=f(`<header class="svelte-sp05yg"><span class="mark svelte-sp05yg"><!></span> <div class="heading svelte-sp05yg"><h1 class="svelte-sp05yg"> </h1> <!></div> <!></header> <!>`,1),Ie=f(`<h1 class="svelte-sp05yg">Section not found</h1> <p>This section is not in your app. <a>Back to the Planner</a></p>`,1),Le=f(`<main class="svelte-sp05yg"><!></main>`);function Re(e,f){r(f,!0);let v=(e,t=i)=>{var r=a(),o=_(r),c=e=>{var r=s();h(e=>n(r,e),[()=>oe(m(G).get(t().id)??0)]),p(e,r)},l=A(()=>m(G).has(t().id));u(o,e=>{m(l)&&e(c)}),p(e,r)},S=(e,t=i)=>{let r=A(()=>X(t()));var s=a(),c=_(s),l=e=>{var i=je(),a=y(i);h(()=>{O(i,`href`,t().href),n(a,`New ${m(r)??``}`)}),o(`click`,i,()=>Q(t())),p(e,i)};u(c,e=>{m(r)&&e(l)}),p(e,s)},E=P(),M=Z(),N=A(()=>E.sections.find(e=>e.id===f.sectionId)),F=A(()=>De(m(N)?.heading)),L=A(()=>m(N)?.icon??`folder`),R=A(()=>Ee(f.sectionId).description),z=A(()=>m(N)?.items.map(e=>e.id)??[]),B=A(()=>K.ids.flatMap(e=>{let t=re.get(e);return t?[t]:[]})),V=A(()=>Se(m(B),K.features)),H=A(()=>Ce(m(z),m(B))),U=A(()=>te(f.sectionId)),W=A(()=>{let e=new Set,t=[],n=(n,r)=>{e.has(n)||(e.add(n),t.push({value:n,label:ce(se(r))}))};for(let e of m(B))for(let{model:t}of ie(e))n(t.id,t.name);for(let e of m(V).values())n(e.model.id,e.model.name);return t}),G=k(x(new Map)),q=0;async function J(){let e=++q,t=new Map;await Promise.all(m(z).map(async e=>{let n=m(V).get(e);if(!n)return;let r=await M.list(n.model);t.set(e,r.filter(e=>ee(n.scope,e)).length)})),e===q&&b(G,t,!0)}w(()=>{m(z),m(V),J()}),w(()=>M.onReset?.(()=>void J()));let X=e=>{let t=m(V).get(e.id);return t?le(e.label,t.noun):void 0};function Q(e){fe(new URL(e.href,ae.url).pathname)}var $=a();t(`sp05yg`,e=>{C(()=>{g.title=`${m(F)??``} · smrt planner`})});var pe=_($),me=e=>{var t=Le(),r=D(t),i=e=>{var t=Fe(),r=_(t),i=D(r),a=D(i);ne(a,{get name(){return m(L)},size:28}),l(i);var o=T(i,2),s=D(o),d=y(s,!0),g=T(s,2),b=e=>{var t=Me(),r=y(t,!0);h(()=>n(r,m(R))),p(e,t)};u(g,e=>{m(R)&&e(b)}),l(o);var x=T(o,2),C=e=>{ue(e,{get section(){return m(H)[0].id},get label(){return m(H)[0].label}})},w=e=>{de(e,{get label(){return m(F)},get groups(){return m(H)}})};u(x,e=>{m(H).length===1?e(C):m(H).length>1&&e(w,1)}),l(r);var O=T(r,2),k=e=>{var t=Pe(),n=_(t);c(n,()=>f.sectionId,e=>{{let t=A(()=>`${m(F)} overview`);Ae(e,{get definition(){return m(U)},get entries(){return m(V)},get models(){return m(W)},get label(){return m(t)}})}});var r=T(n,2),i=e=>{var t=Ne(),n=T(D(t),2);j(n,{get sectionId(){return f.sectionId},get meta(){return v}}),l(t),p(e,t)};u(r,e=>{E.editing&&e(i)}),p(e,t)},M=e=>{j(e,{get sectionId(){return f.sectionId},layout:`cards`,get meta(){return v},get actions(){return S}})};u(O,e=>{m(U)?e(k):e(M,-1)}),h(()=>n(d,m(F))),p(e,t)},a=e=>{var t=Ie(),n=T(_(t),2),r=T(D(n));l(n),h(e=>O(r,`href`,e),[()=>Y(`/`)]),p(e,t)};u(r,e=>{m(N)?e(i):e(a,-1)}),l(t),p(e,t)};u(pe,e=>{I.loaded&&e(me)}),p(e,$),d()}E([`click`]);function ze(e,t){r(t,!0),Re(e,{get sectionId(){return t.data.sectionId}}),d()}export{ze as component,ye as universal};
@@ -1,4 +1,4 @@
1
- import{A as e,At as t,B as n,E as r,Et as i,F as a,H as o,J as s,K as c,Mt as l,Nt as u,R as d,Tt as f,U as p,V as m,W as h,Y as g,Z as _,_ as v,a as y,at as b,b as x,ct as S,d as C,dt as w,et as T,ft as E,gt as D,l as O,lt as k,mt as A,ot as j,pt as M,q as N,r as P,rt as F,st as I,ut as L,v as R,vt as z,xt as B}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{c as V,r as H}from"../chunks/1okeBSoq.js";import{a as U,r as W}from"../chunks/D0VgZnk1.js";import{a as G}from"../chunks/BWPhGFHl.js";import{n as ee,t as te}from"../chunks/CWtfVMDz.js";import{t as K}from"../chunks/CPRHZZeW.js";import{n as q}from"../chunks/DVRKjN-E.js";import{a as ne,f as re,k as ie,l as ae,n as J,r as oe}from"../chunks/WxSPP8QW.js";import{_ as se,a as ce,g as le,i as Y,t as X,u as ue,v as Z}from"../chunks/CygC84VT.js";import{C as de,I as fe,L as pe,P as me,R as he,S as ge,X as _e,i as Q,m as ve,n as ye,p as be,r as xe,rt as Se,u as Ce,z as we}from"../chunks/p6bgzXiY.js";import{a as Te,c as Ee,d as De,i as Oe,l as ke,n as Ae,o as je,r as Me,s as Ne,t as $,u as Pe}from"../chunks/CV-2zt0K.js";import"../chunks/CRQ1Pmzr.js";import{r as Fe}from"../chunks/B4Kevpe0.js";import"../chunks/BKwRT_1p.js";import"../chunks/Dp9GVO-9.js";import{C as Ie,S as Le,a as Re,b as ze,d as Be,f as Ve,o as He,p as Ue,s as We,t as Ge,u as Ke,x as qe,y as Je}from"../chunks/ufuM4XBq.js";import{K as Ye,f as Xe,r as Ze,t as Qe}from"../chunks/D_J_XtJy.js";import{n as $e,r as et,t as tt}from"../chunks/leQCwW2d.js";import{n as nt,r as rt,t as it}from"../chunks/DqcD-WtP.js";import{n as at,s as ot,t as st}from"../chunks/QukgIHDX.js";var ct={bread:[`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`,`M9 13l1 3`,`M14 13l1 3`],car:[`M5 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0`,`M15 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0`,`M5 17h-2v-6l2-5h9l4 5h1a2 2 0 0 1 2 2v4h-2m-4 0h-6m-6-6h15m-6 0v-5`],flame:[`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`],yoga:[`M11 4a1 1 0 1 0 2 0a1 1 0 1 0-2 0`,`M4 20h4l1.5-3`,`M17 20l-1-5h-5l1-7`,`M4 10l4-1l4-1l4 1.5l4 1.5`]};G({"ui.audit.history":`Record history`,"ui.audit.list":`Audit trail`,"ui.audit.empty":`No audit entries.`,"ui.audit.loading":`Loading audit entries…`,"ui.audit.person":`Person ID`,"ui.audit.record":`Record ID`,"ui.audit.from":`From date`,"ui.audit.to":`To date`,"ui.audit.filter":`Apply filters`,"ui.audit.reason":`Reason: {reason}`,"ui.audit.behalf":`On behalf of {actor}`,"ui.audit.change":`{field}: {before} → {after}`}),G({"ui.notification_bell.label":`Notifications`,"ui.notification_bell.unread":`{count} unread`,"ui.notification_bell.mark_all":`Mark all read`,"ui.notification_bell.mark_one":`Mark read`,"ui.notification_bell.loading":`Loading notifications`,"ui.notification_bell.empty":`No notifications.`,"ui.notification_bell.unavailable":`Notifications are unavailable.`,"ui.notification_bell.mark_error":`Could not mark notifications read.`,"ui.notification_bell.live_error":`Live notifications are unavailable.`}),N([`keydown`]);var lt=p(`<option></option>`),ut=p(`<div class="settings svelte-1adyoey"><div class="field svelte-1adyoey"><!> <!></div> <div class="percent svelte-1adyoey"><!> <span class="percent-sign svelte-1adyoey" aria-hidden="true">%</span></div> <div class="field svelte-1adyoey"><!> <!> <datalist></datalist></div></div>`);function dt(e,t){i(t,!0);let n=y(t,`idPrefix`,3,`app-settings`),r=[`Due on receipt`,`Net 15`,`Net 30`,`Net 60`,`50% deposit, balance on completion`],o=e=>t.onchange({...t.value,...e});var s=ut(),c=L(s),d=L(c);Z(d,{get for(){return`${n()??``}-currency`},label:`Currency`});var p=M(d,2);le(p,{get id(){return`${n()??``}-currency`},get value(){return t.value.currency},onchange:e=>o({currency:e.currentTarget.value})}),u(c);var h=M(c,2),g=L(h);{let e=B(()=>st(t.value.taxRate));ot(g,{get name(){return`${n()??``}-tax-rate`},label:`Default tax rate`,min:0,step:.01,get value(){return _(e)},onchange:e=>o({taxRate:at(e)??0})})}l(2),u(h);var v=M(h,2),x=L(v);Z(x,{get for(){return`${n()??``}-terms`},label:`Default payment terms`});var S=M(x,2);q(S,{get id(){return`${n()??``}-terms`},type:`text`,get list(){return`${n()??``}-terms-options`},autocomplete:`off`,placeholder:`Not set`,get value(){return t.value.paymentTerms},oninput:e=>o({paymentTerms:e.currentTarget.value})});var C=M(S,2);a(C,20,()=>r,e=>e,(e,t)=>{var n=lt(),r={};b(()=>{r!==(r=t)&&(n.value=(n.__value=r)??``)}),m(e,n)}),u(C),u(v),u(s),b(()=>R(C,`id`,`${n()??``}-terms-options`)),m(e,s),f()}var ft=h(`<path></path>`),pt=p(`<span class="badge svelte-mzas8k">In use</span>`),mt=p(`<li><button type="button"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="32" height="32" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"></svg> <span class="name svelte-mzas8k"> </span> <span class="summary svelte-mzas8k"> </span> <!></button></li>`),ht=p(`<li class="svelte-mzas8k"> </li>`),gt=p(`<li> </li>`),_t=p(`<div><h4 class="svelte-mzas8k"> </h4> <ul class="svelte-mzas8k"></ul></div>`),vt=p(`<section class="preview svelte-mzas8k" aria-labelledby="preview-heading"><h2 id="preview-heading" class="svelte-mzas8k"> </h2> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Recipes</h3> <ul class="chips svelte-mzas8k" aria-label="Recipes"></ul></div> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Menu</h3> <div class="menu svelte-mzas8k"></div></div> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Settings</h3> <!></div> <div class="actions svelte-mzas8k"><!> <span class="meta svelte-mzas8k">Replaces your current recipes, menu and sample records.</span></div></section>`),yt=p(`<div class="cookbooks svelte-mzas8k"><p class="meta svelte-mzas8k">A cookbook is a ready-made starting point: the recipes, menu and settings a
1
+ import{A as e,At as t,B as n,E as r,Et as i,F as a,H as o,J as s,K as c,Mt as l,Nt as u,R as d,Tt as f,U as p,V as m,W as h,Y as g,Z as _,_ as v,a as y,at as b,b as x,ct as S,d as C,dt as w,et as T,ft as E,gt as D,l as O,lt as k,mt as A,ot as j,pt as M,q as N,r as P,rt as F,st as I,ut as L,v as R,vt as z,xt as B}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{c as V,r as H}from"../chunks/1okeBSoq.js";import{a as U,r as W}from"../chunks/D0VgZnk1.js";import{a as G}from"../chunks/BWPhGFHl.js";import{n as ee,t as te}from"../chunks/CWtfVMDz.js";import{t as K}from"../chunks/CPRHZZeW.js";import{n as q}from"../chunks/DVRKjN-E.js";import{a as ne,f as re,k as ie,l as ae,n as J,r as oe}from"../chunks/WxSPP8QW.js";import{_ as se,a as ce,g as le,i as Y,t as X,u as ue,v as Z}from"../chunks/CygC84VT.js";import{C as de,I as fe,L as pe,P as me,R as he,S as ge,X as _e,i as Q,m as ve,n as ye,p as be,r as xe,rt as Se,u as Ce,z as we}from"../chunks/p6bgzXiY.js";import{a as Te,c as Ee,d as De,i as Oe,l as ke,n as Ae,o as je,r as Me,s as Ne,t as $,u as Pe}from"../chunks/CsprTb3f.js";import"../chunks/CRQ1Pmzr.js";import{r as Fe}from"../chunks/B4Kevpe0.js";import"../chunks/BKwRT_1p.js";import"../chunks/Dp9GVO-9.js";import{C as Ie,S as Le,a as Re,b as ze,d as Be,f as Ve,o as He,p as Ue,s as We,t as Ge,u as Ke,x as qe,y as Je}from"../chunks/Ci0DUht6.js";import{K as Ye,f as Xe,r as Ze,t as Qe}from"../chunks/D_J_XtJy.js";import{n as $e,r as et,t as tt}from"../chunks/leQCwW2d.js";import{n as nt,r as rt,t as it}from"../chunks/DqcD-WtP.js";import{n as at,s as ot,t as st}from"../chunks/QukgIHDX.js";var ct={bread:[`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`,`M9 13l1 3`,`M14 13l1 3`],car:[`M5 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0`,`M15 17a2 2 0 1 0 4 0a2 2 0 1 0-4 0`,`M5 17h-2v-6l2-5h9l4 5h1a2 2 0 0 1 2 2v4h-2m-4 0h-6m-6-6h15m-6 0v-5`],flame:[`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`],yoga:[`M11 4a1 1 0 1 0 2 0a1 1 0 1 0-2 0`,`M4 20h4l1.5-3`,`M17 20l-1-5h-5l1-7`,`M4 10l4-1l4-1l4 1.5l4 1.5`]};G({"ui.audit.history":`Record history`,"ui.audit.list":`Audit trail`,"ui.audit.empty":`No audit entries.`,"ui.audit.loading":`Loading audit entries…`,"ui.audit.person":`Person ID`,"ui.audit.record":`Record ID`,"ui.audit.from":`From date`,"ui.audit.to":`To date`,"ui.audit.filter":`Apply filters`,"ui.audit.reason":`Reason: {reason}`,"ui.audit.behalf":`On behalf of {actor}`,"ui.audit.change":`{field}: {before} → {after}`}),G({"ui.notification_bell.label":`Notifications`,"ui.notification_bell.unread":`{count} unread`,"ui.notification_bell.mark_all":`Mark all read`,"ui.notification_bell.mark_one":`Mark read`,"ui.notification_bell.loading":`Loading notifications`,"ui.notification_bell.empty":`No notifications.`,"ui.notification_bell.unavailable":`Notifications are unavailable.`,"ui.notification_bell.mark_error":`Could not mark notifications read.`,"ui.notification_bell.live_error":`Live notifications are unavailable.`}),N([`keydown`]);var lt=p(`<option></option>`),ut=p(`<div class="settings svelte-1adyoey"><div class="field svelte-1adyoey"><!> <!></div> <div class="percent svelte-1adyoey"><!> <span class="percent-sign svelte-1adyoey" aria-hidden="true">%</span></div> <div class="field svelte-1adyoey"><!> <!> <datalist></datalist></div></div>`);function dt(e,t){i(t,!0);let n=y(t,`idPrefix`,3,`app-settings`),r=[`Due on receipt`,`Net 15`,`Net 30`,`Net 60`,`50% deposit, balance on completion`],o=e=>t.onchange({...t.value,...e});var s=ut(),c=L(s),d=L(c);Z(d,{get for(){return`${n()??``}-currency`},label:`Currency`});var p=M(d,2);le(p,{get id(){return`${n()??``}-currency`},get value(){return t.value.currency},onchange:e=>o({currency:e.currentTarget.value})}),u(c);var h=M(c,2),g=L(h);{let e=B(()=>st(t.value.taxRate));ot(g,{get name(){return`${n()??``}-tax-rate`},label:`Default tax rate`,min:0,step:.01,get value(){return _(e)},onchange:e=>o({taxRate:at(e)??0})})}l(2),u(h);var v=M(h,2),x=L(v);Z(x,{get for(){return`${n()??``}-terms`},label:`Default payment terms`});var S=M(x,2);q(S,{get id(){return`${n()??``}-terms`},type:`text`,get list(){return`${n()??``}-terms-options`},autocomplete:`off`,placeholder:`Not set`,get value(){return t.value.paymentTerms},oninput:e=>o({paymentTerms:e.currentTarget.value})});var C=M(S,2);a(C,20,()=>r,e=>e,(e,t)=>{var n=lt(),r={};b(()=>{r!==(r=t)&&(n.value=(n.__value=r)??``)}),m(e,n)}),u(C),u(v),u(s),b(()=>R(C,`id`,`${n()??``}-terms-options`)),m(e,s),f()}var ft=h(`<path></path>`),pt=p(`<span class="badge svelte-mzas8k">In use</span>`),mt=p(`<li><button type="button"><svg class="icon svelte-mzas8k" viewBox="0 0 24 24" width="32" height="32" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"></svg> <span class="name svelte-mzas8k"> </span> <span class="summary svelte-mzas8k"> </span> <!></button></li>`),ht=p(`<li class="svelte-mzas8k"> </li>`),gt=p(`<li> </li>`),_t=p(`<div><h4 class="svelte-mzas8k"> </h4> <ul class="svelte-mzas8k"></ul></div>`),vt=p(`<section class="preview svelte-mzas8k" aria-labelledby="preview-heading"><h2 id="preview-heading" class="svelte-mzas8k"> </h2> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Recipes</h3> <ul class="chips svelte-mzas8k" aria-label="Recipes"></ul></div> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Menu</h3> <div class="menu svelte-mzas8k"></div></div> <div class="block svelte-mzas8k"><h3 class="svelte-mzas8k">Settings</h3> <!></div> <div class="actions svelte-mzas8k"><!> <span class="meta svelte-mzas8k">Replaces your current recipes, menu and sample records.</span></div></section>`),yt=p(`<div class="cookbooks svelte-mzas8k"><p class="meta svelte-mzas8k">A cookbook is a ready-made starting point: the recipes, menu and settings a
2
2
  kind of business usually needs. Pick one, look it over, then change
3
3
  anything in the other tabs.</p> <ul class="grid svelte-mzas8k" aria-label="Cookbooks"></ul> <!> <!> <p class="notice svelte-mzas8k" role="status" aria-live="polite"> </p></div> <!>`,1);function bt(e,o){i(o,!0);let p=rt(),h=z(null),g=z(!1),v=z(``),y=z(``);P(()=>{Le.load(),D(h,Le.active,!0)});let x=B(()=>$e.find(e=>e.id===_(h))),S=z(A(Ce(void 0)));j(()=>{D(S,Ce(_(x)?.settings),!0)});let C=e=>Le.active===e.id&&ke(e,{recipes:Q.ids,features:Q.features});function T(){_(x)&&(Pe(J)?D(g,!0):O())}function O(){if(D(g,!1),!_(x))return;let e=Ee(_(x),J,t(_(S)));e.ok?(p.reset?.(),Le.select(_(x).id),D(v,``),D(y,`Now using the ${_(x).name} cookbook.`)):(D(v,e.error,!0),D(y,``))}var k=yt(),N=w(k),F=M(L(N),2);a(F,21,()=>$e,e=>e.id,(e,t)=>{let i=B(()=>C(_(t)));var o=mt(),c=L(o);let l;var f=L(c);a(f,20,()=>ct[_(t).icon]??[],e=>e,(e,t)=>{var n=ft();b(()=>R(n,`d`,t)),m(e,n)}),u(f);var p=M(f,2),g=E(p,!0),v=M(p,2),y=E(v,!0),x=M(v,2),S=e=>{var t=pt();m(e,t)};d(x,e=>{_(i)&&e(S)}),u(c),u(o),b(()=>{l=r(c,1,`card svelte-mzas8k`,null,l,{selected:_(h)===_(t).id}),R(c,`aria-pressed`,_(h)===_(t).id),n(g,_(t).name),n(y,_(t).summary)}),s(`click`,c,()=>D(h,_(t).id,!0)),m(e,o)}),u(F);var I=M(F,2),V=e=>{let t=B(()=>Ne(_(x).document));var r=vt(),i=L(r),o=E(i,!0),s=M(i,2),d=M(L(s),2);a(d,20,()=>et(_(x)),e=>e,(e,t)=>{var r=ht(),i=E(r,!0);b(()=>n(i,t)),m(e,r)}),u(d),u(s);var f=M(s,2),p=M(L(f),2);a(p,21,()=>_(t),e=>e.id,(e,t)=>{var r=_t(),i=L(r),o=E(i,!0),s=M(i,2);a(s,21,()=>_(t).entries,e=>e.id,(e,t)=>{var r=gt(),i=E(r,!0);b(()=>n(i,_(t).label)),m(e,r)}),u(s),u(r),b(()=>n(o,_(t).label)),m(e,r)}),u(p),u(f);var h=M(f,2);dt(M(L(h),2),{get value(){return _(S)},onchange:e=>D(S,e,!0),idPrefix:`cookbook-settings`}),u(h);var g=M(h,2),v=L(g);K(v,{onclick:T,children:(e,t)=>{l();var n=c(`Use this cookbook`);m(e,n)},$$slots:{default:!0}}),l(2),u(g),u(r),b(()=>n(o,_(x).name)),m(e,r)};d(I,e=>{_(x)&&e(V)});var H=M(I,2),G=e=>{U(e,{variant:`error`,title:`Could not use this cookbook`,children:(e,t)=>{l();var r=c();b(()=>n(r,_(v))),m(e,r)},$$slots:{default:!0}})};d(H,e=>{_(v)&&e(G)});var ee=M(H,2),te=E(ee,!0);u(N);var q=M(N,2);{let e=B(()=>_(x)?`Use the ${_(x).name} cookbook?`:`Use this cookbook?`);W(q,{get open(){return _(g)},get title(){return _(e)},message:`Replaces your current recipes, menu and sample records.`,confirmLabel:`Replace`,destructive:!0,onconfirm:O,oncancel:()=>D(g,!1)})}b(()=>n(te,_(y))),m(e,k),f()}N([`click`]);var xt=p(`<li> </li>`),St=p(`<ul></ul>`),Ct=p(`<!> <!>`,1),wt=p(`The kitchen is running, but this page was opened without its one-time
4
4
  token. Open the address <code>smrt kitchen</code> printed (it ends in <code>#kitchen=…</code>), or download the cookbook and run <code>smrt cookbook apply</code> on the file.`,1),Tt=p(`This version of <code>smrt kitchen</code> puts its one-time token in a
@@ -13,5 +13,5 @@ import{A as e,At as t,B as n,E as r,Et as i,F as a,H as o,J as s,K as c,Mt as l,
13
13
  browser-only demo; menu entries appear in the sidebar, while widgets, pages
14
14
  and panels are listed for the real app and are not mounted here.</p> <!> <!> <p class="count svelte-q9yl1j" aria-live="polite"> </p> <!> <p class="notice meta svelte-q9yl1j" role="status" aria-live="polite"> </p> <!></div>`);function _n(e,t){i(t,!0);let r=Vt(ge,Ye.packages),o=Ht(r),s=z(``),p=z(null),h=z(``),g=B(()=>Ut(r,_(s),_(p))),v=B(()=>Wt(_(g))),y=e=>de.get(e)?.label??e;function x(e,t){let n=new Set(Q.ids);t?Q.add(e):Q.remove(e);let r=new Set(Q.ids),i=Q.ids.filter(e=>!n.has(e)),a=[...n].filter(e=>!r.has(e)),o=[];i.length&&o.push(`Added ${i.map(y).join(`, `)}.`),a.length&&o.push(`Removed ${a.map(y).join(`, `)}.`),D(h,o.join(` `),!0)}var S=gn(),C=M(L(S),2);ce(C,{get value(){return _(s)},onsearch:e=>{D(s,e,!0)},label:`Search features`,placeholder:`Search features`,debounceMs:0});var w=M(C,2),T=e=>{var t=pn(),r=L(t);{let e=B(()=>_(p)===null);X(r,{get pressed(){return _(e)},onclick:()=>D(p,null),children:(e,t)=>{l();var n=c(`All`);m(e,n)},$$slots:{default:!0}})}var i=M(r,2);a(i,17,()=>o,e=>e.id,(e,t)=>{{let r=B(()=>_(p)===_(t).id);X(e,{get pressed(){return _(r)},onclick:()=>D(p,_(p)===_(t).id?null:_(t).id,!0),children:(e,r)=>{l();var i=c();b(()=>n(i,_(t).label)),m(e,i)},$$slots:{default:!0}})}}),u(t),m(e,t)};d(w,e=>{o.length>1&&e(T)});var O=M(w,2),k=E(O),A=M(O,2);a(A,17,()=>_(v),e=>e.group.id,(e,t)=>{var r=hn(),i=L(r),o=E(i,!0),s=M(i,2),c=e=>{var r=mn(),i=E(r,!0);b(()=>n(i,_(t).group.summary)),m(e,r)};d(s,e=>{_(t).group.summary&&e(c)});var l=M(s,2);a(l,21,()=>_(t).cards,e=>e.id,(e,t)=>{{let n=B(()=>Q.has(_(t).id)),r=B(()=>be([_(t).id],Q.ids,de).map(y)),i=B(()=>Gt(_(t).id,Q.ids,de).map(y));rn(e,{get card(){return _(t)},get on(){return _(n)},get lockedBy(){return _(r)},get alsoAdds(){return _(i)},onchange:e=>x(_(t).id,e)})}}),u(l),u(r),b(()=>{R(r,`aria-labelledby`,`group-${_(t).group.id}`),R(i,`id`,`group-${_(t).group.id}`),n(o,_(t).group.label),R(l,`aria-label`,`${_(t).group.label} features`)}),m(e,r)},e=>{var t=mn(),r=E(t);b(()=>n(r,`No features match "${_(s)??``}".`)),m(e,t)});var j=M(A,2),N=E(j,!0),P=M(j,2);te(P,{title:`Single records`,children:(e,t)=>{fn(e,{})},$$slots:{default:!0}}),u(S),b(()=>{n(k,`${_(g).length??``} ${_(g).length===1?`feature`:`features`}`),n(N,_(h))}),m(e,S),f()}function vn(e){let t=new Map;for(let n of e){let e=n.group?.id??n.id,r=t.get(e);r?(r.recipes.push(n),r.hasSubSwitches=!0):t.set(e,{id:e,label:n.group?.label??n.label,summary:n.group?.summary??n.summary,recipes:[n],hasSubSwitches:!1})}return[...t.values()].sort((e,t)=>e.label.localeCompare(t.label))}function yn(e,t){return e.recipes.some(e=>t.includes(e.id))}function bn(e,t,n){if(n){let n=e.recipes[0];return{add:n&&!yn(e,t)?[n.id]:[],remove:[]}}return{add:[],remove:e.recipes.map(e=>e.id)}}function xn(e,t){return t?{add:[e],remove:[]}:{add:[],remove:[e]}}function Sn(e,t,n){let r=e.recipes.filter(e=>t.includes(e.id)),i={};if(e.hasSubSwitches)for(let e of r){let r=be([e.id],t,n);r.length&&(i[e.id]=r)}return{main:r.length?be(e.recipes.map(e=>e.id),t,n):[],subs:i}}function Cn(e,t){let n=t.join(`, `);return e.hasSubSwitches?`${e.label} stays on while ${n} needs at least one ${e.label} recipe.`:`${e.label} stays on while ${n} needs it.`}function wn(e,t,n){return`${t} is the last ${e.label} recipe on, and ${n.join(`, `)} needs one.`}var Tn=p(`<p class="meta svelte-1d5gge1"> </p>`),En=p(`<div class="sub svelte-1d5gge1"><!> <p class="meta svelte-1d5gge1"> </p> <!></div>`),Dn=p(`<li><h2 class="svelte-1d5gge1"> </h2> <p class="description svelte-1d5gge1"> </p> <!> <!> <!> <!></li>`),On=p(`<ul class="cards svelte-1d5gge1" aria-label="Recipes"></ul> <p class="notice svelte-1d5gge1" role="status" aria-live="polite"> </p>`,1);function kn(e,t){i(t,!0);let s=vn(ge),c=z(``),l=e=>de.get(e)?.label??e,p=e=>e.map(l).join(`, `);function h(e){let t=new Set(Q.ids);e.add.length&&Q.add(...e.add),e.remove.length&&Q.remove(...e.remove);let n=new Set(Q.ids),r=Q.ids.filter(e=>!t.has(e)),i=[...t].filter(e=>!n.has(e)),a=[];r.length&&a.push(`Added ${p(r)} to the menu.`),i.length&&a.push(`Removed ${p(i)} from the menu.`),D(c,a.join(` `),!0)}function g(e){let t=e.recipes[0];return!t||e.hasSubSwitches?``:[...t.requires.map(l),...(t.requiresAny??[]).map(e=>`one of ${p(e)}`)].join(`, `)}let v=e=>yn(e,Q.ids);var y=On(),x=w(y);a(x,21,()=>s,e=>e.id,(e,t)=>{let i=B(()=>v(_(t))),s=B(()=>Sn(_(t),Q.ids,de)),c=B(()=>_(s).main);var f=Dn();let p;var y=L(f),x=E(y,!0),S=M(y,2),C=E(S,!0),T=M(S,2);{let e=B(()=>_(c).length>0),n=B(()=>`card-${_(t).id}-summary${_(c).length?` card-${_(t).id}-needed`:``}`);Y(T,{get label(){return _(t).label},get checked(){return _(i)},get disabled(){return _(e)},get"aria-describedby"(){return _(n)},onchange:e=>h(bn(_(t),Q.ids,e.currentTarget.checked))})}var D=M(T,2),O=e=>{var r=Tn(),i=E(r,!0);b(e=>{R(r,`id`,`card-${_(t).id}-needed`),n(i,e)},[()=>Cn(_(t),_(c).map(l))]),m(e,r)};d(D,e=>{_(c).length&&e(O)});var k=M(D,2),A=e=>{{let r=B(()=>`${_(t).label} recipes`);ue(e,{get legend(){return _(r)},stack:!0,class:`subs`,children:(e,r)=>{var i=o(),c=w(i);a(c,17,()=>_(t).recipes,e=>e.id,(e,r)=>{let i=B(()=>Q.has(_(r).id)),a=B(()=>_(s).subs[_(r).id]??[]);var o=En(),c=L(o);{let e=B(()=>_(a).length>0),t=B(()=>`sub-${_(r).id}-summary${_(a).length?` sub-${_(r).id}-needed`:``}`);Y(c,{get label(){return _(r).label},size:`sm`,get checked(){return _(i)},get disabled(){return _(e)},get"aria-describedby"(){return _(t)},onchange:e=>h(xn(_(r).id,e.currentTarget.checked))})}var f=M(c,2),p=E(f,!0),g=M(f,2),v=e=>{var i=Tn(),o=E(i,!0);b(e=>{R(i,`id`,`sub-${_(r).id}-needed`),n(o,e)},[()=>wn(_(t),_(r).label,_(a).map(l))]),m(e,i)};d(g,e=>{_(a).length&&e(v)}),u(o),b(()=>{R(f,`id`,`sub-${_(r).id}-summary`),n(p,_(r).summary)}),m(e,o)}),m(e,i)},$$slots:{default:!0}})}};d(k,e=>{_(t).hasSubSwitches&&e(A)});var j=M(k,2),N=e=>{var r=Tn(),i=E(r);b(e=>n(i,`Needs ${e??``}.`),[()=>g(_(t))]),m(e,r)},P=B(()=>!_(i)&&g(_(t)));d(j,e=>{_(P)&&e(N)}),u(f),b(()=>{p=r(f,1,`svelte-1d5gge1`,null,p,{selected:_(i)}),R(y,`id`,`card-${_(t).id}`),n(x,_(t).label),R(S,`id`,`card-${_(t).id}-summary`),n(C,_(t).summary)}),m(e,f)}),u(x);var S=M(x,2),C=E(S,!0);b(()=>n(C,_(c))),m(e,y),f()}var An=p(`<div class="row svelte-18m8le4"><!> <!></div>`),jn=p(`<option> </option>`),Mn=p(`<option>Default</option> <!>`,1),Nn=p(`<span class="hint svelte-18m8le4">Pick a brand colour to choose a font.</span>`),Pn=p(`<p class="meta svelte-18m8le4" role="alert">Use a hex colour like #c2410c.</p>`),Fn=p(`<section class="theme svelte-18m8le4" aria-labelledby="theme-heading"><h2 id="theme-heading" class="svelte-18m8le4">Theme</h2> <p class="meta svelte-18m8le4">The look of this app. It is saved with your cookbook and applies as you
15
15
  change it.</p> <!> <div class="brand svelte-18m8le4"><div class="field svelte-18m8le4"><!> <div class="pick svelte-18m8le4"><input id="theme-brand-colour" class="swatch svelte-18m8le4" type="color" aria-label="Brand colour picker"/> <!></div></div> <div class="field svelte-18m8le4"><!> <!> <!></div> <!></div> <!></section>`);function In(e,t){i(t,!0);let r=y(t,`provider`,3,!0),o=B(()=>J.theme?.custom),p=z(``),h=z(!1);j(()=>{D(p,_(o)?.primary??``,!0),D(h,!1)});function g(e,t=_(o)?.fontFamily){let n=re(e);D(h,!n),n&&J.setTheme({...J.theme,custom:{primary:n,...t?{fontFamily:t}:{}}})}function S(e){_(o)&&g(_(o).primary,e||void 0)}function C(){J.setTheme({...J.theme,custom:void 0})}var T=Fn(),O=M(L(T),4),k=e=>{var t=An(),n=L(t);_e(n,{label:`Preset`,variant:`select`,showIcons:!1});var r=M(n,2);Se(r,{variant:`segmented`,ariaLabel:`Colour scheme`}),u(t),m(e,t)};d(O,e=>{r()&&e(k)});var A=M(O,2),N=L(A),P=L(N);Z(P,{for:`theme-brand-colour`,label:`Brand colour`});var F=M(P,2),I=L(F);v(I);var R=M(I,2);q(R,{type:`text`,"aria-label":`Brand colour hex`,placeholder:`#c2410c`,autocomplete:`off`,spellcheck:`false`,get value(){return _(p)},get"aria-invalid"(){return _(h)},oninput:e=>{D(p,e.currentTarget.value,!0),_(p).trim()&&g(_(p))}}),u(F),u(N);var V=M(N,2),H=L(V);Z(H,{for:`theme-brand-font`,label:`Font`});var U=M(H,2);{let e=B(()=>_(o)?.fontFamily??``),t=B(()=>!_(o));se(U,{id:`theme-brand-font`,get value(){return _(e)},get disabled(){return _(t)},onchange:e=>S(e.currentTarget.value),children:(e,t)=>{var r=Mn(),i=w(r);i.value=i.__value=``;var o=M(i,2);a(o,16,()=>Object.keys(ae),e=>e,(e,t)=>{var r=jn(),i=E(r,!0),a={};b(()=>{n(i,t),a!==(a=t)&&(r.value=(r.__value=a)??``)}),m(e,r)}),m(e,r)},$$slots:{default:!0}})}var W=M(U,2),G=e=>{var t=Nn();m(e,t)};d(W,e=>{_(o)||e(G)}),u(V);var ee=M(V,2),te=e=>{K(e,{variant:`secondary`,onclick:C,children:(e,t)=>{l();var n=c(`Reset to preset`);m(e,n)},$$slots:{default:!0}})};d(ee,e=>{_(o)&&e(te)}),u(A);var ne=M(A,2),ie=e=>{var t=Pn();m(e,t)};d(ne,e=>{_(h)&&e(ie)}),u(T),b(()=>x(I,_(o)?.primary??`#e68a00`)),s(`input`,I,e=>g(e.currentTarget.value)),m(e,T),f()}N([`input`]);var Ln=p(`<div class="pane svelte-d580bl"><p class="meta svelte-d580bl">Defaults for this app. They apply to new records only; existing records
16
- keep their values.</p> <!> <!></div>`);function Rn(e,t){i(t,!0);let n=y(t,`themeControls`,3,!0),r=z(A(J.settings())),a;function o(e){D(r,e,!0),clearTimeout(a),a=setTimeout(s,300)}function s(){clearTimeout(a),a=void 0,J.setSettings(_(r))}j(()=>{let e=J.settings();a===void 0&&D(r,e,!0)});var c=Ln();g(`pagehide`,k,s);var l=M(L(c),2);dt(l,{get value(){return _(r)},onchange:o,idPrefix:`app-settings-tab`}),In(M(l,2),{get provider(){return n()}}),u(c),m(e,c),f()}function zn(e){return{get ids(){return e.snapshot().recipes.map(e=>e.id)},add:(...t)=>void e.run({name:`add_recipes`,input:{ids:t}}),remove:(...t)=>void e.run({name:`remove_recipes`,input:{ids:t}})}}function Bn(e){return{read:()=>{let{currency:t,taxRate:n,paymentTerms:r}=e.snapshot().settings;return{currency:t,taxRate:Number((n/100).toFixed(6)),paymentTerms:r}},write:t=>{e.run({name:`set_settings`,input:{currency:t.currency,taxRate:Number((t.taxRate*100).toFixed(4)),...t.paymentTerms?{paymentTerms:t.paymentTerms}:{}}})}}}function Vn(e){return{read:()=>{let{preset:t,primary:n,colorScheme:r}=e.snapshot().theme,i={};return t&&(i.preset=t),n&&(i.custom={primary:n}),r!==`system`&&(i.colorScheme=r),Object.keys(i).length?i:void 0},write:t=>{if(!t){e.run({name:`reset_theme`,input:{}});return}e.run({name:`reset_theme`,input:{}}),e.run({name:`set_theme`,input:{...t.preset?{preset:t.preset}:{},...t.custom?{primary:t.custom.primary}:{},...t.colorScheme?{colorScheme:t.colorScheme}:{}}})}}}function Hn(e,t){let n=Vn(e),r=`browser`,i,a=()=>null;if(`chat`in t){let e=t.chat;a=()=>typeof e==`function`?e():e}else{let n=We(t);if(i=n.notice,r=n.config.mode,n.config.mode===`host`&&n.config.host){let t=He({endpoint:n.config.host.endpoint,snapshot:()=>e.snapshot()});a=()=>t}else if(n.config.mode===`byo`){let e=n.config.byo?.presets;a=()=>Be(oe(),e)}}let o=new Ue(n,e);return{transport:Ve({model:a,acceptCommands:r===`host`,unavailable:r===`byo`?`Connect your model on the AI page first, then I can help.`:`No model is connected yet, so I cannot help. The planner works without one.`,store:zn(e),recipes:ge,cookbooks:[],settings:Bn(e),theme:n,themeUndos:o,controller:e,onReply:t.onReply}),themeUndos:o,mode:r,...i?{notice:i}:{}}}var Un=p(`<div><!></div>`),Wn=p(`<div class="pane svelte-op8zpi"><p class="meta svelte-op8zpi">Reorder, move or hide navigation entries and choose which panels show.
16
+ keep their values.</p> <!> <!></div>`);function Rn(e,t){i(t,!0);let n=y(t,`themeControls`,3,!0),r=z(A(J.settings())),a;function o(e){D(r,e,!0),clearTimeout(a),a=setTimeout(s,300)}function s(){clearTimeout(a),a=void 0,J.setSettings(_(r))}j(()=>{let e=J.settings();a===void 0&&D(r,e,!0)});var c=Ln();g(`pagehide`,k,s);var l=M(L(c),2);dt(l,{get value(){return _(r)},onchange:o,idPrefix:`app-settings-tab`}),In(M(l,2),{get provider(){return n()}}),u(c),m(e,c),f()}function zn(e){return{get ids(){return e.snapshot().recipes.map(e=>e.id)},add:(...t)=>void e.run({name:`add_recipes`,input:{ids:t}}),remove:(...t)=>void e.run({name:`remove_recipes`,input:{ids:t}})}}function Bn(e){return{read:()=>{let{currency:t,taxRate:n,paymentTerms:r}=e.snapshot().settings;return{currency:t,taxRate:Number((n/100).toFixed(6)),paymentTerms:r}},write:t=>{e.run({name:`set_settings`,input:{currency:t.currency,taxRate:Number((t.taxRate*100).toFixed(4)),...t.paymentTerms?{paymentTerms:t.paymentTerms}:{}}})}}}function Vn(e){return{read:()=>{let{preset:t,primary:n,colorScheme:r}=e.snapshot().theme,i={};return t&&(i.preset=t),n&&(i.custom={primary:n}),r!==`system`&&(i.colorScheme=r),Object.keys(i).length?i:void 0},write:t=>{if(!t){e.run({name:`reset_theme`,input:{}});return}e.run({name:`reset_theme`,input:{}}),e.run({name:`set_theme`,input:{...t.preset?{preset:t.preset}:{},...t.custom?{primary:t.custom.primary}:{},...t.colorScheme?{colorScheme:t.colorScheme}:{}}})}}}function Hn(e,t){let n=Vn(e),r=`browser`,i,a=()=>null;if(`chat`in t){let e=t.chat;a=()=>typeof e==`function`?e():e}else{let n=We(t);if(i=n.notice,r=n.config.mode,n.config.mode===`host`&&n.config.host){let t=He({endpoint:n.config.host.endpoint,snapshot:()=>e.snapshot()});a=()=>t}else if(n.config.mode===`byo`){let e=n.config.byo?.presets;a=()=>Be(oe(),e,void 0,n.config.credentialPersistence)}}let o=new Ue(n,e);return{transport:Ve({model:a,acceptCommands:r===`host`,unavailable:r===`byo`?`Connect your model on the AI page first, then I can help.`:`No model is connected yet, so I cannot help. The planner works without one.`,store:zn(e),recipes:ge,cookbooks:[],settings:Bn(e),theme:n,themeUndos:o,controller:e,onReply:t.onReply}),themeUndos:o,mode:r,...i?{notice:i}:{}}}var Un=p(`<div><!></div>`),Wn=p(`<div class="pane svelte-op8zpi"><p class="meta svelte-op8zpi">Reorder, move or hide navigation entries and choose which panels show.
17
17
  The layout is saved with the cookbook.</p> <!></div>`),Gn=p(`<!> <!> <!> <!> <!> <!>`,1),Kn=p(`<div class="planner svelte-op8zpi"><!></div>`);function qn(e,t){i(t,!0);let n=e=>{var t=Kn(),n=L(t);ye(n,{get tabs(){return _(S)},get active(){return _(C)},onchange:A,"aria-label":`Planner`,children:(e,t)=>{var n=Gn(),r=w(n),i=e=>{var t=Un();bt(L(t),{}),u(t),b(()=>R(t,`hidden`,_(C)!==`cookbooks`)),m(e,t)},a=B(()=>_(x).includes(`cookbooks`));d(r,e=>{_(a)&&e(i)});var o=M(r,2),s=e=>{var t=Un();kn(L(t),{}),u(t),b(()=>R(t,`hidden`,_(C)!==`recipes`)),m(e,t)},l=B(()=>_(x).includes(`recipes`));d(o,e=>{_(l)&&e(s)});var f=M(o,2),p=e=>{var t=Un();_n(L(t),{}),u(t),b(()=>R(t,`hidden`,_(C)!==`features`)),m(e,t)},h=B(()=>_(x).includes(`features`));d(f,e=>{_(h)&&e(p)});var g=M(f,2),v=e=>{var t=Wn(),n=M(L(t),2);{let e=B(()=>D??O??void 0);H(n,{get controller(){return _(e)}})}u(t),b(()=>R(t,`hidden`,_(C)!==`layout`)),m(e,t)},y=B(()=>_(x).includes(`layout`));d(g,e=>{_(y)&&e(v)});var S=M(g,2),T=e=>{var t=Un();Rn(L(t),{get themeControls(){return c()}}),u(t),b(()=>R(t,`hidden`,_(C)!==`settings`)),m(e,t)},E=B(()=>_(x).includes(`settings`));d(S,e=>{_(E)&&e(T)});var k=M(S,2),A=e=>{var t=Un();jt(L(t),{}),u(t),b(()=>R(t,`hidden`,_(C)!==`export`)),m(e,t)},j=B(()=>_(x).includes(`export`));d(k,e=>{_(j)&&e(A)}),m(e,n)},$$slots:{default:!0}}),u(t),m(e,t)},r=y(t,`controller`,3,Je),a=y(t,`layout`,3,`own`),s=y(t,`persistence`,3,`self`),c=y(t,`themeControls`,3,!1),l=y(t,`tabs`,3,Ie);I(()=>{t.basePath!==void 0&&Ze(t.basePath)});let p=nt()??it(Ae()),h=Fe()!==null,v={cookbooks:`Cookbooks`,recipes:`Recipes`,features:`Features`,layout:`Layout`,settings:`Settings`,export:`Export`},x=B(()=>l().filter(e=>Ie.includes(e))),S=B(()=>_(x).map(e=>({id:e,label:v[e]}))),C=B(()=>_(x).includes(qe.active)?qe.active:_(x)[0]??`recipes`),E=T(()=>a()),D=E===`own`?new V({nav:()=>[],groups:()=>je({recipes:Q.ids,features:Q.features}),panels:()=>void 0,layout:()=>J.layout,editable:()=>!0,commit:e=>J.setLayout(e)}):null,O=E===`shell`?ie():null,A=e=>{let t=Ie.find(t=>t===e);t&&(qe.active=t)};P(()=>r().subscribe(e=>{let t=e.focus.tab;t&&t!==qe.active&&(qe.active=t)})),j(()=>{let e=qe.active;T(()=>{r().snapshot().focus.tab!==e&&r().run({name:`focus`,input:{tab:e}})})}),P(()=>{let e=ze.onReplaced;return ze.onReplaced=()=>p.reset?.(),()=>{ze.onReplaced=e}}),P(()=>{s()===`self`&&(J.loaded||(Le.load(),J.hydrate(``,oe())))}),j(()=>{s()===`self`&&(JSON.stringify(J.snapshot()),J.scheduleSave())}),P(()=>{let e=t.inference?Hn(r(),t.inference):void 0;t.onready?.({controller:r(),...e?{assistant:e}:{}})});var N=o();g(`pagehide`,k,()=>s()===`self`&&J.flush());var F=w(N),z=e=>{n(e)},U=e=>{De(e,{children:(e,t)=>{n(e)},$$slots:{default:!0}})};d(F,e=>{h?e(z):e(U,-1)}),m(e,N),f()}var Jn=p(`<section class="first-run svelte-1uha8ag" aria-labelledby="first-run-title"><h1 id="first-run-title" class="svelte-1uha8ag">Set up your assistant</h1> <p class="meta svelte-1uha8ag"> </p> <!> <div class="actions svelte-1uha8ag"><!> <!></div></section>`),Yn=p(`<main class="svelte-1uha8ag"><!></main>`);function Xn(t,r){i(r,!1),O();var a=Yn();e(`1uha8ag`,e=>{F(()=>{S.title=`Planner · smrt planner`})});var o=L(a),s=e=>{var t=Jn(),r=M(L(t),2),i=E(r,!0),a=M(r,2);Ge(a,{});var o=M(a,2),s=L(o);K(s,{onclick:()=>Re.continueFirstRun(),children:(e,t)=>{l();var n=c(`Continue`);m(e,n)},$$slots:{default:!0}});var d=M(s,2);K(d,{variant:`secondary`,onclick:()=>Re.dismissFirstRun(),children:(e,t)=>{l();var n=c(`I don't need AI, let's just build`);m(e,n)},$$slots:{default:!0}}),u(o),u(t),b(()=>n(i,Re.privacyNote)),m(e,t)},p=e=>{qn(e,{layout:`shell`,persistence:`host`,themeControls:!0})};d(o,e=>{Re.firstRun?e(s):e(p,-1)}),u(a),m(t,a),f()}export{Xn as component};
@@ -1 +1 @@
1
- import{A as e,B as t,Et as n,Mt as r,Nt as i,Tt as a,U as o,V as s,at as c,ct as l,ft as u,l as d,pt as f,rt as p,ut as m,v as h}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import{a as g,t as _}from"../chunks/ufuM4XBq.js";import{t as v}from"../chunks/D_J_XtJy.js";var y=o(`<main class="svelte-hyyiz7"><p class="meta svelte-hyyiz7"><a>Planner</a> / AI models</p> <h1 class="svelte-hyyiz7">Set up your assistant</h1> <p class="privacy svelte-hyyiz7"> </p> <!></main>`);function b(o,b){n(b,!1),d();var x=y();e(`hyyiz7`,e=>{p(()=>{l.title=`AI models · smrt planner`})});var S=m(x),C=m(S);r(),i(S);var w=f(S,4),T=u(w,!0),E=f(w,2);_(E,{}),i(x),c(e=>{h(C,`href`,e),t(T,g.privacyNote)},[()=>v(`/`)]),s(o,x),a()}export{b as component};
1
+ import{A as e,B as t,Et as n,Mt as r,Nt as i,Tt as a,U as o,V as s,at as c,ct as l,ft as u,l as d,pt as f,rt as p,ut as m,v as h}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import{a as g,t as _}from"../chunks/Ci0DUht6.js";import{t as v}from"../chunks/D_J_XtJy.js";var y=o(`<main class="svelte-hyyiz7"><p class="meta svelte-hyyiz7"><a>Planner</a> / AI models</p> <h1 class="svelte-hyyiz7">Set up your assistant</h1> <p class="privacy svelte-hyyiz7"> </p> <!></main>`);function b(o,b){n(b,!1),d();var x=y();e(`hyyiz7`,e=>{p(()=>{l.title=`AI models · smrt planner`})});var S=m(x),C=m(S);r(),i(S);var w=f(S,4),T=u(w,!0),E=f(w,2);_(E,{}),i(x),c(e=>{h(C,`href`,e),t(T,g.privacyNote)},[()=>v(`/`)]),s(o,x),a()}export{b as component};
@@ -1 +1 @@
1
- import{A as e,Et as t,Mt as n,Nt as r,Tt as i,U as a,V as o,at as s,ct as c,l,pt as u,r as d,rt as f,ut as p,v as m}from"../chunks/Chyo8rdT.js";import{c as h,n as g}from"../chunks/OJ_lLTHH.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import"../chunks/BYde9M_U.js";var _=a(`<main><p>The Blueprint moved to the Planner's <a>Export tab</a>.</p></main>`);function v(a,v){t(v,!1),d(()=>{let e=new URLSearchParams(location.search);e.set(`tab`,`export`),g(`${h}/?${e.toString().replace(/%2C/gi,`,`)}`,{replaceState:!0})}),l();var y=_();e(`1t5f7zw`,e=>{f(()=>{c.title=`Moved · smrt planner`})});var b=p(y),x=u(p(b));n(),r(b),r(y),s(()=>m(x,`href`,`${h}/?tab=export`)),o(a,y),i()}export{v as component};
1
+ import{A as e,Et as t,Mt as n,Nt as r,Tt as i,U as a,V as o,at as s,ct as c,l,pt as u,r as d,rt as f,ut as p,v as m}from"../chunks/Chyo8rdT.js";import{c as h,n as g}from"../chunks/2jFBkS1C.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import"../chunks/6P9zxrzU.js";var _=a(`<main><p>The Blueprint moved to the Planner's <a>Export tab</a>.</p></main>`);function v(a,v){t(v,!1),d(()=>{let e=new URLSearchParams(location.search);e.set(`tab`,`export`),g(`${h}/?${e.toString().replace(/%2C/gi,`,`)}`,{replaceState:!0})}),l();var y=_();e(`1t5f7zw`,e=>{f(()=>{c.title=`Moved · smrt planner`})});var b=p(y),x=u(p(b));n(),r(b),r(y),s(()=>m(x,`href`,`${h}/?tab=export`)),o(a,y),i()}export{v as component};
@@ -1 +1 @@
1
- import{A as e,Et as t,Mt as n,Nt as r,Tt as i,U as a,V as o,at as s,ct as c,l,pt as u,r as d,rt as f,ut as p,v as m}from"../chunks/Chyo8rdT.js";import{c as h,n as g}from"../chunks/OJ_lLTHH.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import"../chunks/BYde9M_U.js";var _=a(`<main><p>The Cookbook is in the Planner's <a>Export tab</a>.</p></main>`);function v(a,v){t(v,!1),d(()=>{let e=new URLSearchParams(location.search);e.set(`tab`,`export`),g(`${h}/?${e.toString().replace(/%2C/gi,`,`)}`,{replaceState:!0})}),l();var y=_();e(`9ir3hm`,e=>{f(()=>{c.title=`Moved · smrt planner`})});var b=p(y),x=u(p(b));n(),r(b),r(y),s(()=>m(x,`href`,`${h}/?tab=export`)),o(a,y),i()}export{v as component};
1
+ import{A as e,Et as t,Mt as n,Nt as r,Tt as i,U as a,V as o,at as s,ct as c,l,pt as u,r as d,rt as f,ut as p,v as m}from"../chunks/Chyo8rdT.js";import{c as h,n as g}from"../chunks/2jFBkS1C.js";import"../chunks/xihTtKlq.js";import"../chunks/Dp9GVO-9.js";import"../chunks/6P9zxrzU.js";var _=a(`<main><p>The Cookbook is in the Planner's <a>Export tab</a>.</p></main>`);function v(a,v){t(v,!1),d(()=>{let e=new URLSearchParams(location.search);e.set(`tab`,`export`),g(`${h}/?${e.toString().replace(/%2C/gi,`,`)}`,{replaceState:!0})}),l();var y=_();e(`9ir3hm`,e=>{f(()=>{c.title=`Moved · smrt planner`})});var b=p(y),x=u(p(b));n(),r(b),r(y),s(()=>m(x,`href`,`${h}/?tab=export`)),o(a,y),i()}export{v as component};
@@ -1 +1 @@
1
- import{n as e}from"../chunks/Dd_uD5pT.js";import{Et as t,Tt as n}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{J as r,K as i,q as a}from"../chunks/D_J_XtJy.js";import{t as o}from"../chunks/DRByVC-c.js";import{t as s}from"../chunks/DJtH-lRi.js";var c=e({entries:()=>l,load:()=>u}),l=()=>i.packages.flatMap(e=>a(e).map(t=>({package:e.id,model:t.name}))),u=({params:e})=>(r(e.package,e.model)||o(404,`Unknown model ${e.package}/${e.model}`),{packageId:e.package,modelName:e.model});function d(e,r){t(r,!0),s(e,{get packageId(){return r.data.packageId},get modelName(){return r.data.modelName}}),n()}export{d as component,c as universal};
1
+ import{n as e}from"../chunks/Dd_uD5pT.js";import{Et as t,Tt as n}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{J as r,K as i,q as a}from"../chunks/D_J_XtJy.js";import{t as o}from"../chunks/DRByVC-c.js";import{t as s}from"../chunks/Xp1g1t4n.js";var c=e({entries:()=>l,load:()=>u}),l=()=>i.packages.flatMap(e=>a(e).map(t=>({package:e.id,model:t.name}))),u=({params:e})=>(r(e.package,e.model)||o(404,`Unknown model ${e.package}/${e.model}`),{packageId:e.package,modelName:e.model});function d(e,r){t(r,!0),s(e,{get packageId(){return r.data.packageId},get modelName(){return r.data.modelName}}),n()}export{d as component,c as universal};
@@ -1 +1 @@
1
- import{n as e}from"../chunks/Dd_uD5pT.js";import{Et as t,Tt as n}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{S as r,b as i}from"../chunks/p6bgzXiY.js";import{J as a}from"../chunks/D_J_XtJy.js";import{t as o}from"../chunks/DRByVC-c.js";import{t as s}from"../chunks/DJtH-lRi.js";var c=e({entries:()=>l,load:()=>u}),l=()=>r.flatMap(e=>i(e).flatMap(e=>e.key?[{package:e.packageId,model:e.model.name,view:e.key}]:[])),u=({params:e})=>{let t=r.some(t=>i(t).some(t=>t.key===e.view&&t.packageId===e.package&&t.model.name===e.model));return(!a(e.package,e.model)||!t)&&o(404,`Unknown view ${e.package}/${e.model}/${e.view}`),{packageId:e.package,modelName:e.model,view:e.view}};function d(e,r){t(r,!0),s(e,{get packageId(){return r.data.packageId},get modelName(){return r.data.modelName},get view(){return r.data.view}}),n()}export{d as component,c as universal};
1
+ import{n as e}from"../chunks/Dd_uD5pT.js";import{Et as t,Tt as n}from"../chunks/Chyo8rdT.js";import"../chunks/xihTtKlq.js";import{S as r,b as i}from"../chunks/p6bgzXiY.js";import{J as a}from"../chunks/D_J_XtJy.js";import{t as o}from"../chunks/DRByVC-c.js";import{t as s}from"../chunks/Xp1g1t4n.js";var c=e({entries:()=>l,load:()=>u}),l=()=>r.flatMap(e=>i(e).flatMap(e=>e.key?[{package:e.packageId,model:e.model.name,view:e.key}]:[])),u=({params:e})=>{let t=r.some(t=>i(t).some(t=>t.key===e.view&&t.packageId===e.package&&t.model.name===e.model));return(!a(e.package,e.model)||!t)&&o(404,`Unknown view ${e.package}/${e.model}/${e.view}`),{packageId:e.package,modelName:e.model,view:e.view}};function d(e,r){t(r,!0),s(e,{get packageId(){return r.data.packageId},get modelName(){return r.data.modelName},get view(){return r.data.view}}),n()}export{d as component,c as universal};
@@ -1 +1 @@
1
- {"version":"1791696288726"}
1
+ {"version":"1791700921733"}
package/app/ai/index.html CHANGED
@@ -3,15 +3,15 @@
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.CH9DJLgI.js" rel="modulepreload">
7
- <link href="../_app/immutable/chunks/OJ_lLTHH.js" rel="modulepreload">
6
+ <link href="../_app/immutable/entry/start.BuaYHD1N.js" rel="modulepreload">
7
+ <link href="../_app/immutable/chunks/2jFBkS1C.js" rel="modulepreload">
8
8
  <link href="../_app/immutable/chunks/Chyo8rdT.js" rel="modulepreload">
9
9
  <link href="../_app/immutable/chunks/Dd_uD5pT.js" rel="modulepreload">
10
10
  <link href="../_app/immutable/chunks/Dt-HX3Vu.js" rel="modulepreload">
11
- <link href="../_app/immutable/entry/app.D5JJain6.js" rel="modulepreload">
11
+ <link href="../_app/immutable/entry/app.IZIJXhgq.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.CL1MxOva.js" rel="modulepreload">
14
+ <link href="../_app/immutable/nodes/0.m_U8WC7E.js" rel="modulepreload">
15
15
  <link href="../_app/immutable/chunks/1okeBSoq.js" rel="modulepreload">
16
16
  <link href="../_app/immutable/chunks/D0VgZnk1.js" rel="modulepreload">
17
17
  <link href="../_app/immutable/chunks/BWPhGFHl.js" rel="modulepreload">
@@ -23,12 +23,12 @@
23
23
  <link href="../_app/immutable/chunks/p6bgzXiY.js" rel="modulepreload">
24
24
  <link href="../_app/immutable/chunks/D_J_XtJy.js" rel="modulepreload">
25
25
  <link href="../_app/immutable/chunks/BKwRT_1p.js" rel="modulepreload">
26
- <link href="../_app/immutable/chunks/CV-2zt0K.js" rel="modulepreload">
26
+ <link href="../_app/immutable/chunks/CsprTb3f.js" rel="modulepreload">
27
27
  <link href="../_app/immutable/chunks/CRQ1Pmzr.js" rel="modulepreload">
28
28
  <link href="../_app/immutable/chunks/B4Kevpe0.js" rel="modulepreload">
29
29
  <link href="../_app/immutable/chunks/BYcBM-fh.js" rel="modulepreload">
30
- <link href="../_app/immutable/chunks/ufuM4XBq.js" rel="modulepreload">
31
- <link href="../_app/immutable/chunks/D333l2GL.js" rel="modulepreload">
30
+ <link href="../_app/immutable/chunks/Ci0DUht6.js" rel="modulepreload">
31
+ <link href="../_app/immutable/chunks/DkR8_Ws6.js" rel="modulepreload">
32
32
  <link href="../_app/immutable/chunks/C7zBd-pD.js" rel="modulepreload">
33
33
  <link href="../_app/immutable/chunks/D7hhQvDO.js" rel="modulepreload">
34
34
  <link href="../_app/immutable/chunks/CA-A9Ngs.js" rel="modulepreload">
@@ -37,13 +37,13 @@
37
37
  <link href="../_app/immutable/chunks/leQCwW2d.js" rel="modulepreload">
38
38
  <link href="../_app/immutable/chunks/CMhpRMKg.js" rel="modulepreload">
39
39
  <link href="../_app/immutable/chunks/Dp9GVO-9.js" rel="modulepreload">
40
- <link href="../_app/immutable/chunks/BYde9M_U.js" rel="modulepreload">
41
- <link href="../_app/immutable/chunks/DyGfbRG-.js" rel="modulepreload">
40
+ <link href="../_app/immutable/chunks/6P9zxrzU.js" rel="modulepreload">
41
+ <link href="../_app/immutable/chunks/BnRri03M.js" rel="modulepreload">
42
42
  <link href="../_app/immutable/chunks/DqcD-WtP.js" rel="modulepreload">
43
43
  <link href="../_app/immutable/chunks/DNRgqfTx.js" rel="modulepreload">
44
44
  <link href="../_app/immutable/chunks/DD7gpKb2.js" rel="modulepreload">
45
45
  <link href="../_app/immutable/chunks/CgAkqYsL.js" rel="modulepreload">
46
- <link href="../_app/immutable/nodes/3.DvwpTAQA.js" rel="modulepreload">
46
+ <link href="../_app/immutable/nodes/3.1B56hgAG.js" rel="modulepreload">
47
47
  <!--hyyiz7--><!----><title>AI models · smrt planner</title>
48
48
  <link href="../_app/immutable/assets/feedback.BVKAwFck.css" rel="stylesheet">
49
49
  <link href="../_app/immutable/assets/Button.DkP0qkG9.css" rel="stylesheet">
@@ -60,20 +60,20 @@
60
60
  <link href="../_app/immutable/assets/3.BlPQOes8.css" rel="stylesheet">
61
61
  </head>
62
62
  <body data-sveltekit-preload-data="hover">
63
- <div style="display: contents"><!--[--><!--[0--><!--[--><!--[-1--><!--]--> <!----> <div class="smrt-theme-root svelte-1kx38vk" data-theme="smrt" data-color-scheme="light"><div class="smrt-admin-shell svelte-1x3knxs" data-top-state="collapsed" data-left-state="expanded" data-right-state="collapsed" data-bottom-state="collapsed" 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: 2.75rem; --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-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"><!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><header id="smrt-admin-shell-top-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--top svelte-1x3knxs" data-state="collapsed" data-presentation="overlay" style="--edge-columns: 0px minmax(0, 1fr) 0px;"><!--[-1--><!--]--> <div class="smrt-admin-shell__band smrt-admin-shell__band--top svelte-1x3knxs" style="--band-column: 2;"><!--[-1--><!--[-1--><!--]--> <!--[-1--><!--]--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-opener svelte-1x3knxs"><!--[-1--><button type="button" aria-busy="false" class="button ghost sm svelte-1xxe0nr" aria-label="Menu" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel"><!--[-1--><!--]--> <span class="content svelte-1xxe0nr"><!---->Menu<!----></span></button><!--]--><!----></div><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-start svelte-1x3knxs" data-slot="header.start"><!--[--><!--[--><!--[1--><!--[0--><a class="smrt-admin-shell__brand smrt-admin-shell__brand-link svelte-183tmwc" href="../" aria-label="Planner"><!--[-1--><!--[0--><img class="smrt-admin-shell__logo svelte-183tmwc" 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-183tmwc wordmark"><strong class="svelte-183tmwc">Planner</strong><!--[-1--><!--]--></div><!--]--><!--]--><!----></a><!--]--><!----><!--]--><!--[1--><span class="smrt-layout-toggle svelte-71wvxn" data-testid="layout-edit-toggle"><button type="button" class="smrt-shell-icon-button svelte-1clwml6" aria-label="Edit layout" title="Edit layout" aria-pressed="false"><!--[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-1x3knxs" data-slot="header.center"><!--[--><!--[--><!--[1--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="button ghost sm smrt-command-palette-trigger svelte-1xxe0nr" aria-label="Search" aria-haspopup="dialog" aria-expanded="false" aria-keyshortcuts="Control+K Meta+K"><!--[-1--><!--]--> <span class="content svelte-1xxe0nr"><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-193du1s">Search</span> <!--[0--><kbd class="smrt-command-palette-trigger__hint svelte-193du1s">Ctrl+K</kbd><!--]--><!--]--><!----></span></button><!--]--><!--]--> <!--$s1--><dialog class="modal modal--md modal--center svelte-18o709r" aria-label="Search"><div class="modal__container svelte-18o709r"><!--[-1--><!--]--> <div class="modal__body svelte-18o709r"><!--[0--><div class="smrt-command-palette svelte-10qo4nw"><div class="smrt-command-palette__field svelte-10qo4nw"><svg class="smrt-command-palette__search-icon svelte-10qo4nw" 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="input smrt-command-palette__input svelte-1xhzwe6" role="combobox" aria-expanded="false" aria-controls="smrt-palette-list-s1" aria-autocomplete="list" autocomplete="off" autocapitalize="off" spellcheck="false" enterkeyhint="go"/><!----></div> <div class="smrt-command-palette__list svelte-10qo4nw" id="smrt-palette-list-s1" role="listbox" aria-label="Results" aria-busy="false"><!--[--><!--]--></div> <!--[0--><p class="smrt-command-palette__empty svelte-10qo4nw"></p><!--]--> <div class="smrt-command-palette__hints svelte-10qo4nw" aria-hidden="true"><span><kbd class="svelte-10qo4nw">↑</kbd><kbd class="svelte-10qo4nw">↓</kbd> to move</span> <span><kbd class="svelte-10qo4nw">↵</kbd> to select</span> <span><kbd class="svelte-10qo4nw">Esc</kbd> to close</span></div> <div class="smrt-command-palette__live svelte-10qo4nw" 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-1x3knxs" data-slot="header.end"><!--[--><!--[--><!--[0--><div class="smrt-dock-toggles svelte-1sgw810" data-testid="dock-toggles"><!--[--><button type="button" class="smrt-dock-toggles__button svelte-1sgw810" data-dock-tool="assistant" aria-label="Assistant" title="Assistant" aria-pressed="false" aria-expanded="false" aria-controls="smrt-admin-shell-right-panel" aria-disabled="true"><!--[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><!--]--></button><!--]--></div><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-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-1x3knxs" data-state="expanded" data-presentation="push" aria-label="Left sidebar"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__rail svelte-1x3knxs"><!--[-1--><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-stack svelte-1x3knxs"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__tenant-content svelte-1x3knxs"><!--[0--><!--[-1--><!--]--><!----><!--]--></div> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--leftSidebar-footer svelte-1x3knxs" 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" class="svelte-tlrjgw"><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" class="svelte-tlrjgw"><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" class="svelte-tlrjgw"><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><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----></div><!--]--> <!--[-1--><!--]--></div></aside><!--]--> <main id="smrt-admin-shell-main" class="smrt-admin-shell__main svelte-1x3knxs"><div class="smrt-layout-live svelte-71wvxn" role="status" aria-live="polite"></div> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><!--[0--><!----><!--]--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!----> <!----> <!--[--><main class="svelte-hyyiz7"><p class="meta svelte-hyyiz7"><a href="../">Planner</a> / AI models</p> <h1 class="svelte-hyyiz7">Set up your assistant</h1> <p class="privacy svelte-hyyiz7">Everything runs on this device. Nothing you type or say leaves the page.</p> <!--[-1--><!--]--> <div class="cards svelte-19u3zp7"><!--[0--><section class="card svelte-19u3zp7" data-state="available" aria-labelledby="ai-think"><header class="svelte-19u3zp7"><span class="badge svelte-19u3zp7"><svg xmlns="http://www.w3.org/2000/svg" width="22px" height="22px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" class="svelte-tlrjgw"><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><!----></span> <div><h2 id="ai-think" class="svelte-19u3zp7">Think</h2> <p class="sub svelte-19u3zp7">The assistant's language model: In browser</p></div></header> <!--[2--><p role="status" class="svelte-19u3zp7">This browser has no WebGPU, which the model needs. Try a recent
63
+ <div style="display: contents"><!--[--><!--[0--><!--[--><!--[-1--><!--]--> <!----> <div class="smrt-theme-root svelte-1kx38vk" data-theme="smrt" data-color-scheme="light"><div class="smrt-admin-shell svelte-1x3knxs" data-top-state="collapsed" data-left-state="expanded" data-right-state="collapsed" data-bottom-state="collapsed" 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: 2.75rem; --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-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"><!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><header id="smrt-admin-shell-top-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--top svelte-1x3knxs" data-state="collapsed" data-presentation="overlay" style="--edge-columns: 0px minmax(0, 1fr) 0px;"><!--[-1--><!--]--> <div class="smrt-admin-shell__band smrt-admin-shell__band--top svelte-1x3knxs" style="--band-column: 2;"><!--[-1--><!--[-1--><!--]--> <!--[-1--><!--]--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-opener svelte-1x3knxs"><!--[-1--><button type="button" aria-busy="false" class="button ghost sm svelte-1xxe0nr" aria-label="Menu" aria-expanded="true" aria-controls="smrt-admin-shell-left-panel"><!--[-1--><!--]--> <span class="content svelte-1xxe0nr"><!---->Menu<!----></span></button><!--]--><!----></div><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--header-start svelte-1x3knxs" data-slot="header.start"><!--[--><!--[--><!--[1--><!--[0--><a class="smrt-admin-shell__brand smrt-admin-shell__brand-link svelte-183tmwc" href="../" aria-label="Planner"><!--[-1--><!--[0--><img class="smrt-admin-shell__logo svelte-183tmwc" 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-183tmwc wordmark"><strong class="svelte-183tmwc">Planner</strong><!--[-1--><!--]--></div><!--]--><!--]--><!----></a><!--]--><!----><!--]--><!--[1--><span class="smrt-layout-toggle svelte-71wvxn" data-testid="layout-edit-toggle"><button type="button" class="smrt-shell-icon-button svelte-1clwml6" aria-label="Edit layout" title="Edit layout" aria-pressed="false"><!--[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-1x3knxs" data-slot="header.center"><!--[--><!--[--><!--[1--><!--[0--><!--[-1--><button type="button" aria-busy="false" class="button ghost sm smrt-command-palette-trigger svelte-1xxe0nr" aria-label="Search" aria-haspopup="dialog" aria-expanded="false" aria-keyshortcuts="Control+K Meta+K"><!--[-1--><!--]--> <span class="content svelte-1xxe0nr"><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-193du1s">Search</span> <!--[0--><kbd class="smrt-command-palette-trigger__hint svelte-193du1s">Ctrl+K</kbd><!--]--><!--]--><!----></span></button><!--]--><!--]--> <!--$s1--><dialog class="modal modal--md modal--center svelte-18o709r" aria-label="Search"><div class="modal__container svelte-18o709r"><!--[-1--><!--]--> <div class="modal__body svelte-18o709r"><!--[0--><div class="smrt-command-palette svelte-10qo4nw"><div class="smrt-command-palette__field svelte-10qo4nw"><svg class="smrt-command-palette__search-icon svelte-10qo4nw" 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="input smrt-command-palette__input svelte-1xhzwe6" role="combobox" aria-expanded="false" aria-controls="smrt-palette-list-s1" aria-autocomplete="list" autocomplete="off" autocapitalize="off" spellcheck="false" enterkeyhint="go"/><!----></div> <div class="smrt-command-palette__list svelte-10qo4nw" id="smrt-palette-list-s1" role="listbox" aria-label="Results" aria-busy="false"><!--[--><!--]--></div> <!--[0--><p class="smrt-command-palette__empty svelte-10qo4nw"></p><!--]--> <div class="smrt-command-palette__hints svelte-10qo4nw" aria-hidden="true"><span><kbd class="svelte-10qo4nw">↑</kbd><kbd class="svelte-10qo4nw">↓</kbd> to move</span> <span><kbd class="svelte-10qo4nw">↵</kbd> to select</span> <span><kbd class="svelte-10qo4nw">Esc</kbd> to close</span></div> <div class="smrt-command-palette__live svelte-10qo4nw" 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-1x3knxs" data-slot="header.end"><!--[--><!--[--><!--[0--><div class="smrt-dock-toggles svelte-1sgw810" data-testid="dock-toggles"><!--[--><button type="button" class="smrt-dock-toggles__button svelte-1sgw810" data-dock-tool="assistant" aria-label="Assistant" title="Assistant" aria-pressed="false" aria-expanded="false" aria-controls="smrt-admin-shell-right-panel" aria-disabled="true"><!--[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><!--]--></button><!--]--></div><!--]--><!--]--><!----><!--]--></div><!--]--><!----> <!--[-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-1x3knxs" data-state="expanded" data-presentation="push" aria-label="Left sidebar"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__rail svelte-1x3knxs"><!--[-1--><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><div class="smrt-admin-shell__tenant-stack svelte-1x3knxs"><!--[-1--><!--]--><!----> <div class="smrt-admin-shell__tenant-content svelte-1x3knxs"><!--[0--><!--[-1--><!--]--><!----><!--]--></div> <!--[-1--><!--]--> <!--[1--><div class="smrt-admin-shell__slot smrt-admin-shell__slot--leftSidebar-footer svelte-1x3knxs" 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" class="svelte-tlrjgw"><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" class="svelte-tlrjgw"><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" class="svelte-tlrjgw"><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><!----><!--]--><!--]--><!----><!--]--></div><!--]--><!----></div><!--]--> <!--[-1--><!--]--></div></aside><!--]--> <main id="smrt-admin-shell-main" class="smrt-admin-shell__main svelte-1x3knxs"><div class="smrt-layout-live svelte-71wvxn" role="status" aria-live="polite"></div> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[0--><!--[0--><!----><!--]--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!----> <!----> <!--[--><main class="svelte-hyyiz7"><p class="meta svelte-hyyiz7"><a href="../">Planner</a> / AI models</p> <h1 class="svelte-hyyiz7">Set up your assistant</h1> <p class="privacy svelte-hyyiz7">Everything runs on this device. Nothing you type or say leaves the page.</p> <!--[-1--><!--]--> <div class="cards svelte-19u3zp7"><!--[0--><section class="card svelte-19u3zp7" data-state="available" aria-labelledby="ai-think"><header class="svelte-19u3zp7"><span class="badge svelte-19u3zp7"><svg xmlns="http://www.w3.org/2000/svg" width="22px" height="22px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" class="svelte-tlrjgw"><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><!----></span> <div><h2 id="ai-think" class="svelte-19u3zp7">Think</h2> <p class="sub svelte-19u3zp7">The assistant's language model: In browser</p></div></header> <!--[-1--><!--]--> <!--[3--><p role="status" class="svelte-19u3zp7">This browser has no WebGPU, which the model needs. Try a recent
64
64
  Chrome, Edge or Safari on a computer. The Planner works without it.</p><!--]--></section><!--]--> <!--[0--><section class="card svelte-19u3zp7" data-state="available" aria-labelledby="ai-hear"><header class="svelte-19u3zp7"><span class="badge svelte-19u3zp7"><svg xmlns="http://www.w3.org/2000/svg" width="22px" height="22px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" class="svelte-tlrjgw"><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><!----></span> <div><h2 id="ai-hear" class="svelte-19u3zp7">Hear</h2> <p class="sub svelte-19u3zp7">Voice typing, speech to text</p></div></header> <!--[0--><p class="meta svelte-19u3zp7" role="status">Checking this browser.</p><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></section><!--]--> <!--[0--><section class="card svelte-19u3zp7" data-state="available" aria-labelledby="ai-speak"><header class="svelte-19u3zp7"><span class="badge svelte-19u3zp7"><svg xmlns="http://www.w3.org/2000/svg" width="22px" height="22px" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" class="svelte-tlrjgw"><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><!----></span> <div><h2 id="ai-speak" class="svelte-19u3zp7">Speak</h2> <p class="sub svelte-19u3zp7">Read replies aloud, text to speech</p></div></header> <!--[-1--><p role="status" class="svelte-19u3zp7">This browser has no speech synthesis.</p><!--]--></section><!--]--></div><!----></main><!--]--><!----><!----><!----></main> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><aside id="smrt-admin-shell-right-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--right svelte-1x3knxs" data-state="collapsed" data-presentation="overlay" aria-label="Right sidebar"><!--[-1--><!--]--><!----> <!--[-1--><!--]--> <div class="smrt-admin-shell__rail svelte-1x3knxs"><!--[-1--><!--]--><!----> <!--[0--><!--]--></div> <!--[-1--><!--]--></aside><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[0--><footer id="smrt-admin-shell-bottom-panel" class="smrt-admin-shell__edge smrt-admin-shell__edge--bottom svelte-1x3knxs" data-state="collapsed" data-presentation="overlay" style="--edge-columns: 0px minmax(0, 1fr) 0px;"><!--[-1--><!--]--> <div class="smrt-admin-shell__band smrt-admin-shell__band--bottom svelte-1x3knxs" style="--band-column: 2;"><!--[-1--><!--]--><!----> <!--[-1--><!--]--><!----> <!--[-1--><!--]--> <!--[-1--><!--]--><!----> <!--[-1--><!--]--><!----> <!--[-1--><!--]--></div> <!--[-1--><!--]--> <!--[-1--><!--]--></footer><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--> <!--[-1--><!--]--></div><!----></div><!----><!----><!--]--><!--]--> <!--[-1--><!--]--><!--]-->
65
65
 
66
66
  <script>
67
67
  {
68
- __sveltekit_1i3quer = {
68
+ __sveltekit_n74eup = {
69
69
  base: new URL("..", location).pathname.slice(0, -1)
70
70
  };
71
71
 
72
72
  const element = document.currentScript.parentElement;
73
73
 
74
74
  Promise.all([
75
- import("../_app/immutable/entry/start.CH9DJLgI.js"),
76
- import("../_app/immutable/entry/app.D5JJain6.js")
75
+ import("../_app/immutable/entry/start.BuaYHD1N.js"),
76
+ import("../_app/immutable/entry/app.IZIJXhgq.js")
77
77
  ]).then(([kit, app]) => {
78
78
  kit.start(app, element, {
79
79
  node_ids: [0, 3],
@@ -3,15 +3,15 @@
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.CH9DJLgI.js" rel="modulepreload">
7
- <link href="../_app/immutable/chunks/OJ_lLTHH.js" rel="modulepreload">
6
+ <link href="../_app/immutable/entry/start.BuaYHD1N.js" rel="modulepreload">
7
+ <link href="../_app/immutable/chunks/2jFBkS1C.js" rel="modulepreload">
8
8
  <link href="../_app/immutable/chunks/Chyo8rdT.js" rel="modulepreload">
9
9
  <link href="../_app/immutable/chunks/Dd_uD5pT.js" rel="modulepreload">
10
10
  <link href="../_app/immutable/chunks/Dt-HX3Vu.js" rel="modulepreload">
11
- <link href="../_app/immutable/entry/app.D5JJain6.js" rel="modulepreload">
11
+ <link href="../_app/immutable/entry/app.IZIJXhgq.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.CL1MxOva.js" rel="modulepreload">
14
+ <link href="../_app/immutable/nodes/0.m_U8WC7E.js" rel="modulepreload">
15
15
  <link href="../_app/immutable/chunks/1okeBSoq.js" rel="modulepreload">
16
16
  <link href="../_app/immutable/chunks/D0VgZnk1.js" rel="modulepreload">
17
17
  <link href="../_app/immutable/chunks/BWPhGFHl.js" rel="modulepreload">
@@ -23,12 +23,12 @@
23
23
  <link href="../_app/immutable/chunks/p6bgzXiY.js" rel="modulepreload">
24
24
  <link href="../_app/immutable/chunks/D_J_XtJy.js" rel="modulepreload">
25
25
  <link href="../_app/immutable/chunks/BKwRT_1p.js" rel="modulepreload">
26
- <link href="../_app/immutable/chunks/CV-2zt0K.js" rel="modulepreload">
26
+ <link href="../_app/immutable/chunks/CsprTb3f.js" rel="modulepreload">
27
27
  <link href="../_app/immutable/chunks/CRQ1Pmzr.js" rel="modulepreload">
28
28
  <link href="../_app/immutable/chunks/B4Kevpe0.js" rel="modulepreload">
29
29
  <link href="../_app/immutable/chunks/BYcBM-fh.js" rel="modulepreload">
30
- <link href="../_app/immutable/chunks/ufuM4XBq.js" rel="modulepreload">
31
- <link href="../_app/immutable/chunks/D333l2GL.js" rel="modulepreload">
30
+ <link href="../_app/immutable/chunks/Ci0DUht6.js" rel="modulepreload">
31
+ <link href="../_app/immutable/chunks/DkR8_Ws6.js" rel="modulepreload">
32
32
  <link href="../_app/immutable/chunks/C7zBd-pD.js" rel="modulepreload">
33
33
  <link href="../_app/immutable/chunks/D7hhQvDO.js" rel="modulepreload">
34
34
  <link href="../_app/immutable/chunks/CA-A9Ngs.js" rel="modulepreload">
@@ -37,13 +37,13 @@
37
37
  <link href="../_app/immutable/chunks/leQCwW2d.js" rel="modulepreload">
38
38
  <link href="../_app/immutable/chunks/CMhpRMKg.js" rel="modulepreload">
39
39
  <link href="../_app/immutable/chunks/Dp9GVO-9.js" rel="modulepreload">
40
- <link href="../_app/immutable/chunks/BYde9M_U.js" rel="modulepreload">
41
- <link href="../_app/immutable/chunks/DyGfbRG-.js" rel="modulepreload">
40
+ <link href="../_app/immutable/chunks/6P9zxrzU.js" rel="modulepreload">
41
+ <link href="../_app/immutable/chunks/BnRri03M.js" rel="modulepreload">
42
42
  <link href="../_app/immutable/chunks/DqcD-WtP.js" rel="modulepreload">
43
43
  <link href="../_app/immutable/chunks/DNRgqfTx.js" rel="modulepreload">
44
44
  <link href="../_app/immutable/chunks/DD7gpKb2.js" rel="modulepreload">
45
45
  <link href="../_app/immutable/chunks/CgAkqYsL.js" rel="modulepreload">
46
- <link href="../_app/immutable/nodes/4.qrT4bnmS.js" rel="modulepreload">
46
+ <link href="../_app/immutable/nodes/4.SSIC7sUh.js" rel="modulepreload">
47
47
  <!--1t5f7zw--><!----><title>Moved · smrt planner</title>
48
48
  <link href="../_app/immutable/assets/feedback.BVKAwFck.css" rel="stylesheet">
49
49
  <link href="../_app/immutable/assets/Button.DkP0qkG9.css" rel="stylesheet">
@@ -63,15 +63,15 @@
63
63
 
64
64
  <script>
65
65
  {
66
- __sveltekit_1i3quer = {
66
+ __sveltekit_n74eup = {
67
67
  base: new URL("..", location).pathname.slice(0, -1)
68
68
  };
69
69
 
70
70
  const element = document.currentScript.parentElement;
71
71
 
72
72
  Promise.all([
73
- import("../_app/immutable/entry/start.CH9DJLgI.js"),
74
- import("../_app/immutable/entry/app.D5JJain6.js")
73
+ import("../_app/immutable/entry/start.BuaYHD1N.js"),
74
+ import("../_app/immutable/entry/app.IZIJXhgq.js")
75
75
  ]).then(([kit, app]) => {
76
76
  kit.start(app, element, {
77
77
  node_ids: [0, 4],
@@ -3,15 +3,15 @@
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.CH9DJLgI.js" rel="modulepreload">
7
- <link href="../_app/immutable/chunks/OJ_lLTHH.js" rel="modulepreload">
6
+ <link href="../_app/immutable/entry/start.BuaYHD1N.js" rel="modulepreload">
7
+ <link href="../_app/immutable/chunks/2jFBkS1C.js" rel="modulepreload">
8
8
  <link href="../_app/immutable/chunks/Chyo8rdT.js" rel="modulepreload">
9
9
  <link href="../_app/immutable/chunks/Dd_uD5pT.js" rel="modulepreload">
10
10
  <link href="../_app/immutable/chunks/Dt-HX3Vu.js" rel="modulepreload">
11
- <link href="../_app/immutable/entry/app.D5JJain6.js" rel="modulepreload">
11
+ <link href="../_app/immutable/entry/app.IZIJXhgq.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.CL1MxOva.js" rel="modulepreload">
14
+ <link href="../_app/immutable/nodes/0.m_U8WC7E.js" rel="modulepreload">
15
15
  <link href="../_app/immutable/chunks/1okeBSoq.js" rel="modulepreload">
16
16
  <link href="../_app/immutable/chunks/D0VgZnk1.js" rel="modulepreload">
17
17
  <link href="../_app/immutable/chunks/BWPhGFHl.js" rel="modulepreload">
@@ -23,12 +23,12 @@
23
23
  <link href="../_app/immutable/chunks/p6bgzXiY.js" rel="modulepreload">
24
24
  <link href="../_app/immutable/chunks/D_J_XtJy.js" rel="modulepreload">
25
25
  <link href="../_app/immutable/chunks/BKwRT_1p.js" rel="modulepreload">
26
- <link href="../_app/immutable/chunks/CV-2zt0K.js" rel="modulepreload">
26
+ <link href="../_app/immutable/chunks/CsprTb3f.js" rel="modulepreload">
27
27
  <link href="../_app/immutable/chunks/CRQ1Pmzr.js" rel="modulepreload">
28
28
  <link href="../_app/immutable/chunks/B4Kevpe0.js" rel="modulepreload">
29
29
  <link href="../_app/immutable/chunks/BYcBM-fh.js" rel="modulepreload">
30
- <link href="../_app/immutable/chunks/ufuM4XBq.js" rel="modulepreload">
31
- <link href="../_app/immutable/chunks/D333l2GL.js" rel="modulepreload">
30
+ <link href="../_app/immutable/chunks/Ci0DUht6.js" rel="modulepreload">
31
+ <link href="../_app/immutable/chunks/DkR8_Ws6.js" rel="modulepreload">
32
32
  <link href="../_app/immutable/chunks/C7zBd-pD.js" rel="modulepreload">
33
33
  <link href="../_app/immutable/chunks/D7hhQvDO.js" rel="modulepreload">
34
34
  <link href="../_app/immutable/chunks/CA-A9Ngs.js" rel="modulepreload">
@@ -37,13 +37,13 @@
37
37
  <link href="../_app/immutable/chunks/leQCwW2d.js" rel="modulepreload">
38
38
  <link href="../_app/immutable/chunks/CMhpRMKg.js" rel="modulepreload">
39
39
  <link href="../_app/immutable/chunks/Dp9GVO-9.js" rel="modulepreload">
40
- <link href="../_app/immutable/chunks/BYde9M_U.js" rel="modulepreload">
41
- <link href="../_app/immutable/chunks/DyGfbRG-.js" rel="modulepreload">
40
+ <link href="../_app/immutable/chunks/6P9zxrzU.js" rel="modulepreload">
41
+ <link href="../_app/immutable/chunks/BnRri03M.js" rel="modulepreload">
42
42
  <link href="../_app/immutable/chunks/DqcD-WtP.js" rel="modulepreload">
43
43
  <link href="../_app/immutable/chunks/DNRgqfTx.js" rel="modulepreload">
44
44
  <link href="../_app/immutable/chunks/DD7gpKb2.js" rel="modulepreload">
45
45
  <link href="../_app/immutable/chunks/CgAkqYsL.js" rel="modulepreload">
46
- <link href="../_app/immutable/nodes/5.DDLa2uhV.js" rel="modulepreload">
46
+ <link href="../_app/immutable/nodes/5.DgdwleDQ.js" rel="modulepreload">
47
47
  <!--9ir3hm--><!----><title>Moved · smrt planner</title>
48
48
  <link href="../_app/immutable/assets/feedback.BVKAwFck.css" rel="stylesheet">
49
49
  <link href="../_app/immutable/assets/Button.DkP0qkG9.css" rel="stylesheet">
@@ -63,15 +63,15 @@
63
63
 
64
64
  <script>
65
65
  {
66
- __sveltekit_1i3quer = {
66
+ __sveltekit_n74eup = {
67
67
  base: new URL("..", location).pathname.slice(0, -1)
68
68
  };
69
69
 
70
70
  const element = document.currentScript.parentElement;
71
71
 
72
72
  Promise.all([
73
- import("../_app/immutable/entry/start.CH9DJLgI.js"),
74
- import("../_app/immutable/entry/app.D5JJain6.js")
73
+ import("../_app/immutable/entry/start.BuaYHD1N.js"),
74
+ import("../_app/immutable/entry/app.IZIJXhgq.js")
75
75
  ]).then(([kit, app]) => {
76
76
  kit.start(app, element, {
77
77
  node_ids: [0, 5],
package/app/index.html CHANGED
@@ -3,15 +3,15 @@
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.CH9DJLgI.js" rel="modulepreload">
7
- <link href="./_app/immutable/chunks/OJ_lLTHH.js" rel="modulepreload">
6
+ <link href="./_app/immutable/entry/start.BuaYHD1N.js" rel="modulepreload">
7
+ <link href="./_app/immutable/chunks/2jFBkS1C.js" rel="modulepreload">
8
8
  <link href="./_app/immutable/chunks/Chyo8rdT.js" rel="modulepreload">
9
9
  <link href="./_app/immutable/chunks/Dd_uD5pT.js" rel="modulepreload">
10
10
  <link href="./_app/immutable/chunks/Dt-HX3Vu.js" rel="modulepreload">
11
- <link href="./_app/immutable/entry/app.D5JJain6.js" rel="modulepreload">
11
+ <link href="./_app/immutable/entry/app.IZIJXhgq.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.CL1MxOva.js" rel="modulepreload">
14
+ <link href="./_app/immutable/nodes/0.m_U8WC7E.js" rel="modulepreload">
15
15
  <link href="./_app/immutable/chunks/1okeBSoq.js" rel="modulepreload">
16
16
  <link href="./_app/immutable/chunks/D0VgZnk1.js" rel="modulepreload">
17
17
  <link href="./_app/immutable/chunks/BWPhGFHl.js" rel="modulepreload">
@@ -23,12 +23,12 @@
23
23
  <link href="./_app/immutable/chunks/p6bgzXiY.js" rel="modulepreload">
24
24
  <link href="./_app/immutable/chunks/D_J_XtJy.js" rel="modulepreload">
25
25
  <link href="./_app/immutable/chunks/BKwRT_1p.js" rel="modulepreload">
26
- <link href="./_app/immutable/chunks/CV-2zt0K.js" rel="modulepreload">
26
+ <link href="./_app/immutable/chunks/CsprTb3f.js" rel="modulepreload">
27
27
  <link href="./_app/immutable/chunks/CRQ1Pmzr.js" rel="modulepreload">
28
28
  <link href="./_app/immutable/chunks/B4Kevpe0.js" rel="modulepreload">
29
29
  <link href="./_app/immutable/chunks/BYcBM-fh.js" rel="modulepreload">
30
- <link href="./_app/immutable/chunks/ufuM4XBq.js" rel="modulepreload">
31
- <link href="./_app/immutable/chunks/D333l2GL.js" rel="modulepreload">
30
+ <link href="./_app/immutable/chunks/Ci0DUht6.js" rel="modulepreload">
31
+ <link href="./_app/immutable/chunks/DkR8_Ws6.js" rel="modulepreload">
32
32
  <link href="./_app/immutable/chunks/C7zBd-pD.js" rel="modulepreload">
33
33
  <link href="./_app/immutable/chunks/D7hhQvDO.js" rel="modulepreload">
34
34
  <link href="./_app/immutable/chunks/CA-A9Ngs.js" rel="modulepreload">
@@ -37,13 +37,13 @@
37
37
  <link href="./_app/immutable/chunks/leQCwW2d.js" rel="modulepreload">
38
38
  <link href="./_app/immutable/chunks/CMhpRMKg.js" rel="modulepreload">
39
39
  <link href="./_app/immutable/chunks/Dp9GVO-9.js" rel="modulepreload">
40
- <link href="./_app/immutable/chunks/BYde9M_U.js" rel="modulepreload">
41
- <link href="./_app/immutable/chunks/DyGfbRG-.js" rel="modulepreload">
40
+ <link href="./_app/immutable/chunks/6P9zxrzU.js" rel="modulepreload">
41
+ <link href="./_app/immutable/chunks/BnRri03M.js" rel="modulepreload">
42
42
  <link href="./_app/immutable/chunks/DqcD-WtP.js" rel="modulepreload">
43
43
  <link href="./_app/immutable/chunks/DNRgqfTx.js" rel="modulepreload">
44
44
  <link href="./_app/immutable/chunks/DD7gpKb2.js" rel="modulepreload">
45
45
  <link href="./_app/immutable/chunks/CgAkqYsL.js" rel="modulepreload">
46
- <link href="./_app/immutable/nodes/2.BEw046av.js" rel="modulepreload">
46
+ <link href="./_app/immutable/nodes/2.CR5BwGnt.js" rel="modulepreload">
47
47
  <link href="./_app/immutable/chunks/QukgIHDX.js" rel="modulepreload">
48
48
  <!--1uha8ag--><!----><title>Planner · smrt planner</title>
49
49
  <link href="./_app/immutable/assets/feedback.BVKAwFck.css" rel="stylesheet">
@@ -79,15 +79,15 @@
79
79
 
80
80
  <script>
81
81
  {
82
- __sveltekit_1i3quer = {
82
+ __sveltekit_n74eup = {
83
83
  base: new URL(".", location).pathname.slice(0, -1)
84
84
  };
85
85
 
86
86
  const element = document.currentScript.parentElement;
87
87
 
88
88
  Promise.all([
89
- import("./_app/immutable/entry/start.CH9DJLgI.js"),
90
- import("./_app/immutable/entry/app.D5JJain6.js")
89
+ import("./_app/immutable/entry/start.BuaYHD1N.js"),
90
+ import("./_app/immutable/entry/app.IZIJXhgq.js")
91
91
  ]).then(([kit, app]) => {
92
92
  kit.start(app, element, {
93
93
  node_ids: [0, 2],