plugin-tls 0.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/README.md +5 -5
  2. package/dist/extend/extend.d.ts +222 -0
  3. package/dist/extend/extend.d.ts.map +1 -0
  4. package/dist/extend/mixin.d.ts +105 -0
  5. package/dist/extend/mixin.d.ts.map +1 -0
  6. package/dist/index.d.ts +14 -4
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/options-manager/ModeOptions.d.ts +88 -0
  9. package/dist/options-manager/ModeOptions.d.ts.map +1 -0
  10. package/dist/options-manager/OptionsManager.d.ts +105 -0
  11. package/dist/options-manager/OptionsManager.d.ts.map +1 -0
  12. package/dist/options-manager/TierModeOptions.d.ts +69 -0
  13. package/dist/options-manager/TierModeOptions.d.ts.map +1 -0
  14. package/dist/options-manager/TierOptions.d.ts +48 -0
  15. package/dist/options-manager/TierOptions.d.ts.map +1 -0
  16. package/dist/{defaultOptions.d.ts → options-manager/defaultOptions.d.ts} +2 -1
  17. package/dist/options-manager/defaultOptions.d.ts.map +1 -0
  18. package/dist/options-manager/tools.d.ts +35 -0
  19. package/dist/options-manager/tools.d.ts.map +1 -0
  20. package/dist/plugin-host/PluginHost.d.ts +184 -0
  21. package/dist/plugin-host/PluginHost.d.ts.map +1 -0
  22. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts +102 -0
  23. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts.map +1 -0
  24. package/dist/plugin-host/TierOptionsPluginHost.d.ts +83 -0
  25. package/dist/plugin-host/TierOptionsPluginHost.d.ts.map +1 -0
  26. package/dist/plugin-manager/PluginManager.d.ts +119 -0
  27. package/dist/plugin-manager/PluginManager.d.ts.map +1 -0
  28. package/dist/plugin-manager/PluginManagerWithInit.d.ts +36 -0
  29. package/dist/plugin-manager/PluginManagerWithInit.d.ts.map +1 -0
  30. package/dist/plugin-tls.d.ts +1329 -0
  31. package/dist/plugin-tls.iife.js +1 -0
  32. package/dist/plugin-tls.mjs +1064 -0
  33. package/dist/plugin-tls.umd.js +1 -1
  34. package/dist/properties.d.ts +30 -0
  35. package/dist/properties.d.ts.map +1 -0
  36. package/dist/tsdoc-metadata.json +11 -0
  37. package/doc/{plugin-tls.adddefaultoptions.md → api/plugin-tls.adddefaultoptions.md} +3 -3
  38. package/doc/{plugin-tls.addinstoptions.md → api/plugin-tls.addinstoptions.md} +2 -2
  39. package/doc/api/plugin-tls.allfunctionapply.md +26 -0
  40. package/doc/api/plugin-tls.becomepluginhost.md +15 -0
  41. package/doc/api/plugin-tls.becomepluginhost_extends.md +38 -0
  42. package/doc/api/plugin-tls.becomepluginhost_proxy.md +29 -0
  43. package/doc/api/plugin-tls.becometiermodeoptionshost.md +15 -0
  44. package/doc/api/plugin-tls.becometieroptionshost.md +15 -0
  45. package/doc/api/plugin-tls.classextender.md +15 -0
  46. package/doc/api/plugin-tls.classextenderprivatemember._constructors.md +13 -0
  47. package/doc/api/plugin-tls.classextenderprivatemember._destroys.md +13 -0
  48. package/doc/api/plugin-tls.classextenderprivatemember.md +21 -0
  49. package/doc/api/plugin-tls.classextenderprivatememberwithinit._inits.md +13 -0
  50. package/doc/api/plugin-tls.classextenderprivatememberwithinit.md +21 -0
  51. package/doc/api/plugin-tls.classextenderwithinit.md +15 -0
  52. package/doc/api/plugin-tls.classtype._new_.md +22 -0
  53. package/doc/api/plugin-tls.classtype.md +20 -0
  54. package/doc/api/plugin-tls.commonmodename.md +18 -0
  55. package/doc/api/plugin-tls.createcallerofprivatememberofextend.md +30 -0
  56. package/doc/api/plugin-tls.createdefinemixin.md +23 -0
  57. package/doc/api/plugin-tls.createextendtarget.md +30 -0
  58. package/doc/api/plugin-tls.createextendtargetwithinit.md +30 -0
  59. package/doc/api/plugin-tls.createmixintarget.md +30 -0
  60. package/doc/api/plugin-tls.createpluginhost.md +35 -0
  61. package/doc/api/plugin-tls.createpropertysetter.md +30 -0
  62. package/doc/api/plugin-tls.createtargetextend.md +30 -0
  63. package/doc/api/plugin-tls.createtargetextendwithinit.md +30 -0
  64. package/doc/api/plugin-tls.createtargetmixin.md +30 -0
  65. package/doc/api/plugin-tls.createtiermodeoptionspluginhost.md +32 -0
  66. package/doc/api/plugin-tls.createtieroptionspluginhost.md +30 -0
  67. package/doc/api/plugin-tls.defineextend.md +35 -0
  68. package/doc/api/plugin-tls.defineextendwithinit.md +35 -0
  69. package/doc/api/plugin-tls.definemixin.md +31 -0
  70. package/doc/api/plugin-tls.extendtarget.md +31 -0
  71. package/doc/api/plugin-tls.extendtargetwithinit.md +31 -0
  72. package/doc/api/plugin-tls.formatuseparameters.md +13 -0
  73. package/doc/api/plugin-tls.formatusepluginparameters.md +15 -0
  74. package/doc/api/plugin-tls.getnormalizepluginoptions.md +15 -0
  75. package/doc/api/plugin-tls.getpluginoptions.md +15 -0
  76. package/doc/api/plugin-tls.getpropertyvalue.md +26 -0
  77. package/doc/api/plugin-tls.getpropertyvaluebypath.md +26 -0
  78. package/doc/api/plugin-tls.gettargetproperties.md +26 -0
  79. package/doc/{plugin-tls.hostinst.md → api/plugin-tls.hostinst.md} +2 -2
  80. package/doc/{plugin-tls.idefaultoptionshost.defaultoptions.md → api/plugin-tls.idefaultoptionshost.defaultoptions.md} +1 -1
  81. package/doc/{plugin-tls.idefaultoptionshost.md → api/plugin-tls.idefaultoptionshost.md} +1 -1
  82. package/doc/{plugin-tls.iidefaultoptionshostconstructor.md → api/plugin-tls.iidefaultoptionshostconstructor.md} +1 -1
  83. package/doc/{plugin-tls.iplugin.created.md → api/plugin-tls.iplugin.created.md} +4 -4
  84. package/doc/api/plugin-tls.iplugin.destroyed.md +25 -0
  85. package/doc/{plugin-tls.iplugin.md → api/plugin-tls.iplugin.md} +4 -3
  86. package/doc/{plugin-tls.iplugin.used.md → api/plugin-tls.iplugin.used.md} +4 -4
  87. package/doc/{plugin-tls.ipluginhost.md → api/plugin-tls.ipluginhost.md} +2 -2
  88. package/doc/{plugin-tls.ipluginhost.use.md → api/plugin-tls.ipluginhost.use.md} +6 -6
  89. package/doc/{plugin-tls.ipluginhostconstructor.md → api/plugin-tls.ipluginhostconstructor.md} +2 -2
  90. package/doc/{plugin-tls.ipluginhostconstructor.use.md → api/plugin-tls.ipluginhostconstructor.use.md} +6 -6
  91. package/doc/api/plugin-tls.ipluginwithinit.inited.md +25 -0
  92. package/doc/api/plugin-tls.ipluginwithinit.md +21 -0
  93. package/doc/api/plugin-tls.itiermodeoptionshost.md +21 -0
  94. package/doc/api/plugin-tls.itiermodeoptionshost.mode.md +11 -0
  95. package/doc/api/plugin-tls.itiermodeoptionshost.modeoptions.md +11 -0
  96. package/doc/api/plugin-tls.itiermodeoptionshostconstructor.md +13 -0
  97. package/doc/api/plugin-tls.itiermodeoptionspluginhost.md +15 -0
  98. package/doc/api/plugin-tls.itiermodeoptionspluginhostconstructor.md +15 -0
  99. package/doc/api/plugin-tls.itieroptionshost.defaultoptions.md +11 -0
  100. package/doc/api/plugin-tls.itieroptionshost.md +20 -0
  101. package/doc/api/plugin-tls.itieroptionshostconstructor.md +13 -0
  102. package/doc/api/plugin-tls.itieroptionspluginhost.md +15 -0
  103. package/doc/api/plugin-tls.itieroptionspluginhostconstructor.md +15 -0
  104. package/doc/api/plugin-tls.md +121 -0
  105. package/doc/api/plugin-tls.mergeproperties.md +25 -0
  106. package/doc/api/plugin-tls.mixin_4.md +33 -0
  107. package/doc/api/plugin-tls.mixintarget.md +31 -0
  108. package/doc/api/plugin-tls.modeoptions._constructor_.md +20 -0
  109. package/doc/api/plugin-tls.modeoptions._constructor__1.md +21 -0
  110. package/doc/api/plugin-tls.modeoptions._mode.md +11 -0
  111. package/doc/api/plugin-tls.modeoptions._modenames.md +11 -0
  112. package/doc/api/plugin-tls.modeoptions._plainfulloption.md +11 -0
  113. package/doc/api/plugin-tls.modeoptions.getfullmodeoption.md +29 -0
  114. package/doc/api/plugin-tls.modeoptions.getmodenames.md +18 -0
  115. package/doc/api/plugin-tls.modeoptions.getmodeoption.md +29 -0
  116. package/doc/api/plugin-tls.modeoptions.hasmode.md +25 -0
  117. package/doc/api/plugin-tls.modeoptions.md +57 -0
  118. package/doc/api/plugin-tls.modeoptions.mode.md +15 -0
  119. package/doc/api/plugin-tls.modeoptions.modenames.md +13 -0
  120. package/doc/api/plugin-tls.modeoptions.modes.md +13 -0
  121. package/doc/api/plugin-tls.modeoptions.option.md +13 -0
  122. package/doc/api/plugin-tls.modeoptions.optionmanager.md +13 -0
  123. package/doc/api/plugin-tls.modeoptions.plainfulloption.md +11 -0
  124. package/doc/api/plugin-tls.modeoptions.setmodeoption.md +27 -0
  125. package/doc/api/plugin-tls.modeoptions.updatefulloption.md +17 -0
  126. package/doc/api/plugin-tls.normalizepluginoptions.md +18 -0
  127. package/doc/api/plugin-tls.parsepropertypath.md +25 -0
  128. package/doc/{plugin-tls.plugincreatedreturntype.md → api/plugin-tls.plugincreatedreturntype.md} +3 -3
  129. package/doc/{plugin-tls.pluginhost._pluginmanager.md → api/plugin-tls.pluginhost._pluginmanager.md} +2 -2
  130. package/doc/api/plugin-tls.pluginhost.destroy.md +18 -0
  131. package/doc/api/plugin-tls.pluginhost.md +38 -0
  132. package/doc/{plugin-tls.pluginhost.pluginmanager.md → api/plugin-tls.pluginhost.pluginmanager.md} +2 -2
  133. package/doc/{plugin-tls.pluginhost.use.md → api/plugin-tls.pluginhost.use.md} +5 -5
  134. package/doc/api/plugin-tls.pluginmanager._constructor_.md +20 -0
  135. package/doc/{plugin-tls.pluginmanager.created.md → api/plugin-tls.pluginmanager.created.md} +4 -4
  136. package/doc/api/plugin-tls.pluginmanager.destroyed.md +28 -0
  137. package/doc/{plugin-tls.pluginmanager.host.md → api/plugin-tls.pluginmanager.host.md} +2 -2
  138. package/doc/api/plugin-tls.pluginmanager.instuse.md +30 -0
  139. package/doc/{plugin-tls.pluginmanager.md → api/plugin-tls.pluginmanager.md} +12 -5
  140. package/doc/{plugin-tls.pluginmanager.pluginoptsmap.md → api/plugin-tls.pluginmanager.pluginoptsmap.md} +2 -2
  141. package/doc/{plugin-tls.pluginmanager.plugins.md → api/plugin-tls.pluginmanager.plugins.md} +2 -2
  142. package/doc/{plugin-tls.pluginmanager.use.md → api/plugin-tls.pluginmanager.use.md} +6 -6
  143. package/doc/api/plugin-tls.pluginmanagerwithinit.inited.md +28 -0
  144. package/doc/api/plugin-tls.pluginmanagerwithinit.md +25 -0
  145. package/doc/{plugin-tls.pluginusereturntype.md → api/plugin-tls.pluginusereturntype.md} +3 -3
  146. package/doc/api/plugin-tls.privatememberofextend._constructor.md +32 -0
  147. package/doc/api/plugin-tls.privatememberofextend._destroy.md +25 -0
  148. package/doc/api/plugin-tls.privatememberofextend.md +21 -0
  149. package/doc/api/plugin-tls.privatememberofextendwithinit._init.md +28 -0
  150. package/doc/api/plugin-tls.privatememberofextendwithinit.md +21 -0
  151. package/doc/api/plugin-tls.replaceconstructorparameters.md +13 -0
  152. package/doc/api/plugin-tls.replaceconstructorreturn.md +13 -0
  153. package/doc/api/plugin-tls.setpropertyvalue.md +27 -0
  154. package/doc/api/plugin-tls.setpropertyvaluebypath.md +27 -0
  155. package/doc/api/plugin-tls.targetextend.md +31 -0
  156. package/doc/api/plugin-tls.targetextendwithinit.md +31 -0
  157. package/doc/api/plugin-tls.targetmixin.md +31 -0
  158. package/doc/api/plugin-tls.tiermodeoptions._constructor_.md +20 -0
  159. package/doc/api/plugin-tls.tiermodeoptions._constructor__1.md +22 -0
  160. package/doc/api/plugin-tls.tiermodeoptions._extends.md +11 -0
  161. package/doc/api/plugin-tls.tiermodeoptions.extends.md +15 -0
  162. package/doc/api/plugin-tls.tiermodeoptions.getfullmodeoption.md +29 -0
  163. package/doc/api/plugin-tls.tiermodeoptions.getmember.md +25 -0
  164. package/doc/api/plugin-tls.tiermodeoptions.getmodenames.md +18 -0
  165. package/doc/api/plugin-tls.tiermodeoptions.getmodeoptionmanager.md +25 -0
  166. package/doc/api/plugin-tls.tiermodeoptions.getvalue.md +25 -0
  167. package/doc/api/plugin-tls.tiermodeoptions.hasmodeontier.md +25 -0
  168. package/doc/api/plugin-tls.tiermodeoptions.md +45 -0
  169. package/doc/api/plugin-tls.tiermodeoptions.optionmanager.md +13 -0
  170. package/doc/api/plugin-tls.tiermodeoptionsdecorator.md +30 -0
  171. package/doc/api/plugin-tls.tiermodeoptionspluginhost._constructor_.md +20 -0
  172. package/doc/api/plugin-tls.tiermodeoptionspluginhost._modeoptions.md +11 -0
  173. package/doc/api/plugin-tls.tiermodeoptionspluginhost.md +37 -0
  174. package/doc/api/plugin-tls.tiermodeoptionspluginhost.mode.md +13 -0
  175. package/doc/api/plugin-tls.tiermodeoptionspluginhost.modeoptions.md +13 -0
  176. package/doc/api/plugin-tls.tiermodeoptionspluginhost.options.md +11 -0
  177. package/doc/api/plugin-tls.tieroptions._constructor_.md +21 -0
  178. package/doc/api/plugin-tls.tieroptions._extends.md +11 -0
  179. package/doc/api/plugin-tls.tieroptions._plainfulloption.md +11 -0
  180. package/doc/api/plugin-tls.tieroptions.extends.md +15 -0
  181. package/doc/api/plugin-tls.tieroptions.getmember.md +25 -0
  182. package/doc/api/plugin-tls.tieroptions.getvalue.md +25 -0
  183. package/doc/api/plugin-tls.tieroptions.md +37 -0
  184. package/doc/api/plugin-tls.tieroptions.option.md +13 -0
  185. package/doc/api/plugin-tls.tieroptions.plainfulloption.md +18 -0
  186. package/doc/api/plugin-tls.tieroptions.updatefulloption.md +17 -0
  187. package/doc/api/plugin-tls.tieroptionsdecorator.md +30 -0
  188. package/doc/api/plugin-tls.tieroptionspluginhost._constructor_.md +20 -0
  189. package/doc/api/plugin-tls.tieroptionspluginhost._defaultoptions.md +11 -0
  190. package/doc/api/plugin-tls.tieroptionspluginhost.defaultoptions.md +13 -0
  191. package/doc/api/plugin-tls.tieroptionspluginhost.md +35 -0
  192. package/package.json +23 -15
  193. package/dist/OptionsPluginHost.d.ts +0 -49
  194. package/dist/PluginHost.d.ts +0 -96
  195. package/dist/PluginManager.d.ts +0 -76
  196. package/dist/plugin-tls.es.js +0 -170
  197. package/doc/plugin-tls.createoptionspluginhost.md +0 -29
  198. package/doc/plugin-tls.createpluginhost.md +0 -30
  199. package/doc/plugin-tls.ioptionspluginhost.defaultoptions.md +0 -11
  200. package/doc/plugin-tls.ioptionspluginhost.md +0 -21
  201. package/doc/plugin-tls.ioptionspluginhostconstructor.md +0 -15
  202. package/doc/plugin-tls.md +0 -53
  203. package/doc/plugin-tls.optionspluginhost._defaultoptions.md +0 -11
  204. package/doc/plugin-tls.optionspluginhost.defaultoptions.md +0 -13
  205. package/doc/plugin-tls.optionspluginhost.md +0 -21
  206. package/doc/plugin-tls.pluginhost._constructor_.md +0 -13
  207. package/doc/plugin-tls.pluginhost.md +0 -25
  208. package/doc/plugin-tls.pluginmanager.instuse.md +0 -30
  209. package/doc/plugin-tls.pluginoptions.md +0 -11
  210. /package/doc/{index.md → api/index.md} +0 -0
