@mj-biz-apps/orders-ng 5.38.0 → 5.40.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 (172) hide show
  1. package/dist/checkout-element/main.js +26 -7
  2. package/dist/lib/checkout-widget/checkout-public-host.component.d.ts +12 -1
  3. package/dist/lib/checkout-widget/checkout-public-host.component.d.ts.map +1 -1
  4. package/dist/lib/checkout-widget/checkout-public-host.component.js +25 -5
  5. package/dist/lib/checkout-widget/checkout-public-host.component.js.map +1 -1
  6. package/dist/lib/checkout-widget/checkout-widget.component.js +2 -2
  7. package/dist/lib/custom/EventOrderLine/event-order-line-form.component.js +2 -2
  8. package/dist/lib/custom/OrderHeader/order-header-form.component.d.ts +55 -1
  9. package/dist/lib/custom/OrderHeader/order-header-form.component.d.ts.map +1 -1
  10. package/dist/lib/custom/OrderHeader/order-header-form.component.js +593 -265
  11. package/dist/lib/custom/OrderHeader/order-header-form.component.js.map +1 -1
  12. package/dist/lib/custom/OrderHeader/order-line-details-panel.component.js +82 -72
  13. package/dist/lib/custom/OrderHeader/order-line-details-panel.component.js.map +1 -1
  14. package/dist/lib/custom/OrderHeader/order-lines-editor.component.d.ts +68 -0
  15. package/dist/lib/custom/OrderHeader/order-lines-editor.component.d.ts.map +1 -1
  16. package/dist/lib/custom/OrderHeader/order-lines-editor.component.js +411 -173
  17. package/dist/lib/custom/OrderHeader/order-lines-editor.component.js.map +1 -1
  18. package/dist/lib/custom/OrderHeader/order-payment-schedule.d.ts +29 -0
  19. package/dist/lib/custom/OrderHeader/order-payment-schedule.d.ts.map +1 -0
  20. package/dist/lib/custom/OrderHeader/order-payment-schedule.js +37 -0
  21. package/dist/lib/custom/OrderHeader/order-payment-schedule.js.map +1 -0
  22. package/dist/lib/custom/OrderHeader/party-address-picker.component.js +2 -2
  23. package/dist/lib/custom/PaymentHeader/payment-header-form.component.d.ts +33 -0
  24. package/dist/lib/custom/PaymentHeader/payment-header-form.component.d.ts.map +1 -1
  25. package/dist/lib/custom/PaymentHeader/payment-header-form.component.js +538 -346
  26. package/dist/lib/custom/PaymentHeader/payment-header-form.component.js.map +1 -1
  27. package/dist/lib/custom/Product/widgets/product-pricing-widget.component.d.ts.map +1 -1
  28. package/dist/lib/custom/Product/widgets/product-pricing-widget.component.js +90 -95
  29. package/dist/lib/custom/Product/widgets/product-pricing-widget.component.js.map +1 -1
  30. package/dist/lib/custom/custom-forms.module.d.ts +7 -6
  31. package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
  32. package/dist/lib/custom/custom-forms.module.js +8 -1
  33. package/dist/lib/custom/custom-forms.module.js.map +1 -1
  34. package/dist/lib/data/credit-statuses.d.ts +13 -0
  35. package/dist/lib/data/credit-statuses.d.ts.map +1 -0
  36. package/dist/lib/data/credit-statuses.js +13 -0
  37. package/dist/lib/data/credit-statuses.js.map +1 -0
  38. package/dist/lib/data/entity-names.d.ts +1 -0
  39. package/dist/lib/data/entity-names.d.ts.map +1 -1
  40. package/dist/lib/data/entity-names.js +1 -0
  41. package/dist/lib/data/entity-names.js.map +1 -1
  42. package/dist/lib/data/orders-queries.d.ts +24 -5
  43. package/dist/lib/data/orders-queries.d.ts.map +1 -1
  44. package/dist/lib/data/orders-queries.js +44 -7
  45. package/dist/lib/data/orders-queries.js.map +1 -1
  46. package/dist/lib/data/preset-view.d.ts +51 -0
  47. package/dist/lib/data/preset-view.d.ts.map +1 -0
  48. package/dist/lib/data/preset-view.js +56 -0
  49. package/dist/lib/data/preset-view.js.map +1 -0
  50. package/dist/lib/form-panels/catalog-overviews.panels.js +6 -6
  51. package/dist/lib/form-panels/charge-exception-order.panel.js +2 -2
  52. package/dist/lib/form-panels/commercial-overviews.panels.js +5 -5
  53. package/dist/lib/form-panels/document-forms.module.d.ts +1 -1
  54. package/dist/lib/form-panels/document-forms.module.d.ts.map +1 -1
  55. package/dist/lib/form-panels/document-forms.module.js +4 -1
  56. package/dist/lib/form-panels/document-forms.module.js.map +1 -1
  57. package/dist/lib/form-panels/document-hero.component.js +2 -2
  58. package/dist/lib/form-panels/document-overviews.panels.d.ts +8 -0
  59. package/dist/lib/form-panels/document-overviews.panels.d.ts.map +1 -1
  60. package/dist/lib/form-panels/document-overviews.panels.js +58 -23
  61. package/dist/lib/form-panels/document-overviews.panels.js.map +1 -1
  62. package/dist/lib/form-panels/external-invoices.panel.d.ts +42 -2
  63. package/dist/lib/form-panels/external-invoices.panel.d.ts.map +1 -1
  64. package/dist/lib/form-panels/external-invoices.panel.js +151 -77
  65. package/dist/lib/form-panels/external-invoices.panel.js.map +1 -1
  66. package/dist/lib/form-panels/lookup-headers.panels.js +10 -10
  67. package/dist/lib/form-panels/order-access-overrides.panel.js +36 -38
  68. package/dist/lib/form-panels/order-access-overrides.panel.js.map +1 -1
  69. package/dist/lib/form-panels/overview-cards.component.js +10 -13
  70. package/dist/lib/form-panels/overview-cards.component.js.map +1 -1
  71. package/dist/lib/form-panels/overview-load.d.ts +5 -1
  72. package/dist/lib/form-panels/overview-load.d.ts.map +1 -1
  73. package/dist/lib/form-panels/overview-load.js +6 -1
  74. package/dist/lib/form-panels/overview-load.js.map +1 -1
  75. package/dist/lib/form-panels/payment-header.panel.js +2 -2
  76. package/dist/lib/form-panels/payment-journals.panel.js +2 -2
  77. package/dist/lib/form-panels/price-list-header.panel.js +2 -2
  78. package/dist/lib/form-panels/product-header.panel.js +2 -2
  79. package/dist/lib/form-panels/promotion-header.panel.js +2 -2
  80. package/dist/lib/form-panels/subscription-cancel.component.d.ts +18 -3
  81. package/dist/lib/form-panels/subscription-cancel.component.d.ts.map +1 -1
  82. package/dist/lib/form-panels/subscription-cancel.component.js +148 -70
  83. package/dist/lib/form-panels/subscription-cancel.component.js.map +1 -1
  84. package/dist/lib/form-panels/subscription-header.panel.d.ts +3 -2
  85. package/dist/lib/form-panels/subscription-header.panel.d.ts.map +1 -1
  86. package/dist/lib/form-panels/subscription-header.panel.js +8 -9
  87. package/dist/lib/form-panels/subscription-header.panel.js.map +1 -1
  88. package/dist/lib/form-panels/subscription-revrec.panel.js +2 -2
  89. package/dist/lib/form-panels/subscription-term-header.panel.js +2 -2
  90. package/dist/lib/form-panels/subscription-term-revrec.panel.js +2 -2
  91. package/dist/lib/form-panels/subscription-terms.panel.js +15 -19
  92. package/dist/lib/form-panels/subscription-terms.panel.js.map +1 -1
  93. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProvider/mjbizappsorderspaymentprovider.form.component.d.ts.map +1 -1
  94. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProvider/mjbizappsorderspaymentprovider.form.component.js +7 -9
  95. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProvider/mjbizappsorderspaymentprovider.form.component.js.map +1 -1
  96. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProviderPrice/mjbizappsorderspaymentproviderprice.form.component.d.ts.map +1 -1
  97. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProviderPrice/mjbizappsorderspaymentproviderprice.form.component.js +9 -10
  98. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProviderPrice/mjbizappsorderspaymentproviderprice.form.component.js.map +1 -1
  99. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProviderType/mjbizappsorderspaymentprovidertype.form.component.js +15 -13
  100. package/dist/lib/generated/Entities/mjBizAppsOrdersPaymentProviderType/mjbizappsorderspaymentprovidertype.form.component.js.map +1 -1
  101. package/dist/lib/pages/catalog/pricing.page.js +3 -3
  102. package/dist/lib/pages/catalog/pricing.page.js.map +1 -1
  103. package/dist/lib/pages/catalog/products.page.js +6 -6
  104. package/dist/lib/pages/catalog/products.page.js.map +1 -1
  105. package/dist/lib/pages/orders/fulfillment.page.d.ts +1 -0
  106. package/dist/lib/pages/orders/fulfillment.page.d.ts.map +1 -1
  107. package/dist/lib/pages/orders/fulfillment.page.js +5 -3
  108. package/dist/lib/pages/orders/fulfillment.page.js.map +1 -1
  109. package/dist/lib/pages/orders/order-document.page.d.ts.map +1 -1
  110. package/dist/lib/pages/orders/order-document.page.js +12 -20
  111. package/dist/lib/pages/orders/order-document.page.js.map +1 -1
  112. package/dist/lib/pages/orders/orders-dashboard.page.d.ts.map +1 -1
  113. package/dist/lib/pages/orders/orders-dashboard.page.js +8 -7
  114. package/dist/lib/pages/orders/orders-dashboard.page.js.map +1 -1
  115. package/dist/lib/pages/orders/return.page.d.ts.map +1 -1
  116. package/dist/lib/pages/orders/return.page.js +23 -30
  117. package/dist/lib/pages/orders/return.page.js.map +1 -1
  118. package/dist/lib/pages/payments/account-credit.page.d.ts +1 -0
  119. package/dist/lib/pages/payments/account-credit.page.d.ts.map +1 -1
  120. package/dist/lib/pages/payments/account-credit.page.js +13 -14
  121. package/dist/lib/pages/payments/account-credit.page.js.map +1 -1
  122. package/dist/lib/pages/payments/credit-targets.d.ts +25 -0
  123. package/dist/lib/pages/payments/credit-targets.d.ts.map +1 -0
  124. package/dist/lib/pages/payments/credit-targets.js +43 -0
  125. package/dist/lib/pages/payments/credit-targets.js.map +1 -0
  126. package/dist/lib/pages/receivables/billing.page.js +1 -1
  127. package/dist/lib/pages/receivables/billing.page.js.map +1 -1
  128. package/dist/lib/pages/receivables/customer-ar.page.d.ts +1 -0
  129. package/dist/lib/pages/receivables/customer-ar.page.d.ts.map +1 -1
  130. package/dist/lib/pages/receivables/customer-ar.page.js +24 -29
  131. package/dist/lib/pages/receivables/customer-ar.page.js.map +1 -1
  132. package/dist/lib/pages/receivables/external-invoicing-queue.page.js +3 -3
  133. package/dist/lib/pages/receivables/external-invoicing-queue.page.js.map +1 -1
  134. package/dist/lib/pages/receivables/overdue.page.d.ts +1 -0
  135. package/dist/lib/pages/receivables/overdue.page.d.ts.map +1 -1
  136. package/dist/lib/pages/receivables/overdue.page.js +6 -3
  137. package/dist/lib/pages/receivables/overdue.page.js.map +1 -1
  138. package/dist/lib/pages/receivables/progress.page.js +3 -3
  139. package/dist/lib/pages/receivables/progress.page.js.map +1 -1
  140. package/dist/lib/pages/receivables/subscriptions.page.js +10 -10
  141. package/dist/lib/pages/receivables/subscriptions.page.js.map +1 -1
  142. package/dist/lib/panels/allocation-grid.component.d.ts.map +1 -1
  143. package/dist/lib/panels/allocation-grid.component.js +16 -23
  144. package/dist/lib/panels/allocation-grid.component.js.map +1 -1
  145. package/dist/lib/panels/decomposition-ladder.component.d.ts.map +1 -1
  146. package/dist/lib/panels/decomposition-ladder.component.js +28 -30
  147. package/dist/lib/panels/decomposition-ladder.component.js.map +1 -1
  148. package/dist/lib/panels/external-invoice-view.d.ts +29 -0
  149. package/dist/lib/panels/external-invoice-view.d.ts.map +1 -1
  150. package/dist/lib/panels/external-invoice-view.js +35 -8
  151. package/dist/lib/panels/external-invoice-view.js.map +1 -1
  152. package/dist/lib/panels/journal-entry-preview.component.js +7 -7
  153. package/dist/lib/panels/journal-entry-preview.component.js.map +1 -1
  154. package/dist/lib/panels/line-price-picker.component.d.ts +5 -0
  155. package/dist/lib/panels/line-price-picker.component.d.ts.map +1 -1
  156. package/dist/lib/panels/line-price-picker.component.js +54 -41
  157. package/dist/lib/panels/line-price-picker.component.js.map +1 -1
  158. package/dist/lib/panels/money-strip.component.js +6 -6
  159. package/dist/lib/panels/money-strip.component.js.map +1 -1
  160. package/dist/lib/panels/party-orders-overview.component.d.ts.map +1 -1
  161. package/dist/lib/panels/party-orders-overview.component.js +59 -75
  162. package/dist/lib/panels/party-orders-overview.component.js.map +1 -1
  163. package/dist/lib/panels/status-stepper.component.d.ts +1 -1
  164. package/dist/lib/panels/worklist-table.component.d.ts +2 -2
  165. package/dist/lib/panels/worklist-table.component.d.ts.map +1 -1
  166. package/dist/lib/panels/worklist-table.component.js +65 -105
  167. package/dist/lib/panels/worklist-table.component.js.map +1 -1
  168. package/dist/lib/sections/orders-sections.component.js +8 -8
  169. package/dist/lib/sections/orders-sections.component.js.map +1 -1
  170. package/dist/lib/sections/section-shell.component.js +2 -2
  171. package/dist/lib/styles/orders-kit.css +34 -204
  172. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"checkout-public-host.component.js","sourceRoot":"","sources":["../../../src/lib/checkout-widget/checkout-public-host.component.ts","../../../src/lib/checkout-widget/checkout-public-host.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkout-public-host.component.js","sourceRoot":"","sources":["../../../src/lib/checkout-widget/checkout-public-host.component.ts","../../../src/lib/checkout-widget/checkout-public-host.component.html"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAEH,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,YAAY,EACZ,KAAK,EAGL,MAAM,EACN,MAAM,GACT,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,gBAAgB,GAEnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,4BAA4B,EAC5B,4BAA4B,EAC5B,uBAAuB,EACvB,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,GAEvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,2BAA2B,EAC3B,kBAAkB,EAClB,eAAe,GAElB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,yBAAyB,GAK5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EAEjB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EACH,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAmC,MAAM,oBAAoB,CAAC;;;;IC/E1H,8BAAiD;IAAA,YAAe;IAAA,iBAAM;;;IAArB,cAAe;IAAf,sCAAe;;;IAOxD,6BAAsC;IAAA,YAAuB;IAAA,iBAAI;;;IAA3B,cAAuB;IAAvB,mDAAuB;;;IAG7D,6BAAkG;IAAA,YAAmB;IAAA,iBAAI;;;IAAlF,4DAA4C;IAAe,cAAmB;IAAnB,0CAAmB;;;IAGrH,6BAAkD;IAAA,6CAAwB;IAAA,iBAAI;;;IAKtE,6BAAqC;IAAA,YAAsB;IAAA,iBAAI;;;IAA1B,cAAsB;IAAtB,6CAAsB;;;IAmB3D,6BAAmD;IAAA,YAAmB;IAAA,iBAAI;;;IAAvB,cAAmB;IAAnB,0CAAmB;;;;IAtB9E,gCAAuF;IAArD,+LAAU,uBAAuB,wBAAE,uBAAgB,KAAC;IAClF,8BAAuC;IAAA,+CAA+B;IAAA,iBAAK;IAC3E,yHAAwB;IAGxB,iCAAqE;IAAA,wBAAQ;IAAA,iBAAQ;IACrF,iCAMqD;IAAjD,8PAA8C;IANlD,iBAMqD;IACrD,iCAA6E;IAAA,gCAAgB;IAAA,iBAAQ;IACrG,iCAMiE;IAA7D,0QAA0D;IAN9D,iBAMiE;IACjE,2HAAqB;IAGrB,mCAAoF;IAChF,aACJ;IAAA,iBAAS;IACT,mCAA2G;IAAnD,gNAAS,qBAAc,KAAC;IAC5E,0BACJ;IACJ,AADI,iBAAS,EACN;;;IA5BH,eAEC;IAFD,kDAEC;IAOG,eAAkB;IAAlB,uCAAkB;IAQlB,eAA8B;IAA9B,mDAA8B;IAElC,cAEC;IAFD,gDAEC;IACyD,cAAyB;IAAzB,8CAAyB;IAC/E,cACJ;IADI,sFACJ;IACiF,cAAyB;IAAzB,8CAAyB;;;;IAUlG,kCAAmF;IAA3B,2OAAS,uBAAgB,KAAC;IAAC,uBAAO;IAAA,iBAAS;;;;IAFvG,AADJ,+BAA8D,iBACyB;IAAzB,6NAAS,qBAAc,KAAC;IAAC,yBAAS;IAAA,iBAAS;IACrG,4IAA2B;IAG/B,iBAAM;;;IAHF,eAEC;IAFD,qFAEC;;;IANT,6BAAkD;IAAA,YAAoB;IAAA,iBAAI;IAC1E,2HAAqC;;;IADa,cAAoB;IAApB,2CAAoB;IACtE,cAOC;IAPD,gGAOC;;;IApDL,AADJ,8BAA+C,aACe;IAAA,sBAAC;IAAA,iBAAM;IACjE,6BAAuC;IAAA,8BAAc;IAAA,iBAAK;IAC1D,4BAAoC;IAAA,YAAoB;IAAA,iBAAI;IAC5D,0GAAmB;IAGnB,0GAAqB;IAqCnB,AAhCA,AAFF,0GAAsB,0FAEgB,6EAgCT;IAWjC,iBAAM;;;IApDkC,eAAoB;IAApB,2CAAoB;IACxD,cAEC;IAFD,6CAEC;IACD,cAEC;IAFD,+CAEC;IACD,cA4CC;IA5CD,oJA4CC;;;IAID,AADJ,8BAAkE,WAC1B;IAAA,YAAsB;IAC9D,AAD8D,iBAAI,EAC5D;;;IADkC,eAAsB;IAAtB,6CAAsB;;;IAG9D,4BAAoD;IAAA,sCAAiB;IAAA,iBAAI;;;IAQzD,AADJ,+BAAsC,SAC9B;IAAA,0BAAU;IAAA,iBAAK;IACnB,0BAAI;IAAA,YAAyB;IACjC,AADiC,iBAAK,EAChC;;;IADE,eAAyB;IAAzB,gDAAyB;;;IAK7B,AADJ,+BAAsC,SAC9B;IAAA,4BAAY;IAAA,iBAAK;IACrB,0BAAI;IAAA,YAAgC;IACxC,AADwC,iBAAK,EACvC;;;IADE,eAAgC;IAAhC,uDAAgC;;;IASpC,AADJ,+BAAsC,SAC9B;IAAA,mBAAG;IAAA,iBAAK;IACZ,0BAAI;IAAA,YAAqB;IAC7B,AAD6B,iBAAK,EAC5B;;;IADE,eAAqB;IAArB,4CAAqB;;;IASjC,iCAAoE;IAAA,oBAAI;IAAA,iBAAQ;IAChF,0BAAsE;;;IAItE,8BAAiD;IAAA,YAAkB;IAAA,iBAAM;;;IAAxB,cAAkB;IAAlB,yCAAkB;;;;IArC3E,gCAAmF;IAAjD,+KAAU,uBAAuB,wBAAE,mBAAY,KAAC;IAC9E,8BAAuC;IAAA,uCAAuB;IAAA,iBAAK;IACnE,6BAAqC;IAAA,2GAA2F;IAAA,iBAAI;IACpI,8BAAyC;IACrC,4GAA2B;IAM3B,4GAAkC;IAO9B,AADJ,+BAAsC,SAC9B;IAAA,8BAAa;IAAA,iBAAK;IACtB,2BAAI;IAAA,aAAyB;IACjC,AADiC,iBAAK,EAChC;IACN,8GAAuB;IAOnB,AADJ,gCAAsE,UAC9D;IAAA,2BAAU;IAAA,iBAAK;IACnB,2BAAI;IAAA,aAAmB;IAE/B,AADI,AAD2B,iBAAK,EAC1B,EACL;IACL,mGAAmC;IAInC,8BAAqC;IAAA,2EAA0D;IAAA,iBAAI;IACnG,6GAAoB;IAGpB,mCAAkG;IAC9F,aACJ;IACJ,AADI,iBAAS,EACN;;;IAtCC,eAKC;IALD,qDAKC;IACD,cAKC;IALD,4DAKC;IAGO,eAAyB;IAAzB,gDAAyB;IAEjC,cAKC;IALD,kDAKC;IAGO,eAAmB;IAAnB,0CAAmB;IAG/B,cAGC;IAHD,8DAGC;IAED,eAEC;IAFD,+CAEC;IACsD,cAA0C;IAA1C,sEAA0C;IAC7F,cACJ;IADI,uGACJ;;;;IAIJ,8CAoBgD;IAA5C,AADA,AADA,AADA,AAHA,sPAAwB,qCAA8B,KAAC,mNAG1C,0BAAmB,KAAC,6MACpB,oBAAa,KAAC,2NACP,2BAAoB,KAAC,6NACvB,+BAAwB,KAAC;IAC/C,iBAAqB;;;IALjB,AADA,AAFA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,AADA,sCAAiB,iCACQ,iCACA,mCACE,yCACM,uDACc,qCAClB,qCACA,6CACQ,+CACE,yCACN,iCACR,yCACQ,mCAEN,+BACJ;;;IAjB3B,+IAuBC;;;IAvBD,gEAuBC;;ADnDT,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAsC/D,MAAM,OAAO,2BAA2B;IACnB,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC5D;;;OAGG;IACc,GAAG,GAAG,EAAE,aAAa,EAAE,GAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;IAEzG,IAAI,GAAG,EAAE,CAAC;IACV,OAAO,GAAG,WAAW,CAAC;IACtC,8FAA8F;IAC9E,WAAW,GAAG,EAAE,CAAC;IACjC;;;OAGG;IACa,YAAY,GAAG,EAAE,CAAC;IAElC,4FAA4F;IACrF,OAAO,GAAsC,IAAI,CAAC;IAEzD,iDAAiD;IACjD,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,CAAC;IAED;;;OAGG;IAC2C,iBAAiB,GAAG,IAAI,YAAY,EAAmC,CAAC;IAE/G,MAAM,GAAgC,IAAI,CAAC;IAC3C,UAAU,GAAG,EAAE,CAAC;IAChB,SAAS,GAAG,EAAE,CAAC;IACf,UAAU,GAAG,KAAK,CAAC;IACnB,cAAc,GAAG,KAAK,CAAC;IACvB,qBAAqB,GAAkB,IAAI,CAAC;IAC5C,YAAY,GAAkB,IAAI,CAAC;IACnC,SAAS,GAAkB,IAAI,CAAC;IAChC,cAAc,GAAkB,IAAI,CAAC;IACrC,WAAW,GAAkB,IAAI,CAAC;IACzC,gGAAgG;IACzF,gBAAgB,GAAoC,IAAI,CAAC;IAChE,2CAA2C;IACpC,cAAc,GAAkB,IAAI,CAAC;IAC5C,mGAAmG;IAC5F,iBAAiB,GAAqC,IAAI,CAAC;IAClE,mGAAmG;IAC5F,WAAW,GAAkB,IAAI,CAAC;IAClC,SAAS,GAAkB,IAAI,CAAC;IACvC,sFAAsF;IAC/E,cAAc,GAAoC,IAAI,CAAC;IAC9D,8GAA8G;IACvG,eAAe,GAAG,GAAG,CAAC;IACrB,UAAU,GAAyC,IAAI,CAAC;IAChE,4FAA4F;IACpF,eAAe,GAAG,CAAC,CAAC;IAC5B;;;;OAIG;IACc,gBAAgB,GAAG,IAAI,GAAG,EAAiB,CAAC;IAE7D;;;OAGG;IACH,IAAW,WAAW;QAClB,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IAC7D,CAAC;IAED,0EAA0E;IACnE,OAAO,GAA+B,IAAI,CAAC;IAC3C,QAAQ,GAAG,EAAE,CAAC;IACd,oBAAoB,GAAG,EAAE,CAAC;IAC1B,aAAa,GAAkB,IAAI,CAAC;IACpC,YAAY,GAAG,KAAK,CAAC;IACrB,WAAW,GAAG,KAAK,CAAC;IAC3B,sDAAsD;IAC/C,cAAc,GAAG,KAAK,CAAC;IAC9B,sDAAsD;IAC9C,gBAAgB,GAAG,KAAK,CAAC;IAEjC,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChF,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,iFAAiF;IAC1E,WAAW,GAA+B,IAAI,CAAC;IACtD,+FAA+F;IACxF,oBAAoB,GAAG,uBAAuB,CAAC;IAC/C,mBAAmB,GAAG,sBAAsB,CAAC;IACpD,sEAAsE;IAC9D,cAAc,GAAG,KAAK,CAAC;IAE/B;;;OAGG;IACI,gBAAgB,GAAkB,IAAI,CAAC;IAC9C,kGAAkG;IAC3F,uBAAuB,GAAG,0BAA0B,CAAC;IACrD,sBAAsB,GAAG,yBAAyB,CAAC;IAE1D,IAAW,aAAa;QACpB,OAAO,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxE,CAAC;IAEO,MAAM,GAA0B,IAAI,CAAC;IAC7C,mGAAmG;IAClF,SAAS,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACjE,cAAc,GAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC5D,IAAI,GAAsB,IAAI,CAAC;IAC/B,WAAW,GAAG,KAAK,CAAC;IACpB,SAAS,GAAG,KAAK,CAAC;IAClB,iBAAiB,GAAG,KAAK,CAAC;IAC1B,KAAK,GAAgC,IAAI,CAAC;IAClD,uGAAuG;IAChG,cAAc,GAAG,CAAC,CAAC;IAE1B,2FAA2F;IACpF,YAAY,GAAkB,IAAI,CAAC;IAClC,iBAAiB,GAAkB,IAAI,CAAC;IACxC,oBAAoB,GAAkB,IAAI,CAAC;IAClC,gBAAgB,GAAG,GAAS,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;IAEtE,IAAW,MAAM;QACb,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,QAAQ;QACjB,oFAAoF;QACpF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,GAAG,8CAA8C,CAAC;YAChE,OAAO;QACX,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,sEAAsE,CAAC;YACxF,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACzD,OAAO;QACX,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;gBAC7C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,gBAAgB,EAAE,IAAI,CAAC,UAAU;gBACjC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpE,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;gBACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,iCAAiC,CAAC,CAAC;gBACjF,OAAO;YACX,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAyB,CAAC;YAC/D,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC;gBAC7E,GAAG,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YACpE,CAAC;YACD,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;gBAC1E,GAAG,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClE,CAAC;YACD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAChB,IAAI,CAAC,SAAS,GAAG,mCAAmC,CAAC;oBACrD,OAAO;gBACX,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,SAAS,GAAG,iDAAiD,CAAC;gBACnE,OAAO;YACX,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,SAAS,GAAG,GAAG,YAAY,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,wDAAwD,CAAC;QAC5H,CAAC;gBAAS,CAAC;YACP,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAEM,kBAAkB;QACrB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACrD,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;YACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,OAAO;QACX,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC;QAC7D,IAAI,KAAK,EAAE,CAAC;YACR,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,WAAW;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,EAAE,aAAyC,EAAE,mBAAmB,EAAE,CAAC,4BAA4B,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpI,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;IACL,CAAC;IAED,mFAAmF;IAC5E,KAAK,CAAC,sBAAsB,CAAC,KAA8B;QAC9D,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YACrE,OAAO;QACX,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAC7G,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,CAAC,cAAc,GAAG,kDAAkD,CAAC;QAC7E,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,qBAAqB,CAAC,KAAiD,EAAE,KAA8B;QAC3G,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,iCAAiC,CAAC,CAAC;YACvF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;YACxD,CAAC,CAAE,KAAK,CAAC,sBAAsE;YAC/E,CAAC,CAAC,EAAE,CAAC;QACT,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,cAAc,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,mBAAmB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,0BAA0B,CAAC,GAAG,CAAC;YACvJ,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,qBAAmC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7G,IAAI,CAAC,gBAAgB,GAAG;YACpB,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;YAC/C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;YACrC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;YACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SAC3B,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACI,WAAW;QACd,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;OAWG;IACK,cAAc;QAClB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YACnE,OAAO;QACX,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,+FAA+F;IAC/F,IAAY,gBAAgB;QACxB,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACnH,CAAC;IAED;;;OAGG;IACK,SAAS;QACb,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,oBAAoB,CAAC;QACzD,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,sGAAsG;IAC/F,kBAAkB;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACI,gBAAgB,CAAC,KAA8B;QAClD,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YACpE,OAAO;QACX,CAAC;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,KAAK,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,iBAAiB,CAAC,KAA8B,EAAE,UAAkB;QAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC;QACzC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAClD,OAAO;QACX,CAAC;QACD,IAAI,KAA8B,CAAC;QACnC,IAAI,CAAC;YACD,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC;YACL,OAAO;QACX,CAAC;QACD,IAAI,UAAU,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3E,OAAO;QACX,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,iBAAiB,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACxF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;YAC7C,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,sFAAsF;IAC9E,qBAAqB;QACzB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,qBAAqB;QAC/B,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,oFAAoF;IAC5E,SAAS,CAAC,SAAiB,EAAE,KAA8B,EAAE,cAAwB;QACzF,OAAO;YACH,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,CAAC,sBAAsB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,IAAI,CAAC,iBAAiB;gBACtB,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,IAAI,CAAC,oBAAoB,EAAE,EAAE;gBAC3F,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,cAAc;SACjB,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,KAA8B;QACnD,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YAC7C,OAAO;QACX,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC5B,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CACzB,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CACjG,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC5C,qFAAqF;gBACrF,iEAAiE;gBACjE,OAAO;YACX,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,gCAAgC,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,0FAA0F;YAC1F,2FAA2F;YAC3F,iFAAiF;YACjF,IAAI,CAAC,iBAAiB,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5F,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,cAAc,GAAG,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACnE,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;gBAC3B,OAAO;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpB,OAAO;YACX,CAAC;YACD,qFAAqF;YACrF,wFAAwF;YACxF,4FAA4F;YAC5F,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACX,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAC9C,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;gBACjC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,KAAK,IAAI;aACpD,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,0BAA0B,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,IAAI,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,0BAA0B,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAChD,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;gBAC7E,cAAc,EAAE;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,eAAe,EAAE;wBACb,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,OAAO,EAAE;4BACL,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO;4BACrC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,aAAa;4BACzC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU;yBAC/C;qBACJ;iBACJ;aACJ,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,gDAAgD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7E,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;gBACxE,IAAI,YAAY,IAAI,YAAY,KAAK,WAAW,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;oBAChF,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC;gBACnG,CAAC;YACL,CAAC;YACD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC;YAC5E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,UAAU;QACnB,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC5B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAC9C,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,0BAA0B,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAChD,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC7B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAChD,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;oBAC7E,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;iBACtC,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACrD,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;oBACxE,IAAI,YAAY,IAAI,YAAY,KAAK,WAAW,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;wBAChF,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC;oBACnG,CAAC;gBACL,CAAC;YACL,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAC9C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;aACpC,CAAC,CACL,CAAC;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,OAAO;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,iCAAiC,CAAC,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC5C,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACzB,IAAI,CAAC,QAAQ,CACT,uBAAuB,EACvB,2BAA2B,CAAC;gBACxB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;gBACrC,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC/B,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ;gBAC/B,MAAM,EAAE,IAAI;aACf,CAAC,CACL,CAAC;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;YAC3E,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,QAAoD;QAChF,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,KAA8B,EAAE,UAAkB;QACnE,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,KAAK,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,CAAC;YACvB,CAAC,CAAC,gBAAgB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,4CAA4C;YAC3G,CAAC,CAAC,gBAAgB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kCAAkC,CAAC;QACzE,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,MAAM;QAChB,uFAAuF;QACvF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAC9C,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;SACpC,CAAC,CACL,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,8BAA8B,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtE,IAAI,CAAC,cAAc;YACf,IAAI,CAAC,MAAM,EAAE,cAAc;gBAC3B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,WAAW,gBAAgB,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC;QACtH,iFAAiF;QACjF,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CACT,uBAAuB,EACvB,2BAA2B,CAAC;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK;YAC3D,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS;YACjC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ;YAC/B,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,IAAI;SAC9C,CAAC,CACL,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,6FAA6F;QAC7F,qGAAqG;QACrG,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7B,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;QACD,MAAM,MAAM,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,WAAW;QACrB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACvD,SAAS,CAAC;gBACN,mDAAmD;gBACnD,IAAI,IAAI,CAAC,SAAS;oBAAE,OAAO;gBAC3B,IAAI,KAAK,GAA+B,IAAI,CAAC;gBAC7C,IAAI,CAAC;oBACD,KAAK,GAAG,eAAe,CACnB,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CACtG,CAAC;gBACN,CAAC;gBAAC,MAAM,CAAC;oBACL,OAAO;gBACX,CAAC;gBACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,YAAY;oBAAE,OAAO;gBACrD,IAAI,KAAK,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;oBAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,IAAI,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;oBACtD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gBAC7B,CAAC;gBACD,IAAI,kBAAkB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ;oBAAE,OAAO;gBAChE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACnF,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;YAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;IACL,CAAC;IAED,yGAAyG;IACjG,KAAK,CAAC,WAAW;QACrB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACxF,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC;QACvC,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAChC,CAAC;QACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC5D,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,yDAAyD;IAClD,KAAK,CAAC,YAAY;QACrB,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QAChC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,+FAA+F;IACxF,cAAc;QACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3C,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACtE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAG,qCAAqC,CAAC;YAC5D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,gBAAgB,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,yGAAyG;IAClG,KAAK,CAAC,cAAc;QACvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7E,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;YAC7B,OAAO;QACX,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC7C,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,gBAAgB,EAAE,IAAI,CAAC,UAAU;gBACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;aAC1B,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;YAChE,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5D,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,qDAAqD,CAAC,CAAC;YAC3G,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,CAAC,aAAa,GAAG,6DAA6D,CAAC;QACvF,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,wEAAwE;IACjE,YAAY;QACf,IAAI,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;QAC5E,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACK,gBAAgB;QACpB,IAAI,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,mFAAmF;IAC3E,WAAW;QACf,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/H,uEAAuE;YACvE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/G,CAAC;IACL,CAAC;IAED,0FAA0F;IAClF,QAAQ,CAAC,KAA2B;QACxC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO;QACnD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEO,WAAW,CAAC,OAAe;QAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,uIAAuI;IAC/H,QAAQ,CAAI,IAAY,EAAE,MAAS;QACvC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,aAAwC,CAAC;QACjE,EAAE,EAAE,aAAa,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAkB;QACxC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,oBAAoB,CAAC;QAC7C,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,OAAO;QACX,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC1B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC;YACxC,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,4BAA4B,CAAC;YACtF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,EAAU;QACzB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,GAAG,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACjB,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;oBAC5C,OAAO;gBACX,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/B,CAAC,CAAC;YACF,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAChB,IAAI,EAAE,CAAC;gBACP,OAAO;YACX,CAAC;YACD,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3C,CAAC,CAAC,GAAG,GAAG,2BAA2B,CAAC;YACpC,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;YACxB,CAAC,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;YAChE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,kBAAkB;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,aAAwC,CAAC;QACjE,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO;QACX,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACrE,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAChF,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;QAC5F,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QACnC,CAAC;QACD,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;QAC/F,IAAI,YAAY,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,EAAE,CAAC,gBAAgB,EAAE,CAAC,4BAA4B,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/E,CAAC;IAED;;;OAGG;IACK,0BAA0B;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,aAAwC,CAAC;QACjE,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO;QACX,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC;QACtF,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC;QAC7F,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC;IAC5G,CAAC;IAED,+GAA+G;IAC/G,IAAY,YAAY;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAChE,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC;YACD,cAAc,CAAC,UAAU,CAAC,mBAAmB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;IACL,CAAC;IAEO,SAAS;QACb,MAAM,UAAU,GAAG,mBAAmB,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1D,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACpD,IAAI,QAAQ,EAAE,CAAC;gBACX,OAAO,QAAQ,CAAC;YACpB,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;QACD,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACrD,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAC9B,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YACjE,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YAC5B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAClE,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3J,CAAC;QACD,IAAI,GAAG,EAAE,CAAC;YACN,IAAI,CAAC;gBACD,cAAc,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACL,YAAY;YAChB,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAY,aAAa;QACrB,OAAO,0BAA0B,IAAI,CAAC,YAAY,EAAE,CAAC;IACzD,CAAC;IAEO,kBAAkB,CAAC,SAAiB;QACxC,IAAI,CAAC;YACD,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC;YACD,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACL,kBAAkB;QACtB,CAAC;IACL,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC;YACD,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,oBAAoB,CAAC,IAA4C;QAC3E,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE;YACvC,UAAU,EAAE,IAAI,CAAC,uBAAuB;YACxC,SAAS,EAAE,IAAI,CAAC,sBAAsB;YACtC,SAAS,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,gBAAgB,GAAG,0BAA0B,CAAC;gBACnD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC7B,CAAC;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC;QAC/D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,iHAAiH;IACzG,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,IAAa;QAC1C,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACD,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;gBACxC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,WAAW,EAAE,aAAa;gBAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC7B,CAAC,CAAC;QACP,CAAC;QAAC,MAAM,CAAC;YACL,MAAM,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,2FAA2F;IACnF,SAAS,CAAC,IAAY,EAAE,IAA6B;QACzD,OAAO,iBAAiB,CACpB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EACzB,IAAI,EACJ,IAAI,EACJ,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAC1C,IAAI,CAAC,cAAc,CACtB,CAAC;IACN,CAAC;IAED,mGAAmG;IAC3F,kBAAkB;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,aAAwC,CAAC;QACjE,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,EAAE,CAAC,aAAa,CAAc,gCAAgC,CAAC,CAAC;QACjF,IAAI,QAAQ,EAAE,CAAC;YACX,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,+BAA+B,CAAC;QACpD,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,GAAG,CAAC,KAAc,EAAE,QAAQ,GAAG,EAAE;QACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;IACjE,CAAC;qHAlkCQ,2BAA2B;6DAA3B,2BAA2B;YCzHxC,8BAAgC;YA8G1B,AA5CA,AAFA,AAJA,AAzDA,AAFF,6FAAiB,wEAEY,uEAyDE,qEAIT,yEAEA,6DA4Cb;YA0BT,yBAAiD;YACrD,iBAAM;;YAxIF,cAsIC;YAtID,+HAsIC;4BDlBS,YAAY,EAAE,yBAAyB;;iFAIxC,2BAA2B;cAPvC,SAAS;2BACI,oBAAoB,cAClB,IAAI,WACP,CAAC,YAAY,EAAE,yBAAyB,CAAC;;kBAajD,KAAK;;kBACL,KAAK;;kBAEL,KAAK;;kBAKL,KAAK;;kBAcL,MAAM;mBAAC,6BAA6B;;kFA/B5B,2BAA2B"}
@@ -1447,11 +1447,11 @@ export class MJCheckoutWidgetComponent {
1447
1447
  i0.ɵɵconditional(ctx.isProcessing ? 45 : ctx.isFree() ? 46 : 47);
1448
1448
  i0.ɵɵadvance(3);
1449
1449
  i0.ɵɵproperty("disabled", ctx.isProcessing);
1450
- } }, dependencies: [CommonModule, FormsModule, i1.NgSelectOption, i1.ɵNgSelectMultipleOption, i1.DefaultValueAccessor, i1.NumberValueAccessor, i1.CheckboxControlValueAccessor, i1.SelectControlValueAccessor, i1.NgControlStatus, i1.RequiredValidator, i1.MaxLengthValidator, i1.MinValidator, i1.MaxValidator, i1.NgModel], styles: ["[_nghost-%COMP%] {\n display: block;\n font-family: var(--mj-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n color: var(--mj-text-color, #1e293b);\n}\n\n.mj-checkout-widget-container[_ngcontent-%COMP%] {\n max-width: 560px;\n margin: 0 auto;\n background: var(--mj-bg-color, #ffffff);\n border: 1px solid #e2e8f0;\n border-radius: var(--mj-border-radius, 8px);\n padding: 24px;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);\n}\n\n.mj-widget-header[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.mj-widget-title[_ngcontent-%COMP%] {\n margin: 0 0 6px 0;\n font-size: 1.35rem;\n font-weight: 700;\n color: var(--mj-text-color, #0f172a);\n}\n\n.mj-widget-description[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 0.9rem;\n color: #64748b;\n line-height: 1.4;\n}\n\n.mj-widget-error-banner[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n background: #fef2f2;\n border: 1px solid #f87171;\n color: #991b1b;\n padding: 10px 14px;\n border-radius: 6px;\n margin-bottom: 18px;\n font-size: 0.875rem;\n}\n\n.mj-error-icon[_ngcontent-%COMP%] {\n font-size: 1rem;\n}\n\n.mj-widget-summary-card[_ngcontent-%COMP%] {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px 16px;\n margin-bottom: 20px;\n}\n\n.mj-summary-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.mj-summary-price[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n}\n\n.mj-widget-form-section[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.mj-summary-item-info[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mj-product-name[_ngcontent-%COMP%] {\n font-weight: 600;\n font-size: 1rem;\n color: #1e293b;\n}\n\n.mj-badge-free[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #166534;\n font-size: 0.75rem;\n font-weight: 700;\n padding: 2px 6px;\n border-radius: 4px;\n}\n\n.mj-price-free[_ngcontent-%COMP%] {\n font-weight: 700;\n color: #166534;\n font-size: 1.1rem;\n}\n\n.mj-price-amount[_ngcontent-%COMP%] {\n font-weight: 700;\n color: #0f172a;\n font-size: 1.1rem;\n}\n\n.mj-quantity-selector-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px dashed #cbd5e1;\n}\n\n.mj-qty-controls[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.mj-qty-btn[_ngcontent-%COMP%] {\n width: 28px;\n height: 28px;\n background: #ffffff;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n cursor: pointer;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.mj-qty-btn[_ngcontent-%COMP%]:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.mj-qty-input[_ngcontent-%COMP%] {\n width: 44px;\n height: 28px;\n text-align: center;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n font-weight: 600;\n}\n\n.mj-section-title[_ngcontent-%COMP%] {\n font-size: 1rem;\n font-weight: 600;\n margin: 0 0 12px 0;\n color: #334155;\n}\n\n.mj-form-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 18px;\n}\n\n.mj-form-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.mj-form-group.full-width[_ngcontent-%COMP%] {\n grid-column: 1 / -1;\n}\n\n.mj-label[_ngcontent-%COMP%] {\n font-size: 0.8rem;\n font-weight: 500;\n color: #475569;\n}\n\n.mj-required[_ngcontent-%COMP%] {\n color: #ef4444;\n}\n\n.mj-input[_ngcontent-%COMP%], .mj-select[_ngcontent-%COMP%] {\n padding: 8px 12px;\n font-size: 0.9rem;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n background: #ffffff;\n color: #1e293b;\n outline: none;\n transition: border-color 0.15s ease;\n width: 100%;\n box-sizing: border-box;\n}\n\n.mj-textarea[_ngcontent-%COMP%] {\n min-height: 70px;\n resize: vertical;\n font-family: inherit;\n}\n\n.mj-select[_ngcontent-%COMP%] {\n min-height: 38px;\n}\n\n.mj-checkbox-label[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 400;\n color: #334155;\n margin-top: 4px;\n}\n\n\n\n.mj-question-other[_ngcontent-%COMP%] {\n margin-top: 8px;\n}\n\n\n\n.mj-choice-group[_ngcontent-%COMP%] {\n border: 0;\n margin: 0;\n padding: 0;\n}\n\n.mj-choice-count[_ngcontent-%COMP%] {\n font-weight: normal;\n color: #64748b;\n}\n\n.mj-choice-options[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mj-checkbox-label.is-disabled[_ngcontent-%COMP%] {\n cursor: not-allowed;\n opacity: 0.55;\n}\n\n.mj-input[_ngcontent-%COMP%]:focus, .mj-select[_ngcontent-%COMP%]:focus {\n border-color: var(--mj-primary-color, #2563eb);\n box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);\n}\n\n\n\n.mj-input[readonly][_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #475569;\n cursor: default;\n}\n\n.mj-field-hint[_ngcontent-%COMP%] {\n font-size: 0.8rem;\n color: #64748b;\n margin: 0.25rem 0 0;\n}\n\n.mj-multi-attendee-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n}\n\n.mj-btn-link[_ngcontent-%COMP%] {\n background: none;\n border: none;\n color: var(--mj-primary-color, #2563eb);\n font-size: 0.8rem;\n cursor: pointer;\n text-decoration: underline;\n padding: 0;\n}\n\n.mj-attendee-matrix[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 14px;\n margin-bottom: 20px;\n}\n\n.mj-attendee-card[_ngcontent-%COMP%] {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 12px 14px;\n}\n\n.mj-attendee-card-title[_ngcontent-%COMP%] {\n font-size: 0.85rem;\n font-weight: 600;\n color: #475569;\n margin-bottom: 10px;\n}\n\n\n\n.mj-widget-payment-section[_ngcontent-%COMP%] {\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid #e2e8f0;\n}\n\n.mj-stripe-container[_ngcontent-%COMP%] {\n background: #ffffff;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px;\n margin-bottom: 16px;\n}\n\n.mj-stripe-mount-point[_ngcontent-%COMP%] {\n min-height: 40px;\n}\n\n.mj-stripe-badge[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 10px;\n font-size: 0.75rem;\n color: #64748b;\n}\n\n.mj-stripe-lock-icon[_ngcontent-%COMP%] {\n font-size: 0.85rem;\n}\n\n.mj-checkout-total-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 0;\n border-top: 1px solid #e2e8f0;\n margin-top: 10px;\n margin-bottom: 18px;\n}\n\n.mj-total-label[_ngcontent-%COMP%] {\n font-weight: 700;\n font-size: 1.05rem;\n color: #0f172a;\n}\n\n.mj-total-amount[_ngcontent-%COMP%] {\n font-weight: 800;\n font-size: 1.25rem;\n color: var(--mj-primary-color, #2563eb);\n}\n\n.mj-widget-actions[_ngcontent-%COMP%] {\n margin-top: 12px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%] {\n width: 100%;\n padding: 12px;\n background: var(--mj-primary-color, #2563eb);\n color: #ffffff;\n font-size: 1rem;\n font-weight: 600;\n border: none;\n border-radius: var(--mj-border-radius, 8px);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n transition: opacity 0.15s ease;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%]:hover:not(:disabled) {\n opacity: 0.92;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%]:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mj-btn-cancel[_ngcontent-%COMP%] {\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n color: #64748b;\n font-size: 0.875rem;\n font-weight: 500;\n border: none;\n cursor: pointer;\n text-align: center;\n}\n\n.mj-btn-cancel[_ngcontent-%COMP%]:hover:not(:disabled) {\n color: #334155;\n text-decoration: underline;\n}\n\n.mj-spinner[_ngcontent-%COMP%] {\n width: 16px;\n height: 16px;\n border: 2px solid #ffffff;\n border-top-color: transparent;\n border-radius: 50%;\n animation: _ngcontent-%COMP%_mj-spin 0.8s linear infinite;\n}\n\n@keyframes _ngcontent-%COMP%_mj-spin {\n to { transform: rotate(360deg); }\n}\n\n.mj-checkout-consent[_ngcontent-%COMP%] {\n display: flex;\n gap: 0.5rem;\n align-items: flex-start;\n margin: 0.75rem 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.4;\n}\n.mj-checkout-consent[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n margin-top: 0.2rem;\n}\n\n\n\n\n\n.mj-checkbox-label[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%], \n.mj-checkout-consent[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] {\n width: auto;\n height: auto;\n padding: 0;\n border: 0;\n flex: 0 0 auto;\n}\n\n.mj-checkout-promo[_ngcontent-%COMP%] {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__label[_ngcontent-%COMP%] {\n display: block;\n font-size: 0.875rem;\n margin-bottom: 0.25rem;\n}\n.mj-checkout-promo__row[_ngcontent-%COMP%] {\n display: flex;\n gap: 0.5rem;\n}\n.mj-checkout-promo__input[_ngcontent-%COMP%] {\n flex: 1 1 auto;\n}\n.mj-checkout-promo__error[_ngcontent-%COMP%] {\n color: var(--mj-error-color, #b91c1c);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-promo__applied[_ngcontent-%COMP%] {\n color: var(--mj-success-color, #15803d);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-member-discount[_ngcontent-%COMP%] {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__apply[_ngcontent-%COMP%] {\n flex: 0 0 auto;\n padding: 8px 14px;\n background: transparent;\n color: var(--mj-primary-color, #2563eb);\n border: 1px solid var(--mj-border-color, #cbd5e1);\n border-radius: var(--mj-border-radius, 8px);\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n}\n.mj-checkout-promo__apply[_ngcontent-%COMP%]:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}"], changeDetection: 0 });
1450
+ } }, dependencies: [CommonModule, FormsModule, i1.NgSelectOption, i1.ɵNgSelectMultipleOption, i1.DefaultValueAccessor, i1.NumberValueAccessor, i1.CheckboxControlValueAccessor, i1.SelectControlValueAccessor, i1.NgControlStatus, i1.RequiredValidator, i1.MaxLengthValidator, i1.MinValidator, i1.MaxValidator, i1.NgModel], styles: ["[_nghost-%COMP%] {\n display: block;\n font-family: var(--mj-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n color: var(--mj-text-color, #1e293b);\n}\n\n.mj-checkout-widget-container[_ngcontent-%COMP%] {\n \n\n\n --mjo-co-border: #cbd5e1;\n --mjo-co-error: #b91c1c;\n --mjo-co-success: #15803d;\n max-width: 560px;\n margin: 0 auto;\n background: var(--mj-bg-color, #ffffff);\n border: 1px solid #e2e8f0;\n border-radius: var(--mj-border-radius, 8px);\n padding: 24px;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);\n}\n\n.mj-widget-header[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.mj-widget-title[_ngcontent-%COMP%] {\n margin: 0 0 6px 0;\n font-size: 1.35rem;\n font-weight: 700;\n color: var(--mj-text-color, #0f172a);\n}\n\n.mj-widget-description[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 0.9rem;\n color: #64748b;\n line-height: 1.4;\n}\n\n.mj-widget-error-banner[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n background: #fef2f2;\n border: 1px solid #f87171;\n color: #991b1b;\n padding: 10px 14px;\n border-radius: 6px;\n margin-bottom: 18px;\n font-size: 0.875rem;\n}\n\n.mj-error-icon[_ngcontent-%COMP%] {\n font-size: 1rem;\n}\n\n.mj-widget-summary-card[_ngcontent-%COMP%] {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px 16px;\n margin-bottom: 20px;\n}\n\n.mj-summary-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.mj-summary-price[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n}\n\n.mj-widget-form-section[_ngcontent-%COMP%] {\n margin-bottom: 20px;\n}\n\n.mj-summary-item-info[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mj-product-name[_ngcontent-%COMP%] {\n font-weight: 600;\n font-size: 1rem;\n color: #1e293b;\n}\n\n.mj-badge-free[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #166534;\n font-size: 0.75rem;\n font-weight: 700;\n padding: 2px 6px;\n border-radius: 4px;\n}\n\n.mj-price-free[_ngcontent-%COMP%] {\n font-weight: 700;\n color: #166534;\n font-size: 1.1rem;\n}\n\n.mj-price-amount[_ngcontent-%COMP%] {\n font-weight: 700;\n color: #0f172a;\n font-size: 1.1rem;\n}\n\n.mj-quantity-selector-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px dashed #cbd5e1;\n}\n\n.mj-qty-controls[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.mj-qty-btn[_ngcontent-%COMP%] {\n width: 28px;\n height: 28px;\n background: #ffffff;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n cursor: pointer;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.mj-qty-btn[_ngcontent-%COMP%]:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.mj-qty-input[_ngcontent-%COMP%] {\n width: 44px;\n height: 28px;\n text-align: center;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n font-weight: 600;\n}\n\n.mj-section-title[_ngcontent-%COMP%] {\n font-size: 1rem;\n font-weight: 600;\n margin: 0 0 12px 0;\n color: #334155;\n}\n\n.mj-form-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 18px;\n}\n\n.mj-form-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.mj-form-group.full-width[_ngcontent-%COMP%] {\n grid-column: 1 / -1;\n}\n\n.mj-label[_ngcontent-%COMP%] {\n font-size: 0.8rem;\n font-weight: 500;\n color: #475569;\n}\n\n.mj-required[_ngcontent-%COMP%] {\n color: #ef4444;\n}\n\n.mj-input[_ngcontent-%COMP%], .mj-select[_ngcontent-%COMP%] {\n padding: 8px 12px;\n font-size: 0.9rem;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n background: #ffffff;\n color: #1e293b;\n outline: none;\n transition: border-color 0.15s ease;\n width: 100%;\n box-sizing: border-box;\n}\n\n.mj-textarea[_ngcontent-%COMP%] {\n min-height: 70px;\n resize: vertical;\n font-family: inherit;\n}\n\n.mj-select[_ngcontent-%COMP%] {\n min-height: 38px;\n}\n\n.mj-checkbox-label[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 400;\n color: #334155;\n margin-top: 4px;\n}\n\n\n\n.mj-question-other[_ngcontent-%COMP%] {\n margin-top: 8px;\n}\n\n\n\n.mj-choice-group[_ngcontent-%COMP%] {\n border: 0;\n margin: 0;\n padding: 0;\n}\n\n.mj-choice-count[_ngcontent-%COMP%] {\n font-weight: normal;\n color: #64748b;\n}\n\n.mj-choice-options[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mj-checkbox-label.is-disabled[_ngcontent-%COMP%] {\n cursor: not-allowed;\n opacity: 0.55;\n}\n\n.mj-input[_ngcontent-%COMP%]:focus, .mj-select[_ngcontent-%COMP%]:focus {\n border-color: var(--mj-primary-color, #2563eb);\n box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);\n}\n\n\n\n.mj-input[readonly][_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #475569;\n cursor: default;\n}\n\n.mj-field-hint[_ngcontent-%COMP%] {\n font-size: 0.8rem;\n color: #64748b;\n margin: 0.25rem 0 0;\n}\n\n.mj-multi-attendee-header[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n}\n\n.mj-btn-link[_ngcontent-%COMP%] {\n background: none;\n border: none;\n color: var(--mj-primary-color, #2563eb);\n font-size: 0.8rem;\n cursor: pointer;\n text-decoration: underline;\n padding: 0;\n}\n\n.mj-attendee-matrix[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 14px;\n margin-bottom: 20px;\n}\n\n.mj-attendee-card[_ngcontent-%COMP%] {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 12px 14px;\n}\n\n.mj-attendee-card-title[_ngcontent-%COMP%] {\n font-size: 0.85rem;\n font-weight: 600;\n color: #475569;\n margin-bottom: 10px;\n}\n\n\n\n.mj-widget-payment-section[_ngcontent-%COMP%] {\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid #e2e8f0;\n}\n\n.mj-stripe-container[_ngcontent-%COMP%] {\n background: #ffffff;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px;\n margin-bottom: 16px;\n}\n\n.mj-stripe-mount-point[_ngcontent-%COMP%] {\n min-height: 40px;\n}\n\n.mj-stripe-badge[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 10px;\n font-size: 0.75rem;\n color: #64748b;\n}\n\n.mj-stripe-lock-icon[_ngcontent-%COMP%] {\n font-size: 0.85rem;\n}\n\n.mj-checkout-total-row[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 0;\n border-top: 1px solid #e2e8f0;\n margin-top: 10px;\n margin-bottom: 18px;\n}\n\n.mj-total-label[_ngcontent-%COMP%] {\n font-weight: 700;\n font-size: 1.05rem;\n color: #0f172a;\n}\n\n.mj-total-amount[_ngcontent-%COMP%] {\n font-weight: 800;\n font-size: 1.25rem;\n color: var(--mj-primary-color, #2563eb);\n}\n\n.mj-widget-actions[_ngcontent-%COMP%] {\n margin-top: 12px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%] {\n width: 100%;\n padding: 12px;\n background: var(--mj-primary-color, #2563eb);\n color: #ffffff;\n font-size: 1rem;\n font-weight: 600;\n border: none;\n border-radius: var(--mj-border-radius, 8px);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n transition: opacity 0.15s ease;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%]:hover:not(:disabled) {\n opacity: 0.92;\n}\n\n.mj-btn-submit[_ngcontent-%COMP%]:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mj-btn-cancel[_ngcontent-%COMP%] {\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n color: #64748b;\n font-size: 0.875rem;\n font-weight: 500;\n border: none;\n cursor: pointer;\n text-align: center;\n}\n\n.mj-btn-cancel[_ngcontent-%COMP%]:hover:not(:disabled) {\n color: #334155;\n text-decoration: underline;\n}\n\n.mj-spinner[_ngcontent-%COMP%] {\n width: 16px;\n height: 16px;\n border: 2px solid #ffffff;\n border-top-color: transparent;\n border-radius: 50%;\n animation: _ngcontent-%COMP%_mj-spin 0.8s linear infinite;\n}\n\n@keyframes _ngcontent-%COMP%_mj-spin {\n to { transform: rotate(360deg); }\n}\n\n.mj-checkout-consent[_ngcontent-%COMP%] {\n display: flex;\n gap: 0.5rem;\n align-items: flex-start;\n margin: 0.75rem 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.4;\n}\n.mj-checkout-consent[_ngcontent-%COMP%] input[_ngcontent-%COMP%] {\n margin-top: 0.2rem;\n}\n\n\n\n\n\n.mj-checkbox-label[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%], \n.mj-checkout-consent[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%] {\n width: auto;\n height: auto;\n padding: 0;\n border: 0;\n flex: 0 0 auto;\n}\n\n.mj-checkout-promo[_ngcontent-%COMP%] {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__label[_ngcontent-%COMP%] {\n display: block;\n font-size: 0.875rem;\n margin-bottom: 0.25rem;\n}\n.mj-checkout-promo__row[_ngcontent-%COMP%] {\n display: flex;\n gap: 0.5rem;\n}\n.mj-checkout-promo__input[_ngcontent-%COMP%] {\n flex: 1 1 auto;\n}\n.mj-checkout-promo__error[_ngcontent-%COMP%] {\n color: var(--mjo-co-error);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-promo__applied[_ngcontent-%COMP%] {\n color: var(--mjo-co-success);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-member-discount[_ngcontent-%COMP%] {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__apply[_ngcontent-%COMP%] {\n flex: 0 0 auto;\n padding: 8px 14px;\n background: transparent;\n color: var(--mj-primary-color, #2563eb);\n border: 1px solid var(--mjo-co-border);\n border-radius: var(--mj-border-radius, 8px);\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n}\n.mj-checkout-promo__apply[_ngcontent-%COMP%]:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}"], changeDetection: 0 });
1451
1451
  }
