@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,775 @@
1
+ import { defineComponent as X, ref as b, computed as O, watch as pe, onMounted as J, resolveComponent as v, openBlock as _, createBlock as V, unref as t, isRef as K, withCtx as E, createElementVNode as f, createVNode as u, createElementBlock as M, Fragment as N, renderList as Y, createCommentVNode as k, normalizeClass as he, createSlots as ye, h as G } from "vue";
2
+ import { h as ne } from "./moment-BWErdI6_.js";
3
+ import { useDialog as Se, components as Ce } from "@feedmepos/ui-library";
4
+ import "./index-y3taWZm8.js";
5
+ import { u as ce, f as ae } from "./loading-Dy-VtOFu.js";
6
+ import { u as ke, g as xe, a as Ee } from "./app-DRUbn5GO.js";
7
+ import { u as Q } from "./membership-28vBGpTw.js";
8
+ import { _ as se } from "./index-DkxEfDKI.js";
9
+ import { m as W } from "./index-ChAaKnz9.js";
10
+ import { _ as oe } from "./ImageInput.vue_vue_type_script_setup_true_lang-DMsxZkxf.js";
11
+ import "./index-DGFTGZj1.js";
12
+ import "./index-Iej6yAF2.js";
13
+ import { g as we } from "./index-C4AxDwBx.js";
14
+ import "./index-Ix0P1Q7X.js";
15
+ import "./index-CKhgwiA8.js";
16
+ import "./index-DzrgTguB.js";
17
+ import { a as Fe } from "./object-qECH92oz.js";
18
+ import { l as Ae } from "./lodash-BnddClG8.js";
19
+ import { o as De } from "./objectId-dwaoBfJX.js";
20
+ const Re = /* @__PURE__ */ f("div", { class: "fm-typo-en-body-lg-600" }, "Number type", -1), Ve = { class: "space-y-16" }, Me = /* @__PURE__ */ f("div", { class: "fm-typo-en-body-lg-600" }, "Number Settings", -1), Te = { class: "gap-16 grid grid-cols-2" }, Ue = { class: "space-y-16" }, Be = /* @__PURE__ */ f("div", { class: "fm-typo-en-body-lg-600" }, "Card Settings", -1), Ie = {
21
+ key: 0,
22
+ class: "flex flex-col gap-[16px] w-full"
23
+ }, Ne = { class: "flex flex-col gap-[8px]" }, Oe = /* @__PURE__ */ f("p", { class: "fm-typo-en-title-sm-800" }, "Design preview", -1), Pe = ["src"], Le = { class: "flex pt-[24px] gap-[24px]" }, je = ["src", "onClick", "alt"], He = { class: "flex items-center gap-8" }, $e = /* @__PURE__ */ X({
24
+ __name: "CreateCardSheet",
25
+ emits: ["success"],
26
+ setup(e, { expose: r, emit: w }) {
27
+ const { minor: U } = ce, h = Q(), B = b(), S = b(!1), F = w, l = b(!1);
28
+ function T(c) {
29
+ l.value = c, c && (s.value = {
30
+ quantity: 1,
31
+ code: "",
32
+ codeConfig: {
33
+ length: 12,
34
+ charset: "1234567890",
35
+ prefix: "",
36
+ suffix: "",
37
+ pattern: "####-####-####-####"
38
+ }
39
+ });
40
+ }
41
+ const s = b({
42
+ quantity: 1,
43
+ code: "",
44
+ codeConfig: {
45
+ length: 12,
46
+ charset: "1234567890",
47
+ prefix: "",
48
+ suffix: "",
49
+ pattern: "####-####-####-####"
50
+ },
51
+ setCardOnBind: !1,
52
+ bundle: void 0
53
+ }), A = [
54
+ {
55
+ label: "Bulk number",
56
+ value: "bulk",
57
+ sublabel: "Bulk generate unique number"
58
+ },
59
+ {
60
+ label: "Custom number",
61
+ value: "single",
62
+ sublabel: "Enter your own custom number"
63
+ }
64
+ ], p = [
65
+ {
66
+ label: "Alphanumeric",
67
+ value: "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
68
+ },
69
+ {
70
+ label: "Alphabetic",
71
+ value: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
72
+ },
73
+ { label: "Alphabetic Lowercase", value: "abcdefghijklmnopqrstuvwxyz" },
74
+ { label: "Alphabetic Uppercase", value: "ABCDEFGHIJKLMNOPQRSTUVWXYZ" },
75
+ { label: "Numbers", value: "0123456789" },
76
+ { label: "Custom", value: "" }
77
+ ], o = b(p[0].value), y = b("bulk"), x = b(0), D = O(
78
+ () => {
79
+ var c;
80
+ return (c = h.membership.design) == null ? void 0 : c[x.value];
81
+ }
82
+ ), m = b(!1), i = O(
83
+ () => h.sortedStoreCategories.flatMap((c) => c.bundles)
84
+ );
85
+ async function g(c) {
86
+ var n, I;
87
+ await ((n = B.value) == null ? void 0 : n.validateInputs()), S.value && (c.design = (I = D.value) == null ? void 0 : I.image, await U(
88
+ async () => {
89
+ await W.createCards(c), await F("success");
90
+ },
91
+ {
92
+ message: "Creating card(s)",
93
+ successMessage: "Card(s) created"
94
+ }
95
+ ));
96
+ }
97
+ return r({
98
+ showSheet: T
99
+ }), pe(
100
+ () => s.value.codeConfig.length,
101
+ (c, n) => {
102
+ c != n && (s.value.codeConfig.pattern = "#".repeat(Number(c)));
103
+ }
104
+ ), J(async () => {
105
+ await h.readMemberStore();
106
+ }), (c, n) => {
107
+ const I = v("FmRadio"), me = v("FmRadioGroup"), Z = v("FmSwitch"), _e = v("FmStepperField"), fe = v("FmSelect"), P = v("FmTextField"), ge = v("FmTextarea"), j = v("FmButton"), be = v("FmForm"), ve = v("FmSideSheet");
108
+ return _(), V(ve, {
109
+ "max-width": 560,
110
+ "dismiss-away": !0,
111
+ header: "Create collection",
112
+ modelValue: t(l),
113
+ "onUpdate:modelValue": [
114
+ n[19] || (n[19] = (R) => K(l) ? l.value = R : null),
115
+ n[20] || (n[20] = (R) => l.value = R)
116
+ ]
117
+ }, {
118
+ "side-sheet-footer": E(() => [
119
+ f("div", He, [
120
+ u(j, {
121
+ label: "Save",
122
+ onClick: n[17] || (n[17] = (R) => g(t(s))),
123
+ loading: t(ke)().isLoading
124
+ }, null, 8, ["loading"]),
125
+ u(j, {
126
+ label: "Cancel",
127
+ type: "button",
128
+ variant: "tertiary",
129
+ onClick: n[18] || (n[18] = (R) => l.value = !1)
130
+ })
131
+ ])
132
+ ]),
133
+ default: E(() => [
134
+ u(be, {
135
+ ref_key: "form",
136
+ ref: B,
137
+ class: "space-y-40",
138
+ onValidationSuccess: n[15] || (n[15] = (R) => S.value = !0),
139
+ onValidationFailed: n[16] || (n[16] = (R) => S.value = !1)
140
+ }, {
141
+ default: E(() => {
142
+ var R, ee, te;
143
+ return [
144
+ f("div", null, [
145
+ Re,
146
+ u(me, {
147
+ modelValue: t(y),
148
+ "onUpdate:modelValue": n[0] || (n[0] = (a) => K(y) ? y.value = a : null),
149
+ inline: !1
150
+ }, {
151
+ default: E(() => [
152
+ (_(), M(N, null, Y(A, (a) => u(I, {
153
+ key: a.value,
154
+ value: a.value,
155
+ label: a.label,
156
+ sublabel: a.sublabel
157
+ }, null, 8, ["value", "label", "sublabel"])), 64))
158
+ ]),
159
+ _: 1
160
+ }, 8, ["modelValue"])
161
+ ]),
162
+ f("div", Ve, [
163
+ Me,
164
+ t(y) === "bulk" ? (_(), M(N, { key: 0 }, [
165
+ u(Z, {
166
+ "model-value": t(m),
167
+ "label-placement": "right",
168
+ value: "true",
169
+ label: "Advance number setting",
170
+ required: !0,
171
+ "onUpdate:modelValue": n[1] || (n[1] = () => m.value = !t(m))
172
+ }, null, 8, ["model-value"]),
173
+ t(m) ? (_(), M(N, { key: 0 }, [
174
+ u(_e, {
175
+ "model-value": t(s).codeConfig.length || null,
176
+ "onUpdate:modelValue": n[2] || (n[2] = (a) => t(s).codeConfig.length = a),
177
+ label: "Code length",
178
+ rules: [(a) => Number(a) >= 1 || "Code length must at least 1"],
179
+ required: !0
180
+ }, null, 8, ["model-value", "rules"]),
181
+ u(fe, {
182
+ label: "Charset",
183
+ "model-value": t(o),
184
+ items: p,
185
+ "helper-text": t(s).codeConfig.charset.length > 62 ? `${t(s).codeConfig.charset.substring(0, 62)}...` : t(s).codeConfig.charset,
186
+ "onUpdate:modelValue": n[3] || (n[3] = (a) => {
187
+ o.value = a, t(s).codeConfig.charset = a;
188
+ })
189
+ }, null, 8, ["model-value", "helper-text"]),
190
+ t(o) === "" ? (_(), V(P, {
191
+ key: 0,
192
+ modelValue: t(s).codeConfig.charset,
193
+ "onUpdate:modelValue": n[4] || (n[4] = (a) => t(s).codeConfig.charset = a),
194
+ label: "Custom Charset",
195
+ required: ""
196
+ }, null, 8, ["modelValue"])) : k("", !0),
197
+ f("div", Te, [
198
+ u(P, {
199
+ modelValue: t(s).codeConfig.prefix,
200
+ "onUpdate:modelValue": n[5] || (n[5] = (a) => t(s).codeConfig.prefix = a),
201
+ label: "Prefix (Optional)"
202
+ }, null, 8, ["modelValue"]),
203
+ u(P, {
204
+ modelValue: t(s).codeConfig.suffix,
205
+ "onUpdate:modelValue": n[6] || (n[6] = (a) => t(s).codeConfig.suffix = a),
206
+ label: "Suffix (Optional)"
207
+ }, null, 8, ["modelValue"])
208
+ ]),
209
+ u(P, {
210
+ modelValue: t(s).codeConfig.pattern,
211
+ "onUpdate:modelValue": n[7] || (n[7] = (a) => t(s).codeConfig.pattern = a),
212
+ label: "Pattern",
213
+ required: !0
214
+ }, null, 8, ["modelValue"])
215
+ ], 64)) : k("", !0),
216
+ u(P, {
217
+ modelValue: t(s).quantity,
218
+ "onUpdate:modelValue": n[8] || (n[8] = (a) => t(s).quantity = a),
219
+ label: "Number of code",
220
+ rules: [
221
+ (a) => a >= 1 || "Quantity cannot be less than 1",
222
+ (a) => a <= 1e4 || "Quantity cannot more than 10,000"
223
+ ],
224
+ required: !0,
225
+ "helper-text": `${t(s).quantity} card will be created`
226
+ }, null, 8, ["modelValue", "rules", "helper-text"])
227
+ ], 64)) : k("", !0),
228
+ t(y) !== "bulk" ? (_(), V(ge, {
229
+ key: 1,
230
+ modelValue: t(s).code,
231
+ "onUpdate:modelValue": n[9] || (n[9] = (a) => t(s).code = a),
232
+ label: "Custom Card Number",
233
+ rules: [(a) => t(y) != "single" || !!a || "Custom code is required"],
234
+ placeholder: "(For multiple numbers, please enter in the new row.)"
235
+ }, null, 8, ["modelValue", "rules"])) : k("", !0)
236
+ ]),
237
+ f("div", Ue, [
238
+ Be,
239
+ u(Z, {
240
+ "label-placement": "right",
241
+ label: "Set card number on bind",
242
+ "model-value": t(s).setCardOnBind || !1,
243
+ "onUpdate:modelValue": n[10] || (n[10] = (a) => t(s).setCardOnBind = a)
244
+ }, null, 8, ["model-value"]),
245
+ u(se, {
246
+ label: "Activate bundle on bind",
247
+ placeholder: "Select bundle",
248
+ items: t(i).filter((a) => !a.stripePriceId).map((a) => ({ label: a.name, value: a._id })),
249
+ modelValue: t(s).bundle,
250
+ "onUpdate:modelValue": n[12] || (n[12] = (a) => t(s).bundle = a)
251
+ }, {
252
+ append: E(() => [
253
+ t(s).bundle ? (_(), V(j, {
254
+ key: 0,
255
+ icon: "link_off",
256
+ variant: "plain",
257
+ onClick: n[11] || (n[11] = (a) => t(s).bundle = void 0)
258
+ })) : k("", !0)
259
+ ]),
260
+ _: 1
261
+ }, 8, ["items", "modelValue"]),
262
+ (ee = (R = t(h).store) == null ? void 0 : R.stripe) != null && ee.apiKey ? (_(), V(se, {
263
+ key: 0,
264
+ label: "Linked subscription bundle",
265
+ placeholder: "Select bundle",
266
+ items: t(i).filter((a) => a.stripePriceId).map((a) => ({ label: a.name, value: a._id })),
267
+ modelValue: t(s).subscriptionBundle,
268
+ "onUpdate:modelValue": n[14] || (n[14] = (a) => t(s).subscriptionBundle = a)
269
+ }, {
270
+ append: E(() => [
271
+ t(s).subscriptionBundle ? (_(), V(j, {
272
+ key: 0,
273
+ icon: "link_off",
274
+ variant: "plain",
275
+ onClick: n[13] || (n[13] = (a) => t(s).subscriptionBundle = void 0)
276
+ })) : k("", !0)
277
+ ]),
278
+ _: 1
279
+ }, 8, ["items", "modelValue"])) : k("", !0)
280
+ ]),
281
+ t(h).membership.design ? (_(), M("div", Ie, [
282
+ f("div", Ne, [
283
+ Oe,
284
+ f("img", {
285
+ src: (te = t(D)) == null ? void 0 : te.image,
286
+ class: "aspect-[16/9]"
287
+ }, null, 8, Pe),
288
+ f("div", Le, [
289
+ (_(!0), M(N, null, Y(t(h).membership.design, (a, H) => (_(), M("img", {
290
+ src: a.image,
291
+ key: `image_${H}`,
292
+ class: he(["w-[112px] h-[63px] cursor-pointer", `${t(x) === H ? "border-[2px] border-fm-color-primary" : ""}`]),
293
+ onClick: (lt) => x.value = H,
294
+ alt: `ai_image_predict_${H}`,
295
+ style: { objectFit: "cover" }
296
+ }, null, 10, je))), 128))
297
+ ])
298
+ ])
299
+ ])) : k("", !0)
300
+ ];
301
+ }),
302
+ _: 1
303
+ }, 512)
304
+ ]),
305
+ _: 1
306
+ }, 8, ["modelValue"]);
307
+ };
308
+ }
309
+ });
310
+ var q = { env: { npm_package_dependencies_change_case: "^5.4.4", TERM_PROGRAM: "iTerm.app", NODE: "/opt/homebrew/Cellar/node@18/18.20.4/bin/node", npm_package_dependencies_vue3_lottie: "^3.3.0", INIT_CWD: "/Users/binbinliao/project/marketing-services/packages/connect", npm_package_dependencies__feedmepos_mf_core_ui: "1.0.8", npm_package_dependencies_axios: "^1.7.2", npm_package_dependencies_moment: "^2.30.1", npm_package_devDependencies_typescript: "^5.4.5", TERM: "xterm-256color", SHELL: "/opt/homebrew/bin/fish", npm_package_devDependencies_vite: "^5.3.1", TMPDIR: "/var/folders/59/2m_9ylk979b57yvk040bv3f00000gn/T/", npm_package_scripts_build_mf: "vite build --mode fmmf", TERM_PROGRAM_VERSION: "3.5.3", npm_package_exports___style: "./dist/style.css", npm_package_scripts_dev: "vite", npm_package_devDependencies__vitejs_plugin_vue: "^5.0.5", npm_package_dependencies_uuid: "^10.0.0", TERM_SESSION_ID: "w0t1p1:0C3F2493-727D-4ABC-81BC-0431EA82AE4B", npm_config_registry: "https://registry.npmjs.org/", npm_package_dependencies_dayjs: "^1.11.11", npm_package_dependencies_xlsx: "^0.18.5", USER: "binbinliao", npm_package_scripts_build_dev: "vite build --mode development", npm_package_dependencies__feedmepos_mf_common: "1.8.8", npm_package_dependencies_email_addresses: "^5.0.0", npm_package_dependencies_fabric: "^6.4.2", COMMAND_MODE: "unix2003", npm_package_scripts_deploy: "pnpm run build-only && pnpm publish --no-git-checks .", npm_package_dependencies_rrule: "^2.8.1", PNPM_SCRIPT_SRC_DIR: "/Users/binbinliao/project/marketing-services/packages/connect", npm_package_exports___import: "./dist/app.js", npm_package_scripts_build_dts: "vue-tsc --declaration --noEmit false --emitDeclarationOnly -p tsconfig.json --outDir ./dist && mv ./dist/src/* dist", SSH_AUTH_SOCK: "/private/tmp/com.apple.launchd.6aiVOgxsRg/Listeners", npm_package_dependencies_lodash: "^4.17.21", __CF_USER_TEXT_ENCODING: "0x1F5:0x0:0x0", npm_package_devDependencies_postcss: "^8.4.38", TERM_FEATURES: "T3LrMSc7UUw9Ts3BFGsSyHNoSxF", npm_config__feedmepos_registry: "https://registry.npmjs.org/", npm_execpath: "/opt/homebrew/lib/node_modules/pnpm/bin/pnpm.cjs", npm_package_module: "./dist/app.js", npm_package_dependencies__feedmepos_core: "^2.10.4", npm_config_frozen_lockfile: "", npm_package_scripts_build_types: "vue-tsc --declaration --emitDeclarationOnly -p tsconfig.json --outDir dist --composite false", TERMINFO_DIRS: "/Applications/iTerm.app/Contents/Resources/terminfo:/usr/share/terminfo", PATH: "/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.bin:/opt/homebrew/lib/node_modules/pnpm/dist/node-gyp-bin:/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.bin:/opt/homebrew/lib/node_modules/pnpm/dist/node-gyp-bin:/opt/homebrew/opt/node@18/bin:/opt/homebrew/lib/ruby/gems/3.3.0/bin:/Users/binbinliao/development/flutter/flutter/bin:/opt/homebrew/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/Applications/iTerm.app/Contents/Resources/utilities", LaunchInstanceID: "1A50A9F5-C8E4-43DF-A061-52C25B2FDDDD", npm_package_dependencies_vue: "^3.4.29", __CFBundleIdentifier: "com.googlecode.iterm2", PWD: "/Users/binbinliao/project/marketing-services/packages/connect", npm_package_devDependencies_tailwindcss: "^3.4.4", npm_command: "run-script", npm_package_scripts_preview: "vite preview", npm_package_devDependencies__types_lodash: "^4.17.5", npm_package_scripts_build_only: "pnpm build:mf && pnpm build:dts && pnpm build-types", npm_lifecycle_event: "build:mf", LANG: "en_US.UTF-8", npm_package_name: "@feedmepos/mf-connect", ITERM_PROFILE: "Default", NODE_PATH: "/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.pnpm/vite@5.3.4_@types+node@18.19.41/node_modules/vite/bin/node_modules:/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.pnpm/vite@5.3.4_@types+node@18.19.41/node_modules/vite/node_modules:/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.pnpm/vite@5.3.4_@types+node@18.19.41/node_modules:/Users/binbinliao/project/marketing-services/packages/connect/node_modules/.pnpm/node_modules", npm_package_exports___types: "./dist/packages/connect/src/app.d.ts", npm_package_scripts_build: "vue-tsc && vite build", XPC_FLAGS: "0x0", npm_package_dependencies_bson_objectid: "^2.0.4", npm_package_scripts_build_prod: "vite build --mode production", npm_config_node_gyp: "/opt/homebrew/lib/node_modules/pnpm/dist/node_modules/node-gyp/bin/node-gyp.js", XPC_SERVICE_NAME: "0", npm_package_version: "0.0.3-beta.0", npm_package_dependencies_pinia: "^2.1.7", npm_package_devDependencies_autoprefixer: "^10.4.19", HOME: "/Users/binbinliao", SHLVL: "3", COLORFGBG: "15;0", npm_package_type: "module", LC_TERMINAL_VERSION: "3.5.3", npm_package_dependencies_dotenv: "^16.4.5", npm_package_dependencies__types_qrcode: "^1.5.5", ITERM_SESSION_ID: "w0t1p1:0C3F2493-727D-4ABC-81BC-0431EA82AE4B", npm_package_dependencies_firebase: "^10.12.2", LOGNAME: "binbinliao", npm_package_dependencies_unplugin_auto_import: "^0.17.6", npm_package_dependencies_zod: "3.22.4", npm_lifecycle_script: "vite build --mode fmmf", npm_package_devDependencies__types_uuid: "^9.0.8", npm_config_user_agent: "pnpm/9.6.0 npm/? node/v18.20.4 darwin arm64", npm_package_devDependencies__types_node: "^18.19.36", LC_TERMINAL: "iTerm2", npm_package_files_0: "dist", SECURITYSESSIONID: "186a3", npm_package_dependencies__feedmepos_ui_library: "1.2.40", npm_package_dependencies_vue_router: "^4.3.3", COLORTERM: "truecolor", npm_package_dependencies_qrcode: "^1.5.3", npm_package_devDependencies_vue_tsc: "^2.0.21", npm_node_execpath: "/opt/homebrew/Cellar/node@18/18.20.4/bin/node", NODE_ENV: "production", FEEDME_NAMESPACE: "dev", FIREBASE_API_KEY: "AIzaSyAj8JdCHtP0Vc5vZobCfgoLzWxPIn0WUG4", FIREBASE_AUTH_DOMAIN: "feedme-dev-4c3ef.firebaseapp.com", FIREBASE_DATABASE_URL: "https://feedme-dev-4c3ef.firebaseio.com", FIREBASE_PROJECT_ID: "feedme-dev-4c3ef", FIREBASE_STORAGE_BUCKET: "feedme-dev-4c3ef.appspot.com", FIREBASE_MESSAGING_SENDER_ID: "458797803788", FIREBASE_APP_ID: "1:458797803788:web:37f2af2926a84288f0c129", FIREBASE_MEASUREMENT_ID: "G-J2QG09D2Q7", ASSET_STORAGE_BUCKET: "feedme-dev-4c3ef.appspot.com", AUTH_URL: "https://portal-v2-dev.feedmeapi.com/", SLACK_WEBHOOK_URL: "https://hooks.slack.com/services/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", MEMBER_APP_URL: "member.feedmedev.cc", CRM_APP_URL: "crm.feedmedev.cc", CLIENT_ID: "1a362d621873497b277ea55258cc82594ba148d235257f7bd44ea2acc132d8a4" } }, z = Math.floor(Math.random() * 16777215), ie = d.index = parseInt(Math.random() * 16777215, 10), re = (typeof q > "u" || typeof q.pid != "number" ? Math.floor(Math.random() * 1e5) : q.pid) % 65535, le = (() => {
311
+ try {
312
+ return _Buffer;
313
+ } catch {
314
+ try {
315
+ return Buffer;
316
+ } catch {
317
+ return null;
318
+ }
319
+ }
320
+ })(), $ = function(e) {
321
+ return !!(e != null && e.constructor && typeof e.constructor.isBuffer == "function" && e.constructor.isBuffer(e));
322
+ }, ue = [];
323
+ for (var C = 0; C < 256; C++)
324
+ ue[C] = (C <= 15 ? "0" : "") + C.toString(16);
325
+ var de = new RegExp("^[0-9a-fA-F]{24}$"), L = [];
326
+ C = 0;
327
+ for (; C < 10; ) L[48 + C] = C++;
328
+ for (; C < 16; ) L[55 + C] = L[87 + C] = C++;
329
+ function d(e) {
330
+ if (!(this instanceof d)) return new d(e);
331
+ if (e && (e instanceof d || e._bsontype === "ObjectID"))
332
+ return e;
333
+ if (this._bsontype = "ObjectID", e == null || typeof e == "number") {
334
+ this.id = this.generate(e);
335
+ return;
336
+ }
337
+ var r = d.isValid(e);
338
+ if (!r && e != null)
339
+ throw new Error(
340
+ "Argument passed in must be a single String of 12 bytes or a string of 24 hex characters"
341
+ );
342
+ if (r && typeof e == "string" && e.length === 24)
343
+ return d.createFromHexString(e);
344
+ if (e != null && e.length === 12)
345
+ this.id = e;
346
+ else {
347
+ if (e != null && typeof e.toHexString == "function")
348
+ return e;
349
+ throw new Error(
350
+ "Argument passed in must be a single String of 12 bytes or a string of 24 hex characters"
351
+ );
352
+ }
353
+ }
354
+ var Ge = d;
355
+ d.default = d;
356
+ d.createFromTime = function(e) {
357
+ return e = parseInt(e, 10) % 4294967295, new d(ze(8, e) + "0000000000000000");
358
+ };
359
+ d.createFromHexString = function(e) {
360
+ if (typeof e > "u" || e != null && e.length !== 24)
361
+ throw new Error(
362
+ "Argument passed in must be a single String of 12 bytes or a string of 24 hex characters"
363
+ );
364
+ for (var r = "", w = 0; w < 24; )
365
+ r += String.fromCharCode(L[e.charCodeAt(w++)] << 4 | L[e.charCodeAt(w++)]);
366
+ return new d(r);
367
+ };
368
+ d.isValid = function(e) {
369
+ return e == null ? !1 : typeof e == "number" ? !0 : typeof e == "string" ? e.length === 12 || e.length === 24 && de.test(e) : e instanceof d ? !0 : $(e) ? d.isValid(e.toString("hex")) : typeof e.toHexString == "function" && le && (e.id instanceof le || typeof e.id == "string") ? e.id.length === 12 || e.id.length === 24 && de.test(e.id) : !1;
370
+ };
371
+ d.prototype = {
372
+ constructor: d,
373
+ /**
374
+ * Return the ObjectID id as a 24 byte hex string representation
375
+ *
376
+ * @return {String} return the 24 byte hex string representation.
377
+ * @api public
378
+ */
379
+ toHexString: function() {
380
+ if (!this.id || !this.id.length)
381
+ throw new Error(
382
+ "invalid ObjectId, ObjectId.id must be either a string or a Buffer, but is [" + JSON.stringify(this.id) + "]"
383
+ );
384
+ if (this.id.length === 24)
385
+ return this.id;
386
+ if ($(this.id))
387
+ return this.id.toString("hex");
388
+ for (var e = "", r = 0; r < this.id.length; r++)
389
+ e += ue[this.id.charCodeAt(r)];
390
+ return e;
391
+ },
392
+ /**
393
+ * Compares the equality of this ObjectID with `otherID`.
394
+ *
395
+ * @param {Object} otherId ObjectID instance to compare against.
396
+ * @return {Boolean} the result of comparing two ObjectID's
397
+ * @api public
398
+ */
399
+ equals: function(e) {
400
+ return e instanceof d ? this.toString() === e.toString() : typeof e == "string" && d.isValid(e) && e.length === 12 && $(this.id) ? e === this.id.toString("binary") : typeof e == "string" && d.isValid(e) && e.length === 24 ? e.toLowerCase() === this.toHexString() : typeof e == "string" && d.isValid(e) && e.length === 12 ? e === this.id : e != null && (e instanceof d || e.toHexString) ? e.toHexString() === this.toHexString() : !1;
401
+ },
402
+ /**
403
+ * Returns the generation date (accurate up to the second) that this ID was generated.
404
+ *
405
+ * @return {Date} the generation date
406
+ * @api public
407
+ */
408
+ getTimestamp: function() {
409
+ var e = /* @__PURE__ */ new Date(), r;
410
+ return $(this.id) ? r = this.id[3] | this.id[2] << 8 | this.id[1] << 16 | this.id[0] << 24 : r = this.id.charCodeAt(3) | this.id.charCodeAt(2) << 8 | this.id.charCodeAt(1) << 16 | this.id.charCodeAt(0) << 24, e.setTime(Math.floor(r) * 1e3), e;
411
+ },
412
+ /**
413
+ * Generate a 12 byte id buffer used in ObjectID's
414
+ *
415
+ * @method
416
+ * @param {number} [time] optional parameter allowing to pass in a second based timestamp.
417
+ * @return {string} return the 12 byte id buffer string.
418
+ */
419
+ generate: function(e) {
420
+ typeof e != "number" && (e = ~~(Date.now() / 1e3)), e = parseInt(e, 10) % 4294967295;
421
+ var r = qe();
422
+ return String.fromCharCode(
423
+ e >> 24 & 255,
424
+ e >> 16 & 255,
425
+ e >> 8 & 255,
426
+ e & 255,
427
+ z >> 16 & 255,
428
+ z >> 8 & 255,
429
+ z & 255,
430
+ re >> 8 & 255,
431
+ re & 255,
432
+ r >> 16 & 255,
433
+ r >> 8 & 255,
434
+ r & 255
435
+ );
436
+ }
437
+ };
438
+ function qe() {
439
+ return ie = (ie + 1) % 16777215;
440
+ }
441
+ function ze(e, r) {
442
+ return r = r.toString(16), r.length === e ? r : "00000000".substring(r.length, e) + r;
443
+ }
444
+ var Ke = Symbol && Symbol.for && Symbol.for("nodejs.util.inspect.custom") || "inspect";
445
+ d.prototype[Ke] = function() {
446
+ return "ObjectID(" + this + ")";
447
+ };
448
+ d.prototype.toJSON = d.prototype.toHexString;
449
+ d.prototype.toString = d.prototype.toHexString;
450
+ const Ye = /* @__PURE__ */ xe(Ge), Xe = {
451
+ key: 0,
452
+ class: "grid grid-cols-1 gap-8"
453
+ }, Je = { class: "flex items-center gap-8" }, Qe = { class: "flex items-center gap-8" }, We = 5, Ze = /* @__PURE__ */ X({
454
+ __name: "CardDesignSheet",
455
+ emits: ["success"],
456
+ setup(e, { expose: r, emit: w }) {
457
+ const { minor: U } = ce, h = Q(), B = Se(), S = b(!1);
458
+ b(), b(!1);
459
+ const F = b(), l = b(null);
460
+ O(() => {
461
+ var m, i;
462
+ return Math.min((((i = (m = F.value) == null ? void 0 : m.design) == null ? void 0 : i.length) ?? 0) + 1, We);
463
+ });
464
+ const T = w, s = O(() => {
465
+ var m, i;
466
+ return ((i = (m = h.membership) == null ? void 0 : m.design) == null ? void 0 : i.filter((g) => g.image)) || [];
467
+ }), A = b(!1);
468
+ function p(m) {
469
+ A.value = m;
470
+ }
471
+ function o() {
472
+ S.value = !0;
473
+ }
474
+ async function y() {
475
+ await U(
476
+ async () => {
477
+ var g;
478
+ const m = Fe(F.value), i = we.parse(m);
479
+ if (i.design = (i == null ? void 0 : i.design) || [], l.value) {
480
+ const c = Ye().toHexString(), n = await ae.update(
481
+ ae.designPath(c, l.value),
482
+ l.value
483
+ );
484
+ (g = i.design) == null || g.push({
485
+ _id: c,
486
+ image: n
487
+ });
488
+ }
489
+ await W.update(i), await D(), await T("success"), l.value = null, S.value = !1;
490
+ },
491
+ {
492
+ message: "Saving card design",
493
+ successMessage: "Card design saved"
494
+ }
495
+ );
496
+ }
497
+ async function x(m, i) {
498
+ m ? l.value = m : i && B.open({
499
+ title: "Delete Design",
500
+ message: "Are you sure you want to delete this design?",
501
+ primaryActions: { text: "Delete", close: !0 },
502
+ secondaryActions: { text: "Cancel", close: !1 }
503
+ }).onPrimary(async () => {
504
+ var c, n;
505
+ const g = (c = F.value.design) == null ? void 0 : c.findIndex((I) => I._id == i);
506
+ console.log(g), g !== -1 && ((n = F.value.design) == null || n.splice(g, 1)), await y();
507
+ }).onSecondary(() => {
508
+ B.close();
509
+ });
510
+ }
511
+ async function D() {
512
+ await h.readMembership(), F.value = h.membership;
513
+ }
514
+ return r({
515
+ showSheet: p
516
+ }), J(async () => {
517
+ await D(), s.value.length || (S.value = !0);
518
+ }), (m, i) => {
519
+ const g = v("FmButton"), c = v("FmSideSheet");
520
+ return _(), V(c, {
521
+ "max-width": 560,
522
+ "dismiss-away": !0,
523
+ header: "Manage Design",
524
+ modelValue: t(A),
525
+ "onUpdate:modelValue": [
526
+ i[2] || (i[2] = (n) => K(A) ? A.value = n : null),
527
+ i[3] || (i[3] = (n) => A.value = n)
528
+ ]
529
+ }, ye({
530
+ default: E(() => [
531
+ t(S) ? k("", !0) : (_(), M("div", Xe, [
532
+ (_(!0), M(N, null, Y(t(s), (n) => (_(), V(oe, {
533
+ key: String(n._id),
534
+ "image-fit": "cover",
535
+ label: "",
536
+ "aspect-ratio": "16/9",
537
+ thumbnail: n.image,
538
+ accept: ".png, .jpg, .jpeg, .gif",
539
+ "recommended-size": "Recommended 16:9 ratio / 1280px x 720px",
540
+ file: void 0,
541
+ "delete-button": !1
542
+ }, {
543
+ "delete-button": E(() => [
544
+ u(g, {
545
+ class: "!text-neutral-50 !bg-neutral-700",
546
+ icon: "delete",
547
+ variant: "tertiary",
548
+ onClick: (I) => x(null, n._id)
549
+ }, null, 8, ["onClick"])
550
+ ]),
551
+ _: 2
552
+ }, 1032, ["thumbnail"]))), 128))
553
+ ])),
554
+ t(S) ? (_(), V(oe, {
555
+ key: 1,
556
+ "image-fit": "cover",
557
+ label: "",
558
+ "aspect-ratio": "16/9",
559
+ accept: ".png, .jpg, .jpeg, .gif",
560
+ "recommended-size": "Recommended 16:9 ratio / 1280px x 720px",
561
+ "onUpdate:file": x
562
+ })) : k("", !0)
563
+ ]),
564
+ _: 2
565
+ }, [
566
+ t(S) ? {
567
+ name: "side-sheet-footer",
568
+ fn: E(() => [
569
+ f("div", Qe, [
570
+ u(g, {
571
+ label: "Save",
572
+ onClick: y,
573
+ disabled: !t(l)
574
+ }, null, 8, ["disabled"]),
575
+ u(g, {
576
+ label: "Cancel",
577
+ type: "button",
578
+ variant: "tertiary",
579
+ onClick: i[1] || (i[1] = (n) => S.value = !1)
580
+ })
581
+ ])
582
+ ]),
583
+ key: "1"
584
+ } : {
585
+ name: "side-sheet-footer",
586
+ fn: E(() => [
587
+ f("div", Je, [
588
+ u(g, {
589
+ label: "Add Design",
590
+ onClick: o
591
+ }),
592
+ u(g, {
593
+ label: "Cancel",
594
+ type: "button",
595
+ variant: "tertiary",
596
+ onClick: i[0] || (i[0] = (n) => A.value = !1)
597
+ })
598
+ ])
599
+ ]),
600
+ key: "0"
601
+ }
602
+ ]), 1032, ["modelValue"]);
603
+ };
604
+ }
605
+ }), et = { class: "flex items-center" }, tt = /* @__PURE__ */ f("span", { class: "fm-typo-en-title-sm-800" }, " Card ", -1), nt = { class: "px-24 flex flex-col gap-y-32 pb-24" }, at = { class: "flex items-center justify-end py-4 xs:hidden" }, st = {
606
+ key: 0,
607
+ class: "w-full flex flex-col gap-16 items-center pt-16"
608
+ }, ot = /* @__PURE__ */ f("div", { class: "fm-typo-en-body-lg-600" }, "No data found", -1), it = /* @__PURE__ */ f("div", { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, " No data to show at the current moment. ", -1), rt = [
609
+ ot,
610
+ it
611
+ ], At = /* @__PURE__ */ X({
612
+ __name: "Card",
613
+ setup(e) {
614
+ const r = b(), w = b(), U = Ee(), h = Q(), B = O(
615
+ () => h.sortedStoreCategories.flatMap((p) => p.bundles)
616
+ ), S = [
617
+ {
618
+ header: "Card Number",
619
+ accessorFn: (p) => p.serialNumber
620
+ },
621
+ {
622
+ header: "Redeemed by",
623
+ accessorKey: "user",
624
+ enableSorting: !1,
625
+ cell(p) {
626
+ const o = p.row.original.pf_member;
627
+ return G(
628
+ "div",
629
+ {
630
+ class: "flex items-center gap-x-8"
631
+ },
632
+ [
633
+ G(Ce.FmAvatar, {
634
+ name: o != null && o.photoUrl || o == null ? void 0 : o.name,
635
+ src: (o == null ? void 0 : o.photoUrl) ?? void 0,
636
+ size: "sm"
637
+ }),
638
+ G("span", { class: "fm-typo-en-body-sm-400" }, o == null ? void 0 : o.name)
639
+ ]
640
+ );
641
+ }
642
+ },
643
+ {
644
+ header: "Phone",
645
+ accessorFn: (p) => {
646
+ var o;
647
+ return ((o = p.pf_member) == null ? void 0 : o.phoneNumber) || "-";
648
+ }
649
+ },
650
+ {
651
+ header: "Created at",
652
+ accessorKey: "_id",
653
+ accessorFn: (p) => ne(De(p._id.toString())).format("DD MMM YYYY hh:mmA")
654
+ },
655
+ {
656
+ header: "Bundle",
657
+ accessorFn: (p) => {
658
+ var o, y, x;
659
+ return ((y = (o = p.pf_transaction) == null ? void 0 : o.bundle) == null ? void 0 : y.name) || ((x = B.value.find((D) => D._id === p.bundle)) == null ? void 0 : x.name) || "-";
660
+ }
661
+ },
662
+ {
663
+ header: "Redeemed at",
664
+ accessorFn: (p) => p.redeemedAt ? ne(p.redeemedAt).format("DD MMM YYYY hh:mmA") : "-"
665
+ }
666
+ ], F = async (p) => {
667
+ T.value = [], l.value.isLoading = !0;
668
+ const o = await W.readCards({
669
+ limit: p.pageSize,
670
+ skip: p.pageIndex ?? 0,
671
+ sortBy: "_id",
672
+ search: l.value.searchValue,
673
+ descending: !0
674
+ });
675
+ T.value = o.resources, l.value.totalRows = o.meta.totalResources ?? 0, l.value.pageCount = o.meta.totalPages ?? 0, l.value.isLoading = !1;
676
+ }, l = b({
677
+ searchValue: "",
678
+ pageSize: 10,
679
+ pageCount: 0,
680
+ pageIndex: 0,
681
+ totalRows: 0,
682
+ isLoading: !1
683
+ }), T = b([]);
684
+ async function s() {
685
+ var p;
686
+ await F({ pageSize: 10, pageIndex: 0 }), (p = r.value) == null || p.showSheet(!1);
687
+ }
688
+ const A = O(() => U.isPremium ? [
689
+ {
690
+ label: "Create cards",
691
+ value: "create",
692
+ isPrimary: !0
693
+ },
694
+ {
695
+ label: "Manage Design",
696
+ value: "design",
697
+ isPrimary: !0
698
+ }
699
+ ] : []);
700
+ return J(async () => {
701
+ await U.readPremium(), await h.readMemberStore(), await h.readMembership();
702
+ }), pe(
703
+ () => l.value.searchValue,
704
+ Ae.debounce(async () => {
705
+ await s();
706
+ }, 500)
707
+ ), (p, o) => {
708
+ const y = v("FmChip"), x = v("FmPageHead"), D = v("FmSearch"), m = v("FmTable");
709
+ return _(), M(N, null, [
710
+ u(x, {
711
+ title: "Card",
712
+ actions: t(A),
713
+ "onClick:action": o[0] || (o[0] = (i) => {
714
+ var g, c;
715
+ console.log(i), i === "design" && ((g = t(w)) == null || g.showSheet(!0)), i === "create" && ((c = t(r)) == null || c.showSheet(!0));
716
+ })
717
+ }, {
718
+ title: E(() => [
719
+ f("div", et, [
720
+ tt,
721
+ t(U).isPremium ? k("", !0) : (_(), V(y, {
722
+ key: 0,
723
+ class: "ml-8",
724
+ label: "Premium"
725
+ }))
726
+ ])
727
+ ]),
728
+ _: 1
729
+ }, 8, ["actions"]),
730
+ f("div", nt, [
731
+ u(D, {
732
+ class: "hidden xs:flex border-b border-fm-color-neutral-gray-100",
733
+ modelValue: t(l).searchValue,
734
+ "onUpdate:modelValue": o[1] || (o[1] = (i) => t(l).searchValue = i),
735
+ placeholder: "Search Table",
736
+ collapsible: ""
737
+ }, null, 8, ["modelValue"]),
738
+ f("div", at, [
739
+ u(D, {
740
+ modelValue: t(l).searchValue,
741
+ "onUpdate:modelValue": o[2] || (o[2] = (i) => t(l).searchValue = i),
742
+ placeholder: "Search Table",
743
+ collapsible: ""
744
+ }, null, 8, ["modelValue"])
745
+ ]),
746
+ u(m, {
747
+ loading: t(l).isLoading,
748
+ "row-data": t(T),
749
+ "column-defs": S,
750
+ "row-count": t(l).totalRows,
751
+ "page-count": t(l).pageCount,
752
+ "hide-footer": t(l).totalRows < 10,
753
+ "fetch-fn": F,
754
+ "shrink-at": !1,
755
+ "page-size": t(l).pageSize
756
+ }, null, 8, ["loading", "row-data", "row-count", "page-count", "hide-footer", "page-size"]),
757
+ t(T).length == 0 && t(l).isLoading == !1 ? (_(), M("div", st, rt)) : k("", !0),
758
+ u($e, {
759
+ ref_key: "sheetRef",
760
+ ref: r,
761
+ onSuccess: s
762
+ }, null, 512),
763
+ u(Ze, {
764
+ ref_key: "designSheetRef",
765
+ ref: w,
766
+ onSuccess: s
767
+ }, null, 512)
768
+ ])
769
+ ], 64);
770
+ };
771
+ }
772
+ });
773
+ export {
774
+ At as default
775
+ };