related-ui-components 1.5.9 → 1.6.1

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 (31) hide show
  1. package/lib/commonjs/app.js +28 -9
  2. package/lib/commonjs/app.js.map +1 -1
  3. package/lib/commonjs/components/Marquee/Marquee.js +9 -10
  4. package/lib/commonjs/components/Marquee/Marquee.js.map +1 -1
  5. package/lib/commonjs/components/ScratchCard/ScratchCard.js +131 -87
  6. package/lib/commonjs/components/ScratchCard/ScratchCard.js.map +1 -1
  7. package/lib/commonjs/index.js +5 -0
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/module/app.js +31 -12
  10. package/lib/module/app.js.map +1 -1
  11. package/lib/module/components/Marquee/Marquee.js +9 -10
  12. package/lib/module/components/Marquee/Marquee.js.map +1 -1
  13. package/lib/module/components/ScratchCard/ScratchCard.js +141 -90
  14. package/lib/module/components/ScratchCard/ScratchCard.js.map +1 -1
  15. package/lib/module/index.js +4 -7
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/typescript/commonjs/app.d.ts.map +1 -1
  18. package/lib/typescript/commonjs/components/Marquee/Marquee.d.ts.map +1 -1
  19. package/lib/typescript/commonjs/components/ScratchCard/ScratchCard.d.ts.map +1 -1
  20. package/lib/typescript/commonjs/index.d.ts +1 -0
  21. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  22. package/lib/typescript/module/app.d.ts.map +1 -1
  23. package/lib/typescript/module/components/Marquee/Marquee.d.ts.map +1 -1
  24. package/lib/typescript/module/components/ScratchCard/ScratchCard.d.ts.map +1 -1
  25. package/lib/typescript/module/index.d.ts +1 -0
  26. package/lib/typescript/module/index.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/app.tsx +19 -1
  29. package/src/components/Marquee/Marquee.tsx +16 -12
  30. package/src/components/ScratchCard/ScratchCard.tsx +156 -93
  31. package/src/index.ts +4 -4
@@ -236,15 +236,34 @@ function App() {
236
236
  flex: 1,
237
237
  backgroundColor: theme.background
238
238
  },
239
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index2.Popup, {
240
- title: "TEST",
241
- content: "TEST",
242
- visible: true,
243
- onClose: () => {},
244
- backgroundImage: require("@/assets/images/namshi-banner.png"),
245
- containerStyle: {
246
- height: 300
247
- }
239
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index2.ScratchCard, {
240
+ backgroundColor: "#8A2BE2",
241
+ text: "Scratch to reveal your prize!",
242
+ textFontColor: "#FFFFFF",
243
+ textFontSize: 18,
244
+ width: 300,
245
+ height: 150
246
+ // onScratched={() => alert("Congratulations! You won a prize!")}
247
+ ,
248
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_index2.ScratchCardContent, {
249
+ style: {
250
+ backgroundColor: "#FFD700"
251
+ },
252
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
253
+ style: {
254
+ fontSize: 24,
255
+ fontWeight: "bold",
256
+ color: "#000"
257
+ },
258
+ children: "50% OFF COUPON"
259
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
260
+ style: {
261
+ marginTop: 8,
262
+ color: "#333"
263
+ },
264
+ children: "Use code: SCRATCH50"
265
+ })]
266
+ })
248
267
  })
249
268
  })
