@feedmepos/mf-connect 0.0.3-beta.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 (303) hide show
  1. package/README.md +31 -0
  2. package/dist/Analytic-Dljae6Yl.js +614 -0
  3. package/dist/Broadcast-CejuUG-1.js +216 -0
  4. package/dist/CampaignTypeDialog.vue_vue_type_script_setup_true_lang-DAxAfdPe.js +117 -0
  5. package/dist/Card-BqgQuGNe.js +775 -0
  6. package/dist/ChipMenu.vue_vue_type_script_setup_true_lang-BPpZZNkr.js +97 -0
  7. package/dist/Collections-CmIFQQxo.js +437 -0
  8. package/dist/Credit-Bi7zJdvK.js +214 -0
  9. package/dist/EditCampaignSheet.vue_vue_type_script_setup_true_lang-DLb_mc7S.js +1952 -0
  10. package/dist/EffectSheet.vue_vue_type_style_index_0_lang-BN9vbCIU.js +309 -0
  11. package/dist/Experience-CndnSCnn.js +211 -0
  12. package/dist/Game-CDctToIr.js +242 -0
  13. package/dist/ImageInput.vue_vue_type_script_setup_true_lang-DMsxZkxf.js +144 -0
  14. package/dist/JsonViewer-CDb_cQJh.js +87 -0
  15. package/dist/MainLayout-5NCcYKPh.js +18770 -0
  16. package/dist/Marketing-DcRex89D.js +309 -0
  17. package/dist/Member-KDAOZ4y7.js +90 -0
  18. package/dist/MemberList-7cfMhvnU.js +1752 -0
  19. package/dist/MemberOverview-C2n9oJZh.js +58 -0
  20. package/dist/MemberTransactions-Dd1NNP_h.js +38 -0
  21. package/dist/MessageInput.vue_vue_type_script_setup_true_lang-Bniz5T6m.js +163 -0
  22. package/dist/Point-B-Yo0tOQ.js +211 -0
  23. package/dist/Promotion-B2t2rOB2.js +219 -0
  24. package/dist/RuleGroup.vue_vue_type_script_setup_true_lang-Ml889DRQ.js +1461 -0
  25. package/dist/Segment-quTtfnsL.js +392 -0
  26. package/dist/Setting-BMQkU33O.js +1862 -0
  27. package/dist/Store-C0JEZe6U.js +1415 -0
  28. package/dist/StoreRewards-CozvYaoP.js +432 -0
  29. package/dist/StoreTransactions.vue_vue_type_script_setup_true_lang-BHaiBpBC.js +640 -0
  30. package/dist/TargetLocationInput.vue_vue_type_script_setup_true_lang-CASpFDTp.js +124 -0
  31. package/dist/Tier-DU0ptI0I.js +821 -0
  32. package/dist/Title-BPvcg94P.js +496 -0
  33. package/dist/Transaction-Cgs5H5Vg.js +34 -0
  34. package/dist/Voucher-CMLmRUp5.js +448 -0
  35. package/dist/ZodTextField.vue_vue_type_script_setup_true_lang-3LlSDiq0.js +140 -0
  36. package/dist/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  37. package/dist/app-DRUbn5GO.js +31282 -0
  38. package/dist/app.js +5 -0
  39. package/dist/campaign-CpzFl8Vr.js +4 -0
  40. package/dist/campaign-DmbniSEP.js +93 -0
  41. package/dist/collection.fn-DHlfGYAC.js +24 -0
  42. package/dist/dto-ts2Lkngs.js +353 -0
  43. package/dist/effect-BTYIMeYm.js +61 -0
  44. package/dist/feedme.ico +0 -0
  45. package/dist/helper-CRmH0_yS.js +58 -0
  46. package/dist/index-BTanTa5F.js +64 -0
  47. package/dist/index-BZbepUcT.js +104 -0
  48. package/dist/index-C4AxDwBx.js +674 -0
  49. package/dist/index-CKhgwiA8.js +234 -0
  50. package/dist/index-ChAaKnz9.js +99 -0
  51. package/dist/index-CuvNtC_M.js +61 -0
  52. package/dist/index-DGFTGZj1.js +190 -0
  53. package/dist/index-Dbd4WA4r.js +61 -0
  54. package/dist/index-DkxEfDKI.js +1757 -0
  55. package/dist/index-DzrgTguB.js +38 -0
  56. package/dist/index-Iej6yAF2.js +8796 -0
  57. package/dist/index-Ix0P1Q7X.js +1742 -0
  58. package/dist/index-y3taWZm8.js +29565 -0
  59. package/dist/libs/packages/core/src/bill/bill.dto.d.ts +75 -0
  60. package/dist/libs/packages/core/src/bill/index.d.ts +115 -0
  61. package/dist/libs/packages/core/src/business/index.d.ts +21 -0
  62. package/dist/libs/packages/core/src/campaign/broadcast/index.d.ts +36 -0
  63. package/dist/libs/packages/core/src/campaign/campaign.enum.d.ts +3 -0
  64. package/dist/libs/packages/core/src/campaign/campaign.fn.d.ts +5 -0
  65. package/dist/libs/packages/core/src/campaign/group.d.ts +25 -0
  66. package/dist/libs/packages/core/src/campaign/index.d.ts +33448 -0
  67. package/dist/libs/packages/core/src/collectible/collectible.dto.d.ts +15 -0
  68. package/dist/libs/packages/core/src/collectible/collectible.enum.d.ts +14 -0
  69. package/dist/libs/packages/core/src/collectible/helper.d.ts +195 -0
  70. package/dist/libs/packages/core/src/collectible/index.d.ts +1588 -0
  71. package/dist/libs/packages/core/src/collectible/pool/index.d.ts +1381 -0
  72. package/dist/libs/packages/core/src/collection/collection.fn.d.ts +5 -0
  73. package/dist/libs/packages/core/src/collection/index.d.ts +901 -0
  74. package/dist/libs/packages/core/src/collection/transaction.d.ts +845 -0
  75. package/dist/libs/packages/core/src/collection/transaction.fn.d.ts +10 -0
  76. package/dist/libs/packages/core/src/common/array.d.ts +2 -0
  77. package/dist/libs/packages/core/src/common/hash.d.ts +10 -0
  78. package/dist/libs/packages/core/src/common/index.d.ts +42 -0
  79. package/dist/libs/packages/core/src/common/number.d.ts +7 -0
  80. package/dist/libs/packages/core/src/common/object.d.ts +5 -0
  81. package/dist/libs/packages/core/src/common/objectId.d.ts +2 -0
  82. package/dist/libs/packages/core/src/common/string.d.ts +4 -0
  83. package/dist/libs/packages/core/src/counter/counter.dto.d.ts +767 -0
  84. package/dist/libs/packages/core/src/counter/index.d.ts +1 -0
  85. package/dist/libs/packages/core/src/event/index.d.ts +4246 -0
  86. package/dist/libs/packages/core/src/feedback/index.d.ts +24 -0
  87. package/dist/libs/packages/core/src/game/index.d.ts +32 -0
  88. package/dist/libs/packages/core/src/index.d.ts +21 -0
  89. package/dist/libs/packages/core/src/internal/index.d.ts +56 -0
  90. package/dist/libs/packages/core/src/legacy/setting/index.d.ts +89 -0
  91. package/dist/libs/packages/core/src/location/index.d.ts +44 -0
  92. package/dist/libs/packages/core/src/loyalty/card/index.d.ts +1287 -0
  93. package/dist/libs/packages/core/src/loyalty/index.d.ts +3 -0
  94. package/dist/libs/packages/core/src/loyalty/tier/helper.d.ts +2 -0
  95. package/dist/libs/packages/core/src/loyalty/tier/index.d.ts +251 -0
  96. package/dist/libs/packages/core/src/loyalty/title/index.d.ts +4 -0
  97. package/dist/libs/packages/core/src/marketing-material/index.d.ts +186 -0
  98. package/dist/libs/packages/core/src/marketing-material/marketing-material.enum.d.ts +3 -0
  99. package/dist/libs/packages/core/src/notification/index.d.ts +130 -0
  100. package/dist/libs/packages/core/src/pagination/index.d.ts +25 -0
  101. package/dist/libs/packages/core/src/permission/index.d.ts +243 -0
  102. package/dist/libs/packages/core/src/service/index.d.ts +10 -0
  103. package/dist/libs/packages/core/src/store/dto.d.ts +1060 -0
  104. package/dist/libs/packages/core/src/store/index.d.ts +3894 -0
  105. package/dist/libs/packages/core/src/store/store.fn.d.ts +103 -0
  106. package/dist/libs/packages/core/src/template/index.d.ts +880 -0
  107. package/dist/libs/packages/core/src/template/templates.d.ts +1217 -0
  108. package/dist/libs/packages/core/src/user/index.d.ts +245 -0
  109. package/dist/libs/packages/core/src/user/segment.dto.d.ts +27 -0
  110. package/dist/libs/packages/core/src/user/segmentation.d.ts +28 -0
  111. package/dist/libs/packages/core/src/user/user.dto.d.ts +873 -0
  112. package/dist/libs/packages/core/src/validation/index.d.ts +1 -0
  113. package/dist/libs/packages/core/src/validation/rule/builder.d.ts +36 -0
  114. package/dist/libs/packages/core/src/validation/rule/index.d.ts +45 -0
  115. package/dist/libs/packages/core/src/validation/rule/operator.enum.d.ts +405 -0
  116. package/dist/libs/packages/core/src/validation/rule/rule.fn.d.ts +6 -0
  117. package/dist/libs/packages/validation/src/index.d.ts +3 -0
  118. package/dist/libs/packages/validation/src/rule/rule-builder.d.ts +19 -0
  119. package/dist/libs/packages/validation/src/rule/rule.d.ts +52 -0
  120. package/dist/libs/packages/validation/src/rule/validate.d.ts +2 -0
  121. package/dist/loading-Dy-VtOFu.js +3131 -0
  122. package/dist/lodash-BnddClG8.js +3678 -0
  123. package/dist/membership-28vBGpTw.js +213 -0
  124. package/dist/moment-BWErdI6_.js +2578 -0
  125. package/dist/money-Ch7o4R5s.js +15 -0
  126. package/dist/number-BgOMhVX5.js +12 -0
  127. package/dist/object-qECH92oz.js +26 -0
  128. package/dist/objectId-dwaoBfJX.js +7 -0
  129. package/dist/packages/connect/src/App.vue.d.ts +2 -0
  130. package/dist/packages/connect/src/Entry.vue.d.ts +2 -0
  131. package/dist/packages/connect/src/api/auth/index.d.ts +3 -0
  132. package/dist/packages/connect/src/api/campaign/index.d.ts +30 -0
  133. package/dist/packages/connect/src/api/campaign/template.d.ts +5 -0
  134. package/dist/packages/connect/src/api/index.d.ts +24 -0
  135. package/dist/packages/connect/src/api/location/index.d.ts +7 -0
  136. package/dist/packages/connect/src/api/marketing-material/index.d.ts +7 -0
  137. package/dist/packages/connect/src/api/member/index.d.ts +12 -0
  138. package/dist/packages/connect/src/api/membership/index.d.ts +31 -0
  139. package/dist/packages/connect/src/api/segments/index.d.ts +13 -0
  140. package/dist/packages/connect/src/api/settings/index.d.ts +4 -0
  141. package/dist/packages/connect/src/api/transaction/index.d.ts +9 -0
  142. package/dist/packages/connect/src/api/users/index.d.ts +8 -0
  143. package/dist/packages/connect/src/app.d.ts +16 -0
  144. package/dist/packages/connect/src/components/NavigationTab.vue.d.ts +2 -0
  145. package/dist/packages/connect/src/components/analytic/CampaignCard.vue.d.ts +24 -0
  146. package/dist/packages/connect/src/components/analytic/CampaignChip.vue.d.ts +47 -0
  147. package/dist/packages/connect/src/components/analytic/CampaignGroup.vue.d.ts +25 -0
  148. package/dist/packages/connect/src/components/analytic/CampaignStat.vue.d.ts +31 -0
  149. package/dist/packages/connect/src/components/analytic/LinkCampaign.vue.d.ts +30 -0
  150. package/dist/packages/connect/src/components/campaign/CampaignChip.vue.d.ts +13 -0
  151. package/dist/packages/connect/src/components/campaign/CampaignTriggerInput.vue.d.ts +34 -0
  152. package/dist/packages/connect/src/components/campaign/EarningOptionInput.vue.d.ts +50 -0
  153. package/dist/packages/connect/src/components/campaign/GameTypeInput.vue.d.ts +15 -0
  154. package/dist/packages/connect/src/components/campaign/MessageInput.vue.d.ts +58 -0
  155. package/dist/packages/connect/src/components/campaign/PromotionGameTypeInput.vue.d.ts +19 -0
  156. package/dist/packages/connect/src/components/campaign/ScheduleRuleInput.vue.d.ts +29 -0
  157. package/dist/packages/connect/src/components/campaign/TargetLocationInput.vue.d.ts +32 -0
  158. package/dist/packages/connect/src/components/campaign/ValidityInput.vue.d.ts +59 -0
  159. package/dist/packages/connect/src/components/collectible/CollectibleChip.vue.d.ts +13 -0
  160. package/dist/packages/connect/src/components/collectible/CollectibleOptionInput.vue.d.ts +59 -0
  161. package/dist/packages/connect/src/components/collection/Collections.vue.d.ts +2 -0
  162. package/dist/packages/connect/src/components/custom/ChipMenu.vue.d.ts +96 -0
  163. package/dist/packages/connect/src/components/custom/CustomSelect.vue.d.ts +68 -0
  164. package/dist/packages/connect/src/components/custom/DateInput.vue.d.ts +24 -0
  165. package/dist/packages/connect/src/components/custom/DateRangeChip.vue.d.ts +25 -0
  166. package/dist/packages/connect/src/components/custom/DateRangeInput.vue.d.ts +28 -0
  167. package/dist/packages/connect/src/components/custom/FilterChip.vue.d.ts +90 -0
  168. package/dist/packages/connect/src/components/custom/ImageInput.vue.d.ts +115 -0
  169. package/dist/packages/connect/src/components/custom/json/JsonNode.vue.d.ts +36 -0
  170. package/dist/packages/connect/src/components/custom/json/JsonViewer.vue.d.ts +22 -0
  171. package/dist/packages/connect/src/components/custom/zod/ZodTextField.vue.d.ts +52 -0
  172. package/dist/packages/connect/src/components/loading/ImageLoading.vue.d.ts +2 -0
  173. package/dist/packages/connect/src/components/loading/LottieAnimation.vue.d.ts +39 -0
  174. package/dist/packages/connect/src/components/loading/Splash.vue.d.ts +2 -0
  175. package/dist/packages/connect/src/components/loyalty/CampaignTypeDialog.vue.d.ts +13 -0
  176. package/dist/packages/connect/src/components/loyalty/CreditCoinDialog.vue.d.ts +29 -0
  177. package/dist/packages/connect/src/components/loyalty/TierExpression.vue.d.ts +32 -0
  178. package/dist/packages/connect/src/components/marketing/HeadlineStyleSideSheet.vue.d.ts +42 -0
  179. package/dist/packages/connect/src/components/marketing/ImageSideSheet.vue.d.ts +40 -0
  180. package/dist/packages/connect/src/components/marketing/LinkRewardSideSheet.vue.d.ts +30 -0
  181. package/dist/packages/connect/src/components/marketing/MarketingSheet.vue.d.ts +2 -0
  182. package/dist/packages/connect/src/components/marketing/RewardDropDown.vue.d.ts +26 -0
  183. package/dist/packages/connect/src/components/marketing/RightSheet.vue.d.ts +66 -0
  184. package/dist/packages/connect/src/components/marketing/SlideUpDown.vue.d.ts +27 -0
  185. package/dist/packages/connect/src/components/marketing/platform/BrandAppImage.vue.d.ts +103 -0
  186. package/dist/packages/connect/src/components/marketing/platform/FacebookPost.vue.d.ts +103 -0
  187. package/dist/packages/connect/src/components/marketing/platform/FacebookStory.vue.d.ts +103 -0
  188. package/dist/packages/connect/src/components/marketing/platform/ImageCanvas.vue.d.ts +81 -0
  189. package/dist/packages/connect/src/components/marketing/platform/InstagramPost.vue.d.ts +102 -0
  190. package/dist/packages/connect/src/components/marketing/platform/InstagramReel.vue.d.ts +102 -0
  191. package/dist/packages/connect/src/components/marketing/platform/InstagramStory.vue.d.ts +102 -0
  192. package/dist/packages/connect/src/components/marketing/platform/TvImage.vue.d.ts +103 -0
  193. package/dist/packages/connect/src/components/member/MemberDetail.vue.d.ts +2 -0
  194. package/dist/packages/connect/src/components/member/MemberList.vue.d.ts +2 -0
  195. package/dist/packages/connect/src/components/member/MemberOverview.vue.d.ts +2 -0
  196. package/dist/packages/connect/src/components/member/MemberStatsDialog.vue.d.ts +21 -0
  197. package/dist/packages/connect/src/components/rule/BillRuleGroup.vue.d.ts +19 -0
  198. package/dist/packages/connect/src/components/rule/CustomRuleDialog.vue.d.ts +30 -0
  199. package/dist/packages/connect/src/components/rule/FeedbackRuleGroup.vue.d.ts +19 -0
  200. package/dist/packages/connect/src/components/rule/PresetRuleDialog.vue.d.ts +20 -0
  201. package/dist/packages/connect/src/components/rule/RuleConfigurator.vue.d.ts +37 -0
  202. package/dist/packages/connect/src/components/rule/RuleEntry.vue.d.ts +19 -0
  203. package/dist/packages/connect/src/components/rule/RuleEquator.vue.d.ts +31 -0
  204. package/dist/packages/connect/src/components/rule/RuleGroup.vue.d.ts +30 -0
  205. package/dist/packages/connect/src/components/rule/SegmentConfigurator.vue.d.ts +17 -0
  206. package/dist/packages/connect/src/components/rule/TimeRuleGroup.vue.d.ts +19 -0
  207. package/dist/packages/connect/src/components/rule/UserRuleGroup.vue.d.ts +19 -0
  208. package/dist/packages/connect/src/components/rule/equators/BirthdayInput.vue.d.ts +15 -0
  209. package/dist/packages/connect/src/components/rule/equators/IsDayInput.vue.d.ts +24 -0
  210. package/dist/packages/connect/src/components/rule/equators/IsInMonthInput.vue.d.ts +16 -0
  211. package/dist/packages/connect/src/components/rule/equators/IsRangeInput.vue.d.ts +55 -0
  212. package/dist/packages/connect/src/components/rule/equators/RruleInput.vue.d.ts +37 -0
  213. package/dist/packages/connect/src/components/rule/presets.d.ts +18 -0
  214. package/dist/packages/connect/src/components/segment/ReviewSegment.vue.d.ts +16 -0
  215. package/dist/packages/connect/src/components/setting/LinkDeviceDialog.vue.d.ts +2 -0
  216. package/dist/packages/connect/src/components/store/AddBundleCard.vue.d.ts +6 -0
  217. package/dist/packages/connect/src/components/store/CategoryDialog.vue.d.ts +23 -0
  218. package/dist/packages/connect/src/components/store/StoreBundleCard.vue.d.ts +20 -0
  219. package/dist/packages/connect/src/components/store/StoreTransactions.vue.d.ts +10 -0
  220. package/dist/packages/connect/src/components/stripe/StripeSetting.vue.d.ts +21 -0
  221. package/dist/packages/connect/src/components/tax/TaxInclusiveSetting.vue.d.ts +30 -0
  222. package/dist/packages/connect/src/components/tax/TaxVariantSetting.vue.d.ts +24 -0
  223. package/dist/packages/connect/src/components/template/TemplateDialog.vue.d.ts +24 -0
  224. package/dist/packages/connect/src/components/template/TemplateInput.vue.d.ts +54 -0
  225. package/dist/packages/connect/src/components/tier/TierCard.vue.d.ts +39 -0
  226. package/dist/packages/connect/src/components/transactions/CollectionTransactions.vue.d.ts +10 -0
  227. package/dist/packages/connect/src/components/transactions/MemberTransactions.vue.d.ts +2 -0
  228. package/dist/packages/connect/src/composables/index.d.ts +2 -0
  229. package/dist/packages/connect/src/composables/loading.d.ts +19 -0
  230. package/dist/packages/connect/src/composables/template.d.ts +7 -0
  231. package/dist/packages/connect/src/export/collection.export.d.ts +9 -0
  232. package/dist/packages/connect/src/export/index.d.ts +9 -0
  233. package/dist/packages/connect/src/export/member.export.d.ts +33 -0
  234. package/dist/packages/connect/src/helpers/campaign.d.ts +94 -0
  235. package/dist/packages/connect/src/helpers/collectible.d.ts +58 -0
  236. package/dist/packages/connect/src/helpers/common.d.ts +1 -0
  237. package/dist/packages/connect/src/helpers/country.d.ts +21 -0
  238. package/dist/packages/connect/src/helpers/currency.d.ts +2 -0
  239. package/dist/packages/connect/src/helpers/effect.d.ts +7 -0
  240. package/dist/packages/connect/src/helpers/message.d.ts +32 -0
  241. package/dist/packages/connect/src/helpers/number.d.ts +3 -0
  242. package/dist/packages/connect/src/helpers/qr.d.ts +7 -0
  243. package/dist/packages/connect/src/helpers/rrule.d.ts +26 -0
  244. package/dist/packages/connect/src/helpers/rule.d.ts +91 -0
  245. package/dist/packages/connect/src/helpers/string.d.ts +16 -0
  246. package/dist/packages/connect/src/helpers/tax.d.ts +74 -0
  247. package/dist/packages/connect/src/helpers/trigger.d.ts +59 -0
  248. package/dist/packages/connect/src/helpers/zod.d.ts +27 -0
  249. package/dist/packages/connect/src/layouts/MainLayout.vue.d.ts +2 -0
  250. package/dist/packages/connect/src/main.d.ts +2 -0
  251. package/dist/packages/connect/src/router/index.d.ts +4 -0
  252. package/dist/packages/connect/src/router/name.d.ts +3 -0
  253. package/dist/packages/connect/src/router/shared.d.ts +11 -0
  254. package/dist/packages/connect/src/sheets/analytic/AnalyticSheet.vue.d.ts +12 -0
  255. package/dist/packages/connect/src/sheets/campaign/EditCampaignSheet.vue.d.ts +11 -0
  256. package/dist/packages/connect/src/sheets/campaign/SendVoucherSheet.vue.d.ts +13 -0
  257. package/dist/packages/connect/src/sheets/card/CardDesignSheet.vue.d.ts +9 -0
  258. package/dist/packages/connect/src/sheets/card/CreateCardSheet.vue.d.ts +9 -0
  259. package/dist/packages/connect/src/sheets/collectible/EditRewardSheet.vue.d.ts +15 -0
  260. package/dist/packages/connect/src/sheets/collectible/EditTitleSheet.vue.d.ts +15 -0
  261. package/dist/packages/connect/src/sheets/collection/CreateCollectionSheet.vue.d.ts +9 -0
  262. package/dist/packages/connect/src/sheets/effect/EffectSheet.vue.d.ts +135 -0
  263. package/dist/packages/connect/src/sheets/member/MemberDetailSheet.vue.d.ts +22 -0
  264. package/dist/packages/connect/src/sheets/store/StoreSettingSheet.vue.d.ts +80 -0
  265. package/dist/packages/connect/src/types/index.d.ts +4 -0
  266. package/dist/packages/connect/src/views/Analytic.vue.d.ts +2 -0
  267. package/dist/packages/connect/src/views/Marketing.vue.d.ts +2 -0
  268. package/dist/packages/connect/src/views/Setting.vue.d.ts +2 -0
  269. package/dist/packages/connect/src/views/Transaction.vue.d.ts +2 -0
  270. package/dist/packages/connect/src/views/campaign/Broadcast.vue.d.ts +2 -0
  271. package/dist/packages/connect/src/views/campaign/Promotion.vue.d.ts +2 -0
  272. package/dist/packages/connect/src/views/campaign/Voucher.vue.d.ts +2 -0
  273. package/dist/packages/connect/src/views/loyalty/Card.vue.d.ts +2 -0
  274. package/dist/packages/connect/src/views/loyalty/Member.vue.d.ts +2 -0
  275. package/dist/packages/connect/src/views/loyalty/Segment.vue.d.ts +2 -0
  276. package/dist/packages/connect/src/views/program/Credit.vue.d.ts +2 -0
  277. package/dist/packages/connect/src/views/program/Experience.vue.d.ts +2 -0
  278. package/dist/packages/connect/src/views/program/Game.vue.d.ts +2 -0
  279. package/dist/packages/connect/src/views/program/Point.vue.d.ts +2 -0
  280. package/dist/packages/connect/src/views/program/Tier.vue.d.ts +2 -0
  281. package/dist/packages/connect/src/views/program/Title.vue.d.ts +2 -0
  282. package/dist/packages/connect/src/views/store/Store.vue.d.ts +2 -0
  283. package/dist/packages/connect/src/views/store/StoreRewards.vue.d.ts +2 -0
  284. package/dist/rule-ByvLGHt_.js +1966 -0
  285. package/dist/rule-builder-C2aRGLCt.js +89 -0
  286. package/dist/style.css +1 -0
  287. package/dist/template-xUeXMsdp.js +190 -0
  288. package/dist/tier-BJDhpH6X.js +4 -0
  289. package/dist/tiers/tier=1.png +0 -0
  290. package/dist/tiers/tier=2.png +0 -0
  291. package/dist/tiers/tier=3.png +0 -0
  292. package/dist/tiers/tier=4.png +0 -0
  293. package/dist/titles/type=diamond.png +0 -0
  294. package/dist/titles/type=drinks.png +0 -0
  295. package/dist/titles/type=food.png +0 -0
  296. package/dist/titles/type=heart.png +0 -0
  297. package/dist/titles/type=medal.png +0 -0
  298. package/dist/titles/type=spend.png +0 -0
  299. package/dist/titles/type=thank-you.png +0 -0
  300. package/dist/titles/type=thumbs-up.png +0 -0
  301. package/dist/titles/type=years.png +0 -0
  302. package/dist/xlsx-CxXT5AXI.js +15491 -0
  303. package/package.json +67 -0
