@dooboostore/simple-web-component 1.0.36 → 1.0.37

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 +41 -4
  2. package/dist/cjs/{elements/SwcAppEngine.js → SwcAppEngine.js} +6 -6
  3. package/dist/cjs/SwcAppEngine.js.map +7 -0
  4. package/dist/cjs/decorators/applyNode.js +14 -13
  5. package/dist/cjs/decorators/applyNode.js.map +2 -2
  6. package/dist/cjs/decorators/applySlot.js +122 -0
  7. package/dist/cjs/decorators/applySlot.js.map +7 -0
  8. package/dist/cjs/decorators/elementDefine.js +38 -30
  9. package/dist/cjs/decorators/elementDefine.js.map +2 -2
  10. package/dist/cjs/decorators/index.js +1 -0
  11. package/dist/cjs/decorators/index.js.map +2 -2
  12. package/dist/cjs/decorators/lifecycles.js +56 -8
  13. package/dist/cjs/decorators/lifecycles.js.map +2 -2
  14. package/dist/cjs/elements/{SwcAppMixin.js → SwcApp.js} +107 -57
  15. package/dist/cjs/elements/SwcApp.js.map +7 -0
  16. package/dist/cjs/elements/index.js +21 -2
  17. package/dist/cjs/elements/index.js.map +3 -3
  18. package/dist/cjs/elements/tt/SwcAppMixin.js +1 -0
  19. package/dist/cjs/elements/tt/SwcAppMixin.js.map +7 -0
  20. package/dist/cjs/elements/tt/SwcAsync.js +1 -0
  21. package/dist/cjs/elements/tt/SwcAsync.js.map +7 -0
  22. package/dist/cjs/elements/tt/SwcAsyncTemplate.js +1 -0
  23. package/dist/cjs/elements/tt/SwcAsyncTemplate.js.map +7 -0
  24. package/dist/cjs/elements/tt/SwcChoose.js +1 -0
  25. package/dist/cjs/elements/tt/SwcChoose.js.map +7 -0
  26. package/dist/cjs/elements/tt/SwcChooseTemplate.js +1 -0
  27. package/dist/cjs/elements/tt/SwcChooseTemplate.js.map +7 -0
  28. package/dist/cjs/elements/tt/SwcIf.js +1 -0
  29. package/dist/cjs/elements/tt/SwcIf.js.map +7 -0
  30. package/dist/cjs/elements/tt/SwcIfTemplate.js +1 -0
  31. package/dist/cjs/elements/tt/SwcIfTemplate.js.map +7 -0
  32. package/dist/cjs/elements/tt/SwcLoop.js +1 -0
  33. package/dist/cjs/elements/tt/SwcLoop.js.map +7 -0
  34. package/dist/cjs/elements/tt/SwcLoopTemplate.js +1 -0
  35. package/dist/cjs/elements/tt/SwcLoopTemplate.js.map +7 -0
  36. package/dist/cjs/elements/tt/SwcSubTemplates.js +1 -0
  37. package/dist/cjs/elements/tt/SwcSubTemplates.js.map +7 -0
  38. package/dist/cjs/elements/tt/register.js +1 -0
  39. package/dist/cjs/elements/tt/register.js.map +7 -0
  40. package/dist/cjs/index.js +12 -8
  41. package/dist/cjs/index.js.map +2 -2
  42. package/dist/cjs/types/window.d.js +16 -0
  43. package/dist/cjs/types/window.d.js.map +7 -0
  44. package/dist/cjs/types.js.map +1 -1
  45. package/dist/cjs/utils/Utils.js +9 -6
  46. package/dist/cjs/utils/Utils.js.map +2 -2
  47. package/dist/esm/{elements/SwcAppEngine.js → SwcAppEngine.js} +4 -4
  48. package/dist/esm/SwcAppEngine.js.map +7 -0
  49. package/dist/esm/decorators/applyNode.js +14 -13
  50. package/dist/esm/decorators/applyNode.js.map +2 -2
  51. package/dist/esm/decorators/applySlot.js +103 -0
  52. package/dist/esm/decorators/applySlot.js.map +7 -0
  53. package/dist/esm/decorators/elementDefine.js +41 -33
  54. package/dist/esm/decorators/elementDefine.js.map +2 -2
  55. package/dist/esm/decorators/index.js +1 -0
  56. package/dist/esm/decorators/index.js.map +2 -2
  57. package/dist/esm/decorators/lifecycles.js +56 -8
  58. package/dist/esm/decorators/lifecycles.js.map +2 -2
  59. package/dist/esm/elements/{SwcAppMixin.js → SwcApp.js} +102 -53
  60. package/dist/esm/elements/SwcApp.js.map +7 -0
  61. package/dist/esm/elements/index.js +7 -1
  62. package/dist/esm/elements/index.js.map +2 -2
  63. package/dist/esm/elements/tt/SwcAppMixin.js +1 -0
  64. package/dist/esm/elements/tt/SwcAppMixin.js.map +7 -0
  65. package/dist/esm/elements/tt/SwcAsync.js +1 -0
  66. package/dist/esm/elements/tt/SwcAsync.js.map +7 -0
  67. package/dist/esm/elements/tt/SwcAsyncTemplate.js +1 -0
  68. package/dist/esm/elements/tt/SwcAsyncTemplate.js.map +7 -0
  69. package/dist/esm/elements/tt/SwcChoose.js +1 -0
  70. package/dist/esm/elements/tt/SwcChoose.js.map +7 -0
  71. package/dist/esm/elements/tt/SwcChooseTemplate.js +1 -0
  72. package/dist/esm/elements/tt/SwcChooseTemplate.js.map +7 -0
  73. package/dist/esm/elements/tt/SwcIf.js +1 -0
  74. package/dist/esm/elements/tt/SwcIf.js.map +7 -0
  75. package/dist/esm/elements/tt/SwcIfTemplate.js +1 -0
  76. package/dist/esm/elements/tt/SwcIfTemplate.js.map +7 -0
  77. package/dist/esm/elements/tt/SwcLoop.js +1 -0
  78. package/dist/esm/elements/tt/SwcLoop.js.map +7 -0
  79. package/dist/esm/elements/tt/SwcLoopTemplate.js +1 -0
  80. package/dist/esm/elements/tt/SwcLoopTemplate.js.map +7 -0
  81. package/dist/esm/elements/tt/SwcSubTemplates.js +1 -0
  82. package/dist/esm/elements/tt/SwcSubTemplates.js.map +7 -0
  83. package/dist/esm/elements/tt/register.js +1 -0
  84. package/dist/esm/elements/tt/register.js.map +7 -0
  85. package/dist/esm/index.js +13 -9
  86. package/dist/esm/index.js.map +2 -2
  87. package/dist/esm/types/window.d.js +1 -0
  88. package/dist/esm/types/window.d.js.map +7 -0
  89. package/dist/esm/types.js.map +1 -1
  90. package/dist/esm/utils/Utils.js +9 -6
  91. package/dist/esm/utils/Utils.js.map +2 -2
  92. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +3867 -97
  93. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  94. package/dist/types/{elements/SwcAppEngine.d.ts → SwcAppEngine.d.ts} +9 -4
  95. package/dist/types/SwcAppEngine.d.ts.map +1 -0
  96. package/dist/types/decorators/applyNode.d.ts +7 -7
  97. package/dist/types/decorators/applyNode.d.ts.map +1 -1
  98. package/dist/types/decorators/applySlot.d.ts +27 -0
  99. package/dist/types/decorators/applySlot.d.ts.map +1 -0
  100. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  101. package/dist/types/decorators/index.d.ts +1 -0
  102. package/dist/types/decorators/index.d.ts.map +1 -1
  103. package/dist/types/decorators/lifecycles.d.ts +21 -6
  104. package/dist/types/decorators/lifecycles.d.ts.map +1 -1
  105. package/dist/types/elements/SwcApp.d.ts +7 -0
  106. package/dist/types/elements/SwcApp.d.ts.map +1 -0
  107. package/dist/types/elements/index.d.ts +2 -1
  108. package/dist/types/elements/index.d.ts.map +1 -1
  109. package/dist/types/elements/tt/SwcAppMixin.d.ts +1 -0
  110. package/dist/types/elements/tt/SwcAppMixin.d.ts.map +1 -0
  111. package/dist/types/elements/tt/SwcAsync.d.ts +1 -0
  112. package/dist/types/elements/tt/SwcAsync.d.ts.map +1 -0
  113. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts +1 -0
  114. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts.map +1 -0
  115. package/dist/types/elements/tt/SwcChoose.d.ts +1 -0
  116. package/dist/types/elements/tt/SwcChoose.d.ts.map +1 -0
  117. package/dist/types/elements/tt/SwcChooseTemplate.d.ts +1 -0
  118. package/dist/types/elements/tt/SwcChooseTemplate.d.ts.map +1 -0
  119. package/dist/types/elements/tt/SwcIf.d.ts +1 -0
  120. package/dist/types/elements/{SwcIf.d.ts.map → tt/SwcIf.d.ts.map} +1 -1
  121. package/dist/types/elements/tt/SwcIfTemplate.d.ts +1 -0
  122. package/dist/types/elements/tt/SwcIfTemplate.d.ts.map +1 -0
  123. package/dist/types/elements/tt/SwcLoop.d.ts +1 -0
  124. package/dist/types/elements/tt/SwcLoop.d.ts.map +1 -0
  125. package/dist/types/elements/tt/SwcLoopTemplate.d.ts +1 -0
  126. package/dist/types/elements/tt/SwcLoopTemplate.d.ts.map +1 -0
  127. package/dist/types/elements/tt/SwcSubTemplates.d.ts +1 -0
  128. package/dist/types/elements/tt/SwcSubTemplates.d.ts.map +1 -0
  129. package/dist/types/elements/tt/register.d.ts +1 -0
  130. package/dist/types/elements/tt/register.d.ts.map +1 -0
  131. package/dist/types/index.d.ts +2 -2
  132. package/dist/types/index.d.ts.map +1 -1
  133. package/dist/types/types.d.ts +3 -3
  134. package/dist/types/types.d.ts.map +1 -1
  135. package/dist/types/utils/Utils.d.ts +6 -5
  136. package/dist/types/utils/Utils.d.ts.map +1 -1
  137. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +3867 -97
  138. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  139. package/package.json +2 -2
  140. package/src/{elements/SwcAppEngine.ts → SwcAppEngine.ts} +12 -7
  141. package/src/decorators/applyNode.ts +15 -13
  142. package/src/decorators/applySlot.ts +228 -0
  143. package/src/decorators/elementDefine.ts +59 -37
  144. package/src/decorators/index.ts +1 -0
  145. package/src/decorators/lifecycles.ts +76 -11
  146. package/src/elements/{SwcAppMixin.ts → SwcApp.ts} +98 -31
  147. package/src/elements/index.ts +11 -1
  148. package/src/elements/tt/SwcAppMixin.ts +13 -0
  149. package/src/elements/tt/SwcAsync.ts +139 -0
  150. package/src/elements/tt/SwcAsyncTemplate.ts +126 -0
  151. package/src/elements/tt/SwcChoose.ts +182 -0
  152. package/src/elements/tt/SwcChooseTemplate.ts +229 -0
  153. package/src/elements/tt/SwcIf.ts +145 -0
  154. package/src/elements/tt/SwcIfTemplate.ts +158 -0
  155. package/src/elements/tt/SwcLoop.ts +222 -0
  156. package/src/elements/tt/SwcLoopTemplate.ts +255 -0
  157. package/src/elements/tt/SwcSubTemplates.ts +6 -0
  158. package/src/elements/tt/register.ts +720 -0
  159. package/src/index.ts +13 -9
  160. package/src/types/window.d.ts +43 -0
  161. package/src/types.ts +4 -3
  162. package/src/utils/Utils.ts +11 -6
  163. package/dist/cjs/elements/SwcAppEngine.js.map +0 -7
  164. package/dist/cjs/elements/SwcAppMixin.js.map +0 -7
  165. package/dist/cjs/elements/SwcAsync.js +0 -129
  166. package/dist/cjs/elements/SwcAsync.js.map +0 -7
  167. package/dist/cjs/elements/SwcChoose.js +0 -155
  168. package/dist/cjs/elements/SwcChoose.js.map +0 -7
  169. package/dist/cjs/elements/SwcIf.js +0 -117
  170. package/dist/cjs/elements/SwcIf.js.map +0 -7
  171. package/dist/cjs/elements/SwcLoop.js +0 -176
  172. package/dist/cjs/elements/SwcLoop.js.map +0 -7
  173. package/dist/cjs/elements/SwcSubTemplates.js +0 -13
  174. package/dist/cjs/elements/SwcSubTemplates.js.map +0 -7
  175. package/dist/cjs/elements/register.js +0 -1026
  176. package/dist/cjs/elements/register.js.map +0 -7
  177. package/dist/esm/elements/SwcAppEngine.js.map +0 -7
  178. package/dist/esm/elements/SwcAppMixin.js.map +0 -7
  179. package/dist/esm/elements/SwcAsync.js +0 -129
  180. package/dist/esm/elements/SwcAsync.js.map +0 -7
  181. package/dist/esm/elements/SwcChoose.js +0 -155
  182. package/dist/esm/elements/SwcChoose.js.map +0 -7
  183. package/dist/esm/elements/SwcIf.js +0 -117
  184. package/dist/esm/elements/SwcIf.js.map +0 -7
  185. package/dist/esm/elements/SwcLoop.js +0 -176
  186. package/dist/esm/elements/SwcLoop.js.map +0 -7
  187. package/dist/esm/elements/SwcSubTemplates.js +0 -13
  188. package/dist/esm/elements/SwcSubTemplates.js.map +0 -7
  189. package/dist/esm/elements/register.js +0 -1007
  190. package/dist/esm/elements/register.js.map +0 -7
  191. package/dist/types/elements/SwcAppEngine.d.ts.map +0 -1
  192. package/dist/types/elements/SwcAppMixin.d.ts +0 -386
  193. package/dist/types/elements/SwcAppMixin.d.ts.map +0 -1
  194. package/dist/types/elements/SwcAsync.d.ts +0 -2
  195. package/dist/types/elements/SwcAsync.d.ts.map +0 -1
  196. package/dist/types/elements/SwcChoose.d.ts +0 -2
  197. package/dist/types/elements/SwcChoose.d.ts.map +0 -1
  198. package/dist/types/elements/SwcIf.d.ts +0 -2
  199. package/dist/types/elements/SwcLoop.d.ts +0 -2
  200. package/dist/types/elements/SwcLoop.d.ts.map +0 -1
  201. package/dist/types/elements/SwcSubTemplates.d.ts +0 -13
  202. package/dist/types/elements/SwcSubTemplates.d.ts.map +0 -1
  203. package/dist/types/elements/register.d.ts +0 -4
  204. package/dist/types/elements/register.d.ts.map +0 -1
  205. package/src/elements/SwcAsync.ts +0 -126
  206. package/src/elements/SwcChoose.ts +0 -190
  207. package/src/elements/SwcIf.ts +0 -124
  208. package/src/elements/SwcLoop.ts +0 -205
  209. package/src/elements/SwcSubTemplates.ts +0 -6
  210. package/src/elements/register.ts +0 -1022
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
5
  var __export = (target, all) => {
7
6
  for (var name in all)
8
7
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -16,37 +15,47 @@ var __copyProps = (to, from, except, desc) => {
16
15
  return to;
17
16
  };
18
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
20
- var SwcAppMixin_exports = {};
21
- __export(SwcAppMixin_exports, {
22
- SwcAppMixin: () => SwcAppMixin
18
+ var SwcApp_exports = {};
19
+ __export(SwcApp_exports, {
20
+ default: () => SwcApp_default,
21
+ isSSR: () => isSSR,
22
+ removeSSRAttribute: () => removeSSRAttribute,
23
+ setSSRAttribute: () => setSSRAttribute,
24
+ tagName: () => tagName
23
25
  });
24
- module.exports = __toCommonJS(SwcAppMixin_exports);
25
- var import_SwcAppEngine = require("./SwcAppEngine");
26
- var import_Utils = require("../utils/Utils");
26
+ module.exports = __toCommonJS(SwcApp_exports);
27
+ var import_decorators = require("../decorators");
28
+ var import_SwcAppEngine = require("../SwcAppEngine");
27
29
  var import_core = require("@dooboostore/core");
28
- var import_subscribeSwcAppRouteChangeWhileConnected = require("../decorators/subscribeSwcAppRouteChangeWhileConnected");
29
- var import_subscribeSwcAppMessageWhileConnected = require("../decorators/subscribeSwcAppMessageWhileConnected");
30
- function SwcAppMixin(Base) {
31
- return class extends Base {
30
+ var import_Utils = require("../utils/Utils");
31
+ var __decorate = function(decorators, target, key, desc) {
32
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
33
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
34
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
35
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
36
+ };
37
+ const isSSR = (i) => {
38
+ return i.hasAttribute("swc-use-ssr");
39
+ };
40
+ const setSSRAttribute = (i) => {
41
+ i.setAttribute("swc-use-ssr", i._swcId ?? "");
42
+ };
43
+ const removeSSRAttribute = (i) => {
44
+ i.removeAttribute("swc-use-ssr");
45
+ };
46
+ const tagName = "swc-app";
47
+ var SwcApp_default = async (w) => {
48
+ const existing = w.customElements.get(tagName);
49
+ if (existing)
50
+ return existing;
51
+ let SwcApp = class SwcApp extends w.HTMLElement {
32
52
  constructor() {
33
53
  super(...arguments);
34
- __publicField(this, "__swc_engine", new import_SwcAppEngine.SwcAppEngine(this));
35
- __publicField(this, "_swc_connected_instance", /* @__PURE__ */ new Set());
36
- // _swc_notified_routes = new WeakMap<any, RouterEventType>();
37
- __publicField(this, "_routerSubscription");
38
- __publicField(this, "_lastRouterEvent");
39
- __publicField(this, "_routeChangeInvocations", 0);
40
- __publicField(this, "_connectedInvocations", 0);
41
- __publicField(this, "_childrenRouteChangedInterval");
42
- __publicField(this, "_childrenConnectedDoneInterval");
43
- /*
44
- 사파리 is 일경우
45
- <script src="https://unpkg.com/@ungap/custom-elements"><\/script>
46
- 이걸사용하는데 is 대응하는거다 그런데 이때 처리되는 순서가 크롬이나 표준에서는 부모부터 만들어지고 자식들이 만들어지는데
47
- 저 polyfill에서는 자식부터 만들어지고 부모가 만들어진다 is일때 아 .. 이문제때문에 자식이 _connected_safari 에 강제로 자기자식넣어준다
48
- */
49
- __publicField(this, "_connected_safari", []);
54
+ this.__swc_engine = new import_SwcAppEngine.SwcAppEngine(this);
55
+ this._swc_connected_instance = /* @__PURE__ */ new Set();
56
+ this._routeChangeInvocations = 0;
57
+ this._connectedInvocations = 0;
58
+ this._connected_safari_and_standby = [];
50
59
  }
51
60
  get simpleApplication() {
52
61
  return this.__swc_engine.simpleApplication;
@@ -58,23 +67,25 @@ function SwcAppMixin(Base) {
58
67
  return this.__swc_engine?.router;
59
68
  }
60
69
  async _invokeRouteChangeSubscribers(instance, re) {
61
- if (instance.isConnected === false) return;
70
+ if (instance.isConnected === false)
71
+ return;
62
72
  this._routeChangeInvocations++;
63
73
  if (this._childrenRouteChangedInterval) {
64
- clearInterval(this._childrenRouteChangedInterval);
74
+ this.config.window.clearInterval(this._childrenRouteChangedInterval);
65
75
  }
76
+ const intervalConfig = { setInterval: this.config.window.setInterval.bind(this.config.window), clearInterval: this.config.window.clearInterval.bind(this.config.window) };
66
77
  this._childrenRouteChangedInterval = (0, import_core.debounceTimeIntervalLock)(
67
78
  () => this._routeChangeInvocations === 0,
68
79
  () => {
69
80
  this._childrenRouteChangedInterval = null;
70
- this.config.onChildrenRouteChanged(re, this);
81
+ this.config.onChildrenRouteChanged?.(re, this);
71
82
  },
72
83
  this.config?.childrenConnectedDoneCheckIntervalTime ?? 30,
73
- { setInterval: window.setInterval, clearInterval: window.clearInterval }
84
+ intervalConfig
74
85
  // {setInterval: window.setInterval, clearInterval: window.clearInterval}
75
86
  );
76
87
  try {
77
- const routeChangeSubscribers = (0, import_subscribeSwcAppRouteChangeWhileConnected.getSubscribeSwcAppRouteChangeWhileConnectedMetadata)(instance);
88
+ const routeChangeSubscribers = (0, import_decorators.getSubscribeSwcAppRouteChangeWhileConnectedMetadata)(instance);
78
89
  if (routeChangeSubscribers && Array.isArray(routeChangeSubscribers)) {
79
90
  const ps = routeChangeSubscribers.map(async (metadata) => {
80
91
  const methodName = metadata.propertyKey;
@@ -109,25 +120,37 @@ function SwcAppMixin(Base) {
109
120
  await Promise.allSettled(ps);
110
121
  }
111
122
  } finally {
112
- this._routeChangeInvocations--;
123
+ if (this.config?.ssr) {
124
+ setSSRAttribute(instance);
125
+ } else {
126
+ removeSSRAttribute(instance);
127
+ }
128
+ this._routeChangeInvocations = Math.max(0, this._routeChangeInvocations - 1);
113
129
  }
114
130
  }
115
- async _connected(instance) {
131
+ async _connected(instance, option) {
116
132
  if (instance) {
117
- this._connectedInvocations++;
133
+ if (!this.simpleApplication && !this.config) {
134
+ this._connected_safari_and_standby.push(instance);
135
+ return;
136
+ }
137
+ this.config.onConnectedChildBefore?.(instance);
138
+ if (!option?.noIncrements) {
139
+ this._connectedInvocations++;
140
+ }
118
141
  this._swc_connected_instance.add(instance);
142
+ const connectedSwcAppCallBacks = (0, import_decorators.findAllLifecycleMetadata)(instance, import_decorators.ON_CONNECTED_SWC_APP_METADATA_KEY) ?? [];
143
+ for (let connectedSwcAppCallBack of connectedSwcAppCallBacks) {
144
+ await instance?._invokeLifecycleMethod?.(connectedSwcAppCallBack);
145
+ }
119
146
  if (this._childrenConnectedDoneInterval) {
120
- clearInterval(this._childrenConnectedDoneInterval);
147
+ this.config.window.clearInterval(this._childrenConnectedDoneInterval);
121
148
  }
122
- this._childrenConnectedDoneInterval = (0, import_core.debounceTimeIntervalLock)(
123
- () => this._connectedInvocations === 0,
124
- () => {
125
- this._childrenConnectedDoneInterval = null;
126
- this.config.onChildrenConnectedDone(this);
127
- },
128
- this.config?.childrenConnectedDoneCheckIntervalTime ?? 30,
129
- { setInterval: window.setInterval, clearInterval: window.clearInterval }
130
- );
149
+ const intervalConfig = { setInterval: this.config.window.setInterval.bind(this.config.window), clearInterval: this.config.window.clearInterval.bind(this.config.window) };
150
+ this._childrenConnectedDoneInterval = (0, import_core.debounceTimeIntervalLock)(() => this._connectedInvocations === 0, () => {
151
+ this._childrenConnectedDoneInterval = null;
152
+ this.config.onChildrenConnectedDone?.(this);
153
+ }, this.config?.childrenConnectedDoneCheckIntervalTime ?? 30, intervalConfig);
131
154
  if (this.simpleApplication) {
132
155
  try {
133
156
  if (this.router && this._lastRouterEvent) {
@@ -137,17 +160,25 @@ function SwcAppMixin(Base) {
137
160
  throw e;
138
161
  }
139
162
  }
163
+ if (this.config?.ssr) {
164
+ setSSRAttribute(instance);
165
+ } else {
166
+ removeSSRAttribute(instance);
167
+ }
140
168
  }
169
+ this.config.onConnectedChildAfter?.(instance);
170
+ return this;
141
171
  }
142
172
  async _connectedDone(instance) {
143
173
  try {
144
174
  } finally {
145
- this._connectedInvocations--;
175
+ this._connectedInvocations = Math.max(0, this._connectedInvocations - 1);
146
176
  }
147
177
  }
148
178
  _disconnected(instance) {
149
179
  if (instance) {
150
180
  this._swc_connected_instance.delete(instance);
181
+ this.config?.onDisconnectedChildAfter?.(instance);
151
182
  }
152
183
  }
153
184
  async _handleRouteChange(route) {
@@ -157,15 +188,16 @@ function SwcAppMixin(Base) {
157
188
  await Promise.allSettled(ps);
158
189
  }
159
190
  async connect(config) {
191
+ console.log("[SWC] connect");
160
192
  const swcConfig = {
161
193
  routeType: "element",
162
194
  window: config?.window,
163
195
  ...config
164
196
  };
165
197
  const mode = config?.connectMode || "direct";
166
- if (mode === "direct") {
198
+ if (mode === "direct" || mode === "hydrate") {
199
+ this.setAttribute("swc-connect-mode", mode);
167
200
  await this.__swc_engine.connect(swcConfig);
168
- this.setAttribute("swc-connect-mode", "direct");
169
201
  } else if (mode === "swap" || mode === "clear-swap") {
170
202
  if (!this.parentNode) {
171
203
  await this.__swc_engine.connect(swcConfig);
@@ -191,18 +223,19 @@ function SwcAppMixin(Base) {
191
223
  }
192
224
  }
193
225
  }
194
- this._connected_safari.forEach((instance) => {
195
- this._connected(instance);
226
+ this._connected_safari_and_standby.forEach((instance) => {
227
+ this._connected(instance, { noIncrements: true });
196
228
  });
197
229
  if (!this._routerSubscription && this.router) {
198
230
  const config2 = this.__swc_engine.config;
199
231
  this._routerSubscription = this.router.observable.subscribe(async (route) => {
232
+ console.log("[SWC] Router event received:", route.triggerPoint);
200
233
  if (route.triggerPoint === "end") {
201
234
  await this._handleRouteChange(route);
202
235
  }
203
236
  });
204
237
  if (config2?.path) {
205
- this.router.go(config2.path);
238
+ console.log("[DEBUG] Navigating to initial path:", config2.path);
206
239
  }
207
240
  }
208
241
  }
@@ -223,7 +256,8 @@ function SwcAppMixin(Base) {
223
256
  // }
224
257
  // }
225
258
  connectedCallback() {
226
- if (super.connectedCallback) super.connectedCallback();
259
+ if (super.connectedCallback)
260
+ super.connectedCallback();
227
261
  const configStr = this.getAttribute("swc-get-application-config");
228
262
  const win = this.ownerDocument?.defaultView || window;
229
263
  if (configStr && win) {
@@ -238,15 +272,19 @@ function SwcAppMixin(Base) {
238
272
  console.error("[SWC-APP-ENGINE] Script execution failed:", e);
239
273
  }
240
274
  }
275
+ this._connected(this);
241
276
  this.__swc_engine?.config?.onConnected?.(this);
277
+ this._connectedDone(this);
242
278
  }
243
279
  disconnectedCallback() {
244
- if (super.disconnectedCallback) super.disconnectedCallback();
280
+ if (super.disconnectedCallback)
281
+ super.disconnectedCallback();
245
282
  this._routerSubscription?.unsubscribe();
246
283
  this._routerSubscription = void 0;
247
284
  this._lastRouterEvent = void 0;
248
285
  this.__swc_engine.disconnect();
249
286
  this.__swc_engine?.config?.onDisconnected?.(this);
287
+ this._disconnected(this);
250
288
  }
251
289
  async routing(path) {
252
290
  await this.router?.go(path);
@@ -260,13 +298,20 @@ function SwcAppMixin(Base) {
260
298
  reload() {
261
299
  this.router?.reload();
262
300
  }
301
+ // async completedSwcApp() {
302
+ // const ss = Array.from(this._swc_connected_instance).flatMap((it) => {
303
+ // const ms = findAllLifecycleMetadata(it, ON_CONNECTED_COMPLETED_SWC_APP_METADATA_KEY) ?? [];
304
+ // return ms.map((sit) => it[sit](this));
305
+ // });
306
+ // await Promise.allSettled(ss);
307
+ // }
263
308
  publishMessage(message) {
264
309
  this._swc_connected_instance.forEach((instance) => {
265
310
  this._invokeMessageSubscribers(instance, message);
266
311
  });
267
312
  }
268
313
  _invokeMessageSubscribers(instance, message) {
269
- const messageSubscribers = (0, import_subscribeSwcAppMessageWhileConnected.getSubscribeSwcAppMessageWhileConnectedMetadata)(instance);
314
+ const messageSubscribers = (0, import_decorators.getSubscribeSwcAppMessageWhileConnectedMetadata)(instance);
270
315
  if (messageSubscribers && Array.isArray(messageSubscribers)) {
271
316
  messageSubscribers.forEach((metadata) => {
272
317
  const methodName = metadata.propertyKey;
@@ -289,5 +334,10 @@ function SwcAppMixin(Base) {
289
334
  }
290
335
  }
291
336
  };
292
- }
293
- //# sourceMappingURL=SwcAppMixin.js.map
337
+ SwcApp = __decorate([
338
+ (0, import_decorators.elementDefine)(tagName, { window: w })
339
+ ], SwcApp);
340
+ ;
341
+ return w.customElements.whenDefined(tagName);
342
+ };
343
+ //# sourceMappingURL=SwcApp.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/elements/SwcApp.ts"],
4
+ "sourcesContent": ["import {SwcAppInterface, SwcAppMessage} from \"../types\";\nimport {elementDefine, findAllLifecycleMetadata, getSubscribeSwcAppMessageWhileConnectedMetadata, getSubscribeSwcAppRouteChangeWhileConnectedMetadata, ON_CONNECTED_SWC_APP_METADATA_KEY} from \"../decorators\";\nimport {SwcAppEngine, SwcAttributeConfigType, SwcConfigType} from \"../SwcAppEngine\";\nimport {debounceTimeIntervalLock, FunctionUtils, Subscription} from \"@dooboostore/core\";\nimport {RouterEventType} from \"@dooboostore/core-web\";\nimport {SwcUtils} from \"../utils/Utils\";\n\nexport const isSSR = (i: HTMLElement) => {\n return i.hasAttribute('swc-use-ssr');\n}\nexport const setSSRAttribute = (i: HTMLElement) => {\n i.setAttribute('swc-use-ssr', (i as any)._swcId ?? '');\n}\nexport const removeSSRAttribute = (i: HTMLElement) => {\n i.removeAttribute('swc-use-ssr');\n}\n\n\nexport const tagName = 'swc-app';\nexport default async (w: Window) => {\n const existing = w.customElements.get(tagName);\n if (existing) return existing;\n\n @elementDefine(tagName, {window: w})\n class SwcApp extends w.HTMLElement implements SwcAppInterface {\n __swc_engine = new SwcAppEngine(this as any);\n _swc_connected_instance = new Set<any>();\n // _swc_notified_routes = new WeakMap<any, RouterEventType>();\n _routerSubscription?: Subscription;\n _lastRouterEvent?: RouterEventType;\n _routeChangeInvocations = 0;\n _connectedInvocations = 0;\n\n _childrenRouteChangedInterval: any;\n _childrenConnectedDoneInterval: any;\n\n /*\n 사파리 is 일경우\n <script src=\"https://unpkg.com/@ungap/custom-elements\"></script>\n 이걸사용하는데 is 대응하는거다 그런데 이때 처리되는 순서가 크롬이나 표준에서는 부모부터 만들어지고 자식들이 만들어지는데\n 저 polyfill에서는 자식부터 만들어지고 부모가 만들어진다 is일때 아 .. 이문제때문에 자식이 _connected_safari 에 강제로 자기자식넣어준다\n */\n _connected_safari_and_standby = [];\n\n get simpleApplication() {\n return this.__swc_engine.simpleApplication;\n }\n\n get config() {\n return this.__swc_engine?.config;\n }\n\n get router() {\n return this.__swc_engine?.router;\n }\n\n async _invokeRouteChangeSubscribers(instance: HTMLElement, re: RouterEventType) {\n if (instance.isConnected === false) return;\n\n this._routeChangeInvocations++;\n\n if (this._childrenRouteChangedInterval) {\n this.config.window.clearInterval(this._childrenRouteChangedInterval);\n }\n const intervalConfig = {setInterval: this.config.window.setInterval.bind(this.config.window), clearInterval: this.config.window.clearInterval.bind(this.config.window)};\n this._childrenRouteChangedInterval = debounceTimeIntervalLock(\n () => this._routeChangeInvocations === 0,\n () => {\n this._childrenRouteChangedInterval = null;\n this.config.onChildrenRouteChanged?.(re, this)\n },\n this.config?.childrenConnectedDoneCheckIntervalTime ?? 30,\n intervalConfig\n // {setInterval: window.setInterval, clearInterval: window.clearInterval}\n );\n\n\n // debounceTimeIntervalLock({\n // unlockChecker: () => this._routeChangeInvocations === 0,\n // unlocked: () => this.config.onChildrenRouteChanged(re, this)\n // }, {\n // intervalId: this._childrenRouteChangedInterval,\n // setIntervalId: (id) => this._childrenRouteChangedInterval = id,\n // intervalTime: this.config?.childrenRouteChangedCheckIntervalTime ?? 30\n // }, {\n // setInterval: window.setInterval,\n // clearInterval: window.clearInterval\n // });\n\n try {\n // if (this._swc_notified_routes.get(instance) === re) {\n // return;\n // }\n // this._swc_notified_routes.set(instance, re);\n\n const routeChangeSubscribers = getSubscribeSwcAppRouteChangeWhileConnectedMetadata(instance);\n if (routeChangeSubscribers && Array.isArray(routeChangeSubscribers)) {\n const ps = routeChangeSubscribers.map(async metadata => {\n const methodName = metadata.propertyKey;\n let pathPattern = metadata.options?.path as any;\n const filter = metadata.options?.filter;\n\n if (typeof pathPattern === 'function') {\n pathPattern = (pathPattern as Function)(instance);\n }\n\n let pathMatched = false;\n let pathData: any = null;\n\n if (!pathPattern) {\n pathMatched = true;\n pathData = {};\n } else if (Array.isArray(pathPattern)) {\n for (const pattern of pathPattern) {\n const data = SwcUtils.parsePathPattern(pattern, re.path || '/');\n if (data !== null) {\n pathMatched = true;\n pathData = data;\n break;\n }\n }\n } else {\n pathData = SwcUtils.parsePathPattern(pathPattern, re.path || '/');\n pathMatched = pathData !== null;\n }\n\n const filterPassed = !filter || filter(this.router!, instance);\n\n if (pathMatched && filterPassed && instance[methodName]) {\n await instance[methodName]({...re, pathData: pathData});\n }\n });\n await Promise.allSettled(ps);\n }\n } finally {\n if (this.config?.ssr) {\n setSSRAttribute(instance);\n } else {\n removeSSRAttribute(instance);\n }\n this._routeChangeInvocations = Math.max(0, this._routeChangeInvocations - 1);\n }\n }\n\n async _connected(instance: HTMLElement, option?: { noIncrements: boolean }) {\n if (instance) {\n // console.log('_connected-->', instance.tagName, this._connectedInvocations)\n\n if (!this.simpleApplication && !this.config) {\n this._connected_safari_and_standby.push(instance);\n return;\n }\n\n this.config.onConnectedChildBefore?.(instance);\n if (!option?.noIncrements) {\n this._connectedInvocations++;\n }\n this._swc_connected_instance.add(instance);\n\n const connectedSwcAppCallBacks = findAllLifecycleMetadata(instance, ON_CONNECTED_SWC_APP_METADATA_KEY) ?? [];\n for (let connectedSwcAppCallBack of connectedSwcAppCallBacks) {\n await (instance as any)?._invokeLifecycleMethod?.(connectedSwcAppCallBack);\n }\n\n if (this._childrenConnectedDoneInterval) {\n this.config.window.clearInterval(this._childrenConnectedDoneInterval);\n }\n const intervalConfig = {setInterval: this.config.window.setInterval.bind(this.config.window), clearInterval: this.config.window.clearInterval.bind(this.config.window)};\n this._childrenConnectedDoneInterval = debounceTimeIntervalLock(\n () => this._connectedInvocations === 0,\n () => {\n this._childrenConnectedDoneInterval = null;\n this.config.onChildrenConnectedDone?.(this)\n },\n this.config?.childrenConnectedDoneCheckIntervalTime ?? 30,\n intervalConfig\n );\n\n // console.log('onChildConnectedDone-->')\n\n if (this.simpleApplication) {\n try {\n // await this._invokeOnConnectedSwcAppStarted(instance);\n\n if (this.router && this._lastRouterEvent) {\n await this._invokeRouteChangeSubscribers(instance, this._lastRouterEvent!);\n }\n } catch (e) {\n throw e;\n }\n }\n\n if (this.config?.ssr) {\n setSSRAttribute(instance);\n } else {\n removeSSRAttribute(instance);\n }\n }\n\n\n this.config.onConnectedChildAfter?.(instance);\n return this;\n }\n\n async _connectedDone(instance: any) {\n try {\n // 내부 연결 처리 로직이 있다면 여기에 추가\n // console.log('_connectedDone-->', instance, this._connectedInvocations)\n } finally {\n this._connectedInvocations = Math.max(0, this._connectedInvocations - 1);\n }\n }\n\n _disconnected(instance: any) {\n // console.log('_disconnected', instance);\n if (instance) {\n this._swc_connected_instance.delete(instance);\n this.config?.onDisconnectedChildAfter?.(instance);\n // this._swc_notified_routes.delete(instance);\n }\n }\n\n async _handleRouteChange(route: RouterEventType) {\n // Save last router event\n this._lastRouterEvent = route;\n // if (route.triggerPoint === 'end') {\n // Iterate through all connected component instances\n const swcConnectedInstance = Array.from(this._swc_connected_instance);\n // console.log('routing handle-->', swcConnectedInstance)\n const ps = swcConnectedInstance.map((instance: any) => this._invokeRouteChangeSubscribers(instance, route));\n await Promise.allSettled(ps);\n // }\n }\n\n async connect(config?: SwcAttributeConfigType) {\n console.log('[SWC] connect')\n const swcConfig = {\n routeType: 'element',\n window: config?.window,\n ...config\n } as SwcConfigType;\n\n const mode = config?.connectMode || 'direct';\n\n if (mode === 'direct' || mode === 'hydrate') {\n this.setAttribute('swc-connect-mode', mode);\n await this.__swc_engine.connect(swcConfig);\n } else if (mode === 'swap' || mode === 'clear-swap') {\n if (!this.parentNode) {\n // 부모가 없으면 swap을 할 수 없으므로 direct로 폴백합니다.\n await this.__swc_engine.connect(swcConfig);\n this.setAttribute('swc-connect-mode', 'direct');\n } else {\n // 1. 현재 SSR 상태(화면)를 그대로 유지한 채로, 백그라운드용 클론을 만듭니다.\n const clonedApp = this.cloneNode(mode === 'swap') as any; // clear-swap 모드면 자식 노드를 클론하지 않음(false)\n clonedApp.style.display = 'none';\n\n // 2. DOM에 클론을 몰래 붙입니다.\n this.parentNode.insertBefore(clonedApp, this.nextSibling);\n\n try {\n // 3. 클론을 direct 모드로 연결(초기화/렌더링) 시킵니다.\n await clonedApp.connect({...(config || {}), connectMode: 'direct'});\n\n // 4. 클론의 렌더링이 완전히 끝나면, 기존 SSR 화면(this)을 지우고 클론을 보여줍니다.\n if (this.parentNode) {\n this.parentNode.removeChild(this);\n }\n clonedApp.style.display = '';\n clonedApp.setAttribute('swc-connect-mode', mode);\n\n // ★ 매우 중요: 교체가 완료되었으므로 기존 앱(this)은 여기서 즉시 종료하여 불필요한 라우터/이벤트 구독을 막아야 합니다!\n return;\n } catch (e) {\n // 실패 시 클론을 지우고 원본을 direct로 강제 연결합니다.\n if (clonedApp.parentNode) {\n clonedApp.parentNode.removeChild(clonedApp);\n }\n await this.__swc_engine.connect(swcConfig);\n this.setAttribute('swc-connect-mode', 'direct');\n }\n }\n }\n\n // 사파리일떄 예외이다 is 일때 polyfill되는데 이떄 부모부터 만들어지는게 아니라 자식부터 만들어진다 그래서 부모가 만들어질때 자식들이 이미 만들어져있어서 부모가 자식들을 등록해주는 형태로 강제로 등록해준다\n this._connected_safari_and_standby.forEach((instance: any) => {\n // console.log('safari!!!!!!!!!!', instance)\n this._connected(instance, {noIncrements: true});\n // this._swc_connected_instance.add(instance);\n });\n // Invoke @onConnectedSwcApp lifecycle methods on all connected component instances\n // const hostSet = SwcUtils.getHostSet(this as any);\n\n // const scis = Array.from(this._swc_connected_instance);\n // await Promise.allSettled(scis.map(instance => this._invokeOnConnectedSwcAppStarted(instance)));\n\n // this._swc_connected_instance.forEach((instance: any) => {\n // this._invokeOnConnectedSwcAppStarted(instance);\n // });\n\n // Subscribe to router changes after connect\n if (!this._routerSubscription && this.router) {\n const config = this.__swc_engine.config;\n\n this._routerSubscription = this.router.observable.subscribe(async (route: RouterEventType) => {\n console.log('[SWC] Router event received:', route.triggerPoint);\n if (route.triggerPoint === 'end') {\n // 1. 모든 기존 연결된 자식들에게 라우트 이벤트 알림\n await this._handleRouteChange(route);\n }\n });\n\n // Navigate to initial path if specified\n if (config?.path) {\n console.log('[DEBUG] Navigating to initial path:', config.path);\n // this.router.go(config.path);\n }\n }\n }\n\n // async _invokeOnConnectedSwcAppStarted(instance: any) {\n // this._swcAppStartedInvocations++;\n // try {\n // // 이미 시작된 인스턴스라면 스킵 (비동기 병렬 중복 호출 방지)\n // if (this._swc_started_instances.has(instance)) return;\n // this._swc_started_instances.add(instance);\n //\n // const startedMethods = findAllLifecycleMetadata(instance, ON_CONNECTED_SWC_APP_METADATA_KEY);\n // if (startedMethods) {\n // const ps = startedMethods.map(m => instance._invokeLifecycleMethod(m));\n // await Promise.allSettled(ps);\n // }\n // } finally {\n // this._swcAppStartedInvocations--;\n // }\n // }\n\n connectedCallback() {\n // this.innerHTML='';\n // @ts-ignore\n if (super.connectedCallback) super.connectedCallback();\n\n const configStr = this.getAttribute('swc-get-application-config');\n const win = this.ownerDocument?.defaultView || window;\n if (configStr && win) {\n try {\n // console.log('vvvvvvvvvvvvvvvv->>>>', SwcUtils.findNearestSwcHost(this.host), SwcUtils.getHostSet(this.host))\n const userConfig = FunctionUtils.executeReturn({\n script: configStr,\n context: this,\n args: SwcUtils.getHelperAndHostSet(win, this)\n });\n this.connect(userConfig);\n } catch (e) {\n console.error('[SWC-APP-ENGINE] Script execution failed:', e);\n }\n }\n\n // 자기자신은 apphost로 포함이 도지않으니(부모) 내자신은 self로 넣는다\n this._connected(this);\n this.__swc_engine?.config?.onConnected?.(this);\n this._connectedDone(this);\n }\n\n disconnectedCallback() {\n // @ts-ignore\n if (super.disconnectedCallback) super.disconnectedCallback();\n this._routerSubscription?.unsubscribe();\n this._routerSubscription = undefined;\n this._lastRouterEvent = undefined;\n this.__swc_engine.disconnect();\n this.__swc_engine?.config?.onDisconnected?.(this);\n this._disconnected(this);\n }\n\n async routing(path: string) {\n await this.router?.go(path);\n }\n\n back(): void {\n this.router?.back();\n }\n\n forward(): void {\n this.router?.forward();\n }\n\n reload(): void {\n this.router?.reload();\n }\n\n // async completedSwcApp() {\n // const ss = Array.from(this._swc_connected_instance).flatMap((it) => {\n // const ms = findAllLifecycleMetadata(it, ON_CONNECTED_COMPLETED_SWC_APP_METADATA_KEY) ?? [];\n // return ms.map((sit) => it[sit](this));\n // });\n // await Promise.allSettled(ss);\n // }\n\n publishMessage(message: SwcAppMessage): void {\n // 메시지를 모든 connected component instances로 분배\n this._swc_connected_instance.forEach((instance: any) => {\n this._invokeMessageSubscribers(instance, message);\n });\n }\n\n _invokeMessageSubscribers(instance: any, message: SwcAppMessage) {\n const messageSubscribers = getSubscribeSwcAppMessageWhileConnectedMetadata(instance);\n if (messageSubscribers && Array.isArray(messageSubscribers)) {\n messageSubscribers.forEach(metadata => {\n const methodName = metadata.propertyKey;\n const messageType = metadata.messageType;\n const filter = metadata.filter;\n\n // 메시지 타입 확인\n let typeMatched = false;\n if (!messageType) {\n // messageType이 없으면 모든 메시지 매칭 (와일드카드)\n typeMatched = true;\n } else if (message.type === messageType) {\n typeMatched = true;\n }\n\n // 필터 적용\n let filterMatched = true;\n if (filter && typeMatched) {\n filterMatched = filter(message, instance);\n }\n\n // 조건을 만족하면 메서드 호출\n if (typeMatched && filterMatched && typeof instance[methodName] === 'function') {\n instance[methodName](message);\n }\n });\n }\n }\n };\n\n\n return w.customElements.whenDefined(tagName);\n\n\n}"],
5
+ "mappings": "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",
6
+ "names": ["config"]
7
+ }
@@ -1,7 +1,13 @@
1
+ var __create = Object.create;
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
4
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
5
11
  var __copyProps = (to, from, except, desc) => {
6
12
  if (from && typeof from === "object" || typeof from === "function") {
7
13
  for (let key of __getOwnPropNames(from))
@@ -10,9 +16,22 @@ var __copyProps = (to, from, except, desc) => {
10
16
  }
11
17
  return to;
12
18
  };
13
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
14
27
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
28
  var elements_exports = {};
29
+ __export(elements_exports, {
30
+ register: () => register,
31
+ registerSwcApp: () => registerSwcApp
32
+ });
16
33
  module.exports = __toCommonJS(elements_exports);
17
- __reExport(elements_exports, require("./register"), module.exports);
34
+ var import_SwcApp = __toESM(require("./SwcApp"), 1);
35
+ const registerSwcApp = import_SwcApp.default;
36
+ const register = [import_SwcApp.default];
18
37
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/elements/index.ts"],
4
- "sourcesContent": ["export * from './register';\n"],
5
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA,6BAAc,uBAAd;",
6
- "names": []
4
+ "sourcesContent": ["// export * from './tt/register';\nimport swcAppFactory from './SwcApp'\n// import swcAsyncFactory from './SwcAsync'\n// import swcLoopFactory from './SwcLoop'\n// import swcIfFactory from './SwcIf'\nexport const registerSwcApp = swcAppFactory;\n// export const registerSwcAsync = swcAsyncFactory;\n// export const registerSwcLoop = swcLoopFactory;\n// export const registerSwcIf = swcIfFactory;\n\nexport const register = [swcAppFactory];"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0B;AAInB,MAAM,iBAAiB,cAAAA;AAKvB,MAAM,WAAW,CAAC,cAAAA,OAAa;",
6
+ "names": ["swcAppFactory"]
7
7
  }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcAppMixin.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcAsync.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcAsyncTemplate.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcChoose.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcChooseTemplate.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcIf.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcIfTemplate.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcLoop.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcLoopTemplate.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=SwcSubTemplates.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
package/dist/cjs/index.js CHANGED
@@ -22,19 +22,23 @@ __export(src_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(src_exports);
24
24
  var import_reflect_metadata = require("reflect-metadata");
25
- var import_register = require("./elements/register");
25
+ __reExport(src_exports, require("./elements"), module.exports);
26
+ var import_elements = require("./elements");
26
27
  __reExport(src_exports, require("./decorators"), module.exports);
27
28
  __reExport(src_exports, require("./types"), module.exports);
28
29
  __reExport(src_exports, require("./utils/Utils"), module.exports);
29
30
  __reExport(src_exports, require("./config/config"), module.exports);
30
- var src_default = (w, other) => {
31
- const cr = (0, import_register.registerAllElements)(w);
32
- const r = other?.map((fn) => {
33
- if (typeof fn === "function") {
34
- const a = fn(w);
35
- } else {
31
+ var src_default = async (w, other) => {
32
+ console.log("rr");
33
+ const cr = await Promise.all(import_elements.register.map((it) => it(w)));
34
+ console.log("rr11");
35
+ if (other) {
36
+ for (const fn of other) {
37
+ if (typeof fn === "function") {
38
+ await fn(w);
39
+ }
36
40
  }
37
- });
41
+ }
38
42
  return cr;
39
43
  };
40
44
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["import 'reflect-metadata';\nimport { registerAllElements } from './elements/register';\nimport {ConstructorType} from \"@dooboostore/core\";\n\n// Decorators\nexport * from './decorators';\n\n// Types\nexport * from './types';\n\n// Utilities\nexport * from './utils/Utils';\n\n// Config\nexport * from './config/config';\n\n// Registration Factory\nexport default (w: Window, other?: (((w: Window) => ConstructorType<any>) | any) []) => {\n const cr = registerAllElements(w);\n const r = other?.map(fn => {\n if (typeof fn === 'function') {\n const a = fn(w);\n } else {\n }\n });\n\n return cr;\n // return r??[];\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAO;AACP,sBAAoC;AAIpC,wBAAc,yBALd;AAQA,wBAAc,oBARd;AAWA,wBAAc,0BAXd;AAcA,wBAAc,4BAdd;AAiBA,IAAO,cAAQ,CAAC,GAAW,UAA6D;AACtF,QAAM,SAAK,qCAAoB,CAAC;AAChC,QAAM,IAAI,OAAO,IAAI,QAAM;AACzB,QAAI,OAAO,OAAO,YAAY;AAC5B,YAAM,IAAI,GAAG,CAAC;AAAA,IAChB,OAAO;AAAA,IACP;AAAA,EACF,CAAC;AAED,SAAO;AAET;",
4
+ "sourcesContent": ["import 'reflect-metadata';\nexport * from './elements'\nimport { register } from './elements';\nimport {ConstructorType} from \"@dooboostore/core\";\n\n// Decorators\nexport * from './decorators';\n\n// Types\nexport * from './types';\n\n// Utilities\nexport * from './utils/Utils';\n\n// Config\nexport * from './config/config';\n\n// Registration Factory\nexport default async (w: Window, other?: (((w: Window) => Promise<CustomElementConstructor> | CustomElementConstructor) | any) []) => {\n console.log('rr')\n const cr = await Promise.all(register.map(it => it(w)));\n console.log('rr11')\n // const cr = await elementFactories(w);\n if (other) {\n for (const fn of other) {\n if (typeof fn === 'function') {\n await fn(w);\n }\n }\n }\n\n return cr;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAO;AACP,wBAAc,uBADd;AAEA,sBAAyB;AAIzB,wBAAc,yBANd;AASA,wBAAc,oBATd;AAYA,wBAAc,0BAZd;AAeA,wBAAc,4BAfd;AAkBA,IAAO,cAAQ,OAAO,GAAW,UAAqG;AACpI,UAAQ,IAAI,IAAI;AAChB,QAAM,KAAK,MAAM,QAAQ,IAAI,yBAAS,IAAI,QAAM,GAAG,CAAC,CAAC,CAAC;AACtD,UAAQ,IAAI,MAAM;AAElB,MAAI,OAAO;AACT,eAAW,MAAM,OAAO;AACtB,UAAI,OAAO,OAAO,YAAY;AAC5B,cAAM,GAAG,CAAC;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,16 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
12
+ };
13
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
+ var window_d_exports = {};
15
+ module.exports = __toCommonJS(window_d_exports);
16
+ //# sourceMappingURL=window.d.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/window.d.ts"],
4
+ "sourcesContent": ["import {HTMLDialogElement} from \"@dooboostore/dom-parser\";\n\n/**\n * Global type augmentation for @dooboostore showcase\n */\ndeclare global {\n interface Window {\n HTMLElement: typeof HTMLElement;\n HTMLDivElement: typeof HTMLDivElement;\n HTMLButtonElement: typeof HTMLButtonElement;\n HTMLTemplateElement: typeof HTMLTemplateElement;\n HTMLAnchorElement: typeof HTMLAnchorElement;\n HTMLDialogElement: typeof HTMLDialogElement;\n ShadowRoot: typeof ShadowRoot;\n location: Location;\n document: Document;\n history: History;\n console: Console;\n IntersectionObserver: typeof IntersectionObserver;\n SwaggerUIBundle: any;\n\n }\n\n namespace Dooboostore {\n interface PackageInfo {\n id: string;\n name: string;\n description: string;\n longDescription: string;\n icon: string;\n color: string;\n features: PackageFeature[];\n example: string;\n }\n\n interface PackageFeature {\n title: string;\n desc: string;\n }\n }\n}\n\nexport {};\n"],
5
+ "mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
6
+ "names": []
7
+ }