@cellarnode/ui 0.178.1 → 0.180.0

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 (284) hide show
  1. package/dist/brand/brand-field-provenance.js +3 -3
  2. package/dist/brand/brand-field-provenance.js.map +1 -1
  3. package/dist/brand/brand-generation-context-form.js +2 -2
  4. package/dist/brand/brand-generation-recovery.js +2 -2
  5. package/dist/brand/brand-generation-recovery.js.map +1 -1
  6. package/dist/brand/brand-image-asset-slot-card.js +1 -1
  7. package/dist/brand/brand-image-chooser.js +1 -1
  8. package/dist/brand/brand-image-source-picker.js +1 -1
  9. package/dist/brand/brand-profile-form-lists.js +2 -2
  10. package/dist/brand/brand-profile-form-people.js +2 -2
  11. package/dist/brand/brand-profile-review-media.js +1 -1
  12. package/dist/brand/brand-profile-review-visibility.d.ts.map +1 -1
  13. package/dist/brand/brand-profile-review-visibility.js +6 -4
  14. package/dist/brand/brand-profile-review-visibility.js.map +1 -1
  15. package/dist/brand/brand-profile-workspace-copy.d.ts +14 -0
  16. package/dist/brand/brand-profile-workspace-copy.d.ts.map +1 -1
  17. package/dist/brand/brand-profile-workspace-copy.js +4 -0
  18. package/dist/brand/brand-profile-workspace-copy.js.map +1 -1
  19. package/dist/brand/brand-profile-workspace-parts.d.ts +22 -2
  20. package/dist/brand/brand-profile-workspace-parts.d.ts.map +1 -1
  21. package/dist/brand/brand-profile-workspace-parts.js +6 -7
  22. package/dist/brand/brand-profile-workspace-parts.js.map +1 -1
  23. package/dist/brand/brand-profile-workspace.d.ts +5 -1
  24. package/dist/brand/brand-profile-workspace.d.ts.map +1 -1
  25. package/dist/brand/brand-profile-workspace.js +8 -3
  26. package/dist/brand/brand-profile-workspace.js.map +1 -1
  27. package/dist/brand/brand-provenance-summary.js +1 -1
  28. package/dist/brand/brand-summary-card.js +1 -1
  29. package/dist/brand/brand-summary-card.js.map +1 -1
  30. package/dist/brand/index.d.ts +1 -0
  31. package/dist/brand/index.d.ts.map +1 -1
  32. package/dist/brand/index.js +1 -0
  33. package/dist/brand/index.js.map +1 -1
  34. package/dist/brand/public-visibility-toggle.d.ts +33 -0
  35. package/dist/brand/public-visibility-toggle.d.ts.map +1 -0
  36. package/dist/brand/public-visibility-toggle.js +23 -0
  37. package/dist/brand/public-visibility-toggle.js.map +1 -0
  38. package/dist/chat/chat-composer.d.ts +3 -1
  39. package/dist/chat/chat-composer.d.ts.map +1 -1
  40. package/dist/chat/chat-composer.js +3 -3
  41. package/dist/chat/chat-composer.js.map +1 -1
  42. package/dist/chat/chat-surface.d.ts +23 -2
  43. package/dist/chat/chat-surface.d.ts.map +1 -1
  44. package/dist/chat/chat-surface.js +77 -41
  45. package/dist/chat/chat-surface.js.map +1 -1
  46. package/dist/chat/index.d.ts +2 -0
  47. package/dist/chat/index.d.ts.map +1 -1
  48. package/dist/chat/index.js +1 -0
  49. package/dist/chat/index.js.map +1 -1
  50. package/dist/chat/messenger-layout.js +2 -2
  51. package/dist/chat/messenger-layout.js.map +1 -1
  52. package/dist/chat/messenger-screen/room-panel.d.ts +24 -0
  53. package/dist/chat/messenger-screen/room-panel.d.ts.map +1 -1
  54. package/dist/chat/messenger-screen/room-panel.js +175 -21
  55. package/dist/chat/messenger-screen/room-panel.js.map +1 -1
  56. package/dist/chat/messenger-screen/types.d.ts +2 -0
  57. package/dist/chat/messenger-screen/types.d.ts.map +1 -1
  58. package/dist/chat/use-stick-to-bottom.d.ts +45 -0
  59. package/dist/chat/use-stick-to-bottom.d.ts.map +1 -0
  60. package/dist/chat/use-stick-to-bottom.js +191 -0
  61. package/dist/chat/use-stick-to-bottom.js.map +1 -0
  62. package/dist/chat-ably/use-presence.d.ts +13 -0
  63. package/dist/chat-ably/use-presence.d.ts.map +1 -1
  64. package/dist/chat-ably/use-presence.js +35 -0
  65. package/dist/chat-ably/use-presence.js.map +1 -1
  66. package/dist/components/access-model-select.d.ts.map +1 -1
  67. package/dist/components/access-model-select.js +2 -1
  68. package/dist/components/access-model-select.js.map +1 -1
  69. package/dist/components/accordion.js +1 -1
  70. package/dist/components/animated-select.js +1 -1
  71. package/dist/components/animated-select.js.map +1 -1
  72. package/dist/components/animated-shadcn-select.d.ts +2 -2
  73. package/dist/components/animated-shadcn-select.d.ts.map +1 -1
  74. package/dist/components/animated-shadcn-select.js +16 -3
  75. package/dist/components/animated-shadcn-select.js.map +1 -1
  76. package/dist/components/avatar-stack.js +3 -3
  77. package/dist/components/avatar-stack.js.map +1 -1
  78. package/dist/components/avatar.js +1 -1
  79. package/dist/components/avatar.js.map +1 -1
  80. package/dist/components/bottle-extract-dialog.js +2 -2
  81. package/dist/components/bottle-extract-dialog.js.map +1 -1
  82. package/dist/components/bottle-extraction-inline-progress.js +1 -1
  83. package/dist/components/bottle-extraction-inline-progress.js.map +1 -1
  84. package/dist/components/card-actions-trigger.js +1 -1
  85. package/dist/components/card-actions-trigger.js.map +1 -1
  86. package/dist/components/certification-upload-card.d.ts +23 -2
  87. package/dist/components/certification-upload-card.d.ts.map +1 -1
  88. package/dist/components/certification-upload-card.js +103 -8
  89. package/dist/components/certification-upload-card.js.map +1 -1
  90. package/dist/components/checkbox.js +1 -1
  91. package/dist/components/checkbox.js.map +1 -1
  92. package/dist/components/closure-select.d.ts.map +1 -1
  93. package/dist/components/closure-select.js +2 -1
  94. package/dist/components/closure-select.js.map +1 -1
  95. package/dist/components/colour-picker-field.js +1 -1
  96. package/dist/components/colour-picker-field.js.map +1 -1
  97. package/dist/components/composition-editor.js +1 -1
  98. package/dist/components/composition-editor.js.map +1 -1
  99. package/dist/components/confirmation/beverage-comparison-modal.js +1 -1
  100. package/dist/components/confirmation/beverage-comparison-modal.js.map +1 -1
  101. package/dist/components/confirmation/confirmation-card.js +2 -2
  102. package/dist/components/confirmation/confirmation-card.js.map +1 -1
  103. package/dist/components/confirmation/cross-portfolio-nudge-sheet.js +5 -5
  104. package/dist/components/confirmation/cross-portfolio-nudge-sheet.js.map +1 -1
  105. package/dist/components/corner-style-picker.js +1 -1
  106. package/dist/components/corner-style-picker.js.map +1 -1
  107. package/dist/components/country-code-multi-select.d.ts.map +1 -1
  108. package/dist/components/country-code-multi-select.js +2 -1
  109. package/dist/components/country-code-multi-select.js.map +1 -1
  110. package/dist/components/country-code-select.d.ts.map +1 -1
  111. package/dist/components/country-code-select.js +4 -2
  112. package/dist/components/country-code-select.js.map +1 -1
  113. package/dist/components/currency-select.d.ts.map +1 -1
  114. package/dist/components/currency-select.js +2 -1
  115. package/dist/components/currency-select.js.map +1 -1
  116. package/dist/components/delivery-terms-select.d.ts.map +1 -1
  117. package/dist/components/delivery-terms-select.js +2 -1
  118. package/dist/components/delivery-terms-select.js.map +1 -1
  119. package/dist/components/enterprise-type-select.d.ts.map +1 -1
  120. package/dist/components/enterprise-type-select.js +2 -1
  121. package/dist/components/enterprise-type-select.js.map +1 -1
  122. package/dist/components/inset-drawer.js +1 -1
  123. package/dist/components/inset-drawer.js.map +1 -1
  124. package/dist/components/link.d.ts +1 -1
  125. package/dist/components/link.d.ts.map +1 -1
  126. package/dist/components/link.js +3 -2
  127. package/dist/components/link.js.map +1 -1
  128. package/dist/components/offer-card.js +1 -1
  129. package/dist/components/offer-card.js.map +1 -1
  130. package/dist/components/packaging-select.d.ts.map +1 -1
  131. package/dist/components/packaging-select.js +2 -1
  132. package/dist/components/packaging-select.js.map +1 -1
  133. package/dist/components/picker-empty-guidance.js +1 -1
  134. package/dist/components/picker-empty-guidance.js.map +1 -1
  135. package/dist/components/preflight-verdict-sheet.js +2 -2
  136. package/dist/components/preflight-verdict-sheet.js.map +1 -1
  137. package/dist/components/price-range-picker.js +1 -1
  138. package/dist/components/price-range-picker.js.map +1 -1
  139. package/dist/components/procurement-channel-select.d.ts.map +1 -1
  140. package/dist/components/procurement-channel-select.js +2 -1
  141. package/dist/components/procurement-channel-select.js.map +1 -1
  142. package/dist/components/product-card.js +1 -1
  143. package/dist/components/product-card.js.map +1 -1
  144. package/dist/components/product-picker-drawer.js +4 -4
  145. package/dist/components/product-picker-drawer.js.map +1 -1
  146. package/dist/components/radio.js +1 -1
  147. package/dist/components/radio.js.map +1 -1
  148. package/dist/components/region-select.d.ts.map +1 -1
  149. package/dist/components/region-select.js +2 -1
  150. package/dist/components/region-select.js.map +1 -1
  151. package/dist/components/scroll-area.js +1 -1
  152. package/dist/components/shadcn-badge.js +2 -2
  153. package/dist/components/shadcn-badge.js.map +1 -1
  154. package/dist/components/shadcn-button.d.ts.map +1 -1
  155. package/dist/components/shadcn-button.js +2 -2
  156. package/dist/components/shadcn-button.js.map +1 -1
  157. package/dist/components/shadcn-input.js +1 -1
  158. package/dist/components/shadcn-input.js.map +1 -1
  159. package/dist/components/shadcn-select.d.ts +1 -1
  160. package/dist/components/shadcn-select.d.ts.map +1 -1
  161. package/dist/components/shadcn-select.js +9 -2
  162. package/dist/components/shadcn-select.js.map +1 -1
  163. package/dist/components/shadcn-textarea.js +1 -1
  164. package/dist/components/shadcn-textarea.js.map +1 -1
  165. package/dist/components/source-composite.js +1 -1
  166. package/dist/components/source-composite.js.map +1 -1
  167. package/dist/components/source-drawer.js +1 -1
  168. package/dist/components/source-drawer.js.map +1 -1
  169. package/dist/components/supporting-pane-layout.d.ts +6 -1
  170. package/dist/components/supporting-pane-layout.d.ts.map +1 -1
  171. package/dist/components/supporting-pane-layout.js +65 -12
  172. package/dist/components/supporting-pane-layout.js.map +1 -1
  173. package/dist/components/switch.d.ts +12 -0
  174. package/dist/components/switch.d.ts.map +1 -1
  175. package/dist/components/switch.js +35 -19
  176. package/dist/components/switch.js.map +1 -1
  177. package/dist/components/table.js +1 -1
  178. package/dist/components/table.js.map +1 -1
  179. package/dist/components/tabs.js +1 -1
  180. package/dist/components/text.js +1 -1
  181. package/dist/components/text.js.map +1 -1
  182. package/dist/components/toast.js +1 -1
  183. package/dist/components/toast.js.map +1 -1
  184. package/dist/components/variant-picker-dialog.js +6 -6
  185. package/dist/components/variant-picker-dialog.js.map +1 -1
  186. package/dist/components/variant-picker-hero.js +1 -1
  187. package/dist/components/variant-picker-hero.js.map +1 -1
  188. package/dist/components/year-picker.js +1 -1
  189. package/dist/components/year-picker.js.map +1 -1
  190. package/dist/fic-label/ingredient-input.js +1 -1
  191. package/dist/fic-label/ingredient-input.js.map +1 -1
  192. package/dist/globe/globe-view.js +1 -1
  193. package/dist/globe/globe-view.js.map +1 -1
  194. package/dist/image-upload/focal-point-picker.js +1 -1
  195. package/dist/image-upload/focal-point-picker.js.map +1 -1
  196. package/dist/index.d.ts +1 -1
  197. package/dist/index.d.ts.map +1 -1
  198. package/dist/index.js.map +1 -1
  199. package/dist/insight-band/next-best-action-card.js +1 -1
  200. package/dist/insight-band/next-best-action-card.js.map +1 -1
  201. package/dist/lib/reveal-truncated-select-value.d.ts +8 -0
  202. package/dist/lib/reveal-truncated-select-value.d.ts.map +1 -0
  203. package/dist/lib/reveal-truncated-select-value.js +16 -0
  204. package/dist/lib/reveal-truncated-select-value.js.map +1 -0
  205. package/dist/marketing/pricing-table.js +1 -1
  206. package/dist/marketing/qr/qr-customizer-controls.js +1 -1
  207. package/dist/marketing/qr/qr-customizer-controls.js.map +1 -1
  208. package/dist/notifications/notification-tray.js +1 -1
  209. package/dist/notifications/notification-tray.js.map +1 -1
  210. package/dist/offer/attachments-card.js +1 -1
  211. package/dist/offer/attachments-card.js.map +1 -1
  212. package/dist/offer/index.d.ts +1 -1
  213. package/dist/offer/index.d.ts.map +1 -1
  214. package/dist/offer/index.js.map +1 -1
  215. package/dist/offer/negotiation-flow-timeline.js +1 -1
  216. package/dist/offer/negotiation-flow-timeline.js.map +1 -1
  217. package/dist/offer/negotiation-labels.d.ts +12 -0
  218. package/dist/offer/negotiation-labels.d.ts.map +1 -1
  219. package/dist/offer/negotiation-labels.js +17 -3
  220. package/dist/offer/negotiation-labels.js.map +1 -1
  221. package/dist/offer/offer-branch-shared.d.ts +1 -1
  222. package/dist/offer/offer-branch-shared.js +1 -1
  223. package/dist/offer/offer-evaluation-sections.js +1 -1
  224. package/dist/offer/offer-page.d.ts +62 -2
  225. package/dist/offer/offer-page.d.ts.map +1 -1
  226. package/dist/offer/offer-page.js +158 -14
  227. package/dist/offer/offer-page.js.map +1 -1
  228. package/dist/offer/parties-card.d.ts.map +1 -1
  229. package/dist/offer/parties-card.js +1 -1
  230. package/dist/offer/parties-card.js.map +1 -1
  231. package/dist/offer/reviews-summary.js +1 -1
  232. package/dist/offer/reviews-summary.js.map +1 -1
  233. package/dist/offer/sticky-scroll-padding.d.ts +4 -0
  234. package/dist/offer/sticky-scroll-padding.d.ts.map +1 -0
  235. package/dist/offer/sticky-scroll-padding.js +54 -0
  236. package/dist/offer/sticky-scroll-padding.js.map +1 -0
  237. package/dist/offer/timeline-event.d.ts.map +1 -1
  238. package/dist/offer/timeline-event.js +5 -3
  239. package/dist/offer/timeline-event.js.map +1 -1
  240. package/dist/opportunities/opportunity-detail-header.js +1 -1
  241. package/dist/opportunities/opportunity-detail-header.js.map +1 -1
  242. package/dist/opportunities/opportunity-detail-panel.js +1 -1
  243. package/dist/opportunities/opportunity-detail-panel.js.map +1 -1
  244. package/dist/opportunities/opportunity-filter-bar.js +1 -1
  245. package/dist/opportunities/opportunity-filter-bar.js.map +1 -1
  246. package/dist/opportunities/opportunity-stacked-card.js +2 -2
  247. package/dist/opportunities/opportunity-stacked-card.js.map +1 -1
  248. package/dist/opportunities/wizard/allowed-delivery-terms-section.js +1 -1
  249. package/dist/opportunities/wizard/allowed-delivery-terms-section.js.map +1 -1
  250. package/dist/opportunities/wizard/opportunity-wizard.js +2 -2
  251. package/dist/opportunities/wizard/opportunity-wizard.js.map +1 -1
  252. package/dist/opportunities/wizard/step-opportunities.js +14 -10
  253. package/dist/opportunities/wizard/step-opportunities.js.map +1 -1
  254. package/dist/opportunities/wizard/step-pricing-timeline.js +4 -4
  255. package/dist/opportunities/wizard/step-review.js +1 -1
  256. package/dist/opportunities/wizard/step-tender-basics.js +2 -2
  257. package/dist/opportunities/wizard/wizard-stepper.js +1 -1
  258. package/dist/opportunities/wizard/wizard-task-frame.js +1 -1
  259. package/dist/org/billing-address-source.js +2 -2
  260. package/dist/org/public-location-notice.js +2 -2
  261. package/dist/pdf-tool/live/pdf-label-layer.js +1 -1
  262. package/dist/pdf-tool/live/pdf-label-layer.js.map +1 -1
  263. package/dist/portfolio/portfolio-folder-card.js +1 -1
  264. package/dist/portfolio/portfolio-folder-card.js.map +1 -1
  265. package/dist/portfolio-import/beverage-comparison-modal.js +5 -5
  266. package/dist/portfolio-import/beverage-comparison-modal.js.map +1 -1
  267. package/dist/portfolio-import/bottle-photos-status.js +1 -1
  268. package/dist/portfolio-import/bottle-photos-status.js.map +1 -1
  269. package/dist/portfolio-import/import-job-detail-view.js +1 -1
  270. package/dist/portfolio-import/import-job-detail-view.js.map +1 -1
  271. package/dist/portfolio-import/product-gallery.js +1 -1
  272. package/dist/portfolio-import/product-gallery.js.map +1 -1
  273. package/dist/product-editor/product-editor-surface.js +1 -1
  274. package/dist/product-editor/product-editor-surface.js.map +1 -1
  275. package/dist/product-editor/tabs/product-status-tab.js +1 -1
  276. package/dist/product-editor/tabs/product-status-tab.js.map +1 -1
  277. package/dist/product-editor/tabs/resources/awards-panel.js +2 -2
  278. package/dist/product-editor/tabs/resources/awards-panel.js.map +1 -1
  279. package/dist/profile/business-details.js +1 -1
  280. package/dist/profile/business-details.js.map +1 -1
  281. package/dist/profile/product-detail-drawer.js +2 -2
  282. package/dist/profile/product-detail-drawer.js.map +1 -1
  283. package/package.json +1 -1
  284. package/src/theme/tokens.css +7 -1
