@foxy.io/elements 1.43.0-beta.1 → 1.43.0-beta.3

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 (366) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +5 -5
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-admin-subscription-form.js +1 -1
  6. package/dist/cdn/foxy-api-browser.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  8. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  9. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-card.js +1 -1
  11. package/dist/cdn/foxy-attribute-form.js +1 -1
  12. package/dist/cdn/foxy-billing-address-card.js +1 -1
  13. package/dist/cdn/foxy-cancellation-form.js +1 -1
  14. package/dist/cdn/foxy-cart-card.js +1 -1
  15. package/dist/cdn/foxy-cart-form.js +2 -2
  16. package/dist/cdn/foxy-client-card.js +1 -1
  17. package/dist/cdn/foxy-client-form.js +1 -1
  18. package/dist/cdn/foxy-collection-page.js +1 -1
  19. package/dist/cdn/foxy-collection-pages.js +1 -1
  20. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  21. package/dist/cdn/foxy-coupon-card.js +1 -1
  22. package/dist/cdn/foxy-coupon-code-card.js +1 -1
  23. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  24. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  25. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  26. package/dist/cdn/foxy-coupon-form.js +1 -1
  27. package/dist/cdn/foxy-custom-field-card.js +1 -1
  28. package/dist/cdn/foxy-custom-field-form.js +1 -1
  29. package/dist/cdn/foxy-customer-api.js +1 -1
  30. package/dist/cdn/foxy-customer-card.js +1 -1
  31. package/dist/cdn/foxy-customer-form.js +1 -1
  32. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
  33. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  34. package/dist/cdn/foxy-customer-portal.js +13 -13
  35. package/dist/cdn/foxy-customer.js +5 -5
  36. package/dist/cdn/foxy-customers-table.js +1 -1
  37. package/dist/cdn/foxy-discount-builder.js +1 -1
  38. package/dist/cdn/foxy-discount-card.js +1 -1
  39. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  40. package/dist/cdn/foxy-donation.js +1 -1
  41. package/dist/cdn/foxy-downloadable-card.js +1 -1
  42. package/dist/cdn/foxy-downloadable-form.js +2 -2
  43. package/dist/cdn/foxy-email-template-card.js +1 -1
  44. package/dist/cdn/foxy-email-template-form.js +1 -1
  45. package/dist/cdn/foxy-error-entry-card.js +1 -1
  46. package/dist/cdn/foxy-experimental-add-to-cart-builder.js +1 -1
  47. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  48. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  49. package/dist/cdn/foxy-form-dialog.js +1 -1
  50. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  51. package/dist/cdn/foxy-gift-card-card.js +1 -1
  52. package/dist/cdn/foxy-gift-card-code-card.js +1 -1
  53. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  54. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  55. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  56. package/dist/cdn/foxy-gift-card-form.js +1 -1
  57. package/dist/cdn/foxy-i18n-editor.js +3 -3
  58. package/dist/cdn/foxy-i18n.js +1 -1
  59. package/dist/cdn/foxy-integration-card.js +1 -1
  60. package/dist/cdn/foxy-integration-form.js +1 -1
  61. package/dist/cdn/foxy-item-card.js +1 -1
  62. package/dist/cdn/foxy-item-category-card.js +1 -1
  63. package/dist/cdn/foxy-item-category-form.js +1 -1
  64. package/dist/cdn/foxy-item-form.js +1 -1
  65. package/dist/cdn/foxy-item-option-card.js +1 -1
  66. package/dist/cdn/foxy-item-option-form.js +1 -1
  67. package/dist/cdn/foxy-items-form.js +1 -1
  68. package/dist/cdn/foxy-native-integration-card.js +1 -1
  69. package/dist/cdn/foxy-native-integration-form.js +1 -1
  70. package/dist/cdn/foxy-nucleon-element.js +1 -1
  71. package/dist/cdn/foxy-pagination.js +1 -1
  72. package/dist/cdn/foxy-passkey-card.js +1 -1
  73. package/dist/cdn/foxy-passkey-form.js +1 -1
  74. package/dist/cdn/foxy-payment-card-embed.js +1 -1
  75. package/dist/cdn/foxy-payment-card.js +1 -1
  76. package/dist/cdn/foxy-payment-method-card.js +1 -1
  77. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  78. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  79. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  80. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  81. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  82. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  83. package/dist/cdn/foxy-payments-api.js +1 -1
  84. package/dist/cdn/foxy-query-builder.js +1 -1
  85. package/dist/cdn/foxy-report-form.js +2 -2
  86. package/dist/cdn/foxy-reports-table.js +6 -6
  87. package/dist/cdn/foxy-shipment-card.js +1 -1
  88. package/dist/cdn/foxy-shipping-container-card.js +1 -1
  89. package/dist/cdn/foxy-shipping-drop-type-card.js +1 -1
  90. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  91. package/dist/cdn/foxy-shipping-service-card.js +1 -1
  92. package/dist/cdn/foxy-sign-in-form.js +1 -1
  93. package/dist/cdn/foxy-spinner.js +2 -2
  94. package/dist/cdn/foxy-store-card.js +1 -1
  95. package/dist/cdn/foxy-store-form.js +1 -1
  96. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  97. package/dist/cdn/foxy-subscription-card.js +1 -1
  98. package/dist/cdn/foxy-subscription-form.js +1 -1
  99. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  100. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  101. package/dist/cdn/foxy-table.js +1 -1
  102. package/dist/cdn/foxy-tax-card.js +1 -1
  103. package/dist/cdn/foxy-tax-form.js +1 -1
  104. package/dist/cdn/foxy-template-config-form.js +1 -1
  105. package/dist/cdn/foxy-template-form.js +1 -1
  106. package/dist/cdn/foxy-template-set-card.js +1 -1
  107. package/dist/cdn/foxy-template-set-form.js +1 -1
  108. package/dist/cdn/foxy-transaction-card.js +1 -1
  109. package/dist/cdn/foxy-transaction.js +1 -1
  110. package/dist/cdn/foxy-transactions-table.js +7 -7
  111. package/dist/cdn/foxy-update-payment-method-form.js +1 -1
  112. package/dist/cdn/foxy-user-card.js +1 -1
  113. package/dist/cdn/foxy-user-form.js +1 -1
  114. package/dist/cdn/foxy-user-invitation-card.js +1 -1
  115. package/dist/cdn/foxy-user-invitation-form.js +1 -1
  116. package/dist/cdn/foxy-users-table.js +1 -1
  117. package/dist/cdn/foxy-webhook-card.js +1 -1
  118. package/dist/cdn/foxy-webhook-form.js +1 -1
  119. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  120. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  121. package/dist/cdn/{shared-41208627.js → shared-02acac7f.js} +1 -1
  122. package/dist/cdn/{shared-ad60e8d1.js → shared-03b67a3d.js} +2 -2
  123. package/dist/cdn/{shared-cc4b3b42.js → shared-049295b7.js} +1 -1
  124. package/dist/cdn/{shared-2828fcbf.js → shared-0584a904.js} +1 -1
  125. package/dist/cdn/{shared-9342ca50.js → shared-0993c2f5.js} +1 -1
  126. package/dist/cdn/{shared-2aa23b5f.js → shared-0ea750af.js} +1 -1
  127. package/dist/cdn/shared-109cfbba.js +1 -0
  128. package/dist/cdn/{shared-dd303282.js → shared-10c8f21c.js} +1 -1
  129. package/dist/cdn/{shared-eb963ba3.js → shared-12973e93.js} +1 -1
  130. package/dist/cdn/{shared-9c010e0a.js → shared-12bab9de.js} +1 -1
  131. package/dist/cdn/shared-13ba9f3a.js +15 -0
  132. package/dist/cdn/{shared-fed829c2.js → shared-19b43f73.js} +1 -1
  133. package/dist/cdn/{shared-264e8301.js → shared-1af6aa1d.js} +1 -1
  134. package/dist/cdn/{shared-94716ec1.js → shared-1b627cc5.js} +1 -1
  135. package/dist/cdn/{shared-0d0585dc.js → shared-1c252319.js} +1 -1
  136. package/dist/cdn/shared-1da47f50.js +1 -0
  137. package/dist/cdn/shared-2061be9a.js +1 -0
  138. package/dist/cdn/{shared-6033e09d.js → shared-206d3153.js} +1 -1
  139. package/dist/cdn/{shared-70e6f32c.js → shared-21a445d9.js} +1 -1
  140. package/dist/cdn/{shared-9171c265.js → shared-2557c0c4.js} +1 -1
  141. package/dist/cdn/{shared-bedc5e82.js → shared-264bea6b.js} +1 -1
  142. package/dist/cdn/{shared-5f8c01f8.js → shared-2c00e6b1.js} +1 -1
  143. package/dist/cdn/{shared-1cd02e50.js → shared-2db6b377.js} +1 -1
  144. package/dist/cdn/{shared-9b9d5ff1.js → shared-2ebcaabc.js} +1 -1
  145. package/dist/cdn/{shared-4b393539.js → shared-2f17b0fa.js} +1 -1
  146. package/dist/cdn/shared-2f1ced90.js +1 -0
  147. package/dist/cdn/{shared-ffd5932d.js → shared-3558bfae.js} +1 -1
  148. package/dist/cdn/{shared-5e4a03d1.js → shared-37869bac.js} +1 -1
  149. package/dist/cdn/{shared-99a8889a.js → shared-3b4148ad.js} +1 -1
  150. package/dist/cdn/{shared-2cb397e4.js → shared-3e0b2588.js} +1 -1
  151. package/dist/cdn/{shared-567ba8ae.js → shared-3e3c5095.js} +1 -1
  152. package/dist/cdn/{shared-656a46f7.js → shared-3ffa26c1.js} +2 -2
  153. package/dist/cdn/{shared-0224f0b8.js → shared-457789d7.js} +1 -1
  154. package/dist/cdn/{shared-e88763ec.js → shared-5700fbfd.js} +1 -1
  155. package/dist/cdn/shared-5905fca4.js +1 -0
  156. package/dist/cdn/{shared-cae7a43b.js → shared-5aacbf1f.js} +1 -1
  157. package/dist/cdn/{shared-6962f117.js → shared-6540a584.js} +1 -1
  158. package/dist/cdn/shared-65b2760f.js +1 -0
  159. package/dist/cdn/{shared-a507d54f.js → shared-68d1075b.js} +4 -4
  160. package/dist/cdn/{shared-89d4000a.js → shared-6a65acb4.js} +1 -1
  161. package/dist/cdn/{shared-d7d949bc.js → shared-6ebe5ef5.js} +1 -1
  162. package/dist/cdn/{shared-a6c75cc0.js → shared-6eebe353.js} +2 -2
  163. package/dist/cdn/{shared-9dc36194.js → shared-74a5f2a4.js} +1 -1
  164. package/dist/cdn/{shared-e2d3c014.js → shared-76c608e2.js} +1 -1
  165. package/dist/cdn/shared-7b5bdf0e.js +1 -0
  166. package/dist/cdn/{shared-673d668a.js → shared-7dc40542.js} +1 -1
  167. package/dist/cdn/shared-7fec42f2.js +15 -0
  168. package/dist/cdn/{shared-dc4d2996.js → shared-80dafe85.js} +1 -1
  169. package/dist/cdn/{shared-44b46fef.js → shared-8259d01b.js} +1 -1
  170. package/dist/cdn/shared-88a59a2e.js +1 -0
  171. package/dist/cdn/{shared-4dd24dda.js → shared-8b0d25e5.js} +1 -1
  172. package/dist/cdn/{shared-c502de27.js → shared-8dd6f543.js} +1 -1
  173. package/dist/cdn/{shared-8a0bd046.js → shared-9006bac2.js} +1 -1
  174. package/dist/cdn/{shared-d68c6616.js → shared-90a8d5cf.js} +1 -1
  175. package/dist/cdn/{shared-4cafa2e7.js → shared-9363a954.js} +1 -1
  176. package/dist/cdn/{shared-c832f3a1.js → shared-944fab16.js} +1 -1
  177. package/dist/cdn/shared-998c0ace.js +1 -0
  178. package/dist/cdn/{shared-6b3fed56.js → shared-a3234358.js} +1 -1
  179. package/dist/cdn/{shared-bb6d7b97.js → shared-a715e3e5.js} +1 -1
  180. package/dist/cdn/{shared-74d599dc.js → shared-aab4ed2b.js} +1 -1
  181. package/dist/cdn/{shared-a4216b50.js → shared-ab0bbad5.js} +1 -1
  182. package/dist/cdn/{shared-8ea2bbcc.js → shared-aedaf182.js} +1 -1
  183. package/dist/cdn/{shared-274dec57.js → shared-b2bd7666.js} +1 -1
  184. package/dist/cdn/{shared-b1435a0a.js → shared-bdbdf963.js} +1 -1
  185. package/dist/cdn/shared-be30b940.js +1 -0
  186. package/dist/cdn/{shared-e6a1eef8.js → shared-be7af87f.js} +1 -1
  187. package/dist/cdn/{shared-5afb584d.js → shared-c782b9fa.js} +1 -1
  188. package/dist/cdn/{shared-7fd51889.js → shared-cd0ae051.js} +3 -3
  189. package/dist/cdn/{shared-8f009bbb.js → shared-cd3cfea5.js} +1 -1
  190. package/dist/cdn/{shared-7594e563.js → shared-d6a0954b.js} +1 -1
  191. package/dist/cdn/shared-da95bb48.js +1 -0
  192. package/dist/cdn/{shared-87b93771.js → shared-dd7e85be.js} +1 -1
  193. package/dist/cdn/{shared-aa6dab90.js → shared-ddda911c.js} +2 -2
  194. package/dist/cdn/shared-e1e4d8f5.js +1 -0
  195. package/dist/cdn/{shared-2f8e53c0.js → shared-e52d2fdd.js} +1 -1
  196. package/dist/cdn/{shared-66201dc5.js → shared-ee689ddc.js} +1 -1
  197. package/dist/cdn/{shared-678beccf.js → shared-f497cd69.js} +3 -3
  198. package/dist/cdn/shared-f4be6924.js +40 -0
  199. package/dist/cdn/shared-f8e1143e.js +1 -0
  200. package/dist/cdn/translations/cart-form/en.json +42 -41
  201. package/dist/cdn/translations/coupon-form/en.json +38 -26
  202. package/dist/cdn/translations/customer/en.json +14 -17
  203. package/dist/cdn/translations/filter-attribute-form/en.json +19 -14
  204. package/dist/cdn/translations/gift-card-code-form/en.json +14 -16
  205. package/dist/cdn/translations/gift-card-form/en.json +33 -32
  206. package/dist/cdn/translations/payment-method-card/en.json +14 -17
  207. package/dist/cdn/translations/query-builder/en.json +15 -13
  208. package/dist/cdn/translations/update-payment-method-form/en.json +14 -17
  209. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js +1 -1
  210. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js.map +1 -1
  211. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js +9 -10
  212. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js.map +1 -1
  213. package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js +1 -1
  214. package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js.map +1 -1
  215. package/dist/elements/public/CouponForm/CouponForm.js +4 -4
  216. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  217. package/dist/elements/public/Donation/Donation.d.ts +10 -0
  218. package/dist/elements/public/Donation/Donation.js +2 -0
  219. package/dist/elements/public/Donation/Donation.js.map +1 -1
  220. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.d.ts +2 -2
  221. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.js +71 -25
  222. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.js.map +1 -1
  223. package/dist/elements/public/FilterAttributeForm/index.d.ts +2 -2
  224. package/dist/elements/public/FilterAttributeForm/index.js +2 -2
  225. package/dist/elements/public/FilterAttributeForm/index.js.map +1 -1
  226. package/dist/elements/public/GiftCardForm/GiftCardForm.js +5 -5
  227. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
  228. package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +15 -6
  229. package/dist/elements/public/QueryBuilder/QueryBuilder.js +152 -32
  230. package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
  231. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.d.ts +16 -0
  232. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.js +78 -0
  233. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.js.map +1 -0
  234. package/dist/elements/public/QueryBuilder/components/AdvancedInput.d.ts +12 -0
  235. package/dist/elements/public/QueryBuilder/components/AdvancedInput.js +49 -0
  236. package/dist/elements/public/QueryBuilder/components/AdvancedInput.js.map +1 -0
  237. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.d.ts +14 -0
  238. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.js +41 -0
  239. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.js.map +1 -0
  240. package/dist/elements/public/QueryBuilder/components/AdvancedRule.d.ts +18 -0
  241. package/dist/elements/public/QueryBuilder/components/{Rule.js → AdvancedRule.js} +50 -59
  242. package/dist/elements/public/QueryBuilder/components/AdvancedRule.js.map +1 -0
  243. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.d.ts +2 -0
  244. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.js +78 -0
  245. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.js.map +1 -0
  246. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.d.ts +2 -0
  247. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.js +16 -0
  248. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.js.map +1 -0
  249. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.d.ts +2 -0
  250. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.js +111 -0
  251. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.js.map +1 -0
  252. package/dist/elements/public/QueryBuilder/components/SimpleGroup.d.ts +14 -0
  253. package/dist/elements/public/QueryBuilder/components/SimpleGroup.js +111 -0
  254. package/dist/elements/public/QueryBuilder/components/SimpleGroup.js.map +1 -0
  255. package/dist/elements/public/QueryBuilder/components/SimpleInput.d.ts +15 -0
  256. package/dist/elements/public/QueryBuilder/components/SimpleInput.js +43 -0
  257. package/dist/elements/public/QueryBuilder/components/SimpleInput.js.map +1 -0
  258. package/dist/elements/public/QueryBuilder/components/SimpleListRule.d.ts +2 -0
  259. package/dist/elements/public/QueryBuilder/components/SimpleListRule.js +45 -0
  260. package/dist/elements/public/QueryBuilder/components/SimpleListRule.js.map +1 -0
  261. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.d.ts +2 -0
  262. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.js +100 -0
  263. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.js.map +1 -0
  264. package/dist/elements/public/QueryBuilder/components/SimpleSelect.d.ts +24 -0
  265. package/dist/elements/public/QueryBuilder/components/SimpleSelect.js +45 -0
  266. package/dist/elements/public/QueryBuilder/components/SimpleSelect.js.map +1 -0
  267. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.d.ts +2 -0
  268. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.js +46 -0
  269. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.js.map +1 -0
  270. package/dist/elements/public/QueryBuilder/icons/field.d.ts +1 -0
  271. package/dist/elements/public/QueryBuilder/icons/{typeAny.js → field.js} +2 -2
  272. package/dist/elements/public/QueryBuilder/icons/field.js.map +1 -0
  273. package/dist/elements/public/QueryBuilder/icons/index.d.ts +1 -6
  274. package/dist/elements/public/QueryBuilder/icons/index.js +1 -6
  275. package/dist/elements/public/QueryBuilder/icons/index.js.map +1 -1
  276. package/dist/elements/public/QueryBuilder/index.d.ts +2 -0
  277. package/dist/elements/public/QueryBuilder/index.js +2 -0
  278. package/dist/elements/public/QueryBuilder/index.js.map +1 -1
  279. package/dist/elements/public/QueryBuilder/styles.js +23 -0
  280. package/dist/elements/public/QueryBuilder/styles.js.map +1 -1
  281. package/dist/elements/public/QueryBuilder/types.d.ts +24 -6
  282. package/dist/elements/public/QueryBuilder/types.js.map +1 -1
  283. package/dist/elements/public/QueryBuilder/utils/parse.d.ts +2 -2
  284. package/dist/elements/public/QueryBuilder/utils/parse.js.map +1 -1
  285. package/dist/elements/public/QueryBuilder/utils/stringify.d.ts +2 -2
  286. package/dist/elements/public/QueryBuilder/utils/stringify.js.map +1 -1
  287. package/dist/elements/public/TaxForm/TaxForm.js +5 -4
  288. package/dist/elements/public/TaxForm/TaxForm.js.map +1 -1
  289. package/dist/mixins/themeable.js +17 -12
  290. package/dist/mixins/themeable.js.map +1 -1
  291. package/package.json +1 -1
  292. package/dist/cdn/shared-0aedd809.js +0 -1
  293. package/dist/cdn/shared-2f5cc0e2.js +0 -1
  294. package/dist/cdn/shared-343d1fd7.js +0 -1
  295. package/dist/cdn/shared-4a38cb3e.js +0 -1
  296. package/dist/cdn/shared-4c764a91.js +0 -1
  297. package/dist/cdn/shared-5592ec6e.js +0 -1
  298. package/dist/cdn/shared-5ef40e86.js +0 -1
  299. package/dist/cdn/shared-79d0699c.js +0 -1
  300. package/dist/cdn/shared-894c69f8.js +0 -1
  301. package/dist/cdn/shared-97e2abfb.js +0 -1
  302. package/dist/cdn/shared-b6f53f3b.js +0 -64
  303. package/dist/cdn/shared-c31c50e2.js +0 -1
  304. package/dist/cdn/shared-cb58dfcd.js +0 -15
  305. package/dist/cdn/shared-d0363ae9.js +0 -1
  306. package/dist/cdn/shared-ef4ad461.js +0 -1
  307. package/dist/cdn/shared-f7bfb29e.js +0 -15
  308. package/dist/cdn/shared-f83207fb.js +0 -1
  309. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.d.ts +0 -5
  310. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.js +0 -34
  311. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.js.map +0 -1
  312. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.d.ts +0 -5
  313. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.js +0 -7
  314. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.js.map +0 -1
  315. package/dist/elements/public/QueryBuilder/components/BooleanValue.d.ts +0 -12
  316. package/dist/elements/public/QueryBuilder/components/BooleanValue.js +0 -21
  317. package/dist/elements/public/QueryBuilder/components/BooleanValue.js.map +0 -1
  318. package/dist/elements/public/QueryBuilder/components/Group.d.ts +0 -15
  319. package/dist/elements/public/QueryBuilder/components/Group.js +0 -95
  320. package/dist/elements/public/QueryBuilder/components/Group.js.map +0 -1
  321. package/dist/elements/public/QueryBuilder/components/Input.d.ts +0 -18
  322. package/dist/elements/public/QueryBuilder/components/Input.js +0 -98
  323. package/dist/elements/public/QueryBuilder/components/Input.js.map +0 -1
  324. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.d.ts +0 -11
  325. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.js +0 -16
  326. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.js.map +0 -1
  327. package/dist/elements/public/QueryBuilder/components/ListValue.d.ts +0 -12
  328. package/dist/elements/public/QueryBuilder/components/ListValue.js +0 -48
  329. package/dist/elements/public/QueryBuilder/components/ListValue.js.map +0 -1
  330. package/dist/elements/public/QueryBuilder/components/Name.d.ts +0 -11
  331. package/dist/elements/public/QueryBuilder/components/Name.js +0 -14
  332. package/dist/elements/public/QueryBuilder/components/Name.js.map +0 -1
  333. package/dist/elements/public/QueryBuilder/components/OperatorToggle.d.ts +0 -13
  334. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js +0 -63
  335. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js.map +0 -1
  336. package/dist/elements/public/QueryBuilder/components/Path.d.ts +0 -13
  337. package/dist/elements/public/QueryBuilder/components/Path.js +0 -16
  338. package/dist/elements/public/QueryBuilder/components/Path.js.map +0 -1
  339. package/dist/elements/public/QueryBuilder/components/RangeValue.d.ts +0 -12
  340. package/dist/elements/public/QueryBuilder/components/RangeValue.js +0 -47
  341. package/dist/elements/public/QueryBuilder/components/RangeValue.js.map +0 -1
  342. package/dist/elements/public/QueryBuilder/components/Rule.d.ts +0 -18
  343. package/dist/elements/public/QueryBuilder/components/Rule.js.map +0 -1
  344. package/dist/elements/public/QueryBuilder/components/Select.d.ts +0 -16
  345. package/dist/elements/public/QueryBuilder/components/Select.js +0 -86
  346. package/dist/elements/public/QueryBuilder/components/Select.js.map +0 -1
  347. package/dist/elements/public/QueryBuilder/components/SingleValue.d.ts +0 -12
  348. package/dist/elements/public/QueryBuilder/components/SingleValue.js +0 -21
  349. package/dist/elements/public/QueryBuilder/components/SingleValue.js.map +0 -1
  350. package/dist/elements/public/QueryBuilder/icons/typeAny.d.ts +0 -1
  351. package/dist/elements/public/QueryBuilder/icons/typeAny.js.map +0 -1
  352. package/dist/elements/public/QueryBuilder/icons/typeAttribute.d.ts +0 -1
  353. package/dist/elements/public/QueryBuilder/icons/typeAttribute.js +0 -8
  354. package/dist/elements/public/QueryBuilder/icons/typeAttribute.js.map +0 -1
  355. package/dist/elements/public/QueryBuilder/icons/typeBoolean.d.ts +0 -1
  356. package/dist/elements/public/QueryBuilder/icons/typeBoolean.js +0 -10
  357. package/dist/elements/public/QueryBuilder/icons/typeBoolean.js.map +0 -1
  358. package/dist/elements/public/QueryBuilder/icons/typeDate.d.ts +0 -1
  359. package/dist/elements/public/QueryBuilder/icons/typeDate.js +0 -7
  360. package/dist/elements/public/QueryBuilder/icons/typeDate.js.map +0 -1
  361. package/dist/elements/public/QueryBuilder/icons/typeNumber.d.ts +0 -1
  362. package/dist/elements/public/QueryBuilder/icons/typeNumber.js +0 -7
  363. package/dist/elements/public/QueryBuilder/icons/typeNumber.js.map +0 -1
  364. package/dist/elements/public/QueryBuilder/icons/typeString.d.ts +0 -1
  365. package/dist/elements/public/QueryBuilder/icons/typeString.js +0 -7
  366. package/dist/elements/public/QueryBuilder/icons/typeString.js.map +0 -1
