version 1.4
This commit is contained in:
parent
861f74feb6
commit
e65190b448
|
|
@ -0,0 +1,267 @@
|
|||
<div
|
||||
aria-label="Collection of your Marketplace items"
|
||||
role="main"
|
||||
class="x9f619 x1n2onr6 x1ja2u2z xdt5ytf x193iq5w xeuugli x1r8uery x1iyjqo2 xs83m0k x78zum5 x1t2pt76"
|
||||
>
|
||||
<div class="x78zum5 xdt5ytf x1iyjqo2 x1t2pt76 xeuugli x1n2onr6 x1ja2u2z">
|
||||
<div class="x78zum5 xdt5ytf x1iyjqo2 xd4ddsz">
|
||||
<div class="x1s85apg x4fpnxs">
|
||||
<div class="xz9dl7a xsag5q8 x1g0dm76 xpdmqnj">
|
||||
<div aria-label="Breadcrumb" role="navigation">
|
||||
<div class="x78zum5 xdt5ytf x4cne27 xifccgj">
|
||||
<div class="xzueoph x1k70j0n">
|
||||
<span
|
||||
class="x193iq5w xeuugli x13faqbe x1vvkbs xlh3980 xvmahel x1n0sxbx x1lliihq x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x4zkp8e x3x7a5m x1lkfr7t x1lbecb7 xo1l8bm xzsf02u x1yc453h"
|
||||
dir="auto"
|
||||
><span
|
||||
class="x193iq5w xeuugli x13faqbe x1vvkbs xlh3980 xvmahel x1n0sxbx x1nxh6w3 x1sibtaa xo1l8bm xi81zsa"
|
||||
><a
|
||||
aria-current="page"
|
||||
class="x1i10hfl xjbqb8w x1ejq31n x18oe1m7 x1sy0etr xstzfhl x972fbf x10w94by x1qhh985 x14e42zd x9f619 x1ypdohk xt0psk2 x3ct3a4 xdj266r x14z9mp xat24cr x1lziwak xexx8yu xyri2b x18d9i69 x1c1uobl x16tdsg8 x1hl2dhg xggy1nq x1a2a7pz xkrqix3 x1sur9pj xi81zsa x1s688f"
|
||||
href="/marketplace/?ref=marketplace_page_selling_chip"
|
||||
role="link"
|
||||
tabindex="0"
|
||||
>Marketplace</a
|
||||
></span
|
||||
></span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="x1i10hfl x1qjc9v5 xjbqb8w xjqpnuy xc5r6h4 xqeqjp1 x1phubyo x13fuv20 x18b5jzi x1q0q8m5 x1t7ytsu x972fbf x10w94by x1qhh985 x14e42zd x9f619 x1ypdohk xdl72j9 x2lah0s x3ct3a4 x14z9mp xat24cr x1lziwak x2lwn1j xeuugli xexx8yu xyri2b x18d9i69 x1c1uobl x1n2onr6 x16tdsg8 x1hl2dhg xggy1nq x1ja2u2z x1t137rt x1fmog5m xu25z0z x140muxe xo1y3bh x3nfvp2 x1q0g3np x87ps6o x1lku1pv x1a2a7pz x1xmf6yo"
|
||||
role="button"
|
||||
tabindex="0"
|
||||
>
|
||||
<div
|
||||
class="x9f619 x1ja2u2z x78zum5 x2lah0s x1n2onr6 x1qughib x6s0dn4 xozqiw3 x1q0g3np xwib8y2 x1y1aw1k x11lt19s xe9ewy2 x4cne27 xifccgj"
|
||||
>
|
||||
<div
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x78zum5 xdt5ytf x2lah0s x193iq5w xeuugli x14vy60q xyiysdx x10b6aqq x1yrsyyn"
|
||||
>
|
||||
<span
|
||||
class="x193iq5w xeuugli x13faqbe x1vvkbs xlh3980 xvmahel x1n0sxbx x1lliihq x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x xtoi2st x41vudc xngnso2 x1qb5hxa x1xlr1w8 xzsf02u"
|
||||
dir="auto"
|
||||
>Your listings</span
|
||||
>
|
||||
</div>
|
||||
<div
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x78zum5 xdt5ytf x2lah0s x193iq5w xeuugli x14vy60q xyiysdx x10b6aqq x1yrsyyn"
|
||||
>
|
||||
<i
|
||||
data-visualcompletion="css-img"
|
||||
class="x1b0d499 xep6ejk"
|
||||
style="
|
||||
background-image: url('https://static.xx.fbcdn.net/rsrc.php/v4/yS/r/T4DPE4N1ear.png');
|
||||
background-position: -269px -315px;
|
||||
background-size: 361px 349px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
"
|
||||
></i>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="x1ey2m1c xtijo5x x1o0tod xg01cxk x47corl x10l6tqk x13vifvy x1ebt8du x19991ni x1dhq9h x1fmog5m xu25z0z x140muxe xo1y3bh"
|
||||
role="none"
|
||||
data-visualcompletion="ignore"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x78zum5 x5yr21d xl56j7k">
|
||||
<div
|
||||
class="x78zum5 xdt5ytf x5yr21d x16xn7b0 x6ikm8r x10wlt62 xf7dkkf xv54qhq xdpfuu1 x1wi7962 xpi1e93 xwn1f64"
|
||||
>
|
||||
<div class="x5yr21d x1vv38fk x1ilwl7r">
|
||||
<div
|
||||
class="x9f619 x1ja2u2z x78zum5 x2lah0s x1n2onr6 x1qughib x1qjc9v5 xozqiw3 x1q0g3np xyamay9 x1ws5yxj xw01apr x4cne27 xifccgj"
|
||||
>
|
||||
<div
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x78zum5 xdt5ytf x193iq5w xeuugli x1r8uery x1iyjqo2 xs83m0k x1icxu4v x25sj25 x10b6aqq x1yrsyyn"
|
||||
>
|
||||
<div
|
||||
class="x6s0dn4 x1jx94hy x1obq294 x5a5i1n xde0f50 x15x8krk x78zum5 x1nhvcw1 xz9dl7a xsag5q8 xf7dkkf xv54qhq xeq1ylr x16tvwzq x13mt7qq xpi1e93 x1rik9be x1wi7962"
|
||||
>
|
||||
<div class="x1iyjqo2 x66u3ep">
|
||||
<div class="x78zum5 xdt5ytf x11tup63 x16z1lm9">
|
||||
<div class="xwoyzhm x1rhet7l">
|
||||
<span
|
||||
class="x193iq5w xeuugli x13faqbe x1vvkbs xlh3980 xvmahel x1n0sxbx x1lliihq x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x xtoi2st x41vudc xngnso2 x1qb5hxa x1xlr1w8 xzsf02u x1yc453h"
|
||||
dir="auto"
|
||||
><h1
|
||||
class="html-h1 xdj266r x14z9mp xat24cr x1lziwak xexx8yu xyri2b x18d9i69 x1c1uobl x1vvkbs x1heor9g x1qlqyl8 x1pd3egz x1a2a7pz"
|
||||
>
|
||||
Your listings
|
||||
</h1></span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x1tygjjb xmar9w8">
|
||||
<label
|
||||
class="x1a2a7pz x1qjc9v5 xal68kn x51dqfy x1w4cqa3 x1byqp33 x9f619 x78zum5 x1fns5xo x1n2onr6 xh8yej3 xu0aao5 xmjcpbm"
|
||||
><span
|
||||
class="xhb22t3 xb5gni xcj1dhv x6s0dn4 x78zum5 xuxw1ft x47corl xe2zdcy"
|
||||
><i
|
||||
data-visualcompletion="css-img"
|
||||
class="x1b0d499 xuo83w3"
|
||||
style="
|
||||
background-image: url('https://static.xx.fbcdn.net/rsrc.php/v4/yB/r/l6sSfstMVGT.png');
|
||||
background-position: 0px -1092px;
|
||||
background-size: 33px 1194px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
"
|
||||
></i></span
|
||||
><input
|
||||
class="x1i10hfl xggy1nq xtpw4lu x1tutvks x1s3xk63 x1s07b3s x1kdt53j x1yc453h xhb22t3 xb5gni xcj1dhv x2s2ed0 xq33zhf xjyslct xjbqb8w xal68kn x51dqfy x1w4cqa3 x1byqp33 x972fbf x10w94by x1qhh985 x14e42zd x9f619 xzsf02u xdl72j9 x1iyjqo2 xs83m0k xjb2p0i x6prxxf xeuugli x1a2a7pz x1n2onr6 xdvlbce x1icxu4v x25sj25 xm7lytj xc9qbxq"
|
||||
dir="ltr"
|
||||
placeholder="Search your listings"
|
||||
aria-invalid="false"
|
||||
aria-label="Search your listings"
|
||||
type="text"
|
||||
value=""
|
||||
/></label>
|
||||
</div>
|
||||
<div class="x78zum5 xf7dkkf x1wi7962 xty2ufk">
|
||||
<div
|
||||
aria-label="List view"
|
||||
aria-pressed="true"
|
||||
class="x1i10hfl xjqpnuy xc5r6h4 xqeqjp1 x1phubyo x13fuv20 x18b5jzi x1q0q8m5 x1t7ytsu x972fbf x10w94by x1qhh985 x14e42zd x9f619 x1ypdohk xdl72j9 x2lah0s x3ct3a4 xdj266r x14z9mp xat24cr x1lziwak x2lwn1j xeuugli xexx8yu x18d9i69 x1n2onr6 x16tdsg8 x1hl2dhg xggy1nq x1ja2u2z x1t137rt x1q0g3np x87ps6o x1lku1pv x1a2a7pz x6s0dn4 x78zum5 xc9qbxq x1g0dm76 xpdmqnj x1obq294 x1ga7v0g x16uus16 x15x8krk xtvsq51"
|
||||
role="button"
|
||||
tabindex="0"
|
||||
>
|
||||
<i
|
||||
data-visualcompletion="css-img"
|
||||
class="x1b0d499 xaj1gnb"
|
||||
style="
|
||||
background-image: url('https://static.xx.fbcdn.net/rsrc.php/v4/yb/r/DqQRA0dIA-x.png');
|
||||
background-position: 0px -117px;
|
||||
background-size: 25px 134px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
"
|
||||
></i>
|
||||
<div
|
||||
class="x1ey2m1c xtijo5x x1o0tod xg01cxk x47corl x10l6tqk x13vifvy x1ebt8du x19991ni x1dhq9h x1fmog5m xu25z0z x140muxe xo1y3bh"
|
||||
role="none"
|
||||
data-visualcompletion="ignore"
|
||||
></div>
|
||||
</div>
|
||||
<div
|
||||
aria-label="Grid view"
|
||||
aria-pressed="false"
|
||||
class="x1i10hfl xjqpnuy xc5r6h4 xqeqjp1 x1phubyo x13fuv20 x18b5jzi x1q0q8m5 x1t7ytsu x972fbf x10w94by x1qhh985 x14e42zd x9f619 x1ypdohk xdl72j9 x2lah0s x3ct3a4 xdj266r x14z9mp xat24cr x1lziwak x2lwn1j xeuugli xexx8yu x18d9i69 x1n2onr6 x16tdsg8 x1hl2dhg xggy1nq x1ja2u2z x1t137rt x1q0g3np x87ps6o x1lku1pv x1a2a7pz x6s0dn4 x78zum5 xc9qbxq x1g0dm76 xpdmqnj x15mokao x5a5i1n xde0f50 xbiv7yw x1hr4nm9"
|
||||
role="button"
|
||||
tabindex="0"
|
||||
>
|
||||
<i
|
||||
data-visualcompletion="css-img"
|
||||
class="x1b0d499 xi3auck"
|
||||
style="
|
||||
background-image: url('https://static.xx.fbcdn.net/rsrc.php/v4/yb/r/DqQRA0dIA-x.png');
|
||||
background-position: 0px -100px;
|
||||
background-size: 25px 134px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
"
|
||||
></i>
|
||||
<div
|
||||
class="x1ey2m1c xtijo5x x1o0tod xg01cxk x47corl x10l6tqk x13vifvy x1ebt8du x19991ni x1dhq9h x1fmog5m xu25z0z x140muxe xo1y3bh"
|
||||
role="none"
|
||||
data-visualcompletion="ignore"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x1s85apg x4fpnxs">
|
||||
<div
|
||||
class="x1s85apg xqupn85 x1tsjjzn xxq74qr x1vv38fk x1ilwl7r xty2ufk"
|
||||
>
|
||||
<div
|
||||
aria-label="Filters"
|
||||
class="x1i10hfl xjbqb8w x1ejq31n x18oe1m7 x1sy0etr xstzfhl x972fbf x10w94by x1qhh985 x14e42zd x1ypdohk x3ct3a4 xdj266r x14z9mp xat24cr x1lziwak xexx8yu xyri2b x18d9i69 x1c1uobl x16tdsg8 x1hl2dhg xggy1nq x1fmog5m xu25z0z x140muxe xo1y3bh x87ps6o x1lku1pv x1a2a7pz x9f619 x3nfvp2 xdt5ytf xl56j7k x1n2onr6 xh8yej3"
|
||||
role="button"
|
||||
tabindex="0"
|
||||
>
|
||||
<div
|
||||
role="none"
|
||||
class="x1ja2u2z x78zum5 x2lah0s x1n2onr6 xl56j7k x6s0dn4 xozqiw3 x1q0g3np x14ldlfn x1b1wa69 xws8118 x5fzff1 x972fbf x10w94by x1qhh985 x14e42zd x9f619 xpdmqnj x1g0dm76 x1hr4nm9 x1r1pt67"
|
||||
>
|
||||
<div
|
||||
class="html-div xdj266r xat24cr xexx8yu xyri2b x18d9i69 x1c1uobl x6s0dn4 x78zum5 xl56j7k x14ayic xwyz465 x1e0frkt"
|
||||
>
|
||||
<div
|
||||
role="none"
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x193iq5w xeuugli x6s0dn4 x78zum5 x2lah0s xsqbvy7 xb9jzoj"
|
||||
>
|
||||
<i
|
||||
data-visualcompletion="css-img"
|
||||
class="x1b0d499 xi3auck"
|
||||
aria-hidden="true"
|
||||
style="
|
||||
background-image: url('https://static.xx.fbcdn.net/rsrc.php/v4/yS/r/T4DPE4N1ear.png');
|
||||
background-position: -286px -315px;
|
||||
background-size: 361px 349px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
"
|
||||
></i>
|
||||
</div>
|
||||
<div
|
||||
role="none"
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x193iq5w xeuugli x6s0dn4 x78zum5 x2lah0s xsqbvy7 xb9jzoj"
|
||||
>
|
||||
<span
|
||||
class="x193iq5w xeuugli x13faqbe x1vvkbs xlh3980 xvmahel x1n0sxbx x1lliihq x1s928wv xhkezso x1gmr53x x1cpjm7i x1fgarty x1943h6x x4zkp8e x3x7a5m x6prxxf xvq8zen x1s688f x1mvi0mv"
|
||||
dir="auto"
|
||||
><span
|
||||
class="x1lliihq x6ikm8r x10wlt62 x1n2onr6 xlyipyv xuxw1ft"
|
||||
>Filters</span
|
||||
></span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="x1ey2m1c xtijo5x x1o0tod xg01cxk x47corl x10l6tqk x13vifvy x1ebt8du x19991ni x1dhq9h x1fmog5m xu25z0z x140muxe xo1y3bh"
|
||||
role="none"
|
||||
data-visualcompletion="ignore"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xw7yly9">
|
||||
<div class="xjp7ctv">
|
||||
<div>
|
||||
<span class="x1lliihq x1iyjqo2"
|
||||
><div
|
||||
class="x1n2onr6 x1ja2u2z x9f619 x78zum5 xdt5ytf x2lah0s x193iq5w"
|
||||
>
|
||||
<div
|
||||
class="x9f619 x1n2onr6 x1ja2u2z x78zum5 xdt5ytf x1iyjqo2 x2lwn1j"
|
||||
>
|
||||
|
||||
></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"manifest_version": 3,
|
||||
"name": "Auto post facebook extensions",
|
||||
"version": "1.3",
|
||||
"version": "1.4",
|
||||
"action": {
|
||||
"default_popup": "index.html",
|
||||
"default_icon": {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
import{R as c,j as s,Q as u,q as l,P as d}from"./popup-BllBlQYb.js";import"./_commonjsHelpers-CqkleIqs.js";import"./contants-D9-9W2RY.js";import"./app-C7VSS-q9.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const e of document.querySelectorAll('link[rel="modulepreload"]'))i(e);new MutationObserver(e=>{for(const r of e)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),e.crossOrigin==="use-credentials"?r.credentials="include":e.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(e){if(e.ep)return;e.ep=!0;const r=n(e);fetch(e.href,r)}})();c.createRoot(document.getElementById("root")).render(s.jsx(u,{client:l,children:s.jsx(d,{})}));
|
||||
import{R as c,j as s,Q as u,q as l,P as d}from"./popup-7ET7snnx.js";import"./_commonjsHelpers-CqkleIqs.js";import"./contants-D9-9W2RY.js";import"./app-C7VSS-q9.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const e of document.querySelectorAll('link[rel="modulepreload"]'))i(e);new MutationObserver(e=>{for(const r of e)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),e.crossOrigin==="use-credentials"?r.credentials="include":e.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(e){if(e.ep)return;e.ep=!0;const r=n(e);fetch(e.href,r)}})();c.createRoot(document.getElementById("root")).render(s.jsx(u,{client:l,children:s.jsx(d,{})}));
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
import{r as m,j as o,T as b,R as j,Q as E,q as T,P as C}from"../assets/popup-BllBlQYb.js";import{C as w}from"../assets/contants-D9-9W2RY.js";import"../assets/_commonjsHelpers-CqkleIqs.js";import"../assets/app-C7VSS-q9.js";var I=(t,n,d,a,i,r,u,p)=>{let s=document.documentElement,h=["light","dark"];function c(e){(Array.isArray(t)?t:[t]).forEach(l=>{let g=l==="class",S=g&&r?i.map(y=>r[y]||y):i;g?(s.classList.remove(...S),s.classList.add(r&&r[e]?r[e]:e)):s.setAttribute(l,e)}),x(e)}function x(e){p&&h.includes(e)&&(s.style.colorScheme=e)}function v(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(a)c(a);else try{let e=localStorage.getItem(n)||d,l=u&&e==="system"?v():e;c(l)}catch{}},N=m.createContext(void 0),R={setTheme:t=>{},themes:[]},k=()=>{var t;return(t=m.useContext(N))!=null?t:R};m.memo(({forcedTheme:t,storageKey:n,attribute:d,enableSystem:a,enableColorScheme:i,defaultTheme:r,value:u,themes:p,nonce:s,scriptProps:h})=>{let c=JSON.stringify([d,n,r,t,p,u,a,i]).slice(1,-1);return m.createElement("script",{...h,suppressHydrationWarning:!0,nonce:typeof window>"u"?s:"",dangerouslySetInnerHTML:{__html:`(${I.toString()})(${c})`}})});const M=({...t})=>{const{theme:n="system"}=k();return o.jsx(b,{theme:n,className:"toaster group",style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)"},...t})},f=document.getElementById(w.ID_EXTENSION);f&&j.createRoot(f).render(o.jsx(o.Fragment,{children:o.jsxs(E,{client:T,children:[o.jsx("div",{className:"fixed bottom-20 right-6 ex-root",children:o.jsx(C,{})}),o.jsx(M,{position:"top-right"})]})}));
|
||||
import{r as m,j as o,T as b,R as j,Q as E,q as T,P as C}from"../assets/popup-7ET7snnx.js";import{C as w}from"../assets/contants-D9-9W2RY.js";import"../assets/_commonjsHelpers-CqkleIqs.js";import"../assets/app-C7VSS-q9.js";var I=(t,n,d,a,i,r,u,p)=>{let s=document.documentElement,h=["light","dark"];function c(e){(Array.isArray(t)?t:[t]).forEach(l=>{let g=l==="class",S=g&&r?i.map(y=>r[y]||y):i;g?(s.classList.remove(...S),s.classList.add(r&&r[e]?r[e]:e)):s.setAttribute(l,e)}),x(e)}function x(e){p&&h.includes(e)&&(s.style.colorScheme=e)}function v(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(a)c(a);else try{let e=localStorage.getItem(n)||d,l=u&&e==="system"?v():e;c(l)}catch{}},N=m.createContext(void 0),R={setTheme:t=>{},themes:[]},k=()=>{var t;return(t=m.useContext(N))!=null?t:R};m.memo(({forcedTheme:t,storageKey:n,attribute:d,enableSystem:a,enableColorScheme:i,defaultTheme:r,value:u,themes:p,nonce:s,scriptProps:h})=>{let c=JSON.stringify([d,n,r,t,p,u,a,i]).slice(1,-1);return m.createElement("script",{...h,suppressHydrationWarning:!0,nonce:typeof window>"u"?s:"",dangerouslySetInnerHTML:{__html:`(${I.toString()})(${c})`}})});const M=({...t})=>{const{theme:n="system"}=k();return o.jsx(b,{theme:n,className:"toaster group",style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)"},...t})},f=document.getElementById(w.ID_EXTENSION);f&&j.createRoot(f).render(o.jsx(o.Fragment,{children:o.jsxs(E,{client:T,children:[o.jsx("div",{className:"fixed bottom-20 right-6 ex-root",children:o.jsx(C,{})}),o.jsx(M,{position:"top-right"})]})}));
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
<link rel="modulepreload" crossorigin href="/assets/_commonjsHelpers-CqkleIqs.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/contants-D9-9W2RY.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/app-C7VSS-q9.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/popup-BllBlQYb.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/popup-7ET7snnx.js">
|
||||
<link rel="stylesheet" crossorigin href="/assets/style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
|||
|
|
@ -135,7 +135,12 @@ export default function ProductModal({
|
|||
try {
|
||||
console.log({ values });
|
||||
|
||||
saveMutation.mutate(values);
|
||||
// saveMutation.mutate(values);
|
||||
|
||||
const { images, ...newValue } = values;
|
||||
|
||||
actionMutation.mutate({ ...data, ...newValue } as IPost);
|
||||
setOpen(false);
|
||||
} catch (error) {
|
||||
console.error("Error submitting form:", error);
|
||||
}
|
||||
|
|
@ -514,24 +519,18 @@ export default function ProductModal({
|
|||
</Button>
|
||||
|
||||
{data && (
|
||||
<Button
|
||||
type="button"
|
||||
onClick={() => {
|
||||
actionMutation.mutate(data);
|
||||
setOpen(false);
|
||||
}}
|
||||
>
|
||||
<Button type="button" onClick={form.handleSubmit(onSubmit)}>
|
||||
{data?.status ? <>Unlist</> : <>Publist</>}
|
||||
</Button>
|
||||
)}
|
||||
|
||||
<Button
|
||||
{/* <Button
|
||||
disabled={saveMutation.isPending}
|
||||
type="submit"
|
||||
onClick={form.handleSubmit(onSubmit)}
|
||||
>
|
||||
{saveMutation.isPending ? <Loader color="white" /> : "Save"}
|
||||
</Button>
|
||||
</Button> */}
|
||||
</div>
|
||||
</DialogContent>
|
||||
</Dialog>
|
||||
|
|
|
|||
|
|
@ -281,21 +281,31 @@ window.addEventListener("message", async (event) => {
|
|||
});
|
||||
|
||||
const runSync = () => {
|
||||
let errorCount = 0; // đếm số lần lỗi liên tiếp
|
||||
const maxErrors = 3;
|
||||
|
||||
const interval = setInterval(async () => {
|
||||
if (!window.location.href.includes(facebookService.sellingPath)) return;
|
||||
|
||||
try {
|
||||
const products = await facebookService.getProducts();
|
||||
await productApi.sync(products);
|
||||
} catch (err) {
|
||||
console.error("Sync error:", err);
|
||||
clearInterval(interval); // dừng interval nếu có lỗi
|
||||
|
||||
pushNoti({
|
||||
title: "Sync Error",
|
||||
message: (err as any).message,
|
||||
type: "error",
|
||||
});
|
||||
// reset nếu chạy thành công
|
||||
errorCount = 0;
|
||||
} catch (err) {
|
||||
errorCount++;
|
||||
console.error("Sync error:", err);
|
||||
|
||||
if (errorCount >= maxErrors) {
|
||||
clearInterval(interval); // dừng interval nếu lỗi quá 3 lần
|
||||
|
||||
pushNoti({
|
||||
title: "Sync Error",
|
||||
message: (err as any).message,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
}
|
||||
}, 10000); // 10 giây
|
||||
};
|
||||
|
|
@ -308,29 +318,26 @@ const runSync = () => {
|
|||
|
||||
await facebookService.getInfo();
|
||||
|
||||
await delayRD(800, 1000);
|
||||
// tiện ích khởi chạy sync + app
|
||||
const startApp = () => {
|
||||
runSync();
|
||||
injectApp();
|
||||
};
|
||||
|
||||
if (window.location.href.includes(facebookService.sellingPath)) {
|
||||
try {
|
||||
await delayRD(800, 1000);
|
||||
|
||||
const el = await thiefService.waitForElement(
|
||||
facebookService.selectors.collection_marketplace
|
||||
);
|
||||
console.log("Element đã xuất hiện:", el);
|
||||
|
||||
// await facebookService.waitForPageReady(
|
||||
// facebookService.sellingPath,
|
||||
// facebookService.selectors.collection_marketplace
|
||||
// );
|
||||
|
||||
await delayRD(800, 1000);
|
||||
|
||||
runSync();
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
} finally {
|
||||
injectApp();
|
||||
}
|
||||
} else {
|
||||
injectApp();
|
||||
}
|
||||
|
||||
startApp();
|
||||
})();
|
||||
|
|
|
|||
|
|
@ -10,14 +10,14 @@ const useActionPostMutation = () => {
|
|||
return productApi.apiRequest("unlist", data);
|
||||
}
|
||||
|
||||
const localServerPost = await productApi.apiRequest(
|
||||
"getProductLocalServer",
|
||||
data
|
||||
);
|
||||
// const localServerPost = await productApi.apiRequest(
|
||||
// "getProductLocalServer",
|
||||
// data
|
||||
// );
|
||||
|
||||
if (localServerPost && (localServerPost as any)?.mapped) {
|
||||
return productApi.apiRequest("publist", localServerPost);
|
||||
}
|
||||
// if (localServerPost && (localServerPost as any)?.mapped) {
|
||||
// return productApi.apiRequest("publist", localServerPost);
|
||||
// }
|
||||
|
||||
const res = await productApi.apiRequest("get", data);
|
||||
|
||||
|
|
|
|||
|
|
@ -11,9 +11,9 @@ const usePost = (post?: IPost) => {
|
|||
|
||||
await delay(300); // Giả lập delay để thấy loading
|
||||
|
||||
const data = await productApi.apiRequest("getProductLocalServer", post);
|
||||
// const data = await productApi.apiRequest("getProductLocalServer", post);
|
||||
|
||||
if (data) return data;
|
||||
// if (data) return data;
|
||||
|
||||
const res = await productApi.apiRequest("get", post);
|
||||
return res;
|
||||
|
|
|
|||
|
|
@ -17,10 +17,10 @@ class FacebookService {
|
|||
"/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[1]/div/div[4]/div/div/div",
|
||||
publish_btn:
|
||||
"/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[1]/div/div[4]/div[2]/div/div",
|
||||
products:
|
||||
"/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[2]/div/div/div[2]/div[1]/div/div[2]/div/div/span/div/div",
|
||||
products_fallback:
|
||||
"/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[2]/div/div/div[2]/div[1]/div/div[3]/div/div/span/div[2]/div",
|
||||
// products:
|
||||
// "/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[2]/div/div/div[2]/div[1]/div/div[2]/div/div/span/div/div",
|
||||
// products_fallback:
|
||||
// "/html/body/div[1]/div/div[1]/div/div[3]/div/div/div[1]/div[1]/div[2]/div/div/div[2]/div[1]/div/div[3]/div/div/span/div[2]/div",
|
||||
option_btn:
|
||||
"/html/body/div[1]/div/div[1]/div/div[4]/div/div/div[1]/div/div[2]/div/div/div/div/div/div/div[3]/div/div/div/div/div[1]/div",
|
||||
option_btn_fallback:
|
||||
|
|
@ -395,30 +395,33 @@ class FacebookService {
|
|||
}
|
||||
}
|
||||
|
||||
getProducts = async () => {
|
||||
const products1 = await thiefService.getElementByXPath(
|
||||
this.selectors.products
|
||||
);
|
||||
const products2 = await thiefService.getElementByXPath(
|
||||
this.selectors.products_fallback
|
||||
getProductContainer() {
|
||||
const items = document.querySelectorAll(
|
||||
'[aria-label="Collection of your Marketplace items"] span > div > div'
|
||||
);
|
||||
|
||||
if (!products1 && !products2) {
|
||||
const filtered = Array.from(items).filter((el) => {
|
||||
return el.querySelector("span > div > div") && el.classList.length > 0;
|
||||
});
|
||||
|
||||
return filtered.length > 0 ? filtered[0] : null;
|
||||
}
|
||||
|
||||
getProducts = async (): Promise<ISyncItem[]> => {
|
||||
// Lấy container sản phẩm
|
||||
const productContainer = this.getProductContainer();
|
||||
|
||||
if (!productContainer) {
|
||||
throw new Error("List element has changed. Please connect to DEV");
|
||||
}
|
||||
|
||||
// Gom 2 cái vào một mảng, bỏ null
|
||||
const allProductsEls = [products1, products2].filter(
|
||||
Boolean
|
||||
) as HTMLElement[];
|
||||
|
||||
if (allProductsEls.length === 0) return [];
|
||||
|
||||
// Lấy thông tin phụ trợ (vd: seller info, webname, config...)
|
||||
const info = await this.getInfo();
|
||||
|
||||
// Nối tất cả kết quả extractListings từ mỗi element
|
||||
return allProductsEls.flatMap((el) =>
|
||||
this.extractListings(el, info)
|
||||
// Trích xuất listings từ container duy nhất này
|
||||
return this.extractListings(
|
||||
productContainer as HTMLDivElement,
|
||||
info
|
||||
) as ISyncItem[];
|
||||
};
|
||||
|
||||
|
|
@ -584,27 +587,6 @@ class FacebookService {
|
|||
});
|
||||
}
|
||||
|
||||
syncListing = async () => {
|
||||
const url = window.location.href;
|
||||
if (!url.includes(this.sellingPath)) {
|
||||
(
|
||||
document.querySelector('a[href="/marketplace/you/selling/"]') as any
|
||||
)?.click?.();
|
||||
|
||||
// CHỜ tới khi URL đổi sang sellingPath
|
||||
await this.waitForPageReady(this.sellingPath, this.selectors.products);
|
||||
}
|
||||
|
||||
const products = await facebookService.getProducts();
|
||||
|
||||
// const response = await productApi.sync(
|
||||
// products.map((item) => ({
|
||||
// title: item.title,
|
||||
// price: item.price,
|
||||
// })) as ISyncItem[]
|
||||
// );
|
||||
};
|
||||
|
||||
extractMarketplaceItemId(url: string): string | null {
|
||||
const match = url.match(/\/marketplace\/item\/(\d+)/);
|
||||
return match ? match[1] : null;
|
||||
|
|
|
|||
Loading…
Reference in New Issue