"use strict";
(window["@ecom-mcenter/ffa-goods:1.0.0.9056"] = window["@ecom-mcenter/ffa-goods:1.0.0.9056"] || []).push([[7805], {
5001: function(n, r, e) {
var t = e(46230)
, o = e(77817)
, u = e(39155)
, i = e(61672)
, c = e(12553)
, a = e(18813)
, l = e(20675)
, s = e(46804)
, f = e(17654)
, d = e(86864)
, v = e(61500)
, h = "price"
, p = function(n) {
return !1 !== n.skuForm.n("sku_status").state.value
}
, m = (0,
o.default)(function(n) {
n.triggerActionById("suggest_price_calc_for_price")
}, 1e3, {
leading: !0
})
, g = function(n, r) {
if (r && n) {
var e = Number(r)
, t = Number(n);
return 0 === t ? a.zz.WithoutPrice : t <= e ? a.zz.Low : a.zz.High
}
return r ? a.zz.WithoutPrice : a.zz.WithoutSuggestedPrice
};
r.A = function() {
var n, r = (0,
i.A)(), e = (0,
c.ox)(), _ = (0,
c.bI)(), k = (0,
u.useRef)(!1), y = (0,
u.useRef)(!1), z = e.nodeArray("sku_detail"), w = (0,
f.qV)(), A = (0,
s.p)(z).price_power_suggest_info || {}, b = A.profit_tags, E = A.hit_cate_clues, S = A.price_suggest_strategy, x = (0,
u.useRef)(new Array(w.length).fill(void 0)), W = (0,
d.io)();
return (0,
u.useEffect)(function() {
var n = (0,
o.default)(function() {
var n, o = !0, u = a.zz.WithoutSuggestedPrice, i = (0,
t.A)((0,
t.A)((0,
t.A)((0,
t.A)({}, a.zz.WithoutSuggestedPrice, 0), a.zz.WithoutPrice, 0), a.zz.Low, 0), a.zz.High, 0), c = W();
w.forEach(function(n, r) {
var t = n.node(h)
, u = (n.na("spec_detail_ids").state.value || []).map(function(n) {
var r, e = n ? null === (r = c[n]) || void 0 === r || null === (r = r.state) || void 0 === r ? void 0 : r.value : void 0;
return "".concat(null == e ? void 0 : e.name).concat(null != e && e.remark ? "\uff08".concat(null == e ? void 0 : e.remark, "\uff09") : "")
}).join("/")
, s = (0,
l.V)({
skuForm: n,
schemaGoodsForm: e
})
, f = t.state.value || "0";
f && 0 !== Number(f) || (o = !1);
var d = p({
skuForm: n
})
, v = n.n("id").state.value || ""
, m = !1 === d ? a.zz.WithoutSuggestedPrice : g(f, s);
i[m]++,
x.current[r] = {
id: v,
price: f,
name: u,
suggest_info: {
suggest_max_price: s
},
skuStatus: d
}
}),
u = w.length === i[a.zz.WithoutSuggestedPrice] ? a.zz.WithoutSuggestedPrice : i[a.zz.Low] + i[a.zz.WithoutSuggestedPrice] === w.length ? a.zz.Low : i[a.zz.High] > 0 ? a.zz.High : a.zz.WithoutPrice,
z.setExtra(function() {
return {
price_power_level: u
}
}, "\u5b58\u50a8\u5546\u54c1\u6574\u4f53\u7684\u7684\u4ef7\u683c\u529b\u7b49\u7ea7"),
u === a.zz.High && 1 === (null == z || null === (n = z.extra) || void 0 === n || null === (n = n.additions) || void 0 === n || null === (n = n.price_power_suggest_info) || void 0 === n ? void 0 : n.price_suggest_strategy) && (k.current = !0),
o && y.current && (y.current = !1,
_.triggerActionById("suggest_price_calc_for_price")),
r()
}, 1e3);
x.current = new Array(w.length).fill(void 0),
null != w && w.length || r();
var u = []
, i = e.na("spec_detail");
return u.push(i.watchState("value", function() {
m(_),
n()
})),
w.forEach(function(r, t) {
var o = r.node(h);
u.push((0,
v.w)(function() {
var n = (0,
l.V)({
skuForm: r,
schemaGoodsForm: e
})
, t = p({
skuForm: r
});
try {
return JSON.stringify({
id: r.n("id").state.value,
price: o.state.value,
suggestedPrice: n,
skuStatus: t
})
} catch (u) {
return "{}"
}
}, function(r, e) {
try {
JSON.parse(r).price !== JSON.parse(e || "{}").price && (y.current = !0)
} catch (t) {}
n()
}, {
deep: !1,
immediate: !0
}))
}),
function() {
u.forEach(function(n) {
return n()
})
}
}, [w.length, null === (n = w[0]) || void 0 === n ? void 0 : n.uuid]),
{
skus: x.current,
profit_tags: b,
price_suggest_strategy: S,
hit_cate_clues: E,
isLowPriceZoneTractionStarted: k.current
}
}
},
17654: function(n, r, e) {
e.d(r, {
Nb: function() {
return a
},
qV: function() {
return s
},
zr: function() {
return l
}
});
var t = e(39155)
, o = e(77986)
, u = e(76718)
, i = e(12553)
, c = {
form: null,
stopWatch: function() {},
callbacks: new Set
}
, a = function() {
var n;
null === (n = c.stopWatch) || void 0 === n || n.call(c)
}
, l = function(n, r) {
var e, t;
null === (e = c.stopWatch) || void 0 === e || e.call(c),
n && (c.form = n),
r && c.callbacks.add(r);
if (c.stopWatch = null === (t = c.form) || void 0 === t ? void 0 : t.watchChildren(function(n) {
c.callbacks.forEach(function(r) {
null == r || r(n)
})
}),
r) {
var o;
r(null === (o = c.form) || void 0 === o ? void 0 : o.children)
} else {
var u, i = null === (u = c.form) || void 0 === u ? void 0 : u.children;
c.callbacks.forEach(function(n) {
n(i)
})
}
return r ? function() {
var n;
(c.callbacks.delete(r),
0 === c.callbacks.size) && (null === (n = c.stopWatch) || void 0 === n || n.call(c))
}
: c.stopWatch || function() {}
}
, s = function() {
var n = (0,
i.ox)().na("sku_detail")
, r = (0,
o.CH)()
, e = (0,
t.useRef)(u.Ml);
return e.current = (0,
o.U5)(function() {
return n.children
}, []),
(0,
t.useEffect)(function() {
return l(n, function(n) {
e.current = null == n ? void 0 : n.filter(Boolean),
r()
})
}, []),
e.current
}
},
17685: function(n, r, e) {
var t = e(63512)
, o = (e(86111),
e(26993))
, u = e(39155)
, i = e(99445)
, c = e(18577)
, a = e(61084)
, l = e(61547)
, s = e(33073)
, f = function(n) {
var r = n.render
, e = n.componentName
, t = n.error;
return (0,
u.useEffect)(function() {
var n;
null === (n = (0,
i.iE)()) || void 0 === n || n.sendMeraCustom("load_vmok_error", {
is_error: "1",
error: (null == t ? void 0 : t.message) || JSON.stringify(t) || "unknown",
componentName: e || "unknown"
}),
o.Ay.error("\u6a21\u5757\u52a0\u8f7d\u5931\u8d25\uff0c\u8bf7\u5237\u65b0\u9875\u9762\u540e\u91cd\u8bd5"),
(0,
l.z)({
type: "load_vmok_error",
message: (null == t ? void 0 : t.message) || JSON.stringify(t) || "unknown"
})
}, []),
(0,
u.useMemo)(function() {
return (null == r ? void 0 : r()) || null
}, [r])
};
r.A = function(n) {
var r = n.loader
, e = n.loading
, o = n.errorFallbackRender
, i = n.componentName
, l = (0,
u.lazy)(function() {
return (0,
a.A)(function() {
return r()
}).then(function(n) {
var r, e = n.default;
return "function" == typeof (r = e) || "object" == typeof r && "function" == typeof r.render ? n : {
default: function() {
return (0,
s.jsx)(f, {
componentName: i,
error: new Error("\u6a21\u5757\u975e\u7ec4\u4ef6\u7c7b\u578b"),
render: o
})
}
}
}, function(n) {
return {
default: function() {
return (0,
s.jsx)(f, {
componentName: i,
error: n,
render: o
})
}
}
})
});
return (0,
u.forwardRef)(function(n, r) {
return (0,
s.jsx)(c.tH, {
fallbackRender: function(n) {
var r = n.error;
return (0,
s.jsx)(f, {
componentName: i,
error: r,
render: o
})
},
children: (0,
s.jsx)(u.Suspense, {
fallback: e || null,
children: (0,
s.jsx)(l, (0,
t.A)((0,
t.A)({}, n), {}, {
ref: r
}))
})
})
})
}
},
18577: function(n, r, e) {
e.d(r, {
tH: function() {
return h
}
});
var t = e(63512)
, o = e(5356)
, u = e(57490)
, i = e(64501)
, c = e(77060)
, a = e(46230)
, l = e(39155)
, s = e(99445)
, f = e(97851)
, d = e(33073)
, v = {
error: null
}
, h = function(n) {
function r() {
var n;
(0,
o.A)(this, r);
for (var e = arguments.length, t = new Array(e), u = 0; u < e; u++)
t[u] = arguments[u];
return n = (0,
i.A)(this, r, [].concat(t)),
(0,
a.A)(n, "state", v),
(0,
a.A)(n, "resetErrorBoundary", function() {
for (var r, e, t = arguments.length, o = new Array(t), u = 0; u < t; u++)
o[u] = arguments[u];
null === (r = (e = n.props).onReset) || void 0 === r || r.call.apply(r, [e].concat(o)),
n.reset()
}),
n
}
return (0,
c.A)(r, n),
(0,
u.A)(r, [{
key: "reset",
value: function() {
this.setState(v)
}
}, {
key: "componentDidCatch",
value: function(n, r) {
var e, t, o, u, i, c = new f.v(n.message,n.stack);
null === (e = (0,
s.iE)()) || void 0 === e || e.captureException(c, "render_error"),
null === (t = (0,
s.iE)()) || void 0 === t || t.sendMeraCustom("render_error", {
error_name: n.name,
error_msg: n.message,
error_stack: n.stack || "",
react_error_info: r.componentStack || ""
});
var a = {
stack: (null == n ? void 0 : n.stack) || "no stack",
name: null == n ? void 0 : n.name,
message: null == n ? void 0 : n.message,
componentStack: r.componentStack || ""
};
null === (o = (0,
s.iE)()) || void 0 === o || o.sendCounter("boundary_error", 1, a),
null === (u = (i = this.props).onError) || void 0 === u || u.call(i, n, r)
}
}, {
key: "componentDidUpdate",
value: function(n, r) {
var e, t, o = this.state.error, u = this.props.resetKeys;
null !== o && null !== r.error && function() {
var n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []
, r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : [];
return n.length !== r.length || n.some(function(n, e) {
return !Object.is(n, r[e])
})
}(n.resetKeys, u) && (null === (e = (t = this.props).onResetKeysChange) || void 0 === e || e.call(t, n.resetKeys, u),
this.reset())
}
}, {
key: "render",
value: function() {
var n = this.state.error
, r = this.props
, e = r.fallbackRender
, o = r.FallbackComponent
, u = r.fallback;
if (null !== n) {
var i = {
error: n,
resetErrorBoundary: this.resetErrorBoundary
};
if (l.isValidElement(u))
return u;
if ("function" == typeof e)
return e(i);
if (o)
return (0,
d.jsx)(o, (0,
t.A)({}, i));
throw new Error("react-error-boundary requires either a fallback, fallbackRender, or FallbackComponent prop")
}
return this.props.children
}
}], [{
key: "getDerivedStateFromError",
value: function(n) {
return {
error: n
}
}
}])
}(l.Component)
},
18813: function(n, r, e) {
e.d(r, {
Ku: function() {
return f
},
Y1: function() {
return l
},
ZV: function() {
return i
},
b$: function() {
return a
},
bu: function() {
return s
},
qr: function() {
return c
},
zz: function() {
return u
}
});
var t = e(46230)
, o = e(36748)
, u = function(n) {
return n[n.Low = 2] = "Low",
n[n.High = 1] = "High",
n[n.WithoutSuggestedPrice = 0] = "WithoutSuggestedPrice",
n[n.WithoutPrice = -1] = "WithoutPrice",
n
}({})
, i = function(n) {
return n[n["\u8de8\u5883\u666e\u901a\u8d27\u54c1"] = 0] = "\u8de8\u5883\u666e\u901a\u8d27\u54c1",
n[n["\u7c7b\u81ea\u8425\u8d27\u54c1"] = 4] = "\u7c7b\u81ea\u8425\u8d27\u54c1",
n
}({})
, c = function(n) {
return n[n.normal = 0] = "normal",
n[n.expensive = 1] = "expensive",
n[n.awkward = 2] = "awkward",
n[n.both = 3] = "both",
n[n.abnormal = 4] = "abnormal",
n
}({})
, a = (0,
t.A)((0,
t.A)((0,
t.A)({}, o.Yo.CrossBorderImport, "\u8de8\u5883\u8fdb\u53e3"), o.Yo.DutyPaidDamao, "\u56fd\u5185\u73b0\u8d27-\u5927\u8d38"), o.Yo.DutyPaidHainan, "\u56fd\u5185\u73b0\u8d27-\u6d77\u5357")
, l = function(n) {
return n[n["\u4f9b\u5e94\u94fe\u670d\u52a1\u5e73\u53f0"] = 1] = "\u4f9b\u5e94\u94fe\u670d\u52a1\u5e73\u53f0",
n[n["\u4e91\u4ed3"] = 2] = "\u4e91\u4ed3",
n[n["\u8d38\u6613"] = 5] = "\u8d38\u6613",
n[n["\u975e\u5185\u90e8\u5c65\u7ea6\u4e91\u4ed3"] = 6] = "\u975e\u5185\u90e8\u5c65\u7ea6\u4e91\u4ed3",
n
}({})
, s = (0,
t.A)((0,
t.A)((0,
t.A)({}, l.\u4f9b\u5e94\u94fe\u670d\u52a1\u5e73\u53f0, "\u4f9b\u9500\u5e73\u53f0\u8d27\u54c1"), l.\u4e91\u4ed3, "\u4e91\u4ed3\u8d27\u54c1"), l.\u975e\u5185\u90e8\u5c65\u7ea6\u4e91\u4ed3, "\u4e91\u4ed3\u8d27\u54c1")
, f = function(n) {
return n === l.\u4e91\u4ed3 || n === l.\u975e\u5185\u90e8\u5c65\u7ea6\u4e91\u4ed3
}
},
20675: function(n, r, e) {
e.d(r, {
V: function() {
return t
}
});
var t = function(n) {
var r, e, t = n.skuForm, o = ((null === (r = n.schemaGoodsForm.na("sku_detail").extraRef) || void 0 === r || null === (r = r.value) || void 0 === r ? void 0 : r.additions) || {}).price_power_suggest_info, u = void 0 === o ? {} : o, i = u.suggest_max_price, c = u.records_schema_map, a = t.n("id").state.value || "";
return (null == c || null === (e = c[a]) || void 0 === e || null === (e = e.additions) || void 0 === e ? void 0 : e.suggest_max_price) || 0 || i
}
},
33847: function(n, r, e) {
e.d(r, {
l: function() {
return i
}
});
var t = e(5356)
, o = e(57490)
, u = e(46230)
, i = function() {
return (0,
o.A)(function n() {
(0,
t.A)(this, n),
(0,
u.A)(this, "cache", null)
}, [{
key: "get",
value: function() {
return this.cache
}
}, {
key: "set",
value: function(n) {
var r = this;
this.cache = n,
Promise.resolve().then(function() {
r.cache = null
})
}
}])
}()
},
36748: function(n, r, e) {
e.d(r, {
Li: function() {
return l
},
Yo: function() {
return o
},
fi: function() {
return c
},
i7: function() {
return a
},
mb: function() {
return i
},
sQ: function() {
return u
}
});
var t = e(46230)
, o = function(n) {
return n[n.CrossBorderImport = 1] = "CrossBorderImport",
n[n.DutyPaidDamao = 2] = "DutyPaidDamao",
n[n.DutyPaidHainan = 3] = "DutyPaidHainan",
n
}({})
, u = function(n) {
return n[n["\u65e0\u6548"] = 0] = "\u65e0\u6548",
n[n["\u6709\u6548"] = 1] = "\u6709\u6548",
n
}({})
, i = function(n) {
return n[n["\u672a\u7ea0\u9519"] = 0] = "\u672a\u7ea0\u9519",
n[n["\u5df2\u7ea0\u9519"] = 1] = "\u5df2\u7ea0\u9519",
n
}({})
, c = function(n) {
return n[n["\u4e0d\u542f\u7528"] = 0] = "\u4e0d\u542f\u7528",
n[n["\u542f\u7528"] = 1] = "\u542f\u7528",
n
}({})
, a = function(n) {
return n["\u76f8\u5bf9\u65f6\u95f4"] = "1",
n["\u7edd\u5bf9\u65f6\u95f4"] = "2",
n
}({})
, l = ((0,
t.A)((0,
t.A)({}, a.\u76f8\u5bf9\u65f6\u95f4, "relative"), a.\u7edd\u5bf9\u65f6\u95f4, "absolute"),
function(n) {
return n[n["\u666e\u901a\u5e93\u5b58"] = 0] = "\u666e\u901a\u5e93\u5b58",
n[n["\u533a\u57df\u5e93\u5b58"] = 1] = "\u533a\u57df\u5e93\u5b58",
n[n["\u9636\u68af\u5e93\u5b58"] = 10] = "\u9636\u68af\u5e93\u5b58",
n
}({}))
},
61547: function(n, r, e) {
e.d(r, {
z: function() {
return u
}
});
var t = e(48873)
, o = {}
, u = function(n) {
var r = n.type
, e = n.message;
try {
var u;
o.current || (o.current = (0,
t.Dt)("dynamic_recording_config"));
var i, c, a = (o.current || {}).fe_record;
if (null != a && a.open && r === a.type && (!a.message || (null === (u = e || "") || void 0 === u ? void 0 : u.indexOf(a.message)) > -1))
console.log("fe_record", a),
null === (i = window) || void 0 === i || null === (i = i.sifDataLayer) || void 0 === i || null === (c = i.push) || void 0 === c || c.call(i, {
event: "sif-custom.goods-custom-record"
})
} catch (l) {}
}
},
65852: function(n, r, e) {
e.d(r, {
p8: function() {
return a
},
qh: function() {
return s
},
t$: function() {
return l
}
});
var t = e(39155)
, o = e(77986)
, u = e(76718)
, i = e(12553)
, c = {
form: null,
stopWatch: function() {},
callbacks: new Set
}
, a = function() {
var n;
null === (n = c.stopWatch) || void 0 === n || n.call(c)
}
, l = function(n, r) {
var e, t;
null === (e = c.stopWatch) || void 0 === e || e.call(c),
n && (c.form = n),
r && c.callbacks.add(r);
if (c.stopWatch = null === (t = c.form) || void 0 === t ? void 0 : t.watchChildren(function(n) {
c.callbacks.forEach(function(r) {
null == r || r(n)
})
}),
r) {
var o;
r(null === (o = c.form) || void 0 === o ? void 0 : o.children)
} else {
var u, i = null === (u = c.form) || void 0 === u ? void 0 : u.children;
c.callbacks.forEach(function(n) {
n(i)
})
}
return r ? function() {
var n;
(c.callbacks.delete(r),
0 === c.callbacks.size) && (null === (n = c.stopWatch) || void 0 === n || n.call(c))
}
: c.stopWatch || function() {}
}
, s = function() {
var n = (0,
i.ox)().na("spec_detail")
, r = (0,
o.CH)()
, e = (0,
t.useRef)(u.Ml);
return e.current = (0,
o.U5)(function() {
return n.children
}, []),
(0,
t.useEffect)(function() {
return l(n, function(n) {
e.current = null == n ? void 0 : n.filter(Boolean),
r()
})
}, []),
e.current
}
},
86864: function(n, r, e) {
e.d(r, {
EN: function() {
return y
},
K$: function() {
return g
},
UM: function() {
return p
},
_j: function() {
return v
},
io: function() {
return k
},
le: function() {
return d
},
oi: function() {
return h
},
q4: function() {
return f
}
});
var t = e(39473)
, o = e(39155)
, u = e(12553)
, i = e(65852)
, c = e(95384)
, a = e(76718)
, l = e(33847)
, s = e(18261)
, f = function(n, r) {
var e = (0,
u.ox)().nodeArray("spec_detail")
, t = (0,
s.kU)(n);
(0,
o.useEffect)(function() {
var n = []
, o = function(r) {
n.forEach(function(n) {
return n()
}),
n.splice(0, n.length),
r.forEach(function(r) {
n.push(r.nodeArray("spec_values").watchChildren(t), r.node("name").watchState("value", t), r.node("is_default").watchState("value", t), r.node("is_time_spec").watchState("value", t))
})
}
, u = (0,
i.t$)(e, function(n) {
t(),
o(n)
});
return o(e.children),
r && t(),
function() {
u(),
n.forEach(function(n) {
return n()
})
}
}, [])
}
, d = function(n, r) {
var e = (0,
u.ox)().nodeArray("spec_detail")
, t = (0,
s.kU)(n);
(0,
o.useEffect)(function() {
var n = []
, o = function(r) {
n.forEach(function(n) {
return n()
}),
n.splice(0, n.length),
r.forEach(function(r) {
n.push(r.nodeArray("spec_values").watchState("value", t))
})
}
, u = (0,
i.t$)(e, function(n) {
t(),
o(n)
});
return o(e.children),
r && t(),
function() {
u(),
n.forEach(function(n) {
return n()
})
}
}, [])
}
, v = function() {
var n = (0,
u.ox)()
, r = (0,
o.useState)(0)
, e = (0,
t.A)(r, 2)
, i = e[0]
, a = e[1];
f(function() {
return a(function(n) {
return ++n
})
});
var l = (0,
c.O5)();
return (0,
o.useMemo)(function() {
var r = n.nodeArray("spec_detail").state.value;
return (null == r ? void 0 : r.filter(function(n) {
var r;
return null == n || null === (r = n.spec_values) || void 0 === r ? void 0 : r.length
})) || []
}, [i, l])
}
, h = function() {
var n = (0,
u.ox)();
return function() {
var r = n.nodeArray("spec_detail").state.value;
return (null == r ? void 0 : r.filter(function(n) {
var r;
return !n.is_default && (null === (r = n.spec_values) || void 0 === r ? void 0 : r.length)
})) || a.Ml
}
}
, p = function(n) {
var r = {}
, e = {}
, t = {};
return null == n || n.forEach(function(n) {
var o;
r[n.id] = n,
null === (o = n.spec_values) || void 0 === o || o.forEach(function(r) {
e[r.id] = r,
t[r.id] = n
})
}),
{
specNameMap: r,
specValueMap: e,
specValueNameMap: t
}
}
, m = new l.l
, g = function() {
var n = (0,
u.ox)();
return function() {
var r = n.nodeArray("spec_detail")
, e = m.get();
return e || (e = p(r.state.value),
m.set(e)),
e
}
}
, _ = new l.l
, k = function() {
var n = (0,
u.ox)();
return function() {
var r = n.nodeArray("spec_detail")
, e = _.get();
return e || (e = r.children.reduce(function(n, r) {
return r.na("spec_values").children.forEach(function(r) {
var e = (r.state.value || {}).id;
e && (n[e] = r)
}),
n
}, {}),
_.set(e)),
e
}
}
, y = function() {
var n = (0,
u.ox)();
return function() {
var r = n.nodeArray("spec_detail").children.reduce(function(n, r) {
var e;
return null === (e = r.extra) || void 0 === e || null === (e = e.additions) || void 0 === e || null === (e = e.measure_templates) || void 0 === e || e.forEach(function(r) {
n[r.template_id] = r
}),
n
}, {}) || a.t0;
return {
templateMap: r,
hasMeasureSpec: Object.keys(r).length > 0
}
}
}
}
}]);
请帮我分析这段代码中,spec_detail_ids的生成过程
最新发布