plugin-tls 3.0.0 → 3.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 (123) hide show
  1. package/dist/index.d.ts +1 -4
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +632 -400
  4. package/dist/index.umd.cjs +1 -1
  5. package/dist/options/index.d.ts +4 -0
  6. package/dist/options/index.d.ts.map +1 -0
  7. package/dist/options/options-manager/ModeOptions.d.ts.map +1 -0
  8. package/dist/options/options-manager/OptionsManager.d.ts.map +1 -0
  9. package/dist/options/options-manager/TierModeOptions.d.ts.map +1 -0
  10. package/dist/options/options-manager/TierOptions.d.ts.map +1 -0
  11. package/dist/options/options-manager/defaultOptions.d.ts.map +1 -0
  12. package/dist/options/options-manager/index.d.ts.map +1 -0
  13. package/dist/options/options-manager/tools.d.ts.map +1 -0
  14. package/dist/options/options-plugin-host/index.d.ts.map +1 -0
  15. package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/TierModeOptionsPluginHost.d.ts +3 -3
  16. package/dist/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHost.d.ts.map +1 -0
  17. package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/TierModeOptionsPluginHostEventEmitter.d.ts +4 -4
  18. package/dist/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventEmitter.d.ts.map +1 -0
  19. package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/TierModeOptionsPluginHostEventTarget.d.ts +3 -3
  20. package/dist/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventTarget.d.ts.map +1 -0
  21. package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/createTierModeOptionsPluginHost.d.ts +12 -10
  22. package/dist/options/options-plugin-host/tier-mode-options/createTierModeOptionsPluginHost.d.ts.map +1 -0
  23. package/dist/options/options-plugin-host/tier-mode-options/index.d.ts.map +1 -0
  24. package/dist/options/options-plugin-host/tier-mode-options/type.d.ts.map +1 -0
  25. package/dist/{options-plugin-host → options/options-plugin-host}/tier-options/TierOptionsPluginHost.d.ts +3 -3
  26. package/dist/options/options-plugin-host/tier-options/TierOptionsPluginHost.d.ts.map +1 -0
  27. package/dist/{options-plugin-host → options/options-plugin-host}/tier-options/TierOptionsPluginHostEventEmitter.d.ts +4 -4
  28. package/dist/options/options-plugin-host/tier-options/TierOptionsPluginHostEventEmitter.d.ts.map +1 -0
  29. package/dist/{options-plugin-host → options/options-plugin-host}/tier-options/TierOptionsPluginHostEventTarget.d.ts +3 -3
  30. package/dist/options/options-plugin-host/tier-options/TierOptionsPluginHostEventTarget.d.ts.map +1 -0
  31. package/dist/{options-plugin-host → options/options-plugin-host}/tier-options/createTierOptionsPluginHost.d.ts +12 -10
  32. package/dist/options/options-plugin-host/tier-options/createTierOptionsPluginHost.d.ts.map +1 -0
  33. package/dist/options/options-plugin-host/tier-options/index.d.ts.map +1 -0
  34. package/dist/options/plugins/index.d.ts.map +1 -0
  35. package/dist/{plugins → options/plugins}/tier-mode-options/decorator.d.ts +1 -1
  36. package/dist/options/plugins/tier-mode-options/decorator.d.ts.map +1 -0
  37. package/dist/options/plugins/tier-mode-options/plugin.d.ts +3 -0
  38. package/dist/options/plugins/tier-mode-options/plugin.d.ts.map +1 -0
  39. package/dist/{plugins → options/plugins}/tier-mode-options/type.d.ts +4 -4
  40. package/dist/options/plugins/tier-mode-options/type.d.ts.map +1 -0
  41. package/dist/options/plugins/tier-mode-options-plugin.d.ts.map +1 -0
  42. package/dist/{plugins → options/plugins}/tier-options/decorator.d.ts +1 -1
  43. package/dist/options/plugins/tier-options/decorator.d.ts.map +1 -0
  44. package/dist/{plugins → options/plugins}/tier-options/plugin.d.ts +1 -1
  45. package/dist/options/plugins/tier-options/plugin.d.ts.map +1 -0
  46. package/dist/{plugins → options/plugins}/tier-options/type.d.ts +4 -4
  47. package/dist/options/plugins/tier-options/type.d.ts.map +1 -0
  48. package/dist/options/plugins/tier-options-plugin.d.ts.map +1 -0
  49. package/dist/plugin-host/PluginHost.d.ts +21 -13
  50. package/dist/plugin-host/PluginHost.d.ts.map +1 -1
  51. package/dist/plugin-host/PluginHostEventEmitter.d.ts +21 -13
  52. package/dist/plugin-host/PluginHostEventEmitter.d.ts.map +1 -1
  53. package/dist/plugin-host/PluginHostEventTarget.d.ts +21 -13
  54. package/dist/plugin-host/PluginHostEventTarget.d.ts.map +1 -1
  55. package/dist/plugin-host/createPluginHost.d.ts +22 -14
  56. package/dist/plugin-host/createPluginHost.d.ts.map +1 -1
  57. package/dist/plugin-host/decorator.d.ts +59 -62
  58. package/dist/plugin-host/decorator.d.ts.map +1 -1
  59. package/dist/plugin-host/type.d.ts +21 -8
  60. package/dist/plugin-host/type.d.ts.map +1 -1
  61. package/dist/plugin-manager/ExtendManager.d.ts +66 -0
  62. package/dist/plugin-manager/ExtendManager.d.ts.map +1 -0
  63. package/dist/plugin-manager/IExtend.d.ts +64 -0
  64. package/dist/plugin-manager/IExtend.d.ts.map +1 -0
  65. package/dist/plugin-manager/IPlugin.d.ts +13 -4
  66. package/dist/plugin-manager/IPlugin.d.ts.map +1 -1
  67. package/dist/plugin-manager/PluginExtendManager.d.ts +92 -0
  68. package/dist/plugin-manager/PluginExtendManager.d.ts.map +1 -0
  69. package/dist/plugin-manager/PluginManager.d.ts +14 -14
  70. package/dist/plugin-manager/PluginManager.d.ts.map +1 -1
  71. package/dist/plugin-manager/index.d.ts +5 -1
  72. package/dist/plugin-manager/index.d.ts.map +1 -1
  73. package/dist/plugin-manager/mixin.d.ts.map +1 -0
  74. package/package.json +4 -3
  75. package/dist/extend/extend.d.ts +0 -214
  76. package/dist/extend/extend.d.ts.map +0 -1
  77. package/dist/extend/index.d.ts +0 -3
  78. package/dist/extend/index.d.ts.map +0 -1
  79. package/dist/extend/mixin.d.ts.map +0 -1
  80. package/dist/options-manager/ModeOptions.d.ts.map +0 -1
  81. package/dist/options-manager/OptionsManager.d.ts.map +0 -1
  82. package/dist/options-manager/TierModeOptions.d.ts.map +0 -1
  83. package/dist/options-manager/TierOptions.d.ts.map +0 -1
  84. package/dist/options-manager/defaultOptions.d.ts.map +0 -1
  85. package/dist/options-manager/index.d.ts.map +0 -1
  86. package/dist/options-manager/tools.d.ts.map +0 -1
  87. package/dist/options-plugin-host/index.d.ts.map +0 -1
  88. package/dist/options-plugin-host/tier-mode-options/TierModeOptionsPluginHost.d.ts.map +0 -1
  89. package/dist/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventEmitter.d.ts.map +0 -1
  90. package/dist/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventTarget.d.ts.map +0 -1
  91. package/dist/options-plugin-host/tier-mode-options/createTierModeOptionsPluginHost.d.ts.map +0 -1
  92. package/dist/options-plugin-host/tier-mode-options/index.d.ts.map +0 -1
  93. package/dist/options-plugin-host/tier-mode-options/type.d.ts.map +0 -1
  94. package/dist/options-plugin-host/tier-options/TierOptionsPluginHost.d.ts.map +0 -1
  95. package/dist/options-plugin-host/tier-options/TierOptionsPluginHostEventEmitter.d.ts.map +0 -1
  96. package/dist/options-plugin-host/tier-options/TierOptionsPluginHostEventTarget.d.ts.map +0 -1
  97. package/dist/options-plugin-host/tier-options/createTierOptionsPluginHost.d.ts.map +0 -1
  98. package/dist/options-plugin-host/tier-options/index.d.ts.map +0 -1
  99. package/dist/plugins/index.d.ts.map +0 -1
  100. package/dist/plugins/tier-mode-options/decorator.d.ts.map +0 -1
  101. package/dist/plugins/tier-mode-options/plugin.d.ts +0 -3
  102. package/dist/plugins/tier-mode-options/plugin.d.ts.map +0 -1
  103. package/dist/plugins/tier-mode-options/type.d.ts.map +0 -1
  104. package/dist/plugins/tier-mode-options-plugin.d.ts.map +0 -1
  105. package/dist/plugins/tier-options/decorator.d.ts.map +0 -1
  106. package/dist/plugins/tier-options/plugin.d.ts.map +0 -1
  107. package/dist/plugins/tier-options/type.d.ts.map +0 -1
  108. package/dist/plugins/tier-options-plugin.d.ts.map +0 -1
  109. /package/dist/{options-manager → options/options-manager}/ModeOptions.d.ts +0 -0
  110. /package/dist/{options-manager → options/options-manager}/OptionsManager.d.ts +0 -0
  111. /package/dist/{options-manager → options/options-manager}/TierModeOptions.d.ts +0 -0
  112. /package/dist/{options-manager → options/options-manager}/TierOptions.d.ts +0 -0
  113. /package/dist/{options-manager → options/options-manager}/defaultOptions.d.ts +0 -0
  114. /package/dist/{options-manager → options/options-manager}/index.d.ts +0 -0
  115. /package/dist/{options-manager → options/options-manager}/tools.d.ts +0 -0
  116. /package/dist/{options-plugin-host → options/options-plugin-host}/index.d.ts +0 -0
  117. /package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/index.d.ts +0 -0
  118. /package/dist/{options-plugin-host → options/options-plugin-host}/tier-mode-options/type.d.ts +0 -0
  119. /package/dist/{options-plugin-host → options/options-plugin-host}/tier-options/index.d.ts +0 -0
  120. /package/dist/{plugins → options/plugins}/index.d.ts +0 -0
  121. /package/dist/{plugins → options/plugins}/tier-mode-options-plugin.d.ts +0 -0
  122. /package/dist/{plugins → options/plugins}/tier-options-plugin.d.ts +0 -0
  123. /package/dist/{extend → plugin-manager}/mixin.d.ts +0 -0