@@ -0,0 +1 @@
1
+ var PluginTls=function(s){"use strict";var Ge=Object.defineProperty;var Je=(s,d,m)=>d in s?Ge(s,d,{enumerable:!0,configurable:!0,writable:!0,value:m}):s[d]=m;var c=(s,d,m)=>(Je(s,typeof d!="symbol"?d+"":d,m),m);function d(n,...e){for(const t of e){const r=Object.getOwnPropertyDescriptors(t);Object.defineProperties(n,r)}return n}function m(n,e){return e}function ee(){return function(e,t){return t}}function te(n,e){return d(n,e),e}function ne(n){return function(t){return d(n,t),t}}function p(n,e){return d(n,e),n}function re(n){return function(t){return d(n,t),n}}function ie(n,e){return e}function y(n,e){d(n.prototype,e);const t=e._constructor;typeof t=="function"&&(n._constructors??(n._constructors=[])).push(t);const r=e._destroy;return typeof r=="function"&&(n._destroys??(n._destroys=[])).push(r),e}function oe(n){return function(t){return y(n,t),t}}function U(n,e){return y(n,e),n}function se(n){return function(t){return y(n,t),n}}function F(n,e,t){for(const r of n)r.apply(e,t)}function ue(n){return{constructed:function(e,t){F(n._constructors??[],e,t)},initialized:function(e,t){F(n._inits??[],e,t)},destroyed:function(e,t){F(n._destroys??[],e,t)}}}function ce(n,e){return e}function b(n,e){y(n,e);const t=e._init;return typeof t=="function"&&(n._inits??(n._inits=[])).push(t),e}function ae(n){return function(t){return b(n,t),t}}function de(n,e){return b(n,e),n}function ge(n){return function(t){return b(n,t),n}}class M{constructor(e){c(this,"host");c(this,"pluginOptsMap",new Map);c(this,"plugins",[]);e&&(this.host=e)}use(e,...t){const{pluginOptsMap:r,plugins:i,host:o}=this;if(!i.includes(e))return i.push(e),r.set(e,t[0]),e.used(o,t[0])}created(e){var i;const{plugins:t,pluginOptsMap:r}=this;for(const o of t){const u=r.get(o);(i=o.created)==null||i.call(o,e,u)}}destroyed(e){var i;const{plugins:t,pluginOptsMap:r}=this;for(const o of t){const u=r.get(o);(i=o.destroyed)==null||i.call(o,e,u)}}instUse(e,t,...r){var o;if(!this.pluginOptsMap.has(t))return this.use(t,...r),(o=t.created)==null?void 0:o.call(t,e,...r)}}class fe extends M{inited(e){var i;const{plugins:t,pluginOptsMap:r}=this;for(const o of t){const u=r.get(o);(i=o.inited)==null||i.call(o,e,u)}}}function pe(n,e){const t=e??"defaultOptions",r=`_${t}`;return function(o){const u=p(o,{get[t](){return n}});U(u,{get[t](){return this[r]||(this[r]=structuredClone(u.defaultOptions))}})}}function le(n,e,t){const r=`_${e}`;return U(n,{get[e](){return this[r]||(this[r]=structuredClone(n[e]))}}),t}function j(n){const e=n.split(".");return e[0]===""&&e.shift(),e}function T(n,e){for(const t of e)if(n=n[t],n==null)return;return n}function he(n,e){return T(n,j(e))}function D(n,e,t){const r=e.pop(),i=e.length;let o=0;for(;o<i;){const u=n[e[o]];if(u==null)break;n=u,o++}e=e.slice(o);for(const u of e)n=n[u]={};return n[r]=t,n}function me(n,e,t){return D(n,j(e),t)}const l={defaultMerge:Symbol("deepmerge-ts: default merge"),skip:Symbol("deepmerge-ts: skip")},O={defaultMerge:l.defaultMerge};function $(n,e){return e}function w(n){return typeof n!="object"||n===null?0:Array.isArray(n)?2:Oe(n)?1:n instanceof Set?3:n instanceof Map?4:5}function k(n){const e=new Set;for(const t of n)for(const r of[...Object.keys(t),...Object.getOwnPropertySymbols(t)])e.add(r);return e}function W(n,e){return typeof n=="object"&&Object.prototype.propertyIsEnumerable.call(n,e)}function x(n){return{*[Symbol.iterator](){for(const e of n)for(const t of e)yield t}}}const z=new Set(["[object Object]","[object Module]"]);function Oe(n){if(!z.has(Object.prototype.toString.call(n)))return!1;const{constructor:e}=n;if(e===void 0)return!0;const t=e.prototype;return!(t===null||typeof t!="object"||!z.has(Object.prototype.toString.call(t))||!t.hasOwnProperty("isPrototypeOf"))}function Me(n,e,t){const r={};for(const i of k(n)){const o=[];for(const g of n)W(g,i)&&o.push(g[i]);if(o.length===0)continue;const u=e.metaDataUpdater(t,{key:i,parents:n}),a=q(o,e,u);a!==l.skip&&(i==="__proto__"?Object.defineProperty(r,i,{value:a,configurable:!0,enumerable:!0,writable:!0}):r[i]=a)}return r}function ye(n){return n.flat()}function _e(n){return new Set(x(n))}function Pe(n){return new Map(x(n))}function C(n){return n.at(-1)}var S=Object.freeze({__proto__:null,mergeArrays:ye,mergeMaps:Pe,mergeOthers:C,mergeRecords:Me,mergeSets:_e});function B(...n){return Fe({})(...n)}function Fe(n,e){const t=be(n,r);function r(...i){return q(i,t,e)}return r}function be(n,e){return{defaultMergeFunctions:S,mergeFunctions:{...S,...Object.fromEntries(Object.entries(n).filter(([t,r])=>Object.hasOwn(S,t)).map(([t,r])=>r===!1?[t,C]:[t,r]))},metaDataUpdater:n.metaDataUpdater??$,deepmerge:e,useImplicitDefaultMerging:n.enableImplicitDefaultMerging??!1,actions:l}}function q(n,e,t){if(n.length===0)return;if(n.length===1)return H(n,e,t);const r=w(n[0]);if(r!==0&&r!==5){for(let i=1;i<n.length;i++)if(w(n[i])!==r)return H(n,e,t)}switch(r){case 1:return Te(n,e,t);case 2:return we(n,e,t);case 3:return xe(n,e,t);case 4:return Ie(n,e,t);default:return H(n,e,t)}}function Te(n,e,t){const r=e.mergeFunctions.mergeRecords(n,e,t);return r===l.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeRecords!==e.defaultMergeFunctions.mergeRecords?e.defaultMergeFunctions.mergeRecords(n,e,t):r}function we(n,e,t){const r=e.mergeFunctions.mergeArrays(n,e,t);return r===l.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeArrays!==e.defaultMergeFunctions.mergeArrays?e.defaultMergeFunctions.mergeArrays(n):r}function xe(n,e,t){const r=e.mergeFunctions.mergeSets(n,e,t);return r===l.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeSets!==e.defaultMergeFunctions.mergeSets?e.defaultMergeFunctions.mergeSets(n):r}function Ie(n,e,t){const r=e.mergeFunctions.mergeMaps(n,e,t);return r===l.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeMaps!==e.defaultMergeFunctions.mergeMaps?e.defaultMergeFunctions.mergeMaps(n):r}function H(n,e,t){const r=e.mergeFunctions.mergeOthers(n,e,t);return r===l.defaultMerge||e.useImplicitDefaultMerging&&r===void 0&&e.mergeFunctions.mergeOthers!==e.defaultMergeFunctions.mergeOthers?e.defaultMergeFunctions.mergeOthers(n):r}function Ue(n,e,t,r){for(const i of k(e)){const o=[];for(const g of e)W(g,i)&&o.push(g[i]);if(o.length===0)continue;const u=t.metaDataUpdater(r,{key:i,parents:e}),a={value:o[0]};G(a,o,t,u),i==="__proto__"?Object.defineProperty(n,i,{value:a.value,configurable:!0,enumerable:!0,writable:!0}):n.value[i]=a.value}}function je(n,e){n.value.push(...e.slice(1).flat())}function De(n,e){for(const t of x(e.slice(1)))n.value.add(t)}function Se(n,e){for(const[t,r]of x(e.slice(1)))n.value.set(t,r)}function K(n,e){n.value=e.at(-1)}var V=Object.freeze({__proto__:null,mergeArrays:je,mergeMaps:Se,mergeOthers:K,mergeRecords:Ue,mergeSets:De});function E(n,...e){return void He({})(n,...e)}function He(n,e){const t=Ve(n,r);function r(i,...o){G({value:i},[i,...o],t,e)}return r}function Ve(n,e){return{defaultMergeFunctions:V,mergeFunctions:{...V,...Object.fromEntries(Object.entries(n).filter(([t,r])=>Object.hasOwn(V,t)).map(([t,r])=>r===!1?[t,K]:[t,r]))},metaDataUpdater:n.metaDataUpdater??$,deepmergeInto:e,actions:O}}function G(n,e,t,r){if(e.length===0)return;if(e.length===1)return void N(n,e,t,r);const i=w(n.value);if(i!==0&&i!==5){for(let o=1;o<e.length;o++)if(w(e[o])!==i)return void N(n,e,t,r)}switch(i){case 1:return void Ee(n,e,t,r);case 2:return void Ne(n,e,t,r);case 3:return void ve(n,e,t,r);case 4:return void Ae(n,e,t,r);default:return void N(n,e,t,r)}}function Ee(n,e,t,r){t.mergeFunctions.mergeRecords(n,e,t,r)===O.defaultMerge&&t.defaultMergeFunctions.mergeRecords(n,e,t,r)}function Ne(n,e,t,r){t.mergeFunctions.mergeArrays(n,e,t,r)===O.defaultMerge&&t.defaultMergeFunctions.mergeArrays(n,e)}function ve(n,e,t,r){t.mergeFunctions.mergeSets(n,e,t,r)===O.defaultMerge&&t.defaultMergeFunctions.mergeSets(n,e)}function Ae(n,e,t,r){t.mergeFunctions.mergeMaps(n,e,t,r)===O.defaultMerge&&t.defaultMergeFunctions.mergeMaps(n,e)}function N(n,e,t,r){(t.mergeFunctions.mergeOthers(n,e,t,r)===O.defaultMerge||n.value===O.defaultMerge)&&t.defaultMergeFunctions.mergeOthers(n,e)}const v={UndefinedAndNull:function(e){return e==null},Undefined:function(e){return e===void 0},Null:function(e){return e===null}};class J{constructor(){c(this,"freezeMember",!0);c(this,"fullOption",new Proxy(this,{get:function(e,t,r){const i=e.plainFullOption[t];return e.freezeMember?Object.freeze(i):i},set:function(e,t,r,i){return e.setMember(t,r,!1),!0},has:function(e,t){return t in e.plainFullOption},getOwnPropertyDescriptor:function(e,t){return Object.getOwnPropertyDescriptor(e.plainFullOption,t)},ownKeys:function(e){return Reflect.ownKeys(e.plainFullOption)},deleteProperty:function(e,t){return e.setMember(t,void 0),!0},defineProperty:function(e,t,r){return Object.defineProperty(e.option,t,r),!0}}));c(this,"_undefinedValue","UndefinedAndNull");c(this,"isUndefined",v.UndefinedAndNull)}setOption(e,t){const r=t?E(this.option,e):Object.assign(this.option,e);return this.updateFullOption(),r}get undefinedValue(){return this._undefinedValue}set undefinedValue(e){this._undefinedValue=e,this.isUndefined=v[e]||v.UndefinedAndNull}getMember(e){return this.option[e]}setMember(e,t,r){const i=this.option;if(t===void 0)delete i[e];else{const o=i[e];r&&o&&typeof o=="object"?E(o,t):i[e]=t}this.updateFullOption()}getValue(e){return T(this.option,e)}setValue(e,t,r){const i=this.option;let o;r&&(o=T(i,e))&&typeof o=="object"?E(o,t):D(this.option,e,t),this.updateFullOption()}}class f extends J{constructor(t,r){super();c(this,"_extends",null);c(this,"option",{});c(this,"_plainFullOption",null);t&&(this.option=t),r&&(this.extends=r)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}get plainFullOption(){let t=this._plainFullOption;if(t)return t;const{extends:r,option:i}=this;if(t=i,r){const o=r.plainFullOption;t=B(o,i)}return this._plainFullOption=t}updateFullOption(){this._plainFullOption=null}getMember(t){const r=this.option[t];if(!this.isUndefined(r))return r;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const r=super.getValue(t);if(!this.isUndefined(r))return r;const i=this.extends;if(i)return i.getValue(t)}}function Re(n,e){const{name:t}=e,r=`_${t}`;return{get:function(){return this[r]||(this[r]=new f(void 0,this.constructor[t]))}}}class L extends J{constructor(t,r){super();c(this,"modes",{});c(this,"_mode");c(this,"_modeNames",null);c(this,"_plainFullOption",null);r&&this.setModeOption(t,r),this.mode=t}get mode(){return this._mode||(this.mode=this.modeNames[0])}set mode(t){this._mode=t,this.hasMode(t)||this.setModeOption(t,{}),this.updateFullOption()}get modeNames(){return this._modeNames||(this._modeNames=this.getModeNames())}getModeNames(){return Object.keys(this.modes)}hasMode(t){return!!this.modes[t]}get optionManager(){return this.modes[this.mode]}get option(){return this.optionManager.option}get plainFullOption(){return this._plainFullOption??(this._plainFullOption=this.getFullModeOption(this.mode))}updateFullOption(){this._plainFullOption=null,this._modeNames=null}getModeOption(t){return this.modes[t].option}getFullModeOption(t){var r;return(r=this.modes[t])==null?void 0:r.plainFullOption}setModeOption(t,r,i,o){const{modes:u}=this,a=u[t]||(u[t]=new f);if(a.setOption(r,i),o){const g=u[o];g&&(a.extends=g)}return this.updateFullOption(),a}}class h extends L{constructor(t,r,i){super(t,r);c(this,"_extends",null);i&&(this.extends=i)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}getFullModeOption(t){var u;const{modes:r,extends:i}=this,o=(u=r[t])==null?void 0:u.plainFullOption;if(i){const a=i.getFullModeOption(t);return o?B(a,o):a}return o}getModeNames(){const{modes:t,extends:r}=this,i=Object.keys(t);if(!r)return i;const o=r.getModeNames();return[...new Set([...i,...o])]}hasModeOnTier(t){if(this.hasMode(t))return!0;const r=this.extends;return r?r.hasModeOnTier(t):!1}get optionManager(){return this.getModeOptionManager(this.mode)}getModeOptionManager(t){var o;const r=this.modes[t];return r||(((o=this.extends)==null?void 0:o.getModeOptionManager(t))?this.setModeOption(t,{}):null)}getMember(t){const r=this.optionManager.getMember(t);if(!this.isUndefined(r))return r;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const r=this.optionManager.getValue(t);if(!this.isUndefined(r))return r;const i=this.extends;if(i)return i.getValue(t)}}function $e(n,e){const{name:t}=e,r=`_${t}`;return{get:function(){return this[r]||(this[r]=new h(this.constructor[t].mode,void 0,this.constructor[t]))}}}class I{static get pluginManager(){let e=this._pluginManager;return e||(e=this._pluginManager=new M(this)),e}get pluginManager(){return this.constructor.pluginManager}static use(e,...t){return this.pluginManager.use(e,...t)}use(e,...t){return this.pluginManager.instUse(this,e,...t)}destroy(){return this.pluginManager.destroyed(this)}}c(I,"_pluginManager");function A(){var n;return n=class{static get pluginManager(){let t=this._pluginManager;return t||(t=this._pluginManager=new M(this)),t}get pluginManager(){return this.constructor.pluginManager}static use(t,...r){return this.pluginManager.use(t,...r)}use(t,...r){return this.pluginManager.instUse(this,t,...r)}destroy(){return this.pluginManager.destroyed(this)}},c(n,"_pluginManager"),n}function Q(n){const e=p(n,{get pluginManager(){let t=this._pluginManager;return t||(t=this._pluginManager=new M(this)),t},use(t,r){return this.pluginManager.use(t,r)}});return p(e.prototype,{get pluginManager(){return this.constructor.pluginManager},use(t,r){return this.pluginManager.instUse(this,t,r)},destroy(){return this.pluginManager.destroyed(this)}}),n}function ke(n){const e=Q(n);return new Proxy(n,{construct:function(t,r,i){const o=new t(...r);return e.pluginManager.created(this),o}})}function We(n){var e;return e=class extends n{static get pluginManager(){let r=this._pluginManager;return r||(r=this._pluginManager=new M(this)),r}get pluginManager(){return this.constructor.pluginManager}static use(r,...i){return this.pluginManager.use(r,...i)}constructor(...r){super(...r),this.pluginManager.created(this)}use(r,...i){return this.pluginManager.instUse(this,r,...i)}destroy(){return this.pluginManager.destroyed(this)}},c(e,"_pluginManager"),e}class X extends I{constructor(t){super();c(this,"_defaultOptions");this.defaultOptions.option=t}get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new f(void 0,this.constructor.defaultOptions))}}c(X,"defaultOptions",new f);function ze(){var e;const n=A();return e=class extends n{constructor(i){super();c(this,"_defaultOptions");this.defaultOptions.option=i}get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new f(void 0,this.constructor.defaultOptions))}},c(e,"defaultOptions",new f),e}function Ce(n,e){const t=p(n,{defaultOptions:new f(e)});return p(t.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new f(void 0,this.constructor.defaultOptions))}}),n}const _="common";class Y extends I{constructor(t){super();c(this,"_modeOptions");this.modeOptions.setOption(t)}get modeOptions(){return this._modeOptions||(this._modeOptions=new h(_,void 0,this.constructor.modeOptions))}get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}}c(Y,"modeOptions",new h(_));function Be(){var e;const n=A();return e=class extends n{constructor(i){super();c(this,"_modeOptions");this.modeOptions.setOption(i)}get modeOptions(){return this._modeOptions||(this._modeOptions=new h(_,void 0,this.constructor.modeOptions))}get mode(){return this.modeOptions.mode}set mode(i){this.modeOptions.mode=i}get options(){return this.modeOptions.plainFullOption}},c(e,"modeOptions",new h(_)),e}function qe(n,e,t){const r=p(n,{modeOptions:new h(e,t)});return p(r.prototype,{get modeOptions(){return this._modeOptions||(this._modeOptions=new h(e,void 0,this.constructor.modeOptions))},get mode(){return this.modeOptions.mode},set mode(i){this.modeOptions.mode=i},get options(){return this.modeOptions.fullOption}}),n}function R(n,e){const t=[{target:n,props:e}];let r;for(;r=t.shift();){const{target:i,props:o}=r;for(const[u,a]of Object.entries(o)){if(a!=null&&typeof a=="object"&&(!a.constructor||a.constructor===Object)){t.push({target:i[u],props:a});continue}i[u]=a}}return n}function Z(n,e){const t={},r=[{target:n,props:e,targetProps:t}];let i;for(;i=r.shift();){const{target:o,props:u,targetProps:a}=i;for(const[g,P]of Object.entries(u)){if(P!=null&&typeof P=="object"&&(!P.constructor||P.constructor===Object)){r.push({target:o[g],props:P,targetProps:a[g]={}});continue}a[g]=o[g]}}return t}function Ke(n,e){const t=Z(n,e);function r(){R(n,e)}function i(){R(n,t)}return{set:r,unset:i}}return s.ModeOptions=L,s.PluginHost=I,s.PluginManager=M,s.PluginManagerWithInit=fe,s.TierModeOptions=h,s.TierModeOptionsPluginHost=Y,s.TierOptions=f,s.TierOptionsPluginHost=X,s.addDefaultOptions=pe,s.addInstOptions=le,s.allFunctionApply=F,s.becomePluginHost=Q,s.becomePluginHost_Extends=We,s.becomePluginHost_Proxy=ke,s.becomeTierModeOptionsHost=qe,s.becomeTierOptionsHost=Ce,s.commonModeName=_,s.createCallerOfPrivateMemberOfExtend=ue,s.createDefineMixin=ee,s.createExtendTarget=se,s.createExtendTargetWithInit=ge,s.createMixinTarget=re,s.createPluginHost=A,s.createPropertySetter=Ke,s.createTargetExtend=oe,s.createTargetExtendWithInit=ae,s.createTargetMixin=ne,s.createTierModeOptionsPluginHost=Be,s.createTierOptionsPluginHost=ze,s.defineExtend=ie,s.defineExtendWithInit=ce,s.defineMixin=m,s.extendTarget=U,s.extendTargetWithInit=de,s.getPropertyValue=T,s.getPropertyValueByPath=he,s.getTargetProperties=Z,s.mergeProperties=R,s.mixin=d,s.mixinTarget=p,s.parsePropertyPath=j,s.setPropertyValue=D,s.setPropertyValueByPath=me,s.targetExtend=y,s.targetExtendWithInit=b,s.targetMixin=te,s.tierModeOptionsDecorator=$e,s.tierOptionsDecorator=Re,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}),s}({});