250
269
  })
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_vectorIcons","_index","_index2","_reactNativeSafeAreaContext","_reactNativeGestureHandler","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","App","theme","useTheme","filtersVisible","setFiltersVisible","useState","mode","setMode","sortOptions","id","name","value","iconSize","iconColor","onSurface","redemptionOption","icon","jsx","Ionicons","size","color","key","orientation","width","redemptionOptions","map","item","text","debounceTimerRef","useRef","rewardsData","helper","activeIcon","primary","title","description","isActive","status","statusBackgroundColor","disabled","statusTextColor","secondary","GestureHandlerRootView","children","RelatedProvider","SafeAreaView","style","padding","flex","backgroundColor","background","Popup","content","visible","onClose","backgroundImage","containerStyle","height","styles","StyleSheet","create","container","testButton","paddingVertical","paddingHorizontal","borderRadius","marginBottom","buttonText","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\src","sources":["app.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AASA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AASA,IAAAK,2BAAA,GAAAL,OAAA;AAaA,IAAAM,0BAAA,GAAAN,OAAA;AAAsE,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAQ,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAV,wBAAAU,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AACtE;AAEe,SAASW,GAAGA,CAAA,EAAG;EAC5B,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAC5B,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAC3D,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAF,eAAQ,EAAqB,QAAQ,CAAC;;EAE9D;EACA,MAAMG,WAAW,GAAG,CAClB;IAAEC,EAAE,EAAE,CAAC;IAAEC,IAAI,EAAE,oBAAoB;IAAEC,KAAK,EAAE;EAAY,CAAC,EACzD;IAAEF,EAAE,EAAE,CAAC;IAAEC,IAAI,EAAE,oBAAoB;IAAEC,KAAK,EAAE;EAAa,CAAC,EAC1D;IAAEF,EAAE,EAAE,CAAC;IAAEC,IAAI,EAAE,QAAQ;IAAEC,KAAK,EAAE;EAAS,CAAC,CAC3C;EAED,MAAMC,QAAQ,GAAG,EAAE;EACnB,MAAMC,SAAS,GAAGZ,KAAK,CAACa,SAAS;EAEjC,MAAMC,gBAAgB,GAAG,CACvB;IACEC,IAAI,eACF,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,oBAAoB;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CACxE;IACDQ,GAAG,EAAE,kCAAkC;IAAE;IACzCC,WAAW,EAAE,YAAY;IACzBC,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eACF,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,gBAAgB;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CACpE;IACDQ,GAAG,EAAE,6BAA6B;IAAE;IACpCE,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CAAC;IACxEQ,GAAG,EAAE,4BAA4B;IAAE;IACnCE,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,eAAe;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CAAC;IACzEQ,GAAG,EAAE,0BAA0B;IAAE;IACjCE,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eACF,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,kBAAkB;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CACtE;IACDQ,GAAG,EAAE,0BAA0B;IAAE;IACjCE,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eACF,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MACPR,IAAI,EAAC,yBAAyB;MAC9BS,IAAI,EAAEP,QAAS;MACfQ,KAAK,EAAEP;IAAU,CAClB,CACF;IACDQ,GAAG,EAAE,kCAAkC;IAAE;IACzCE,KAAK,EAAE;EACT,CAAC,EACD;IACEP,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAEP,QAAS;MAACQ,KAAK,EAAEP;IAAU,CAAE,CAAC;IACxEQ,GAAG,EAAE,kCAAkC;IAAE;IACzCE,KAAK,EAAE;EACT,CAAC,CACF;EAED,MAAMC,iBAAiB,GAAGT,gBAAgB,CAACU,GAAG,CAAEC,IAAI,KAAM;IACxD,GAAGA,IAAI;IACPC,IAAI,EAAE;EACR,CAAC,CAAC,CAAC;EACH,MAAMC,gBAAgB,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAE5D,MAAMC,WAAW,GAAG,CAClB;IACEd,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,eAAe;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACtEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,OAAO;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACrEC,KAAK,EAAE,eAAe;IACtBC,WAAW,EACT,+DAA+D;IACjEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,EACD;IACEX,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,eAAe;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACtEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,OAAO;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACwC;IAAU,CAAE,CAAC;IACvEP,KAAK,EAAE,gBAAgB;IACvBC,WAAW,EAAE,4DAA4D;IACzEC,QAAQ,EAAE,IAAI;IACdC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACgC,OAAO;IACpCO,eAAe,EAAEvC,KAAK,CAACwC;EACzB,CAAC,EACD;IACEzB,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACrEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,MAAM;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACpEC,KAAK,EAAE,aAAa;IACpBC,WAAW,EACT,iEAAiE;IACnEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,EACD;IACEX,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACrEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,MAAM;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACpEC,KAAK,EAAE,aAAa;IACpBC,WAAW,EACT,iEAAiE;IACnEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,EACD;IACEX,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACrEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,MAAM;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACpEC,KAAK,EAAE,aAAa;IACpBC,WAAW,EACT,iEAAiE;IACnEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,EACD;IACEX,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACrEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,MAAM;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACpEC,KAAK,EAAE,aAAa;IACpBC,WAAW,EACT,iEAAiE;IACnEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,EACD;IACEX,IAAI,eAAE,IAAArC,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,cAAc;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAAC8B;IAAO,CAAE,CAAC;IACrEC,UAAU,eAAE,IAAArD,WAAA,CAAAsC,GAAA,EAAC3C,YAAA,CAAA4C,QAAQ;MAACR,IAAI,EAAC,MAAM;MAACS,IAAI,EAAE,EAAG;MAACC,KAAK,EAAEnB,KAAK,CAACgC;IAAQ,CAAE,CAAC;IACpEC,KAAK,EAAE,aAAa;IACpBC,WAAW,EACT,iEAAiE;IACnEC,QAAQ,EAAE,KAAK;IACfC,MAAM,EAAE,KAAK;IACbC,qBAAqB,EAAErC,KAAK,CAACsC,QAAQ;IACrCC,eAAe,EAAEvC,KAAK,CAAC0B;EACzB,CAAC,CACF;EAED,oBACE,IAAAhD,WAAA,CAAAsC,GAAA,EAACvC,0BAAA,CAAAgE,sBAAsB;IAAAC,QAAA,eACrB,IAAAhE,WAAA,CAAAsC,GAAA,EAAC1C,MAAA,CAAAqE,eAAe;MAAAD,QAAA,eACd,IAAAhE,WAAA,CAAAsC,GAAA,EAACxC,2BAAA,CAAAoE,YAAY;QACXC,KAAK,EAAE;UAAEC,OAAO,EAAE,EAAE;UAAEC,IAAI,EAAE,CAAC;UAAEC,eAAe,EAAEhD,KAAK,CAACiD;QAAW,CAAE;QAAAP,QAAA,eAYzE,IAAAhE,WAAA,CAAAsC,GAAA,EAACzC,OAAA,CAAA2E,KAAK;UAACjB,KAAK,EAAC,MAAM;UAACkB,OAAO,EAAC,MAAM;UAACC,OAAO;UAACC,OAAO,EAAEA,CAAA,KAAI,CAAC,CAAE;UAACC,eAAe,EAAEnF,OAAO,CAAC,mCAAmC,CAAE;UAACoF,cAAc,EAAE;YAACC,MAAM,EAAE;UAAG;QAAE,CAAQ;MAAC,CAChJ;IAAC,CACA;EAAC,CACI,CAAC;AAE7B;AAEA,MAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;EAC/BC,SAAS,EAAE;IACTb,IAAI,EAAE,CAAC;IACPC,eAAe,EAAE,OAAO;IACxBF,OAAO,EAAE;EACX,CAAC;EACDe,UAAU,EAAE;IACVb,eAAe,EAAE,SAAS;IAC1Bc,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,CAAC;IACfC,YAAY,EAAE;EAChB,CAAC;EACDC,UAAU,EAAE;IACV/C,KAAK,EAAE,SAAS;IAChBgD,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_vectorIcons","_index","_index2","_reactNativeSafeAreaContext","_reactNativeGestureHandler","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","App","theme","useTheme","filtersVisible","setFiltersVisible","useState","mode","setMode","sortOptions","id","name","value","iconSize","iconColor","onSurface","redemptionOption","icon","jsx","Ionicons","size","color","key","orientation","width","redemptionOptions","map","item","text","debounceTimerRef","useRef","rewardsData","helper","activeIcon","primary","title","description","isActive","status","statusBackgroundColor","disabled","statusTextColor","secondary","GestureHandlerRootView","children","RelatedProvider","SafeAreaView","style","padding","flex","backgroundColor","background","ScratchCard","textFontColor","textFontSize","height","jsxs","ScratchCardContent","Text","fontSize","fontWeight","marginTop","styles","StyleSheet","create","container","testButton","paddingVertical","paddingHorizontal","borderRadius","marginBottom","buttonText","textAlign"],"sourceRoot":"..\\..\\src","sources":["app.tsx"],"mappings":"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","ignoreList":[]}
@@ -23,8 +23,6 @@ const ReusableMarquee = ({
23
23
  moveTo = "left"
24
24
  }) => {
25
25
  const translateX = (0, _reactNativeReanimated.useSharedValue)(0);
26
-
27
- // Memoize calculations that depend on props to avoid unnecessary recalculations
28
26
  const {
29
27
  ONE_SET_WIDTH,
30
28
  DATA
@@ -35,6 +33,7 @@ const ReusableMarquee = ({
35
33
  DATA: []
36
34
  };
37
35
  }
36
+ // Calculate width of one set of items including spacing
38
37
  const calculatedWidth = baseData.reduce(sum => sum + itemWidth + itemSpacing, 0);
39
38
  // Duplicate data for seamless looping
40
39
  const duplicatedData = [...baseData, ...baseData];
@@ -45,14 +44,13 @@ const ReusableMarquee = ({
45
44
  }, [baseData, itemWidth, itemSpacing]);
46
45
  (0, _react.useEffect)(() => {
47
46
  if (DATA.length > 0 && ONE_SET_WIDTH > 0) {
48
- translateX.value = 0; // Reset position when props change
49
- const animation = (0, _reactNativeReanimated.withRepeat)((0, _reactNativeReanimated.withTiming)(moveTo == "left" ? -ONE_SET_WIDTH : +ONE_SET_WIDTH, {
47
+ const initialTranslateX = moveTo === "left" ? 0 : -ONE_SET_WIDTH;
48
+ const targetTranslateX = moveTo === "left" ? -ONE_SET_WIDTH : 0;
49
+ translateX.value = initialTranslateX;
50
+ const animation = (0, _reactNativeReanimated.withRepeat)((0, _reactNativeReanimated.withTiming)(targetTranslateX, {
50
51
  duration: animationSpeedMs,
51
52
  easing: _reactNativeReanimated.Easing.linear
52
- }), -1,
53
- // Infinite repeat
54
- false // Don't reverse
55
- );
53
+ }), -1, false);
56
54
  translateX.value = animation;
57
55
  return () => {
58
56
  (0, _reactNativeReanimated.cancelAnimation)(translateX);
@@ -62,7 +60,8 @@ const ReusableMarquee = ({
62
60
  translateX.value = 0;
63
61
  return undefined;
64
62
  }
65
- }, [translateX, ONE_SET_WIDTH, DATA, animationSpeedMs]);
63
+ }, [translateX, ONE_SET_WIDTH, DATA, animationSpeedMs, moveTo]); //
64
+
66
65
  const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
67
66
  return {
68
67
  transform: [{
@@ -87,7 +86,7 @@ const ReusableMarquee = ({
87
86
  height: itemHeight,
88
87
  marginRight: itemSpacing
89
88
  }],
90
- children: renderItem(item, index)
89
+ children: renderItem(item, index % baseData.length)
91
90
  }, `${item.id}-${index}`))
92
91
  })
93
92
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DEFAULT_ANIMATION_SPEED_MS","ReusableMarquee","data","baseData","renderItem","itemWidth","itemHeight","itemSpacing","animationSpeedMs","style","contentContainerStyle","moveTo","translateX","useSharedValue","ONE_SET_WIDTH","DATA","useMemo","length","calculatedWidth","reduce","sum","duplicatedData","useEffect","value","animation","withRepeat","withTiming","duration","easing","Easing","linear","cancelAnimation","undefined","animatedStyle","useAnimatedStyle","transform","jsx","View","styles","container","height","children","animatedContainer","map","item","index","itemWrapper","width","marginRight","id","StyleSheet","create","overflow","flexDirection","_default","exports"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Marquee/Marquee.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DEFAULT_ANIMATION_SPEED_MS","ReusableMarquee","data","baseData","renderItem","itemWidth","itemHeight","itemSpacing","animationSpeedMs","style","contentContainerStyle","moveTo","translateX","useSharedValue","ONE_SET_WIDTH","DATA","useMemo","length","calculatedWidth","reduce","sum","duplicatedData","useEffect","initialTranslateX","targetTranslateX","value","animation","withRepeat","withTiming","duration","easing","Easing","linear","cancelAnimation","undefined","animatedStyle","useAnimatedStyle","transform","jsx","View","styles","container","height","children","animatedContainer","map","item","index","itemWrapper","width","marginRight","id","StyleSheet","create","overflow","flexDirection","_default","exports"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Marquee/Marquee.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,13 +7,20 @@ exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNativeSkia = require("@shopify/react-native-skia");
9
9
  var _reactNative = require("react-native");
10
+ var _reactNativeReanimated = require("react-native-reanimated");
11
+ var _reactNativeGestureHandler = require("react-native-gesture-handler");
10
12
  var _jsxRuntime = require("react/jsx-runtime");
11
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ // Import runOnJS and useSharedValue
16
+
17
+ // Ignore specific warning if it appears, related to path mutation - use cautiously
18
+ // LogBox.ignoreLogs(['Skia: SkPath.Make()']);
19
+
13
20
  const ScratchCard = ({
14
21
  style,
15
22
  children,
16
- image = null,
23
+ image,
17
24
  brushStrokeWidth = 50,
18
25
  revealThreshold = 0.8,
19
26
  width = 300,
@@ -25,45 +32,89 @@ const ScratchCard = ({
25
32
  textFontSize = 16,
26
33
  onScratched
27
34
  }) => {
28
- const img = (0, _reactNativeSkia.useImage)(image);
29
- const font = (0, _reactNativeSkia.useFont)(textFont, textFontSize);
35
+ const loadedImg = (0, _reactNativeSkia.useImage)(image);
36
+ const loadedFont = (0, _reactNativeSkia.useFont)(textFont, textFontSize);
30
37
  const [[areaWidth, areaHeight], setSize] = (0, _react.useState)([0, 0]);
31
38
  const [isScratched, setScratched] = (0, _react.useState)(false);
32
- const [_, setRefresh] = (0, _react.useState)(0);
33
- const path = (0, _react.useRef)(_reactNativeSkia.Skia.Path.Make());
34
- const lastKnownY = (0, _react.useRef)(null);
35
-
36
- //Check scratch progress
37
- const checkScratchProgress = () => {
38
- const bounds = path.current.getBounds();
39
- const scratchedArea = bounds.height * bounds.width;
40
- const totalArea = areaWidth * areaHeight;
41
- if (scratchedArea / totalArea > revealThreshold && !isScratched) {
42
- setScratched(true);
43
- if (onScratched) {
44
- onScratched();
39
+ const [isLayoutReady, setLayoutReady] = (0, _react.useState)(false);
40
+ const isThresholdReached = (0, _reactNativeReanimated.useSharedValue)(false);
41
+ const path = (0, _reactNativeReanimated.useSharedValue)(_reactNativeSkia.Skia.Path.Make());
42
+ (0, _react.useEffect)(() => {
43
+ path.value = _reactNativeSkia.Skia.Path.Make();
44
+ isThresholdReached.value = false;
45
+ setScratched(false);
46
+ }, [areaWidth, areaHeight]);
47
+ const handleLayout = (0, _react.useCallback)(event => {
48
+ const {
49
+ width: newWidth,
50
+ height: newHeight
51
+ } = event.nativeEvent.layout;
52
+ if (newWidth > 0 && newHeight > 0) {
53
+ if (newWidth !== areaWidth || newHeight !== areaHeight) {
54
+ setSize([newWidth, newHeight]);
55
+ }
56
+ if (!isLayoutReady) {
57
+ setLayoutReady(true);
45
58
  }
59
+ } else {
60
+ setLayoutReady(false);
46
61
  }
47
- };
48
-
49
- //Handle path movement on canvas
50
- const handleMove = nativeEvent => {
51
- let {
52
- locationX,
53
- locationY
54
- } = nativeEvent;
55
- if (lastKnownY.current != null && nativeEvent.locationY - lastKnownY.current > 50) {
56
- return;
62
+ }, [areaWidth, areaHeight, isLayoutReady]);
63
+ const revealCardOnJS = (0, _react.useCallback)(() => {
64
+ setScratched(true);
65
+ onScratched?.();
66
+ }, [onScratched]);
67
+ const pan = _reactNativeGestureHandler.Gesture.Pan().averageTouches(true).maxPointers(1).onBegin(e => {
68
+ if (!isLayoutReady) return;
69
+ try {
70
+ const newPath = path.value.copy();
71
+ newPath.moveTo(e.x, e.y);
72
+ newPath.lineTo(e.x + 0.001, e.y + 0.001);
73
+ path.value = newPath;
74
+ (0, _reactNativeSkia.notifyChange)(path);
75
+ } catch (error) {
76
+ console.error("ScratchCard: Error in onBegin:", error);
57
77
  }
58
- path.current.lineTo(locationX, locationY);
59
- lastKnownY.current = locationY;
60
- setRefresh(prev => prev + 1);
61
- checkScratchProgress();
62
- };
78
+ }).onChange(e => {
79
+ if (!isLayoutReady || isThresholdReached.value) return;
80
+ try {
81
+ const newPath = path.value.copy();
82
+ newPath.lineTo(e.x, e.y);
83
+ path.value = newPath;
84
+ (0, _reactNativeSkia.notifyChange)(path);
85
+ const bounds = path.value.getBounds();
86
+ if (!bounds || areaWidth <= 0 || areaHeight <= 0) {
87
+ return;
88
+ }
89
+ const scratchedArea = bounds.width * bounds.height;
90
+ const totalArea = areaWidth * areaHeight;
91
+ if (totalArea > 0 && scratchedArea / totalArea > revealThreshold) {
92
+ if (!isThresholdReached.value) {
93
+ isThresholdReached.value = true;
94
+ (0, _reactNativeReanimated.runOnJS)(revealCardOnJS)();
95
+ }
96
+ }
97
+ } catch (error) {
98
+ console.error("ScratchCard: Error in onChange (UI Thread):", error);
99
+ }
100
+ });
101
+ const textMetrics = _react.default.useMemo(() => {
102
+ if (loadedFont && text && areaWidth > 0 && areaHeight > 0) {
103
+ const metrics = loadedFont.measureText(text);
104
+ const textX = areaWidth / 2 - metrics.width / 2;
105
+ const textY = areaHeight / 2 + metrics.height / 3;
106
+ return {
107
+ x: textX,
108
+ y: textY,
109
+ width: metrics.width,
110
+ height: metrics.height
111
+ };
112
+ }
113
+ return null;
114
+ }, [loadedFont, text, areaWidth, areaHeight]);
115
+ const canRenderCanvas = isLayoutReady && areaWidth > 0 && areaHeight > 0;
63
116
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
64
- onLayout: e => {
65
- setSize([e.nativeEvent.layout.width, e.nativeEvent.layout.height]);
66
- },
117
+ onLayout: handleLayout,
67
118
  style: [styles.container, style, {
68
119
  width,
69
120
  height
@@ -71,57 +122,50 @@ const ScratchCard = ({
71
122
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
72
123
  style: styles.content,
73
124
  children: children
74
- }), !isScratched && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Canvas, {
75
- style: styles.canvas,
76
- onTouchStart: ({
77
- nativeEvent
78
- }) => {
79
- path.current.moveTo(nativeEvent.locationX, nativeEvent.locationY);
80
- setRefresh(prev => prev + 1);
81
- },
82
- onTouchMove: ({
83
- nativeEvent
84
- }) => handleMove(nativeEvent),
85
- onTouchEnd: () => lastKnownY.current = null,
86
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Mask, {
87
- mode: "luminance",
88
- mask: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeSkia.Group, {
89
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Rect, {
90
- x: 0,
91
- y: 0,
92
- width: 1000,
93
- height: 1000,
94
- color: "white"
95
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Path, {
96
- path: path.current,
97
- color: "black",
98
- style: "stroke",
99
- strokeJoin: "round",
100
- strokeCap: "round",
101
- strokeWidth: brushStrokeWidth
102
- })]
103
- }),
104
- children: img ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Image, {
105
- image: img,
106
- fit: "cover",
107
- x: 0,
108
- y: 0,
109
- width: areaWidth,
110
- height: areaHeight
111
- }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeSkia.Group, {
112
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Rect, {
125
+ }), !isScratched && canRenderCanvas && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureDetector, {
126
+ gesture: pan,
127
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Canvas, {
128
+ style: styles.canvas,
129
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Mask, {
130
+ mode: "luminance",
131
+ mask: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeSkia.Group, {
132
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Rect, {
133
+ x: 0,
134
+ y: 0,
135
+ width: areaWidth,
136
+ height: areaHeight,
137
+ color: "white"
138
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Path, {
139
+ path: path,
140
+ color: "black",
141
+ style: "stroke",
142
+ strokeJoin: "round",
143
+ strokeCap: "round",
144
+ strokeWidth: brushStrokeWidth
145
+ })]
146
+ }),
147
+ children: loadedImg ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Image, {
148
+ image: loadedImg,
149
+ fit: "cover",
113
150
  x: 0,
114
151
  y: 0,
115
152
  width: areaWidth,
116
- height: areaHeight,
117
- color: backgroundColor
118
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Text, {
119
- x: areaWidth / 2 - (font?.measureText(text).width || 0) / 2,
120
- y: areaHeight / 2 + (font?.measureText(text).height || 0) / 2,
121
- text: text,
122
- color: textFontColor,
123
- font: font
124
- })]
153
+ height: areaHeight
154
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeSkia.Group, {
155
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Rect, {
156
+ x: 0,
157
+ y: 0,
158
+ width: areaWidth,
159
+ height: areaHeight,
160
+ color: backgroundColor
161
+ }), loadedFont && textMetrics && text ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSkia.Text, {
162
+ x: textMetrics.x,
163
+ y: textMetrics.y,
164
+ text: text,
165
+ color: textFontColor,
166
+ font: loadedFont
167
+ }) : null]
168
+ })
125
169
  })
126
170
  })
127
171
  })]