1452
1452
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MJCheckoutWidgetComponent, [{
1453
1453
  type: Component,
1454
- args: [{ selector: 'mj-checkout-widget', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mj-checkout-widget-container\"\n [style.--mj-primary-color]=\"activeTheme()?.primaryColor || '#2563eb'\"\n [style.--mj-accent-color]=\"activeTheme()?.accentColor || '#3b82f6'\"\n [style.--mj-border-radius]=\"activeTheme()?.borderRadius || '8px'\"\n [style.--mj-bg-color]=\"activeTheme()?.backgroundColor || '#ffffff'\"\n [style.--mj-text-color]=\"activeTheme()?.textColor || '#0f172a'\"\n [style.--mj-font-family]=\"activeTheme()?.fontFamily || 'inherit'\">\n\n <!-- Widget Header -->\n <header class=\"mj-widget-header\">\n <h2 class=\"mj-widget-title\">{{ config?.title || 'Checkout' }}</h2>\n @if (config?.description) {\n <p class=\"mj-widget-description\">{{ config?.description }}</p>\n }\n </header>\n\n <!-- Error Banner -->\n @if (displayErrorMessage()) {\n <div class=\"mj-widget-error-banner\" role=\"alert\">\n <span class=\"mj-error-icon\">\u26A0\uFE0F</span>\n <span>{{ displayErrorMessage() }}</span>\n </div>\n }\n\n <!-- Order Item & Pricing Summary -->\n <div class=\"mj-widget-summary-card\">\n <div class=\"mj-summary-row\">\n <div class=\"mj-summary-item-info\">\n <span class=\"mj-product-name\">{{ config?.productName || 'Order Item' }}</span>\n @if (isFree()) {\n <span class=\"mj-badge-free\">FREE</span>\n }\n </div>\n <div class=\"mj-summary-price\">\n @if (isFree()) {\n <span class=\"mj-price-free\">$0.00</span>\n } @else {\n <span class=\"mj-price-amount\">{{ currencySymbol() }}{{ (config?.unitPrice || 0).toFixed(2) }}</span>\n }\n </div>\n </div>\n\n @if (config?.allowQuantity) {\n <div class=\"mj-quantity-selector-row\">\n <label for=\"quantityInput\" class=\"mj-label\">Quantity</label>\n <div class=\"mj-qty-controls\">\n <button type=\"button\" class=\"mj-qty-btn\" (click)=\"onQuantityChange(quantity() - 1)\" [disabled]=\"quantity() <= 1\">-</button>\n <input id=\"quantityInput\" type=\"number\" class=\"mj-qty-input\" [ngModel]=\"quantity()\" (ngModelChange)=\"onQuantityChange($event)\" min=\"1\" [max]=\"config?.maxQuantity || 50\" />\n <button type=\"button\" class=\"mj-qty-btn\" (click)=\"onQuantityChange(quantity() + 1)\" [disabled]=\"quantity() >= (config?.maxQuantity || 50)\">+</button>\n </div>\n </div>\n }\n </div>\n\n <!-- Registration / Contact / Product Extension Form Section -->\n <section class=\"mj-widget-form-section\">\n @if (isSingleUnit()) {\n <!-- Single Unit / Primary Form -->\n <h3 class=\"mj-section-title\">Details</h3>\n <div class=\"mj-form-grid\">\n @for (field of activeFieldDefs(); track field.name) {\n <div class=\"mj-form-group\" [class.full-width]=\"field.type === 'textarea' || field.name === 'email' || field.name === 'Email'\">\n <label class=\"mj-label\">\n {{ field.label }}\n @if (field.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n\n @switch (field.type) {\n @case ('textarea') {\n <textarea\n class=\"mj-input mj-textarea\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\">\n </textarea>\n }\n @case ('select') {\n <select\n class=\"mj-select\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [required]=\"field.required || false\">\n <option [ngValue]=\"''\">Select {{ field.label }}</option>\n @for (opt of field.options; track opt.value) {\n <option [ngValue]=\"opt.value\">{{ opt.label }}</option>\n }\n </select>\n }\n @case ('boolean') {\n <label class=\"mj-checkbox-label\">\n <input\n type=\"checkbox\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\" />\n <span>{{ field.label }}</span>\n </label>\n }\n @case ('number') {\n <input\n type=\"number\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\" />\n }\n @case ('date') {\n <input\n type=\"date\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [required]=\"field.required || false\" />\n }\n @default {\n <input\n [type]=\"field.name.toLowerCase().includes('email') ? 'email' : 'text'\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [readonly]=\"isLockedEmail(0, field.name)\"\n [required]=\"field.required || false\" />\n @if (isLockedEmail(0, field.name)) {\n <p class=\"mj-field-hint\">Your member discount is tied to this verified e-mail.</p>\n }\n }\n }\n </div>\n }\n </div>\n } @else {\n <!-- Multi-Unit Matrix (Repeating Fieldsets for Quantity > 1) -->\n <div class=\"mj-multi-attendee-header\">\n <h3 class=\"mj-section-title\">Item Details ({{ quantity() }})</h3>\n <button type=\"button\" class=\"mj-btn-link\" (click)=\"copyPrimaryToAll()\">Copy Primary Info to All</button>\n </div>\n\n <div class=\"mj-attendee-matrix\">\n @for (unit of units(); track $index) {\n <div class=\"mj-attendee-card\">\n <div class=\"mj-attendee-card-title\">Item {{ $index + 1 }}</div>\n <div class=\"mj-form-grid\">\n @for (field of activeFieldDefs(); track field.name) {\n <div class=\"mj-form-group\" [class.full-width]=\"field.type === 'textarea' || field.name === 'email' || field.name === 'Email'\">\n <label class=\"mj-label\">\n {{ field.label }}\n @if (field.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n\n @switch (field.type) {\n @case ('textarea') {\n <textarea\n class=\"mj-input mj-textarea\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\">\n </textarea>\n }\n @case ('select') {\n <select\n class=\"mj-select\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [required]=\"field.required || false\">\n <option [ngValue]=\"''\">Select {{ field.label }}</option>\n @for (opt of field.options; track opt.value) {\n <option [ngValue]=\"opt.value\">{{ opt.label }}</option>\n }\n </select>\n }\n @case ('boolean') {\n <label class=\"mj-checkbox-label\">\n <input\n type=\"checkbox\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\" />\n <span>{{ field.label }}</span>\n </label>\n }\n @case ('number') {\n <input\n type=\"number\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\" />\n }\n @case ('date') {\n <input\n type=\"date\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [required]=\"field.required || false\" />\n }\n @default {\n <input\n [type]=\"field.name.toLowerCase().includes('email') ? 'email' : 'text'\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [readonly]=\"isLockedEmail($index, field.name)\"\n [required]=\"field.required || false\" />\n @if (isLockedEmail($index, field.name)) {\n <p class=\"mj-field-hint\">Your member discount is tied to this verified e-mail.</p>\n }\n }\n }\n </div>\n }\n </div>\n </div>\n }\n </div>\n }\n </section>\n\n <!-- Billing Location \u2014 required so the sale can be placed in a tax jurisdiction -->\n <section class=\"mj-widget-form-section\">\n <h3 class=\"mj-section-title\">Billing Location</h3>\n <div class=\"mj-form-grid\">\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-country'\">\n Country <span class=\"mj-required\">*</span>\n </label>\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-billing-country'\"\n autocomplete=\"country\"\n [ngModel]=\"billingCountry()\"\n (ngModelChange)=\"onBillingCountryChange($event)\"\n required>\n <option [ngValue]=\"''\">Select country</option>\n @for (c of billingCountries; track c.Code) {\n <option [ngValue]=\"c.Code\">{{ c.Name }}</option>\n }\n </select>\n </div>\n @if (billingRegions().length > 0) {\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-region'\">\n State / Province <span class=\"mj-required\">*</span>\n </label>\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-billing-region'\"\n autocomplete=\"address-level1\"\n [ngModel]=\"billingRegion()\"\n (ngModelChange)=\"onBillingRegionChange($event)\"\n required>\n <option [ngValue]=\"''\">Select state or province</option>\n @for (r of billingRegions(); track r.Code) {\n <option [ngValue]=\"r.Code\">{{ r.Name }}</option>\n }\n </select>\n </div>\n }\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-postal'\">\n Postal Code\n @if (billingPostalRequired()) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n <input\n type=\"text\"\n class=\"mj-input\"\n [id]=\"widgetInstanceId + '-billing-postal'\"\n autocomplete=\"postal-code\"\n maxlength=\"20\"\n [ngModel]=\"billingPostalCode()\"\n (ngModelChange)=\"onBillingPostalCodeChange($event)\"\n [required]=\"billingPostalRequired()\" />\n </div>\n </div>\n </section>\n <!-- Questions from the widget's Configuration; answers are recorded on the order -->\n @if (questions().length > 0) {\n <section class=\"mj-widget-form-section\">\n <h3 class=\"mj-section-title\">A few questions</h3>\n <div class=\"mj-form-grid\">\n @for (question of questions(); track question.key) {\n <div class=\"mj-form-group full-width\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-q-' + question.key\">\n {{ question.label }}\n @if (question.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n @if (question.type === 'select') {\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-q-' + question.key\"\n [ngModel]=\"answerFor(question.key).Value ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { Value: $event })\"\n [required]=\"question.required || false\">\n <option [ngValue]=\"''\">Select an answer</option>\n @for (opt of question.options; track optionValue(opt)) {\n <option [ngValue]=\"optionValue(opt)\">{{ optionLabel(opt) }}</option>\n }\n </select>\n @if (isOtherChosen(question)) {\n <input\n type=\"text\"\n class=\"mj-input mj-question-other\"\n [attr.aria-label]=\"question.label + ' (please specify)'\"\n placeholder=\"Please specify\"\n [attr.maxlength]=\"answerMaxLength(question)\"\n [ngModel]=\"answerFor(question.key).OtherText ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { OtherText: $event })\"\n required />\n }\n } @else {\n <input\n type=\"text\"\n class=\"mj-input\"\n [id]=\"widgetInstanceId + '-q-' + question.key\"\n [attr.maxlength]=\"answerMaxLength(question)\"\n [ngModel]=\"answerFor(question.key).Value ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { Value: $event })\"\n [required]=\"question.required || false\" />\n }\n </div>\n }\n </div>\n </section>\n }\n\n <!-- Choice groups from the widget's Configuration; the picks are recorded on the order line -->\n @for (group of choiceGroups(); track group.key) {\n <section class=\"mj-widget-form-section\">\n <fieldset class=\"mj-choice-group\">\n <legend class=\"mj-section-title\">\n {{ group.label }}\n <span class=\"mj-choice-count\">(choose {{ choiceCount(group) }})</span>\n @if (group.min > 0) {\n <span class=\"mj-required\">*</span>\n }\n </legend>\n <div class=\"mj-choice-options\">\n @for (opt of group.options; track choiceValue(opt)) {\n <label\n class=\"mj-checkbox-label\"\n [class.is-disabled]=\"isGroupFull(group) && !isChosen(group.key, choiceValue(opt))\">\n <input\n type=\"checkbox\"\n [checked]=\"isChosen(group.key, choiceValue(opt))\"\n [disabled]=\"isGroupFull(group) && !isChosen(group.key, choiceValue(opt))\"\n (change)=\"toggleChoice(group, choiceValue(opt))\" />\n <span>{{ choiceLabel(opt) }}</span>\n </label>\n }\n </div>\n </fieldset>\n </section>\n }\n\n <!-- Stripe Embedded Payment Section -->\n @if (!isFree()) {\n <section class=\"mj-widget-payment-section\">\n <h3 class=\"mj-section-title\">Payment</h3>\n <div class=\"mj-stripe-container\">\n <div id=\"stripe-card-element\" class=\"mj-stripe-mount-point\">\n <!-- Stripe.js mounts secure hosted Elements iframe here -->\n </div>\n <div class=\"mj-stripe-badge\">\n <span class=\"mj-stripe-lock-icon\">\uD83D\uDD12</span>\n <span>Secured by Stripe \u2022 PCI-DSS Level 1 Certified \u2022 End-to-end Encrypted</span>\n </div>\n </div>\n </section>\n\n @if (allowsPromotionCodes()) {\n <div class=\"mj-checkout-promo\">\n <label class=\"mj-checkout-promo__label\" for=\"{{ widgetInstanceId }}-promo\">Promo code</label>\n <div class=\"mj-checkout-promo__row\">\n <input id=\"{{ widgetInstanceId }}-promo\" type=\"text\" class=\"mj-input mj-checkout-promo__input\" autocomplete=\"off\" maxlength=\"60\"\n [value]=\"promotionCodeInput()\"\n (input)=\"promotionCodeInput.set($any($event.target).value)\"\n (keydown.enter)=\"applyPromotionCode()\"\n [disabled]=\"isProcessing\" />\n <button type=\"button\" class=\"mj-checkout-promo__apply\"\n [disabled]=\"isProcessing || !promotionCodeInput().trim()\"\n (click)=\"applyPromotionCode()\">Apply</button>\n </div>\n @if (promotionError) {\n <p class=\"mj-checkout-promo__error\" role=\"alert\">{{ promotionError }}</p>\n } @else if (activePromotion(); as promo) {\n <p class=\"mj-checkout-promo__applied\" role=\"status\">\n {{ promo.code }} applied: \u2212{{ currencySymbol() }}{{ promo.discount.toFixed(2) }}\n </p>\n }\n </div>\n }\n\n @if (activeMemberDiscount(); as member) {\n <p class=\"mj-checkout-promo__applied mj-checkout-member-discount\" role=\"status\">\n {{ member.code ? member.code + ' member discount' : 'Member discount' }}: \u2212{{ currencySymbol() }}{{ member.discount.toFixed(2) }}\n </p>\n }\n\n @if (autoRenewConsentText(); as consentText) {\n <label class=\"mj-checkout-consent\">\n <input type=\"checkbox\"\n [checked]=\"autoRenewConsent()\"\n (change)=\"autoRenewConsent.set($any($event.target).checked)\"\n [disabled]=\"isProcessing\" />\n <span>{{ consentText }}</span>\n </label>\n }\n\n <!-- Final Total Line -->\n @if (quotedTax !== null) {\n <div class=\"mj-checkout-total-row\">\n <span class=\"mj-total-label\">Sales Tax</span>\n <span class=\"mj-total-amount\">{{ currencySymbol() }}{{ (quotedTax ?? 0).toFixed(2) }}</span>\n </div>\n }\n <div class=\"mj-checkout-total-row\">\n <span class=\"mj-total-label\">Total Due</span>\n <span class=\"mj-total-amount\">{{ currencySymbol() }}{{ totalGross().toFixed(2) }}</span>\n </div>\n }\n\n <!-- Actions -->\n <div class=\"mj-widget-actions\">\n <button type=\"button\" class=\"mj-btn-submit\" [disabled]=\"!isFormValid() || isProcessing\" (click)=\"handleSubmit()\">\n @if (isProcessing) {\n <span class=\"mj-spinner\"></span>\n <span>Processing...</span>\n } @else if (isFree()) {\n <span>Complete Free Registration</span>\n } @else {\n <span>Pay {{ currencySymbol() }}{{ totalGross().toFixed(2) }}</span>\n }\n </button>\n\n <button type=\"button\" class=\"mj-btn-cancel\" [disabled]=\"isProcessing\" (click)=\"cancelled.emit()\">\n Cancel\n </button>\n </div>\n</div>\n", styles: [":host {\n display: block;\n font-family: var(--mj-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n color: var(--mj-text-color, #1e293b);\n}\n\n.mj-checkout-widget-container {\n max-width: 560px;\n margin: 0 auto;\n background: var(--mj-bg-color, #ffffff);\n border: 1px solid #e2e8f0;\n border-radius: var(--mj-border-radius, 8px);\n padding: 24px;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);\n}\n\n.mj-widget-header {\n margin-bottom: 20px;\n}\n\n.mj-widget-title {\n margin: 0 0 6px 0;\n font-size: 1.35rem;\n font-weight: 700;\n color: var(--mj-text-color, #0f172a);\n}\n\n.mj-widget-description {\n margin: 0;\n font-size: 0.9rem;\n color: #64748b;\n line-height: 1.4;\n}\n\n.mj-widget-error-banner {\n display: flex;\n align-items: center;\n gap: 8px;\n background: #fef2f2;\n border: 1px solid #f87171;\n color: #991b1b;\n padding: 10px 14px;\n border-radius: 6px;\n margin-bottom: 18px;\n font-size: 0.875rem;\n}\n\n.mj-error-icon {\n font-size: 1rem;\n}\n\n.mj-widget-summary-card {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px 16px;\n margin-bottom: 20px;\n}\n\n.mj-summary-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.mj-summary-price {\n display: flex;\n align-items: center;\n}\n\n.mj-widget-form-section {\n margin-bottom: 20px;\n}\n\n.mj-summary-item-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mj-product-name {\n font-weight: 600;\n font-size: 1rem;\n color: #1e293b;\n}\n\n.mj-badge-free {\n background: #dcfce7;\n color: #166534;\n font-size: 0.75rem;\n font-weight: 700;\n padding: 2px 6px;\n border-radius: 4px;\n}\n\n.mj-price-free {\n font-weight: 700;\n color: #166534;\n font-size: 1.1rem;\n}\n\n.mj-price-amount {\n font-weight: 700;\n color: #0f172a;\n font-size: 1.1rem;\n}\n\n.mj-quantity-selector-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px dashed #cbd5e1;\n}\n\n.mj-qty-controls {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.mj-qty-btn {\n width: 28px;\n height: 28px;\n background: #ffffff;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n cursor: pointer;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.mj-qty-btn:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.mj-qty-input {\n width: 44px;\n height: 28px;\n text-align: center;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n font-weight: 600;\n}\n\n.mj-section-title {\n font-size: 1rem;\n font-weight: 600;\n margin: 0 0 12px 0;\n color: #334155;\n}\n\n.mj-form-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 18px;\n}\n\n.mj-form-group {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.mj-form-group.full-width {\n grid-column: 1 / -1;\n}\n\n.mj-label {\n font-size: 0.8rem;\n font-weight: 500;\n color: #475569;\n}\n\n.mj-required {\n color: #ef4444;\n}\n\n.mj-input, .mj-select {\n padding: 8px 12px;\n font-size: 0.9rem;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n background: #ffffff;\n color: #1e293b;\n outline: none;\n transition: border-color 0.15s ease;\n width: 100%;\n box-sizing: border-box;\n}\n\n.mj-textarea {\n min-height: 70px;\n resize: vertical;\n font-family: inherit;\n}\n\n.mj-select {\n min-height: 38px;\n}\n\n.mj-checkbox-label {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 400;\n color: #334155;\n margin-top: 4px;\n}\n\n/* The free-text answer that appears under a question's \"Other\" choice. */\n.mj-question-other {\n margin-top: 8px;\n}\n\n/* A choice group: its options stacked, with how many to pick beside the heading. */\n.mj-choice-group {\n border: 0;\n margin: 0;\n padding: 0;\n}\n\n.mj-choice-count {\n font-weight: normal;\n color: #64748b;\n}\n\n.mj-choice-options {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mj-checkbox-label.is-disabled {\n cursor: not-allowed;\n opacity: 0.55;\n}\n\n.mj-input:focus, .mj-select:focus {\n border-color: var(--mj-primary-color, #2563eb);\n box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);\n}\n\n/* The e-mail a member token was signed for (#919): shown, not editable. */\n.mj-input[readonly] {\n background: #f1f5f9;\n color: #475569;\n cursor: default;\n}\n\n.mj-field-hint {\n font-size: 0.8rem;\n color: #64748b;\n margin: 0.25rem 0 0;\n}\n\n.mj-multi-attendee-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n}\n\n.mj-btn-link {\n background: none;\n border: none;\n color: var(--mj-primary-color, #2563eb);\n font-size: 0.8rem;\n cursor: pointer;\n text-decoration: underline;\n padding: 0;\n}\n\n.mj-attendee-matrix {\n display: flex;\n flex-direction: column;\n gap: 14px;\n margin-bottom: 20px;\n}\n\n.mj-attendee-card {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 12px 14px;\n}\n\n.mj-attendee-card-title {\n font-size: 0.85rem;\n font-weight: 600;\n color: #475569;\n margin-bottom: 10px;\n}\n\n/* Stripe Payment Container */\n.mj-widget-payment-section {\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid #e2e8f0;\n}\n\n.mj-stripe-container {\n background: #ffffff;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px;\n margin-bottom: 16px;\n}\n\n.mj-stripe-mount-point {\n min-height: 40px;\n}\n\n.mj-stripe-badge {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 10px;\n font-size: 0.75rem;\n color: #64748b;\n}\n\n.mj-stripe-lock-icon {\n font-size: 0.85rem;\n}\n\n.mj-checkout-total-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 0;\n border-top: 1px solid #e2e8f0;\n margin-top: 10px;\n margin-bottom: 18px;\n}\n\n.mj-total-label {\n font-weight: 700;\n font-size: 1.05rem;\n color: #0f172a;\n}\n\n.mj-total-amount {\n font-weight: 800;\n font-size: 1.25rem;\n color: var(--mj-primary-color, #2563eb);\n}\n\n.mj-widget-actions {\n margin-top: 12px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mj-btn-submit {\n width: 100%;\n padding: 12px;\n background: var(--mj-primary-color, #2563eb);\n color: #ffffff;\n font-size: 1rem;\n font-weight: 600;\n border: none;\n border-radius: var(--mj-border-radius, 8px);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n transition: opacity 0.15s ease;\n}\n\n.mj-btn-submit:hover:not(:disabled) {\n opacity: 0.92;\n}\n\n.mj-btn-submit:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mj-btn-cancel {\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n color: #64748b;\n font-size: 0.875rem;\n font-weight: 500;\n border: none;\n cursor: pointer;\n text-align: center;\n}\n\n.mj-btn-cancel:hover:not(:disabled) {\n color: #334155;\n text-decoration: underline;\n}\n\n.mj-spinner {\n width: 16px;\n height: 16px;\n border: 2px solid #ffffff;\n border-top-color: transparent;\n border-radius: 50%;\n animation: mj-spin 0.8s linear infinite;\n}\n\n@keyframes mj-spin {\n to { transform: rotate(360deg); }\n}\n\n.mj-checkout-consent {\n display: flex;\n gap: 0.5rem;\n align-items: flex-start;\n margin: 0.75rem 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.4;\n}\n.mj-checkout-consent input {\n margin-top: 0.2rem;\n}\n\n/* Checkboxes keep their native size even when the host page styles every input\n (e.g. `input { width: 100% }`): this rule is scoped to the widget, so it outranks\n a plain element or class selector on the host page. */\n.mj-checkbox-label input[type=checkbox],\n.mj-checkout-consent input[type=checkbox] {\n width: auto;\n height: auto;\n padding: 0;\n border: 0;\n flex: 0 0 auto;\n}\n\n.mj-checkout-promo {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__label {\n display: block;\n font-size: 0.875rem;\n margin-bottom: 0.25rem;\n}\n.mj-checkout-promo__row {\n display: flex;\n gap: 0.5rem;\n}\n.mj-checkout-promo__input {\n flex: 1 1 auto;\n}\n.mj-checkout-promo__error {\n color: var(--mj-error-color, #b91c1c);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-promo__applied {\n color: var(--mj-success-color, #15803d);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-member-discount {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__apply {\n flex: 0 0 auto;\n padding: 8px 14px;\n background: transparent;\n color: var(--mj-primary-color, #2563eb);\n border: 1px solid var(--mj-border-color, #cbd5e1);\n border-radius: var(--mj-border-radius, 8px);\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n}\n.mj-checkout-promo__apply:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n"] }]
1454
+ args: [{ selector: 'mj-checkout-widget', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mj-checkout-widget-container\"\n [style.--mj-primary-color]=\"activeTheme()?.primaryColor || '#2563eb'\"\n [style.--mj-accent-color]=\"activeTheme()?.accentColor || '#3b82f6'\"\n [style.--mj-border-radius]=\"activeTheme()?.borderRadius || '8px'\"\n [style.--mj-bg-color]=\"activeTheme()?.backgroundColor || '#ffffff'\"\n [style.--mj-text-color]=\"activeTheme()?.textColor || '#0f172a'\"\n [style.--mj-font-family]=\"activeTheme()?.fontFamily || 'inherit'\">\n\n <!-- Widget Header -->\n <header class=\"mj-widget-header\">\n <h2 class=\"mj-widget-title\">{{ config?.title || 'Checkout' }}</h2>\n @if (config?.description) {\n <p class=\"mj-widget-description\">{{ config?.description }}</p>\n }\n </header>\n\n <!-- Error Banner -->\n @if (displayErrorMessage()) {\n <div class=\"mj-widget-error-banner\" role=\"alert\">\n <span class=\"mj-error-icon\">\u26A0\uFE0F</span>\n <span>{{ displayErrorMessage() }}</span>\n </div>\n }\n\n <!-- Order Item & Pricing Summary -->\n <div class=\"mj-widget-summary-card\">\n <div class=\"mj-summary-row\">\n <div class=\"mj-summary-item-info\">\n <span class=\"mj-product-name\">{{ config?.productName || 'Order Item' }}</span>\n @if (isFree()) {\n <span class=\"mj-badge-free\">FREE</span>\n }\n </div>\n <div class=\"mj-summary-price\">\n @if (isFree()) {\n <span class=\"mj-price-free\">$0.00</span>\n } @else {\n <span class=\"mj-price-amount\">{{ currencySymbol() }}{{ (config?.unitPrice || 0).toFixed(2) }}</span>\n }\n </div>\n </div>\n\n @if (config?.allowQuantity) {\n <div class=\"mj-quantity-selector-row\">\n <label for=\"quantityInput\" class=\"mj-label\">Quantity</label>\n <div class=\"mj-qty-controls\">\n <button type=\"button\" class=\"mj-qty-btn\" (click)=\"onQuantityChange(quantity() - 1)\" [disabled]=\"quantity() <= 1\">-</button>\n <input id=\"quantityInput\" type=\"number\" class=\"mj-qty-input\" [ngModel]=\"quantity()\" (ngModelChange)=\"onQuantityChange($event)\" min=\"1\" [max]=\"config?.maxQuantity || 50\" />\n <button type=\"button\" class=\"mj-qty-btn\" (click)=\"onQuantityChange(quantity() + 1)\" [disabled]=\"quantity() >= (config?.maxQuantity || 50)\">+</button>\n </div>\n </div>\n }\n </div>\n\n <!-- Registration / Contact / Product Extension Form Section -->\n <section class=\"mj-widget-form-section\">\n @if (isSingleUnit()) {\n <!-- Single Unit / Primary Form -->\n <h3 class=\"mj-section-title\">Details</h3>\n <div class=\"mj-form-grid\">\n @for (field of activeFieldDefs(); track field.name) {\n <div class=\"mj-form-group\" [class.full-width]=\"field.type === 'textarea' || field.name === 'email' || field.name === 'Email'\">\n <label class=\"mj-label\">\n {{ field.label }}\n @if (field.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n\n @switch (field.type) {\n @case ('textarea') {\n <textarea\n class=\"mj-input mj-textarea\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\">\n </textarea>\n }\n @case ('select') {\n <select\n class=\"mj-select\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [required]=\"field.required || false\">\n <option [ngValue]=\"''\">Select {{ field.label }}</option>\n @for (opt of field.options; track opt.value) {\n <option [ngValue]=\"opt.value\">{{ opt.label }}</option>\n }\n </select>\n }\n @case ('boolean') {\n <label class=\"mj-checkbox-label\">\n <input\n type=\"checkbox\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\" />\n <span>{{ field.label }}</span>\n </label>\n }\n @case ('number') {\n <input\n type=\"number\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\" />\n }\n @case ('date') {\n <input\n type=\"date\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [required]=\"field.required || false\" />\n }\n @default {\n <input\n [type]=\"field.name.toLowerCase().includes('email') ? 'email' : 'text'\"\n class=\"mj-input\"\n [ngModel]=\"units()[0]?.[field.name]\"\n (ngModelChange)=\"updateUnitField(0, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [readonly]=\"isLockedEmail(0, field.name)\"\n [required]=\"field.required || false\" />\n @if (isLockedEmail(0, field.name)) {\n <p class=\"mj-field-hint\">Your member discount is tied to this verified e-mail.</p>\n }\n }\n }\n </div>\n }\n </div>\n } @else {\n <!-- Multi-Unit Matrix (Repeating Fieldsets for Quantity > 1) -->\n <div class=\"mj-multi-attendee-header\">\n <h3 class=\"mj-section-title\">Item Details ({{ quantity() }})</h3>\n <button type=\"button\" class=\"mj-btn-link\" (click)=\"copyPrimaryToAll()\">Copy Primary Info to All</button>\n </div>\n\n <div class=\"mj-attendee-matrix\">\n @for (unit of units(); track $index) {\n <div class=\"mj-attendee-card\">\n <div class=\"mj-attendee-card-title\">Item {{ $index + 1 }}</div>\n <div class=\"mj-form-grid\">\n @for (field of activeFieldDefs(); track field.name) {\n <div class=\"mj-form-group\" [class.full-width]=\"field.type === 'textarea' || field.name === 'email' || field.name === 'Email'\">\n <label class=\"mj-label\">\n {{ field.label }}\n @if (field.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n\n @switch (field.type) {\n @case ('textarea') {\n <textarea\n class=\"mj-input mj-textarea\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\">\n </textarea>\n }\n @case ('select') {\n <select\n class=\"mj-select\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [required]=\"field.required || false\">\n <option [ngValue]=\"''\">Select {{ field.label }}</option>\n @for (opt of field.options; track opt.value) {\n <option [ngValue]=\"opt.value\">{{ opt.label }}</option>\n }\n </select>\n }\n @case ('boolean') {\n <label class=\"mj-checkbox-label\">\n <input\n type=\"checkbox\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\" />\n <span>{{ field.label }}</span>\n </label>\n }\n @case ('number') {\n <input\n type=\"number\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [required]=\"field.required || false\" />\n }\n @case ('date') {\n <input\n type=\"date\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [required]=\"field.required || false\" />\n }\n @default {\n <input\n [type]=\"field.name.toLowerCase().includes('email') ? 'email' : 'text'\"\n class=\"mj-input\"\n [ngModel]=\"unit[field.name]\"\n (ngModelChange)=\"updateUnitField($index, field.name, $event)\"\n [placeholder]=\"field.placeholder || ''\"\n [readonly]=\"isLockedEmail($index, field.name)\"\n [required]=\"field.required || false\" />\n @if (isLockedEmail($index, field.name)) {\n <p class=\"mj-field-hint\">Your member discount is tied to this verified e-mail.</p>\n }\n }\n }\n </div>\n }\n </div>\n </div>\n }\n </div>\n }\n </section>\n\n <!-- Billing Location \u2014 required so the sale can be placed in a tax jurisdiction -->\n <section class=\"mj-widget-form-section\">\n <h3 class=\"mj-section-title\">Billing Location</h3>\n <div class=\"mj-form-grid\">\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-country'\">\n Country <span class=\"mj-required\">*</span>\n </label>\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-billing-country'\"\n autocomplete=\"country\"\n [ngModel]=\"billingCountry()\"\n (ngModelChange)=\"onBillingCountryChange($event)\"\n required>\n <option [ngValue]=\"''\">Select country</option>\n @for (c of billingCountries; track c.Code) {\n <option [ngValue]=\"c.Code\">{{ c.Name }}</option>\n }\n </select>\n </div>\n @if (billingRegions().length > 0) {\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-region'\">\n State / Province <span class=\"mj-required\">*</span>\n </label>\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-billing-region'\"\n autocomplete=\"address-level1\"\n [ngModel]=\"billingRegion()\"\n (ngModelChange)=\"onBillingRegionChange($event)\"\n required>\n <option [ngValue]=\"''\">Select state or province</option>\n @for (r of billingRegions(); track r.Code) {\n <option [ngValue]=\"r.Code\">{{ r.Name }}</option>\n }\n </select>\n </div>\n }\n <div class=\"mj-form-group\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-billing-postal'\">\n Postal Code\n @if (billingPostalRequired()) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n <input\n type=\"text\"\n class=\"mj-input\"\n [id]=\"widgetInstanceId + '-billing-postal'\"\n autocomplete=\"postal-code\"\n maxlength=\"20\"\n [ngModel]=\"billingPostalCode()\"\n (ngModelChange)=\"onBillingPostalCodeChange($event)\"\n [required]=\"billingPostalRequired()\" />\n </div>\n </div>\n </section>\n <!-- Questions from the widget's Configuration; answers are recorded on the order -->\n @if (questions().length > 0) {\n <section class=\"mj-widget-form-section\">\n <h3 class=\"mj-section-title\">A few questions</h3>\n <div class=\"mj-form-grid\">\n @for (question of questions(); track question.key) {\n <div class=\"mj-form-group full-width\">\n <label class=\"mj-label\" [attr.for]=\"widgetInstanceId + '-q-' + question.key\">\n {{ question.label }}\n @if (question.required) {\n <span class=\"mj-required\">*</span>\n }\n </label>\n @if (question.type === 'select') {\n <select\n class=\"mj-select\"\n [id]=\"widgetInstanceId + '-q-' + question.key\"\n [ngModel]=\"answerFor(question.key).Value ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { Value: $event })\"\n [required]=\"question.required || false\">\n <option [ngValue]=\"''\">Select an answer</option>\n @for (opt of question.options; track optionValue(opt)) {\n <option [ngValue]=\"optionValue(opt)\">{{ optionLabel(opt) }}</option>\n }\n </select>\n @if (isOtherChosen(question)) {\n <input\n type=\"text\"\n class=\"mj-input mj-question-other\"\n [attr.aria-label]=\"question.label + ' (please specify)'\"\n placeholder=\"Please specify\"\n [attr.maxlength]=\"answerMaxLength(question)\"\n [ngModel]=\"answerFor(question.key).OtherText ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { OtherText: $event })\"\n required />\n }\n } @else {\n <input\n type=\"text\"\n class=\"mj-input\"\n [id]=\"widgetInstanceId + '-q-' + question.key\"\n [attr.maxlength]=\"answerMaxLength(question)\"\n [ngModel]=\"answerFor(question.key).Value ?? ''\"\n (ngModelChange)=\"updateAnswer(question.key, { Value: $event })\"\n [required]=\"question.required || false\" />\n }\n </div>\n }\n </div>\n </section>\n }\n\n <!-- Choice groups from the widget's Configuration; the picks are recorded on the order line -->\n @for (group of choiceGroups(); track group.key) {\n <section class=\"mj-widget-form-section\">\n <fieldset class=\"mj-choice-group\">\n <legend class=\"mj-section-title\">\n {{ group.label }}\n <span class=\"mj-choice-count\">(choose {{ choiceCount(group) }})</span>\n @if (group.min > 0) {\n <span class=\"mj-required\">*</span>\n }\n </legend>\n <div class=\"mj-choice-options\">\n @for (opt of group.options; track choiceValue(opt)) {\n <label\n class=\"mj-checkbox-label\"\n [class.is-disabled]=\"isGroupFull(group) && !isChosen(group.key, choiceValue(opt))\">\n <input\n type=\"checkbox\"\n [checked]=\"isChosen(group.key, choiceValue(opt))\"\n [disabled]=\"isGroupFull(group) && !isChosen(group.key, choiceValue(opt))\"\n (change)=\"toggleChoice(group, choiceValue(opt))\" />\n <span>{{ choiceLabel(opt) }}</span>\n </label>\n }\n </div>\n </fieldset>\n </section>\n }\n\n <!-- Stripe Embedded Payment Section -->\n @if (!isFree()) {\n <section class=\"mj-widget-payment-section\">\n <h3 class=\"mj-section-title\">Payment</h3>\n <div class=\"mj-stripe-container\">\n <div id=\"stripe-card-element\" class=\"mj-stripe-mount-point\">\n <!-- Stripe.js mounts secure hosted Elements iframe here -->\n </div>\n <div class=\"mj-stripe-badge\">\n <span class=\"mj-stripe-lock-icon\">\uD83D\uDD12</span>\n <span>Secured by Stripe \u2022 PCI-DSS Level 1 Certified \u2022 End-to-end Encrypted</span>\n </div>\n </div>\n </section>\n\n @if (allowsPromotionCodes()) {\n <div class=\"mj-checkout-promo\">\n <label class=\"mj-checkout-promo__label\" for=\"{{ widgetInstanceId }}-promo\">Promo code</label>\n <div class=\"mj-checkout-promo__row\">\n <input id=\"{{ widgetInstanceId }}-promo\" type=\"text\" class=\"mj-input mj-checkout-promo__input\" autocomplete=\"off\" maxlength=\"60\"\n [value]=\"promotionCodeInput()\"\n (input)=\"promotionCodeInput.set($any($event.target).value)\"\n (keydown.enter)=\"applyPromotionCode()\"\n [disabled]=\"isProcessing\" />\n <button type=\"button\" class=\"mj-checkout-promo__apply\"\n [disabled]=\"isProcessing || !promotionCodeInput().trim()\"\n (click)=\"applyPromotionCode()\">Apply</button>\n </div>\n @if (promotionError) {\n <p class=\"mj-checkout-promo__error\" role=\"alert\">{{ promotionError }}</p>\n } @else if (activePromotion(); as promo) {\n <p class=\"mj-checkout-promo__applied\" role=\"status\">\n {{ promo.code }} applied: \u2212{{ currencySymbol() }}{{ promo.discount.toFixed(2) }}\n </p>\n }\n </div>\n }\n\n @if (activeMemberDiscount(); as member) {\n <p class=\"mj-checkout-promo__applied mj-checkout-member-discount\" role=\"status\">\n {{ member.code ? member.code + ' member discount' : 'Member discount' }}: \u2212{{ currencySymbol() }}{{ member.discount.toFixed(2) }}\n </p>\n }\n\n @if (autoRenewConsentText(); as consentText) {\n <label class=\"mj-checkout-consent\">\n <input type=\"checkbox\"\n [checked]=\"autoRenewConsent()\"\n (change)=\"autoRenewConsent.set($any($event.target).checked)\"\n [disabled]=\"isProcessing\" />\n <span>{{ consentText }}</span>\n </label>\n }\n\n <!-- Final Total Line -->\n @if (quotedTax !== null) {\n <div class=\"mj-checkout-total-row\">\n <span class=\"mj-total-label\">Sales Tax</span>\n <span class=\"mj-total-amount\">{{ currencySymbol() }}{{ (quotedTax ?? 0).toFixed(2) }}</span>\n </div>\n }\n <div class=\"mj-checkout-total-row\">\n <span class=\"mj-total-label\">Total Due</span>\n <span class=\"mj-total-amount\">{{ currencySymbol() }}{{ totalGross().toFixed(2) }}</span>\n </div>\n }\n\n <!-- Actions -->\n <div class=\"mj-widget-actions\">\n <button type=\"button\" class=\"mj-btn-submit\" [disabled]=\"!isFormValid() || isProcessing\" (click)=\"handleSubmit()\">\n @if (isProcessing) {\n <span class=\"mj-spinner\"></span>\n <span>Processing...</span>\n } @else if (isFree()) {\n <span>Complete Free Registration</span>\n } @else {\n <span>Pay {{ currencySymbol() }}{{ totalGross().toFixed(2) }}</span>\n }\n </button>\n\n <button type=\"button\" class=\"mj-btn-cancel\" [disabled]=\"isProcessing\" (click)=\"cancelled.emit()\">\n Cancel\n </button>\n </div>\n</div>\n", styles: [":host {\n display: block;\n font-family: var(--mj-font-family, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif);\n color: var(--mj-text-color, #1e293b);\n}\n\n.mj-checkout-widget-container {\n /* Widget-local colours with no public theme hook. The widget embeds in host pages that\n do not load MJ's tokens, so these stay literal. */\n --mjo-co-border: #cbd5e1;\n --mjo-co-error: #b91c1c;\n --mjo-co-success: #15803d;\n max-width: 560px;\n margin: 0 auto;\n background: var(--mj-bg-color, #ffffff);\n border: 1px solid #e2e8f0;\n border-radius: var(--mj-border-radius, 8px);\n padding: 24px;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);\n}\n\n.mj-widget-header {\n margin-bottom: 20px;\n}\n\n.mj-widget-title {\n margin: 0 0 6px 0;\n font-size: 1.35rem;\n font-weight: 700;\n color: var(--mj-text-color, #0f172a);\n}\n\n.mj-widget-description {\n margin: 0;\n font-size: 0.9rem;\n color: #64748b;\n line-height: 1.4;\n}\n\n.mj-widget-error-banner {\n display: flex;\n align-items: center;\n gap: 8px;\n background: #fef2f2;\n border: 1px solid #f87171;\n color: #991b1b;\n padding: 10px 14px;\n border-radius: 6px;\n margin-bottom: 18px;\n font-size: 0.875rem;\n}\n\n.mj-error-icon {\n font-size: 1rem;\n}\n\n.mj-widget-summary-card {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px 16px;\n margin-bottom: 20px;\n}\n\n.mj-summary-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.mj-summary-price {\n display: flex;\n align-items: center;\n}\n\n.mj-widget-form-section {\n margin-bottom: 20px;\n}\n\n.mj-summary-item-info {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mj-product-name {\n font-weight: 600;\n font-size: 1rem;\n color: #1e293b;\n}\n\n.mj-badge-free {\n background: #dcfce7;\n color: #166534;\n font-size: 0.75rem;\n font-weight: 700;\n padding: 2px 6px;\n border-radius: 4px;\n}\n\n.mj-price-free {\n font-weight: 700;\n color: #166534;\n font-size: 1.1rem;\n}\n\n.mj-price-amount {\n font-weight: 700;\n color: #0f172a;\n font-size: 1.1rem;\n}\n\n.mj-quantity-selector-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px dashed #cbd5e1;\n}\n\n.mj-qty-controls {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.mj-qty-btn {\n width: 28px;\n height: 28px;\n background: #ffffff;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n cursor: pointer;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.mj-qty-btn:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.mj-qty-input {\n width: 44px;\n height: 28px;\n text-align: center;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n font-weight: 600;\n}\n\n.mj-section-title {\n font-size: 1rem;\n font-weight: 600;\n margin: 0 0 12px 0;\n color: #334155;\n}\n\n.mj-form-grid {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n margin-bottom: 18px;\n}\n\n.mj-form-group {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.mj-form-group.full-width {\n grid-column: 1 / -1;\n}\n\n.mj-label {\n font-size: 0.8rem;\n font-weight: 500;\n color: #475569;\n}\n\n.mj-required {\n color: #ef4444;\n}\n\n.mj-input, .mj-select {\n padding: 8px 12px;\n font-size: 0.9rem;\n border: 1px solid #cbd5e1;\n border-radius: 4px;\n background: #ffffff;\n color: #1e293b;\n outline: none;\n transition: border-color 0.15s ease;\n width: 100%;\n box-sizing: border-box;\n}\n\n.mj-textarea {\n min-height: 70px;\n resize: vertical;\n font-family: inherit;\n}\n\n.mj-select {\n min-height: 38px;\n}\n\n.mj-checkbox-label {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 400;\n color: #334155;\n margin-top: 4px;\n}\n\n/* The free-text answer that appears under a question's \"Other\" choice. */\n.mj-question-other {\n margin-top: 8px;\n}\n\n/* A choice group: its options stacked, with how many to pick beside the heading. */\n.mj-choice-group {\n border: 0;\n margin: 0;\n padding: 0;\n}\n\n.mj-choice-count {\n font-weight: normal;\n color: #64748b;\n}\n\n.mj-choice-options {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mj-checkbox-label.is-disabled {\n cursor: not-allowed;\n opacity: 0.55;\n}\n\n.mj-input:focus, .mj-select:focus {\n border-color: var(--mj-primary-color, #2563eb);\n box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);\n}\n\n/* The e-mail a member token was signed for (#919): shown, not editable. */\n.mj-input[readonly] {\n background: #f1f5f9;\n color: #475569;\n cursor: default;\n}\n\n.mj-field-hint {\n font-size: 0.8rem;\n color: #64748b;\n margin: 0.25rem 0 0;\n}\n\n.mj-multi-attendee-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 12px;\n}\n\n.mj-btn-link {\n background: none;\n border: none;\n color: var(--mj-primary-color, #2563eb);\n font-size: 0.8rem;\n cursor: pointer;\n text-decoration: underline;\n padding: 0;\n}\n\n.mj-attendee-matrix {\n display: flex;\n flex-direction: column;\n gap: 14px;\n margin-bottom: 20px;\n}\n\n.mj-attendee-card {\n background: #f8fafc;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 12px 14px;\n}\n\n.mj-attendee-card-title {\n font-size: 0.85rem;\n font-weight: 600;\n color: #475569;\n margin-bottom: 10px;\n}\n\n/* Stripe Payment Container */\n.mj-widget-payment-section {\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid #e2e8f0;\n}\n\n.mj-stripe-container {\n background: #ffffff;\n border: 1px solid #e2e8f0;\n border-radius: 6px;\n padding: 14px;\n margin-bottom: 16px;\n}\n\n.mj-stripe-mount-point {\n min-height: 40px;\n}\n\n.mj-stripe-badge {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 10px;\n font-size: 0.75rem;\n color: #64748b;\n}\n\n.mj-stripe-lock-icon {\n font-size: 0.85rem;\n}\n\n.mj-checkout-total-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 0;\n border-top: 1px solid #e2e8f0;\n margin-top: 10px;\n margin-bottom: 18px;\n}\n\n.mj-total-label {\n font-weight: 700;\n font-size: 1.05rem;\n color: #0f172a;\n}\n\n.mj-total-amount {\n font-weight: 800;\n font-size: 1.25rem;\n color: var(--mj-primary-color, #2563eb);\n}\n\n.mj-widget-actions {\n margin-top: 12px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mj-btn-submit {\n width: 100%;\n padding: 12px;\n background: var(--mj-primary-color, #2563eb);\n color: #ffffff;\n font-size: 1rem;\n font-weight: 600;\n border: none;\n border-radius: var(--mj-border-radius, 8px);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n transition: opacity 0.15s ease;\n}\n\n.mj-btn-submit:hover:not(:disabled) {\n opacity: 0.92;\n}\n\n.mj-btn-submit:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n.mj-btn-cancel {\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n color: #64748b;\n font-size: 0.875rem;\n font-weight: 500;\n border: none;\n cursor: pointer;\n text-align: center;\n}\n\n.mj-btn-cancel:hover:not(:disabled) {\n color: #334155;\n text-decoration: underline;\n}\n\n.mj-spinner {\n width: 16px;\n height: 16px;\n border: 2px solid #ffffff;\n border-top-color: transparent;\n border-radius: 50%;\n animation: mj-spin 0.8s linear infinite;\n}\n\n@keyframes mj-spin {\n to { transform: rotate(360deg); }\n}\n\n.mj-checkout-consent {\n display: flex;\n gap: 0.5rem;\n align-items: flex-start;\n margin: 0.75rem 0;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.4;\n}\n.mj-checkout-consent input {\n margin-top: 0.2rem;\n}\n\n/* Checkboxes keep their native size even when the host page styles every input\n (e.g. `input { width: 100% }`): this rule is scoped to the widget, so it outranks\n a plain element or class selector on the host page. */\n.mj-checkbox-label input[type=checkbox],\n.mj-checkout-consent input[type=checkbox] {\n width: auto;\n height: auto;\n padding: 0;\n border: 0;\n flex: 0 0 auto;\n}\n\n.mj-checkout-promo {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__label {\n display: block;\n font-size: 0.875rem;\n margin-bottom: 0.25rem;\n}\n.mj-checkout-promo__row {\n display: flex;\n gap: 0.5rem;\n}\n.mj-checkout-promo__input {\n flex: 1 1 auto;\n}\n.mj-checkout-promo__error {\n color: var(--mjo-co-error);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-promo__applied {\n color: var(--mjo-co-success);\n font-size: 0.875rem;\n margin: 0.35rem 0 0;\n}\n.mj-checkout-member-discount {\n margin: 0.75rem 0;\n}\n.mj-checkout-promo__apply {\n flex: 0 0 auto;\n padding: 8px 14px;\n background: transparent;\n color: var(--mj-primary-color, #2563eb);\n border: 1px solid var(--mjo-co-border);\n border-radius: var(--mj-border-radius, 8px);\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n}\n.mj-checkout-promo__apply:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n"] }]
1455
1455
  }], () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], { config: [{
1456
1456
  type: Input
1457
1457
  }], distributionSlug: [{
@@ -235,7 +235,7 @@ let BizAppsEventOrderLineFormComponent = class BizAppsEventOrderLineFormComponen
235
235
  i0.ɵɵconditionalCreate(0, BizAppsEventOrderLineFormComponent_Conditional_0_Template, 20, 38, "mj-record-form-container", 0);
236
236
  } if (rf & 2) {
237
237
  i0.ɵɵconditional(ctx.record ? 0 : -1);
238
- } }, dependencies: [i1.MjFormFieldComponent, i1.MjRecordFormContainerComponent, i1.FormPanelSlotComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n}\n\n.mjo-eol-form[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 4px 0;\n}\n\n\n\n\n\n\n\n\n\n.mjo-eol-form[_ngcontent-%COMP%] .mj-forms-field {\n grid-template-columns: minmax(0, 1fr);\n gap: 4px;\n}\n\n.mjo-eol-form[_ngcontent-%COMP%] .mj-forms-field-validation {\n grid-column: 1;\n}\n\n.mjo-eol-event[_ngcontent-%COMP%] {\n display: flex;\n align-items: baseline;\n flex-wrap: wrap;\n gap: 4px 8px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.mjo-eol-event[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-event__name[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-event--missing[_ngcontent-%COMP%], \n.mjo-eol-event--missing[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n}\n\n.mjo-eol-primary-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);\n gap: 12px;\n align-items: start;\n}\n\n@media (max-width: 768px) {\n .mjo-eol-primary-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n}\n\n.mjo-eol-disclosure-bar[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 4px 0;\n}\n\n.mjo-eol-toggle-btn[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n background: none;\n border: none;\n padding: 6px 10px;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 500;\n color: var(--mj-color-text-secondary, #64748b);\n cursor: pointer;\n transition: background 0.15s ease, color 0.15s ease;\n}\n\n.mjo-eol-toggle-btn[_ngcontent-%COMP%]:hover {\n background: var(--mj-color-surface-hover, #f1f5f9);\n color: var(--mj-color-text-primary, #0f172a);\n}\n\n.mjo-eol-has-data-chip[_ngcontent-%COMP%] {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 9999px;\n font-size: 11px;\n font-weight: 600;\n background-color: var(--mj-color-primary-subtle, #eff6ff);\n color: var(--mj-color-primary, #2563eb);\n border: 1px solid var(--mj-color-primary-border, #bfdbfe);\n}\n\n.mjo-eol-details-panel[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 14px;\n background: var(--mj-color-surface-subtle, #f8fafc);\n border: 1px solid var(--mj-color-border-subtle, #e2e8f0);\n border-radius: 8px;\n animation: _ngcontent-%COMP%_mjoFadeDown 0.2s ease-out;\n}\n\n@keyframes _ngcontent-%COMP%_mjoFadeDown {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.mjo-eol-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mjo-eol-group__header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-color-text-muted, #475569);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-eol-group__header[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 11px;\n color: var(--mj-color-primary, #3b82f6);\n}\n\n.mjo-eol-group__grid[_ngcontent-%COMP%] {\n display: grid;\n gap: 12px;\n align-items: start;\n}\n\n.mjo-eol-group__grid--4[_ngcontent-%COMP%] {\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n}\n\n.mjo-eol-group__grid--3[_ngcontent-%COMP%] {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}"] });
238
+ } }, dependencies: [i1.MjFormFieldComponent, i1.MjRecordFormContainerComponent, i1.FormPanelSlotComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n width: 100%;\n}\n\n.mjo-eol-form[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 4px 0;\n}\n\n\n\n\n\n\n\n\n\n.mjo-eol-form[_ngcontent-%COMP%] .mj-forms-field {\n grid-template-columns: minmax(0, 1fr);\n gap: 4px;\n}\n\n.mjo-eol-form[_ngcontent-%COMP%] .mj-forms-field-validation {\n grid-column: 1;\n}\n\n.mjo-eol-event[_ngcontent-%COMP%] {\n display: flex;\n align-items: baseline;\n flex-wrap: wrap;\n gap: 4px 8px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.mjo-eol-event[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-event__name[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-event--missing[_ngcontent-%COMP%], \n.mjo-eol-event--missing[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n}\n\n.mjo-eol-primary-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);\n gap: 12px;\n align-items: start;\n}\n\n@media (max-width: 768px) {\n .mjo-eol-primary-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n}\n\n.mjo-eol-disclosure-bar[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n padding: 4px 0;\n}\n\n.mjo-eol-toggle-btn[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n background: none;\n border: none;\n padding: 6px 10px;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.15s ease, color 0.15s ease;\n}\n\n.mjo-eol-toggle-btn[_ngcontent-%COMP%]:hover {\n background: var(--mj-bg-surface-hover);\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-has-data-chip[_ngcontent-%COMP%] {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 9999px;\n font-size: 11px;\n font-weight: 600;\n background-color: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid color-mix(in srgb, var(--mj-brand-primary) 40%, var(--mj-border-default));\n}\n\n.mjo-eol-details-panel[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 8px;\n animation: _ngcontent-%COMP%_mjoFadeDown 0.2s ease-out;\n}\n\n@keyframes _ngcontent-%COMP%_mjoFadeDown {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.mjo-eol-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mjo-eol-group__header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-eol-group__header[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 11px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-group__grid[_ngcontent-%COMP%] {\n display: grid;\n gap: 12px;\n align-items: start;\n}\n\n.mjo-eol-group__grid--4[_ngcontent-%COMP%] {\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n}\n\n.mjo-eol-group__grid--3[_ngcontent-%COMP%] {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}"] });
239
239
  };
240
240
  BizAppsEventOrderLineFormComponent = __decorate([
241
241
  RegisterClass(BaseFormComponent, 'MJ_BizApps_Orders: Event Order Lines', 10)
@@ -243,7 +243,7 @@ BizAppsEventOrderLineFormComponent = __decorate([
243
243
  export { BizAppsEventOrderLineFormComponent };
244
244
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BizAppsEventOrderLineFormComponent, [{
245
245
  type: Component,
246
- args: [{ standalone: false, selector: 'bizapps-event-order-line-form', template: "@if (record) {\n<mj-record-form-container [Record]=\"record\" [FormComponent]=\"this\"\n (Navigate)=\"OnFormNavigate($event)\"\n (DeleteRequested)=\"OnDeleteRequested()\"\n (FavoriteToggled)=\"OnFavoriteToggled()\"\n (HistoryRequested)=\"OnHistoryRequested()\"\n (ListManagementRequested)=\"OnListManagementRequested()\">\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"before-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n <div class=\"mjo-eol-form\">\n <!-- 0. The event this line is for (read-only; the line's product is the event) -->\n @if (EventLookupDone) {\n @if (LineEvent; as ev) {\n <div class=\"mjo-eol-event\" data-testid=\"eol-event\">\n <i class=\"fa-solid fa-calendar-day\" aria-hidden=\"true\"></i>\n <span class=\"mjo-eol-event__name\">{{ ev.Name }}</span>\n <span class=\"mjo-eol-event__dates\">{{ ev.Dates }}</span>\n </div>\n } @else {\n <div class=\"mjo-eol-event mjo-eol-event--missing\" data-testid=\"eol-event-missing\">\n <i class=\"fa-solid fa-circle-info\" aria-hidden=\"true\"></i>\n <span>This product has no event record, so there are no event dates for this line.</span>\n </div>\n }\n }\n\n <!-- 1. Essential / Primary Fields (Always Visible) -->\n <div class=\"mjo-eol-primary-grid\">\n <div class=\"mjo-eol-field mjo-eol-field--attendee\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"PersonID\" \n Type=\"textbox\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\" \n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n <div class=\"mjo-eol-field mjo-eol-field--status\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"AttendanceStatus\" \n Type=\"select\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n <div class=\"mjo-eol-field mjo-eol-field--tier\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"TicketTier\" \n Type=\"textbox\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n </div>\n\n <!-- 2. Progressive Disclosure Toggle Button -->\n <div class=\"mjo-eol-disclosure-bar\">\n <button \n type=\"button\" \n class=\"mjo-eol-toggle-btn\" \n (click)=\"ToggleDetails()\"\n [attr.aria-expanded]=\"DetailsExpanded\">\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"!DetailsExpanded\" [class.fa-chevron-down]=\"DetailsExpanded\" aria-hidden=\"true\"></i>\n <span class=\"mjo-eol-toggle-label\">\n {{ DetailsExpanded ? 'Hide Attendee Details' : 'Additional Details (Badge, Seating, Dietary & Notes)' }}\n </span>\n @if (!DetailsExpanded && HasPopulatedDetails) {\n <span class=\"mjo-eol-has-data-chip\">Configured</span>\n }\n </button>\n </div>\n\n <!-- 3. Expandable Details (Progressive Disclosure) -->\n @if (DetailsExpanded) {\n <div class=\"mjo-eol-details-panel\">\n <!-- Group A: Credential & Badge Printing -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-id-badge\" aria-hidden=\"true\"></i>\n <span>Badge & Credentials</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--4\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeName\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeCompany\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeTitle\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgePrintedAt\" Type=\"datepicker\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n\n <!-- Group B: Seating, Logistics & Accommodations -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-chair\" aria-hidden=\"true\"></i>\n <span>Seating & Logistics</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--3\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"TableAssignment\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"CheckInAt\" Type=\"datepicker\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"SpecialRequests\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n\n <!-- Group C: Dietary Preferences, Allergies & Notes -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-utensils\" aria-hidden=\"true\"></i>\n <span>Dietary & Operational Notes</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--4\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"DietaryPreferences\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"Allergies\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"Comments\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"CheckInNotes\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n </div>\n }\n </div>\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-related\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n</mj-record-form-container>\n}\n", styles: [":host {\n display: block;\n width: 100%;\n}\n\n.mjo-eol-form {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 4px 0;\n}\n\n/*\n * Labels sit above their controls in this form. mj-form-field lays a field out as a\n * fixed 200px label column beside the control, and only stacks them below a 640px\n * viewport. In this form's multi-column grids, and in the order line card that hosts\n * it, a column is narrower than that label plus gap, so the control was left with no\n * width: the Person lookup's input was all padding and no attendee could be typed.\n */\n.mjo-eol-form ::ng-deep .mj-forms-field {\n grid-template-columns: minmax(0, 1fr);\n gap: 4px;\n}\n\n.mjo-eol-form ::ng-deep .mj-forms-field-validation {\n grid-column: 1;\n}\n\n.mjo-eol-event {\n display: flex;\n align-items: baseline;\n flex-wrap: wrap;\n gap: 4px 8px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.mjo-eol-event i {\n font-size: 12px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-event__name {\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-event--missing,\n.mjo-eol-event--missing i {\n color: var(--mj-text-muted);\n}\n\n.mjo-eol-primary-grid {\n display: grid;\n grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);\n gap: 12px;\n align-items: start;\n}\n\n@media (max-width: 768px) {\n .mjo-eol-primary-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.mjo-eol-disclosure-bar {\n display: flex;\n align-items: center;\n padding: 4px 0;\n}\n\n.mjo-eol-toggle-btn {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n background: none;\n border: none;\n padding: 6px 10px;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 500;\n color: var(--mj-color-text-secondary, #64748b);\n cursor: pointer;\n transition: background 0.15s ease, color 0.15s ease;\n}\n\n.mjo-eol-toggle-btn:hover {\n background: var(--mj-color-surface-hover, #f1f5f9);\n color: var(--mj-color-text-primary, #0f172a);\n}\n\n.mjo-eol-has-data-chip {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 9999px;\n font-size: 11px;\n font-weight: 600;\n background-color: var(--mj-color-primary-subtle, #eff6ff);\n color: var(--mj-color-primary, #2563eb);\n border: 1px solid var(--mj-color-primary-border, #bfdbfe);\n}\n\n.mjo-eol-details-panel {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 14px;\n background: var(--mj-color-surface-subtle, #f8fafc);\n border: 1px solid var(--mj-color-border-subtle, #e2e8f0);\n border-radius: 8px;\n animation: mjoFadeDown 0.2s ease-out;\n}\n\n@keyframes mjoFadeDown {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.mjo-eol-group {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mjo-eol-group__header {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-color-text-muted, #475569);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-eol-group__header i {\n font-size: 11px;\n color: var(--mj-color-primary, #3b82f6);\n}\n\n.mjo-eol-group__grid {\n display: grid;\n gap: 12px;\n align-items: start;\n}\n\n.mjo-eol-group__grid--4 {\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n}\n\n.mjo-eol-group__grid--3 {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n"] }]
246
+ args: [{ standalone: false, selector: 'bizapps-event-order-line-form', template: "@if (record) {\n<mj-record-form-container [Record]=\"record\" [FormComponent]=\"this\"\n (Navigate)=\"OnFormNavigate($event)\"\n (DeleteRequested)=\"OnDeleteRequested()\"\n (FavoriteToggled)=\"OnFavoriteToggled()\"\n (HistoryRequested)=\"OnHistoryRequested()\"\n (ListManagementRequested)=\"OnListManagementRequested()\">\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"before-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n <div class=\"mjo-eol-form\">\n <!-- 0. The event this line is for (read-only; the line's product is the event) -->\n @if (EventLookupDone) {\n @if (LineEvent; as ev) {\n <div class=\"mjo-eol-event\" data-testid=\"eol-event\">\n <i class=\"fa-solid fa-calendar-day\" aria-hidden=\"true\"></i>\n <span class=\"mjo-eol-event__name\">{{ ev.Name }}</span>\n <span class=\"mjo-eol-event__dates\">{{ ev.Dates }}</span>\n </div>\n } @else {\n <div class=\"mjo-eol-event mjo-eol-event--missing\" data-testid=\"eol-event-missing\">\n <i class=\"fa-solid fa-circle-info\" aria-hidden=\"true\"></i>\n <span>This product has no event record, so there are no event dates for this line.</span>\n </div>\n }\n }\n\n <!-- 1. Essential / Primary Fields (Always Visible) -->\n <div class=\"mjo-eol-primary-grid\">\n <div class=\"mjo-eol-field mjo-eol-field--attendee\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"PersonID\" \n Type=\"textbox\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\" \n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n <div class=\"mjo-eol-field mjo-eol-field--status\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"AttendanceStatus\" \n Type=\"select\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n <div class=\"mjo-eol-field mjo-eol-field--tier\">\n <mj-form-field \n [Record]=\"record\" \n [ShowLabel]=\"true\" \n FieldName=\"TicketTier\" \n Type=\"textbox\" \n [EditMode]=\"EditMode\" \n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </mj-form-field>\n </div>\n </div>\n\n <!-- 2. Progressive Disclosure Toggle Button -->\n <div class=\"mjo-eol-disclosure-bar\">\n <button \n type=\"button\" \n class=\"mjo-eol-toggle-btn\" \n (click)=\"ToggleDetails()\"\n [attr.aria-expanded]=\"DetailsExpanded\">\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"!DetailsExpanded\" [class.fa-chevron-down]=\"DetailsExpanded\" aria-hidden=\"true\"></i>\n <span class=\"mjo-eol-toggle-label\">\n {{ DetailsExpanded ? 'Hide Attendee Details' : 'Additional Details (Badge, Seating, Dietary & Notes)' }}\n </span>\n @if (!DetailsExpanded && HasPopulatedDetails) {\n <span class=\"mjo-eol-has-data-chip\">Configured</span>\n }\n </button>\n </div>\n\n <!-- 3. Expandable Details (Progressive Disclosure) -->\n @if (DetailsExpanded) {\n <div class=\"mjo-eol-details-panel\">\n <!-- Group A: Credential & Badge Printing -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-id-badge\" aria-hidden=\"true\"></i>\n <span>Badge & Credentials</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--4\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeName\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeCompany\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgeTitle\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"BadgePrintedAt\" Type=\"datepicker\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n\n <!-- Group B: Seating, Logistics & Accommodations -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-chair\" aria-hidden=\"true\"></i>\n <span>Seating & Logistics</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--3\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"TableAssignment\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"CheckInAt\" Type=\"datepicker\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"SpecialRequests\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n\n <!-- Group C: Dietary Preferences, Allergies & Notes -->\n <div class=\"mjo-eol-group\">\n <div class=\"mjo-eol-group__header\">\n <i class=\"fa-solid fa-utensils\" aria-hidden=\"true\"></i>\n <span>Dietary & Operational Notes</span>\n </div>\n <div class=\"mjo-eol-group__grid mjo-eol-group__grid--4\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"DietaryPreferences\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"Allergies\" Type=\"textbox\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"Comments\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"CheckInNotes\" Type=\"textarea\" [EditMode]=\"EditMode\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n </div>\n }\n </div>\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-related\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n</mj-record-form-container>\n}\n", styles: [":host {\n display: block;\n width: 100%;\n}\n\n.mjo-eol-form {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 4px 0;\n}\n\n/*\n * Labels sit above their controls in this form. mj-form-field lays a field out as a\n * fixed 200px label column beside the control, and only stacks them below a 640px\n * viewport. In this form's multi-column grids, and in the order line card that hosts\n * it, a column is narrower than that label plus gap, so the control was left with no\n * width: the Person lookup's input was all padding and no attendee could be typed.\n */\n.mjo-eol-form ::ng-deep .mj-forms-field {\n grid-template-columns: minmax(0, 1fr);\n gap: 4px;\n}\n\n.mjo-eol-form ::ng-deep .mj-forms-field-validation {\n grid-column: 1;\n}\n\n.mjo-eol-event {\n display: flex;\n align-items: baseline;\n flex-wrap: wrap;\n gap: 4px 8px;\n font-size: 13px;\n color: var(--mj-text-secondary);\n}\n\n.mjo-eol-event i {\n font-size: 12px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-event__name {\n font-weight: 600;\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-event--missing,\n.mjo-eol-event--missing i {\n color: var(--mj-text-muted);\n}\n\n.mjo-eol-primary-grid {\n display: grid;\n grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);\n gap: 12px;\n align-items: start;\n}\n\n@media (max-width: 768px) {\n .mjo-eol-primary-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.mjo-eol-disclosure-bar {\n display: flex;\n align-items: center;\n padding: 4px 0;\n}\n\n.mjo-eol-toggle-btn {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n background: none;\n border: none;\n padding: 6px 10px;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 500;\n color: var(--mj-text-secondary);\n cursor: pointer;\n transition: background 0.15s ease, color 0.15s ease;\n}\n\n.mjo-eol-toggle-btn:hover {\n background: var(--mj-bg-surface-hover);\n color: var(--mj-text-primary);\n}\n\n.mjo-eol-has-data-chip {\n display: inline-block;\n padding: 2px 6px;\n border-radius: 9999px;\n font-size: 11px;\n font-weight: 600;\n background-color: color-mix(in srgb, var(--mj-brand-primary) 10%, var(--mj-bg-surface));\n color: var(--mj-brand-primary);\n border: 1px solid color-mix(in srgb, var(--mj-brand-primary) 40%, var(--mj-border-default));\n}\n\n.mjo-eol-details-panel {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 14px;\n background: var(--mj-bg-surface-card);\n border: 1px solid var(--mj-border-subtle);\n border-radius: 8px;\n animation: mjoFadeDown 0.2s ease-out;\n}\n\n@keyframes mjoFadeDown {\n from {\n opacity: 0;\n transform: translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.mjo-eol-group {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mjo-eol-group__header {\n display: flex;\n align-items: center;\n gap: 6px;\n font-size: 12px;\n font-weight: 600;\n color: var(--mj-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-eol-group__header i {\n font-size: 11px;\n color: var(--mj-brand-primary);\n}\n\n.mjo-eol-group__grid {\n display: grid;\n gap: 12px;\n align-items: start;\n}\n\n.mjo-eol-group__grid--4 {\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n}\n\n.mjo-eol-group__grid--3 {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n}\n"] }]
247
247
  }], null, null); })();
248
248
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BizAppsEventOrderLineFormComponent, { className: "BizAppsEventOrderLineFormComponent", filePath: "lib/custom/EventOrderLine/event-order-line-form.component.ts", lineNumber: 24 }); })();
249
249
  /** Tree-shaking prevention anchor function */