@@ -0,0 +1 @@
1
+ export * from './rule';
@@ -0,0 +1,36 @@
1
+ import { z } from 'zod';
2
+ export declare const F_RB_CONTEXT: z.ZodEnum<["timeframe"]>;
3
+ export declare const FdoTimeframeRule: z.ZodObject<{
4
+ type: z.ZodLiteral<"timeframe">;
5
+ property: z.ZodOptional<z.ZodString>;
6
+ start: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
7
+ end: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ type: "timeframe";
10
+ property?: string | undefined;
11
+ start?: Date | null | undefined;
12
+ end?: Date | null | undefined;
13
+ }, {
14
+ type: "timeframe";
15
+ property?: string | undefined;
16
+ start?: Date | null | undefined;
17
+ end?: Date | null | undefined;
18
+ }>;
19
+ export declare const FdoRuleConfig: z.ZodObject<{
20
+ type: z.ZodLiteral<"timeframe">;
21
+ property: z.ZodOptional<z.ZodString>;
22
+ start: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
23
+ end: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
24
+ }, "strip", z.ZodTypeAny, {
25
+ type: "timeframe";
26
+ property?: string | undefined;
27
+ start?: Date | null | undefined;
28
+ end?: Date | null | undefined;
29
+ }, {
30
+ type: "timeframe";
31
+ property?: string | undefined;
32
+ start?: Date | null | undefined;
33
+ end?: Date | null | undefined;
34
+ }>;
35
+ export type FdoRuleConfig = z.infer<typeof FdoRuleConfig>;
36
+ export type FdoTimeframeRule = z.infer<typeof FdoTimeframeRule>;
@@ -0,0 +1,45 @@
1
+ import { z } from 'zod';
2
+ import { OperatorFunctionParam, RuleOperator } from '@libs/validation';
3
+ import { F_RULE_OPERATORS, F_RULE_PROPERTIES } from './operator.enum';
4
+ export * from './builder';
5
+ export * from './operator.enum';
6
+ export type FdoRuleCondition = {
7
+ [K in F_RULE_OPERATORS]: {
8
+ [k in K]: Parameters<RuleOperator[K]>[1];
9
+ };
10
+ }[F_RULE_OPERATORS];
11
+ export type FdoRuleEntry = {
12
+ name: string;
13
+ property: F_RULE_PROPERTIES | string;
14
+ conditions: FdoRuleCondition;
15
+ negated?: boolean;
16
+ };
17
+ export type FdoRuleGroup = {
18
+ name: string;
19
+ rules: {
20
+ [ruleKey: string]: FdoRuleEntry | FdoRule;
21
+ };
22
+ logic: string;
23
+ };
24
+ export type FdoRule = FdoRuleGroup | FdoRuleEntry;
25
+ export declare const ConditionParameters: {
26
+ [k in F_RULE_OPERATORS]: z.ZodType<OperatorFunctionParam<k>>;
27
+ };
28
+ export declare const FdoRuleEntry: z.ZodObject<{
29
+ name: z.ZodString;
30
+ property: z.ZodEnum<["__now", "trigger.date", "trigger.time", "bill.amount", "bill.completedAt", "bill.completedTime", "bill.createdAt", "bill.createdTime", "user.member", "user.name", "user.phoneNumber", "user.email", "user.birthday", "user.gender", "user.titles", "user.point", "user.tier", "user.segment", "user.stats.avgBillSize", "user.stats.avgVisitFrequency", "user.stats.feedbackCount", "user.stats.lastVisit", "user.stats.topupCount", "user.stats.visitCount", "user.stats.lastSeasonTierEarned", "user.stats.lastSeasonPointEarned", "user.expiringVouchers.days7", "user.expiringVouchers.days30", "user.expiringVouchers.days90", "feedback.rating", "feedback.submittedAt", "transaction.collectible", "transaction.amount", "game.score", "id", "transaction.metadata.campaign"]>;
31
+ conditions: z.ZodEffects<z.ZodType<FdoRuleCondition, z.ZodTypeDef, FdoRuleCondition>, FdoRuleCondition, FdoRuleCondition>;
32
+ negated: z.ZodOptional<z.ZodBoolean>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ name: string;
35
+ property: "id" | "__now" | "trigger.date" | "trigger.time" | "bill.amount" | "bill.completedAt" | "bill.completedTime" | "bill.createdAt" | "bill.createdTime" | "user.member" | "user.name" | "user.phoneNumber" | "user.email" | "user.birthday" | "user.gender" | "user.titles" | "user.point" | "user.tier" | "user.segment" | "user.stats.avgBillSize" | "user.stats.avgVisitFrequency" | "user.stats.feedbackCount" | "user.stats.lastVisit" | "user.stats.topupCount" | "user.stats.visitCount" | "user.stats.lastSeasonTierEarned" | "user.stats.lastSeasonPointEarned" | "user.expiringVouchers.days7" | "user.expiringVouchers.days30" | "user.expiringVouchers.days90" | "feedback.rating" | "feedback.submittedAt" | "transaction.collectible" | "transaction.amount" | "game.score" | "transaction.metadata.campaign";
36
+ conditions: FdoRuleCondition & (FdoRuleCondition | undefined);
37
+ negated?: boolean | undefined;
38
+ }, {
39
+ name: string;
40
+ property: "id" | "__now" | "trigger.date" | "trigger.time" | "bill.amount" | "bill.completedAt" | "bill.completedTime" | "bill.createdAt" | "bill.createdTime" | "user.member" | "user.name" | "user.phoneNumber" | "user.email" | "user.birthday" | "user.gender" | "user.titles" | "user.point" | "user.tier" | "user.segment" | "user.stats.avgBillSize" | "user.stats.avgVisitFrequency" | "user.stats.feedbackCount" | "user.stats.lastVisit" | "user.stats.topupCount" | "user.stats.visitCount" | "user.stats.lastSeasonTierEarned" | "user.stats.lastSeasonPointEarned" | "user.expiringVouchers.days7" | "user.expiringVouchers.days30" | "user.expiringVouchers.days90" | "feedback.rating" | "feedback.submittedAt" | "transaction.collectible" | "transaction.amount" | "game.score" | "transaction.metadata.campaign";
41
+ conditions: FdoRuleCondition & (FdoRuleCondition | undefined);
42
+ negated?: boolean | undefined;
43
+ }>;
44
+ export declare const FdoRuleGroup: z.ZodType<FdoRuleGroup>;
45
+ export declare const FdoRule: z.ZodType<FdoRule>;
@@ -0,0 +1,405 @@
1
+ import { z } from 'zod';
2
+ import { RuleOperators } from '@libs/validation';
3
+ import { F_CAMPAIGN_TRIGGER_TYPE } from '@libs/core/event';
4
+ export declare const F_RULE_OPERATORS: z.ZodEnum<[RuleOperators, ...RuleOperators[]]>;
5
+ export type F_RULE_OPERATORS = RuleOperators;
6
+ export declare const F_RULE_PROPERTIES: z.ZodEnum<["__now", "trigger.date", "trigger.time", "bill.amount", "bill.completedAt", "bill.completedTime", "bill.createdAt", "bill.createdTime", "user.member", "user.name", "user.phoneNumber", "user.email", "user.birthday", "user.gender", "user.titles", "user.point", "user.tier", "user.segment", "user.stats.avgBillSize", "user.stats.avgVisitFrequency", "user.stats.feedbackCount", "user.stats.lastVisit", "user.stats.topupCount", "user.stats.visitCount", "user.stats.lastSeasonTierEarned", "user.stats.lastSeasonPointEarned", "user.expiringVouchers.days7", "user.expiringVouchers.days30", "user.expiringVouchers.days90", "feedback.rating", "feedback.submittedAt", "transaction.collectible", "transaction.amount", "game.score", "id", "transaction.metadata.campaign"]>;
7
+ export type F_RULE_PROPERTIES = z.infer<typeof F_RULE_PROPERTIES>;
8
+ export declare const RuleProperties: readonly [{
9
+ readonly name: "now";
10
+ readonly property: "__now";
11
+ readonly type: "date";
12
+ readonly triggers: F_CAMPAIGN_TRIGGER_TYPE[];
13
+ readonly premium: false;
14
+ }, {
15
+ readonly name: "Trigger date";
16
+ readonly property: "trigger.date";
17
+ readonly type: "date";
18
+ readonly triggers: readonly ["SCHEDULE"];
19
+ readonly premium: false;
20
+ }, {
21
+ readonly name: "Trigger time";
22
+ readonly property: "trigger.time";
23
+ readonly type: "time";
24
+ readonly triggers: readonly ["SCHEDULE"];
25
+ readonly premium: false;
26
+ }, {
27
+ readonly name: "Bill amount";
28
+ readonly property: "bill.amount";
29
+ readonly type: "number";
30
+ readonly triggers: readonly ["BILL_COMPLETED"];
31
+ readonly premium: false;
32
+ }, {
33
+ readonly name: "Bill complete date";
34
+ readonly property: "bill.completedAt";
35
+ readonly type: "date";
36
+ readonly triggers: readonly ["BILL_COMPLETED"];
37
+ readonly premium: false;
38
+ }, {
39
+ readonly name: "Bill complete time";
40
+ readonly property: "bill.completedTime";
41
+ readonly type: "time";
42
+ readonly triggers: readonly ["BILL_COMPLETED"];
43
+ readonly premium: false;
44
+ }, {
45
+ readonly name: "Bill create date";
46
+ readonly property: "bill.createdAt";
47
+ readonly type: "date";
48
+ readonly triggers: readonly ["BILL_COMPLETED"];
49
+ readonly premium: false;
50
+ }, {
51
+ readonly name: "Bill create time";
52
+ readonly property: "bill.createdTime";
53
+ readonly type: "time";
54
+ readonly triggers: readonly ["BILL_COMPLETED"];
55
+ readonly premium: false;
56
+ }, {
57
+ readonly name: "User is member";
58
+ readonly property: "user.member";
59
+ readonly type: "boolean";
60
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
61
+ readonly premium: true;
62
+ }, {
63
+ readonly name: "Name";
64
+ readonly property: "user.name";
65
+ readonly type: "text";
66
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
67
+ readonly premium: true;
68
+ }, {
69
+ readonly name: "Phone number";
70
+ readonly property: "user.phoneNumber";
71
+ readonly type: "text";
72
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
73
+ readonly premium: true;
74
+ }, {
75
+ readonly name: "Email";
76
+ readonly property: "user.email";
77
+ readonly type: "text";
78
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
79
+ readonly premium: true;
80
+ }, {
81
+ readonly name: "Birthday";
82
+ readonly property: "user.birthday";
83
+ readonly type: "date";
84
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
85
+ readonly premium: false;
86
+ }, {
87
+ readonly name: "Gender";
88
+ readonly property: "user.gender";
89
+ readonly type: "gender";
90
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
91
+ readonly premium: true;
92
+ }, {
93
+ readonly name: "Titles";
94
+ readonly property: "user.titles";
95
+ readonly type: "title";
96
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
97
+ readonly premium: false;
98
+ }, {
99
+ readonly name: "Experience";
100
+ readonly property: "user.point";
101
+ readonly type: "number";
102
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
103
+ readonly premium: false;
104
+ }, {
105
+ readonly name: "Tier";
106
+ readonly property: "user.tier";
107
+ readonly type: "tier";
108
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
109
+ readonly premium: false;
110
+ }, {
111
+ readonly name: "Segments";
112
+ readonly property: "user.segment";
113
+ readonly type: "segment";
114
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
115
+ readonly premium: true;
116
+ }, {
117
+ readonly name: "Average bill size";
118
+ readonly property: "user.stats.avgBillSize";
119
+ readonly type: "number";
120
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
121
+ readonly premium: true;
122
+ }, {
123
+ readonly name: "Average visit freq (day)";
124
+ readonly property: "user.stats.avgVisitFrequency";
125
+ readonly type: "number";
126
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
127
+ readonly premium: true;
128
+ }, {
129
+ readonly name: "No. of feedbacks";
130
+ readonly property: "user.stats.feedbackCount";
131
+ readonly type: "number";
132
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
133
+ readonly premium: true;
134
+ }, {
135
+ readonly name: "Last visit date";
136
+ readonly property: "user.stats.lastVisit";
137
+ readonly type: "date";
138
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
139
+ readonly premium: true;
140
+ }, {
141
+ readonly name: "Topup count";
142
+ readonly property: "user.stats.topupCount";
143
+ readonly type: "number";
144
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
145
+ readonly premium: true;
146
+ }, {
147
+ readonly name: "No. of visits";
148
+ readonly property: "user.stats.visitCount";
149
+ readonly type: "number";
150
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
151
+ readonly premium: true;
152
+ }, {
153
+ readonly name: "Exp earned last season";
154
+ readonly property: "user.stats.lastSeasonPointEarned";
155
+ readonly type: "number";
156
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
157
+ readonly premium: true;
158
+ }, {
159
+ readonly name: "Tier earned last season";
160
+ readonly property: "user.stats.lastSeasonTierEarned";
161
+ readonly type: "number";
162
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
163
+ readonly premium: true;
164
+ }, {
165
+ readonly name: "Vouchers expiring in 7 days";
166
+ readonly property: "user.expiringVouchers.days7";
167
+ readonly type: "number";
168
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
169
+ readonly premium: false;
170
+ }, {
171
+ readonly name: "Vouchers expiring in 30 days";
172
+ readonly property: "user.expiringVouchers.days30";
173
+ readonly type: "number";
174
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
175
+ readonly premium: false;
176
+ }, {
177
+ readonly name: "Vouchers expiring in 90 days";
178
+ readonly property: "user.expiringVouchers.days90";
179
+ readonly type: "number";
180
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
181
+ readonly premium: false;
182
+ }, {
183
+ readonly name: "Feedback rating";
184
+ readonly property: "feedback.rating";
185
+ readonly type: "number";
186
+ readonly triggers: readonly ["FEEDBACK"];
187
+ readonly premium: true;
188
+ }, {
189
+ readonly name: "Feedback date";
190
+ readonly property: "feedback.submittedAt";
191
+ readonly type: "date";
192
+ readonly triggers: readonly ["FEEDBACK"];
193
+ readonly premium: true;
194
+ }, {
195
+ readonly name: "Amount";
196
+ readonly property: "transaction.amount";
197
+ readonly type: "number";
198
+ readonly triggers: readonly ["ISSUE_REWARD"];
199
+ readonly premium: true;
200
+ }, {
201
+ readonly name: "Collectible";
202
+ readonly property: "transaction.collectible";
203
+ readonly type: "collectible";
204
+ readonly triggers: readonly ["ISSUE_REWARD"];
205
+ readonly premium: false;
206
+ }];
207
+ export declare function FilterRuleProperties(trigger: F_CAMPAIGN_TRIGGER_TYPE, includeOnly?: 'user' | 'bill' | 'trigger' | 'feedback'): ({
208
+ readonly name: "now";
209
+ readonly property: "__now";
210
+ readonly type: "date";
211
+ readonly triggers: F_CAMPAIGN_TRIGGER_TYPE[];
212
+ readonly premium: false;
213
+ } | {
214
+ readonly name: "Trigger date";
215
+ readonly property: "trigger.date";
216
+ readonly type: "date";
217
+ readonly triggers: readonly ["SCHEDULE"];
218
+ readonly premium: false;
219
+ } | {
220
+ readonly name: "Trigger time";
221
+ readonly property: "trigger.time";
222
+ readonly type: "time";
223
+ readonly triggers: readonly ["SCHEDULE"];
224
+ readonly premium: false;
225
+ } | {
226
+ readonly name: "Bill amount";
227
+ readonly property: "bill.amount";
228
+ readonly type: "number";
229
+ readonly triggers: readonly ["BILL_COMPLETED"];
230
+ readonly premium: false;
231
+ } | {
232
+ readonly name: "Bill complete date";
233
+ readonly property: "bill.completedAt";
234
+ readonly type: "date";
235
+ readonly triggers: readonly ["BILL_COMPLETED"];
236
+ readonly premium: false;
237
+ } | {
238
+ readonly name: "Bill complete time";
239
+ readonly property: "bill.completedTime";
240
+ readonly type: "time";
241
+ readonly triggers: readonly ["BILL_COMPLETED"];
242
+ readonly premium: false;
243
+ } | {
244
+ readonly name: "Bill create date";
245
+ readonly property: "bill.createdAt";
246
+ readonly type: "date";
247
+ readonly triggers: readonly ["BILL_COMPLETED"];
248
+ readonly premium: false;
249
+ } | {
250
+ readonly name: "Bill create time";
251
+ readonly property: "bill.createdTime";
252
+ readonly type: "time";
253
+ readonly triggers: readonly ["BILL_COMPLETED"];
254
+ readonly premium: false;
255
+ } | {
256
+ readonly name: "User is member";
257
+ readonly property: "user.member";
258
+ readonly type: "boolean";
259
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
260
+ readonly premium: true;
261
+ } | {
262
+ readonly name: "Name";
263
+ readonly property: "user.name";
264
+ readonly type: "text";
265
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
266
+ readonly premium: true;
267
+ } | {
268
+ readonly name: "Phone number";
269
+ readonly property: "user.phoneNumber";
270
+ readonly type: "text";
271
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
272
+ readonly premium: true;
273
+ } | {
274
+ readonly name: "Email";
275
+ readonly property: "user.email";
276
+ readonly type: "text";
277
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
278
+ readonly premium: true;
279
+ } | {
280
+ readonly name: "Birthday";
281
+ readonly property: "user.birthday";
282
+ readonly type: "date";
283
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
284
+ readonly premium: false;
285
+ } | {
286
+ readonly name: "Gender";
287
+ readonly property: "user.gender";
288
+ readonly type: "gender";
289
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
290
+ readonly premium: true;
291
+ } | {
292
+ readonly name: "Titles";
293
+ readonly property: "user.titles";
294
+ readonly type: "title";
295
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
296
+ readonly premium: false;
297
+ } | {
298
+ readonly name: "Experience";
299
+ readonly property: "user.point";
300
+ readonly type: "number";
301
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
302
+ readonly premium: false;
303
+ } | {
304
+ readonly name: "Tier";
305
+ readonly property: "user.tier";
306
+ readonly type: "tier";
307
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
308
+ readonly premium: false;
309
+ } | {
310
+ readonly name: "Segments";
311
+ readonly property: "user.segment";
312
+ readonly type: "segment";
313
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
314
+ readonly premium: true;
315
+ } | {
316
+ readonly name: "Average bill size";
317
+ readonly property: "user.stats.avgBillSize";
318
+ readonly type: "number";
319
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
320
+ readonly premium: true;
321
+ } | {
322
+ readonly name: "Average visit freq (day)";
323
+ readonly property: "user.stats.avgVisitFrequency";
324
+ readonly type: "number";
325
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
326
+ readonly premium: true;
327
+ } | {
328
+ readonly name: "No. of feedbacks";
329
+ readonly property: "user.stats.feedbackCount";
330
+ readonly type: "number";
331
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
332
+ readonly premium: true;
333
+ } | {
334
+ readonly name: "Last visit date";
335
+ readonly property: "user.stats.lastVisit";
336
+ readonly type: "date";
337
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
338
+ readonly premium: true;
339
+ } | {
340
+ readonly name: "Topup count";
341
+ readonly property: "user.stats.topupCount";
342
+ readonly type: "number";
343
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
344
+ readonly premium: true;
345
+ } | {
346
+ readonly name: "No. of visits";
347
+ readonly property: "user.stats.visitCount";
348
+ readonly type: "number";
349
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
350
+ readonly premium: true;
351
+ } | {
352
+ readonly name: "Exp earned last season";
353
+ readonly property: "user.stats.lastSeasonPointEarned";
354
+ readonly type: "number";
355
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
356
+ readonly premium: true;
357
+ } | {
358
+ readonly name: "Tier earned last season";
359
+ readonly property: "user.stats.lastSeasonTierEarned";
360
+ readonly type: "number";
361
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
362
+ readonly premium: true;
363
+ } | {
364
+ readonly name: "Vouchers expiring in 7 days";
365
+ readonly property: "user.expiringVouchers.days7";
366
+ readonly type: "number";
367
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
368
+ readonly premium: false;
369
+ } | {
370
+ readonly name: "Vouchers expiring in 30 days";
371
+ readonly property: "user.expiringVouchers.days30";
372
+ readonly type: "number";
373
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
374
+ readonly premium: false;
375
+ } | {
376
+ readonly name: "Vouchers expiring in 90 days";
377
+ readonly property: "user.expiringVouchers.days90";
378
+ readonly type: "number";
379
+ readonly triggers: readonly ["BILL_COMPLETED", "FEEDBACK", "GAME_COMPLETED", "MEMBERSHIP_JOINED", "SCHEDULE", "TIER_UPGRADED"];
380
+ readonly premium: false;
381
+ } | {
382
+ readonly name: "Feedback rating";
383
+ readonly property: "feedback.rating";
384
+ readonly type: "number";
385
+ readonly triggers: readonly ["FEEDBACK"];
386
+ readonly premium: true;
387
+ } | {
388
+ readonly name: "Feedback date";
389
+ readonly property: "feedback.submittedAt";
390
+ readonly type: "date";
391
+ readonly triggers: readonly ["FEEDBACK"];
392
+ readonly premium: true;
393
+ } | {
394
+ readonly name: "Amount";
395
+ readonly property: "transaction.amount";
396
+ readonly type: "number";
397
+ readonly triggers: readonly ["ISSUE_REWARD"];
398
+ readonly premium: true;
399
+ } | {
400
+ readonly name: "Collectible";
401
+ readonly property: "transaction.collectible";
402
+ readonly type: "collectible";
403
+ readonly triggers: readonly ["ISSUE_REWARD"];
404
+ readonly premium: false;
405
+ })[];
@@ -0,0 +1,6 @@
1
+ import { FdoRule, FdoRuleEntry, FdoRuleGroup } from './index';
2
+ export declare function isRuleGroup(rule: FdoRule): rule is FdoRuleGroup;
3
+ export declare function isRuleEntry(rule: FdoRule): rule is FdoRuleEntry;
4
+ export declare function getGroupLogic(rule: FdoRuleGroup): "||" | "&&";
5
+ export declare function rulePropertyMatchPattern(rule: FdoRule, pattern: string): boolean;
6
+ export declare function filterTriggerDateTimeProperties(_rule: FdoRule): FdoRule | null;
@@ -0,0 +1,3 @@
1
+ export * from './rule/rule';
2
+ export * from './rule/rule-builder';
3
+ export * from './rule/validate';
@@ -0,0 +1,19 @@
1
+ import { F_RULE_OPERATORS, F_RULE_PROPERTIES, FdoRule, FdoRuleEntry, FdoRuleGroup } from '@libs/core/validation/rule';
2
+ import { FdoRuleConfig } from '@libs/core/validation/rule/builder';
3
+ import { OperatorFunctionParam, RuleOperator } from './rule';
4
+ export declare class RuleBuilder {
5
+ static scaffoldGroup(name?: string): FdoRuleGroup;
6
+ static scaffoldEntry<T extends F_RULE_PROPERTIES>(property: T): FdoRuleEntry;
7
+ static constructEntry<T extends F_RULE_PROPERTIES, K extends F_RULE_OPERATORS>(property: T, operator: K, value: Parameters<RuleOperator[K]>[1], name?: string): FdoRuleEntry;
8
+ static getLogic(group: FdoRuleGroup): "||" | "&&";
9
+ static constructLogic(group: FdoRuleGroup, logic?: '&&' | '||'): string;
10
+ static setRuleToGroup(_group: FdoRuleGroup, rule: FdoRule | FdoRule[], logic?: '&&' | '||'): FdoRuleGroup;
11
+ static removeEntry(_group: FdoRuleGroup, entryName: string, logic?: '&&' | '||'): FdoRuleGroup;
12
+ static constructRule(config: FdoRuleConfig): FdoRule;
13
+ static getRules(group?: FdoRule): FdoRule[];
14
+ static simplify(rule: FdoRuleEntry): {
15
+ property: F_RULE_PROPERTIES;
16
+ operator: F_RULE_OPERATORS;
17
+ equator: OperatorFunctionParam<import("./rule").RuleOperators>;
18
+ };
19
+ }
@@ -0,0 +1,52 @@
1
+ type Primitives = string | number | boolean;
2
+ export type RuleOperators = {
3
+ [K in keyof RuleOperator]: RuleOperator[K] extends CallableFunction ? K : never;
4
+ }[keyof RuleOperator];
5
+ export type BaseFunction = (input: Primitives, equator: unknown) => boolean;
6
+ export type OperatorFunctions = RuleOperator[RuleOperators];
7
+ export type OperatorFunction<T extends RuleOperators> = RuleOperator[T];
8
+ export type OperatorFunctionParam<T extends RuleOperators> = Parameters<OperatorFunction<T>>[1];
9
+ export declare function conditionToStr(op: string, e: unknown): string | undefined;
10
+ export declare class RuleOperator {
11
+ ruleNow: Date;
12
+ constructor(dt?: Date);
13
+ _is(input: Primitives, equator: string): boolean;
14
+ _isNot(input: Primitives, equator: string): boolean;
15
+ _contains(input: Primitives, equator: string): boolean;
16
+ _isIn(input: Primitives, equator: Primitives[]): boolean;
17
+ _hasAll(input: Primitives[], equator: Primitives[]): boolean;
18
+ _hasAny(input: Primitives[], equator: Primitives[]): boolean;
19
+ _equal(input: number, equator: number): boolean;
20
+ _lessThan(input: number, equator: number): boolean;
21
+ _moreThan(input: number, equator: number): boolean;
22
+ _lessThanOrEqual(input: number, equator: number): boolean;
23
+ _moreThanOrEqual(input: number, equator: number): boolean;
24
+ _isDay(input: Date | string | undefined, equator: {
25
+ x: number;
26
+ op: 'before' | 'after';
27
+ ignoreYear?: boolean;
28
+ }): boolean;
29
+ _isRange(input: Date | string | undefined, equator: {
30
+ op: 'last' | 'next';
31
+ unit: 'day' | 'week' | 'month' | 'quarter' | 'year';
32
+ x: number;
33
+ ignoreYear?: boolean;
34
+ } | {
35
+ op: 'this';
36
+ unit: 'day' | 'week' | 'month' | 'quarter' | 'year';
37
+ ignoreYear?: boolean;
38
+ }): boolean;
39
+ _isOnDate(input: string | undefined, equator: Date | string): boolean;
40
+ _isBetween(input: Date | string | undefined, equator: {
41
+ start?: string | Date;
42
+ end?: string | Date;
43
+ }): boolean;
44
+ _isInMonth(input: Date | string | undefined, equator: number[]): boolean;
45
+ _rrule(input: Date | string | undefined, equator: string): boolean;
46
+ _isBetweenTime(input: Date | string | undefined, equator: {
47
+ start?: string;
48
+ end?: string;
49
+ }[]): boolean;
50
+ _isOnTime(input: Date | string | undefined, equator: string): boolean;
51
+ }
52
+ export {};
@@ -0,0 +1,2 @@
1
+ import { FdoRule } from '@libs/core/validation/rule';
2
+ export declare function validateRule(data: unknown, r: FdoRule, date: Date): boolean;