@@ -130,23 +174,23 @@ const ScratchCard = ({
130
174
  const styles = _reactNative.StyleSheet.create({
131
175
  container: {
132
176
  position: "relative",
133
- overflow: "hidden",
134
- width: "100%",
135
- height: "100%"
177
+ overflow: "hidden"
136
178
  },
137
179
  content: {
138
180
  position: "absolute",
139
181
  top: 0,
140
182
  left: 0,
141
183
  width: "100%",
142
- height: "100%"
184
+ height: "100%",
185
+ zIndex: 1
143
186
  },
144
187
  canvas: {
145
188
  position: "absolute",
146
189
  top: 0,
147
190
  left: 0,
148
191
  width: "100%",
149
- height: "100%"
192
+ height: "100%",
193
+ zIndex: 2
150
194
  }
151
195
  });
152
196
  var _default = exports.default = ScratchCard;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeSkia","_reactNative","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ScratchCard","style","children","image","brushStrokeWidth","revealThreshold","width","height","backgroundColor","text","textFont","textFontColor","textFontSize","onScratched","img","useImage","font","useFont","areaWidth","areaHeight","setSize","useState","isScratched","setScratched","_","setRefresh","path","useRef","Skia","Path","Make","lastKnownY","checkScratchProgress","bounds","current","getBounds","scratchedArea","totalArea","handleMove","nativeEvent","locationX","locationY","lineTo","prev","jsxs","View","onLayout","layout","styles","container","jsx","content","Canvas","canvas","onTouchStart","moveTo","onTouchMove","onTouchEnd","Mask","mode","mask","Group","Rect","x","y","color","strokeJoin","strokeCap","strokeWidth","Image","fit","Text","measureText","StyleSheet","create","position","overflow","top","left","_default","exports"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/ScratchCard/ScratchCard.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeSkia","_reactNative","_reactNativeReanimated","_reactNativeGestureHandler","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ScratchCard","style","children","image","brushStrokeWidth","revealThreshold","width","height","backgroundColor","text","textFont","textFontColor","textFontSize","onScratched","loadedImg","useImage","loadedFont","useFont","areaWidth","areaHeight","setSize","useState","isScratched","setScratched","isLayoutReady","setLayoutReady","isThresholdReached","useSharedValue","path","Skia","Path","Make","useEffect","value","handleLayout","useCallback","event","newWidth","newHeight","nativeEvent","layout","revealCardOnJS","pan","Gesture","Pan","averageTouches","maxPointers","onBegin","newPath","copy","moveTo","x","y","lineTo","notifyChange","error","console","onChange","bounds","getBounds","scratchedArea","totalArea","runOnJS","textMetrics","React","useMemo","metrics","measureText","textX","textY","canRenderCanvas","jsxs","View","onLayout","styles","container","jsx","content","GestureDetector","gesture","Canvas","canvas","Mask","mode","mask","Group","Rect","color","strokeJoin","strokeCap","strokeWidth","Image","fit","Text","font","StyleSheet","create","position","overflow","top","left","zIndex","_default","exports"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/ScratchCard/ScratchCard.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _expo = require("expo");
7
+ require("react-native-reanimated");
8
+ var _app = _interopRequireDefault(require("./app.js"));
6
9
  var _index = require("./theme/index.js");
7
10
  Object.keys(_index).forEach(function (key) {
8
11
  if (key === "default" || key === "__esModule") return;
@@ -25,4 +28,6 @@ Object.keys(_index2).forEach(function (key) {
25
28
  }
26
29
  });
27
30
  });
31
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
32
+ (0, _expo.registerRootComponent)(_app.default);
28
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_index2"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;;;;AAQA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,OAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,OAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,OAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_expo","require","_app","_interopRequireDefault","_index","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_index2","e","__esModule","default","registerRootComponent","App"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACAA,OAAA;AAGA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AAIA,IAAAG,MAAA,GAAAH,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAR,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,OAAA,GAAAZ,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAO,OAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,OAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AAA6B,SAAAL,uBAAAW,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAH7B,IAAAG,2BAAqB,EAACC,YAAG,CAAC","ignoreList":[]}
package/lib/module/app.js CHANGED
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useRef, useState } from "react";
4
- import { StyleSheet } from "react-native";
4
+ import { StyleSheet, Text } from "react-native";
5
5
  import { Ionicons } from "@expo/vector-icons";