@@ -57,7 +57,7 @@ export function StepOpportunities({ items, onChange, onValidityChange, focusItem
57
57
  if (items.length >= VIRTUALIZE_THRESHOLD) {
58
58
  return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Opportunities", description: "Define each product request inside this tender. Producers respond to opportunities individually.", aside: _jsx(OpportunityCount, { count: items.length }) }), _jsx(WizardDomainSection, { title: "Requested products", description: "Keep each request specific enough for producers to judge fit.", children: _jsx(VirtualizedList, { items: items, expandedSet: expandedSet, onToggle: toggle, onUpdateItem: updateItem, onRemoveItem: removeItem, onAddItem: addItem, focusItemIndex: focusItemIndex }) })] }));
59
59
  }
60
- return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Opportunities", description: "Define each product request inside this tender. Producers respond to opportunities individually.", aside: _jsx(OpportunityCount, { count: items.length }) }), _jsx(WizardDomainSection, { title: "Requested products", description: "Keep each request specific enough for producers to judge fit.", action: items.length >= 3 ? (_jsx("button", { type: "button", className: "min-h-11 rounded-md px-3 text-sm/5 font-medium text-muted-foreground underline decoration-border underline-offset-4 transition-colors duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", onClick: () => setExpandedSet(new Set(items.map((i) => i.clientId))), children: "Expand all" })) : undefined, children: _jsxs("div", { className: "flex flex-col gap-3", children: [items.map((it, index) => (_jsx(OpportunityCard, { itemIndex: index, opp: it, expanded: expandedSet.has(it.clientId) || index === focusItemIndex, onToggle: () => toggle(it.clientId), onUpdate: (p) => updateItem(it.clientId, p), onRemove: items.length > 1 ? () => removeItem(it.clientId) : undefined }, it.clientId))), _jsxs("button", { type: "button", onClick: addItem, className: "inline-flex min-h-11 items-center gap-2 self-start rounded-md border border-dashed border-border px-3 text-sm/5 font-medium text-muted-foreground transition-[color,background-color,border-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:border-foreground/30 hover:bg-muted hover:text-foreground active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: [_jsx(Plus, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), " Add opportunity"] })] }) })] }));
60
+ return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Opportunities", description: "Define each product request inside this tender. Producers respond to opportunities individually.", aside: _jsx(OpportunityCount, { count: items.length }) }), _jsx(WizardDomainSection, { title: "Requested products", description: "Keep each request specific enough for producers to judge fit.", action: items.length >= 3 ? (_jsx("button", { type: "button", className: "min-h-11 rounded-md px-3 text-sm/5 font-medium text-muted-foreground underline decoration-border underline-offset-4 transition-colors duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", onClick: () => setExpandedSet(new Set(items.map((i) => i.clientId))), children: "Expand all" })) : undefined, children: _jsxs("div", { className: "flex flex-col gap-3", children: [items.map((it, index) => (_jsx(OpportunityCard, { itemIndex: index, opp: it, expanded: expandedSet.has(it.clientId) || index === focusItemIndex, onToggle: () => toggle(it.clientId), onUpdate: (p) => updateItem(it.clientId, p), onRemove: items.length > 1 ? () => removeItem(it.clientId) : undefined }, it.clientId))), _jsxs("button", { type: "button", onClick: addItem, className: "inline-flex min-h-11 items-center gap-2 self-start rounded-md border border-dashed border-border px-3 text-sm/5 font-medium text-muted-foreground transition-[color,background-color,border-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:border-foreground/30 hover:bg-muted hover:text-foreground active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: [_jsx(Plus, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), " Add opportunity"] })] }) })] }));
61
61
  }
62
62
  function OpportunityCount({ count }) {
63
63
  return (_jsxs("span", { className: "inline-flex min-h-8 items-center rounded-full bg-muted px-3 text-sm/5 font-medium tabular-nums text-muted-foreground", children: [count, " ", count === 1 ? "opportunity" : "opportunities"] }));
@@ -101,7 +101,7 @@ function VirtualizedList(props) {
101
101
  right: 0,
102
102
  transform: `translateY(${row.start}px)`,
103
103
  }, children: _jsx(OpportunityCard, { itemIndex: row.index, opp: it, expanded: props.expandedSet.has(it.clientId) || row.index === props.focusItemIndex, onToggle: () => props.onToggle(it.clientId), onUpdate: (p) => props.onUpdateItem(it.clientId, p), onRemove: props.items.length > 1 ? () => props.onRemoveItem(it.clientId) : undefined }) }, it.clientId));
