From dd491db6a942965c87560a3a3f00de6c34414c5a Mon Sep 17 00:00:00 2001 From: mumuy <> Date: Thu, 28 Nov 2024 22:01:37 +0800 Subject: [PATCH] =?UTF-8?q?updated=20=E6=96=87=E6=A1=88=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/lang/relationship.zh-HK.min.js | 4 ++-- dist/lang/relationship.zh-HK.min.mjs | 4 ++-- dist/relationship.min.js | 4 ++-- dist/relationship.min.mjs | 4 ++-- src/module/data/main.js | 10 +++++----- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/dist/lang/relationship.zh-HK.min.js b/dist/lang/relationship.zh-HK.min.js index ba88b2d..c41528d 100644 --- a/dist/lang/relationship.zh-HK.min.js +++ b/dist/lang/relationship.zh-HK.min.js @@ -8,6 +8,6 @@ * Released under the MIT License * https://github.com/mumuy/relationship * - * Created on: 2024-11-11 + * Created on: 2024-11-28 */ -!function(s,f){"object"==typeof exports&&"undefined"!=typeof module?module.exports=f():"function"==typeof define&&define.amd?define(f):(s="undefined"!=typeof globalThis?globalThis:s||self).relationship=f()}(this,(function(){"use strict";function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,e=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){e=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(e)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","親兄弟","同胞兄弟"],"xb,w":["兄弟媳婦","兄弟婦"],xs:["姐妹","親姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["從祖祖父","從祖父"],"f,f,xb,w":["從祖祖母","從祖母"],"m,f,xb":["外從祖祖父"],"m,f,xb,w":["外從祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","嬸子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var e=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");e.push({selector:x,sex:m})}))}))})),e}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var e=b.value;if((s=s.replace(e.exp,e.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return T(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),e=f.replace(/&[ol]/g,"");for(var h in t){var l=h.split("#");if(l.length>1){var w=X(l[0]),M=X(l[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[h][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[h][0]),(n.includes(r)&&a.includes(e)||n.includes(e)&&a.includes(r))&&m.push(t[h][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};return Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)},Y})); +!function(s,f){"object"==typeof exports&&"undefined"!=typeof module?module.exports=f():"function"==typeof define&&define.amd?define(f):(s="undefined"!=typeof globalThis?globalThis:s||self).relationship=f()}(this,(function(){"use strict";function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,e=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){e=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(e)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","親兄弟","同胞兄弟"],"xb,w":["兄弟媳婦","兄弟婦"],xs:["姐妹","親姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["從祖祖父","從祖父"],"f,f,xb,w":["從祖祖母","從祖母"],"m,f,xb":["外從祖祖父"],"m,f,xb,w":["外從祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","嬸子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var e=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");e.push({selector:x,sex:m})}))}))})),e}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var e=b.value;if((s=s.replace(e.exp,e.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return T(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),e=f.replace(/&[ol]/g,"");for(var h in t){var l=h.split("#");if(l.length>1){var w=X(l[0]),M=X(l[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[h][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[h][0]),(n.includes(r)&&a.includes(e)||n.includes(e)&&a.includes(r))&&m.push(t[h][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};return Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)},Y})); diff --git a/dist/lang/relationship.zh-HK.min.mjs b/dist/lang/relationship.zh-HK.min.mjs index 483ce92..3e6d60a 100644 --- a/dist/lang/relationship.zh-HK.min.mjs +++ b/dist/lang/relationship.zh-HK.min.mjs @@ -8,6 +8,6 @@ * Released under the MIT License * https://github.com/mumuy/relationship * - * Created on: 2024-11-11 + * Created on: 2024-11-28 */ -function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,h=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){h=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(h)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","親兄弟","同胞兄弟"],"xb,w":["兄弟媳婦","兄弟婦"],xs:["姐妹","親姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["從祖祖父","從祖父"],"f,f,xb,w":["從祖祖母","從祖母"],"m,f,xb":["外從祖祖父"],"m,f,xb,w":["外從祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","嬸子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var h=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");h.push({selector:x,sex:m})}))}))})),h}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var h=b.value;if((s=s.replace(h.exp,h.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return C(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),h=f.replace(/&[ol]/g,"");for(var l in t){var e=l.split("#");if(e.length>1){var w=X(e[0]),M=X(e[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[l][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[l][0]),(n.includes(r)&&a.includes(h)||n.includes(h)&&a.includes(r))&&m.push(t[l][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)};export{Y as default}; +function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,h=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){h=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(h)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","親兄弟","同胞兄弟"],"xb,w":["兄弟媳婦","兄弟婦"],xs:["姐妹","親姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["從祖祖父","從祖父"],"f,f,xb,w":["從祖祖母","從祖母"],"m,f,xb":["外從祖祖父"],"m,f,xb,w":["外從祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","嬸子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var h=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");h.push({selector:x,sex:m})}))}))})),h}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var h=b.value;if((s=s.replace(h.exp,h.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return C(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),h=f.replace(/&[ol]/g,"");for(var l in t){var e=l.split("#");if(e.length>1){var w=X(e[0]),M=X(e[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[l][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[l][0]),(n.includes(r)&&a.includes(h)||n.includes(h)&&a.includes(r))&&m.push(t[l][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)};export{Y as default}; diff --git a/dist/relationship.min.js b/dist/relationship.min.js index 840b337..0120ad4 100644 --- a/dist/relationship.min.js +++ b/dist/relationship.min.js @@ -8,6 +8,6 @@ * Released under the MIT License * https://github.com/mumuy/relationship * - * Created on: 2024-11-11 + * Created on: 2024-11-28 */ -!function(s,f){"object"==typeof exports&&"undefined"!=typeof module?module.exports=f():"function"==typeof define&&define.amd?define(f):(s="undefined"!=typeof globalThis?globalThis:s||self).relationship=f()}(this,(function(){"use strict";function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,e=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){e=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(e)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","亲兄弟","同胞兄弟"],"xb,w":["兄弟媳妇","兄弟妇"],xs:["姐妹","亲姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["从祖祖父","从祖父"],"f,f,xb,w":["从祖祖母","从祖母"],"m,f,xb":["外从祖祖父"],"m,f,xb,w":["外从祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","婶子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var e=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");e.push({selector:x,sex:m})}))}))})),e}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var e=b.value;if((s=s.replace(e.exp,e.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return T(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),e=f.replace(/&[ol]/g,"");for(var h in t){var l=h.split("#");if(l.length>1){var w=X(l[0]),M=X(l[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[h][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[h][0]),(n.includes(r)&&a.includes(e)||n.includes(e)&&a.includes(r))&&m.push(t[h][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};return Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)},Y})); +!function(s,f){"object"==typeof exports&&"undefined"!=typeof module?module.exports=f():"function"==typeof define&&define.amd?define(f):(s="undefined"!=typeof globalThis?globalThis:s||self).relationship=f()}(this,(function(){"use strict";function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,e=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){e=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(e)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","亲兄弟","同胞兄弟"],"xb,w":["兄弟媳妇","兄弟妇"],xs:["姐妹","亲姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["从祖祖父","从祖父"],"f,f,xb,w":["从祖祖母","从祖母"],"m,f,xb":["外从祖祖父"],"m,f,xb,w":["外从祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","婶子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var e=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");e.push({selector:x,sex:m})}))}))})),e}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var e=b.value;if((s=s.replace(e.exp,e.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return T(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),e=f.replace(/&[ol]/g,"");for(var h in t){var l=h.split("#");if(l.length>1){var w=X(l[0]),M=X(l[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[h][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[h][0]),(n.includes(r)&&a.includes(e)||n.includes(e)&&a.includes(r))&&m.push(t[h][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};return Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)},Y})); diff --git a/dist/relationship.min.mjs b/dist/relationship.min.mjs index c5ff40c..e150141 100644 --- a/dist/relationship.min.mjs +++ b/dist/relationship.min.mjs @@ -8,6 +8,6 @@ * Released under the MIT License * https://github.com/mumuy/relationship * - * Created on: 2024-11-11 + * Created on: 2024-11-28 */ -function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,h=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){h=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(h)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","亲兄弟","同胞兄弟"],"xb,w":["兄弟媳妇","兄弟妇"],xs:["姐妹","亲姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["从祖祖父","从祖父"],"f,f,xb,w":["从祖祖母","从祖母"],"m,f,xb":["外从祖祖父"],"m,f,xb,w":["外从祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","婶子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var h=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");h.push({selector:x,sex:m})}))}))})),h}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var h=b.value;if((s=s.replace(h.exp,h.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return C(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),h=f.replace(/&[ol]/g,"");for(var l in t){var e=l.split("#");if(e.length>1){var w=X(e[0]),M=X(e[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[l][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[l][0]),(n.includes(r)&&a.includes(h)||n.includes(h)&&a.includes(r))&&m.push(t[l][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)};export{Y as default}; +function s(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,r=!0,h=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return r=s.done,s},e:function(s){h=!0,o=s},f:function(){try{r||null==x.return||x.return()}finally{if(h)throw o}}}}function b(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x1&&void 0!==arguments[1]?arguments[1]:-1,x=s.split(",").map((function(s){var f=s.replace(/&[ol\d]+/,"");return U[f][0]})).join("的");return f>-1&&U[f+","+s]&&(0==f?x="(女性)"+x:1==f&&(x="(男性)"+x)),x}var z={xb:["兄弟","亲兄弟","同胞兄弟"],"xb,w":["兄弟媳妇","兄弟妇"],xs:["姐妹","亲姐妹","同胞姐妹"],"xs,h":["姐妹夫","姊妹婿"],"f,xb":["伯叔父"],"f,xb,w":["伯叔母"],"f,f,xb":["从祖祖父","从祖父"],"f,f,xb,w":["从祖祖母","从祖母"],"m,f,xb":["外从祖祖父"],"m,f,xb,w":["外从祖祖母"],"h,xb":["伯叔"],"h,xb,w":["妯娌","娣姒","娣姒姊妹","婶子"]},B=Object.assign({},N);for(var D in z)B[D]=(B[D]||[]).concat(z[D]);for(var F in w)B[F]=(B[F]||[]).concat(w[F]);var H={},J=function(s){B[s].forEach((function(f){void 0===H[f]&&(H[f]=[]),H[f].push(s)}))};for(var K in B)J(K);function L(s,f){var x="undefined"!=typeof Symbol&&s[Symbol.iterator]||s["@@iterator"];if(!x){if(Array.isArray(s)||(x=function(s,f){if(s){if("string"==typeof s)return P(s,f);var x={}.toString.call(s).slice(8,-1);return"Object"===x&&s.constructor&&(x=s.constructor.name),"Map"===x||"Set"===x?Array.from(s):"Arguments"===x||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x)?P(s,f):void 0}}(s))||f&&s&&"number"==typeof s.length){x&&(s=x);var d=0,m=function(){};return{s:m,n:function(){return d>=s.length?{done:!0}:{done:!1,value:s[d++]}},e:function(s){throw s},f:m}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var b,o=!0,r=!1;return{s:function(){x=x.call(s)},n:function(){var s=x.next();return o=s.done,s},e:function(s){r=!0,b=s},f:function(){try{o||null==x.return||x.return()}finally{if(r)throw b}}}}function P(s,f){(null==f||f>s.length)&&(f=s.length);for(var x=0,d=Array(f);x-1)d=m;else if(b>-1&&-1==m)d=b;else{if(b!=m)return[];d=b}}var o=X(s.from,d),r=X(s.to,d);if(!o.length||!r.length)return[];var h=[];return o.forEach((function(f){r.forEach((function(x){var m=d,b=","+x;if(b.match(/,([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?$/)&&(m=1),b.match(/,([mwd0](&[ol\d]+)?|[olx]s)(&[ol\d]+)?$/)&&(m=0),f&&x){var o=s.optimal;if((f.match(/&\d+/)||x.match(/&\d+/))&&(o=!0),o){var r=function(s){for(var f=s.from,x=s.to,d=s.sex,m=f.split(","),b=x.split(","),o=0;o+w?m[o]=m[o].replace(/^[xol]b|^s/,"lb").replace(/^[xol]s|^d/,"ls"):+t<+w&&(m[o]=m[o].replace(/^[xol]b|^s/,"ob").replace(/^[xol]s|^d/,"os")),f=m.slice(o).join(","),x=b.slice(o+1).join(","),d=b[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;else if(s.optimal){var M,n;if(t=(null===(M=m[o].match(/([xol])[bs]/))||void 0===M?void 0:M[1])||"",w=(null===(n=b[o].match(/([xol])[bs]/))||void 0===n?void 0:n[1])||"","x"==t||"x"==w){f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0;continue}}}break}f=m.slice(o+1).join(","),x=b.slice(o+1).join(","),d=m[o].match(/^([fhs1](&[ol\d]+)?|[olx]b)(&[ol\d]+)?/)?1:0}return{from:f,to:x,sex:d}}({from:f,to:x,sex:d,optimal:s.optimal});f=r.from,x=r.to,d=r.sex}}(x?I(x,d):[""]).forEach((function(s){var x=(s?","+s:"")+(f?","+f:"");h.push({selector:x,sex:m})}))}))})),h}function V(s){var f=[],x={},d=function(s){var m="";if(!x[s]){x[s]=!0;do{m=s;var b,r=L(o);try{for(r.s();!(b=r.n()).done;){var h=b.value;if((s=s.replace(h.exp,h.str)).includes("#"))return s.split("#").forEach(d),!1}}catch(s){r.e(s)}finally{r.f()}}while(m!=s);if(s.match(/,[mwd0](&[ol\d+])?,w|,[hfs1](&[ol\d]+)?,h/))return!1;f.push(s)}};return d(s),f}function X(s,f){if(s.match(/^,/)||(s=","+s),f<0)s.match(/^,[w1]/)?f=1:s.match(/^,[h0]/)&&(f=0);else{if(1==f&&s.match(/^,[h0]/))return[];if(0==f&&s.match(/^,[w1]/))return[]}if(f>-1&&!s.includes(",1")&&!s.includes(",0")&&(s=","+f+s),s.match(/,[mwd0](&[ol\d]+)?,w|,[hfs1](&[ol\d]+)?,h/))return[];var x=V(s).map((function(s){return s.replace(/,[01]/,"").substr(1)}));return C(x)}var Y=function(s){"string"==typeof s&&(s=function(s){var f,x=m(d);try{for(x.s();!(f=x.n()).done;){var b=f.value,o=s.match(b.exp);if(o)return b.opt(o)}}catch(s){x.e(s)}finally{x.f()}return{}}(s));var f=Object.assign({text:"",target:"",sex:-1,type:"default",reverse:!1,mode:"default",optimal:!1},s);!function(s){if(N=Object.assign({},A),s&&O[s])for(var f in O[s])N[f]=[].concat(O[s][f],A[f]||[])}(f.mode);var b=Q(f.text),o=Q(f.target);o.length||(o=[""]);var r=[];return b.forEach((function(s){o.forEach((function(x){R({from:s,to:x,sex:f.sex,optimal:f.optimal}).forEach((function(s){(s?X(s.selector,s.sex):[]).forEach((function(x){var d=[x],m=s.sex;f.reverse&&(d=I(x,m),m=x.match(/([fhs1](&[ol\d]+)?|[olx]b)$/)?1:0),"chain"==f.type?d.forEach((function(f){var x=q(f,s.sex);x&&r.push(x)})):"pair"==f.type?(d=I(x,s.sex)).forEach((function(s){var f=function(s,f){var x=[],d=[],m=[];s=s.replace(/&\d+/g,""),f=f.replace(/&\d+/g,"");var b=s.replace(/([ol])([bs])/g,"x$2"),o=f.replace(/([ol])([bs])/g,"x$2"),r=s.replace(/&[ol]/g,""),h=f.replace(/&[ol]/g,"");for(var l in t){var e=l.split("#");if(e.length>1){var w=X(e[0]),M=X(e[1]),n=w.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")})),a=M.map((function(s){return s.replace(/&[ol\d]+/,"").replace(/([ol])([bs])/,"x$2")}));(w.includes(s)&&M.includes(f)||w.includes(f)&&M.includes(s))&&x.push(t[l][0]),(n.includes(b)&&a.includes(o)||n.includes(o)&&a.includes(b))&&d.push(t[l][0]),(n.includes(r)&&a.includes(h)||n.includes(h)&&a.includes(r))&&m.push(t[l][0])}}return x.length||(x=d),x.length||(x=m),x}(x,s);r=r.concat(f)})):d.forEach((function(s){var f=k(s);f.length||(f=k(m+","+s)),r=r.concat(f)}))}))}))}))})),x(new Set(r))};Y.data=N,Y.dataCount=Object.keys(N).length,Y.setMode=function(s,f){O[s]=Object.assign(O[s]||{},f)};export{Y as default}; diff --git a/src/module/data/main.js b/src/module/data/main.js index bd1cd16..e671ebf 100644 --- a/src/module/data/main.js +++ b/src/module/data/main.js @@ -47,8 +47,8 @@ export default { 'm,m,f':['外曾外祖父','外曾外祖','曾毑父','外太外公','外太外爷','外太外翁','外太外爷爷','外太姥爷'], 'm,m,m':['外曾外祖母','曾毑母','外太外婆','外太外奶','外太外嬷','外太外姆','外太外奶奶','外太姥姥'], // 祖父辈 - 'f,f':['爷爷','祖父','阿爷','阿公','奶爹','亚爷','亚公','依爷','大父','祖君','嗲嗲','爷','奶爷','爷儿','爷老','爷老子','爷老倌','二世祖'], - 'f,m':['奶奶','祖母','阿奶','阿婆','奶娘','亚嬷','亚婆','依奶','大母','重慈','嫲嫲','奶','阿嬷','婻婻','娭毑','嗯奶','娘姆','媪婆','亲婆'], + 'f,f':['爷爷','祖父','祖公','阿爷','阿公','奶爹','亚爷','亚公','依爷','大父','祖翁','嗲嗲','爷','祖君','奶爷','爷儿','爷老','爷老子','爷老倌','二世祖'], + 'f,m':['奶奶','祖母','祖婆','阿奶','阿婆','奶娘','亚嬷','亚婆','依奶','大母','祖嫲','嫲嫲','奶','重慈','阿嬷','婻婻','娭毑','嗯奶','娘姆','媪婆','亲婆'], 'm,f':['外公','外祖父','姥爷','阿公','外爷','客公','毑父','毑公','姥公','舅家爷','嘎公','嘎爹','嘎嘎爹','嘎爷爷','尕公','毑爹','毑爷','外大父','姥爹','魏公','魏爷','简爷'], 'm,m':['外婆','外祖母','姥姥','阿婆','外奶','客婆','毑母','毑婆','姥婆','舅家婆','嘎嘎','嘎婆','嘎嘎婆','嘎奶奶','尕婆','毑娘','毑毑','外大母','姥娘','魏婆','魏奶','简婆','阿嬷','外嬷','嫲嫲','好婆','嫏嫏','嫏娘','姥'], 'f,f,ob':['伯公','伯祖','伯翁','大爷爷','大嗲','大爷','大公','大阿爷'], @@ -104,7 +104,7 @@ export default { 'f,os,h':['大姑丈','大姑夫','恩伯'], 'f,ls':['小姑','姑姐','姑妹','姑仔','尕娘','幺姑姐','老姑'], 'f,ls,h':['小姑丈','小姑夫','恩叔'], - 'f,xs':['姑妈','姑母','姑姑','恩妈','几姑','姑','阿姑','嬢嬢','娘娘'], + 'f,xs':['姑妈','姑母','姑姑','恩妈','几姑','姑','嬢嬢','娘娘'], 'f,xs,h':['姑丈','姑父','姑爸','恩爸','姑伯','姑爹','姑夫','姑婿','姑郎','亘'], 'f,f,xb,s&o':['堂伯'], 'f,f,xb,s&o,w':['堂伯母'], @@ -185,8 +185,8 @@ export default { 'h,f,m':['祖婆母','祖婆','祖婆婆','奶婆母'], 'h,m,f':['外祖公父','毑公父','外祖公','外祖公公','姥公父','姥公'], 'h,m,m':['外祖婆母','毑婆母','外祖婆','外祖婆婆','姥婆母','姥婆'], - 'h,f':['公公','公父','家公','家官','家翁','家爷','翁亲','老官','大官','老公公','老人公','大人公','公爹','老公爹','婆父','婆爹','君舅'], - 'h,m':['婆婆','婆母','家婆','家娘','姑亲','大家','老婆婆','老人婆','大人婆','婆妈','婆母娘','婆子妈','君姑'], + 'h,f':['公公','公父','家公','家爷','大官','老公公','老人公','大人公','公公爸','公爹','翁亲','君舅','老公爹','家官','老官','婆父','婆爹'], + 'h,m':['婆婆','婆母','家婆','家娘','大家','老婆婆','老人婆','大人婆','婆婆妈','婆妈','姑亲','君姑','婆母娘','婆子妈','阿姑'], 'h,f,ob':['伯公父','伯公','伯翁','伯公公','伯祖','婆婆伯'], 'h,f,ob,w':['伯婆母','伯婆','姆婆','伯婆婆','伯姆','婆婆伯姆'], 'h,f,lb':['叔公父','叔公','叔翁','叔公公','叔祖','婆婆叔'],