F-L Drag&Drop 1.0

F-L Drag&Drop for CustomFetishes & SubFetishes

  1. // ==UserScript==
  2. // @name F-L Drag&Drop 1.0
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.0.3
  5. // @description
  6. // @author ZyLyXy
  7. // @match https://www.f-list.net/character_edit.php*
  8. // @grant none
  9. // @run-at document-idle
  10. // @description F-L Drag&Drop for CustomFetishes & SubFetishes
  11. // ==/UserScript==
  12. "use strict";
  13. (function () {
  14. function la(a) {
  15. a = typeof a;
  16. return "string" === a || "number" === a;
  17. }
  18. function t(a) {
  19. return void 0 === a || null === a;
  20. }
  21. function Z(a) {
  22. return null === a || !1 === a || !0 === a || void 0 === a;
  23. }
  24. function w(a) {
  25. return "function" === typeof a;
  26. }
  27. function aa(a) {
  28. return "string" === typeof a;
  29. }
  30. function L(a, b) {
  31. var c = {};
  32. if (a) for (var d in a) c[d] = a[d];
  33. if (b) for (var e in b) c[e] = b[e];
  34. return c;
  35. }
  36. function za(a) {
  37. return null !== a && "object" === typeof a;
  38. }
  39. function ma(a, b, c) {
  40. null === c ? a.appendChild(b) : a.insertBefore(b, c);
  41. }
  42. function Ra(a) {
  43. for (var b = 0; b < a.length; b++) a[b]();
  44. }
  45. function G(a, b) {
  46. for (var c; a; ) {
  47. c = a.flags;
  48. if (c & 2033) return a.dom;
  49. var d = a.children;
  50. a = c & 4 ? d.$LI : c & 8192 ? (2 === a.childFlags ? d : d[b ? 0 : d.length - 1]) : d;
  51. }
  52. return null;
  53. }
  54. function ba(a, b) {
  55. do {
  56. var c = a.flags;
  57. if (c & 2033) {
  58. b.removeChild(a.dom);
  59. break;
  60. }
  61. var d = a.children;
  62. c & 4 && (a = d.$LI);
  63. c & 8 && (a = d);
  64. if (c & 8192)
  65. if (2 === a.childFlags) a = d;
  66. else {
  67. a = 0;
  68. for (c = d.length; a < c; ++a) ba(d[a], b);
  69. break;
  70. }
  71. } while (a);
  72. }
  73. function Sa(a, b, c) {
  74. do {
  75. var d = a.flags;
  76. if (d & 2033) {
  77. ma(b, a.dom, c);
  78. break;
  79. }
  80. var e = a.children;
  81. d & 4 && (a = e.$LI);
  82. d & 8 && (a = e);
  83. if (d & 8192)
  84. if (2 === a.childFlags) a = e;
  85. else {
  86. a = 0;
  87. for (d = e.length; a < d; ++a) Sa(e[a], b, c);
  88. break;
  89. }
  90. } while (a);
  91. }
  92. function Ta(a, b, c) {
  93. return a.constructor.getDerivedStateFromProps ? L(c, a.constructor.getDerivedStateFromProps(b, c)) : c;
  94. }
  95. function Ua(a, b) {
  96. return za(a) && a.event === b.event && a.data === b.data;
  97. }
  98. function Va(a, b) {
  99. for (var c in b) void 0 === a[c] && (a[c] = b[c]);
  100. return a;
  101. }
  102. function Aa(a, b) {
  103. return !!w(a) && (a(b), !0);
  104. }
  105. function na(a, b, c, d, e, f, g, h) {
  106. this.childFlags = a;
  107. this.children = b;
  108. this.className = c;
  109. this.dom = null;
  110. this.flags = d;
  111. this.key = void 0 === e ? null : e;
  112. this.props = void 0 === f ? null : f;
  113. this.ref = void 0 === g ? null : g;
  114. this.type = h;
  115. }
  116. function r(a, b, c, d, e, f, g, h) {
  117. e = void 0 === e ? 1 : e;
  118. a = new na(e, d, c, a, g, f, h, b);
  119. W.createVNode && W.createVNode(a);
  120. 0 === e && Wa(a, a.children);
  121. return a;
  122. }
  123. function l(a, b, c, d, e) {
  124. var f = (a = a & 12 ? a : b.prototype && b.prototype.render ? 4 : b.render ? 32776 : 8);
  125. var g = (a & 32768 ? b.render : b).defaultProps;
  126. c = t(g) ? c : t(c) ? L(g, null) : Va(c, g);
  127. a & 4 || ((a = (a & 32768 ? b.render : b).defaultHooks), (e = t(a) ? e : t(e) ? a : Va(e, a)));
  128. b = new na(1, null, null, f, d, c, e, b);
  129. W.createVNode && W.createVNode(b);
  130. return b;
  131. }
  132. function M(a, b) {
  133. return new na(1, t(a) || !0 === a || !1 === a ? "" : a, null, 16, b, null, null, null);
  134. }
  135. function oa(a, b, c) {
  136. b = r(8192, 8192, null, a, b, null, c, null);
  137. switch (b.childFlags) {
  138. case 1:
  139. b.children = M("", null);
  140. b.childFlags = 2;
  141. break;
  142. case 16:
  143. (b.children = [M(a)]), (b.childFlags = 4);
  144. }
  145. return b;
  146. }
  147. function Ba(a) {
  148. var b = a.props;
  149. if (b) {
  150. var c = a.flags;
  151. c & 481 && (void 0 !== b.children && t(a.children) && Wa(a, b.children), void 0 !== b.className && ((a.className = b.className || null), (b.className = void 0)));
  152. void 0 !== b.key && ((a.key = b.key), (b.key = void 0));
  153. void 0 !== b.ref && ((a.ref = c & 8 ? L(a.ref, b.ref) : b.ref), (b.ref = void 0));
  154. }
  155. return a;
  156. }
  157. function B(a) {
  158. var b = a.flags & -16385,
  159. c = a.props;
  160. if (b & 14 && null !== c) {
  161. var d = c;
  162. c = {};
  163. for (var e in d) c[e] = d[e];
  164. }
  165. if (0 === (b & 8192)) return new na(a.childFlags, a.children, a.className, b, a.key, c, a.ref, a.type);
  166. b = a.children;
  167. c = a.childFlags;
  168. if (2 === c) var f = B(b);
  169. else if (c & 12) for (f = [], d = 0, e = b.length; d < e; ++d) f.push(B(b[d]));
  170. return oa(f, c, a.key);
  171. }
  172. function Xa(a, b, c, d) {
  173. for (var e = a.length; c < e; c++) {
  174. var f = a[c];
  175. if (!Z(f)) {
  176. var g = d + "$" + c;
  177. if (ca(f)) Xa(f, b, 0, g);
  178. else {
  179. if (la(f)) f = M(f, g);
  180. else {
  181. var h = f.key,
  182. q = aa(h) && "$" === h[0];
  183. if (f.flags & 81920 || q) f = B(f);
  184. f.flags |= 65536;
  185. q ? h.substring(0, d.length) !== d && (f.key = d + h) : (f.key = null === h ? g : d + h);
  186. }
  187. b.push(f);
  188. }
  189. }
  190. }
  191. }
  192. function Wa(a, b) {
  193. var c = 1;
  194. if (Z(b)) var d = b;
  195. else if (la(b)) (c = 16), (d = b);
  196. else if (ca(b)) {
  197. c = b.length;
  198. for (var e = 0; e < c; ++e) {
  199. var f = b[e];
  200. if (Z(f) || ca(f)) {
  201. d = d || b.slice(0, e);
  202. Xa(b, d, e, "");
  203. break;
  204. } else if (la(f)) (d = d || b.slice(0, e)), d.push(M(f, "$" + e));
  205. else {
  206. var g = f.key,
  207. h = 0 < (f.flags & 81920),
  208. q = null === g;
  209. g = aa(g) && "$" === g[0];
  210. if (h || q || g) {
  211. d = d || b.slice(0, e);
  212. if (h || g) f = B(f);
  213. if (q || g) f.key = "$" + e;
  214. d.push(f);
  215. } else d && d.push(f);
  216. f.flags |= 65536;
  217. }
  218. }
  219. d = d || b;
  220. c = 0 === d.length ? 1 : 8;
  221. } else (d = b), (d.flags |= 65536), b.flags & 81920 && (d = B(b)), (c = 2);
  222. a.children = d;
  223. a.childFlags = c;
  224. return a;
  225. }
  226. function Ca(a) {
  227. return Z(a) || la(a) ? M(a, null) : ca(a) ? oa(a, 0, null) : a.flags & 16384 ? B(a) : a;
  228. }
  229. function pa(a) {
  230. return { onClick: a, onDblClick: a, onFocusIn: a, onFocusOut: a, onKeyDown: a, onKeyPress: a, onKeyUp: a, onMouseDown: a, onMouseMove: a, onMouseUp: a, onTouchEnd: a, onTouchMove: a, onTouchStart: a };
  231. }
  232. function Ya(a, b) {
  233. var c = b.$EV;
  234. c || (c = b.$EV = pa(null));
  235. c[a] || 1 !== ++Za[a] || ((b = "onClick" === a || "onDblClick" === a ? Hb(a) : Ib(a)), document.addEventListener(a.substr(2).toLowerCase(), b), (Da[a] = b));
  236. return c;
  237. }
  238. function $a(a, b) {
  239. (b = b.$EV) && b[a] && (0 === --Za[a] && (document.removeEventListener(a.substr(2).toLowerCase(), Da[a]), (Da[a] = null)), (b[a] = null));
  240. }
  241. function ab(a, b, c, d) {
  242. var e = w(a.composedPath) ? a.composedPath()[0] : a.target;
  243. do {
  244. if (b && e.disabled) break;
  245. var f = e.$EV;
  246. if (f && (f = f[c]) && ((d.dom = e), f.event ? f.event(f.data, a) : f(a), a.cancelBubble)) break;
  247. e = e.parentNode;
  248. } while (null !== e);
  249. }
  250. function Jb() {
  251. this.cancelBubble = !0;
  252. this.immediatePropagationStopped || this.stopImmediatePropagation();
  253. }
  254. function Kb() {
  255. return this.defaultPrevented;
  256. }
  257. function Lb() {
  258. return this.cancelBubble;
  259. }
  260. function bb(a) {
  261. var b = { dom: document };
  262. a.isDefaultPrevented = Kb;
  263. a.isPropagationStopped = Lb;
  264. a.stopPropagation = Jb;
  265. Object.defineProperty(a, "currentTarget", {
  266. configurable: !0,
  267. get: function () {
  268. return b.dom;
  269. },
  270. });
  271. return b;
  272. }
  273. function Hb(a) {
  274. return function (b) {
  275. 0 !== b.button ? b.stopPropagation() : ab(b, !0, a, bb(b));
  276. };
  277. }
  278. function Ib(a) {
  279. return function (b) {
  280. ab(b, !1, a, bb(b));
  281. };
  282. }
  283. function cb(a, b, c) {
  284. if (a[b]) (a = a[b]), a.event ? a.event(a.data, c) : a(c);
  285. else if (((b = b.toLowerCase()), a[b])) a[b](c);
  286. }
  287. function da(a, b) {
  288. var c = function (c) {
  289. var d = this.$V;
  290. if (d) {
  291. var f = d.props || x;
  292. d = d.dom;
  293. if (aa(a)) cb(f, a, c);
  294. else for (var g = 0; g < a.length; ++g) cb(f, a[g], c);
  295. w(b) && ((c = this.$V), b(c.props || x, d, !1, c));
  296. }
  297. };
  298. Object.defineProperty(c, "wrapped", { configurable: !1, enumerable: !1, value: !0, writable: !1 });
  299. return c;
  300. }
  301. function P(a, b, c) {
  302. var d = "$" + b,
  303. e = a[d];
  304. if (e) {
  305. if (e[1].wrapped) return;
  306. a.removeEventListener(e[0], e[1]);
  307. a[d] = null;
  308. }
  309. w(c) && (a.addEventListener(b, c), (a[d] = [b, c]));
  310. }
  311. function Ea(a) {
  312. return "checkbox" === a || "radio" === a;
  313. }
  314. function db(a) {
  315. a.stopPropagation();
  316. }
  317. function qa(a, b) {
  318. var c = a.type,
  319. d = a.value,
  320. e = a.checked,
  321. f = a.multiple;
  322. a = a.defaultValue;
  323. var g = !t(d);
  324. c && c !== b.type && b.setAttribute("type", c);
  325. t(f) || f === b.multiple || (b.multiple = f);
  326. t(a) || g || (b.defaultValue = a + "");
  327. Ea(c) ? (g && (b.value = d), t(e) || (b.checked = e)) : g && b.value !== d ? ((b.defaultValue = d), (b.value = d)) : t(e) || (b.checked = e);
  328. }
  329. function ea(a, b) {
  330. if ("option" === a.type) {
  331. var c = a.props || x;
  332. a = a.dom;
  333. a.value = c.value;
  334. c.value === b || (ca(b) && -1 !== b.indexOf(c.value)) ? (a.selected = !0) : (t(b) && t(c.selected)) || (a.selected = c.selected || !1);
  335. } else {
  336. c = a.children;
  337. var d = a.flags;
  338. if (d & 4) ea(c.$LI, b);
  339. else if (d & 8) ea(c, b);
  340. else if (2 === a.childFlags) ea(c, b);
  341. else if (a.childFlags & 12) for (a = 0, d = c.length; a < d; ++a) ea(c[a], b);
  342. }
  343. }
  344. function Fa(a, b, c, d) {
  345. var e = !!a.multiple;
  346. t(a.multiple) || e === b.multiple || (b.multiple = e);
  347. e = a.selectedIndex;
  348. -1 === e && (b.selectedIndex = -1);
  349. if (1 !== d.childFlags) {
  350. var f = a.value;
  351. "number" === typeof e && -1 < e && b.options[e] && (f = b.options[e].value);
  352. c && t(f) && (f = a.defaultValue);
  353. ea(d, f);
  354. }
  355. }
  356. function Ga(a, b, c) {
  357. var d = a.value,
  358. e = b.value;
  359. t(d) ? c && ((a = a.defaultValue), t(a) || a === e || ((b.defaultValue = a), (b.value = a))) : e !== d && ((b.defaultValue = d), (b.value = d));
  360. }
  361. function eb(a) {
  362. return a.type && Ea(a.type) ? !t(a.checked) : !t(a.value);
  363. }
  364. function ra(a) {
  365. a && !Aa(a, null) && a.current && (a.current = null);
  366. }
  367. function sa(a, b, c) {
  368. a &&
  369. (w(a) || void 0 !== a.current) &&
  370. c.push(function () {
  371. Aa(a, b) || void 0 === a.current || (a.current = b);
  372. });
  373. }
  374. function F(a, b) {
  375. I(a);
  376. ba(a, b);
  377. }
  378. function I(a) {
  379. var b = a.flags,
  380. c = a.children;
  381. if (b & 481) {
  382. b = a.ref;
  383. var d = a.props;
  384. ra(b);
  385. b = a.childFlags;
  386. if (null !== d) {
  387. d = Object.keys(d);
  388. for (var e = 0, f = d.length; e < f; e++) {
  389. var g = d[e];
  390. fb[g] && $a(g, a.dom);
  391. }
  392. }
  393. b & 12 ? fa(c) : 2 === b && I(c);
  394. } else if (c)
  395. if (b & 4) w(c.componentWillUnmount) && c.componentWillUnmount(), ra(a.ref), (c.$UN = !0), I(c.$LI);
  396. else if (b & 8) {
  397. b = a.ref;
  398. if (!t(b) && w(b.onComponentWillUnmount)) b.onComponentWillUnmount(G(a, !0), a.props || x);
  399. I(c);
  400. } else b & 1024 ? F(c, a.ref) : b & 8192 && a.childFlags & 12 && fa(c);
  401. }
  402. function fa(a) {
  403. for (var b = 0, c = a.length; b < c; ++b) I(a[b]);
  404. }
  405. function ta(a, b, c) {
  406. fa(c);
  407. b.flags & 8192 ? ba(b, a) : (a.textContent = "");
  408. }
  409. function Mb(a) {
  410. var b = a.event;
  411. return function (c) {
  412. b(a.data, c);
  413. };
  414. }
  415. function Ha(a, b, c, d, e, f, g) {
  416. switch (a) {
  417. case "children":
  418. case "childrenType":
  419. case "className":
  420. case "defaultValue":
  421. case "key":
  422. case "multiple":
  423. case "ref":
  424. case "selectedIndex":
  425. break;
  426. case "autoFocus":
  427. d.autofocus = !!c;
  428. break;
  429. case "allowfullscreen":
  430. case "autoplay":
  431. case "capture":
  432. case "checked":
  433. case "controls":
  434. case "default":
  435. case "disabled":
  436. case "hidden":
  437. case "indeterminate":
  438. case "loop":
  439. case "muted":
  440. case "novalidate":
  441. case "open":
  442. case "readOnly":
  443. case "required":
  444. case "reversed":
  445. case "scoped":
  446. case "seamless":
  447. case "selected":
  448. d[a] = !!c;
  449. break;
  450. case "defaultChecked":
  451. case "value":
  452. case "volume":
  453. if (f && "value" === a) break;
  454. b = t(c) ? "" : c;
  455. d[a] !== b && (d[a] = b);
  456. break;
  457. case "style":
  458. if (t(c)) d.removeAttribute("style");
  459. else {
  460. d = d.style;
  461. var h;
  462. if (aa(c)) d.cssText = c;
  463. else if (t(b) || aa(b)) for (h in c) (g = c[h]), d.setProperty(h, g);
  464. else {
  465. for (h in c) (g = c[h]), g !== b[h] && d.setProperty(h, g);
  466. for (h in b) t(c[h]) && d.removeProperty(h);
  467. }
  468. }
  469. break;
  470. case "dangerouslySetInnerHTML":
  471. a = (c && c.__html) || "";
  472. if ((b = ((b && b.__html) || "") !== a)) if ((b = !t(a))) (b = document.createElement("i")), (b.innerHTML = a), (b = b.innerHTML !== d.innerHTML);
  473. b && (null !== g && (g.childFlags & 12 ? fa(g.children) : 2 === g.childFlags && I(g.children), (g.children = null), (g.childFlags = 1)), (d.innerHTML = a));
  474. break;
  475. default:
  476. if (fb[a]) w(c) ? (Ya(a, d)[a] = c) : za(c) ? Ua(b, c) || (Ya(a, d)[a] = c) : $a(a, d);
  477. else if (111 === a.charCodeAt(0) && 110 === a.charCodeAt(1))
  478. a: {
  479. g = c;
  480. if (za(g)) {
  481. if (Ua(b, g)) break a;
  482. g = Mb(g);
  483. }
  484. P(d, a.substr(2).toLowerCase(), g);
  485. }
  486. else t(c) ? d.removeAttribute(a) : e && gb[a] ? d.setAttributeNS(gb[a], a, c) : d.setAttribute(a, c);
  487. }
  488. }
  489. function hb(a, b, c) {
  490. b = Ca(a.render(b, a.state, c));
  491. var d = c;
  492. w(a.getChildContext) && (d = L(c, a.getChildContext()));
  493. a.$CX = d;
  494. return b;
  495. }
  496. function D(a, b, c, d, e, f) {
  497. var g = (a.flags |= 16384);
  498. if (g & 481) {
  499. var h = d;
  500. d = a.flags;
  501. var q = a.props,
  502. k = a.className,
  503. n = a.children,
  504. v = a.childFlags;
  505. g = a.type;
  506. g = (h = h || 0 < (d & 32)) ? document.createElementNS("http://www.w3.org/2000/svg", g) : document.createElement(g);
  507. g = a.dom = g;
  508. t(k) || "" === k || (h ? g.setAttribute("class", k) : (g.className = k));
  509. 16 === v ? (g.textContent = n) : 1 !== v && ((k = h && "foreignObject" !== a.type), 2 === v ? (n.flags & 16384 && (a.children = n = B(n)), D(n, g, c, k, null, f)) : (8 !== v && 4 !== v) || Q(n, g, c, k, null, f));
  510. null === b || ma(b, g, e);
  511. if (null !== q) {
  512. b = h;
  513. e = !1;
  514. if ((c = 0 < (d & 448))) if ((e = eb(q))) d & 64 ? (Ea(q.type) ? (P(g, "change", Nb), P(g, "click", db)) : P(g, "input", Ob)) : d & 256 ? P(g, "change", Pb) : d & 128 && (P(g, "input", Qb), q.onChange && P(g, "change", Rb));
  515. for (var p in q) Ha(p, null, q[p], g, b, e, null);
  516. c && ((b = e), d & 64 ? qa(q, g) : d & 256 ? Fa(q, g, !0, a) : d & 128 && Ga(q, g, !0), b && (g.$V = a));
  517. }
  518. sa(a.ref, g, f);
  519. } else if (g & 4) {
  520. h = a.type;
  521. p = a.props || x;
  522. g = new h(p, c);
  523. h = g.$N = !(!h.getDerivedStateFromProps && !g.getSnapshotBeforeUpdate);
  524. g.$SVG = d;
  525. g.$L = f;
  526. a.children = g;
  527. g.$BS = !1;
  528. g.context = c;
  529. g.props === x && (g.props = p);
  530. if (h) g.state = Ta(g, p, g.state);
  531. else if (w(g.componentWillMount)) {
  532. g.$BR = !0;
  533. g.componentWillMount();
  534. h = g.$PS;
  535. if (null !== h) {
  536. n = g.state;
  537. if (null === n) g.state = h;
  538. else for (q in h) n[q] = h[q];
  539. g.$PS = null;
  540. }
  541. g.$BR = !1;
  542. }
  543. g.$LI = hb(g, p, c);
  544. D(g.$LI, b, g.$CX, d, e, f);
  545. sa(a.ref, g, f);
  546. w(g.componentDidMount) && f.push(Sb(g));
  547. } else
  548. g & 8
  549. ? ((p = a.flags & 32768 ? a.type.render(a.props || x, a.ref, c) : a.type(a.props || x, c)),
  550. D((a.children = Ca(p)), b, c, d, e, f),
  551. (b = a.ref),
  552. t(b) || (Aa(b.onComponentWillMount, a.props || x), w(b.onComponentDidMount) && f.push(Tb(b, a))))
  553. : g & 512 || g & 16
  554. ? ((a = a.dom = document.createTextNode(a.children)), null !== b && ma(b, a, e))
  555. : g & 8192
  556. ? ((p = a.children), (q = a.childFlags), q & 12 && 0 === p.length && ((q = a.childFlags = 2), (p = a.children = M("", null))), 2 === q ? D(p, b, e, d, e, f) : Q(p, b, c, d, e, f))
  557. : g & 1024 && (D(a.children, a.ref, c, !1, null, f), (f = M("", null)), (c = f.dom = document.createTextNode(f.children)), null !== b && ma(b, c, e), (a.dom = f.dom));
  558. }
  559. function Q(a, b, c, d, e, f) {
  560. for (var g = 0; g < a.length; ++g) {
  561. var h = a[g];
  562. h.flags & 16384 && (a[g] = h = B(h));
  563. D(h, b, c, d, e, f);
  564. }
  565. }
  566. function Sb(a) {
  567. return function () {
  568. a.componentDidMount();
  569. };
  570. }
  571. function Tb(a, b) {
  572. return function () {
  573. a.onComponentDidMount(G(b, !0), b.props || x);
  574. };
  575. }
  576. function J(a, b, c, d, e, f, g) {
  577. var h = (b.flags |= 16384);
  578. if (a.flags !== h || a.type !== b.type || a.key !== b.key || h & 2048)
  579. a.flags & 16384 ? (I(a), 0 !== (b.flags & a.flags & 2033) ? (D(b, null, d, e, null, g), c.replaceChild(b.dom, a.dom)) : (D(b, c, d, e, G(a, !0), g), ba(a, c))) : D(b, c, d, e, f, g);
  580. else if (h & 481) {
  581. c = b.dom = a.dom;
  582. var q = a.props,
  583. k = b.props,
  584. n = !1;
  585. f = !1;
  586. e = e || 0 < (h & 32);
  587. if (q !== k) {
  588. q = q || x;
  589. var v = k || x;
  590. if (v !== x) {
  591. (n = 0 < (h & 448)) && (f = eb(v));
  592. for (var p in v) {
  593. k = q[p];
  594. var u = v[p];
  595. k !== u && Ha(p, k, u, c, e, f, a);
  596. }
  597. }
  598. if (q !== x) for (var m in q) t(v[m]) && !t(q[m]) && Ha(m, q[m], null, c, e, f, a);
  599. }
  600. p = b.children;
  601. m = b.className;
  602. a.className !== m && (t(m) ? c.removeAttribute("class") : e ? c.setAttribute("class", m) : (c.className = m));
  603. h & 4096 ? c.textContent !== p && (c.textContent = p) : Ia(a.childFlags, b.childFlags, a.children, p, c, d, e && "foreignObject" !== b.type, null, a, g);
  604. n && ((d = v), (e = f), h & 64 ? qa(d, c) : h & 256 ? Fa(d, c, !1, b) : h & 128 && Ga(d, c, !1), e && (c.$V = b));
  605. d = b.ref;
  606. a = a.ref;
  607. a !== d && (ra(a), sa(d, c, g));
  608. } else if (h & 4)
  609. a: {
  610. if (((h = b.children = a.children), null !== h)) {
  611. h.$L = g;
  612. v = b.props || x;
  613. b = b.ref;
  614. a = a.ref;
  615. n = h.state;
  616. if (!h.$N) {
  617. if (w(h.componentWillReceiveProps)) {
  618. h.$BR = !0;
  619. h.componentWillReceiveProps(v, d);
  620. if (h.$UN) break a;
  621. h.$BR = !1;
  622. }
  623. null !== h.$PS && ((n = L(n, h.$PS)), (h.$PS = null));
  624. }
  625. ib(h, n, v, c, d, e, !1, f, g);
  626. a !== b && (ra(a), sa(b, h, g));
  627. }
  628. }
  629. else if (h & 8)
  630. if (((m = !0), (h = b.props || x), (v = b.ref), (n = a.props), (p = !t(v)), (a = a.children), p && w(v.onComponentShouldUpdate) && (m = v.onComponentShouldUpdate(n, h)), !1 !== m)) {
  631. if (p && w(v.onComponentWillUpdate)) v.onComponentWillUpdate(n, h);
  632. m = b.type;
  633. m = Ca(b.flags & 32768 ? m.render(h, v, d) : m(h, d));
  634. J(a, m, c, d, e, f, g);
  635. b.children = m;
  636. if (p && w(v.onComponentDidUpdate)) v.onComponentDidUpdate(n, h);
  637. } else b.children = a;
  638. else
  639. h & 16
  640. ? ((g = b.children), (d = b.dom = a.dom), g !== a.children && (d.nodeValue = g))
  641. : h & 512
  642. ? (b.dom = a.dom)
  643. : h & 8192
  644. ? ((f = a.children),
  645. (h = b.children),
  646. (v = a.childFlags),
  647. (n = b.childFlags),
  648. (p = null),
  649. n & 12 && 0 === h.length && ((n = b.childFlags = 2), (h = b.children = M("", null))),
  650. (b = 0 !== (n & 2)),
  651. v & 12 && ((m = f.length), (v & 8 && n & 8) || b || (!b && h.length > m)) && (p = G(f[m - 1], !1).nextSibling),
  652. Ia(v, n, f, h, c, d, e, p, a, g))
  653. : ((e = a.ref), (c = b.ref), (f = b.children), Ia(a.childFlags, b.childFlags, a.children, f, e, d, !1, null, a, g), (b.dom = a.dom), e === c || Z(f) || ((g = f.dom), e.removeChild(g), c.appendChild(g)));
  654. }
  655. function Ia(a, b, c, d, e, f, g, h, q, k) {
  656. switch (a) {
  657. case 2:
  658. switch (b) {
  659. case 2:
  660. J(c, d, e, f, g, h, k);
  661. break;
  662. case 1:
  663. F(c, e);
  664. break;
  665. case 16:
  666. I(c);
  667. e.textContent = d;
  668. break;
  669. default:
  670. I(c), Q(d, e, f, g, G(c, !0), k), ba(c, e);
  671. }
  672. break;
  673. case 1:
  674. switch (b) {
  675. case 2:
  676. D(d, e, f, g, h, k);
  677. break;
  678. case 1:
  679. break;
  680. case 16:
  681. e.textContent = d;
  682. break;
  683. default:
  684. Q(d, e, f, g, h, k);
  685. }
  686. break;
  687. case 16:
  688. switch (b) {
  689. case 16:
  690. c !== d && ("" !== c ? (e.firstChild.nodeValue = d) : (e.textContent = d));
  691. break;
  692. case 2:
  693. e.textContent = "";
  694. D(d, e, f, g, h, k);
  695. break;
  696. case 1:
  697. e.textContent = "";
  698. break;
  699. default:
  700. (e.textContent = ""), Q(d, e, f, g, h, k);
  701. }
  702. break;
  703. default:
  704. switch (b) {
  705. case 16:
  706. fa(c);
  707. e.textContent = d;
  708. break;
  709. case 2:
  710. ta(e, q, c);
  711. D(d, e, f, g, h, k);
  712. break;
  713. case 1:
  714. ta(e, q, c);
  715. break;
  716. default:
  717. var n = c.length | 0,
  718. v = d.length | 0;
  719. if (0 === n) 0 < v && Q(d, e, f, g, h, k);
  720. else if (0 === v) ta(e, q, c);
  721. else if (8 === b && 8 === a) {
  722. var p = n - 1;
  723. b = v - 1;
  724. a = 0;
  725. var u = c[a],
  726. m = d[a];
  727. a: {
  728. for (; u.key === m.key; ) {
  729. m.flags & 16384 && (d[a] = m = B(m));
  730. J(u, m, e, f, g, h, k);
  731. c[a] = m;
  732. ++a;
  733. if (a > p || a > b) break a;
  734. u = c[a];
  735. m = d[a];
  736. }
  737. u = c[p];
  738. for (m = d[b]; u.key === m.key; ) {
  739. m.flags & 16384 && (d[b] = m = B(m));
  740. J(u, m, e, f, g, h, k);
  741. c[p] = m;
  742. p--;
  743. b--;
  744. if (a > p || a > b) break a;
  745. u = c[p];
  746. m = d[b];
  747. }
  748. }
  749. if (a > p) {
  750. if (a <= b) for (c = b + 1, h = c < v ? G(d[c], !0) : h; a <= b; ) (m = d[a]), m.flags & 16384 && (d[a] = m = B(m)), ++a, D(m, e, f, g, h, k);
  751. } else if (a > b) for (; a <= p; ) F(c[a++], e);
  752. else {
  753. var r = b;
  754. u = a;
  755. var t = u;
  756. a = u;
  757. var l = p - u + 1;
  758. m = r - u + 1;
  759. b = new Int32Array(m + 1);
  760. var w = l === n,
  761. z = !1,
  762. x = 0,
  763. A = 0;
  764. if (4 > v || 32 > (l | m))
  765. for (l = t; l <= p; ++l) {
  766. var y = c[l];
  767. if (A < m) {
  768. for (u = a; u <= r; u++)
  769. if (((n = d[u]), y.key === n.key)) {
  770. b[u - a] = l + 1;
  771. if (w) for (w = !1; t < l; ) F(c[t++], e);
  772. x > u ? (z = !0) : (x = u);
  773. n.flags & 16384 && (d[u] = n = B(n));
  774. J(y, n, e, f, g, h, k);
  775. ++A;
  776. break;
  777. }
  778. !w && u > r && F(y, e);
  779. } else w || F(y, e);
  780. }
  781. else {
  782. var C = {};
  783. for (l = a; l <= r; ++l) C[d[l].key] = l;
  784. for (l = t; l <= p; ++l)
  785. if (((y = c[l]), A < m))
  786. if (((u = C[y.key]), void 0 !== u)) {
  787. if (w) for (w = !1; l > t; ) F(c[t++], e);
  788. b[u - a] = l + 1;
  789. x > u ? (z = !0) : (x = u);
  790. n = d[u];
  791. n.flags & 16384 && (d[u] = n = B(n));
  792. J(y, n, e, f, g, h, k);
  793. ++A;
  794. } else w || F(y, e);
  795. else w || F(y, e);
  796. }
  797. if (w) ta(e, q, c), Q(d, e, f, g, h, k);
  798. else if (z) {
  799. n = q = 0;
  800. r = b.length;
  801. r > jb && ((jb = r), (K = new Int32Array(r)), (ua = new Int32Array(r)));
  802. for (; q < r; ++q)
  803. if (((c = b[q]), 0 !== c))
  804. if (((p = K[n]), b[p] < c)) (ua[q] = p), (K[++n] = q);
  805. else {
  806. p = 0;
  807. for (u = n; p < u; ) (l = (p + u) >> 1), b[K[l]] < c ? (p = l + 1) : (u = l);
  808. c < b[K[p]] && (0 < p && (ua[q] = K[p - 1]), (K[p] = q));
  809. }
  810. p = n + 1;
  811. c = new Int32Array(p);
  812. for (u = K[p - 1]; 0 < p--; ) (c[p] = u), (u = ua[u]), (K[p] = 0);
  813. u = c.length - 1;
  814. for (l = m - 1; 0 <= l; l--)
  815. 0 === b[l]
  816. ? ((x = l + a), (n = d[x]), n.flags & 16384 && (d[x] = n = B(n)), (m = x + 1), D(n, e, f, g, m < v ? G(d[m], !0) : h, k))
  817. : 0 > u || l !== c[u]
  818. ? ((x = l + a), (n = d[x]), (m = x + 1), Sa(n, e, m < v ? G(d[m], !0) : h))
  819. : u--;
  820. } else if (A !== m) for (l = m - 1; 0 <= l; l--) 0 === b[l] && ((x = l + a), (n = d[x]), n.flags & 16384 && (d[x] = n = B(n)), (m = x + 1), D(n, e, f, g, m < v ? G(d[m], !0) : h, k));
  821. }
  822. } else {
  823. a = n > v ? v : n;
  824. for (b = 0; b < a; ++b) (m = d[b]), (q = c[b]), m.flags & 16384 && (m = d[b] = B(m)), J(q, m, e, f, g, h, k), (c[b] = m);
  825. if (n < v) for (b = a; b < v; ++b) (m = d[b]), m.flags & 16384 && (m = d[b] = B(m)), D(m, e, f, g, h, k);
  826. else if (n > v) for (b = a; b < n; ++b) F(c[b], e);
  827. }
  828. }
  829. }
  830. }
  831. function Ub(a, b, c, d, e) {
  832. e.push(function () {
  833. a.componentDidUpdate(b, c, d);
  834. });
  835. }
  836. function ib(a, b, c, d, e, f, g, h, k) {
  837. var l = a.state,
  838. n = a.props,
  839. q = !!a.$N,
  840. p = w(a.shouldComponentUpdate);
  841. q && (b = Ta(a, c, b !== l ? L(l, b) : b));
  842. g || !p || (p && a.shouldComponentUpdate(c, b, e))
  843. ? (!q && w(a.componentWillUpdate) && a.componentWillUpdate(c, b, e),
  844. (a.props = c),
  845. (a.state = b),
  846. (a.context = e),
  847. (b = null),
  848. (c = hb(a, c, e)),
  849. q && w(a.getSnapshotBeforeUpdate) && (b = a.getSnapshotBeforeUpdate(n, l)),
  850. J(a.$LI, c, d, a.$CX, f, h, k),
  851. (a.$LI = c),
  852. w(a.componentDidUpdate) && Ub(a, n, l, b, k))
  853. : ((a.props = c), (a.state = b), (a.context = e));
  854. }
  855. function kb(a, b, c, d) {
  856. void 0 === c && (c = null);
  857. void 0 === d && (d = x);
  858. var e = [],
  859. f = b.$V;
  860. ha = !0;
  861. t(f) ? t(a) || (a.flags & 16384 && (a = B(a)), D(a, b, d, !1, null, e), (f = b.$V = a)) : t(a) ? (F(f, b), (b.$V = null)) : (a.flags & 16384 && (a = B(a)), J(f, a, b, d, !1, null, e), (f = b.$V = a));
  862. Ra(e);
  863. ha = !1;
  864. w(c) && c();
  865. w(W.renderComplete) && W.renderComplete(f, b);
  866. }
  867. function lb(a, b, c, d) {
  868. var e = a.$PS;
  869. w(b) && (b = b(e ? L(a.state, e) : a.state, a.props, a.context));
  870. if (t(e)) a.$PS = b;
  871. else for (var f in b) e[f] = b[f];
  872. a.$BR ? w(c) && a.$L.push(c.bind(a)) : ha || 0 !== va.length ? (-1 === va.indexOf(a) && va.push(a), Ja || ((Ja = !0), Vb(Wb)), w(c) && ((b = a.$QU), b || (b = a.$QU = []), b.push(c))) : (mb(a, d), w(c) && c.call(a));
  873. }
  874. function Wb() {
  875. var a;
  876. for (Ja = !1; (a = va.shift()); )
  877. if (!a.$UN && (mb(a, !1), a.$QU)) {
  878. for (var b = a.$QU, c = 0; c < b.length; ++c) b[c].call(a);
  879. a.$QU = null;
  880. }
  881. }
  882. function mb(a, b) {
  883. if (b || !a.$BR) {
  884. var c = a.$PS;
  885. a.$PS = null;
  886. var d = [];
  887. ha = !0;
  888. ib(a, L(a.state, c), a.props, G(a.$LI, !0).parentNode, a.context, a.$SVG, b, null, d);
  889. Ra(d);
  890. ha = !1;
  891. } else (a.state = a.$PS), (a.$PS = null);
  892. }
  893. function wa(a) {
  894. let b = [];
  895. for (let d = 0, e = a.length; d < e; d++) {
  896. var c = d + 1;
  897. if (c < e) {
  898. c = a[c];
  899. let e = !!c;
  900. e && c.constructor === String ? b.push(a[d]) : (e && b.push(a[d]), d++);
  901. } else b.push(a[d]);
  902. }
  903. return b.join(" ");
  904. }
  905. function Xb(a, b, c, d, e) {
  906. let f = new XMLHttpRequest();
  907. e &&
  908. (f.onreadystatechange = function () {
  909. 4 === f.readyState && e(200 !== f.status, f);
  910. });
  911. if (d) {
  912. let a = d.type;
  913. a && (f.responseType = a);
  914. }
  915. f.open(a, b, d ? !d.sync : !0);
  916. if (d && (a = d.headers)) for (let b = 0, c = a.length; b < c; b += 2) f.setRequestHeader(a[b], a[b + 1]);
  917. f.send(c);
  918. }
  919. function Ka(a, b, c) {
  920. if (a === b) return !0;
  921. if (!a || "object" !== typeof a || !b || "object" !== typeof b) return !1;
  922. var d = a.constructor;
  923. if (d !== b.constructor) return !1;
  924. if (d === Date) return a.getTime() === b.getTime();
  925. if (d === RegExp) return a.source === b.source;
  926. var e = R.get(a);
  927. if (!e)
  928. if ((R.set(a, b), d === Array)) {
  929. d = a.length;
  930. if (d !== b.length) return c || R.clear(), !1;
  931. for (e = 0; e < d; e++) if (!Ka(a[e], b[e], !0)) return c || R.clear(), !1;
  932. } else {
  933. d = Object.keys(a);
  934. var f = Object.keys(b);
  935. e = d.length;
  936. if (e !== f.length) return c || R.clear(), !1;
  937. for (f = 0; f < e; f++) {
  938. let e = d[f];
  939. if (!Ka(a[e], b[e], !0)) return c || R.clear(), !1;
  940. }
  941. }
  942. else if (c) return b === e;
  943. c || R.clear();
  944. return !0;
  945. }
  946. function H(a, b, c, d) {
  947. void 0 === d ? a.addEventListener(b, c) : a.addEventListener(b, c, d);
  948. }
  949. function La(a, b) {
  950. for (let c = 0, d = a.length; c < d; c++) if (a[c].id === b) return c;
  951. return -1;
  952. }
  953. function xa(a, b) {
  954. var c = b._c;
  955. if (a._c !== c) return c ? 1 : -1;
  956. c = a.choice;
  957. var d = b.choice;
  958. if (c !== d) return Ma[c] - Ma[d];
  959. a = a.name;
  960. b = b.name;
  961. for (let e = 0, f = a.length; e < f; e++) {
  962. c = a.codePointAt(e);
  963. d = b.codePointAt(e);
  964. if (void 0 === d) return 1;
  965. if (c !== d) return c - d;
  966. }
  967. return a.length - b.length;
  968. }
  969. function nb(a) {
  970. let b = document.getElementById("FetishItem" + a.id);
  971. a = a.choice;
  972. if (b.previousElementSibling.value !== a) {
  973. var c = Ma[a];
  974. let d = b.children[2].children;
  975. if (4 > c) d[2 * c].onclick();
  976. else (c = d[0]), c.onclick(), c.onclick();
  977. b.previousElementSibling.value = a;
  978. }
  979. }
  980. function Yb() {
  981. A.clear();
  982. let a = C.b,
  983. b = N.b;
  984. for (let d in S) {
  985. let e = a[d];
  986. if (e) {
  987. var c = S[d];
  988. c = c ? c.map((a) => b[a]) : [];
  989. A.set(e, c);
  990. } else delete S[d];
  991. }
  992. }
  993. function Na() {
  994. S = {};
  995. for (let b in A.a) {
  996. var a = A.a[b];
  997. a = a ? a.map((a) => a.id) : [];
  998. S[b] = a;
  999. }
  1000. }
  1001. function ob(a) {
  1002. A.a[a.id] && (T = !0);
  1003. C.rem(a);
  1004. A.remK(a.id);
  1005. }
  1006. function pb(a) {
  1007. a && a._c && (ob(a), (a = k.Sels.indexOf(a)), 0 <= a && k.Sels.splice(a, 1));
  1008. }
  1009. function Zb() {
  1010. let a = document.getElementById("character-button-save");
  1011. if (!a._i) {
  1012. a._i = !0;
  1013. var b = a.onclick;
  1014. a.onclick = function () {
  1015. if (T) {
  1016. var a = JSON.stringify(S),
  1017. d = new URLSearchParams();
  1018. d.append("csrf_token", document.getElementById("flcsrf-token").content);
  1019. d.append("subfetish_json", a);
  1020. d.append("charid", qb.CharacterLists.characterId);
  1021. Xb("POST", "https://www.f-list.net/experimental/subfetish_save.php", d, { headers: ["Content-Type", "application/x-www-form-urlencoded"] }, (a, c) => {
  1022. a ? qb.Common_displayError("Error posting CustomFetishes: " + c.responseText) : b();
  1023. });
  1024. } else b();
  1025. };
  1026. }
  1027. }
  1028. function rb() {
  1029. if (!sb) {
  1030. var a = document.getElementById("characterListsTemplate");
  1031. a && (a = a.previousElementSibling);
  1032. a && (a = a.textContent);
  1033. if (a) {
  1034. var b = a.indexOf("\n //FList.Subfetish.Data.SubfetishesByCustom = ");
  1035. if (0 > b) a = "";
  1036. else {
  1037. b += 58;
  1038. var c = a.indexOf(";\n", b);
  1039. a = 0 > c ? "" : a.substring(b, c);
  1040. }
  1041. }
  1042. S = a ? JSON.parse(a) : {};
  1043. sb = !0;
  1044. Zb();
  1045. tb.inject();
  1046. }
  1047. C.clear();
  1048. a = document.querySelectorAll(".CustomKink");
  1049. for (let d = 0, e = a.length - 1; d < e; d++) {
  1050. b = a[d].children;
  1051. c = b[6].value;
  1052. let e = 500 < parseInt(c);
  1053. C.fset({ _o: !0, _c: !0, _p: e, id: e ? c : "N" + c, name: b[2].value, description: b[4].value, choice: b[5].value });
  1054. }
  1055. N.clear();
  1056. a = document.querySelectorAll(".FetishItem");
  1057. for (let d = 0, e = a.length; d < e; d++)
  1058. (b = a[d]), (c = b.children), (b = { _o: !1, _c: !1, _p: !0, id: b.id.substring(10), name: c[0].innerText.trim(), description: c[3].innerText.trim(), choice: b.previousElementSibling.value }), N.fset(b);
  1059. Yb();
  1060. }
  1061. function z(a, b) {
  1062. return { data: b, event: a };
  1063. }
  1064. function $b(a, b) {
  1065. (a = a.opClick) && (a.event ? a.event(a.data, b) : a(b));
  1066. return !1;
  1067. }
  1068. function E(a) {
  1069. let b = a.isDisabled;
  1070. return r(1, "a", wa([a.clazz || "x-btn", "x-dis", b]), a.children, 0, { onClick: !b && z($b, a) });
  1071. }
  1072. function ac(a) {
  1073. return a && a._p;
  1074. }
  1075. function ub() {
  1076. var a = C.a.filter(ac).sort(xa),
  1077. b = O && O.length === a.length;
  1078. if (b)
  1079. for (let c = 0, d = O.length; c < d; c++)
  1080. if (a[c].id !== O[c].id) {
  1081. b = !1;
  1082. break;
  1083. }
  1084. if (b) return U;
  1085. O = a;
  1086. a = Array(O.length + 1);
  1087. a[0] = r(1, "option", "opt-kink", "None", 16, { value: "X" }, "X");
  1088. for (let c = 0, d = O.length; c < d; c++) (b = O[c]), (a[c + 1] = r(1, "option", "opt-kink " + b.choice, b.name, 16, { value: b.id }, b.id));
  1089. return a;
  1090. }
  1091. function vb() {
  1092. U = ub();
  1093. let a = A.b;
  1094. for (let b = 0, c = ia.length; b < c; b++) {
  1095. let c = ia[b],
  1096. e = a[c.props.kink.id];
  1097. c.children.setState({ sel: e ? e.id : "X", opts: U });
  1098. }
  1099. }
  1100. function bc(a, b) {
  1101. b = b.target.value;
  1102. if ("X" === b) {
  1103. var c = a.props.kink.id;
  1104. T = !0;
  1105. A.remV(c);
  1106. } else if ((c = C.b[b])) {
  1107. var d = a.props.kink;
  1108. d.choice = c.choice;
  1109. nb(d);
  1110. T = !0;
  1111. A.add(c, d);
  1112. }
  1113. Na();
  1114. a.setState({ sel: b });
  1115. }
  1116. function cc(a) {
  1117. var b = a.props.kink.id;
  1118. T = !0;
  1119. A.remV(b);
  1120. Na();
  1121. a.setState({ sel: "X" });
  1122. }
  1123. function wb(a) {
  1124. return r(
  1125. 1,
  1126. "div",
  1127. "Dialog",
  1128. r(
  1129. 1,
  1130. "div",
  1131. wa(["bp", "bp-s" + (a.size || 0)]),
  1132. [
  1133. r(1, "div", "bp-h", [r(1, "h3", "bp-hh", a.title, 16), r(1, "img", "bp-hi", null, 1, { onClick: a.opClose, src: "https://static.f-list.net/images/icons/cross-circle-frame.png", alt: "Close Preview" })], 4),
  1134. r(1, "div", "bp-c", a.children, 0),
  1135. ],
  1136. 4
  1137. ),
  1138. 2
  1139. );
  1140. }
  1141. function dc(a) {
  1142. (a = X(a)) && a.removeAttribute("draggable");
  1143. }
  1144. function ec(a) {
  1145. let b = X(a);
  1146. if (b) return a.preventDefault(), k.initEditDialog(b._k.state.kink), !1;
  1147. }
  1148. function fc(a) {
  1149. xb();
  1150. let b = k.Sels;
  1151. if (!(1 > b.length)) {
  1152. var c = b[0]._c;
  1153. a: {
  1154. var d = !c;
  1155. for (a = a.target; a && a !== ja; ) {
  1156. let b = a.className;
  1157. var e = d && a._k;
  1158. e = d && e && e.state.kink;
  1159. if (d && e && e._c) {
  1160. d = { k: e };
  1161. break a;
  1162. } else if ("box" === b) {
  1163. d = { c: a.firstElementChild.textContent.toLowerCase() };
  1164. break a;
  1165. }
  1166. a = a.parentElement;
  1167. }
  1168. d = null;
  1169. }
  1170. if (d) {
  1171. if (d.c)
  1172. for (let e = 0, g = b.length; e < g; e++)
  1173. if (((a = b[e]), (a.choice = d.c), c)) {
  1174. if ((a = A.a[a.id])) for (let b = 0, c = a.length; b < c; b++) a[b].choice = d.c;
  1175. } else (a = a.id), (T = !0), A.remV(a);
  1176. else if (((d = d.k), d._p)) {
  1177. for (let e = 0, g = b.length; e < g; e++) (a = b[e]), (a.choice = d.choice), (c = d), (T = !0), A.add(c, a);
  1178. d._o = !0;
  1179. }
  1180. k.UpdateUi();
  1181. }
  1182. }
  1183. }
  1184. function gc(a) {
  1185. let b = a.target;
  1186. for (; b; ) {
  1187. let c = b.className;
  1188. if ("box" === c || "kinks" === c || "subkinks" === c) {
  1189. a.preventDefault();
  1190. break;
  1191. }
  1192. b = b.parentElement;
  1193. }
  1194. }
  1195. function xb() {
  1196. ja.classList.remove("drag");
  1197. }
  1198. function hc(a) {
  1199. ja.classList.add("drag");
  1200. k.ToolTip.clearTip();
  1201. let b = X(a)._k.state.kink;
  1202. 0 > k.Sels.indexOf(b) && yb(a, !0);
  1203. }
  1204. function ic(a) {
  1205. if ((a = X(a))) a.draggable = !0;
  1206. }
  1207. function jc(a) {
  1208. if ((a = X(a))) {
  1209. let b = a._k.state.kink;
  1210. k.ToolTip.showTip(b.id, b.name, b.description, a, 18);
  1211. } else k.ToolTip.clearTip();
  1212. }
  1213. function kc() {
  1214. k.ToolTip.clearTip();
  1215. }
  1216. function yb(a, b) {
  1217. var c = X(a);
  1218. if (c) {
  1219. var d = c._k;
  1220. c = d.state.kink;
  1221. var e = A,
  1222. f = e.a[c.id],
  1223. g = f && 0 < f.length;
  1224. f = e.b[c.id];
  1225. if (!b && a.offsetX <= (f ? 46 : 32)) g && 16 >= a.offsetX ? ((c._o = !c._o), d.forceUpdate()) : k.initEditDialog(c);
  1226. else {
  1227. (b = k.Sels[0]) && b._c !== c._c && ((k.Sels = []), (V = c));
  1228. if (!a.shiftKey || null === V || (V._c && !C.b[V.id])) V = c;
  1229. if (a.shiftKey && 0 < k.Sels.length) {
  1230. if (c.choice === V.choice) {
  1231. k.Sels = [];
  1232. a = f ? e.a[f.id] : c._c ? C.a : N.a;
  1233. c = a.indexOf(c);
  1234. b = a.indexOf(V);
  1235. for (let d = c < b ? c : b, e = c < b ? b : c; d <= e; d++) k.Sels.push(a[d]);
  1236. }
  1237. } else a.ctrlKey ? ((a = k.Sels.indexOf(c)), 0 <= a ? k.Sels.splice(a, 1) : k.Sels.push(c)) : (k.Sels = [c]);
  1238. k.UpdateUi();
  1239. }
  1240. }
  1241. }
  1242. function X(a) {
  1243. for (a = a.target; a && a !== ja; ) {
  1244. if (a._k) return a;
  1245. a = a.parentElement;
  1246. }
  1247. }
  1248. function lc(a) {
  1249. if (a && !a._i) {
  1250. var b = "ontouchstart" in window;
  1251. a._i = !0;
  1252. ja = a;
  1253. k.Sels = [];
  1254. H(a, "mouseover", jc);
  1255. H(a, "mouseleave", kc);
  1256. H(a, "click", yb);
  1257. H(a, "contextmenu", ec);
  1258. H(a, b ? "touchend" : "mouseup", dc);
  1259. H(a, b ? "touchstart" : "mousedown", ic);
  1260. H(a, "dragover", gc);
  1261. H(a, "dragstart", hc);
  1262. H(a, "dragend", xb);
  1263. H(a, "drop", fc);
  1264. }
  1265. }
  1266. function Oa(a, b) {
  1267. let c = a.props;
  1268. var d = c.state;
  1269. let e = b.target.value,
  1270. f = c.prop.split("."),
  1271. g = f.length - 1;
  1272. for (let a = 0; a < g; a++) d = d[f[a]];
  1273. d[f[g]] = 1 === c.ilk ? parseFloat(e) : e;
  1274. a.forceUpdate();
  1275. c.opChange && (a = c.opChange) && (a.event ? a.event(a.data, b) : a(b));
  1276. }
  1277. function Pa(a) {
  1278. let b = a.prop.split("."),
  1279. c = b.length;
  1280. a = a.state;
  1281. for (let d = 0; d < c; d++) a = a ? a[b[d]] : null;
  1282. return a;
  1283. }
  1284. function Qa(a) {
  1285. let b = {};
  1286. for (let c in a) mc[c] || (b[c] = a[c]);
  1287. return b;
  1288. }
  1289. function zb(a) {
  1290. a.clear();
  1291. }
  1292. function nc(a) {
  1293. let b = a.state,
  1294. c = b.kink;
  1295. b.oldKink ? Object.assign(b.oldKink, c) : ((c.id = "_" + oc++), C.fset(c));
  1296. k.UpdateUi();
  1297. a.clear();
  1298. }
  1299. function pc(a) {
  1300. let b = a.state.oldKink;
  1301. b && (pb(b), k.UpdateUi());
  1302. a.clear();
  1303. }
  1304. function qc(a) {
  1305. if (!a) return ["", 3];
  1306. let b = a.indexOf("\u3010"),
  1307. c;
  1308. if (0 <= b && ((c = a.indexOf("\u3011", b)), 0 <= c)) return [a.substring(b + 1, c), 0];
  1309. b = a.indexOf("\u2502");
  1310. if (0 <= b) return [a.substring(b + 1), 1];
  1311. b = a.indexOf("\u3014", b);
  1312. return 0 <= b
  1313. ? ((c = a.indexOf("\u3015", b)), [a.substring(b + 1, c), 2])
  1314. : a.endsWith("\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518")
  1315. ? ["", 2]
  1316. : a.charCodeAt(1) === Y[0]
  1317. ? [a.substring(2), 3]
  1318. : 0 <= Y.indexOf(a.charCodeAt(0))
  1319. ? [a.substring(1), 3]
  1320. : [a, 3];
  1321. }
  1322. function ya(a, b) {
  1323. let c = k.Sels;
  1324. if (c && !(1 > c.length) && c[0]._c) {
  1325. var d = 0 > b ? "" : String.fromCharCode(b);
  1326. b = 0 > b ? "" : String.fromCharCode(Y[0]);
  1327. for (let e = 0, f = c.length; e < f; e++) {
  1328. let f = c[e],
  1329. h = qc(f.name),
  1330. k = h[0];
  1331. switch (3 > a ? a : h[1]) {
  1332. case 0:
  1333. f.name = d + b + "\u250c\u3010" + k + "\u3011\u2510";
  1334. break;
  1335. case 1:
  1336. f.name = d + "\u2502" + k;
  1337. break;
  1338. case 2:
  1339. f.name = d + (k ? "\u2514\u3014" + k + "\u3015\u2518" : "\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518");
  1340. break;
  1341. case 3:
  1342. f.name = d + k;
  1343. }
  1344. }
  1345. k.UpdateUi();
  1346. }
  1347. }
  1348. function rc(a) {
  1349. ya(0, a.state.num);
  1350. }
  1351. function sc(a) {
  1352. ya(1, a.state.num);
  1353. }
  1354. function tc(a) {
  1355. ya(2, a.state.num);
  1356. }
  1357. function uc(a) {
  1358. ya(3, a.state.num);
  1359. }
  1360. function Ab(a) {
  1361. let b = C.a;
  1362. for (let c = 0, d = b.length; c < d; c++) b[c]._o = a;
  1363. k.UpdateUi();
  1364. }
  1365. function vc() {
  1366. Ab(!1);
  1367. }
  1368. function wc() {
  1369. Ab(!0);
  1370. }
  1371. function xc() {
  1372. k.initEditDialog(null, !0);
  1373. }
  1374. function yc() {
  1375. {
  1376. let a = k.Sels,
  1377. b = a[0];
  1378. if (b && b._c) {
  1379. for (let b = 0, d = a.length; b < d; b++) ob(a[b]);
  1380. a.length = 0;
  1381. }
  1382. }
  1383. k.UpdateUi();
  1384. }
  1385. function zc() {
  1386. var a = C.b,
  1387. b = C.a;
  1388. for (let e = 0, f = b.length; e < f; e++) {
  1389. var c = b[e],
  1390. d = void 0;
  1391. d = c.id;
  1392. "_" === d[0]
  1393. ? (document.getElementById("customs-button-add").onclick(), (d = document.getElementById("CustomKinksList").lastElementChild.children), (a["N" + d[6].value] = c))
  1394. : (d = document.getElementById("kinkName" + ("N" === d[0] ? d.substring(1) : d)).parentElement.children);
  1395. d[2].value = c.name;
  1396. d[4].value = c.description;
  1397. d[5].value = c.choice;
  1398. }
  1399. b = document.querySelectorAll(".CustomKink");
  1400. for (let e = 0, f = b.length - 1; e < f; e++) {
  1401. c = b[e];
  1402. d = c.children[6].value;
  1403. let f = 500 < parseInt(d);
  1404. if (!a[f ? d : "N" + d]) c.children[0].onclick();
  1405. }
  1406. a = N.a;
  1407. for (let b = 0, c = a.length; b < c; b++) nb(a[b]);
  1408. Na();
  1409. k.togMainDialog(!1);
  1410. vb();
  1411. }
  1412. function Ac(a) {
  1413. rb();
  1414. a.setState({ show: !0 });
  1415. }
  1416. function Bc(a) {
  1417. a.setState({ show: !1 });
  1418. }
  1419. var ca = Array.isArray,
  1420. x = {};
  1421. var ha = !1;
  1422. var W = { componentComparator: null, createVNode: null, renderComplete: null },
  1423. gb = {
  1424. "xlink:actuate": "http://www.w3.org/1999/xlink",
  1425. "xlink:arcrole": "http://www.w3.org/1999/xlink",
  1426. "xlink:href": "http://www.w3.org/1999/xlink",
  1427. "xlink:role": "http://www.w3.org/1999/xlink",
  1428. "xlink:show": "http://www.w3.org/1999/xlink",
  1429. "xlink:title": "http://www.w3.org/1999/xlink",
  1430. "xlink:type": "http://www.w3.org/1999/xlink",
  1431. "xml:base": "http://www.w3.org/XML/1998/namespace",
  1432. "xml:lang": "http://www.w3.org/XML/1998/namespace",
  1433. "xml:space": "http://www.w3.org/XML/1998/namespace",
  1434. },
  1435. Za = pa(0),
  1436. Da = pa(null),
  1437. fb = pa(!0),
  1438. Ob = da("onInput", qa),
  1439. Nb = da(["onClick", "onChange"], qa);
  1440. db.wrapped = !0;
  1441. var Pb = da("onChange", Fa),
  1442. Qb = da("onInput", Ga),
  1443. Rb = da("onChange"),
  1444. K,
  1445. ua,
  1446. jb = 0;
  1447. "undefined" !== typeof document && window.Node && ((Node.prototype.$EV = null), (Node.prototype.$V = null));
  1448. var va = [],
  1449. Vb =
  1450. "undefined" !== typeof Promise
  1451. ? Promise.resolve().then.bind(Promise.resolve())
  1452. : function (a) {
  1453. window.setTimeout(a, 0);
  1454. },
  1455. Ja = !1,
  1456. y = function (a, b) {
  1457. this.state = null;
  1458. this.$BR = !1;
  1459. this.$BS = !0;
  1460. this.$LI = this.$PS = null;
  1461. this.$UN = !1;
  1462. this.$QU = this.$CX = null;
  1463. this.$N = !1;
  1464. this.$L = null;
  1465. this.$SVG = !1;
  1466. this.props = a || x;
  1467. this.context = b || x;
  1468. };
  1469. y.prototype.forceUpdate = function (a) {
  1470. this.$UN || lb(this, {}, a, !0);
  1471. };
  1472. y.prototype.setState = function (a, b) {
  1473. this.$UN || this.$BS || lb(this, a, b, !1);
  1474. };
  1475. y.prototype.render = function (a, b, c) {
  1476. return null;
  1477. };
  1478. let k = {
  1479. Sels: [],
  1480. UpdateUi: function () {
  1481. for (let a in k.Updates) k.Updates[a].forceUpdate();
  1482. },
  1483. Updates: {},
  1484. },
  1485. Ma = { fave: 0, yes: 1, maybe: 2, no: 3, undecided: 4 };
  1486. class tb {
  1487. static inject() {
  1488. document.getElementsByName("image_file")[0].multiple = !0;
  1489. let a = document.getElementById("addimagebutton");
  1490. a.onclick = this.uploadBatchImages;
  1491. a.value = "Add All Images";
  1492. }
  1493. static uploadBatchImages() {
  1494. let a = document.getElementsByName("image_file")[0].files;
  1495. for (var b = 0; b < a.length; b++) {
  1496. let c = a[b];
  1497. setTimeout(function () {
  1498. tb.originalUploadImage(c);
  1499. }, 1e3 * b);
  1500. }
  1501. }
  1502. static originalUploadImage(a) {
  1503. let b = window;
  1504. b.imageUploading = !0;
  1505. b.$("#addimagebutton").prop("value", "Uploading Image...");
  1506. b.$("#addimagebutton").prop("disabled", !0);
  1507. var c = new FormData();
  1508. c.append("csrf_token", b.FList.csrf_token());
  1509. c.append("character_id", b.editCharacterId);
  1510. c.append("image_file", a);
  1511. b.$.ajax({
  1512. type: "POST",
  1513. url: b.domain + "json/image-add.json",
  1514. data: c,
  1515. dataType: "json",
  1516. processData: !1,
  1517. contentType: !1,
  1518. timeout: 12e4,
  1519. success: function (a) {
  1520. b.imageUploading = !1;
  1521. b.$("#addimagebutton").prop("disabled", !1);
  1522. b.$("#addimagebutton").prop("value", "Add All Images");
  1523. "" == a.error ? (b.FList.Common_displayNotice("Image added successfully."), b.loadImages(b.editCharacterId)) : b.FList.Common_displayError("Error while uploading image: " + a.error);
  1524. },
  1525. error: function (a, c, f) {
  1526. b.imageUploading = !1;
  1527. b.$("#addimagebutton").prop("disabled", !1);
  1528. b.$("#addimagebutton").prop("value", "Add Image");
  1529. b.FList.Common_displayError("Error while uploading image: " + c + ", " + f);
  1530. },
  1531. });
  1532. return !1;
  1533. }
  1534. }
  1535. let R = new Map();
  1536. class Bb {
  1537. constructor() {
  1538. this.b = {};
  1539. this.a = [];
  1540. }
  1541. set(a, b) {
  1542. let c = this.a,
  1543. d = a.id,
  1544. e = La(c, d);
  1545. this.b[d] = a;
  1546. 0 <= e ? (c[e] = a) : b ? c.unshift(a) : c.push(a);
  1547. }
  1548. fset(a) {
  1549. this.b[a.id] = a;
  1550. this.a.push(a);
  1551. }
  1552. rem(a) {
  1553. let b = this.a;
  1554. a = a.id;
  1555. let c = La(b, a);
  1556. delete this.b[a];
  1557. 0 <= c && b.splice(c, 1);
  1558. }
  1559. clear() {
  1560. this.a.length = 0;
  1561. this.b = {};
  1562. }
  1563. }
  1564. class Cc {
  1565. constructor() {
  1566. this.a = {};
  1567. this.b = {};
  1568. }
  1569. set(a, b) {
  1570. let c = this.b,
  1571. d = a.id;
  1572. this.remK(d);
  1573. this.a[d] = b;
  1574. for (let d = 0, f = b.length; d < f; d++) c[b[d].id] = a;
  1575. }
  1576. add(a, b) {
  1577. let c = this.b,
  1578. d = a.id;
  1579. this.remV(b.id);
  1580. let e = this.a[d];
  1581. e ? e.push(b) : (this.a[d] = [b]);
  1582. c[b.id] = a;
  1583. }
  1584. remV(a) {
  1585. let b = this.b;
  1586. var c = b[a];
  1587. if (c && (c = this.a[c.id])) {
  1588. let b = La(c, a);
  1589. 0 <= b && c.splice(b, 1);
  1590. }
  1591. delete b[a];
  1592. }
  1593. remK(a) {
  1594. let b = this.a[a];
  1595. if (b) {
  1596. let c = this.b;
  1597. for (let a = 0, e = b.length; a < e; a++) delete c[b[a].id];
  1598. delete this.a[a];
  1599. }
  1600. }
  1601. clear() {
  1602. this.a = {};
  1603. this.b = {};
  1604. }
  1605. }
  1606. let C = new Bb(),
  1607. N = new Bb(),
  1608. A = new Cc(),
  1609. S,
  1610. qb = window.FList,
  1611. sb = !1,
  1612. T = !1,
  1613. O,
  1614. U,
  1615. ia,
  1616. Cb = window.FList,
  1617. Dc = Cb.Subfetish.Data.removeCustom;
  1618. Cb.Subfetish.Data.removeCustom = function (a) {
  1619. let b = 500 < parseInt(a) ? a : "N" + a;
  1620. pb(C.b[b]);
  1621. vb();
  1622. Dc(a);
  1623. };
  1624. class Ec extends y {
  1625. constructor(...a) {
  1626. super(...a);
  1627. this.state = {};
  1628. }
  1629. render(a, b) {
  1630. a = b.sel;
  1631. return r(
  1632. 1,
  1633. "div",
  1634. "sel-kink-div",
  1635. [r(256, "select", wa(["sel-kink", "none", "X" === a]), b.opts, 0, { value: a, onChange: z(bc, this) }), l(2, E, { clazz: "sel-kink-x x-btn btn-l", isDisabled: "X" === a, opClick: z(cc, this), children: "\u00d7" })],
  1636. 4
  1637. );
  1638. }
  1639. shouldComponentUpdate(a, b) {
  1640. a = this.state;
  1641. return a.sel !== b.sel || a.opts !== b.opts;
  1642. }
  1643. static getDerivedStateFromProps(a, b) {
  1644. let c;
  1645. b.sel || (c = { sel: a.sel });
  1646. b.opts || (c ? (c.opts = U) : (c = { opts: U }));
  1647. return c;
  1648. }
  1649. }
  1650. class Fc extends y {
  1651. constructor(...a) {
  1652. super(...a);
  1653. this.state = {};
  1654. this.ref = { current: null };
  1655. }
  1656. render(a, b) {
  1657. a = b.kink;
  1658. let c = b.subs && 0 < b.subs.length,
  1659. d = a._o;
  1660. return r(1, "li", wa([a.choice, "kink", "multi", c, "open", c && d, "closed", c && !d, "sel", b.sel, "custom", a._c, "reg", !a._c, "new", !a._p]), [a.name, l(2, Db, { kinks: b.subs })], 0, null, null, this.ref);
  1661. }
  1662. componentDidMount() {
  1663. this.ref.current._k = this;
  1664. }
  1665. componentDidUpdate() {
  1666. this.ref.current._k = this;
  1667. }
  1668. static getDerivedStateFromProps(a, b) {
  1669. var c = null;
  1670. for (var d in a) {
  1671. let e = a[d];
  1672. Ka(e, b[d]) || (c || (c = {}), (c[d] = e));
  1673. }
  1674. d = a.kink || b.kink;
  1675. (a.kink && b.kink && a.kink.id === b.kink.id) || (c.subs = d._c ? A.a[d.id] : null);
  1676. a = 0 <= k.Sels.indexOf(d);
  1677. a !== b.sel && (c || (c = {}), (c.sel = a));
  1678. return c;
  1679. }
  1680. }
  1681. class Db extends y {
  1682. render(a) {
  1683. let b = a.kinks;
  1684. return b
  1685. ? r(
  1686. 1,
  1687. "ul",
  1688. a.clazz || "subkinks",
  1689. b.map((a) => l(2, Fc, { kink: a }, a.id)),
  1690. 8
  1691. )
  1692. : null;
  1693. }
  1694. }
  1695. class ka extends y {
  1696. render(a, b) {
  1697. a = a.name;
  1698. a = a[0].toUpperCase() + a.substring(1);
  1699. return r(1, "div", "box", [r(1, "div", null, a, 16), l(2, Db, { clazz: "kinks", kinks: b.kinks })], 4);
  1700. }
  1701. static getDerivedStateFromProps(a, b) {
  1702. b = [];
  1703. var c = C.a;
  1704. a = a.name;
  1705. for (let e = 0, f = c.length; e < f; e++) {
  1706. var d = c[e];
  1707. d.choice === a && b.push(d);
  1708. }
  1709. c = N.a;
  1710. d = A.b;
  1711. for (let e = 0, f = c.length; e < f; e++) {
  1712. let f = c[e];
  1713. d[f.id] || (f.choice === a && b.push(f));
  1714. }
  1715. return { kinks: b };
  1716. }
  1717. }
  1718. let ja,
  1719. V = null,
  1720. mc = { prop: !0, state: !0, opChange: !0, children: !0 };
  1721. class Gc extends y {
  1722. render(a) {
  1723. let b = Qa(a);
  1724. return Ba(r(64, "input", null, null, 1, { ...b, value: Pa(a), onInput: z(Oa, this) }));
  1725. }
  1726. }
  1727. class Hc extends y {
  1728. render(a) {
  1729. let b = Qa(a);
  1730. return Ba(r(128, "textarea", null, null, 1, { ...b, value: Pa(a), onInput: z(Oa, this) }));
  1731. }
  1732. }
  1733. class Eb extends y {
  1734. render(a) {
  1735. let b = Qa(a);
  1736. return Ba(r(256, "select", null, a.children, 0, { ...b, value: Pa(a), onChange: z(Oa, this) }));
  1737. }
  1738. }
  1739. let oc = 0;
  1740. class Ic extends y {
  1741. constructor(...a) {
  1742. super(...a);
  1743. this.state = {};
  1744. }
  1745. componentDidMount() {
  1746. k.initEditDialog = (a, b) => {
  1747. b ? this.setState({ kink: { _o: !1, _p: !1, _c: !0, id: "", name: "", description: "", choice: "fave" }, oldKink: null }) : a ? ((b = Object.assign({}, a)), this.setState({ kink: b, oldKink: a })) : this.clear();
  1748. };
  1749. }
  1750. clear() {
  1751. this.setState({ kink: null, oldKink: null });
  1752. }
  1753. render(a, b) {
  1754. var c = b.kink;
  1755. c = (a = !!c) && !c._c;
  1756. return (
  1757. a &&
  1758. l(2, wb, {
  1759. size: 1,
  1760. title: c ? "Info" : b.oldKink ? "Edit" : "Create",
  1761. opClose: z(zb, this),
  1762. children: [
  1763. r(
  1764. 1,
  1765. "div",
  1766. "kinkBtns edt-btns",
  1767. [
  1768. l(2, E, { opClick: z(zb, this), children: "Cancel" }),
  1769. l(2, E, { isDisabled: c, clazz: "x-btn red", opClick: z(pc, this), children: "\u00d7 Remove" }),
  1770. l(2, E, { opClick: z(nc, this), children: "\u2399 Apply" }),
  1771. ],
  1772. 4
  1773. ),
  1774. r(1, "label", "edt-lbl", "Name", 16),
  1775. l(2, Gc, { disabled: c, class: "edt-inp", type: "text", maxLength: 30, prop: "kink.name", state: b }),
  1776. r(1, "label", "edt-lbl", "Choice", 16),
  1777. l(2, Eb, {
  1778. class: "edt-sel",
  1779. prop: "kink.choice",
  1780. state: b,
  1781. children: [
  1782. r(1, "option", null, "Favorite", 16, { value: "fave" }),
  1783. r(1, "option", null, "Yes", 16, { value: "yes" }),
  1784. r(1, "option", null, "Maybe", 16, { value: "maybe" }),
  1785. r(1, "option", null, "No", 16, { value: "no" }),
  1786. r(1, "option", null, "Undecided", 16, { value: "undecided" }),
  1787. ],
  1788. }),
  1789. r(1, "label", "edt-lbl", "Description", 16),
  1790. l(2, Hc, { disabled: c, class: "edt-txt", maxLength: 1024, prop: "kink.description", state: b }),
  1791. ],
  1792. })
  1793. );
  1794. }
  1795. }
  1796. let Y = [173, 847, 1564, 6068, 6069, 6155, 6156, 6157, 6158, 8203, 8204, 8205, 8206, 8207, 8234, 8236, 8237, 8288, 8289, 8290, 8291, 8292, 8293, 8294, 8296, 8297, 8298, 8299, 8300, 8301, 8302, 8303];
  1797. class Jc extends y {
  1798. constructor(...a) {
  1799. super(...a);
  1800. this.state = { num: -1 };
  1801. }
  1802. componentDidMount() {
  1803. k.Updates.HB = this;
  1804. }
  1805. render(a, b) {
  1806. a = (a = k.Sels[k.Sels.length - 1]) ? Y.indexOf(a.name.charCodeAt(0)) : -1;
  1807. b.num = 0 <= a ? Y[a] : -1;
  1808. return oa(
  1809. [
  1810. l(2, E, { clazz: "x-btn btn-f", opClick: z(rc, this), children: "\u25ce Header" }),
  1811. l(2, E, { clazz: "x-btn btn-n", opClick: z(sc, this), children: "\u25ce Content" }),
  1812. l(2, E, { clazz: "x-btn btn-n", opClick: z(tc, this), children: "\u25ce Footer" }),
  1813. l(2, Eb, { class: "x-sel", prop: "num", state: b, ilk: 1, opChange: z(uc, this), children: [r(1, "option", null, "X", 16, { value: -1 }, -1), Y.map((a, b) => r(1, "option", null, b + ": " + a, 16, { value: a }, a))] }),
  1814. ],
  1815. 4
  1816. );
  1817. }
  1818. }
  1819. class Kc extends y {
  1820. render() {
  1821. return r(
  1822. 1,
  1823. "div",
  1824. "kinkBtns",
  1825. [
  1826. l(2, E, { clazz: "x-btn btn-f btn-sm", opClick: z(vc), children: "\u2296" }),
  1827. l(2, E, { clazz: "x-btn btn-l btn-sm", opClick: z(wc), children: "\u2295" }),
  1828. l(2, Jc),
  1829. l(2, E, { clazz: "x-btn btn-f green", opClick: z(xc), children: "\uff0b Custom Kink" }),
  1830. l(2, E, { clazz: "x-btn btn-l red", opClick: z(yc), children: "\u00d7 Custom Kink" }),
  1831. l(2, E, { opClick: z(zc), children: "Apply Changes To Page" }),
  1832. ],
  1833. 4
  1834. );
  1835. }
  1836. }
  1837. class Lc extends y {
  1838. componentDidMount() {
  1839. k.Updates.MB = this;
  1840. }
  1841. render() {
  1842. {
  1843. C.a.sort(xa);
  1844. N.a.sort(xa);
  1845. let a = C.a,
  1846. b = A.a;
  1847. for (let c = 0, d = a.length; c < d; c++) {
  1848. let d = b[a[c].id];
  1849. d && d.sort(xa);
  1850. }
  1851. }
  1852. return r(1, "div", "boxes", [l(2, ka, { name: "fave" }), l(2, ka, { name: "yes" }), l(2, ka, { name: "maybe" }), l(2, ka, { name: "no" }), l(2, ka, { name: "undecided" })], 4, null, null, lc);
  1853. }
  1854. }
  1855. class Mc extends y {
  1856. constructor(...a) {
  1857. super(...a);
  1858. this.state = {};
  1859. this.div = { current: null };
  1860. }
  1861. componentDidMount() {
  1862. k.ToolTip = this;
  1863. }
  1864. componentDidUpdate() {
  1865. var a = this.div.current;
  1866. let b = this.state;
  1867. if (a && b.id) {
  1868. var c = a.style;
  1869. a = Math.round(b.y - a.clientHeight - b.ft - 5);
  1870. 0 > a && (a = Math.round(b.y + b.eh - b.ft + 5));
  1871. c.top = a + "px";
  1872. c.left = Math.round(b.x - b.fl) + "px";
  1873. }
  1874. }
  1875. render(a, b) {
  1876. return r(
  1877. 1,
  1878. "div",
  1879. "x-tt ui-tooltip qtip ui-helper-reset ui-tooltip-shadow ui-tooltip-pos-tc ui-widfget ui-tfooltip-focus",
  1880. [
  1881. r(1, "div", "ui-tooltip-titlebar ui-widget-header", r(1, "div", "ui-tooltip-title", b.title || "", 16, { id: "ui-tooltip-4-title" }), 2),
  1882. r(1, "div", "ui-tooltip-content ui-widget-content", b.body || "", 16, { id: "ui-tooltip-4-content" }),
  1883. ],
  1884. 4,
  1885. { style: b.id ? "" : "display: none" },
  1886. null,
  1887. this.div
  1888. );
  1889. }
  1890. showTip(a, b, c, d, e, f) {
  1891. if (this.state.id !== a) {
  1892. let g = d.getBoundingClientRect();
  1893. this.setState({ id: a, title: b, body: c, x: g.x, y: g.y, eh: e || d.offsetHeight, fl: f ? f.offsetLeft : 0, ft: f ? f.offsetTop : 0 });
  1894. }
  1895. }
  1896. clearTip() {
  1897. this.setState({ id: null });
  1898. }
  1899. }
  1900. class Nc extends y {
  1901. render() {
  1902. return r(1, "div", "kinkInf", [l(2, Kc), l(2, Lc), l(2, Mc), l(2, Ic)], 4);
  1903. }
  1904. }
  1905. class Oc extends y {
  1906. constructor(...a) {
  1907. super(...a);
  1908. this.state = { show: !1 };
  1909. }
  1910. componentDidMount() {
  1911. k.togMainDialog = (a) => this.setState({ show: a });
  1912. }
  1913. componentDidUpdate() {
  1914. document.body.style.overflow = this.state.show ? "hidden" : "";
  1915. }
  1916. render(a, b) {
  1917. return oa([l(2, E, { opClick: z(Ac, this), children: "Show Table" }), b.show && l(2, wb, { title: "Kinks", opClose: z(Bc, this), children: l(2, Nc) })], 0);
  1918. }
  1919. }
  1920. (function (a) {
  1921. let b = document.head,
  1922. c = document.createElement("style");
  1923. c.type = "text/css";
  1924. c.styleSheet ? (c.styleSheet.cssText = a) : ((a = document.createTextNode(a)), c.appendChild(a));
  1925. b.appendChild(c);
  1926. })(
  1927. ".Dialog{width:100%;height:100vh;left:0;top:0;padding:0;margin:0;background:rgba(0,0,0,.5);position:fixed;z-index:100;text-align:center}.bp{text-align:left;border:2px solid #0b345f;color:#ccc;background:-webkit-gradient(linear,left bottom,left top,color-stop(0,#134478),color-stop(1,#2468af));height:96%;margin-top:calc(2% - 10px);width:96%;margin-left:calc(2% - 10px);padding:10px}.bp.bp-s1{height:auto;width:auto;display:inline-block;margin-top:calc(10% - 10px)}.x-tt{opacity:1;display:block;width:280px;z-index:15007}.bp-s0>.bp-c{height:calc(96vh - 37px)}.bp-h{margin-bottom:10px;text-align:right}.bp-hh{margin:0;float:left}.bp-hi{cursor:pointer}.bp-c{overflow:auto;padding:5px}.boxes{outline:0;height:calc(100% - 250px)}.box,.boxes{text-align:center}.box{vertical-align:top;margin:5px;max-width:19%;color:#fff;height:100%}.box,.box>.kinks{display:inline-block}.box>.kinks{cursor:default;padding:6px 4px;border:2px solid #4f94cd;border-radius:4px;text-align:left;vertical-align:middle;max-height:100%;overflow:auto;width:300px;max-width:100%;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#000;overflow-x:hidden}.kink{font-size:13.5px;line-height:15px;margin-top:-1px;white-space:nowrap;cursor:pointer}ul{list-style:none}.subkinks{padding-left:0;cursor:default}.kink:hover{font-weight:700}.fave{background-color:#ccf}.fave:before{content:url(https://static.f-list.net/images/icons/heart.png)}.yes{background-color:#cfc}.yes:before{content:url(https://static.f-list.net/images/icons/heart-half.png)}.maybe{background-color:#ffc}.maybe:before{content:url(https://static.f-list.net/images/icons/heart-empty.png)}.no{background-color:#fcc}.no:before{content:url(https://static.f-list.net/images/icons/minus-circle.png)}.undecided{background-color:#ffdfcc}.undecided:before{content:url(https://static.f-list.net/images/icons/question.png)}.custom{background-image:url(https://static.f-list.net/images/icons/target.png)}.closed,.custom{background-repeat:no-repeat;background-position:0 1px}.closed{background-image:url(https://static.f-list.net/images/icons/plus-white.png)}.open{background-image:url(https://static.f-list.net/images/icons/minus-white.png)}.new,.open{background-repeat:no-repeat;background-position:0 1px}.new{background-image:url(https://static.f-list.net/images/icons/new.png)}.reg{background-image:url(https://static.f-list.net/images/icons/blue-document-tag.png);background-repeat:no-repeat;background-position:0 1px;font-weight:400;color:#000}.subkinks>.kink{padding-left:18px;background-position:18px 0}.kink:before{margin-left:14px}.sel{background-color:rgb(30 144 255);color:#fff}.drag .sel{background-color:rgb(134 192 249)}.closed>ul{display:none}.x-sel{border-radius:0 6px 6px 0;height:27px;width:40px}.x-btn{display:inline-block;padding:.4em 1em;margin:10px 0 0 10px;border:1px solid #04194f;background:#04396f url(https://static.f-list.net/images/jquery/default/ui-bg_highlight-soft_20_04396f_1x100.png) 50% 50% repeat-x;font-weight:400;color:#dde;cursor:pointer;border-radius:6px}.x-btn:focus,.x-btn:hover{border:1px solid #04194f;background:#04396f url(https://static.f-list.net/images/jquery/default/ui-bg_glass_40_04396f_1x400.png) 50% 50% repeat-x}.x-btn:active{border:1px solid #0b244f;background:#bf1213 url(https://static.f-list.net/images/jquery/default/ui-bg_highlight-hard_30_bf1213_1x100.png) 50% 50% repeat-x}.x-btn.red{background:-webkit-linear-gradient(top,#e62012,#9a1710)}.x-btn.red:hover{background:-webkit-linear-gradient(top,#f33729,#cb190f)}.x-btn.green{background:-webkit-linear-gradient(top,#1fe612,#139a10)}.x-btn.green:hover{background:-webkit-linear-gradient(top,#2cf329,#2ecb0f)}.x-btn.x-dis.x-dis{cursor:default;color:#ccc;background:#04396f url(https://static.f-list.net/images/jquery/default/ui-bg_highlight-soft_20_04396f_1x100.png) 50% 50% repeat-x}.btn-sm{padding:.4em .8em}.btn-l,.btn-n{margin:0}.btn-f{border-radius:6px 0 0 6px}.btn-l{border-radius:0 6px 6px 0}.btn-n{border-radius:0}.kinkBtns{text-align:right;margin-bottom:4px;margin-top:-15px}.kinkInf{height:100%}.edt-inp{font-size:13.67px}.edt-inp:disabled,.edt-sel:disabled,.edt-txt:disabled{background-color:#b1c7dd;border-radius:5px}.edt-inp,.edt-sel,.edt-txt{opacity:1;margin-bottom:4px;width:99%;color:#000;border:1px solid rgb(103 136 171)}.edt-sel{width:calc(99% + 6px)}.edt-lbl{color:#fff;font-weight:700;text-decoration:none;display:block;cursor:default}.edt-btn{float:right}.edt-btns{min-width:350px}.Characterdata_FetishChoiceBox{margin-top:-5px;padding:0}.sel-kink-div{position:absolute;right:0;display:block;margin-top:-2px}.sel-kink{border-radius:5px 0 0 5px;margin-left:8px;height:15px;font-size:11.33px!important;border:1px solid #000}.sel-kink-x{display:inline-block;padding:0 3px 2px 1px;vertical-align:top;text-decoration:none!important;height:11px;margin:0 0 0 -1px}.opt-kink{color:#000}.opt-kink:before{content:normal}.sel-kink.none{background:transparent;color:#fff;border:1px solid #07203a}"
  1928. );
  1929. let Fb = document.querySelectorAll("[name='customkinkchoice[]'");
  1930. for (let a = 0, b = Fb.length; a < b; a++) {
  1931. let b = Fb[a];
  1932. if (5 <= b.childElementCount) continue;
  1933. let d = document.createElement("option");
  1934. d.value = "undecided";
  1935. d.textContent = "Undecided";
  1936. b.appendChild(d);
  1937. if (0 === b.selectedIndex && null === b.firstElementChild.getAttribute("selected")) {
  1938. let a = !1;
  1939. for (let c = 0, d = b.options, e = d.length; c < e; c++)
  1940. if (null !== d[c].getAttribute("selected")) {
  1941. a = !0;
  1942. b.selectedIndex = c;
  1943. break;
  1944. }
  1945. a || (b.selectedIndex = 4);
  1946. }
  1947. }
  1948. rb();
  1949. let Gb = new DocumentFragment();
  1950. kb(l(2, Oc), Gb);
  1951. let Pc = Gb.firstElementChild;
  1952. (function (a, b) {
  1953. let c = a.parentElement;
  1954. if (c) return c.insertBefore(b, a);
  1955. })(document.getElementById("CustomKinksList"), Pc);
  1956. (function () {
  1957. U = ub();
  1958. var a = N.a,
  1959. b = A.b,
  1960. c = Array(a.length);
  1961. for (let f = 0, g = a.length; f < g; f++) {
  1962. var d = a[f],
  1963. e = b[d.id];
  1964. c[f] = l(2, Ec, { kink: d, sel: e ? e.id : "X", opts: U }, d.id);
  1965. }
  1966. ia = c;
  1967. a = {};
  1968. for (let c = 0, d = ia.length; c < d; c++) (b = ia[c]), (a[b.props.kink.id] = b);
  1969. b = document.querySelectorAll(".FetishItem");
  1970. for (let f = 0, g = b.length; f < g; f++) if (((c = b[f]), (d = c.id.substring(10)), (d = a[d]))) (e = new DocumentFragment()), kb(d, e), c.children[2].appendChild(e.firstElementChild);
  1971. })();
  1972. })();