@@ -1,39 +1,12 @@
1
- import * as icons from "../icons/index.js";
2
- import { Operator, Type } from "../types.js";
3
- import { html } from 'lit-html';
4
- import { BooleanValue } from "./BooleanValue.js";
5
- import { IsDefinedValue } from "./IsDefinedValue.js";
6
- import { ListValue } from "./ListValue.js";
7
- import { Name } from "./Name.js";
8
- import { OperatorToggle } from "./OperatorToggle.js";
9
- import { Path } from "./Path.js";
10
- import { RangeValue } from "./RangeValue.js";
11
- import { SingleValue } from "./SingleValue.js";
1
+ import { AdvancedOperatorToggle } from "./AdvancedOperatorToggle.js";
2
+ import { AdvancedInput } from "./AdvancedInput.js";
12
3
  import { classMap } from "../../../../utils/class-map.js";
13
- export function Rule(params) {
4
+ import { field } from "../icons/index.js";
5
+ import { html } from 'lit-html';
6
+ export function AdvancedRule(params) {
14
7
  var _a, _b;
15
- const { parsedValue, isFullSize, isNested, readonly, disabled, options, t, onConvert, onDelete, onChange, } = params;
16
- const option = (_a = options.find(o => o.path === parsedValue.path)) !== null && _a !== void 0 ? _a : null;
17
- const type = (_b = option === null || option === void 0 ? void 0 : option.type) !== null && _b !== void 0 ? _b : Type.Any;
18
- const operator = parsedValue.operator;
19
- const componentParams = {
20
- parsedValue: parsedValue,
21
- operators: params.operators,
22
- disabled,
23
- readonly,
24
- options,
25
- option,
26
- t,
27
- onChange,
28
- };
29
- const typeToIcon = {
30
- [Type.Attribute]: icons.typeAttribute,
31
- [Type.Boolean]: icons.typeBoolean,
32
- [Type.Number]: icons.typeNumber,
33
- [Type.String]: icons.typeString,
34
- [Type.Date]: icons.typeDate,
35
- [Type.Any]: icons.typeAny,
36
- };
8
+ const { isFullSize, isNested, disableOr, readonly, disabled, rule } = params;
9
+ const { t, onConvert, onDelete, onChange } = params;
37
10
  return html `
38
11
  <div class="flex items-center space-x-s" aria-label=${t('query_builder_rule')}>
39
12
  <div
@@ -47,42 +20,60 @@ export function Rule(params) {
47
20
  >
48
21
  <div class="bg-contrast-10">
49
22
  <div class="grid gap-1px grid-vertical sm-grid-horizontal">
50
- <div class="bg-base" title=${t(`type_${type}`)}>
23
+ <div class="bg-base">
51
24
  <div
25
+ aria-hidden="true"
52
26
  class=${classMap({
53
- 'w-m h-m': true,
54
27
  'text-tertiary': !readonly && !disabled,
55
28
  'text-disabled': readonly || disabled,
29
+ 'w-m h-m': true,
56
30
  })}
57
- aria-hidden="true"
58
31
  >
59
- ${option ? typeToIcon[type] : icons.typeAny}
32
+ ${field}
60
33
  </div>
61
34
  </div>
62
35
 
63
36
  <div class="bg-base">
64
- ${parsedValue.path && (type === Type.Attribute || parsedValue.name)
37
+ ${rule.path && rule.name
65
38
  ? html `
66
39
  <div class="bg-contrast-10 grid gap-1px grid-cols-1 sm-grid-cols-2">
67
- <div class="bg-base">${Path(componentParams)}</div>
68
- <div class="bg-base">${Name(componentParams)}</div>
40
+ <div class="bg-base">
41
+ ${AdvancedInput({
42
+ ...params,
43
+ value: rule.path,
44
+ label: 'field',
45
+ onChange: newPath => {
46
+ onChange({ operator: null, value: '', path: newPath });
47
+ },
48
+ })}
49
+ </div>
50
+ <div class="bg-base">
51
+ ${AdvancedInput({
52
+ ...params,
53
+ value: (_a = rule.name) !== null && _a !== void 0 ? _a : '',
54
+ label: 'name',
55
+ onChange: newValue => onChange({ ...rule, name: newValue }),
56
+ })}
57
+ </div>
69
58
  </div>
70
59
  `
71
- : Path(componentParams)}
60
+ : AdvancedInput({
61
+ ...params,
62
+ value: rule.path,
63
+ label: 'field',
64
+ onChange: newPath => onChange({ operator: null, value: '', path: newPath }),
65
+ })}
72
66
  </div>
73
67
 
74
- <div class="bg-base">${OperatorToggle(componentParams)}</div>
75
-
68
+ <div class="bg-base">${AdvancedOperatorToggle(params)}</div>
76
69
  <div class="bg-base">
77
- ${operator === Operator.In
78
- ? ListValue(componentParams)
79
- : operator === Operator.IsDefined
80
- ? IsDefinedValue(componentParams)
81
- : type === Type.Boolean
82
- ? BooleanValue(componentParams)
83
- : operator === null && [Type.Number, Type.Date].includes(type)
84
- ? RangeValue(componentParams)
85
- : SingleValue(componentParams)}
70
+ ${AdvancedInput({
71
+ ...params,
72
+ disabled: disabled || !rule.path,
73
+ value: (_b = rule.value) !== null && _b !== void 0 ? _b : '',
74
+ label: 'value',
75
+ onChange: newValue => onChange({ ...rule, value: newValue }),
76
+ })}
86
77
  </div>
87
78
  </div>
88
79
  </div>
@@ -103,9 +94,9 @@ export function Rule(params) {
103
94
  'text-secondary hover-bg-contrast-5 hover-text-error': !disabled,
104
95
  'cursor-default text-disabled': disabled,
105
96
  'focus-outline-none focus-ring-2 ring-primary-50': true,
106
- 'opacity-0 pointer-events-none': !parsedValue.path,
97
+ 'opacity-0 pointer-events-none': !rule.path,
107
98
  })}
108
- ?disabled=${disabled || readonly || !parsedValue.path}
99
+ ?disabled=${disabled || readonly || !rule.path}
109
100
  @click=${onDelete}
110
101
  >
111
102
  <iron-icon
@@ -123,10 +114,10 @@ export function Rule(params) {
123
114
  'text-success hover-bg-contrast-5': !disabled,
124
115
  'cursor-default text-disabled': disabled,
125
116
  'focus-outline-none focus-ring-2 ring-primary-50': true,
126
- 'opacity-0 pointer-events-none': !parsedValue.path || !!isNested || params.disableOr,
117
+ 'opacity-0 pointer-events-none': !rule.path || !!isNested || disableOr,
127
118
  })}
128
- ?disabled=${disabled || readonly || !parsedValue.path || !!isNested || params.disableOr}
129
- ?hidden=${params.disableOr}
119
+ ?disabled=${disabled || readonly || !rule.path || !!isNested || disableOr}
120
+ ?hidden=${disableOr}
130
121
  @click=${onConvert}
131
122
  >
132
123
  <iron-icon
@@ -140,4 +131,4 @@ export function Rule(params) {
140
131
  </div>
141
132
  `;
142
133
  }
143
- //# sourceMappingURL=Rule.js.map
134
+ //# sourceMappingURL=AdvancedRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdvancedRule.js","sourceRoot":"","sources":["../../../../../src/elements/public/QueryBuilder/components/AdvancedRule.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,oCAAiC;AAClE,OAAO,EAAE,aAAa,EAAE,2BAAwB;AAChD,OAAO,EAAE,QAAQ,EAAE,uCAAoC;AACvD,OAAO,EAAE,KAAK,EAAE,0BAAuB;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAgBhC,MAAM,UAAU,YAAY,CAAC,MAAc;;IACzC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC7E,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEpD,OAAO,IAAI,CAAA;0DAC6C,CAAC,CAAC,oBAAoB,CAAC;;gBAEjE,QAAQ,CAAC;QACf,+CAA+C,EAAE,IAAI;QACrD,oBAAoB,EAAE,CAAC,QAAQ,IAAI,CAAC,QAAQ;QAC5C,oBAAoB,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ;QAC5C,eAAe,EAAE,QAAQ;QACzB,cAAc,EAAE,CAAC,QAAQ;KAC1B,CAAC;;;;;;;wBAOc,QAAQ,CAAC;QACf,eAAe,EAAE,CAAC,QAAQ,IAAI,CAAC,QAAQ;QACvC,eAAe,EAAE,QAAQ,IAAI,QAAQ;QACrC,SAAS,EAAE,IAAI;KAChB,CAAC;;kBAEA,KAAK;;;;;gBAKP,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;QACtB,CAAC,CAAC,IAAI,CAAA;;;0BAGI,aAAa,CAAC;YACd,GAAG,MAAM;YACT,KAAK,EAAE,IAAI,CAAC,IAAI;YAChB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,OAAO,CAAC,EAAE;gBAClB,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;SACF,CAAC;;;0BAGA,aAAa,CAAC;YACd,GAAG,MAAM;YACT,KAAK,QAAE,IAAI,CAAC,IAAI,mCAAI,EAAE;YACtB,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;SAC5D,CAAC;;;mBAGP;QACH,CAAC,CAAC,aAAa,CAAC;YACZ,GAAG,MAAM;YACT,KAAK,EAAE,IAAI,CAAC,IAAI;YAChB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;SAC5E,CAAC;;;mCAGe,sBAAsB,CAAC,MAAM,CAAC;;gBAEjD,aAAa,CAAC;QACd,GAAG,MAAM;QACT,QAAQ,EAAE,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI;QAChC,KAAK,QAAE,IAAI,CAAC,KAAK,mCAAI,EAAE;QACvB,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;KAC7D,CAAC;;;;;;;gBAOA,QAAQ,CAAC;QACf,kEAAkE,EAAE,IAAI;QACxE,kEAAkE,EAAE,IAAI;QACxE,QAAQ,EAAE,CAAC,CAAC,UAAU,IAAI,QAAQ;QAClC,MAAM,EAAE,CAAC,UAAU;KACpB,CAAC;;;uBAGa,CAAC,CAAC,QAAQ,CAAC;kBAChB,QAAQ,CAAC;QACf,yDAAyD,EAAE,IAAI;QAC/D,qDAAqD,EAAE,CAAC,QAAQ;QAChE,8BAA8B,EAAE,QAAQ;QACxC,iDAAiD,EAAE,IAAI;QACvD,+BAA+B,EAAE,CAAC,IAAI,CAAC,IAAI;KAC5C,CAAC;sBACU,QAAQ,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI;mBACrC,QAAQ;;;;;;;;;;;uBAWJ,CAAC,CAAC,eAAe,CAAC;kBACvB,QAAQ,CAAC;QACf,yDAAyD,EAAE,IAAI;QAC/D,kCAAkC,EAAE,CAAC,QAAQ;QAC7C,8BAA8B,EAAE,QAAQ;QACxC,iDAAiD,EAAE,IAAI;QACvD,+BAA+B,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,SAAS;KACvE,CAAC;sBACU,QAAQ,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,SAAS;oBAC/D,SAAS;mBACV,SAAS;;;;;;;;;;;GAWzB,CAAC;AACJ,CAAC","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Operator, Rule } from '../types';\nimport type { I18n } from '../../I18n/I18n';\n\nimport { AdvancedOperatorToggle } from './AdvancedOperatorToggle';\nimport { AdvancedInput } from './AdvancedInput';\nimport { classMap } from '../../../../utils/class-map';\nimport { field } from '../icons/index';\nimport { html } from 'lit-html';\n\ntype Params = {\n isFullSize?: boolean;\n isNested?: boolean;\n operators: Operator[];\n disableOr: boolean;\n readonly: boolean;\n disabled: boolean;\n rule: Rule;\n t: I18n['t'];\n onConvert?: () => void;\n onDelete?: () => void;\n onChange: (newValue: Rule) => void;\n};\n\nexport function AdvancedRule(params: Params): TemplateResult {\n const { isFullSize, isNested, disableOr, readonly, disabled, rule } = params;\n const { t, onConvert, onDelete, onChange } = params;\n\n return html`\n <div class=\"flex items-center space-x-s\" aria-label=${t('query_builder_rule')}>\n <div\n class=${classMap({\n 'flex-1 bg-base rounded overflow-hidden border': true,\n 'border-contrast-10': !isNested && !readonly,\n 'border-contrast-50': !!isNested || readonly,\n 'border-dashed': readonly,\n 'border-solid': !readonly,\n })}\n >\n <div class=\"bg-contrast-10\">\n <div class=\"grid gap-1px grid-vertical sm-grid-horizontal\">\n <div class=\"bg-base\">\n <div\n aria-hidden=\"true\"\n class=${classMap({\n 'text-tertiary': !readonly && !disabled,\n 'text-disabled': readonly || disabled,\n 'w-m h-m': true,\n })}\n >\n ${field}\n </div>\n </div>\n\n <div class=\"bg-base\">\n ${rule.path && rule.name\n ? html`\n <div class=\"bg-contrast-10 grid gap-1px grid-cols-1 sm-grid-cols-2\">\n <div class=\"bg-base\">\n ${AdvancedInput({\n ...params,\n value: rule.path,\n label: 'field',\n onChange: newPath => {\n onChange({ operator: null, value: '', path: newPath });\n },\n })}\n </div>\n <div class=\"bg-base\">\n ${AdvancedInput({\n ...params,\n value: rule.name ?? '',\n label: 'name',\n onChange: newValue => onChange({ ...rule, name: newValue }),\n })}\n </div>\n </div>\n `\n : AdvancedInput({\n ...params,\n value: rule.path,\n label: 'field',\n onChange: newPath => onChange({ operator: null, value: '', path: newPath }),\n })}\n </div>\n\n <div class=\"bg-base\">${AdvancedOperatorToggle(params)}</div>\n <div class=\"bg-base\">\n ${AdvancedInput({\n ...params,\n disabled: disabled || !rule.path,\n value: rule.value ?? '',\n label: 'value',\n onChange: newValue => onChange({ ...rule, value: newValue }),\n })}\n </div>\n </div>\n </div>\n </div>\n\n <div\n class=${classMap({\n '-mr-s self-start flex-col sm-flex-row flex-shrink-0 items-center': true,\n 'border-t border-b border-transparent divide-y divide-transparent': true,\n 'hidden': !!isFullSize || readonly,\n 'flex': !isFullSize,\n })}\n >\n <button\n aria-label=${t('delete')}\n class=${classMap({\n 'box-content flex w-m h-m rounded-full transition-colors': true,\n 'text-secondary hover-bg-contrast-5 hover-text-error': !disabled,\n 'cursor-default text-disabled': disabled,\n 'focus-outline-none focus-ring-2 ring-primary-50': true,\n 'opacity-0 pointer-events-none': !rule.path,\n })}\n ?disabled=${disabled || readonly || !rule.path}\n @click=${onDelete}\n >\n <iron-icon\n aria-hidden=\"true\"\n class=\"m-auto icon-inline text-xl\"\n icon=\"icons:remove-circle-outline\"\n >\n </iron-icon>\n </button>\n\n <button\n aria-label=${t('add_or_clause')}\n class=${classMap({\n 'box-content flex w-m h-m rounded-full transition-colors': true,\n 'text-success hover-bg-contrast-5': !disabled,\n 'cursor-default text-disabled': disabled,\n 'focus-outline-none focus-ring-2 ring-primary-50': true,\n 'opacity-0 pointer-events-none': !rule.path || !!isNested || disableOr,\n })}\n ?disabled=${disabled || readonly || !rule.path || !!isNested || disableOr}\n ?hidden=${disableOr}\n @click=${onConvert}\n >\n <iron-icon\n aria-hidden=\"true\"\n class=\"m-auto icon-inline text-xl\"\n icon=\"icons:add-circle-outline\"\n >\n </iron-icon>\n </button>\n </div>\n </div>\n `;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import type { SimpleRuleComponent } from '../types';
2
+ export declare const SimpleAttributeRule: SimpleRuleComponent;
@@ -0,0 +1,78 @@
1
+ import { SimpleSelect } from "./SimpleSelect.js";
2
+ import { SimpleInput } from "./SimpleInput.js";
3
+ import { Operator } from "../types.js";
4
+ import { classMap } from "../../../../utils/class-map.js";
5
+ import { html } from 'lit-html';
6
+ export const SimpleAttributeRule = params => {
7
+ var _a;
8
+ const { operator, value, name } = (_a = params.rule) !== null && _a !== void 0 ? _a : {};
9
+ const { disabled, readonly, t } = params;
10
+ const not = Operator.Not;
11
+ const labelClass = classMap({ 'text-disabled': disabled, 'text-contrast-80': readonly });
12
+ const displayedOperator = operator === null ? 'equal' : operator === not ? not : null;
13
+ return html `
14
+ <foxy-i18n class=${labelClass} infer="" key="name"></foxy-i18n>
15
+
16
+ ${SimpleInput({
17
+ layout: 'auto-grow',
18
+ value: name || '',
19
+ label: 'name',
20
+ type: 'text',
21
+ disabled,
22
+ readonly,
23
+ t,
24
+ onChange: newValue => {
25
+ if (!newValue)
26
+ return params.onChange(null);
27
+ if (value) {
28
+ params.onChange({ name: newValue });
29
+ }
30
+ else {
31
+ params.onChange({ name: newValue, operator: Operator.IsDefined, value: 'true' });
32
+ }
33
+ },
34
+ })}
35
+
36
+ <foxy-i18n class=${labelClass} infer="" key="value"></foxy-i18n>
37
+
38
+ ${SimpleSelect({
39
+ current: {
40
+ label: displayedOperator ? `operator_${displayedOperator}` : 'value_any',
41
+ value: displayedOperator !== null && displayedOperator !== void 0 ? displayedOperator : 'any',
42
+ },
43
+ options: [
44
+ { label: 'value_any', value: 'any' },
45
+ { label: 'operator_equal', value: 'equal' },
46
+ { label: 'operator_not', value: not },
47
+ ],
48
+ disabled,
49
+ readonly,
50
+ t,
51
+ onChange: newValue => {
52
+ if (newValue === 'any') {
53
+ params.onChange(name ? { operator: Operator.IsDefined, value: 'true' } : null);
54
+ }
55
+ else {
56
+ return params.onChange({
57
+ operator: newValue === 'equal' ? null : newValue,
58
+ value: operator === Operator.IsDefined ? '' : value !== null && value !== void 0 ? value : '',
59
+ name: name !== null && name !== void 0 ? name : '',
60
+ });
61
+ }
62
+ },
63
+ })}
64
+ ${value === undefined || operator === Operator.IsDefined
65
+ ? ''
66
+ : SimpleInput({
67
+ layout: 'auto-grow',
68
+ label: 'value',
69
+ value: value || '',
70
+ type: 'text',
71
+ disabled,
72
+ readonly,
73
+ t,
74
+ onChange: newValue => params.onChange({ value: newValue }),
75
+ })}
76
+ `;
77
+ };
78
+ //# sourceMappingURL=SimpleAttributeRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleAttributeRule.js","sourceRoot":"","sources":["../../../../../src/elements/public/QueryBuilder/components/SimpleAttributeRule.ts"],"names":[],"mappings":"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","sourcesContent":["import type { SimpleRuleComponent } from '../types';\n\nimport { SimpleSelect } from './SimpleSelect';\nimport { SimpleInput } from './SimpleInput';\nimport { Operator } from '../types';\nimport { classMap } from '../../../../utils/class-map';\nimport { html } from 'lit-html';\n\nexport const SimpleAttributeRule: SimpleRuleComponent = params => {\n const { operator, value, name } = params.rule ?? {};\n const { disabled, readonly, t } = params;\n\n const not = Operator.Not;\n const labelClass = classMap({ 'text-disabled': disabled, 'text-contrast-80': readonly });\n const displayedOperator = operator === null ? 'equal' : operator === not ? not : null;\n\n return html`\n <foxy-i18n class=${labelClass} infer=\"\" key=\"name\"></foxy-i18n>\n\n ${SimpleInput({\n layout: 'auto-grow',\n value: name || '',\n label: 'name',\n type: 'text',\n disabled,\n readonly,\n t,\n onChange: newValue => {\n if (!newValue) return params.onChange(null);\n if (value) {\n params.onChange({ name: newValue });\n } else {\n params.onChange({ name: newValue, operator: Operator.IsDefined, value: 'true' });\n }\n },\n })}\n\n <foxy-i18n class=${labelClass} infer=\"\" key=\"value\"></foxy-i18n>\n\n ${SimpleSelect({\n current: {\n label: displayedOperator ? `operator_${displayedOperator}` : 'value_any',\n value: displayedOperator ?? 'any',\n },\n options: [\n { label: 'value_any', value: 'any' },\n { label: 'operator_equal', value: 'equal' },\n { label: 'operator_not', value: not },\n ],\n disabled,\n readonly,\n t,\n onChange: newValue => {\n if (newValue === 'any') {\n params.onChange(name ? { operator: Operator.IsDefined, value: 'true' } : null);\n } else {\n return params.onChange({\n operator: newValue === 'equal' ? null : (newValue as Operator),\n value: operator === Operator.IsDefined ? '' : value ?? '',\n name: name ?? '',\n });\n }\n },\n })}\n ${value === undefined || operator === Operator.IsDefined\n ? ''\n : SimpleInput({\n layout: 'auto-grow',\n label: 'value',\n value: value || '',\n type: 'text',\n disabled,\n readonly,\n t,\n onChange: newValue => params.onChange({ value: newValue }),\n })}\n `;\n};\n"]}
@@ -0,0 +1,2 @@
1
+ import type { SimpleRuleComponent } from '../types';
2
+ export declare const SimpleBooleanRule: SimpleRuleComponent;
@@ -0,0 +1,16 @@
1
+ import { SimpleSelect } from "./SimpleSelect.js";
2
+ export const SimpleBooleanRule = params => {
3
+ var _a;
4
+ const options = [
5
+ { label: 'value_any', value: 'any' },
6
+ { label: `${params.option.label}_true`, value: 'true' },
7
+ { label: `${params.option.label}_false`, value: 'false' },
8
+ ];
9
+ return SimpleSelect({
10
+ ...params,
11
+ onChange: newValue => params.onChange(newValue === 'any' ? null : { value: newValue }),
12
+ current: (_a = options.find(o => { var _a; return o.value === ((_a = params.rule) === null || _a === void 0 ? void 0 : _a.value); })) !== null && _a !== void 0 ? _a : options[0],
13
+ options,
14
+ });
15
+ };
16
+ //# sourceMappingURL=SimpleBooleanRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleBooleanRule.js","sourceRoot":"","sources":["../../../../../src/elements/public/QueryBuilder/components/SimpleBooleanRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,0BAAuB;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAwB,MAAM,CAAC,EAAE;;IAC7D,MAAM,OAAO,GAAG;QACd,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE;QACpC,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE;QACvD,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;KAC1D,CAAC;IAEF,OAAO,YAAY,CAAC;QAClB,GAAG,MAAM;QACT,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACtF,OAAO,QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,CAAC,CAAC,KAAK,YAAK,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAA,CAAA,EAAA,CAAC,mCAAI,OAAO,CAAC,CAAC,CAAC;QACxE,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["import type { SimpleRuleComponent } from '../types';\n\nimport { SimpleSelect } from './SimpleSelect';\n\nexport const SimpleBooleanRule: SimpleRuleComponent = params => {\n const options = [\n { label: 'value_any', value: 'any' },\n { label: `${params.option.label}_true`, value: 'true' },\n { label: `${params.option.label}_false`, value: 'false' },\n ];\n\n return SimpleSelect({\n ...params,\n onChange: newValue => params.onChange(newValue === 'any' ? null : { value: newValue }),\n current: options.find(o => o.value === params.rule?.value) ?? options[0],\n options,\n });\n};\n"]}
@@ -0,0 +1,2 @@
1
+ import type { SimpleRuleComponent } from '../types';
2
+ export declare const SimpleDateRule: SimpleRuleComponent;
@@ -0,0 +1,111 @@
1
+ import { serializeDate } from "../../../../utils/serialize-date.js";
2
+ import { SimpleSelect } from "./SimpleSelect.js";
3
+ import { SimpleInput } from "./SimpleInput.js";
4
+ import { parseDate } from "../../../../utils/parse-date.js";
5
+ import { Operator } from "../types.js";
6
+ import { html } from 'lit-html';
7
+ export const SimpleDateRule = params => {
8
+ var _a;
9
+ const { operator, value } = (_a = params.rule) !== null && _a !== void 0 ? _a : {};
10
+ const { min, label } = params.option;
11
+ const { disabled, readonly, t, onChange } = params;
12
+ const isRange = value === null || value === void 0 ? void 0 : value.includes('..');
13
+ const nullOperator = isRange ? 'range' : 'equal';
14
+ const resolvedOperator = operator !== null && operator !== void 0 ? operator : nullOperator;
15
+ const currentLabel = operator === void 0
16
+ ? 'value_any'
17
+ : resolvedOperator === 'range'
18
+ ? 'range'
19
+ : `operator_${resolvedOperator}`;
20
+ return html `
21
+ ${SimpleSelect({
22
+ disabled,
23
+ readonly,
24
+ t,
25
+ current: { label: currentLabel, value: operator === void 0 ? 'any' : resolvedOperator },
26
+ options: [
27
+ { label: 'value_any', value: 'any' },
28
+ { label: 'operator_equal', value: 'equal' },
29
+ { label: 'operator_not', value: Operator.Not },
30
+ { label: 'operator_lessthanorequal', value: Operator.LessThanOrEqual },
31
+ { label: 'operator_lessthan', value: Operator.LessThan },
32
+ { label: 'operator_greaterthanorequal', value: Operator.GreaterThanOrEqual },
33
+ { label: 'operator_greaterthan', value: Operator.GreaterThan },
34
+ { label: 'range', value: 'range' },
35
+ ],
36
+ onChange: newSelection => {
37
+ if (newSelection === 'any')
38
+ return onChange(null);
39
+ if (newSelection === 'range') {
40
+ const fromDate = new Date(value !== null && value !== void 0 ? value : new Date().toISOString());
41
+ const toDate = new Date(fromDate);
42
+ fromDate.setMonth(fromDate.getMonth() - 1);
43
+ fromDate.setHours(0, 0, 0, 0);
44
+ toDate.setHours(23, 59, 59, 999);
45
+ const from = fromDate.toISOString();
46
+ const to = toDate.toISOString();
47
+ return onChange({ operator: null, value: `${from}..${to}` });
48
+ }
49
+ return onChange({
50
+ operator: newSelection === 'equal' ? null : newSelection,
51
+ value: value !== null && value !== void 0 ? value : new Date().toISOString(),
52
+ });
53
+ },
54
+ })}
55
+ ${value === undefined
56
+ ? ''
57
+ : isRange
58
+ ? html `
59
+ ${SimpleInput({
60
+ disabled,
61
+ readonly,
62
+ layout: 'fixed',
63
+ label: 'range_from',
64
+ value: serializeDate(new Date(value.split('..')[0])),
65
+ type: 'date',
66
+ min,
67
+ t,
68
+ onChange: newValue => {
69
+ var _a, _b;
70
+ const fromDate = (_a = parseDate(newValue)) !== null && _a !== void 0 ? _a : new Date();
71
+ const toDate = new Date((_b = value.split('..')[1]) !== null && _b !== void 0 ? _b : Date.now());
72
+ fromDate.setHours(0, 0, 0, 0);
73
+ toDate.setHours(23, 59, 59, 999);
74
+ onChange({ value: `${fromDate.toISOString()}..${toDate.toISOString()}` });
75
+ },
76
+ })}
77
+ ${SimpleInput({
78
+ disabled,
79
+ readonly,
80
+ layout: 'fixed',
81
+ label: 'range_to',
82
+ value: serializeDate(new Date(value.split('..')[1])),
83
+ type: 'date',
84
+ min,
85
+ t,
86
+ onChange: newValue => {
87
+ var _a, _b;
88
+ const fromDate = new Date((_a = value.split('..')[0]) !== null && _a !== void 0 ? _a : Date.now());
89
+ const toDate = (_b = parseDate(newValue)) !== null && _b !== void 0 ? _b : new Date();
90
+ fromDate.setHours(0, 0, 0, 0);
91
+ toDate.setHours(23, 59, 59, 999);
92
+ onChange({ value: `${fromDate.toISOString()}..${toDate.toISOString()}` });
93
+ },
94
+ })}
95
+ `
96
+ : SimpleInput({
97
+ disabled,
98
+ readonly,
99
+ label,
100
+ value: serializeDate(new Date(value !== null && value !== void 0 ? value : Date.now())),
101
+ type: 'date',
102
+ min,
103
+ t,
104
+ onChange: newValue => {
105
+ var _a;
106
+ onChange({ value: ((_a = parseDate(newValue)) !== null && _a !== void 0 ? _a : new Date()).toISOString() });
107
+ },
108
+ })}
109
+ `;
110
+ };
111
+ //# sourceMappingURL=SimpleDateRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleDateRule.js","sourceRoot":"","sources":["../../../../../src/elements/public/QueryBuilder/components/SimpleDateRule.ts"],"names":[],"mappings":"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","sourcesContent":["import type { SimpleRuleComponent } from '../types';\n\nimport { serializeDate } from '../../../../utils/serialize-date';\nimport { SimpleSelect } from './SimpleSelect';\nimport { SimpleInput } from './SimpleInput';\nimport { parseDate } from '../../../../utils/parse-date';\nimport { Operator } from '../types';\nimport { html } from 'lit-html';\n\nexport const SimpleDateRule: SimpleRuleComponent = params => {\n const { operator, value } = params.rule ?? {};\n const { min, label } = params.option;\n const { disabled, readonly, t, onChange } = params;\n\n const isRange = value?.includes('..');\n const nullOperator = isRange ? 'range' : 'equal';\n const resolvedOperator = operator ?? nullOperator;\n const currentLabel =\n operator === void 0\n ? 'value_any'\n : resolvedOperator === 'range'\n ? 'range'\n : `operator_${resolvedOperator}`;\n\n return html`\n ${SimpleSelect({\n disabled,\n readonly,\n t,\n current: { label: currentLabel, value: operator === void 0 ? 'any' : resolvedOperator },\n options: [\n { label: 'value_any', value: 'any' },\n { label: 'operator_equal', value: 'equal' },\n { label: 'operator_not', value: Operator.Not },\n { label: 'operator_lessthanorequal', value: Operator.LessThanOrEqual },\n { label: 'operator_lessthan', value: Operator.LessThan },\n { label: 'operator_greaterthanorequal', value: Operator.GreaterThanOrEqual },\n { label: 'operator_greaterthan', value: Operator.GreaterThan },\n { label: 'range', value: 'range' },\n ],\n onChange: newSelection => {\n if (newSelection === 'any') return onChange(null);\n\n if (newSelection === 'range') {\n const fromDate = new Date(value ?? new Date().toISOString());\n const toDate = new Date(fromDate);\n\n fromDate.setMonth(fromDate.getMonth() - 1);\n fromDate.setHours(0, 0, 0, 0);\n toDate.setHours(23, 59, 59, 999);\n\n const from = fromDate.toISOString();\n const to = toDate.toISOString();\n\n return onChange({ operator: null, value: `${from}..${to}` });\n }\n\n return onChange({\n operator: newSelection === 'equal' ? null : (newSelection as Operator),\n value: value ?? new Date().toISOString(),\n });\n },\n })}\n ${value === undefined\n ? ''\n : isRange\n ? html`\n ${SimpleInput({\n disabled,\n readonly,\n layout: 'fixed',\n label: 'range_from',\n value: serializeDate(new Date(value.split('..')[0])),\n type: 'date',\n min,\n t,\n onChange: newValue => {\n const fromDate = parseDate(newValue) ?? new Date();\n const toDate = new Date(value.split('..')[1] ?? Date.now());\n\n fromDate.setHours(0, 0, 0, 0);\n toDate.setHours(23, 59, 59, 999);\n\n onChange({ value: `${fromDate.toISOString()}..${toDate.toISOString()}` });\n },\n })}\n ${SimpleInput({\n disabled,\n readonly,\n layout: 'fixed',\n label: 'range_to',\n value: serializeDate(new Date(value.split('..')[1])),\n type: 'date',\n min,\n t,\n onChange: newValue => {\n const fromDate = new Date(value.split('..')[0] ?? Date.now());\n const toDate = parseDate(newValue) ?? new Date();\n\n fromDate.setHours(0, 0, 0, 0);\n toDate.setHours(23, 59, 59, 999);\n\n onChange({ value: `${fromDate.toISOString()}..${toDate.toISOString()}` });\n },\n })}\n `\n : SimpleInput({\n disabled,\n readonly,\n label,\n value: serializeDate(new Date(value ?? Date.now())),\n type: 'date',\n min,\n t,\n onChange: newValue => {\n onChange({ value: (parseDate(newValue) ?? new Date()).toISOString() });\n },\n })}\n `;\n};\n"]}
@@ -0,0 +1,14 @@
1
+ import type { TemplateResult } from 'lit-html';
2
+ import type { Option, Rule } from '../types';
3
+ declare type Params = {
4
+ disabled: boolean;
5
+ readonly: boolean;
6
+ options: Option[];
7
+ layout?: string;
8
+ rules: Rule[];
9
+ name?: string;
10
+ t: (key: string) => string;
11
+ onChange: (newParsedValue: Rule[]) => void;
12
+ };
13
+ export declare function SimpleGroup(params: Params): TemplateResult;
14
+ export {};
@@ -0,0 +1,111 @@
1
+ import { SimpleAttributeRule } from "./SimpleAttributeRule.js";
2
+ import { SimpleBooleanRule } from "./SimpleBooleanRule.js";
3
+ import { SimpleNumberRule } from "./SimpleNumberRule.js";
4
+ import { SimpleStringRule } from "./SimpleStringRule.js";
5
+ import { SimpleDateRule } from "./SimpleDateRule.js";
6
+ import { SimpleListRule } from "./SimpleListRule.js";
7
+ import { SimpleSelect } from "./SimpleSelect.js";
8
+ import { ifDefined } from 'lit-html/directives/if-defined';
9
+ import { classMap } from "../../../../utils/class-map.js";
10
+ import { html } from 'lit-html';
11
+ import { Type } from "../types.js";
12
+ export function SimpleGroup(params) {
13
+ var _a;
14
+ const { options, layout, rules, name, disabled, readonly, t, onChange } = params;
15
+ const editedOptions = options.filter(v => rules.find(vv => vv.path === v.path));
16
+ const orderRule = rules.find(v => v.path === 'order');
17
+ const parsedOrderRule = (_a = orderRule === null || orderRule === void 0 ? void 0 : orderRule.value) === null || _a === void 0 ? void 0 : _a.split(',').map(v => {
18
+ const [path, order = 'asc'] = decodeURIComponent(v).split(' ');
19
+ return { path: path.trim(), order: order.trim() };
20
+ });
21
+ return html `
22
+ <foxy-internal-summary-control
23
+ aria-label=${params.t('query_builder_group')}
24
+ helper-text=""
25
+ layout=${ifDefined(layout)}
26
+ label=${layout && name ? t(name) : ''}
27
+ count=${ifDefined(editedOptions.length || void 0)}
28
+ infer=""
29
+ >
30
+ ${options.map(option => {
31
+ var _a;
32
+ const { type, label, list, path } = option;
33
+ const controlsRenderers = {
34
+ [Type.Attribute]: SimpleAttributeRule,
35
+ [Type.Boolean]: SimpleBooleanRule,
36
+ [Type.String]: SimpleStringRule,
37
+ [Type.Number]: SimpleNumberRule,
38
+ [Type.Date]: SimpleDateRule,
39
+ [Type.Any]: SimpleStringRule,
40
+ };
41
+ const Control = list ? SimpleListRule : controlsRenderers[type];
42
+ const order = (_a = parsedOrderRule === null || parsedOrderRule === void 0 ? void 0 : parsedOrderRule.find(v => v.path === path)) === null || _a === void 0 ? void 0 : _a.order;
43
+ const rule = rules.find(rule => rule.path === path);
44
+ const isDirty = !!rule || !!order;
45
+ return html `
46
+ <div
47
+ aria-label=${t('query_builder_rule')}
48
+ class=${classMap({
49
+ 'flex flex-wrap items-center justify-end gap-s': true,
50
+ 'bg-primary-10 text-primary': isDirty,
51
+ })}
52
+ >
53
+ <foxy-i18n infer="" key=${label}></foxy-i18n>
54
+ <span class="transform scale-150 mr-auto ${isDirty ? '' : 'opacity-0'}">&bull;</span>
55
+ ${Control({
56
+ disabled,
57
+ readonly,
58
+ option,
59
+ rule,
60
+ t,
61
+ onChange: newParsedValue => {
62
+ if (newParsedValue && rule) {
63
+ Object.assign(rule, newParsedValue);
64
+ return onChange(rules);
65
+ }
66
+ else if (newParsedValue) {
67
+ const defaults = { path: path, value: '', operator: null };
68
+ return onChange([...rules, { ...defaults, ...newParsedValue }]);
69
+ }
70
+ else {
71
+ return onChange(rules.filter(v => v.path !== path));
72
+ }
73
+ },
74
+ })}
75
+ ${type === Type.Date || type === Type.Number
76
+ ? SimpleSelect({
77
+ disabled,
78
+ readonly,
79
+ t,
80
+ current: {
81
+ label: `order_${order !== null && order !== void 0 ? order : 'none'}${order ? `_${type}` : ''}`,
82
+ value: order !== null && order !== void 0 ? order : 'none',
83
+ },
84
+ options: [
85
+ { label: 'order_none', value: 'none' },
86
+ { label: `order_asc_${type}`, value: 'asc' },
87
+ { label: `order_desc_${type}`, value: 'desc' },
88
+ ],
89
+ onChange: newSelection => {
90
+ const newParsedOrderRule = (parsedOrderRule !== null && parsedOrderRule !== void 0 ? parsedOrderRule : [])
91
+ .filter(v => v.path !== path)
92
+ .concat([{ path, order: newSelection }]);
93
+ const newOrderValue = newParsedOrderRule
94
+ .filter(v => v.order !== 'none')
95
+ .map(v => `${v.path} ${v.order}`)
96
+ .join();
97
+ const newRules = rules.filter(v => v.path !== 'order');
98
+ if (newOrderValue) {
99
+ newRules.push({ path: 'order', value: newOrderValue, operator: null });
100
+ }
101
+ onChange(newRules);
102
+ },
103
+ })
104
+ : ''}
105
+ </div>
106
+ `;
107
+ })}
108
+ </foxy-internal-summary-control>
109
+ `;
110
+ }
111
+ //# sourceMappingURL=SimpleGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleGroup.js","sourceRoot":"","sources":["../../../../../src/elements/public/QueryBuilder/components/SimpleGroup.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TemplateResult } from 'lit-html';\nimport type { Option, Rule } from '../types';\n\nimport { SimpleAttributeRule } from './SimpleAttributeRule';\nimport { SimpleBooleanRule } from './SimpleBooleanRule';\nimport { SimpleNumberRule } from './SimpleNumberRule';\nimport { SimpleStringRule } from './SimpleStringRule';\nimport { SimpleDateRule } from './SimpleDateRule';\nimport { SimpleListRule } from './SimpleListRule';\nimport { SimpleSelect } from './SimpleSelect';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { classMap } from '../../../../utils/class-map';\nimport { html } from 'lit-html';\nimport { Type } from '../types';\n\ntype Params = {\n disabled: boolean;\n readonly: boolean;\n options: Option[];\n layout?: string;\n rules: Rule[];\n name?: string;\n t: (key: string) => string;\n onChange: (newParsedValue: Rule[]) => void;\n};\n\nexport function SimpleGroup(params: Params): TemplateResult {\n const { options, layout, rules, name, disabled, readonly, t, onChange } = params;\n\n const editedOptions = options.filter(v => rules.find(vv => vv.path === v.path));\n const orderRule = rules.find(v => v.path === 'order');\n const parsedOrderRule = orderRule?.value?.split(',').map(v => {\n const [path, order = 'asc'] = decodeURIComponent(v).split(' ');\n return { path: path.trim(), order: order.trim() };\n });\n\n return html`\n <foxy-internal-summary-control\n aria-label=${params.t('query_builder_group')}\n helper-text=\"\"\n layout=${ifDefined(layout)}\n label=${layout && name ? t(name) : ''}\n count=${ifDefined(editedOptions.length || void 0)}\n infer=\"\"\n >\n ${options.map(option => {\n const { type, label, list, path } = option;\n\n const controlsRenderers = {\n [Type.Attribute]: SimpleAttributeRule,\n [Type.Boolean]: SimpleBooleanRule,\n [Type.String]: SimpleStringRule,\n [Type.Number]: SimpleNumberRule,\n [Type.Date]: SimpleDateRule,\n [Type.Any]: SimpleStringRule,\n } as const;\n\n const Control = list ? SimpleListRule : controlsRenderers[type];\n const order = parsedOrderRule?.find(v => v.path === path)?.order;\n const rule = rules.find(rule => rule.path === path);\n const isDirty = !!rule || !!order;\n\n return html`\n <div\n aria-label=${t('query_builder_rule')}\n class=${classMap({\n 'flex flex-wrap items-center justify-end gap-s': true,\n 'bg-primary-10 text-primary': isDirty,\n })}\n >\n <foxy-i18n infer=\"\" key=${label}></foxy-i18n>\n <span class=\"transform scale-150 mr-auto ${isDirty ? '' : 'opacity-0'}\">&bull;</span>\n ${Control({\n disabled,\n readonly,\n option,\n rule,\n t,\n onChange: newParsedValue => {\n if (newParsedValue && rule) {\n Object.assign(rule, newParsedValue);\n return onChange(rules);\n } else if (newParsedValue) {\n const defaults = { path: path, value: '', operator: null };\n return onChange([...rules, { ...defaults, ...newParsedValue }]);\n } else {\n return onChange(rules.filter(v => v.path !== path));\n }\n },\n })}\n ${type === Type.Date || type === Type.Number\n ? SimpleSelect({\n disabled,\n readonly,\n t,\n current: {\n label: `order_${order ?? 'none'}${order ? `_${type}` : ''}`,\n value: order ?? 'none',\n },\n options: [\n { label: 'order_none', value: 'none' },\n { label: `order_asc_${type}`, value: 'asc' },\n { label: `order_desc_${type}`, value: 'desc' },\n ],\n onChange: newSelection => {\n const newParsedOrderRule = (parsedOrderRule ?? [])\n .filter(v => v.path !== path)\n .concat([{ path, order: newSelection }]);\n\n const newOrderValue = newParsedOrderRule\n .filter(v => v.order !== 'none')\n .map(v => `${v.path} ${v.order}`)\n .join();\n\n const newRules = rules.filter(v => v.path !== 'order');\n if (newOrderValue) {\n newRules.push({ path: 'order', value: newOrderValue, operator: null });\n }\n\n onChange(newRules);\n },\n })\n : ''}\n </div>\n `;\n })}\n </foxy-internal-summary-control>\n `;\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import type { TemplateResult } from 'lit-html';
2
+ import type { I18n } from '../../I18n/I18n';
3
+ declare type Params = {
4
+ disabled: boolean;
5
+ readonly: boolean;
6
+ layout?: 'auto-grow' | 'fixed';
7
+ value: string;
8
+ label: string;
9
+ type?: string;
10
+ min?: string | number;
11
+ t: I18n['t'];
12
+ onChange: (newValue: string) => void;
13
+ };
14
+ export declare function SimpleInput(params: Params): TemplateResult;
15
+ export {};