@@ -1 +1 @@
1
- (function(s,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("deepmerge-ts"),require("@gby/destroyable")):typeof define=="function"&&define.amd?define(["exports","deepmerge-ts","@gby/destroyable"],h):(s=typeof globalThis<"u"?globalThis:s||self,h(s.PluginTls={},s.deepmergeTs,s.destroyable))})(this,(function(s,h,O){"use strict";function c(n,...t){for(const e of t){const i=Object.getOwnPropertyDescriptors(e);Object.defineProperties(n,i)}return n}function S(n,t){return t}function j(){return function(t,e){return e}}function W(n,t){return c(n,t),t}function A(n){return function(e){return c(n,e),e}}function f(n,t){return c(n,t),n}function k(n){return function(e){return c(n,e),n}}function q(n,t){return t}function m(n,t){c(n.prototype,t);const e=t._constructor;typeof e=="function"&&(n._constructors??(n._constructors=[])).push(e);const i=t._destroy;return typeof i=="function"&&(n._destroys??(n._destroys=[])).push(i),t}function z(n){return function(e){return m(n,e),e}}function w(n,t){return m(n,t),n}function B(n){return function(e){return m(n,e),n}}function _(n,t,e){for(const i of n)i.apply(t,e)}function $(n){return{constructed:function(t,e){_(n._constructors??[],t,e)},initialized:function(t,e){_(n._inits??[],t,e)},destroyed:function(t,e){_(n._destroys??[],t,e)}}}function K(n,t){return t}function y(n,t){m(n,t);const e=t._init;return typeof e=="function"&&(n._inits??(n._inits=[])).push(e),t}function R(n){return function(e){return y(n,e),e}}function G(n,t){return y(n,t),n}function J(n){return function(e){return y(n,e),n}}class l extends O.Destroyable{host;plugins=new Map;constructor(t){super(),t&&(this.host=t)}destroyThis(){return this.plugins.clear(),super.destroyThis()}use(t,...e){const{plugins:i}=this;if(i.has(t))return i.get(t);const o=t.onUse(this.host,...e);return i.set(t,o),o}async onCreate(t,...e){for(const[i]of this.plugins){const o=i.onCreate?.(t,...e);o instanceof Promise&&await o}}async onInit(t,...e){for(const[i]of this.plugins){const o=i.onInit?.(t,...e);o instanceof Promise&&await o}}async onDestroy(t){for(const[e]of this.plugins){const i=e.onDestroy?.(t);i instanceof Promise&&await i}}instUse(t,e,...i){const{plugins:o}=this;if(o.has(e))return o.get(e);const r=this.use(e,...i);return e.onCreate?.(t),r}}function Q(n,t){const e=t??"defaultOptions",i=`_${e}`;return function(r){const u=f(r,{get[e](){return n}});w(u,{get[e](){return this[i]||(this[i]=structuredClone(u.defaultOptions))}})}}function X(n,t,e){const i=`_${t}`;return w(n,{get[t](){return this[i]||(this[i]=structuredClone(n[t]))}}),e}function b(n){const t=n.split(".");return t[0]===""&&t.shift(),t}function P(n,t){for(const e of t)if(n=n[e],n==null)return;return n}function Y(n,t){return P(n,b(t))}function v(n,t,e){const i=t.pop(),o=t.length;let r=0;for(;r<o;){const u=n[t[r]];if(u==null)break;n=u,r++}t=t.slice(r);for(const u of t)n=n[u]={};return n[i]=e,n}function Z(n,t,e){return v(n,b(t),e)}const E={UndefinedAndNull:function(t){return t==null},Undefined:function(t){return t===void 0},Null:function(t){return t===null}};class N{freezeMember=!0;fullOption=new Proxy(this,{get:function(t,e,i){const o=t.plainFullOption[e];return t.freezeMember?Object.freeze(o):o},set:function(t,e,i,o){return t.setMember(e,i,!1),!0},has:function(t,e){return e in t.plainFullOption},getOwnPropertyDescriptor:function(t,e){return Object.getOwnPropertyDescriptor(t.plainFullOption,e)},ownKeys:function(t){return Reflect.ownKeys(t.plainFullOption)},deleteProperty:function(t,e){return t.setMember(e,void 0),!0},defineProperty:function(t,e,i){return Object.defineProperty(t.option,e,i),!0}});setOption(t,e){const i=e?h.deepmergeInto(this.option,t):Object.assign(this.option,t);return this.updateFullOption(),i}get undefinedValue(){return this._undefinedValue}set undefinedValue(t){this._undefinedValue=t,this.isUndefined=E[t]||E.UndefinedAndNull}_undefinedValue="UndefinedAndNull";isUndefined=E.UndefinedAndNull;getMember(t){return this.option[t]}setMember(t,e,i){const o=this.option;if(e===void 0)delete o[t];else{const r=o[t];i&&r&&typeof r=="object"?h.deepmergeInto(r,e):o[t]=e}this.updateFullOption()}getValue(t){return P(this.option,t)}setValue(t,e,i){const o=this.option;let r;i&&(r=P(o,t))&&typeof r=="object"?h.deepmergeInto(r,e):v(this.option,t,e),this.updateFullOption()}}class a extends N{constructor(t,e){super(),t&&(this.option=t),e&&(this.extends=e)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;option={};get plainFullOption(){let t=this._plainFullOption;if(t)return t;const{extends:e,option:i}=this;if(t=i,e){const o=e.plainFullOption;t=h.deepmerge(o,i)}return this._plainFullOption=t}_plainFullOption=null;updateFullOption(){this._plainFullOption=null}getMember(t){const e=this.option[t];if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const e=super.getValue(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getValue(t)}}function L(n,t){const{name:e}=t,i=`_${e}`;return{get:function(){return this[i]||(this[i]=new a(void 0,this.constructor[e]))}}}class I extends N{constructor(t,e){super(),e&&this.setModeOption(t,e),this.mode=t}modes={};get mode(){return this._mode||(this.mode=this.modeNames[0])}set mode(t){this._mode=t,this.hasMode(t)||this.setModeOption(t,{}),this.updateFullOption()}_mode;get modeNames(){return this._modeNames||(this._modeNames=this.getModeNames())}_modeNames=null;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))}_plainFullOption=null;updateFullOption(){this._plainFullOption=null,this._modeNames=null}getModeOption(t){return this.modes[t].option}getFullModeOption(t){return this.modes[t]?.plainFullOption}setModeOption(t,e,i,o){const{modes:r}=this,u=r[t]||(r[t]=new a);if(u.setOption(e,i),o){const p=r[o];p&&(u.extends=p)}return this.updateFullOption(),u}}class d extends I{constructor(t,e,i){super(t,e),i&&(this.extends=i)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;getFullModeOption(t){const{modes:e,extends:i}=this,o=e[t]?.plainFullOption;if(i){const r=i.getFullModeOption(t);return o?h.deepmerge(r,o):r}return o}getModeNames(){const{modes:t,extends:e}=this,i=Object.keys(t);if(!e)return i;const o=e.getModeNames();return[...new Set([...i,...o])]}hasModeOnTier(t){if(this.hasMode(t))return!0;const e=this.extends;return e?e.hasModeOnTier(t):!1}get optionManager(){return this.getModeOptionManager(this.mode)}getModeOptionManager(t){const e=this.modes[t];return e||(this.extends?.getModeOptionManager(t)?this.setModeOption(t,{}):null)}getMember(t){const e=this.optionManager.getMember(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const e=this.optionManager.getValue(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getValue(t)}}function tt(n,t){const{name:e}=t,i=`_${e}`;return{get:function(){return this[i]||(this[i]=new d(this.constructor[e].mode,void 0,this.constructor[e]))}}}class x extends O.Destroyable{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new l(this)),this._pluginManager}static _pluginManager=new l(this);get pluginManager(){return this.constructor.pluginManager}static use(t,...e){return this.pluginManager.use(t,...e)}use(t,...e){return this.pluginManager.instUse(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}async destroyThis(){return await this.pluginManager.onDestroy(this),super.destroyThis()}}class F extends O.DestroyableEventEmitter{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new l(this)),this._pluginManager}static _pluginManager=new l(this);get pluginManager(){return this.constructor.pluginManager}static use(t,...e){return this.pluginManager.use(t,...e)}use(t,...e){return this.pluginManager.instUse(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}async destroyThis(){return await this.pluginManager.onDestroy(this),super.destroyThis()}}class H extends O.DestroyableEventTarget{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new l(this)),this._pluginManager}static _pluginManager=new l(this);get pluginManager(){return this.constructor.pluginManager}static use(t,...e){return this.pluginManager.use(t,...e)}use(t,...e){return this.pluginManager.instUse(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}async destroyThis(){return await this.pluginManager.onDestroy(this),super.destroyThis()}}function D(n){const t=O.createDestroyableSubClass(n);return class extends t{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new l(this)),this._pluginManager}static _pluginManager=new l(this);get pluginManager(){return this.constructor.pluginManager}static use(i,...o){return this.pluginManager.use(i,...o)}use(i,...o){return this.pluginManager.instUse(this,i,...o)}init(...i){return this.pluginManager.onInit(this,...i)}async destroyThis(){return await this.pluginManager.onDestroy(this),super.destroyThis()}}}function V(n){const t=f(n,{isolatedPluginManager:!1,get pluginManager(){return(!this._pluginManager||this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager"))&&(this._pluginManager=new l(this)),this._pluginManager},use(e,...i){return this.pluginManager.use(e,...i)}});return f(t.prototype,{get pluginManager(){return this.constructor.pluginManager},use(e,...i){return this.pluginManager.instUse(this,e,...i)},async init(...e){return super.init&&await super.init(...e),this.pluginManager.onInit(this,...e)},async destroy(){if(await this.pluginManager.onDestroy(this),super.destroy)return super.destroy()}}),n}function et(n){const t=V(n);return new Proxy(t,{construct:function(e,i,o){const r=new e(...i);return t.pluginManager.onCreate(this,...i),r}})}function nt(n){return class extends n{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new l(this)),this._pluginManager}static _pluginManager=new l(this);get pluginManager(){return this.constructor.pluginManager}static use(e,...i){return this.pluginManager.use(e,...i)}constructor(...e){super(...e),this.pluginManager.onCreate(this,...e)}use(e,...i){return this.pluginManager.instUse(this,e,...i)}async init(...e){return super.init&&await super.init(...e),this.pluginManager.onInit(this,...e)}async destroy(){if(await this.pluginManager.onDestroy(this),super.destroy)return super.destroy()}}}class it extends x{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}class st extends F{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}class ot extends H{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}function rt(n){const t=D(n);return class extends t{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(i){super(),this.defaultOptions.option=i}}}const g="common";class ut extends x{static modeOptions=new d(g);get modeOptions(){return this._modeOptions||(this._modeOptions=new d(g,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}class at extends F{static modeOptions=new d(g);get modeOptions(){return this._modeOptions||(this._modeOptions=new d(g,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}class dt extends H{static modeOptions=new d(g);get modeOptions(){return this._modeOptions||(this._modeOptions=new d(g,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}function lt(n){const t=D(n);return class extends t{static modeOptions=new d(g);get modeOptions(){return this._modeOptions||(this._modeOptions=new d(g,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(i){this.modeOptions.mode=i}get options(){return this.modeOptions.plainFullOption}constructor(i){super(),this.modeOptions.setOption(i)}}}function U(n,t){const e=[{target:n,props:t}];let i;for(;i=e.shift();){const{target:o,props:r}=i;for(const[u,p]of Object.entries(r)){if(p!=null&&typeof p=="object"&&(!p.constructor||p.constructor===Object)){e.push({target:o[u],props:p});continue}o[u]=p}}return n}function C(n,t){const e={},i=[{target:n,props:t,targetProps:e}];let o;for(;o=i.shift();){const{target:r,props:u,targetProps:p}=o;for(const[T,M]of Object.entries(u)){if(M!=null&&typeof M=="object"&&(!M.constructor||M.constructor===Object)){i.push({target:r[T],props:M,targetProps:p[T]={}});continue}p[T]=r[T]}}return e}function pt(n,t){const e=C(n,t);function i(){U(n,t)}function o(){U(n,e)}return{set:i,unset:o}}function ct(n,t,e){const i=f(n,{modeOptions:new d(t,e)});return f(i.prototype,{get modeOptions(){return this._modeOptions||(this._modeOptions=new d(t,void 0,this.constructor.modeOptions))},get mode(){return this.modeOptions.mode},set mode(o){this.modeOptions.mode=o},get options(){return this.modeOptions.fullOption}}),n}const gt={onUse(n,t,e){const i=t??g;c(n,{modeOptions:new d(i,void 0,e)}),c(n.prototype,{get modeOptions(){const o=this,r=n;return o._modeOptions||(o._modeOptions=new d(r.modeOptions.mode,void 0,r.modeOptions))},get mode(){return this.modeOptions.mode},set mode(o){const r=this;r.modeOptions.mode=o},get options(){return this.modeOptions.plainFullOption}})},onCreate(n,t){n.modeOptions.setOption(t)}},ht={onUse(n,t,e){c(n,{defaultOptions:new a(t,e)}),c(n.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,n.defaultOptions))}})},onCreate(n,t){n.defaultOptions.option=t}};function ft(n,t){const e=f(n,{defaultOptions:new a(t)});return f(e.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}}),n}s.ModeOptions=I,s.PluginHost=x,s.PluginHostEventEmitter=F,s.PluginHostEventTarget=H,s.PluginManager=l,s.TierModeOptions=d,s.TierModeOptionsPluginHost=ut,s.TierModeOptionsPluginHostEventEmitter=at,s.TierModeOptionsPluginHostEventTarget=dt,s.TierOptions=a,s.TierOptionsPluginHost=it,s.TierOptionsPluginHostEventEmitter=st,s.TierOptionsPluginHostEventTarget=ot,s.addDefaultOptions=Q,s.addInstOptions=X,s.allFunctionApply=_,s.becomePluginHost=V,s.becomePluginHost_Extends=nt,s.becomePluginHost_Proxy=et,s.becomeTierModeOptionsHost=ct,s.becomeTierOptionsHost=ft,s.commonModeName=g,s.createCallerOfPrivateMemberOfExtend=$,s.createDefineMixin=j,s.createExtendTarget=B,s.createExtendTargetWithInit=J,s.createMixinTarget=k,s.createPluginHost=D,s.createPropertySetter=pt,s.createTargetExtend=z,s.createTargetExtendWithInit=R,s.createTargetMixin=A,s.createTierModeOptionsPluginHost=lt,s.createTierOptionsPluginHost=rt,s.defineExtend=q,s.defineExtendWithInit=K,s.defineMixin=S,s.extendTarget=w,s.extendTargetWithInit=G,s.getPropertyValue=P,s.getPropertyValueByPath=Y,s.getTargetProperties=C,s.mergeProperties=U,s.mixin=c,s.mixinTarget=f,s.parsePropertyPath=b,s.setPropertyValue=v,s.setPropertyValueByPath=Z,s.targetExtend=m,s.targetExtendWithInit=y,s.targetMixin=W,s.tierModeOptionsDecorator=tt,s.tierModeOptionsPlugin=gt,s.tierOptionsDecorator=L,s.tierOptionsPlugin=ht,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(r,g){typeof exports=="object"&&typeof module<"u"?g(exports,require("@gby/destroyable"),require("com-tools"),require("deepmerge-ts")):typeof define=="function"&&define.amd?define(["exports","@gby/destroyable","com-tools","deepmerge-ts"],g):(r=typeof globalThis<"u"?globalThis:r||self,g(r.PluginTls={},r.destroyable,r.comTools,r.deepmergeTs))})(this,(function(r,g,O,m){"use strict";function c(i,...t){for(const e of t){const n=Object.getOwnPropertyDescriptors(e);Object.defineProperties(i,n)}return i}function I(i,t){return t}function S(){return function(t,e){return e}}function j(i,t){return c(i,t),t}function q(i){return function(e){return c(i,e),e}}function h(i,t){return c(i,t),i}function A(i){return function(e){return c(i,e),i}}const B=["onCreate","onInit","onDestroy"];function w(i){const t={...i};for(const e of B)typeof t[e]=="function"&&delete t[e];return t}function $(i,t){return t}function U(i){return i&&typeof i.onUse=="function"}class z extends g.Destroyable{host;plugins=new Map;constructor(t){super(),t&&(this.host=t)}destroyThis(){return this.plugins.clear(),this.host=null,super.destroyThis()}use(t,...e){const{plugins:n}=this;if(n.has(t))return n.get(t);const s=t.onUse(this.host,...e);return n.set(t,s),s}instUse(t,e,...n){const{plugins:s}=this;if(s.has(e))return s.get(e);const o=this.use(e,...n);return e.onCreate?.(t),o}onCreate(t,...e){const n=[];for(const[s]of this.plugins)s.onCreate&&n.push(s.onCreate.bind(s));return O.serialCallFuns(n,void 0,[t,...e])}onInit(t,...e){const n=[];for(const[s]of this.plugins)s.onInit&&n.push(s.onInit.bind(s));return O.serialCallFuns(n,void 0,[t,...e])}onDestroy(t){const e=[];for(const[n]of this.plugins)n.onDestroy&&e.push(n.onDestroy.bind(n));return e.reverse(),O.serialCallFuns(e,void 0,[t])}}class K extends g.Destroyable{host;plugins=new Set;constructor(t){super(),t&&(this.host=t)}destroyThis(){return this.plugins.clear(),this.host=null,super.destroyThis()}use(t){const{plugins:e}=this;return e.has(t)?!1:(c(this.host.prototype,w(t)),e.add(t),!0)}instUse(t,e,...n){const{plugins:s}=this;return s.has(e)?!1:(this.use(e),e.onCreate?.call(t,t,...n),!0)}onCreate(t,...e){const n=[];for(const s of this.plugins)s.onCreate&&n.push(s.onCreate);return O.serialCallFuns(n,t,[t,...e])}onInit(t,...e){const n=[];for(const s of this.plugins)s.onInit&&n.push(s.onInit);return O.serialCallFuns(n,t,[t,...e])}onDestroy(t){const e=[];for(const n of this.plugins)n.onDestroy&&e.push(n.onDestroy);return e.reverse(),O.serialCallFuns(e,t,[t])}}const M=Symbol("extend");class p extends g.Destroyable{host;plugins=new Map;constructor(t){super(),t&&(this.host=t)}destroyThis(){return this.plugins.clear(),this.host=null,super.destroyThis()}isPlugin(t){const{plugins:e}=this;return e.has(t)?e.get(t)!==M:U(t)}useExtend(t){const{plugins:e}=this;return e.has(t)?!1:(c(this.host.prototype,w(t)),e.set(t,M),!0)}instUseExtend(t,e,...n){const{plugins:s}=this;return s.has(e)?!1:(this.useExtend(e),e.onCreate?.call(t,t,...n),!0)}usePlugin(t,...e){const{plugins:n}=this;if(n.has(t))return n.get(t);const s=t.onUse(this.host,...e);return n.set(t,s),s}instUsePlugin(t,e,...n){const{plugins:s}=this;if(s.has(e))return s.get(e);const o=this.usePlugin(e,...n);return e.onCreate?.(t),o}onCreate(t,...e){const n=[];for(const[s,o]of this.plugins)if(s.onCreate){const u=o===M?s.onCreate:s.onCreate.bind(s);n.push(u)}return O.serialCallFuns(n,t,[t,...e])}onInit(t,...e){const n=[];for(const[s,o]of this.plugins)if(s.onInit){const u=o===M?s.onInit:s.onInit.bind(s);n.push(u)}return O.serialCallFuns(n,t,[t,...e])}onDestroy(t){const e=[];for(const[n,s]of this.plugins)if(n.onDestroy){const o=s===M?n.onDestroy:n.onDestroy.bind(n);e.push(o)}return e.reverse(),O.serialCallFuns(e,t,[t])}}function R(i,t){const e=t??"defaultOptions",n=`_${e}`;return function(o){const u=h(o,{get[e](){return i}});h(u.prototype,{get[e](){return this[n]||(this[n]=structuredClone(u.defaultOptions))}})}}function W(i,t,e){const n=`_${t}`;return h(i.prototype,{get[t](){return this[n]||(this[n]=structuredClone(i[t]))}}),e}function x(i){const t=i.split(".");return t[0]===""&&t.shift(),t}function y(i,t){for(const e of t)if(i=i[e],i==null)return;return i}function G(i,t){return y(i,x(t))}function T(i,t,e){const n=t.pop(),s=t.length;let o=0;for(;o<s;){const u=i[t[o]];if(u==null)break;i=u,o++}t=t.slice(o);for(const u of t)i=i[u]={};return i[n]=e,i}function J(i,t,e){return T(i,x(t),e)}const E={UndefinedAndNull:function(t){return t==null},Undefined:function(t){return t===void 0},Null:function(t){return t===null}};class C{freezeMember=!0;fullOption=new Proxy(this,{get:function(t,e,n){const s=t.plainFullOption[e];return t.freezeMember?Object.freeze(s):s},set:function(t,e,n,s){return t.setMember(e,n,!1),!0},has:function(t,e){return e in t.plainFullOption},getOwnPropertyDescriptor:function(t,e){return Object.getOwnPropertyDescriptor(t.plainFullOption,e)},ownKeys:function(t){return Reflect.ownKeys(t.plainFullOption)},deleteProperty:function(t,e){return t.setMember(e,void 0),!0},defineProperty:function(t,e,n){return Object.defineProperty(t.option,e,n),!0}});setOption(t,e){const n=e?m.deepmergeInto(this.option,t):Object.assign(this.option,t);return this.updateFullOption(),n}get undefinedValue(){return this._undefinedValue}set undefinedValue(t){this._undefinedValue=t,this.isUndefined=E[t]||E.UndefinedAndNull}_undefinedValue="UndefinedAndNull";isUndefined=E.UndefinedAndNull;getMember(t){return this.option[t]}setMember(t,e,n){const s=this.option;if(e===void 0)delete s[t];else{const o=s[t];n&&o&&typeof o=="object"?m.deepmergeInto(o,e):s[t]=e}this.updateFullOption()}getValue(t){return y(this.option,t)}setValue(t,e,n){const s=this.option;let o;n&&(o=y(s,t))&&typeof o=="object"?m.deepmergeInto(o,e):T(this.option,t,e),this.updateFullOption()}}class a extends C{constructor(t,e){super(),t&&(this.option=t),e&&(this.extends=e)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;option={};get plainFullOption(){let t=this._plainFullOption;if(t)return t;const{extends:e,option:n}=this;if(t=n,e){const s=e.plainFullOption;t=m.deepmerge(s,n)}return this._plainFullOption=t}_plainFullOption=null;updateFullOption(){this._plainFullOption=null}getMember(t){const e=this.option[t];if(!this.isUndefined(e))return e;const n=this.extends;if(n)return n.getMember(t)}getValue(t){const e=super.getValue(t);if(!this.isUndefined(e))return e;const n=this.extends;if(n)return n.getValue(t)}}function L(i,t){const{name:e}=t,n=`_${e}`;return{get:function(){return this[n]||(this[n]=new a(void 0,this.constructor[e]))}}}class N extends C{constructor(t,e){super(),e&&this.setModeOption(t,e),this.mode=t}modes={};get mode(){return this._mode||(this.mode=this.modeNames[0])}set mode(t){this._mode=t,this.hasMode(t)||this.setModeOption(t,{}),this.updateFullOption()}_mode;get modeNames(){return this._modeNames||(this._modeNames=this.getModeNames())}_modeNames=null;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))}_plainFullOption=null;updateFullOption(){this._plainFullOption=null,this._modeNames=null}getModeOption(t){return this.modes[t].option}getFullModeOption(t){return this.modes[t]?.plainFullOption}setModeOption(t,e,n,s){const{modes:o}=this,u=o[t]||(o[t]=new a);if(u.setOption(e,n),s){const d=o[s];d&&(u.extends=d)}return this.updateFullOption(),u}}class l extends N{constructor(t,e,n){super(t,e),n&&(this.extends=n)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;getFullModeOption(t){const{modes:e,extends:n}=this,s=e[t]?.plainFullOption;if(n){const o=n.getFullModeOption(t);return s?m.deepmerge(o,s):o}return s}getModeNames(){const{modes:t,extends:e}=this,n=Object.keys(t);if(!e)return n;const s=e.getModeNames();return[...new Set([...n,...s])]}hasModeOnTier(t){if(this.hasMode(t))return!0;const e=this.extends;return e?e.hasModeOnTier(t):!1}get optionManager(){return this.getModeOptionManager(this.mode)}getModeOptionManager(t){const e=this.modes[t];return e||(this.extends?.getModeOptionManager(t)?this.setModeOption(t,{}):null)}getMember(t){const e=this.optionManager.getMember(t);if(!this.isUndefined(e))return e;const n=this.extends;if(n)return n.getMember(t)}getValue(t){const e=this.optionManager.getValue(t);if(!this.isUndefined(e))return e;const n=this.extends;if(n)return n.getValue(t)}}function Q(i,t){const{name:e}=t,n=`_${e}`;return{get:function(){return this[n]||(this[n]=new l(this.constructor[e].mode,void 0,this.constructor[e]))}}}class b extends g.Destroyable{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new p(this)),this._pluginManager}static _pluginManager=new p(this);get pluginManager(){return this.constructor.pluginManager}static usePlugin(t,...e){return this.pluginManager.usePlugin(t,...e)}static useExtend(t){return this.pluginManager.useExtend(t)}usePlugin(t,...e){return this.pluginManager.instUsePlugin(this,t,...e)}useExtend(t,...e){return this.pluginManager.instUseExtend(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}destroyThis(){const t=this.pluginManager.onDestroy(this);return t instanceof Promise?t.finally(()=>super.destroyThis()):super.destroyThis()}}class v extends g.DestroyableEventEmitter{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new p(this)),this._pluginManager}static _pluginManager=new p(this);get pluginManager(){return this.constructor.pluginManager}static usePlugin(t,...e){return this.pluginManager.usePlugin(t,...e)}static useExtend(t){return this.pluginManager.useExtend(t)}usePlugin(t,...e){return this.pluginManager.instUsePlugin(this,t,...e)}useExtend(t,...e){return this.pluginManager.instUseExtend(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}destroyThis(){const t=this.pluginManager.onDestroy(this);return t instanceof Promise?t.finally(()=>super.destroyThis()):super.destroyThis()}}class F extends g.DestroyableEventTarget{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new p(this)),this._pluginManager}static _pluginManager=new p(this);get pluginManager(){return this.constructor.pluginManager}static usePlugin(t,...e){return this.pluginManager.usePlugin(t,...e)}static useExtend(t){return this.pluginManager.useExtend(t)}usePlugin(t,...e){return this.pluginManager.instUsePlugin(this,t,...e)}useExtend(t,...e){return this.pluginManager.instUseExtend(this,t,...e)}init(...t){return this.pluginManager.onInit(this,...t)}destroyThis(){const t=this.pluginManager.onDestroy(this);return t instanceof Promise?t.finally(()=>super.destroyThis()):super.destroyThis()}}function H(i){const t=g.createDestroyableSubClass(i);return class extends t{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new p(this)),this._pluginManager}static _pluginManager=new p(this);get pluginManager(){return this.constructor.pluginManager}static usePlugin(n,...s){return this.pluginManager.usePlugin(n,...s)}static useExtend(n){return this.pluginManager.useExtend(n)}usePlugin(n,...s){return this.pluginManager.instUsePlugin(this,n,...s)}useExtend(n,...s){return this.pluginManager.instUseExtend(this,n,...s)}init(...n){return this.pluginManager.onInit(this,...n)}destroyThis(){const n=this.pluginManager.onDestroy(this);return n instanceof Promise?n.finally(()=>super.destroyThis()):super.destroyThis()}}}function V(i){const t=h(i,{isolatedPluginManager:!1,get pluginManager(){return(!this._pluginManager||this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager"))&&(this._pluginManager=new p(this)),this._pluginManager},usePlugin(e,...n){return this.pluginManager.usePlugin(e,...n)},useExtend(e){return this.pluginManager.useExtend(e)}});return h(t.prototype,{get pluginManager(){return this.constructor.pluginManager},usePlugin(e,...n){return this.pluginManager.instUsePlugin(this,e,...n)},useExtend(e,...n){return this.pluginManager.instUseExtend(this,e,...n)},async init(...e){return super.init&&await super.init(...e),this.pluginManager.onInit(this,...e)},async destroy(){if(await this.pluginManager.onDestroy(this),super.destroy)return super.destroy()}}),i}function X(i){const t=V(i);return new Proxy(t,{construct:function(e,n,s){const o=new e(...n);return t.pluginManager.onCreate(this,...n),o}})}function Y(i){return class extends i{static isolatedPluginManager=!1;static get pluginManager(){return this.isolatedPluginManager&&!this.hasOwnProperty("_pluginManager")&&(this._pluginManager=new p(this)),this._pluginManager}static _pluginManager=new p(this);get pluginManager(){return this.constructor.pluginManager}static usePlugin(e,...n){return this.pluginManager.usePlugin(e,...n)}static useExtend(e){return this.pluginManager.useExtend(e)}constructor(...e){super(...e),this.pluginManager.onCreate(this,...e)}usePlugin(e,...n){return this.pluginManager.instUsePlugin(this,e,...n)}useExtend(e,...n){return this.pluginManager.instUseExtend(this,e,...n)}init(...e){if(super.init){const n=super.init(...e);if(n instanceof Promise)return n.then(()=>this.pluginManager.onInit(this,...e))}return this.pluginManager.onInit(this,...e)}destroy(){const e=this.pluginManager.onDestroy(this);return super.destroy?e instanceof Promise?e.finally(()=>super.destroy()):super.destroy():e}}}class Z extends b{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}class tt extends v{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}class et extends F{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}function nt(i){const t=H(i);return class extends t{static defaultOptions=new a;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(n){super(),this.defaultOptions.option=n}}}const f="common";class it extends b{static modeOptions=new l(f);get modeOptions(){return this._modeOptions||(this._modeOptions=new l(f,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}class st extends v{static modeOptions=new l(f);get modeOptions(){return this._modeOptions||(this._modeOptions=new l(f,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}class rt extends F{static modeOptions=new l(f);get modeOptions(){return this._modeOptions||(this._modeOptions=new l(f,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}function ot(i){const t=H(i);return class extends t{static modeOptions=new l(f);get modeOptions(){return this._modeOptions||(this._modeOptions=new l(f,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(n){this.modeOptions.mode=n}get options(){return this.modeOptions.plainFullOption}constructor(n){super(),this.modeOptions.setOption(n)}}}function ut(i,t,e){const n=h(i,{modeOptions:new l(t,e)});return h(n.prototype,{get modeOptions(){return this._modeOptions||(this._modeOptions=new l(t,void 0,this.constructor.modeOptions))},get mode(){return this.modeOptions.mode},set mode(s){this.modeOptions.mode=s},get options(){return this.modeOptions.fullOption}}),i}const at={onUse(i,t,e){const n=t??f;c(i,{modeOptions:new l(n,void 0,e)}),c(i.prototype,{get modeOptions(){const s=this,o=i;return s._modeOptions||(s._modeOptions=new l(o.modeOptions.mode,void 0,o.modeOptions))},get mode(){return this.modeOptions.mode},set mode(s){const o=this;o.modeOptions.mode=s},get options(){return this.modeOptions.plainFullOption}})},onCreate(i,t){i.modeOptions.setOption(t)}},lt={onUse(i,t,e){c(i,{defaultOptions:new a(t,e)}),c(i.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,i.defaultOptions))}})},onCreate(i,t){i.defaultOptions.option=t}};function pt(i,t){const e=h(i,{defaultOptions:new a(t)});return h(e.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new a(void 0,this.constructor.defaultOptions))}}),i}function D(i,t){const e=[{target:i,props:t}];let n;for(;n=e.shift();){const{target:s,props:o}=n;for(const[u,d]of Object.entries(o)){if(d!=null&&typeof d=="object"&&(!d.constructor||d.constructor===Object)){e.push({target:s[u],props:d});continue}s[u]=d}}return i}function k(i,t){const e={},n=[{target:i,props:t,targetProps:e}];let s;for(;s=n.shift();){const{target:o,props:u,targetProps:d}=s;for(const[_,P]of Object.entries(u)){if(P!=null&&typeof P=="object"&&(!P.constructor||P.constructor===Object)){n.push({target:o[_],props:P,targetProps:d[_]={}});continue}d[_]=o[_]}}return e}function dt(i,t){const e=k(i,t);function n(){D(i,t)}function s(){D(i,e)}return{set:n,unset:s}}r.ExtendManager=K,r.ModeOptions=N,r.PluginExtendManager=p,r.PluginHost=b,r.PluginHostEventEmitter=v,r.PluginHostEventTarget=F,r.PluginManager=z,r.TierModeOptions=l,r.TierModeOptionsPluginHost=it,r.TierModeOptionsPluginHostEventEmitter=st,r.TierModeOptionsPluginHostEventTarget=rt,r.TierOptions=a,r.TierOptionsPluginHost=Z,r.TierOptionsPluginHostEventEmitter=tt,r.TierOptionsPluginHostEventTarget=et,r.addDefaultOptions=R,r.addInstOptions=W,r.becomePluginHost=V,r.becomePluginHost_Extends=Y,r.becomePluginHost_Proxy=X,r.becomeTierModeOptionsHost=ut,r.becomeTierOptionsHost=pt,r.commonModeName=f,r.createDefineMixin=S,r.createMixinTarget=A,r.createPluginHost=H,r.createPropertySetter=dt,r.createTargetMixin=q,r.createTierModeOptionsPluginHost=ot,r.createTierOptionsPluginHost=nt,r.defineExtend=$,r.defineMixin=I,r.extendMark=M,r.getPropertyValue=y,r.getPropertyValueByPath=G,r.getTargetProperties=k,r.isPlugin=U,r.mergeProperties=D,r.mixin=c,r.mixinTarget=h,r.parsePropertyPath=x,r.pickHostExtendMembers=w,r.setPropertyValue=T,r.setPropertyValueByPath=J,r.targetMixin=j,r.tierModeOptionsDecorator=Q,r.tierModeOptionsPlugin=at,r.tierOptionsDecorator=L,r.tierOptionsPlugin=lt,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}));
@@ -0,0 +1,4 @@
1
+ export * from "./options-manager";
2
+ export * from "./options-plugin-host";
3
+ export * from "./plugins";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,WAAW,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModeOptions.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/ModeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAQ,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AAG1C;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAEtG,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM;IASxC;;OAEG;IACH,KAAK,EAAS,MAAM,CAAC,IAAI,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/C;;OAEG;IACH,IAAI,IAAI,IAAG,IAAI,CAEd;IACD,IAAI,IAAI,CAAC,KAAK,EAHH,IAGG,EAMb;IACD,SAAS,CAAC,KAAK,CAAC,EAAC,IAAI,CAAC;IAGtB;;OAEG;IACH,IAAI,SAAS,WAEZ;IAED,SAAS,CAAC,UAAU,EAAC,IAAI,EAAE,GAAG,IAAI,CAAQ;IAG1C;;;OAGG;IACH,YAAY,IAC0B,IAAI,EAAE;IAI5C;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAC,MAAM,GAAG,MAAM;IAM5B;;OAEG;IACH,IAAI,aAAa,IAAG,WAAW,CAAC,MAAM,CAAC,CAEtC;IAID;;OAEG;IACH,IAAI,MAAM,WAET;IAED,IAAI,eAAe,WAElB;IAED,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAOhB;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAIpC;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAKxC;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,CAAC,EAAC,OAAO,EAAC,MAAM,CAAC,EAAC,IAAI;CAiBnE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionsManager.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/OptionsManager.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,oBAAY,oBAAoB;IAC5B;;OAEG;IACH,gBAAgB,qBAAqB;IACrC;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,IAAI,SAAS;CAEhB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;8BACuB,GAAG;uBAGV,GAAG;kBAGR,GAAG;CAGxC,CAAA;AAID;;GAEG;AACH,8BAAsB,cAAc,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG;IAGxD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,YAAY,UAAQ;IAEpB;;;;;OAKG;IACH,UAAU,EAiCO,MAAM,CAAC;IAGxB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,gBAAgB,IAAI,IAAI;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAQxC;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,IAAI,cAAc,CAAC,KAAK,sBAAA,EAGvB;IAED,SAAS,CAAC,eAAe,uBAAyC;IAElE;;OAEG;IACH,WAAW,UApHmC,GAAG,aAoHH;IAG9C;;;;OAIG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI;IAI7E;;;;;OAKG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO;IAiBxF;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAG;IAIjC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO;CAW1D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierModeOptions.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/TierModeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AAI9C;;;;GAIG;AACH,qBAAa,eAAe,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC;gBAE9G,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,EAAC,MAAM,CAAC,EAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC;IAQ9E;;OAEG;IACH,IAAI,OAAO,yCAEV;IACD,IAAI,OAAO,CAAC,KAAK,sCAAA,EAGhB;IACD,SAAS,CAAC,QAAQ,EAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,GAAC,IAAI,CAAQ;IAG7D;;;;;;OAMG;IACM,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAC,IAAI;IAanD;;;OAGG;IACM,YAAY,IAAG,IAAI,EAAE;IAU9B;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAC,MAAM,GAAG,MAAM,GAAE,OAAO;IAM3C;;OAEG;IACH,IAAa,aAAa,IAAG,WAAW,CAAC,MAAM,CAAC,CAE/C;IACD;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAC,IAAI,GAAE,WAAW,CAAC,MAAM,CAAC,GAAC,IAAI;IAQxD;;;;OAIG;IACM,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI;IAWtF;;;;OAIG;IACM,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAG;CAW7C;AAMD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAC,KAAK,EAC/C,KAAK,EAAE,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,EAC/C,OAAO,EAAC,6BAA6B,CAAC,IAAI,EAAC,KAAK,CAAC,GACjD,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,CAS3C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierOptions.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/TierOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAI/C,qBAAa,WAAW,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAChE,MAAM,CAAC,EAAC,MAAM,EAAC,MAAM,CAAC,EAAC,WAAW,CAAC,MAAM,CAAC;IAStD;;OAEG;IACH,IAAI,OAAO,+BAEV;IACD,IAAI,OAAO,CAAC,KAAK,4BAAA,EAGhB;IACD,SAAS,CAAC,QAAQ,EAAC,WAAW,CAAC,MAAM,CAAC,GAAC,IAAI,CAAQ;IAEnD;;OAEG;IACH,MAAM,EAAS,MAAM,CAAC;IAGtB;;;;OAIG;IACH,IAAI,eAAe,IAAG,MAAM,CAW3B;IACD,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAMhB;;;;OAIG;IACM,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAC,GAAG,GAAE,MAAM,CAAC,GAAG,CAAC,GAAC,SAAS,GAAC,IAAI;IAWhF;;;;OAIG;IACM,QAAQ,CAAC,QAAQ,EAAC,MAAM,EAAE,GAAE,GAAG;CAU3C;AASD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAC,KAAK,EAC3C,KAAK,EAAE,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,EAC/C,OAAO,EAAC,6BAA6B,CAAC,IAAI,EAAC,KAAK,CAAC,GACjD,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,CAS3C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultOptions.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/defaultOptions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAA;AAItC;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO;IACxC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B,CAAC,OAAO;IACpD,IAAI,cAAc,IAAI,OAAO,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,IAGjD,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,QAAQ,IAAI,UAmBzF;AAKD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,sBAa1I"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,SAAS,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/options/options-manager/tools.ts"],"names":[],"mappings":"AACA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAC,MAAM,YAMhD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAC,KAAK,EAAC,MAAM,EAAE,OAMvD;AAGD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAC,QAAQ,EAAC,MAAM,OAE9D;AAKD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAC,KAAK,EAAC,MAAM,EAAE,EAAC,KAAK,EAAC,GAAG,OAoBjE;AAMD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,GAAG,OAExE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/options/options-plugin-host/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA"}
@@ -1,6 +1,6 @@
1
- import type { ClassType } from "type-tls";
1
+ import type { AbstractConstructor, ClassType } from "type-tls";
2
2
  import { TierModeOptions } from "../../options-manager/TierModeOptions";