6
6
  import { RelatedProvider, useTheme } from "./theme/index.js";
7
- import { Popup } from "./components/index.js";
7
+ import { ScratchCard, ScratchCardContent } from "./components/index.js";
8
8
  import { SafeAreaView } from "react-native-safe-area-context";
9
9
  import { GestureHandlerRootView } from "react-native-gesture-handler";
10
10
  // import BRANDS from "./constants/BRANDS";
11
- import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  export default function App() {
13
13
  const {
14
14
  theme
@@ -230,15 +230,34 @@ export default function App() {
230
230
  flex: 1,
231
231
  backgroundColor: theme.background
232
232
  },
233
- children: /*#__PURE__*/_jsx(Popup, {
234
- title: "TEST",
235
- content: "TEST",
236
- visible: true,
237
- onClose: () => {},
238
- backgroundImage: require("@/assets/images/namshi-banner.png"),
239
- containerStyle: {
240
- height: 300
241
- }
233
+ children: /*#__PURE__*/_jsx(ScratchCard, {
234
+ backgroundColor: "#8A2BE2",
235
+ text: "Scratch to reveal your prize!",
236
+ textFontColor: "#FFFFFF",
237
+ textFontSize: 18,
238
+ width: 300,
239
+ height: 150
240
+ // onScratched={() => alert("Congratulations! You won a prize!")}
241
+ ,
242
+ children: /*#__PURE__*/_jsxs(ScratchCardContent, {
243
+ style: {
244
+ backgroundColor: "#FFD700"
245
+ },
246
+ children: [/*#__PURE__*/_jsx(Text, {
247
+ style: {
248
+ fontSize: 24,
249
+ fontWeight: "bold",
250
+ color: "#000"
251
+ },
252
+ children: "50% OFF COUPON"
253
+ }), /*#__PURE__*/_jsx(Text, {
254
+ style: {
255
+ marginTop: 8,
256
+ color: "#333"
257
+ },
258
+ children: "Use code: SCRATCH50"
259
+ })]
260
+ })
242
261
  })
243
262
  })
244
263
  })