104
- }) }) }), _jsxs("button", { type: "button", onClick: props.onAddItem, className: "inline-flex min-h-11 items-center gap-2 self-start rounded-md border border-dashed border-border px-3 text-sm/5 font-medium text-muted-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: [_jsx(Plus, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), " Add opportunity"] })] }));
104
+ }) }) }), _jsxs("button", { type: "button", onClick: props.onAddItem, className: "inline-flex min-h-11 items-center gap-2 self-start rounded-md border border-dashed border-border px-3 text-sm/5 font-medium text-muted-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: [_jsx(Plus, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), " Add opportunity"] })] }));
105
105
  }
106
106
  function OpportunityCard({ itemIndex, opp, expanded, onToggle, onUpdate, onRemove, }) {
107
107
  const fieldId = React.useId();
@@ -136,7 +136,7 @@ function OpportunityCard({ itemIndex, opp, expanded, onToggle, onUpdate, onRemov
136
136
  subtype: keepSubtype,
137
137
  });
138
138
  };
139
- return (_jsxs("article", { "data-opportunity-index": itemIndex, className: "overflow-hidden rounded-xl border border-border bg-card", children: [_jsxs("div", { className: "flex min-h-16 items-center gap-2 px-4 sm:px-5", children: [_jsxs("button", { type: "button", onClick: onToggle, className: "min-w-0 flex-1 rounded-md py-3 text-left focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", "aria-expanded": expanded, children: [_jsx("div", { className: "truncate text-sm/5 font-semibold", children: opp.name?.trim() || `Opportunity ${itemIndex + 1}` }), _jsxs("div", { className: "mt-1 flex flex-wrap gap-x-2 gap-y-1 text-xs/4 text-muted-foreground", children: [_jsx("span", { children: categoryLabel }), _jsx("span", { "aria-hidden": true, children: "\u2022" }), _jsx("span", { children: originLabel }), _jsx("span", { "aria-hidden": true, children: "\u2022" }), _jsx("span", { children: quantityLabel })] })] }), onRemove ? (_jsx("button", { type: "button", onClick: onRemove, "aria-label": "Remove opportunity", className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-[var(--tone-danger-soft)] hover:text-[var(--tone-danger-fg)] active:scale-[0.97] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: _jsx(Trash2, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }) })) : null] }), expanded ? (_jsxs("div", { className: "flex flex-col gap-5 border-t border-border/70 px-4 py-5 sm:px-5", children: [_jsx("div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: _jsx(LabeledInput, { id: `${fieldId}-name`, fieldName: "name", label: "Name", value: opp.name ?? "", onChange: (v) => onUpdate({ name: v }), required: true, className: "md:col-span-2" }) }), _jsx(FieldGroup, { label: "Classification", children: _jsxs("div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: [_jsx(ClassificationSelect, { id: `${fieldId}-category`, fieldName: "category", label: "Category", placeholder: "Select category", options: CATEGORY_OPTIONS, value: opp.category ?? null, onChange: onChangeCategory }), _jsx(ClassificationSelect, { id: `${fieldId}-subtype`, fieldName: "subtype", label: "Subtype", placeholder: opp.category ? "Select subtype" : "Select a category first", options: getSubtypeOptions(opp.category), value: opp.subtype ?? null, onChange: (v) => onUpdate({ subtype: v ?? undefined }), disabled: !opp.category,
139
+ return (_jsxs("article", { "data-opportunity-index": itemIndex, className: "overflow-hidden rounded-xl border border-border bg-card", children: [_jsxs("div", { className: "flex min-h-16 items-center gap-2 px-4 sm:px-5", children: [_jsxs("button", { type: "button", onClick: onToggle, className: "min-w-0 flex-1 rounded-md py-3 text-left focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", "aria-expanded": expanded, children: [_jsx("div", { className: "truncate text-sm/5 font-semibold", children: opp.name?.trim() || `Opportunity ${itemIndex + 1}` }), _jsxs("div", { className: "mt-1 flex flex-wrap gap-x-2 gap-y-1 text-xs/4 text-muted-foreground", children: [_jsx("span", { children: categoryLabel }), _jsx("span", { "aria-hidden": true, children: "\u2022" }), _jsx("span", { children: originLabel }), _jsx("span", { "aria-hidden": true, children: "\u2022" }), _jsx("span", { children: quantityLabel })] })] }), onRemove ? (_jsx("button", { type: "button", onClick: onRemove, "aria-label": "Remove opportunity", className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-[var(--tone-danger-soft)] hover:text-[var(--tone-danger-fg)] active:scale-[0.97] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: _jsx(Trash2, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }) })) : null] }), expanded ? (_jsxs("div", { className: "flex flex-col gap-5 border-t border-border/70 px-4 py-5 sm:px-5", children: [_jsx("div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: _jsx(LabeledInput, { id: `${fieldId}-name`, fieldName: "name", label: "Name", value: opp.name ?? "", onChange: (v) => onUpdate({ name: v }), required: true, className: "md:col-span-2" }) }), _jsx(FieldGroup, { label: "Classification", children: _jsxs("div", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: [_jsx(ClassificationSelect, { id: `${fieldId}-category`, fieldName: "category", label: "Category", placeholder: "Select category", options: CATEGORY_OPTIONS, value: opp.category ?? null, onChange: onChangeCategory }), _jsx(ClassificationSelect, { id: `${fieldId}-subtype`, fieldName: "subtype", label: "Subtype", placeholder: opp.category ? "Select subtype" : "Select a category first", options: getSubtypeOptions(opp.category), value: opp.subtype ?? null, onChange: (v) => onUpdate({ subtype: v ?? undefined }), disabled: !opp.category,
140
140
  // CEL-2105 — the backend stores classification as a
141
141
  // {category, subtype} pair, so a category on its own is not
142
142
  // saved to the draft. Say so instead of dropping it silently.
@@ -156,7 +156,11 @@ function OpportunityCard({ itemIndex, opp, expanded, onToggle, onUpdate, onRemov
156
156
  * producer offer form's quiet section rhythm).
157
157
  */
158
158
  function FieldGroup({ label, children }) {
159
- return (_jsxs("fieldset", { className: "flex flex-col gap-3 border-t border-border/60 pt-4 first:border-t-0 first:pt-0", children: [_jsx("legend", { className: "text-eyebrow-xs text-muted-foreground", children: label }), children] }));
159
+ return (
160
+ // CEL-2128 — a <fieldset> defaults to `min-width: min-content`, so any
161
+ // non-shrinking descendant widens the whole group (every field, not just the
162
+ // offender) past the card. `min-w-0` lets it shrink to its container.
163
+ _jsxs("fieldset", { className: "flex min-w-0 flex-col gap-3 border-t border-border/60 pt-4 first:border-t-0 first:pt-0", children: [_jsx("legend", { className: "text-eyebrow-xs text-muted-foreground", children: label }), children] }));
160
164
  }
161
165
  /**
162
166
  * Category / subtype picker built on `<AnimatedShadcnSelect>`. Mirrors the
@@ -188,11 +192,11 @@ function LabeledInput({ id, fieldName, label, value, onChange, type = "text", re
188
192
  return (_jsxs("div", { "data-wizard-field": fieldName, className: cn("flex flex-col gap-1.5", className), children: [_jsxs("label", { htmlFor: id, className: "text-xs font-semibold text-foreground", children: [label, required ? _jsx("span", { className: "ml-0.5 text-destructive", children: "*" }) : null] }), _jsx("input", { id: id, type: type, value: internal, onChange: (e) => {
189
193
  setInternal(e.target.value);
190
194
  onChange(e.target.value);
191
- }, required: required, min: min, max: max, step: step, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" })] }));
195
+ }, required: required, min: min, max: max, step: step, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30" })] }));
192
196
  }
193
197
  /** Multi-line sibling of `<LabeledInput>` for longer free text (CEL-2090 `otherRequirements`, CEL-2102 `storageMethod`). */
194
198
  function LabeledTextarea({ id, fieldName, label, value, onChange, className, }) {
195
- return (_jsxs("div", { "data-wizard-field": fieldName, className: cn("flex flex-col gap-1.5", className), children: [_jsx("label", { htmlFor: id, className: "text-xs font-semibold text-foreground", children: label }), _jsx("textarea", { id: id, value: value, onChange: (e) => onChange(e.target.value), rows: 3, className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" })] }));
199
+ return (_jsxs("div", { "data-wizard-field": fieldName, className: cn("flex flex-col gap-1.5", className), children: [_jsx("label", { htmlFor: id, className: "text-xs font-semibold text-foreground", children: label }), _jsx("textarea", { id: id, value: value, onChange: (e) => onChange(e.target.value), rows: 3, className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30" })] }));
196
200
  }
197
201
  /**
198
202
  * Accepted vintage years (CEL-2090 `vintages`), entered as a comma-separated
@@ -211,7 +215,7 @@ function VintagesInput({ id, value, onChange, }) {
211
215
  prevValueRef.current = next;
212
216
  }
213
217
  }, [value]);
214
- return (_jsxs("div", { "data-wizard-field": "vintages", className: "flex flex-col gap-1.5", children: [_jsx("label", { htmlFor: id, className: "text-xs font-semibold text-foreground", children: "Vintages (e.g. \"2025, 2026\" or \"2025/2026\")" }), _jsx("input", { id: id, type: "text", inputMode: "numeric", placeholder: "e.g. 2025/2026", value: internal, onChange: (e) => {
218
+ return (_jsxs("div", { "data-wizard-field": "vintages", className: "flex flex-col gap-1.5", children: [_jsx("label", { htmlFor: id, className: "text-xs font-semibold text-foreground", children: "Vintages (e.g. \"2025, 2026\" or \"2025/2026\")" }), _jsx("input", { id: id, type: "text", title: internal, inputMode: "numeric", placeholder: "e.g. 2025/2026", value: internal, onChange: (e) => {
215
219
  const raw = e.target.value;
216
220
  setInternal(raw);
217
221
  // CEL-2090 review fixup — the RFQ source itself writes years
@@ -223,7 +227,7 @@ function VintagesInput({ id, value, onChange, }) {
223
227
  .map((part) => Number.parseInt(part.trim(), 10))
224
228
  .filter((year) => Number.isInteger(year) && year >= 1900 && year <= 2100);
225
229
  onChange(years.length > 0 ? years : undefined);
226
- }, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" }), value && value.length > 0 ? (_jsx("div", { className: "flex flex-wrap gap-1.5", "aria-label": "Parsed vintage years", children: value.map((year) => (_jsx("span", { className: "inline-flex h-6 items-center rounded-full bg-muted px-2 text-xs font-medium text-muted-foreground", children: year }, year))) })) : null] }));
230
+ }, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30" }), value && value.length > 0 ? (_jsx("div", { className: "flex flex-wrap gap-1.5", "aria-label": "Parsed vintage years", children: value.map((year) => (_jsx("span", { className: "inline-flex h-6 items-center rounded-full bg-muted px-2 text-xs font-medium text-muted-foreground", children: year }, year))) })) : null] }));
227
231
  }
228
232
  /** Repeatable grape/amount rows (CEL-2090 `grapeBlend`) — mirrors the opportunity list's own add/remove affordance. */
229
233
  function GrapeBlendEditor({ id, value, onChange, }) {
@@ -255,7 +259,7 @@ function GrapeBlendEditor({ id, value, onChange, }) {
255
259
  setRowIds((prev) => [...prev, crypto.randomUUID()]);
256
260
  onChange([...rows, { grape: "" }]);
257
261
  };
258
- return (_jsxs("fieldset", { id: id, "data-wizard-field": "grapeBlend", className: "mt-4 flex flex-col gap-2 border-0 p-0", children: [_jsx("legend", { className: "text-xs font-semibold text-foreground", children: "Grape blend" }), rows.map((row, index) => (_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("input", { type: "text", "aria-label": `Grape ${index + 1}`, placeholder: "Grape variety", value: row.grape, onChange: (e) => updateRow(index, { grape: e.target.value }), className: "h-11 w-full min-w-0 flex-1 rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" }), _jsx("input", { type: "text", "aria-label": `Amount for grape ${index + 1}`, placeholder: "Amount (e.g. 60%)", value: row.amount ?? "", onChange: (e) => updateRow(index, { amount: e.target.value || undefined }), className: "h-11 w-40 shrink-0 rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" }), _jsx("button", { type: "button", onClick: () => removeRow(index), "aria-label": `Remove grape ${index + 1}`, className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-[var(--tone-danger-soft)] hover:text-[var(--tone-danger-fg)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: _jsx(Trash2, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }) })] }, rowIds[index] ?? index))), _jsxs("button", { type: "button", onClick: addRow, className: "inline-flex min-h-9 items-center gap-1.5 self-start rounded-md border border-dashed border-border px-2.5 text-xs font-medium text-muted-foreground hover:border-foreground/30 hover:bg-muted hover:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: [_jsx(Plus, { "aria-hidden": true, className: "size-3.5", strokeWidth: 1.75 }), " Add grape"] })] }));
262
+ return (_jsxs("fieldset", { id: id, "data-wizard-field": "grapeBlend", className: "mt-4 flex min-w-0 flex-col gap-2 border-0 p-0", children: [_jsx("legend", { className: "text-xs font-semibold text-foreground", children: "Grape blend" }), rows.map((row, index) => (_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx("input", { type: "text", "aria-label": `Grape ${index + 1}`, placeholder: "Grape variety", value: row.grape, onChange: (e) => updateRow(index, { grape: e.target.value }), className: "h-11 w-full min-w-0 flex-1 basis-40 rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30" }), _jsx("input", { type: "text", "aria-label": `Amount for grape ${index + 1}`, placeholder: "Amount (e.g. 60%)", value: row.amount ?? "", onChange: (e) => updateRow(index, { amount: e.target.value || undefined }), className: "h-11 min-w-0 flex-1 basis-32 rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30 sm:w-40 sm:flex-none" }), _jsx("button", { type: "button", onClick: () => removeRow(index), "aria-label": `Remove grape ${index + 1}`, className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-[var(--tone-danger-soft)] hover:text-[var(--tone-danger-fg)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: _jsx(Trash2, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }) })] }, rowIds[index] ?? index))), _jsxs("button", { type: "button", onClick: addRow, className: "inline-flex min-h-9 items-center gap-1.5 self-start rounded-md border border-dashed border-border px-2.5 text-xs font-medium text-muted-foreground hover:border-foreground/30 hover:bg-muted hover:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: [_jsx(Plus, { "aria-hidden": true, className: "size-3.5", strokeWidth: 1.75 }), " Add grape"] })] }));
259
263
  }
260
264
  /** Organic / Fairtrade / Sustainable toggles (CEL-2090 `certifications`), sourced from the shared beverage-utils registry so the ids/labels stay in lockstep with every other dashboard's certification chips. */
261
265
  function CertificationsField({ id, value, onChange, }) {
@@ -267,7 +271,7 @@ function CertificationsField({ id, value, onChange, }) {
267
271
  return (_jsx("div", { "data-wizard-field": "certifications", className: "flex flex-wrap gap-4", children: CERTIFICATION_TYPES.map((type) => {
268
272
  const { fallback } = certificationLabelKey(type);
269
273
  const checkboxId = `${id}-${type}`;
270
- return (_jsxs("label", { htmlFor: checkboxId, className: "inline-flex min-h-9 items-center gap-2 text-sm/5 text-foreground", children: [_jsx("input", { id: checkboxId, type: "checkbox", checked: value?.[type] ?? false, onChange: (e) => toggle(type, e.target.checked), className: "size-4 rounded-xs border-input accent-primary focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50" }), fallback] }, type));
274
+ return (_jsxs("label", { htmlFor: checkboxId, className: "inline-flex min-h-9 items-center gap-2 text-sm/5 text-foreground", children: [_jsx("input", { id: checkboxId, type: "checkbox", checked: value?.[type] ?? false, onChange: (e) => toggle(type, e.target.checked), className: "size-4 rounded-xs border-input accent-primary focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70" }), fallback] }, type));
271
275
  }) }));
272
276
  }
273
277
  //# sourceMappingURL=step-opportunities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"step-opportunities.js","sourceRoot":"","sources":["../../../src/opportunities/wizard/step-opportunities.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step-opportunities.js","sourceRoot":"","sources":["../../../src/opportunities/wizard/step-opportunities.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,GAGpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAc,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAEhB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAElE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/E,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,YAAY,GAAG,EAAE,CAAC;AAUxB,SAAS,kBAAkB;IACzB,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE;QAC7B,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,SAAS,GACc;IACvB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAClD,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAC5C,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,KAAgC,EAAE,EAAE;QACxE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;QAClC,QAAQ,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3B,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE;QACtC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC;QACzD,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE;YACtB,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACnB,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAE,EAAE;QAClC,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE;YACtB,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;;gBACnC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxF,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE9B,IAAI,KAAK,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;QACzC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,aAC5D,KAAC,eAAe,IACd,KAAK,EAAC,eAAe,EACrB,WAAW,EAAC,kGAAkG,EAC9G,KAAK,EAAE,KAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAI,GAChD,EACF,KAAC,mBAAmB,IAClB,KAAK,EAAC,oBAAoB,EAC1B,WAAW,EAAC,+DAA+D,YAE3E,KAAC,eAAe,IACd,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,UAAU,EACxB,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,OAAO,EAClB,cAAc,EAAE,cAAc,GAC9B,GACkB,IAClB,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,aAC5D,KAAC,eAAe,IACd,KAAK,EAAC,eAAe,EACrB,WAAW,EAAC,kGAAkG,EAC9G,KAAK,EAAE,KAAC,gBAAgB,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAI,GAChD,EACF,KAAC,mBAAmB,IAClB,KAAK,EAAC,oBAAoB,EAC1B,WAAW,EAAC,+DAA+D,EAC3E,MAAM,EACJ,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAClB,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,ySAAyS,EACnT,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,2BAG7D,CACV,CAAC,CAAC,CAAC,SAAS,YAGf,eAAK,SAAS,EAAC,qBAAqB,aACjC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,KAAC,eAAe,IAEd,SAAS,EAAE,KAAK,EAChB,GAAG,EAAE,EAAE,EACP,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK,cAAc,EAClE,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EACnC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAC3C,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IANjE,EAAE,CAAC,QAAQ,CAOhB,CACH,CAAC,EACF,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,8aAA8a,aAExb,KAAC,IAAI,yBAAa,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAE,IAAI,GAAI,wBACnD,IACL,GACc,IAClB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAE,KAAK,EAAqB;IACpD,OAAO,CACL,gBAAM,SAAS,EAAC,sHAAsH,aACnI,KAAK,OAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,IACjD,CACR,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KASxB;IACC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,CAAC,KAAY,EAAE,EAAE;QACf,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC;QACxC,IACE,UAAU,KAAK,SAAS;YACxB,UAAU,GAAG,CAAC;YACd,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;YAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC5B,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,CAAC,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC,EACD,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAC3C,CAAC;IACF,yJAAyJ;IACzJ,MAAM,cAAc,GAAG,cAAc,CAAC;QACpC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM;QACzB,gBAAgB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO;QACzC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CAClB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACzF,QAAQ,EAAE,CAAC;QACX,cAAc;KACf,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC;QACxC,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QAC3F,cAAc,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAE/D,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,KAAK,CAAC,SAAS,CAAC,aACxD,cAAK,GAAG,EAAE,SAAS,EAAE,SAAS,EAAC,4BAA4B,YACzD,cACE,KAAK,EAAE;wBACL,MAAM,EAAE,GAAG,cAAc,CAAC,YAAY,EAAE,IAAI;wBAC5C,QAAQ,EAAE,UAAU;qBACrB,YAEA,cAAc,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC5C,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAClC,OAAO,CACL,cAEE,KAAK,EAAE;gCACL,QAAQ,EAAE,UAAU;gCACpB,GAAG,EAAE,CAAC;gCACN,IAAI,EAAE,CAAC;gCACP,KAAK,EAAE,CAAC;gCACR,SAAS,EAAE,cAAc,GAAG,CAAC,KAAK,KAAK;6BACxC,YAED,KAAC,eAAe,IACd,SAAS,EAAE,GAAG,CAAC,KAAK,EACpB,GAAG,EAAE,EAAE,EACP,QAAQ,EACN,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,cAAc,EAE1E,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAC3C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EACnD,QAAQ,EACN,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,GAE5E,IApBG,EAAE,CAAC,QAAQ,CAqBZ,CACP,CAAC;oBACJ,CAAC,CAAC,GACE,GACF,EACN,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,SAAS,EAAC,+OAA+O,aAEzP,KAAC,IAAI,yBAAa,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAE,IAAI,GAAI,wBACnD,IACL,CACP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GAQT;IACC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ;QAChC,CAAC,CAAC,GAAG,CAAC,OAAO;YACX,CAAC,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YAC9E,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC;QACrC,CAAC,CAAC,wBAAwB,CAAC;IAC7B,MAAM,WAAW,GAAG,GAAG,CAAC,eAAe;QACrC,CAAC,CAAC,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,CAAC,eAAe,CAAC,EAAE,IAAI;YAC1F,GAAG,CAAC,eAAe,CAAC;QACtB,CAAC,CAAC,gBAAgB,CAAC;IACrB,qEAAqE;IACrE,mEAAmE;IACnE,2EAA2E;IAC3E,MAAM,aAAa,GACjB,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC;IAExF,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,MAAM,eAAe,GAAG,CAAC,IAAwB,EAAE,EAAE;QACnD,QAAQ,CAAC;YACP,eAAe,EAAE,IAAI,IAAI,SAAS;YAClC,MAAM,EAAE,SAAS;SAClB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,0EAA0E;IAC1E,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,CAAC,IAAmB,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,QAAQ,CAAC;YACP,QAAQ,EAAE,IAAI,IAAI,SAAS;YAC3B,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,6CAC0B,SAAS,EACjC,SAAS,EAAC,yDAAyD,aAEnE,eAAK,SAAS,EAAC,+CAA+C,aAC5D,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,uHAAuH,mBAClH,QAAQ,aAEvB,cAAK,SAAS,EAAC,kCAAkC,YAC9C,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,eAAe,SAAS,GAAG,CAAC,EAAE,GAC/C,EACN,eAAK,SAAS,EAAC,qEAAqE,aAClF,yBAAO,aAAa,GAAQ,EAC5B,yDAA0B,EAC1B,yBAAO,WAAW,GAAQ,EAC1B,yDAA0B,EAC1B,yBAAO,aAAa,GAAQ,IACxB,IACC,EACR,QAAQ,CAAC,CAAC,CAAC,CACV,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,gBACN,oBAAoB,EAC/B,SAAS,EAAC,+WAA+W,YAEzX,KAAC,MAAM,yBAAa,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAE,IAAI,GAAI,GACrD,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,EACL,QAAQ,CAAC,CAAC,CAAC,CACV,eAAK,SAAS,EAAC,iEAAiE,aAE9E,cAAK,SAAS,EAAC,uCAAuC,YACpD,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,OAAO,EACrB,SAAS,EAAC,MAAM,EAChB,KAAK,EAAC,MAAM,EACZ,KAAK,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,EACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EACtC,QAAQ,QACR,SAAS,EAAC,eAAe,GACzB,GACE,EAGN,KAAC,UAAU,IAAC,KAAK,EAAC,gBAAgB,YAChC,eAAK,SAAS,EAAC,uCAAuC,aACpD,KAAC,oBAAoB,IACnB,EAAE,EAAE,GAAG,OAAO,WAAW,EACzB,SAAS,EAAC,UAAU,EACpB,KAAK,EAAC,UAAU,EAChB,WAAW,EAAC,iBAAiB,EAC7B,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI,EAC3B,QAAQ,EAAE,gBAAgB,GAC1B,EACF,KAAC,oBAAoB,IACnB,EAAE,EAAE,GAAG,OAAO,UAAU,EACxB,SAAS,EAAC,SAAS,EACnB,KAAK,EAAC,SAAS,EACf,WAAW,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,yBAAyB,EACxE,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EACxC,KAAK,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI,EAC1B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EACtD,QAAQ,EAAE,CAAC,GAAG,CAAC,QAAQ;oCACvB,oDAAoD;oCACpD,4DAA4D;oCAC5D,8DAA8D;oCAC9D,IAAI,EACF,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,OAAO;wCAC1B,CAAC,CAAC,yFAAyF;wCAC3F,CAAC,CAAC,SAAS,GAEf,IACE,GACK,EAGb,KAAC,UAAU,IAAC,KAAK,EAAC,QAAQ,YACxB,eAAK,SAAS,EAAC,uCAAuC,aACpD,mCAAuB,iBAAiB,YACtC,KAAC,iBAAiB,IAChB,EAAE,EAAE,GAAG,OAAO,UAAU,EACxB,KAAK,EAAC,mBAAmB,EACzB,OAAO,EAAE,6BAA6B,EACtC,KAAK,EAAG,GAAG,CAAC,eAA2C,IAAI,IAAI,EAC/D,QAAQ,EAAE,eAAe;wCACzB,4DAA4D;wCAC5D,4DAA4D;wCAC5D,kDAAkD;wCAClD,6DAA6D;wCAC7D,yCAAyC;wCACzC,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAC9B,KAAC,iBAAiB,IAChB,KAAK,EAAE,MAAM,EACb,IAAI,EAAC,SAAS,EACd,OAAO,EAAE,sBAAsB,GAC/B,CACH,GACD,GACE,EACN,mCAAuB,QAAQ,YAC7B,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,SAAS,EACvB,KAAK,EAAC,mBAAmB,EACzB,WAAW,EAAE,GAAG,CAAC,eAAe,IAAI,IAAI,EACxC,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,EACzB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GACrD,GACE,IACF,GACK,EAGb,KAAC,UAAU,IAAC,KAAK,EAAC,QAAQ,YACxB,eAAK,SAAS,EAAC,uCAAuC,aACpD,mCAAuB,WAAW,YAChC,KAAC,eAAe,IACd,EAAE,EAAE,GAAG,OAAO,YAAY,EAC1B,KAAK,EAAC,WAAW,EACjB,KAAK,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI,EAC5B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GACxD,GACE,EACN,mCAAuB,SAAS,YAC9B,KAAC,aAAa,IACZ,EAAE,EAAE,GAAG,OAAO,UAAU,EACxB,KAAK,EAAC,SAAS,EACf,KAAK,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI,EAC1B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GACtD,GACE,EACN,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,SAAS,EACvB,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAC,mBAAmB,EACzB,IAAI,EAAC,QAAQ,EACb,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAChE,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,wBAAwB,EACtC,SAAS,EAAC,qBAAqB,EAC/B,KAAK,EAAC,2BAA2B,EACjC,IAAI,EAAC,QAAQ,EACb,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,GAAG,CAAC,mBAAmB,IAAI,EAAE,EACpC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAC7E,IACE,GACK,EAGb,MAAC,UAAU,IAAC,KAAK,EAAC,aAAa,aAC7B,eAAK,SAAS,EAAC,uCAAuC,aACpD,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,sBAAsB,EACpC,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAC,qBAAqB,EAC3B,KAAK,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE,EAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GAChE,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,wBAAwB,EACtC,SAAS,EAAC,qBAAqB,EAC/B,KAAK,EAAC,uBAAuB,EAC7B,KAAK,EAAE,GAAG,CAAC,mBAAmB,IAAI,EAAE,EACpC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GAClE,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,QAAQ,EACtB,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAC,uBAAuB,EAC7B,KAAK,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE,EAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GAChE,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,QAAQ,EACtB,SAAS,EAAC,OAAO,EACjB,KAAK,EAAC,OAAO,EACb,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,EACtB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GACpD,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,gBAAgB,EAC9B,SAAS,EAAC,cAAc,EACxB,KAAK,EAAC,eAAe,EACrB,KAAK,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,EAC7B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GAC3D,EACF,KAAC,aAAa,IACZ,EAAE,EAAE,GAAG,OAAO,WAAW,EACzB,KAAK,EAAE,GAAG,CAAC,QAAQ,EACnB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,GAC1C,EAGF,KAAC,eAAe,IACd,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAC/B,SAAS,EAAC,eAAe,EACzB,KAAK,EAAC,gBAAgB,EACtB,KAAK,EAAE,GAAG,CAAC,aAAa,IAAI,EAAE,EAC9B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EAC5D,SAAS,EAAC,eAAe,GACzB,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,cAAc,EAC5B,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAC,iBAAiB,EACvB,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE,EAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAC3E,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,cAAc,EAC5B,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAC,iBAAiB,EACvB,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE,EAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAC3E,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,YAAY,EAC1B,SAAS,EAAC,kBAAkB,EAC5B,KAAK,EAAC,0BAA0B,EAChC,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,EACjC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAC1E,EACF,KAAC,YAAY,IACX,EAAE,EAAE,GAAG,OAAO,YAAY,EAC1B,SAAS,EAAC,kBAAkB,EAC5B,KAAK,EAAC,0BAA0B,EAChC,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,EACjC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,GAC1E,IACE,EACN,KAAC,gBAAgB,IACf,EAAE,EAAE,GAAG,OAAO,cAAc,EAC5B,KAAK,EAAE,GAAG,CAAC,UAAU,EACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,GAC5C,IACS,EAGb,MAAC,UAAU,IAAC,KAAK,EAAC,gCAAgC,aAChD,KAAC,mBAAmB,IAClB,EAAE,EAAE,GAAG,OAAO,iBAAiB,EAC/B,KAAK,EAAE,GAAG,CAAC,cAAc,EACzB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,GAChD,EACF,KAAC,eAAe,IACd,EAAE,EAAE,GAAG,OAAO,qBAAqB,EACnC,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAC,kCAAkC,EACxC,KAAK,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE,EAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,GAChE,IACS,IACT,CACP,CAAC,CAAC,CAAC,IAAI,IACA,CACX,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAgD;IACnF,OAAO;IACL,uEAAuE;IACvE,6EAA6E;IAC7E,sEAAsE;IACtE,oBAAU,SAAS,EAAC,wFAAwF,aAC1G,iBAAQ,SAAS,EAAC,uCAAuC,YAAE,KAAK,GAAU,EACzE,QAAQ,IACA,CACZ,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,EAC5B,EAAE,EACF,SAAS,EACT,KAAK,EACL,WAAW,EACX,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAI,GAYL;IACC,MAAM,MAAM,GAAG,GAAG,EAAE,OAAO,CAAC;IAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,wEAAwE;IACxE,qEAAqE;IACrE,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IAE5D,OAAO,CACL,oCAAwB,SAAS,EAAE,SAAS,EAAC,uBAAuB,aAClE,gBAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,uCAAuC,YAClE,KAAK,GACA,EACR,MAAC,oBAAoB,IACnB,KAAK,EAAE,UAAU,EACjB,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EACtE,QAAQ,EAAE,QAAQ,aAElB,KAAC,2BAA2B,IAC1B,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,sBACG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAC,QAAQ,YAElB,KAAC,yBAAyB,IAAC,WAAW,EAAE,WAAW,YAChD,QAAQ,EAAE,KAAK,GACU,GACA,EAC9B,KAAC,2BAA2B,4BAAsB,OAAO,YACtD,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACpB,KAAC,yBAAyB,cACvB,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,KAAC,wBAAwB,IAAiB,KAAK,EAAE,GAAG,CAAC,KAAK,YACvD,GAAG,CAAC,KAAK,IADmB,GAAG,CAAC,KAAK,CAEb,CAC5B,CAAC,GACwB,CAC7B,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,yCAAyC,qCAA2B,CACpF,GAC2B,IACT,EACtB,IAAI,CAAC,CAAC,CAAC,CACN,YAAG,EAAE,EAAE,MAAM,EAAE,SAAS,EAAC,iCAAiC,YACvD,IAAI,GACH,CACL,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,EAAE,EACF,SAAS,EACT,KAAK,EACL,KAAK,EACL,QAAQ,EACR,IAAI,GAAG,MAAM,EACb,QAAQ,EACR,SAAS,EACT,GAAG,EACH,GAAG,EACH,IAAI,GAmBL;IACC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAEpE,sEAAsE;IACtE,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IACvD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACjC,IAAI,IAAI,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YAClC,0HAA0H;YAC1H,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,CACL,oCAAwB,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,SAAS,CAAC,aAClF,iBAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,uCAAuC,aAClE,KAAK,EACL,QAAQ,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,yBAAyB,kBAAS,CAAC,CAAC,CAAC,IAAI,IAC/D,EACR,gBACE,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5B,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC,EACD,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,8RAA8R,GACxS,IACE,CACP,CAAC;AACJ,CAAC;AAED,4HAA4H;AAC5H,SAAS,eAAe,CAAC,EACvB,EAAE,EACF,SAAS,EACT,KAAK,EACL,KAAK,EACL,QAAQ,EACR,SAAS,GAQV;IACC,OAAO,CACL,oCAAwB,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,SAAS,CAAC,aAClF,gBAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,uCAAuC,YAClE,KAAK,GACA,EACR,mBACE,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACzC,IAAI,EAAE,CAAC,EACP,SAAS,EAAC,2RAA2R,GACrS,IACE,CACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,EACrB,EAAE,EACF,KAAK,EACL,QAAQ,GAKT;IACC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YAClC,0HAA0H;YAC1H,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,CACL,oCAAuB,UAAU,EAAC,SAAS,EAAC,uBAAuB,aACjE,gBAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,uCAAuC,gEAE7D,EACR,gBACE,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,QAAQ,EACf,SAAS,EAAC,SAAS,EACnB,WAAW,EAAC,gBAAgB,EAC5B,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC3B,WAAW,CAAC,GAAG,CAAC,CAAC;oBACjB,6DAA6D;oBAC7D,qDAAqD;oBACrD,+DAA+D;oBAC/D,+CAA+C;oBAC/C,MAAM,KAAK,GAAG,GAAG;yBACd,KAAK,CAAC,SAAS,CAAC;yBAChB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;yBAC/C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC;oBAC5E,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACjD,CAAC,EACD,SAAS,EAAC,8RAA8R,GACxS,EACD,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC3B,cAAK,SAAS,EAAC,wBAAwB,gBAAY,sBAAsB,YACtE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,eAEE,SAAS,EAAC,mGAAmG,YAE5G,IAAI,IAHA,IAAI,CAIJ,CACR,CAAC,GACE,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC;AAID,uHAAuH;AACvH,SAAS,gBAAgB,CAAC,EACxB,EAAE,EACF,KAAK,EACL,QAAQ,GAKT;IACC,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;IAEzB,2EAA2E;IAC3E,sEAAsE;IACtE,uEAAuE;IACvE,qEAAqE;IACrE,2EAA2E;IAC3E,oEAAoE;IACpE,mEAAmE;IACnE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAW,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAChG,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,gKAAgK;QAChK,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;YACvB,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAC5F,CAAC,CAAC,IAAI,CACT,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAElB,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,KAA+B,EAAE,EAAE;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9E,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;QAChD,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;QACxD,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACpD,QAAQ,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO,CACL,oBACE,EAAE,EAAE,EAAE,uBACY,YAAY,EAC9B,SAAS,EAAC,+CAA+C,aAEzD,iBAAQ,SAAS,EAAC,uCAAuC,4BAAqB,EAG7E,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,eAAkC,SAAS,EAAC,mCAAmC,aAC7E,gBACE,IAAI,EAAC,MAAM,gBACC,SAAS,KAAK,GAAG,CAAC,EAAE,EAChC,WAAW,EAAC,eAAe,EAC3B,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAC5D,SAAS,EAAC,yNAAyN,GACnO,EACF,gBACE,IAAI,EAAC,MAAM,gBACC,oBAAoB,KAAK,GAAG,CAAC,EAAE,EAC3C,WAAW,EAAC,mBAAmB,EAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,EACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,EAC1E,SAAS,EAAC,uOAAuO,GACjP,EACF,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,gBACnB,gBAAgB,KAAK,GAAG,CAAC,EAAE,EACvC,SAAS,EAAC,8OAA8O,YAExP,KAAC,MAAM,yBAAa,SAAS,EAAC,QAAQ,EAAC,WAAW,EAAE,IAAI,GAAI,GACrD,KAxBD,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAyB1B,CACP,CAAC,EACF,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAC,iSAAiS,aAE3S,KAAC,IAAI,yBAAa,SAAS,EAAC,UAAU,EAAC,WAAW,EAAE,IAAI,GAAI,kBACrD,IACA,CACZ,CAAC;AACJ,CAAC;AAID,kNAAkN;AAClN,SAAS,mBAAmB,CAAC,EAC3B,EAAE,EACF,KAAK,EACL,QAAQ,GAKT;IACC,MAAM,MAAM,GAAG,CAAC,IAAuB,EAAE,OAAgB,EAAE,EAAE;QAC3D,MAAM,IAAI,GAA8B,EAAE,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;QACtE,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,OAAO,CACL,mCAAuB,gBAAgB,EAAC,SAAS,EAAC,sBAAsB,YACrE,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;YACnC,OAAO,CACL,iBAEE,OAAO,EAAE,UAAU,EACnB,SAAS,EAAC,kEAAkE,aAE5E,gBACE,EAAE,EAAE,UAAU,EACd,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAC/C,SAAS,EAAC,4HAA4H,GACtI,EACD,QAAQ,KAXJ,IAAI,CAYH,CACT,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -55,10 +55,10 @@ export function StepPricingTimeline({ items, onChange, onValidityChange, initial
55
55
  if (items.length === 0) {
56
56
  return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Pricing", description: "Set accepted delivery terms, commercial ranges, and dates for each opportunity." }), allowedDeliveryTerms ? (_jsx(WizardDomainSection, { title: "Delivery terms", children: _jsx(AllowedDeliveryTermsSection, { ...allowedDeliveryTerms, className: "border-0 p-0" }) })) : null, _jsx(WizardDomainSection, { title: "Opportunity pricing and dates", children: _jsx("div", { className: "rounded-lg bg-muted/50 px-4 py-5 text-sm/6 text-muted-foreground", children: "Add an opportunity in Step 2 before setting pricing." }) })] }));
57
57
  }
58
- return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Pricing", description: "Set accepted delivery terms, commercial ranges, and dates for each opportunity.", aside: _jsxs("span", { className: "inline-flex min-h-8 items-center rounded-full bg-muted px-3 text-sm/5 font-medium tabular-nums text-muted-foreground", children: [items.length, " ", items.length === 1 ? "opportunity" : "opportunities"] }) }), allowedDeliveryTerms ? (_jsx(WizardDomainSection, { title: "Delivery terms", children: _jsx(AllowedDeliveryTermsSection, { ...allowedDeliveryTerms, className: "border-0 p-0" }) })) : null, _jsxs(WizardDomainSection, { title: "Opportunity pricing and dates", description: "Required price ranges and submission dates are validated before publish.", action: items.length > 1 && !confirmFill ? (_jsx("button", { type: "button", onClick: () => setConfirmFill(true), className: "min-h-11 rounded-md border border-border bg-background px-3 text-sm/5 font-medium transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: "Copy first opportunity" })) : undefined, children: [confirmFill ? (_jsxs("div", { role: "group", "aria-label": "Confirm copy pricing", className: "mb-5 flex flex-wrap items-center justify-between gap-3 rounded-lg bg-[var(--tone-warning-soft)] px-4 py-3 text-sm/5 text-[var(--tone-warning-fg)]", children: [_jsxs("p", { children: ["Replace pricing and dates for ", items.length - 1, " other", " ", items.length - 1 === 1 ? "opportunity" : "opportunities", "?"] }), _jsxs("div", { className: "flex gap-2", children: [_jsx("button", { type: "button", onClick: () => setConfirmFill(false), className: "min-h-11 rounded-md px-3 font-medium hover:bg-background/60 focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: "Cancel" }), _jsx("button", { type: "button", onClick: fillFromFirst, className: "min-h-11 rounded-md bg-[var(--tone-warning-solid)] px-3 font-medium text-[var(--tone-warning-solid-fg)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: "Apply values" })] })] })) : null, items.length === 1 ? (_jsx(PricingFields, { itemIndex: 0, opp: items[0], onUpdate: (p) => updateItem(items[0].clientId, p) }, items[0].clientId)) : (_jsxs(Tabs.Root, { value: activeId, onValueChange: setActiveId, activationMode: "manual", children: [_jsx(Tabs.List, { className: "flex gap-1 overflow-x-auto border-b border-border", "aria-label": "Opportunities pricing tabs", children: items.map((it, idx) => {
58
+ return (_jsxs("div", { className: cn("flex max-w-5xl flex-col gap-8", className), children: [_jsx(WizardStepIntro, { title: "Pricing", description: "Set accepted delivery terms, commercial ranges, and dates for each opportunity.", aside: _jsxs("span", { className: "inline-flex min-h-8 items-center rounded-full bg-muted px-3 text-sm/5 font-medium tabular-nums text-muted-foreground", children: [items.length, " ", items.length === 1 ? "opportunity" : "opportunities"] }) }), allowedDeliveryTerms ? (_jsx(WizardDomainSection, { title: "Delivery terms", children: _jsx(AllowedDeliveryTermsSection, { ...allowedDeliveryTerms, className: "border-0 p-0" }) })) : null, _jsxs(WizardDomainSection, { title: "Opportunity pricing and dates", description: "Required price ranges and submission dates are validated before publish.", action: items.length > 1 && !confirmFill ? (_jsx("button", { type: "button", onClick: () => setConfirmFill(true), className: "min-h-11 rounded-md border border-border bg-background px-3 text-sm/5 font-medium transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: "Copy first opportunity" })) : undefined, children: [confirmFill ? (_jsxs("div", { role: "group", "aria-label": "Confirm copy pricing", className: "mb-5 flex flex-wrap items-center justify-between gap-3 rounded-lg bg-[var(--tone-warning-soft)] px-4 py-3 text-sm/5 text-[var(--tone-warning-fg)]", children: [_jsxs("p", { children: ["Replace pricing and dates for ", items.length - 1, " other", " ", items.length - 1 === 1 ? "opportunity" : "opportunities", "?"] }), _jsxs("div", { className: "flex gap-2", children: [_jsx("button", { type: "button", onClick: () => setConfirmFill(false), className: "min-h-11 rounded-md px-3 font-medium hover:bg-background/60 focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: "Cancel" }), _jsx("button", { type: "button", onClick: fillFromFirst, className: "min-h-11 rounded-md bg-[var(--tone-warning-solid)] px-3 font-medium text-[var(--tone-warning-solid-fg)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: "Apply values" })] })] })) : null, items.length === 1 ? (_jsx(PricingFields, { itemIndex: 0, opp: items[0], onUpdate: (p) => updateItem(items[0].clientId, p) }, items[0].clientId)) : (_jsxs(Tabs.Root, { value: activeId, onValueChange: setActiveId, activationMode: "manual", children: [_jsx(Tabs.List, { className: "flex gap-1 overflow-x-auto border-b border-border", "aria-label": "Opportunities pricing tabs", children: items.map((it, idx) => {
59
59
  const complete = isComplete(it);
60
60
  const title = it.name?.trim() || `Opportunity ${idx + 1}`;
61
- return (_jsxs(Tabs.Trigger, { value: it.clientId, className: "inline-flex min-h-11 shrink-0 items-center gap-2 rounded-t-md px-3 text-sm/5 font-medium text-muted-foreground transition-colors duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:text-foreground data-[state=active]:bg-muted data-[state=active]:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: [_jsx("span", { "aria-hidden": true, className: cn("size-2 rounded-full", complete
61
+ return (_jsxs(Tabs.Trigger, { value: it.clientId, className: "inline-flex min-h-11 shrink-0 items-center gap-2 rounded-t-md px-3 text-sm/5 font-medium text-muted-foreground transition-colors duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:text-foreground data-[state=active]:bg-muted data-[state=active]:text-foreground focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: [_jsx("span", { "aria-hidden": true, className: cn("size-2 rounded-full", complete
62
62
  ? "bg-[var(--tone-success-solid)]"
63
63
  : "bg-[var(--tone-warning-solid)]") }), title] }, it.clientId));
64
64
  }) }), items.map((it, index) => (_jsx(Tabs.Content, { value: it.clientId, className: "pt-5", children: _jsx(PricingFields, { itemIndex: index, opp: it, onUpdate: (p) => updateItem(it.clientId, p) }, it.clientId) }, it.clientId)))] }))] })] }));
@@ -73,10 +73,10 @@ function PricingFields({ itemIndex, opp, onUpdate, }) {
73
73
  setLocal((prev) => ({ ...prev, ...patch }));
74
74
  onUpdate(patch);
75
75
  };
76
- const inputClass = "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30";
76
+ const inputClass = "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30";
77
77
  return (_jsxs("div", { "data-pricing-index": itemIndex, className: "flex flex-col gap-6", children: [_jsxs("fieldset", { className: "grid grid-cols-1 gap-4 md:grid-cols-2", children: [_jsx("legend", { className: "mb-4 text-sm/5 font-semibold text-foreground md:col-span-2", children: "Commercial range" }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Minimum price" }), _jsx("input", { "aria-label": "Price min", type: "number", min: "0", step: "0.01", value: merged.priceMin ?? "", onChange: (e) => update({ priceMin: e.target.value === "" ? undefined : Number(e.target.value) }), className: inputClass })] }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Maximum price" }), _jsx("input", { "aria-label": "Price max", type: "number", min: "0", step: "0.01", value: merged.priceMax ?? "", onChange: (e) => update({ priceMax: e.target.value === "" ? undefined : Number(e.target.value) }), className: inputClass }), merged.priceMin != null &&
78
78
  merged.priceMax != null &&
79
- merged.priceMin > merged.priceMax ? (_jsx("p", { className: "text-sm/5 text-[var(--tone-danger-fg)]", children: "Maximum price must be at least the minimum." })) : null] }), _jsx(CurrencySelect, { id: `pricing-${itemIndex}-currency`, label: "Currency", value: merged.currency ?? null, onChange: (next) => update({ currency: next ?? undefined }) }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Target margin" }), _jsx("input", { "aria-label": "Target margin", type: "number", min: "0", max: "1", step: "0.01", value: merged.targetMargin ?? "", onChange: (e) => update({ targetMargin: e.target.value === "" ? undefined : Number(e.target.value) }), className: inputClass }), _jsx("span", { className: "text-xs/4 text-muted-foreground", children: "Enter a decimal from 0 to 1." })] })] }), _jsxs("fieldset", { className: "grid grid-cols-1 gap-4 border-t border-border/70 pt-6 md:grid-cols-2", children: [_jsx("legend", { className: "mb-4 text-sm/5 font-semibold text-foreground md:col-span-2", children: "Distribution requirements" }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm md:col-span-2", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Distribution requirements (optional)" }), _jsx("textarea", { "aria-label": "Distribution requirements", rows: 3, value: merged.distributionRequirements ?? "", onChange: (e) => update({ distributionRequirements: e.target.value }), className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30" })] })] }), _jsxs("fieldset", { className: "grid grid-cols-1 gap-4 border-t border-border/70 pt-6 md:grid-cols-2", children: [_jsx("legend", { className: "mb-4 text-sm/5 font-semibold text-foreground md:col-span-2", children: "Timeline" }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsxs("span", { className: "text-sm/5 font-medium text-foreground", children: ["Submission deadline ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { "aria-label": "Submission deadline", type: "date", value: merged.submissionDeadline ? merged.submissionDeadline.toISOString().slice(0, 10) : "", onChange: (e) => update({ submissionDeadline: e.target.value ? new Date(e.target.value) : undefined }), className: inputClass })] }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Sample deadline (optional)" }), _jsx("input", { "aria-label": "Sample deadline", type: "date", value: merged.sampleDeadline ? merged.sampleDeadline.toISOString().slice(0, 10) : "", onChange: (e) => update({ sampleDeadline: e.target.value ? new Date(e.target.value) : undefined }), className: inputClass }), merged.sampleDeadline &&
79
+ merged.priceMin > merged.priceMax ? (_jsx("p", { className: "text-sm/5 text-[var(--tone-danger-fg)]", children: "Maximum price must be at least the minimum." })) : null] }), _jsx(CurrencySelect, { id: `pricing-${itemIndex}-currency`, label: "Currency", value: merged.currency ?? null, onChange: (next) => update({ currency: next ?? undefined }) }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Target margin" }), _jsx("input", { "aria-label": "Target margin", type: "number", min: "0", max: "1", step: "0.01", value: merged.targetMargin ?? "", onChange: (e) => update({ targetMargin: e.target.value === "" ? undefined : Number(e.target.value) }), className: inputClass }), _jsx("span", { className: "text-xs/4 text-muted-foreground", children: "Enter a decimal from 0 to 1." })] })] }), _jsxs("fieldset", { className: "grid grid-cols-1 gap-4 border-t border-border/70 pt-6 md:grid-cols-2", children: [_jsx("legend", { className: "mb-4 text-sm/5 font-semibold text-foreground md:col-span-2", children: "Distribution requirements" }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm md:col-span-2", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Distribution requirements (optional)" }), _jsx("textarea", { "aria-label": "Distribution requirements", rows: 3, value: merged.distributionRequirements ?? "", onChange: (e) => update({ distributionRequirements: e.target.value }), className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30" })] })] }), _jsxs("fieldset", { className: "grid grid-cols-1 gap-4 border-t border-border/70 pt-6 md:grid-cols-2", children: [_jsx("legend", { className: "mb-4 text-sm/5 font-semibold text-foreground md:col-span-2", children: "Timeline" }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsxs("span", { className: "text-sm/5 font-medium text-foreground", children: ["Submission deadline ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { "aria-label": "Submission deadline", type: "date", value: merged.submissionDeadline ? merged.submissionDeadline.toISOString().slice(0, 10) : "", onChange: (e) => update({ submissionDeadline: e.target.value ? new Date(e.target.value) : undefined }), className: inputClass })] }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Sample deadline (optional)" }), _jsx("input", { "aria-label": "Sample deadline", type: "date", value: merged.sampleDeadline ? merged.sampleDeadline.toISOString().slice(0, 10) : "", onChange: (e) => update({ sampleDeadline: e.target.value ? new Date(e.target.value) : undefined }), className: inputClass }), merged.sampleDeadline &&
80
80
  merged.submissionDeadline &&
81
81
  merged.sampleDeadline > merged.submissionDeadline ? (_jsx("p", { className: "text-sm/5 text-[var(--tone-danger-fg)]", children: "Sample deadline must be on or before the submission deadline." })) : null] }), _jsxs("label", { className: "flex flex-col gap-1.5 text-sm", children: [_jsx("span", { className: "text-sm/5 font-medium text-foreground", children: "Launch date (optional)" }), _jsx("input", { "aria-label": "Launch date", type: "date", value: merged.launchDate ? merged.launchDate.toISOString().slice(0, 10) : "", onChange: (e) => update({ launchDate: e.target.value ? new Date(e.target.value) : undefined }), className: inputClass }), merged.launchDate &&
82
82
  merged.submissionDeadline &&
@@ -76,7 +76,7 @@ function formatDeliveryTermFallback(id) {
76
76
  function EditButton({ label, step, onEditStep, }) {
77
77
  if (!onEditStep)
78
78
  return null;
79
- return (_jsxs("button", { type: "button", onClick: () => onEditStep(step), className: "inline-flex min-h-11 items-center gap-2 rounded-md px-3 text-sm/5 font-medium text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted hover:text-foreground active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: [_jsx(Pencil, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), "Edit ", _jsx("span", { className: "sr-only", children: label })] }));
79
+ return (_jsxs("button", { type: "button", onClick: () => onEditStep(step), className: "inline-flex min-h-11 items-center gap-2 rounded-md px-3 text-sm/5 font-medium text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted hover:text-foreground active:scale-[0.98] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: [_jsx(Pencil, { "aria-hidden": true, className: "size-4", strokeWidth: 1.75 }), "Edit ", _jsx("span", { className: "sr-only", children: label })] }));
80
80
  }
81
81
  export function StepReview({ tender, priceTypes, onEditStep, className }) {
82
82
  const opps = tender.opportunities ?? [];
@@ -45,9 +45,9 @@ export function StepTenderBasics({ initialValues, onChange, onValidityChange, cl
45
45
  React.useEffect(() => {
46
46
  onValidityChange?.(formState.isValid);
47
47
  }, [formState.isValid, onValidityChange]);
48
- return (_jsxs("form", { className: cn("flex max-w-3xl flex-col gap-8", className), onSubmit: (e) => e.preventDefault(), children: [_jsx(WizardStepIntro, { title: "Tender details", description: "Name this procurement round, choose its market, and give producers shared submission guidance." }), _jsx(WizardDomainSection, { title: "Identity and market", description: "These details identify this tender wherever producers encounter it.", children: _jsxs("div", { className: "grid grid-cols-1 gap-5 md:grid-cols-2", children: [_jsxs("div", { className: "flex flex-col gap-1.5 md:col-span-2", children: [_jsx("label", { htmlFor: "tender-name", className: "text-sm/5 font-medium text-foreground", children: "Tender name" }), _jsx("input", { id: "tender-name", type: "text", ...register("name"), "aria-invalid": !!formState.errors.name || undefined, "aria-describedby": formState.errors.name ? "tender-name-err" : undefined, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30", placeholder: "Example: Sweden spring 2027 procurement" }), formState.errors.name ? (_jsx("p", { id: "tender-name-err", className: "text-sm/5 text-[var(--tone-danger-fg)]", children: formState.errors.name.message })) : null] }), _jsx(Controller, { control: control, name: "targetCountry", render: ({ field }) => (_jsx(CountryCodeSelect, { id: "tender-country", label: "Target country", options: WIZARD_MARKET_COUNTRY_OPTIONS, value: field.value || null, onChange: (next) => {
48
+ return (_jsxs("form", { className: cn("flex max-w-3xl flex-col gap-8", className), onSubmit: (e) => e.preventDefault(), children: [_jsx(WizardStepIntro, { title: "Tender details", description: "Name this procurement round, choose its market, and give producers shared submission guidance." }), _jsx(WizardDomainSection, { title: "Identity and market", description: "These details identify this tender wherever producers encounter it.", children: _jsxs("div", { className: "grid grid-cols-1 gap-5 md:grid-cols-2", children: [_jsxs("div", { className: "flex flex-col gap-1.5 md:col-span-2", children: [_jsx("label", { htmlFor: "tender-name", className: "text-sm/5 font-medium text-foreground", children: "Tender name" }), _jsx("input", { id: "tender-name", type: "text", ...register("name"), "aria-invalid": !!formState.errors.name || undefined, "aria-describedby": formState.errors.name ? "tender-name-err" : undefined, className: "h-11 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30", placeholder: "Example: Sweden spring 2027 procurement" }), formState.errors.name ? (_jsx("p", { id: "tender-name-err", className: "text-sm/5 text-[var(--tone-danger-fg)]", children: formState.errors.name.message })) : null] }), _jsx(Controller, { control: control, name: "targetCountry", render: ({ field }) => (_jsx(CountryCodeSelect, { id: "tender-country", label: "Target country", options: WIZARD_MARKET_COUNTRY_OPTIONS, value: field.value || null, onChange: (next) => {
49
49
  field.onChange(next ?? "");
50
50
  void trigger("targetCountry");
51
- }, renderOrphanBanner: (orphan) => (_jsx(OrphanValueBanner, { value: orphan, kind: "country", options: COUNTRY_ORPHAN_OPTIONS })), error: formState.errors.targetCountry?.message, helperText: formState.errors.targetCountry ? undefined : "Market where producers will sell." })) })] }) }), _jsx(WizardDomainSection, { title: "Submission guidance", description: "Optional shared context for every opportunity in this tender.", children: _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("label", { htmlFor: "tender-instructions", className: "text-sm/5 font-medium text-foreground", children: "Instructions (optional)" }), _jsx("textarea", { id: "tender-instructions", rows: 6, ...register("instructions"), "aria-invalid": !!formState.errors.instructions || undefined, "aria-describedby": formState.errors.instructions ? "tender-instructions-err" : "tender-instructions-help", className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/30", placeholder: "Add submission expectations, contacts, or requirements shared across this tender." }), formState.errors.instructions ? (_jsx("p", { id: "tender-instructions-err", className: "text-sm/5 text-[var(--tone-danger-fg)]", children: formState.errors.instructions.message })) : (_jsx("p", { id: "tender-instructions-help", className: "text-xs/4 text-muted-foreground", children: "Up to 2,000 characters. Plain text." }))] }) })] }));
51
+ }, renderOrphanBanner: (orphan) => (_jsx(OrphanValueBanner, { value: orphan, kind: "country", options: COUNTRY_ORPHAN_OPTIONS })), error: formState.errors.targetCountry?.message, helperText: formState.errors.targetCountry ? undefined : "Market where producers will sell." })) })] }) }), _jsx(WizardDomainSection, { title: "Submission guidance", description: "Optional shared context for every opportunity in this tender.", children: _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("label", { htmlFor: "tender-instructions", className: "text-sm/5 font-medium text-foreground", children: "Instructions (optional)" }), _jsx("textarea", { id: "tender-instructions", rows: 6, ...register("instructions"), "aria-invalid": !!formState.errors.instructions || undefined, "aria-describedby": formState.errors.instructions ? "tender-instructions-err" : "tender-instructions-help", className: "w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm/6 shadow-xs outline-hidden transition-[color,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/70 dark:bg-input/30", placeholder: "Add submission expectations, contacts, or requirements shared across this tender." }), formState.errors.instructions ? (_jsx("p", { id: "tender-instructions-err", className: "text-sm/5 text-[var(--tone-danger-fg)]", children: formState.errors.instructions.message })) : (_jsx("p", { id: "tender-instructions-help", className: "text-xs/4 text-muted-foreground", children: "Up to 2,000 characters. Plain text." }))] }) })] }));
52
52
  }
53
53
  //# sourceMappingURL=step-tender-basics.js.map
@@ -24,7 +24,7 @@ function WizardStepperBase({ steps, currentIndex, completedIndexes, activeSubSta
24
24
  }, className: "h-full w-full bg-[color:var(--color-wizard-connector-done,var(--tone-success-solid))] transition-transform duration-[var(--duration-celebratory)] ease-[var(--ease-emphasized)] motion-reduce:transition-none" }) })) : null, _jsxs("div", { className: "relative flex min-w-0 flex-col items-center", children: [_jsxs("button", { type: "button", "aria-label": labelText, "aria-current": isActive ? "step" : undefined, "aria-disabled": isPending ? "true" : undefined, onClick: () => {
25
25
  if (isComplete)
26
26
  onJumpBack(i);
27
- }, className: cn("inline-flex min-h-11 min-w-11 max-w-full items-center justify-center gap-2 rounded-md px-2 text-sm/5 font-medium transition-[color,background-color,transform,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50 sm:px-3", isComplete &&
27
+ }, className: cn("inline-flex min-h-11 min-w-11 max-w-full items-center justify-center gap-2 rounded-md px-2 text-sm/5 font-medium transition-[color,background-color,transform,box-shadow] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70 sm:px-3", isComplete &&
28
28
  "cursor-pointer bg-[var(--tone-success-soft)] text-[var(--tone-success-fg)] hover:bg-[var(--tone-success-surface)] active:scale-[0.98]", isActive &&
29
29
  "bg-foreground text-background shadow-[var(--shadow-soft)] motion-safe:animate-[wizard-stepper-active-glow_1200ms_var(--ease-emphasized)_forwards]", isPending && "cursor-not-allowed bg-muted/60 text-muted-foreground"), "data-wizard-stepper-active": isActive || undefined, "data-wizard-stepper-complete": isComplete || undefined, children: [_jsx("span", { "aria-hidden": true, className: cn("inline-flex size-6 shrink-0 items-center justify-center rounded-full text-xs/4 tabular-nums", isComplete &&
30
30
  "bg-[var(--tone-success-solid)] text-[var(--tone-success-solid-fg)]", isActive && "bg-background/15 text-background", isPending && "bg-background text-muted-foreground"), children: isComplete ? (_jsx(Check, { "aria-hidden": true, "data-wizard-checkmark": true, className: "size-3.5" })) : (i + 1) }), _jsx("span", { className: "hidden min-w-0 truncate sm:block", children: step.label })] }, isActive ? "active" : "idle"), isActive && activeSubStatus ? (_jsx("span", { className: "mt-1 hidden text-xs/4 text-muted-foreground sm:block", children: activeSubStatus })) : null] })] }, step.id));
@@ -108,7 +108,7 @@ export function WizardTaskFrame({ title, currentStep, stepCount, onClose, childr
108
108
  // clear both bars — must be on the ROOT (`**:`, not just inside
109
109
  // `children`) so the stepper buttons, which render outside the
110
110
  // wizard body when tab order wraps, also clear the sticky header.
111
- "w-full bg-background text-foreground **:scroll-mt-28 **:scroll-mb-24", className), children: [_jsxs("header", { ref: headerRef, className: "sticky top-0 z-20 border-b border-border bg-background", children: [_jsxs("div", { className: "flex min-h-16 items-center gap-3 px-4 sm:px-6", children: [_jsx("button", { type: "button", onClick: onClose, "aria-label": "Close wizard", className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted hover:text-foreground active:scale-[0.97] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: _jsx(X, { "aria-hidden": true, className: "size-5", strokeWidth: 1.75 }) }), _jsx("span", { "aria-hidden": true, className: "h-6 w-px shrink-0 bg-border" }), _jsx("h1", { className: "min-w-0 flex-1 truncate font-display text-2xl/8 font-semibold tracking-tight", children: title }), _jsxs("p", { className: "shrink-0 text-sm/5 tabular-nums text-muted-foreground", children: ["Step ", currentStep, " of ", stepCount] })] }), _jsx("div", { role: "progressbar", "aria-label": "Wizard progress", "aria-valuemin": 1, "aria-valuemax": stepCount, "aria-valuenow": currentStep, className: "h-1 overflow-hidden bg-muted", children: _jsx("div", { style: { transform: `scaleX(${progress})`, transformOrigin: "left center" }, className: "h-full w-full bg-[var(--tone-success-solid)] transition-transform duration-[var(--duration-standard)] ease-[var(--ease-emphasized)] motion-reduce:transition-none" }) })] }), children, _jsx("footer", { ref: footerRef, className: "sticky bottom-0 z-20 border-t border-border bg-muted px-4 py-3 sm:px-6", children: footer })] }));
111
+ "w-full bg-background text-foreground **:scroll-mt-28 **:scroll-mb-24", className), children: [_jsxs("header", { ref: headerRef, className: "sticky top-0 z-20 border-b border-border bg-background", children: [_jsxs("div", { className: "flex min-h-16 items-center gap-3 px-4 sm:px-6", children: [_jsx("button", { type: "button", onClick: onClose, "aria-label": "Close wizard", className: "inline-flex size-11 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-[color,background-color,transform] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] hover:bg-muted hover:text-foreground active:scale-[0.97] focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: _jsx(X, { "aria-hidden": true, className: "size-5", strokeWidth: 1.75 }) }), _jsx("span", { "aria-hidden": true, className: "h-6 w-px shrink-0 bg-border" }), _jsx("h1", { className: "min-w-0 flex-1 truncate font-display text-2xl/8 font-semibold tracking-tight", children: title }), _jsxs("p", { className: "shrink-0 text-sm/5 tabular-nums text-muted-foreground", children: ["Step ", currentStep, " of ", stepCount] })] }), _jsx("div", { role: "progressbar", "aria-label": "Wizard progress", "aria-valuemin": 1, "aria-valuemax": stepCount, "aria-valuenow": currentStep, className: "h-1 overflow-hidden bg-muted", children: _jsx("div", { style: { transform: `scaleX(${progress})`, transformOrigin: "left center" }, className: "h-full w-full bg-[var(--tone-success-solid)] transition-transform duration-[var(--duration-standard)] ease-[var(--ease-emphasized)] motion-reduce:transition-none" }) })] }), children, _jsx("footer", { ref: footerRef, className: "sticky bottom-0 z-20 border-t border-border bg-muted px-4 py-3 sm:px-6", children: footer })] }));
112
112
  }
113
113
  export function WizardSaveStatusIndicator({ status }) {
114
114
  const Icon = status.kind === "pending"
@@ -5,7 +5,7 @@ import { cn } from "../lib/utils.js";
5
5
  import { BILLING_ADDRESS_SOURCES, defaultTranslate } from "./address-types.js";
6
6
  import { PostalAddressDisplay } from "./postal-address-display.js";
7
7
  import { PostalAddressFields } from "./postal-address-fields.js";
8
- const OPTION_BASE = "flex min-h-11 flex-1 items-center gap-2.5 rounded-xl border border-border bg-card px-3.5 py-2.5 text-left text-sm/5 font-medium text-foreground hover:bg-muted/50 focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50";
8
+ const OPTION_BASE = "flex min-h-11 flex-1 items-center gap-2.5 rounded-xl border border-border bg-card px-3.5 py-2.5 text-left text-sm/5 font-medium text-foreground hover:bg-muted/50 focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70";
9
9
  const OPTION_SELECTED = "border-primary bg-primary/5";
10
10
  function SourceOption({ selected, onSelect, onKeyDown, optionRef, tabIndex, disabled, label, }) {
11
11
  return (_jsxs("button", { type: "button", role: "radio", "aria-checked": selected, ref: optionRef, tabIndex: tabIndex, disabled: disabled, onClick: onSelect, onKeyDown: onKeyDown, className: cn(OPTION_BASE, selected && OPTION_SELECTED, disabled && "cursor-not-allowed opacity-70"), children: [_jsx("span", { "aria-hidden": "true", className: cn("grid size-4 shrink-0 place-items-center rounded-full border", selected ? "border-primary bg-primary text-primary-foreground" : "border-border"), children: selected ? _jsx(CheckIcon, { className: "size-3" }) : null }), label] }));
@@ -80,6 +80,6 @@ export function BillingAddressSourceControl({ billingAddressSource, billingAddre
80
80
  }, tabIndex: isCustom ? 0 : -1, disabled: disabled || isPending, label: t("org.billing.useCustom", "Use different billing address") })] }), sourceSaveStatus === "pending" ? (_jsx("p", { role: "status", className: "text-sm/5 text-muted-foreground", children: t("org.billing.sourceSaving", "Saving billing preference…") })) : null, sourceSaveStatus === "saved" ? (_jsx("p", { role: "status", className: "text-sm/5 text-[var(--tone-success-fg)]", children: t("org.billing.sourceSaved", "Billing preference saved") })) : null, sourceSaveStatus === "error" ? (_jsx("p", { role: "alert", className: "text-sm/5 text-[var(--tone-danger-fg)]", children: sourceSaveErrorMessage ??
81
81
  t("org.billing.sourceSaveError", "Couldn't save your billing preference. Try again.") })) : null, !isCustom ? (_jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("p", { className: "text-xs/5 text-muted-foreground", children: billingAddressStatus === "organisation"
82
82
  ? t("org.billing.effectiveIsOrganisation", "Same as your organisation address:")
83
- : t("org.billing.effectiveAddress", "Effective billing address:") }), _jsx(PostalAddressDisplay, { address: effectiveBillingAddress, countryOptions: countryOptions, t: t, emptyLabel: t("org.billing.noEffectiveAddress", "No billing address on file yet.") })] })) : editingCustomAddress ? (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsx(PostalAddressFields, { value: customAddressFormValue, onChange: onCustomAddressFormChange, countryOptions: countryOptions, idPrefix: `${idPrefix}-custom`, t: t, disabled: disabled, errors: customAddressErrors, saveStatus: customAddressSaveStatus, saveErrorMessage: customAddressSaveErrorMessage }), _jsxs("div", { className: "flex gap-2", children: [_jsx("button", { type: "button", onClick: onSaveCustomAddress, disabled: disabled || customAddressSaveStatus === "pending", className: "min-h-11 rounded-lg bg-primary px-3.5 py-2 text-sm/5 font-medium text-primary-foreground hover:bg-primary/90 disabled:cursor-not-allowed disabled:opacity-60", children: t("org.billing.saveCustomAddress", "Save billing address") }), _jsx("button", { type: "button", onClick: onCancelEditCustomAddress, disabled: disabled, className: "min-h-11 rounded-lg border border-border bg-background px-3.5 py-2 text-sm/5 font-medium text-foreground hover:bg-muted", children: t("org.billing.cancelEditCustomAddress", "Cancel") })] })] })) : billingAddressStatus === "incomplete" ? (_jsxs("div", { className: "flex flex-col items-start gap-2 rounded-xl border border-dashed border-border/70 bg-muted/20 p-4", children: [_jsx("p", { className: "text-sm/6 text-muted-foreground", children: t("org.billing.incomplete", "You chose a different billing address but haven't added one yet.") }), _jsx("button", { ref: editTriggerRef, type: "button", onClick: onStartEditCustomAddress, disabled: disabled, className: "min-h-11 rounded-lg bg-primary px-3.5 py-2 text-sm/5 font-medium text-primary-foreground hover:bg-primary/90", children: t("org.billing.addCustomAddress", "Add billing address") })] })) : (_jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx(PostalAddressDisplay, { address: effectiveBillingAddress, countryOptions: countryOptions, t: t }), _jsx("button", { ref: editTriggerRef, type: "button", onClick: onStartEditCustomAddress, disabled: disabled, className: "min-h-11 self-start rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: t("org.billing.editCustomAddress", "Edit address") })] }))] }));
83
+ : t("org.billing.effectiveAddress", "Effective billing address:") }), _jsx(PostalAddressDisplay, { address: effectiveBillingAddress, countryOptions: countryOptions, t: t, emptyLabel: t("org.billing.noEffectiveAddress", "No billing address on file yet.") })] })) : editingCustomAddress ? (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsx(PostalAddressFields, { value: customAddressFormValue, onChange: onCustomAddressFormChange, countryOptions: countryOptions, idPrefix: `${idPrefix}-custom`, t: t, disabled: disabled, errors: customAddressErrors, saveStatus: customAddressSaveStatus, saveErrorMessage: customAddressSaveErrorMessage }), _jsxs("div", { className: "flex gap-2", children: [_jsx("button", { type: "button", onClick: onSaveCustomAddress, disabled: disabled || customAddressSaveStatus === "pending", className: "min-h-11 rounded-lg bg-primary px-3.5 py-2 text-sm/5 font-medium text-primary-foreground hover:bg-primary/90 disabled:cursor-not-allowed disabled:opacity-60", children: t("org.billing.saveCustomAddress", "Save billing address") }), _jsx("button", { type: "button", onClick: onCancelEditCustomAddress, disabled: disabled, className: "min-h-11 rounded-lg border border-border bg-background px-3.5 py-2 text-sm/5 font-medium text-foreground hover:bg-muted", children: t("org.billing.cancelEditCustomAddress", "Cancel") })] })] })) : billingAddressStatus === "incomplete" ? (_jsxs("div", { className: "flex flex-col items-start gap-2 rounded-xl border border-dashed border-border/70 bg-muted/20 p-4", children: [_jsx("p", { className: "text-sm/6 text-muted-foreground", children: t("org.billing.incomplete", "You chose a different billing address but haven't added one yet.") }), _jsx("button", { ref: editTriggerRef, type: "button", onClick: onStartEditCustomAddress, disabled: disabled, className: "min-h-11 rounded-lg bg-primary px-3.5 py-2 text-sm/5 font-medium text-primary-foreground hover:bg-primary/90", children: t("org.billing.addCustomAddress", "Add billing address") })] })) : (_jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx(PostalAddressDisplay, { address: effectiveBillingAddress, countryOptions: countryOptions, t: t }), _jsx("button", { ref: editTriggerRef, type: "button", onClick: onStartEditCustomAddress, disabled: disabled, className: "min-h-11 self-start rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: t("org.billing.editCustomAddress", "Edit address") })] }))] }));
84
84
  }
85
85
  //# sourceMappingURL=billing-address-source.js.map
@@ -50,11 +50,11 @@ export function PublicLocationNotice({ publicLocation, postalCity, onUsePostalCi
50
50
  ? `flex items-start gap-3 rounded-xl border border-border bg-[var(--tone-info-soft)] p-4 ${className}`
51
51
  : "flex items-start gap-3 rounded-xl border border-border bg-[var(--tone-info-soft)] p-4", children: [_jsx(MapPinIcon, { className: "mt-0.5 size-5 shrink-0 text-[var(--tone-info-fg)]", "aria-hidden": "true" }), _jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-3", children: [cityMode ? (_jsxs("div", { children: [_jsx("p", { className: "text-sm/6 text-[var(--tone-info-fg)]", children: cityMode === "differs"
52
52
  ? t("org.address.publicLocationDiffers", `Your public profile shows "${publicLocation?.city ?? ""}" as your location, which differs from your postal address city.`, { city: publicLocation?.city ?? null })
53
- : t("org.address.publicLocationSuggested", `No public location is set yet. Use your postal address's city ("${cityActionValue ?? ""}") as your public location?`, { city: cityActionValue }) }), onUsePostalCity && cityActionValue ? (_jsx("button", { type: "button", onClick: () => onUsePostalCity(cityActionValue), className: "mt-2 min-h-11 rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: t("org.address.usePostalCity", `Use postal city ("${cityActionValue}")`, {
53
+ : t("org.address.publicLocationSuggested", `No public location is set yet. Use your postal address's city ("${cityActionValue ?? ""}") as your public location?`, { city: cityActionValue }) }), onUsePostalCity && cityActionValue ? (_jsx("button", { type: "button", onClick: () => onUsePostalCity(cityActionValue), className: "mt-2 min-h-11 rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: t("org.address.usePostalCity", `Use postal city ("${cityActionValue}")`, {
54
54
  city: cityActionValue,
55
55
  }) })) : null] })) : null, regionMode ? (_jsxs("div", { children: [_jsx("p", { className: "text-sm/6 text-[var(--tone-info-fg)]", children: regionMode === "differs"
56
56
  ? t("org.address.publicRegionDiffers", `Your public profile shows "${publicLocation?.region ?? ""}" as your region, which differs from your postal address region.`, { region: publicLocation?.region ?? null })
57
- : t("org.address.publicRegionSuggested", `No public region is set yet. Use your postal address's region ("${regionActionValue ?? ""}") as your public region?`, { region: regionActionValue }) }), onUsePostalRegion && regionActionValue ? (_jsx("button", { type: "button", onClick: () => onUsePostalRegion(regionActionValue), className: "mt-2 min-h-11 rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/50", children: t("org.address.usePostalRegion", `Use postal region ("${regionActionValue}")`, {
57
+ : t("org.address.publicRegionSuggested", `No public region is set yet. Use your postal address's region ("${regionActionValue ?? ""}") as your public region?`, { region: regionActionValue }) }), onUsePostalRegion && regionActionValue ? (_jsx("button", { type: "button", onClick: () => onUsePostalRegion(regionActionValue), className: "mt-2 min-h-11 rounded-lg border border-border bg-background px-3 py-1.5 text-sm/5 font-medium text-foreground hover:bg-muted focus-visible:outline-hidden focus-visible:ring-3 focus-visible:ring-ring/70", children: t("org.address.usePostalRegion", `Use postal region ("${regionActionValue}")`, {
58
58
  region: regionActionValue,
59
59
  }) })) : null] })) : null] })] }));
60
60
  }
@@ -35,7 +35,7 @@ export function PdfLabelLayer({ pageIndex, localUserId, onLabelClick, className,
35
35
  const width = `${(entry.width * 100).toFixed(2)}%`;
36
36
  const height = `${(entry.height * 100).toFixed(2)}%`;
37
37
  const tooltip = isMine ? `${entry.authorName} (you)` : `${entry.authorName}`;
38
- return (_jsxs("button", { type: "button", "data-slot": "pdf-label", "data-label-id": id, "data-self": isMine ? "true" : undefined, className: cn("absolute pointer-events-auto", "rounded-sm border-2 cursor-pointer", "bg-[color:var(--tone-brand-soft)]", "border-[color:var(--tone-brand-border)]", "hover:border-[color:var(--tone-brand-solid)]", "focus-visible:outline-2 focus-visible:outline-[color:var(--tone-brand-ring)]"), style: { left, top, width, height }, onClick: () => onLabelClick?.(id), "aria-label": `Label by ${tooltip}`, title: tooltip, children: [_jsx("span", { "data-slot": "pdf-label-badge", className: cn("absolute -top-5 left-0 inline-block max-w-[160px]", "rounded-sm px-1.5 py-0.5 truncate", "bg-[color:var(--tone-brand-solid)]", "text-xs font-medium", "text-[color:var(--tone-brand-solid-fg,white)]"), children: tooltip }), entry.text ? (_jsx("span", { "data-slot": "pdf-label-text", className: "sr-only", children: entry.text })) : null] }, id));
38
+ return (_jsxs("button", { type: "button", "data-slot": "pdf-label", "data-label-id": id, "data-self": isMine ? "true" : undefined, className: cn("absolute pointer-events-auto", "rounded-sm border-2 cursor-pointer", "bg-[color:var(--tone-brand-soft)]", "border-[color:var(--tone-brand-border)]", "hover:border-[color:var(--tone-brand-solid)]", "focus-visible:outline-2 focus-visible:outline-ring"), style: { left, top, width, height }, onClick: () => onLabelClick?.(id), "aria-label": `Label by ${tooltip}`, title: tooltip, children: [_jsx("span", { "data-slot": "pdf-label-badge", className: cn("absolute -top-5 left-0 inline-block max-w-[160px]", "rounded-sm px-1.5 py-0.5 truncate", "bg-[color:var(--tone-brand-solid)]", "text-xs font-medium", "text-[color:var(--tone-brand-solid-fg,white)]"), children: tooltip }), entry.text ? (_jsx("span", { "data-slot": "pdf-label-text", className: "sr-only", children: entry.text })) : null] }, id));
39
39
  }) }));
40
40
  }
41
41
  //# sourceMappingURL=pdf-label-layer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pdf-label-layer.js","sourceRoot":"","sources":["../../../src/pdf-tool/live/pdf-label-layer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pdf-label-layer.js","sourceRoot":"","sources":["../../../src/pdf-tool/live/pdf-label-layer.tsx"],"names":[],"mappings":"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"}
@@ -62,7 +62,7 @@ export function PortfolioFolderCard({ portfolio, href, onOpen, onAction, kebabSl
62
62
  const isLink = typeof href === "string" && href.length > 0;
63
63
  // Stretched primary action: covers the whole card via after:inset-0 at z-10;
64
64
  // the kebab layer sits at z-20 above it.
65
- const primaryActionClassName = "text-left outline-hidden after:absolute after:inset-0 after:z-10 after:rounded-[28px] focus-visible:after:outline-2 focus-visible:after:outline-offset-2 focus-visible:after:outline-[var(--ring)]";
65
+ const primaryActionClassName = "text-left outline-hidden after:absolute after:inset-0 after:z-10 after:rounded-[28px] focus-visible:after:outline-2 focus-visible:after:outline-offset-2 focus-visible:after:outline-ring";
66
66
  const title = isLink ? (_jsx("a", { href: href, className: primaryActionClassName, children: portfolio.name })) : typeof onOpen === "function" ? (_jsx("button", { type: "button", onClick: onOpen, className: primaryActionClassName, children: portfolio.name })) : (portfolio.name);
67
67
  const kebab = kebabSlot ??
68
68
  (onAction ? (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(CardActionsTrigger, { size: 32, className: "border border-white/20 bg-white/95 shadow-md backdrop-blur-md hover:bg-white", "aria-label": tt("folderCard.actionsLabel", "Portfolio actions") }) }), _jsxs(DropdownMenuContent, { align: "end", children: [_jsx(DropdownMenuItem, { onSelect: () => onAction("edit"), children: tt("folderCard.edit", "Edit details") }), _jsx(DropdownMenuItem, { onSelect: () => onAction(portfolio.isDefault ? "remove-default" : "set-default"), children: portfolio.isDefault
@@ -1 +1 @@
1
- {"version":3,"file":"portfolio-folder-card.js","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portfolio-folder-card.js","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"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"}
@@ -169,7 +169,7 @@ export function BeverageComparisonModal(props) {
169
169
  // Outer bezel — Soft Structuralism: airy shell with a diffused
170
170
  // ambient shadow and a hairline outer ring (semantic tokens
171
171
  // auto-swap light/dark, CEL-133).
172
- "rounded-[2rem] p-1.5", "bg-card/70 ring-1 ring-border/40", "shadow-[0_30px_80px_-20px_rgba(15,23,42,0.25),0_8px_24px_-12px_rgba(15,23,42,0.12)]", "dark:shadow-[0_30px_80px_-20px_rgba(0,0,0,0.7),0_8px_24px_-12px_rgba(0,0,0,0.45)]", "motion-safe:animate-[bcm-surface-in_700ms_cubic-bezier(0.32,0.72,0,1)_both]", "will-change-transform", className), children: _jsxs("div", { className: cn("relative flex min-h-0 flex-1 flex-col overflow-hidden", "rounded-[calc(2rem-0.375rem)] bg-card text-foreground", "ring-1 ring-border/30", "shadow-[inset_0_1px_1px_rgba(255,255,255,0.6)]", "dark:shadow-[inset_0_1px_1px_rgba(255,255,255,0.05)]"), children: [_jsx(Dialog.Close, { "aria-label": t("comparison.action.close"), disabled: loading, className: cn("group absolute right-5 top-5 z-10", "inline-flex size-9 items-center justify-center rounded-full", "bg-[var(--tone-neutral-soft)] text-muted-foreground ring-1 ring-inset ring-border/40", "transition-[transform,background-color] duration-300 ease-[cubic-bezier(0.32,0.72,0,1)]", "hover:bg-[var(--tone-neutral-surface-strong)] hover:text-foreground hover:scale-[1.04]", "active:scale-[0.96]", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-[var(--tone-success-ring)] focus-visible:ring-offset-2 focus-visible:ring-offset-card",
172
+ "rounded-[2rem] p-1.5", "bg-card/70 ring-1 ring-border/40", "shadow-[0_30px_80px_-20px_rgba(15,23,42,0.25),0_8px_24px_-12px_rgba(15,23,42,0.12)]", "dark:shadow-[0_30px_80px_-20px_rgba(0,0,0,0.7),0_8px_24px_-12px_rgba(0,0,0,0.45)]", "motion-safe:animate-[bcm-surface-in_700ms_cubic-bezier(0.32,0.72,0,1)_both]", "will-change-transform", className), children: _jsxs("div", { className: cn("relative flex min-h-0 flex-1 flex-col overflow-hidden", "rounded-[calc(2rem-0.375rem)] bg-card text-foreground", "ring-1 ring-border/30", "shadow-[inset_0_1px_1px_rgba(255,255,255,0.6)]", "dark:shadow-[inset_0_1px_1px_rgba(255,255,255,0.05)]"), children: [_jsx(Dialog.Close, { "aria-label": t("comparison.action.close"), disabled: loading, className: cn("group absolute right-5 top-5 z-10", "inline-flex size-9 items-center justify-center rounded-full", "bg-[var(--tone-neutral-soft)] text-muted-foreground ring-1 ring-inset ring-border/40", "transition-[transform,background-color] duration-300 ease-[cubic-bezier(0.32,0.72,0,1)]", "hover:bg-[var(--tone-neutral-surface-strong)] hover:text-foreground hover:scale-[1.04]", "active:scale-[0.96]", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-ring/70 focus-visible:ring-offset-2 focus-visible:ring-offset-card",
173
173
  // While a mutation is in flight, surface the disabled state
174
174
  // visually instead of silently dropping the click — keeps the
175
175
  // modal from feeling "broken" mid-merge.
@@ -190,7 +190,7 @@ export function BeverageComparisonModal(props) {
190
190
  })
191
191
  : t("comparison.section.all_match") }), hasBlocking && (_jsxs("span", { className: cn("inline-flex items-center gap-1.5 rounded-full px-2.5 py-1", "text-xs font-medium uppercase tracking-[0.18em]", "bg-[var(--tone-warning-soft)] text-[var(--tone-warning-fg)] ring-1 ring-inset ring-[var(--tone-warning-border)]/40"), children: [_jsx(AlertTriangle, { "aria-hidden": "true", className: "size-3 stroke-[1.6]" }), t("comparison.blocking_marker")] }))] }), hiddenFieldCount > 0 && rows.length > 0 && (_jsx("p", { className: "-mt-1 text-xs/4 text-muted-foreground", children: t("comparison.section.suppressed", {
192
192
  count: hiddenFieldCount,
193
- }) })), differingRows.length === 0 ? (_jsx("div", { className: cn("rounded-2xl p-4 text-sm", "bg-[var(--tone-success-soft)]/60 text-[var(--tone-success-fg)] ring-1 ring-inset ring-[var(--tone-success-border)]/30"), children: _jsxs("span", { className: "inline-flex items-center gap-2", children: [_jsx(CheckCircle2, { "aria-hidden": "true", className: "size-4 stroke-[1.6] text-[var(--tone-success-solid)]" }), t("comparison.section.empty_match_helper")] }) })) : (_jsx("ul", { className: "grid gap-2", children: differingRows.map((row, idx) => (_jsx(FieldDiffRow, { row: row, beverageAName: beverageA.name, beverageBName: beverageB.name, index: idx, t: t }, row.key))) })), matchingRows.length > 0 && (_jsxs("div", { className: "mt-1", children: [_jsxs("button", { type: "button", onClick: () => setShowIdentical((s) => !s), "aria-expanded": showIdentical, "aria-controls": liveRegionId, className: cn("group inline-flex items-center gap-1.5 rounded-full px-3 py-1.5", "text-xs font-medium text-muted-foreground", "ring-1 ring-inset ring-border/40", "transition-[background-color,color] duration-200", "hover:bg-[var(--tone-neutral-soft)] hover:text-foreground", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-[var(--tone-success-ring)] focus-visible:ring-offset-2 focus-visible:ring-offset-card"), children: [showIdentical ? (_jsx(ChevronUp, { "aria-hidden": "true", className: "size-3.5" })) : (_jsx(ChevronDown, { "aria-hidden": "true", className: "size-3.5" })), showIdentical
193
+ }) })), differingRows.length === 0 ? (_jsx("div", { className: cn("rounded-2xl p-4 text-sm", "bg-[var(--tone-success-soft)]/60 text-[var(--tone-success-fg)] ring-1 ring-inset ring-[var(--tone-success-border)]/30"), children: _jsxs("span", { className: "inline-flex items-center gap-2", children: [_jsx(CheckCircle2, { "aria-hidden": "true", className: "size-4 stroke-[1.6] text-[var(--tone-success-solid)]" }), t("comparison.section.empty_match_helper")] }) })) : (_jsx("ul", { className: "grid gap-2", children: differingRows.map((row, idx) => (_jsx(FieldDiffRow, { row: row, beverageAName: beverageA.name, beverageBName: beverageB.name, index: idx, t: t }, row.key))) })), matchingRows.length > 0 && (_jsxs("div", { className: "mt-1", children: [_jsxs("button", { type: "button", onClick: () => setShowIdentical((s) => !s), "aria-expanded": showIdentical, "aria-controls": liveRegionId, className: cn("group inline-flex items-center gap-1.5 rounded-full px-3 py-1.5", "text-xs font-medium text-muted-foreground", "ring-1 ring-inset ring-border/40", "transition-[background-color,color] duration-200", "hover:bg-[var(--tone-neutral-soft)] hover:text-foreground", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-ring/70 focus-visible:ring-offset-2 focus-visible:ring-offset-card"), children: [showIdentical ? (_jsx(ChevronUp, { "aria-hidden": "true", className: "size-3.5" })) : (_jsx(ChevronDown, { "aria-hidden": "true", className: "size-3.5" })), showIdentical
194
194
  ? t("comparison.matching_toggle.hide", {
195
195
  count: matchingRows.length,
196
196
  })
@@ -202,7 +202,7 @@ export function BeverageComparisonModal(props) {
202
202
  name: beverageA.name,
203
203
  }), variants: variantsA, t: t }), _jsx(VariantsCard, { title: t("comparison.variants.title", {
204
204
  name: beverageB.name,
205
- }), variants: variantsB, t: t })] }))] }), _jsx("div", { className: cn("shrink-0 border-t border-border/40 px-7 py-5 sm:px-10", "bg-linear-to-b from-card to-muted/40"), children: _jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between", children: [_jsx("button", { type: "button", disabled: loading, onClick: onDismiss, className: cn("inline-flex items-center justify-center rounded-full px-5 py-2.5", "text-sm font-semibold text-foreground", "ring-1 ring-inset ring-border/60", "transition-[transform,background-color,box-shadow] duration-200", "hover:bg-[var(--tone-neutral-soft)] hover:ring-border", "active:scale-[0.98]", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-[var(--tone-success-ring)] focus-visible:ring-offset-2 focus-visible:ring-offset-card", "disabled:cursor-not-allowed disabled:opacity-60"), children: t("comparison.action.dismiss") }), _jsxs("div", { className: "flex flex-col gap-2 sm:flex-row sm:items-center", children: [_jsx(KeepDetailsButton, { label: t("comparison.action.keep_from", {
205
+ }), variants: variantsB, t: t })] }))] }), _jsx("div", { className: cn("shrink-0 border-t border-border/40 px-7 py-5 sm:px-10", "bg-linear-to-b from-card to-muted/40"), children: _jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between", children: [_jsx("button", { type: "button", disabled: loading, onClick: onDismiss, className: cn("inline-flex items-center justify-center rounded-full px-5 py-2.5", "text-sm font-semibold text-foreground", "ring-1 ring-inset ring-border/60", "transition-[transform,background-color,box-shadow] duration-200", "hover:bg-[var(--tone-neutral-soft)] hover:ring-border", "active:scale-[0.98]", "focus:outline-hidden focus-visible:ring-2 focus-visible:ring-ring/70 focus-visible:ring-offset-2 focus-visible:ring-offset-card", "disabled:cursor-not-allowed disabled:opacity-60"), children: t("comparison.action.dismiss") }), _jsxs("div", { className: "flex flex-col gap-2 sm:flex-row sm:items-center", children: [_jsx(KeepDetailsButton, { label: t("comparison.action.keep_from", {
206
206
  name: beverageB.name,
207
207
  }), onClick: onKeepDetailsFromB, disabled: loading, variant: "secondary" }), _jsx(KeepDetailsButton, { label: t("comparison.action.keep_from", {
208
208
  name: beverageA.name,
@@ -264,12 +264,12 @@ function KeepDetailsButton({ label, onClick, disabled, variant }) {
264
264
  "bg-[var(--tone-success-solid)] text-[var(--tone-success-solid-fg)] ring-1 ring-[var(--tone-success-border)]/40",
265
265
  "shadow-[0_8px_20px_-8px_rgba(5,150,105,0.55)]",
266
266
  "hover:-translate-y-[1px] hover:bg-[var(--tone-success-solid)] hover:shadow-[0_14px_28px_-10px_rgba(5,150,105,0.65)]",
267
- "focus-visible:ring-[var(--tone-success-ring)]",
267
+ "focus-visible:ring-ring/70",
268
268
  ], !isPrimary && [
269
269
  "bg-card text-foreground ring-1 ring-inset ring-border/60",
270
270
  "shadow-[0_4px_12px_-6px_rgba(15,23,42,0.12)]",
271
271
  "hover:-translate-y-[1px] hover:bg-[var(--tone-neutral-soft)] hover:ring-border",
272
- "focus-visible:ring-[var(--tone-neutral-ring)]/60",
272
+ "focus-visible:ring-ring/70",
273
273
  ]), children: [_jsx("span", { className: "truncate max-w-[18ch] sm:max-w-none", children: label }), _jsx("span", { "aria-hidden": "true", className: cn("inline-flex size-6 shrink-0 items-center justify-center rounded-full", "transition-transform duration-300 ease-[cubic-bezier(0.32,0.72,0,1)]", "group-hover/keep:translate-x-0.5 group-hover/keep:-translate-y-[1px]", isPrimary
274
274
  ? "bg-white/15 ring-1 ring-inset ring-white/30"
275
275
  : "bg-[var(--tone-neutral-soft)] ring-1 ring-inset ring-border/40"), children: _jsx(ArrowRight, { className: "size-3.5 stroke-[1.8]" }) })] }));