3
- import { PluginHost } from "../../plugin-host";
3
+ import { PluginHost } from "../../../plugin-host";
4
4
  /**
5
5
  * 层级模式选项插件的宿主
6
6
  * @remarks
@@ -10,7 +10,7 @@ import { PluginHost } from "../../plugin-host";
10
10
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
11
11
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
12
12
  */
13
- export declare class TierModeOptionsPluginHost<Host, HostClass = ClassType<Host>, Options extends {} = any, Mode extends string | number = string> extends PluginHost<Host, HostClass> {
13
+ export declare class TierModeOptionsPluginHost<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any, Mode extends string | number = string> extends PluginHost<Host, HostClass> {
14
14
  /**
15
15
  * 全局级别的默认选项
16
16
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierModeOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAKlD;;;;;;;;GAQG;AACH,qBAAa,yBAAyB,CAAC,IAAI,EAAC,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAC,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,CAAG,SAAQ,UAAU,CAAC,IAAI,EAAC,SAAS,CAAC;IAC5M;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,+BAAoD;IAE/E;;OAEG;IACH,IAAI,WAAW,mCAEd;IACD,SAAS,CAAC,YAAY,EAAG,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAExD,IAAI,IAAI,SAEP;IACD,IAAI,IAAI,CAAC,KAAK,MAAA,EAEb;IAED,IAAI,OAAO,YAEV;gBAGW,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,7 +1,7 @@
1
1
  import { TierModeOptions } from "../../options-manager/TierModeOptions";
2
- import { PluginHostEventEmitter } from "../../plugin-host";
3
- import type { DefaultEventMap, EventMap } from "../../plugin-host";
4
- import type { ClassType } from "type-tls";
2
+ import { PluginHostEventEmitter } from "../../../plugin-host";
3
+ import type { DefaultEventMap, EventMap } from "../../../plugin-host";
4
+ import type { AbstractConstructor, ClassType } from "type-tls";
5
5
  /**
6
6
  * 层级模式选项插件的宿主
7
7
  * @remarks
@@ -11,7 +11,7 @@ import type { ClassType } from "type-tls";
11
11
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
12
12
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
13
13
  */
14
- export declare class TierModeOptionsPluginHostEventEmitter<Host, HostClass = ClassType<Host>, Options extends {} = any, Mode extends string | number = string, EM extends EventMap<EM> = DefaultEventMap> extends PluginHostEventEmitter<Host, HostClass, EM> {
14
+ export declare class TierModeOptionsPluginHostEventEmitter<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any, Mode extends string | number = string, EM extends EventMap<EM> = DefaultEventMap> extends PluginHostEventEmitter<Host, HostClass, EM> {
15
15
  /**
16
16
  * 全局级别的默认选项
17
17
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierModeOptionsPluginHostEventEmitter.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventEmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEtE,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAG9D;;;;;;;;GAQG;AACH,qBAAa,qCAAqC,CAAC,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,EAAE,SAAS,QAAQ,CAAC,EAAE,CAAC,GAAG,eAAe,CAAE,SAAQ,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IACrR;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,+BAAoD;IAE/E;;OAEG;IACH,IAAI,WAAW,mCAEd;IACD,SAAS,CAAC,YAAY,EAAG,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAExD,IAAI,IAAI,SAEP;IACD,IAAI,IAAI,CAAC,KAAK,MAAA,EAEb;IAED,IAAI,OAAO,YAEV;gBAGW,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,6 +1,6 @@
1
1
  import { TierModeOptions } from "../../options-manager/TierModeOptions";
2
- import { PluginHostEventTarget } from "../../plugin-host";
3
- import type { ClassType } from "type-tls";
2
+ import { PluginHostEventTarget } from "../../../plugin-host";
3
+ import type { AbstractConstructor, ClassType } from "type-tls";
4
4
  /**
5
5
  * 层级模式选项插件的宿主
6
6
  * @remarks
@@ -10,7 +10,7 @@ import type { ClassType } from "type-tls";
10
10
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
11
11
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
12
12
  */
13
- export declare class TierModeOptionsPluginHostEventTarget<Host, HostClass = ClassType<Host>, Options extends {} = any, Mode extends string | number = string, EM extends Record<string, any> = Record<string, any>> extends PluginHostEventTarget<Host, HostClass, EM> {
13
+ export declare class TierModeOptionsPluginHostEventTarget<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any, Mode extends string | number = string, EM extends Record<string, any> = Record<string, any>> extends PluginHostEventTarget<Host, HostClass, EM> {
14
14
  /**
15
15
  * 全局级别的默认选项
16
16
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierModeOptionsPluginHostEventTarget.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/TierModeOptionsPluginHostEventTarget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAI9D;;;;;;;;GAQG;AACH,qBAAa,oCAAoC,CAAC,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAC,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAE,SAAQ,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IAC7R;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,+BAAoD;IAE/E;;OAEG;IACH,IAAI,WAAW,mCAEd;IACD,SAAS,CAAC,YAAY,EAAG,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAExD,IAAI,IAAI,SAEP;IACD,IAAI,IAAI,CAAC,KAAK,MAAA,EAEb;IAED,IAAI,OAAO,YAEV;gBAGW,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,5 +1,5 @@
1
1
  import { TierModeOptions } from "../../options-manager/TierModeOptions";
2
- import type { ClassType } from "type-tls";
2
+ import type { AbstractConstructor, ClassType } from "type-tls";
3
3
  /**
4
4
  * 创建带有选项机制的插件宿主类
5
5
  * @remakers
@@ -8,7 +8,7 @@ import type { ClassType } from "type-tls";
8
8
  * @returns
9
9
  */
10
10
  export declare function createTierModeOptionsPluginHost<P extends new (...args: any) => Object, Options extends {}, Mode extends string | number = string>(ParentClass: P): {
11
- new <Host, HostClass = ClassType<Host, any>>(options: Options): {
11
+ new <Host, HostClass extends AbstractConstructor<Host> = ClassType<Host, any>>(options: Options): {
12
12
  /**
13
13
  * 实例级的默认选项
14
14
  */
@@ -17,10 +17,11 @@ export declare function createTierModeOptionsPluginHost<P extends new (...args:
17
17
  get mode(): Mode;
18
18
  set mode(value: Mode);
19
19
  get options(): Options;
20
- get pluginManager(): import("../..").PluginManager<Host, HostClass>;
21
- use<P_1 extends import("../..").IPlugin<Host, HostClass>>(plugin: P_1, ...args: import("../..").PluginUseArgs<P_1>): ReturnType<P_1["onUse"]>;
22
- init(...args: any): Promise<void>;
23
- destroyThis(): Promise<void>;
20
+ get pluginManager(): import("../../..").PluginExtendManager<Host, HostClass>;
21
+ usePlugin<P_1 extends import("../../..").IPlugin<Host, HostClass>>(plugin: P_1, ...args: import("../../..").PluginUseArgs<P_1>): ReturnType<P_1["onUse"]>;
22
+ useExtend<E>(ext: import("../../..").ExtendOptions<HostClass, E>, ...args: ConstructorParameters<HostClass>): boolean;
23
+ init(...args: any): any;
24
+ destroyThis(): any;
24
25
  refCount: number;
25
26
  readonly isDestroyed: boolean;
26
27
  _isDestroyed: boolean;
@@ -36,8 +37,8 @@ export declare function createTierModeOptionsPluginHost<P extends new (...args:
36
37
  cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
37
38
  cancelDispose<T extends import("@gby/destroyable").IDestroyable>(obj: T): T;
38
39
  cancelDispose<T extends import("@gby/destroyable").IDestroyable | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
39
- destroy(): Promise<boolean>;
40
40
  destroySync(): boolean;
41
+ destroy(): boolean | Promise<boolean>;
41
42
  constructor: Function;
42
43
  toString: (() => string) & (() => string);
43
44
  toLocaleString: (() => string) & (() => string);
@@ -51,8 +52,9 @@ export declare function createTierModeOptionsPluginHost<P extends new (...args:
51
52
  */
52
53
  readonly modeOptions: TierModeOptions<string, Options>;
53
54
  isolatedPluginManager: boolean;
54
- get pluginManager(): import("../..").PluginManager<any, any>;
55
- _pluginManager: import("../..").PluginManager<any, any>;
56
- use<Plugin extends import("../..").IPlugin<any, any>>(plugin: Plugin, ...args: import("../..").PluginUseArgs<Plugin>): ReturnType<Plugin["onUse"]>;
55
+ get pluginManager(): import("../../..").PluginExtendManager<any, any>;
56
+ _pluginManager: import("../../..").PluginExtendManager<any, any>;
57
+ usePlugin<Plugin extends import("../../..").IPlugin<any, any>>(plugin: Plugin, ...args: import("../../..").PluginUseArgs<Plugin>): ReturnType<Plugin["onUse"]>;
58
+ useExtend<HostClass extends AbstractConstructor, E>(ext: import("../../..").ExtendOptions<HostClass, E>): boolean;
57
59
  } & P;
58
60
  //# sourceMappingURL=createTierModeOptionsPluginHost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTierModeOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/createTierModeOptionsPluginHost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG/D;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAC,OAAO,SAAS,EAAE,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC;SAEpH,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,kCA0BpE,OAAO;QApB5B;;WAEG;;sBAIY,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAX7C;;OAEG;;;;;;;MA4BN"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yCAAyC,CAAA;AACvD,cAAc,wCAAwC,CAAA;AACtD,cAAc,mCAAmC,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-mode-options/type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc,WAAW,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { TierOptions } from "../../options-manager/index";
2
- import { PluginHost } from "../../plugin-host/index";
3
- import type { ClassType } from "type-tls";
2
+ import { PluginHost } from "../../../plugin-host/index";
3
+ import type { AbstractConstructor, ClassType } from "type-tls";
4
4
  /**
5
5
  * 层级选项插件的宿主
6
6
  * @remarks
@@ -10,7 +10,7 @@ import type { ClassType } from "type-tls";
10
10
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
11
11
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
12
12
  */
13
- export declare class TierOptionsPluginHost<Host, HostClass = ClassType<Host>, Options extends {} = any> extends PluginHost<Host, HostClass> {
13
+ export declare class TierOptionsPluginHost<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any> extends PluginHost<Host, HostClass> {
14
14
  /**
15
15
  * 全局级别的默认选项
16
16
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-options/TierOptionsPluginHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAO9D;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC;IACnK;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,mBAA0B;IAGxD;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,SAAS,CAAC,eAAe,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,7 +1,7 @@
1
1
  import { TierOptions } from "../../options-manager/index";
2
- import { PluginHostEventEmitter } from "../../plugin-host/index";
3
- import type { DefaultEventMap, EventMap } from "../../plugin-host/index";
4
- import type { ClassType } from "type-tls";
2
+ import { PluginHostEventEmitter } from "../../../plugin-host/index";
3
+ import type { DefaultEventMap, EventMap } from "../../../plugin-host/index";
4
+ import type { AbstractConstructor, ClassType } from "type-tls";
5
5
  /**
6
6
  * 层级选项插件的宿主,继承自 PluginHostEventEmitter
7
7
  * @remarks
@@ -11,7 +11,7 @@ import type { ClassType } from "type-tls";
11
11
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
12
12
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
13
13
  */
14
- export declare class TierOptionsPluginHostEventEmitter<Host, HostClass = ClassType<Host>, Options extends {} = any, EM extends EventMap<EM> = DefaultEventMap> extends PluginHostEventEmitter<Host, HostClass, EM> {
14
+ export declare class TierOptionsPluginHostEventEmitter<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any, EM extends EventMap<EM> = DefaultEventMap> extends PluginHostEventEmitter<Host, HostClass, EM> {
15
15
  /**
16
16
  * 全局级别的默认选项
17
17
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierOptionsPluginHostEventEmitter.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-options/TierOptionsPluginHostEventEmitter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAM9D;;;;;;;;GAQG;AACH,qBAAa,iCAAiC,CAAC,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAC,EAAE,SAAS,QAAQ,CAAC,EAAE,CAAC,GAAG,eAAe,CAAE,SAAQ,sBAAsB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IACzO;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,mBAA0B;IAGxD;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,SAAS,CAAC,eAAe,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,6 +1,6 @@
1
1
  import { TierOptions } from "../../options-manager/index";
2
- import { PluginHostEventTarget } from "../../plugin-host/index";
3
- import type { ClassType } from "type-tls";
2
+ import { PluginHostEventTarget } from "../../../plugin-host/index";
3
+ import type { AbstractConstructor, ClassType } from "type-tls";
4
4
  /**
5
5
  * 层级选项插件的宿主,继承自 PluginHostEventEmitter
6
6
  * @remarks
@@ -10,7 +10,7 @@ import type { ClassType } from "type-tls";
10
10
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
11
11
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
12
12
  */
13
- export declare class TierOptionsPluginHostEventTarget<Host, HostClass = ClassType<Host>, Options extends {} = any, EM extends Record<string, any> = Record<string, any>> extends PluginHostEventTarget<Host, HostClass, EM> {
13
+ export declare class TierOptionsPluginHostEventTarget<Host, HostClass extends AbstractConstructor<Host> = ClassType<Host>, Options extends {} = any, EM extends Record<string, any> = Record<string, any>> extends PluginHostEventTarget<Host, HostClass, EM> {
14
14
  /**
15
15
  * 全局级别的默认选项
16
16
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TierOptionsPluginHostEventTarget.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-options/TierOptionsPluginHostEventTarget.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAO/D;;;;;;;;GAQG;AACH,qBAAa,gCAAgC,CAAC,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAC,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAE,SAAQ,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IAClP;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,mBAA0B;IAGxD;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,SAAS,CAAC,eAAe,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO,EAAE,OAAO;CAI7B"}
@@ -1,5 +1,5 @@
1
1
  import { TierOptions } from "../../options-manager/TierOptions";
2
- import type { ClassType } from "type-tls";
2
+ import type { AbstractConstructor, ClassType } from "type-tls";
3
3
  /**
4
4
  * 创建带有选项机制的插件宿主类
5
5
  * @remakers
@@ -8,16 +8,17 @@ import type { ClassType } from "type-tls";
8
8
  * @returns
9
9
  */
10
10
  export declare function createTierOptionsPluginHost<P extends new (...args: any) => Object, Options extends {}>(ParentClass: P): {
11
- new <Host, HostClass = ClassType<Host, any>>(options: Options): {
11
+ new <Host, HostClass extends AbstractConstructor<Host> = ClassType<Host, any>>(options: Options): {
12
12
  /**
13
13
  * 实例级的默认选项
14
14
  */
15
15
  get defaultOptions(): TierOptions<Options>;
16
16
  _defaultOptions: TierOptions<Options>;
17
- get pluginManager(): import("../..").PluginManager<Host, HostClass>;
18
- use<P_1 extends import("../..").IPlugin<Host, HostClass>>(plugin: P_1, ...args: import("../..").PluginUseArgs<P_1>): ReturnType<P_1["onUse"]>;
19
- init(...args: any): Promise<void>;
20
- destroyThis(): Promise<void>;
17
+ get pluginManager(): import("../../..").PluginExtendManager<Host, HostClass>;
18
+ usePlugin<P_1 extends import("../../..").IPlugin<Host, HostClass>>(plugin: P_1, ...args: import("../../..").PluginUseArgs<P_1>): ReturnType<P_1["onUse"]>;
19
+ useExtend<E>(ext: import("../../..").ExtendOptions<HostClass, E>, ...args: ConstructorParameters<HostClass>): boolean;
20
+ init(...args: any): any;
21
+ destroyThis(): any;
21
22
  refCount: number;
22
23
  readonly isDestroyed: boolean;
23
24
  _isDestroyed: boolean;
@@ -33,8 +34,8 @@ export declare function createTierOptionsPluginHost<P extends new (...args: any)
33
34
  cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
34
35
  cancelDispose<T extends import("@gby/destroyable").IDestroyable>(obj: T): T;
35
36
  cancelDispose<T extends import("@gby/destroyable").IDestroyable | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
36
- destroy(): Promise<boolean>;
37
37
  destroySync(): boolean;
38
+ destroy(): boolean | Promise<boolean>;
38
39
  constructor: Function;
39
40
  toString: (() => string) & (() => string);
40
41
  toLocaleString: (() => string) & (() => string);
@@ -48,8 +49,9 @@ export declare function createTierOptionsPluginHost<P extends new (...args: any)
48
49
  */
49
50
  readonly defaultOptions: TierOptions<Options>;
50
51
  isolatedPluginManager: boolean;
51
- get pluginManager(): import("../..").PluginManager<any, any>;
52
- _pluginManager: import("../..").PluginManager<any, any>;
53
- use<Plugin extends import("../..").IPlugin<any, any>>(plugin: Plugin, ...args: import("../..").PluginUseArgs<Plugin>): ReturnType<Plugin["onUse"]>;
52
+ get pluginManager(): import("../../..").PluginExtendManager<any, any>;
53
+ _pluginManager: import("../../..").PluginExtendManager<any, any>;
54
+ usePlugin<Plugin extends import("../../..").IPlugin<any, any>>(plugin: Plugin, ...args: import("../../..").PluginUseArgs<Plugin>): ReturnType<Plugin["onUse"]>;
55
+ useExtend<HostClass extends AbstractConstructor, E>(ext: import("../../..").ExtendOptions<HostClass, E>): boolean;
54
56
  } & P;
55
57
  //# sourceMappingURL=createTierOptionsPluginHost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTierOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-options/createTierOptionsPluginHost.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAC,SAAS,EAAE,MAAM,UAAU,CAAC;AAG9D;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC;SAG9E,IAAI,EAAE,SAAS,SAAS,mBAAmB,CAAC,IAAI,CAAC,kCAkBhE,OAAO;QAX5B;;WAEG;;yBAOe,WAAW,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAftC;;OAEG;;;;;;;MAqBN"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/options/options-plugin-host/tier-options/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,qCAAqC,CAAA;AACnD,cAAc,oCAAoC,CAAA;AAClD,cAAc,+BAA+B,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/options/plugins/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { ReplaceConstructorReturn } from "../../extend";
1
+ import type { ReplaceConstructorReturn } from "../../../plugin-manager";
2
2
  import type { ITierModeOptionsHostClass, ITierModeOptionsHost } from "./type";
3
3
  /**
4
4
  * 使 HOST 变成 层级选项的宿主类型
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorator.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-mode-options/decorator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAExE,OAAO,KAAK,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAG9E;;GAEG;AACH,MAAM,MAAM,yBAAyB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,IAAI,GAAG,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAI/R;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,OAAO,GA4B/J,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAC9D"}
@@ -0,0 +1,3 @@
1
+ import { type IPlugin } from "../../../plugin-manager/index";
2
+ export declare const tierModeOptionsPlugin: IPlugin<any>;
3
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-mode-options/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAKpE,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC,GAAG,CA4C9C,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { ClassType } from "type-tls";
1
+ import type { AbstractConstructor } from "type-tls";
2
2
  import { TierModeOptions } from "../../options-manager/TierModeOptions";
3
- import type { IPluginHost, IPluginHostClass } from "../../plugin-host";
4
- export type WithTierModeOptions<C extends ClassType, Options extends {} = any, Mode extends string | number = string> = C & ITierModeOptionsHostClass<Options, Mode> & {
3
+ import type { IPluginHost, IPluginHostClass } from "../../../plugin-host";
4
+ export type WithTierModeOptions<C extends AbstractConstructor, Options extends {} = any, Mode extends string | number = string> = C & ITierModeOptionsHostClass<Options, Mode> & {
5
5
  prototype: InstanceType<C> & ITierModeOptionsHost<Options, Mode>;
6
6
  };
7
7
  /**
@@ -27,7 +27,7 @@ export interface ITierModeOptionsHostClass<Options extends {} = any, Mode extend
27
27
  /**
28
28
  * 选项插件宿主接口
29
29
  */
30
- export type ITierModeOptionsPluginHost<Host, HostClass = ITierModeOptionsPluginHostClass<Host>, Options extends {} = any, Mode extends string | number = string> = IPluginHost<Host & ITierModeOptionsHost<Options, Mode>, HostClass> & ITierModeOptionsHost<Options, Mode>;
30
+ export type ITierModeOptionsPluginHost<Host, HostClass extends AbstractConstructor = ITierModeOptionsPluginHostClass<Host>, Options extends {} = any, Mode extends string | number = string> = IPluginHost<Host & ITierModeOptionsHost<Options, Mode>, HostClass> & ITierModeOptionsHost<Options, Mode>;
31
31
  /**
32
32
  * 选项插件宿主的构建函数接口
33
33
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-mode-options/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG;IAC/K,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;CAClE,CAAC;AAKF;;GAEG;AACH,MAAM,WAAW,oBAAoB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IACnG;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,OAAO,IAAI,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IAExG;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CACzD;AAGD;;GAEG;AACH,MAAM,MAAM,0BAA0B,CAAC,IAAI,EAAC,SAAS,SAAS,mBAAmB,GAAG,+BAA+B,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAC,SAAS,CAAC,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAEtS;;GAEG;AACH,MAAM,MAAM,+BAA+B,CAAC,IAAI,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-mode-options-plugin.d.ts","sourceRoot":"","sources":["../../../src/options/plugins/tier-mode-options-plugin.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ReplaceConstructorReturn } from "../../extend/mixin";
1
+ import { type ReplaceConstructorReturn } from "../../../plugin-manager/mixin";
2
2
  import type { ITierOptionsHost, ITierOptionsHostClass } from "./type";
3
3
  /**
4
4
  * 使 HOST 变成 层级选项的宿主类型
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorator.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-options/decorator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,wBAAwB,EAAe,MAAM,+BAA+B,CAAC;AAC3F,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC;AAItE;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,qBAAqB,CAAC,OAAO,CAAC,GAAG,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAIhO;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,CAAC,EAAC,OAAO,GAoBpH,qBAAqB,CAAC,IAAI,CAAC,CAC3C"}
@@ -1,4 +1,4 @@
1
- import type { IPlugin } from "../../plugin-manager/index";
1
+ import { type IPlugin } from "../../../plugin-manager/index";
2
2
  /**
3
3
  * 层级选项插件
4
4
  * @remarks
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-options/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAIpE;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAuB1C,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { ClassType } from "type-tls";
1
+ import type { AbstractConstructor } from "type-tls";
2
2
  import type { TierOptions } from "../../options-manager/index";
3
- import type { IPluginHost, IPluginHostClass } from "../../plugin-host";
3
+ import type { IPluginHost, IPluginHostClass } from "../../../plugin-host";
4
4
  /**
5
5
  * 类型辅助:为宿主类增加 TierOptions 能力后的类型
6
6
  */
7
- export type WithTierOptions<C extends ClassType, Options extends {} = any> = C & ITierOptionsHostClass<Options> & {
7
+ export type WithTierOptions<C extends AbstractConstructor, Options extends {} = any> = C & ITierOptionsHostClass<Options> & {
8
8
  prototype: InstanceType<C> & ITierOptionsHost<Options>;
9
9
  };
10
10
  /**
@@ -28,7 +28,7 @@ export interface ITierOptionsHost<Options extends {} = any> {
28
28
  /**
29
29
  * 选项插件宿主接口
30
30
  */
31
- export type ITierOptionsPluginHost<Host, HostClass = ITierOptionsPluginHostClass<Host>, Options extends {} = any> = IPluginHost<Host & ITierOptionsHost<Options>, HostClass> & ITierOptionsHost<Options>;
31
+ export type ITierOptionsPluginHost<Host, HostClass extends AbstractConstructor = ITierOptionsPluginHostClass<Host>, Options extends {} = any> = IPluginHost<Host & ITierOptionsHost<Options>, HostClass> & ITierOptionsHost<Options>;
32
32
  /**
33
33
  * 选项插件宿主的构建函数接口
34
34
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/options/plugins/tier-options/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAsB1E;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,mBAAmB,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,qBAAqB,CAAC,OAAO,CAAC,GAAG;IACxH,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAC1D,CAAC;AAMF;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IAC3D;;OAEG;IACH,IAAI,cAAc,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;CAC9C;AAGD;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IACtD;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACjD;AAQD;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAAC,IAAI,EAAC,SAAS,SAAS,mBAAmB,GAAG,2BAA2B,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,WAAW,CAAC,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,EAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEnO;;GAEG;AACH,MAAM,MAAM,2BAA2B,CAAC,IAAI,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-options-plugin.d.ts","sourceRoot":"","sources":["../../../src/options/plugins/tier-options-plugin.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA"}