ddd-react 1.3.5 → 1.3.7

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 (2) hide show
  1. package/dist/index.mjs +284 -274
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -1,157 +1,157 @@
1
- import { D as c, e as g, a as x, A as y, b as F, h as U, c as I } from "./h-BbaMkkC7.mjs";
2
- import { d as Pt, f as mt } from "./h-BbaMkkC7.mjs";
3
- function v(e, t) {
4
- if (e === null || t === null || e === void 0 || t === void 0)
5
- return e === t;
6
- if (typeof e != typeof t)
1
+ import { D as c, e as v, a as F, A as y, b as U, h as q, c as I } from "./h-BbaMkkC7.mjs";
2
+ import { d as Oe, f as me } from "./h-BbaMkkC7.mjs";
3
+ function E(t, e) {
4
+ if (t === null || e === null || t === void 0 || e === void 0)
5
+ return t === e;
6
+ if (typeof t != typeof e)
7
7
  return !1;
8
- if (Object.is(e, t))
8
+ if (Object.is(t, e))
9
9
  return !0;
10
- if (typeof e == "object") {
11
- if (e.constructor !== t.constructor)
10
+ if (typeof t == "object") {
11
+ if (t.constructor !== e.constructor)
12
12
  return !1;
13
- if (Array.isArray(e)) {
14
- if (e.length !== t.length)
13
+ if (Array.isArray(t)) {
14
+ if (t.length !== e.length)
15
15
  return !1;
16
- for (let r = 0; r < e.length; ++r)
17
- if (!v(e[r], t[r]))
16
+ for (let r = 0; r < t.length; ++r)
17
+ if (!E(t[r], e[r]))
18
18
  return !1;
19
19
  return !0;
20
20
  }
21
- if (e.constructor === RegExp)
22
- return e.source === t.source && e.flags === t.flags;
23
- if (e.valueOf !== Object.prototype.valueOf)
24
- return e.valueOf() === t.valueOf();
25
- if (e.toString !== Object.prototype.toString)
26
- return e.toString() === t.toString();
27
- const n = Object.keys(e);
28
- if (n.length !== Object.keys(t).length)
21
+ if (t.constructor === RegExp)
22
+ return t.source === e.source && t.flags === e.flags;
23
+ if (t.valueOf !== Object.prototype.valueOf)
24
+ return t.valueOf() === e.valueOf();
25
+ if (t.toString !== Object.prototype.toString)
26
+ return t.toString() === e.toString();
27
+ const n = Object.keys(t);
28
+ if (n.length !== Object.keys(e).length)
29
29
  return !1;
30
30
  for (let r = 0; r < n.length; ++r)
31
- if (!Object.prototype.hasOwnProperty.call(t, n[r]))
31
+ if (!Object.prototype.hasOwnProperty.call(e, n[r]))
32
32
  return !1;
33
33
  for (let r = 0; r < n.length; ++r) {
34
34
  const s = n[r];
35
- if (!(s === "_owner" && e.$$typeof) && !v(e[s], t[s]))
35
+ if (!(s === "_owner" && t.$$typeof) && !E(t[s], e[s]))
36
36
  return !1;
37
37
  }
38
38
  return !0;
39
39
  }
40
40
  return !1;
41
41
  }
42
- function S(e, t, n, r = null) {
42
+ function S(t, e, n, r = null) {
43
43
  function s(o) {
44
44
  const i = o;
45
- r ? t.call(r, i) : t(i);
45
+ r ? e.call(r, i) : e(i);
46
46
  }
47
- return n.addEventListener(e, s), s;
47
+ return n.addEventListener(t, s), s;
48
48
  }
49
- function $(e = {}, t, n = null) {
49
+ function $(t = {}, e, n = null) {
50
50
  const r = {};
51
- return Object.entries(e).forEach(([s, o]) => {
51
+ return Object.entries(t).forEach(([s, o]) => {
52
52
  r[s] = S(
53
53
  s,
54
54
  o,
55
- t,
55
+ e,
56
56
  n
57
57
  );
58
58
  }), r;
59
59
  }
60
- function q(e = {}, t) {
61
- Object.entries(e).forEach(([n, r]) => {
62
- t.removeEventListener(n, r);
60
+ function G(t = {}, e) {
61
+ Object.entries(t).forEach(([n, r]) => {
62
+ e.removeEventListener(n, r);
63
63
  });
64
64
  }
65
- function p(e) {
66
- const { type: t } = e;
67
- switch (t) {
65
+ function p(t) {
66
+ const { type: e } = t;
67
+ switch (e) {
68
68
  case c.TEXT: {
69
- G(e);
69
+ W(t);
70
70
  break;
71
71
  }
72
72
  case c.ELEMENT: {
73
- W(e);
73
+ B(t);
74
74
  break;
75
75
  }
76
76
  case c.FRAGMENT: {
77
- B(e);
77
+ X(t);
78
78
  break;
79
79
  }
80
80
  case c.COMPONENT: {
81
- e.component?.unmount();
81
+ t.component?.unmount();
82
82
  break;
83
83
  }
84
84
  case c.PORTAL: {
85
- X(e);
85
+ _(t);
86
86
  break;
87
87
  }
88
88
  default:
89
- throw new Error(`Can't destroy DOM of type: ${t}`);
89
+ throw new Error(`Can't destroy DOM of type: ${e}`);
90
90
  }
91
- delete e.el;
91
+ delete t.el;
92
92
  }
93
- function G(e) {
94
- const { el: t } = e;
95
- t && t.remove();
93
+ function W(t) {
94
+ const { el: e } = t;
95
+ e && e.remove();
96
96
  }
97
- function W(e) {
98
- const { el: t, children: n, listeners: r, props: s } = e;
99
- s?.ref && typeof s.ref == "object" && "current" in s.ref && (s.ref.current = null), t && t.remove(), n && n.forEach(p), r && t && (q(r, t), delete e.listeners);
97
+ function B(t) {
98
+ const { el: e, children: n, listeners: r, props: s } = t;
99
+ s?.ref && typeof s.ref == "object" && "current" in s.ref && (s.ref.current = null), e && e.remove(), n && n.forEach(p), r && e && (G(r, e), delete t.listeners);
100
100
  }
101
- function B(e) {
102
- const { children: t } = e;
103
- t && t.forEach(p);
101
+ function X(t) {
102
+ const { children: e } = t;
103
+ e && e.forEach(p);
104
104
  }
105
- function X(e) {
106
- const { children: t } = e;
107
- t && t.forEach(p);
105
+ function _(t) {
106
+ const { children: e } = t;
107
+ e && e.forEach(p);
108
108
  }
109
- function L(e, t, n) {
110
- e.style[t] = n.toString();
109
+ function w(t, e, n) {
110
+ t.style[e] = n.toString();
111
111
  }
112
- function _(e, t) {
113
- e.style[t] = null;
112
+ function J(t, e) {
113
+ t.style[e] = null;
114
114
  }
115
- function J(e, t) {
116
- const { class: n, style: r, ...s } = t;
117
- n && K(e, n), r && Object.entries(r).forEach(([o, i]) => {
118
- L(e, o, i);
115
+ function K(t, e) {
116
+ const { class: n, style: r, ...s } = e;
117
+ n && Y(t, n), r && Object.entries(r).forEach(([o, i]) => {
118
+ w(t, o, i);
119
119
  });
120
120
  for (const [o, i] of Object.entries(s))
121
- w(e, o, i);
121
+ L(t, o, i);
122
122
  }
123
- function K(e, t) {
124
- if (e instanceof SVGElement) {
125
- e.removeAttribute("class"), typeof t == "string" ? e.setAttribute("class", t) : Array.isArray(t) && e.classList.add(...t);
123
+ function Y(t, e) {
124
+ if (t instanceof SVGElement) {
125
+ t.removeAttribute("class"), typeof e == "string" ? t.setAttribute("class", e) : Array.isArray(e) && t.classList.add(...e);
126
126
  return;
127
127
  }
128
- e.className = "", typeof t == "string" ? e.className = t : Array.isArray(t) && e.classList.add(...t);
129
- }
130
- function w(e, t, n) {
131
- n == null ? C(e, t) : e.setAttribute(t, String(n));
128
+ t.className = "", typeof e == "string" ? t.className = e : Array.isArray(e) && t.classList.add(...e);
132
129
  }
133
- function C(e, t) {
134
- e[t] = null, e.removeAttribute(t);
130
+ function L(t, e, n) {
131
+ n == null ? j(t, e) : t.setAttribute(e, String(n));
135
132
  }
136
- let O = !1;
137
- const P = [];
138
- function E(e) {
139
- P.push(e), Y();
133
+ function j(t, e) {
134
+ t[e] = null, t.removeAttribute(e);
140
135
  }
141
- function Y() {
142
- O || (O = !0, queueMicrotask(H));
136
+ let P = !1;
137
+ const O = [];
138
+ function g(t) {
139
+ O.push(t), H();
143
140
  }
144
141
  function H() {
145
- for (; P.length > 0; ) {
146
- const e = P.shift();
147
- let t;
142
+ P || (P = !0, queueMicrotask(z));
143
+ }
144
+ function z() {
145
+ for (; O.length > 0; ) {
146
+ const t = O.shift();
147
+ let e;
148
148
  try {
149
- t = e();
149
+ e = t();
150
150
  } catch (n) {
151
151
  console.error(`[scheduler]: ${n}`);
152
152
  continue;
153
153
  }
154
- Promise.resolve(t).then(
154
+ Promise.resolve(e).then(
155
155
  () => {
156
156
  },
157
157
  (n) => {
@@ -159,85 +159,85 @@ function H() {
159
159
  }
160
160
  );
161
161
  }
162
- O = !1;
162
+ P = !1;
163
163
  }
164
- function A(e) {
165
- const { on: t = {}, ...n } = e.props;
166
- return delete n.key, { props: n, events: t };
164
+ function A(t) {
165
+ const { on: e = {}, ...n } = t.props;
166
+ return delete n.key, { props: n, events: e };
167
167
  }
168
- function h(e, t, n = null, r = null) {
169
- switch (e.type) {
168
+ function h(t, e, n = null, r = null) {
169
+ switch (t.type) {
170
170
  case c.TEXT: {
171
- z(e, t, n);
171
+ Q(t, e, n);
172
172
  break;
173
173
  }
174
174
  case c.ELEMENT: {
175
- Z(e, t, n, r);
175
+ V(t, e, n, r);
176
176
  break;
177
177
  }
178
178
  case c.FRAGMENT: {
179
- Q(e, t, n, r);
179
+ Z(t, e, n, r);
180
180
  break;
181
181
  }
182
182
  case c.COMPONENT: {
183
- tt(e, t, n, r);
184
- const s = e.component;
185
- s && E(() => s.onMount());
183
+ te(t, e, n, r);
184
+ const s = t.component;
185
+ s && g(() => s.onMount());
186
186
  break;
187
187
  }
188
188
  case c.PORTAL: {
189
- et(e, r);
189
+ ne(t, r);
190
190
  break;
191
191
  }
192
192
  default:
193
- throw new Error(`Can't mount DOM of type: ${e.type}`);
193
+ throw new Error(`Can't mount DOM of type: ${t.type}`);
194
194
  }
195
195
  }
196
- function z(e, t, n) {
197
- const { value: r } = e, s = document.createTextNode(r);
198
- e.el = s, j(s, t, n);
196
+ function Q(t, e, n) {
197
+ const { value: r } = t, s = document.createTextNode(r);
198
+ t.el = s, x(s, e, n);
199
199
  }
200
- function Q(e, t, n, r) {
201
- const { children: s } = e;
202
- e.el = t, s?.forEach((o, i) => {
203
- h(o, t, n != null ? n + i : null, r);
200
+ function Z(t, e, n, r) {
201
+ const { children: s } = t;
202
+ t.el = e, s?.forEach((o, i) => {
203
+ h(o, e, n != null ? n + i : null, r);
204
204
  });
205
205
  }
206
- function Z(e, t, n, r) {
207
- const { tag: s, children: o } = e, u = s === "svg" || t instanceof SVGElement ? document.createElementNS("http://www.w3.org/2000/svg", s) : document.createElement(s);
208
- V(u, e, r), e.el = u, o?.forEach((l) => {
209
- h(l, u, null, r);
210
- }), j(u, t, n);
206
+ function V(t, e, n, r) {
207
+ const { tag: s, children: o } = t, u = s === "svg" || e instanceof SVGElement ? document.createElementNS("http://www.w3.org/2000/svg", s) : document.createElement(s);
208
+ ee(u, t, r), t.el = u, o?.forEach((f) => {
209
+ h(f, u, null, r);
210
+ }), x(u, e, n);
211
211
  }
212
- function V(e, t, n) {
213
- const { props: r, events: s } = A(t);
214
- r.ref && typeof r.ref == "object" && "current" in r.ref && (r.ref.current = e, delete r.ref), t.listeners = $(s, e, n), J(e, r);
212
+ function ee(t, e, n) {
213
+ const { props: r, events: s } = A(e);
214
+ r.ref && typeof r.ref == "object" && "current" in r.ref && (r.ref.current = t, delete r.ref), e.listeners = $(s, t, n), K(t, r);
215
215
  }
216
- function tt(e, t, n, r) {
217
- const s = e.tag, { props: o } = A(e), i = new s(o, r);
218
- i.mount(t, n), e.component = i, e.el = i.firstElement || null;
216
+ function te(t, e, n, r) {
217
+ const s = t.tag, { props: o } = A(t), i = new s(o, r);
218
+ i.mount(e, n), t.component = i, t.el = i.firstElement || null;
219
219
  }
220
- function j(e, t, n) {
220
+ function x(t, e, n) {
221
221
  if (n == null) {
222
- t.append(e);
222
+ e.append(t);
223
223
  return;
224
224
  }
225
225
  if (n < 0)
226
226
  throw new Error(`Index must be a positive integer, got ${n}`);
227
- const r = t.childNodes;
228
- n >= r.length ? t.append(e) : t.insertBefore(e, r[n]);
227
+ const r = e.childNodes;
228
+ n >= r.length ? e.append(t) : e.insertBefore(t, r[n]);
229
229
  }
230
- function et(e, t) {
231
- const { children: n, container: r } = e;
230
+ function ne(t, e) {
231
+ const { children: n, container: r } = t;
232
232
  n?.forEach((s) => {
233
- h(s, r, null, t);
233
+ h(s, r, null, e);
234
234
  });
235
235
  }
236
- function D(e, t) {
237
- if (e.type !== t.type)
236
+ function D(t, e) {
237
+ if (t.type !== e.type)
238
238
  return !1;
239
- if (e.type === c.ELEMENT) {
240
- const n = e, r = t, {
239
+ if (t.type === c.ELEMENT) {
240
+ const n = t, r = e, {
241
241
  tag: s,
242
242
  props: { key: o }
243
243
  } = n, {
@@ -246,81 +246,81 @@ function D(e, t) {
246
246
  } = r;
247
247
  return s === i && o === u;
248
248
  }
249
- if (e.type === c.COMPONENT) {
250
- const n = e, r = t, { tag: s } = n, { tag: o } = r;
249
+ if (t.type === c.COMPONENT) {
250
+ const n = t, r = e, { tag: s } = n, { tag: o } = r;
251
251
  return s === o;
252
252
  }
253
- if (e.type === c.PORTAL) {
254
- const n = e, r = t;
253
+ if (t.type === c.PORTAL) {
254
+ const n = t, r = e;
255
255
  return n.container === r.container;
256
256
  }
257
257
  return !0;
258
258
  }
259
- function T(e, t) {
260
- const n = Object.keys(e), r = Object.keys(t), s = [], o = [];
259
+ function T(t, e) {
260
+ const n = Object.keys(t), r = Object.keys(e), s = [], o = [];
261
261
  for (const i of r)
262
- i in e ? e[i] !== t[i] && o.push(i) : s.push(i);
262
+ i in t ? t[i] !== e[i] && o.push(i) : s.push(i);
263
263
  return {
264
264
  added: s,
265
- removed: n.filter((i) => !(i in t)),
265
+ removed: n.filter((i) => !(i in e)),
266
266
  updated: o
267
267
  };
268
268
  }
269
- function nt(e) {
270
- return e !== "";
269
+ function re(t) {
270
+ return t !== "";
271
271
  }
272
- function N(e) {
273
- return nt(e.trim());
272
+ function N(t) {
273
+ return re(t.trim());
274
274
  }
275
- function m(e, t, n, r = null) {
276
- if (!D(e, t)) {
277
- const s = rt(n, e.el);
278
- return p(e), h(t, n, s, r), t;
275
+ function m(t, e, n, r = null) {
276
+ if (!D(t, e)) {
277
+ const s = se(n, t.el);
278
+ return p(t), h(e, n, s, r), e;
279
279
  }
280
- switch (t.el = e.el, t.type) {
280
+ switch (e.el = t.el, e.type) {
281
281
  case c.TEXT:
282
- return st(e, t), t;
282
+ return oe(t, e), e;
283
283
  case c.ELEMENT: {
284
- ot(e, t, r);
284
+ ie(t, e, r);
285
285
  break;
286
286
  }
287
287
  case c.COMPONENT: {
288
- lt(e, t);
288
+ ae(t, e);
289
289
  break;
290
290
  }
291
291
  case c.PORTAL: {
292
- at(e, t, r);
292
+ he(t, e, r);
293
293
  break;
294
294
  }
295
295
  }
296
- return R(e, t, r), t;
296
+ return R(t, e, r), e;
297
297
  }
298
- function rt(e, t) {
299
- if (!t) return null;
300
- const n = Array.from(e.childNodes).indexOf(t);
298
+ function se(t, e) {
299
+ if (!e) return null;
300
+ const n = Array.from(t.childNodes).indexOf(e);
301
301
  return n < 0 ? null : n;
302
302
  }
303
- function st(e, t) {
304
- const n = e.el, { value: r } = e, { value: s } = t;
303
+ function oe(t, e) {
304
+ const n = t.el, { value: r } = t, { value: s } = e;
305
305
  r !== s && n && (n.nodeValue = s);
306
306
  }
307
- function ot(e, t, n) {
308
- const r = e.el, {
307
+ function ie(t, e, n) {
308
+ const r = t.el, {
309
309
  class: s,
310
310
  style: o,
311
311
  on: i,
312
312
  ...u
313
- } = e.props ?? {}, {
314
- class: l,
315
- style: f,
313
+ } = t.props ?? {}, {
314
+ class: f,
315
+ style: l,
316
316
  on: a,
317
317
  ...d
318
- } = t.props ?? {}, { listeners: b } = e;
319
- it(r, u, d), ct(r, s, l), ft(
318
+ } = e.props ?? {}, { listeners: b } = t;
319
+ ce(r, u, d), le(r, s, f), ue(
320
320
  r,
321
321
  o,
322
- f
323
- ), t.listeners = ut(
322
+ l
323
+ ), e.listeners = fe(
324
324
  r,
325
325
  b,
326
326
  i ?? {},
@@ -328,99 +328,102 @@ function ot(e, t, n) {
328
328
  n
329
329
  );
330
330
  }
331
- function it(e, t = {}, n = {}) {
332
- const r = t.ref, s = n.ref;
333
- r !== s && (r && typeof r == "object" && "current" in r && (r.current = null), s && typeof s == "object" && "current" in s && (s.current = e));
334
- const o = { ...t }, i = { ...n };
331
+ function ce(t, e = {}, n = {}) {
332
+ const r = e.ref, s = n.ref;
333
+ r !== s && (r && typeof r == "object" && "current" in r && (r.current = null), s && typeof s == "object" && "current" in s && (s.current = t));
334
+ const o = { ...e }, i = { ...n };
335
335
  delete o.ref, delete i.ref;
336
- const { added: u, removed: l, updated: f } = T(o, i);
337
- for (const a of l)
338
- C(e, a);
339
- for (const a of u.concat(f))
340
- w(e, a, i[a]);
336
+ const { added: u, removed: f, updated: l } = T(o, i);
337
+ for (const a of f)
338
+ j(t, a);
339
+ for (const a of u.concat(l))
340
+ L(t, a, i[a]);
341
341
  }
342
- function ct(e, t, n) {
343
- const r = M(t), s = M(n), { added: o, removed: i } = F(r, s);
344
- i.length > 0 && e.classList.remove(...i), o.length > 0 && e.classList.add(...o);
342
+ function le(t, e, n) {
343
+ const r = M(e), s = M(n), { added: o, removed: i } = U(r, s);
344
+ i.length > 0 && t.classList.remove(...i), o.length > 0 && t.classList.add(...o);
345
345
  }
346
- function M(e = "") {
347
- return Array.isArray(e) ? e.filter(N) : String(e).split(/(\s+)/).filter(N);
346
+ function M(t = "") {
347
+ return Array.isArray(t) ? t.filter(N) : String(t).split(/(\s+)/).filter(N);
348
348
  }
349
- function ft(e, t = {}, n = {}) {
350
- const { added: r, removed: s, updated: o } = T(t, n);
349
+ function ue(t, e = {}, n = {}) {
350
+ const { added: r, removed: s, updated: o } = T(e, n);
351
351
  for (const i of s)
352
- _(e, i);
352
+ J(t, i);
353
353
  for (const i of r.concat(o))
354
- L(e, i, n[i]);
354
+ w(t, i, n[i]);
355
355
  }
356
- function ut(e, t = {}, n = {}, r = {}, s = null) {
356
+ function fe(t, e = {}, n = {}, r = {}, s = null) {
357
357
  const { removed: o, added: i, updated: u } = T(n, r);
358
- for (const f of o.concat(u)) {
359
- const a = t?.[f];
360
- a && e.removeEventListener(f, a);
361
- }
362
- const l = {};
363
- for (const f of i.concat(u))
364
- l[f] = S(
365
- f,
366
- r[f],
367
- e,
358
+ for (const l of o.concat(u)) {
359
+ const a = e?.[l];
360
+ a && t.removeEventListener(l, a);
361
+ }
362
+ const f = {};
363
+ for (const l of i.concat(u))
364
+ f[l] = S(
365
+ l,
366
+ r[l],
367
+ t,
368
368
  s
369
369
  );
370
- return l;
371
- }
372
- function R(e, t, n) {
373
- const r = g(e), s = g(t), o = e.el, i = x(r, s, D), u = n?.offset ?? 0;
374
- for (const l of i)
375
- if (l.op === y.NOOP) {
376
- const { originalIndex: f, index: a } = l;
377
- m(r[f], s[a], o, n);
370
+ return f;
371
+ }
372
+ function R(t, e, n) {
373
+ const r = v(t), s = v(e), o = t.el, i = F(r, s, D), u = n?.offset ?? 0;
374
+ for (const f of i)
375
+ if (f.op === y.NOOP) {
376
+ const { originalIndex: l, index: a } = f;
377
+ m(r[l], s[a], o, n);
378
378
  }
379
- for (const l of i)
380
- switch (l.op) {
379
+ for (const f of i)
380
+ switch (f.op) {
381
381
  case y.MOVE: {
382
- const { from: f, index: a } = l, d = r[f].el, b = o.childNodes[a + u];
383
- d && (o.insertBefore(d, b), m(r[f], s[a], o, n));
382
+ const { from: l, index: a } = f, d = r[l].el, b = o.childNodes[a + u];
383
+ d && (o.insertBefore(d, b), m(r[l], s[a], o, n));
384
384
  break;
385
385
  }
386
386
  case y.REMOVE: {
387
- const { item: f } = l;
388
- p(f);
387
+ const { item: l } = f;
388
+ p(l);
389
389
  break;
390
390
  }
391
391
  case y.ADD: {
392
- const { index: f, item: a } = l;
393
- h(a, o, f + u, n);
392
+ const { index: l, item: a } = f;
393
+ h(a, o, l + u, n);
394
394
  break;
395
395
  }
396
396
  }
397
397
  }
398
- function lt(e, t) {
399
- const { component: n } = e, { props: r } = A(t);
400
- n.updateProps(r), t.component = n, t.el = n.firstElement;
398
+ function ae(t, e) {
399
+ const { component: n } = t, { props: r } = A(e);
400
+ n.updateProps(r), e.component = n, e.el = n.firstElement;
401
401
  }
402
- function at(e, t, n) {
403
- if (e.container !== t.container) {
404
- p(e), h(t, document.body, null, n);
402
+ function he(t, e, n) {
403
+ if (t.container !== e.container) {
404
+ p(t), h(e, document.body, null, n);
405
405
  return;
406
406
  }
407
- R(e, t, n);
407
+ R(t, e, n);
408
408
  }
409
- const ht = (e) => e.constructor.name.includes("Provider"), pt = (e) => e.constructor.name.includes("Consumer");
410
- class k {
411
- constructor(t = {}, n) {
412
- this.isMounted = !1, this.vdom = null, this.hostEl = null, this.parent = null, this.state = {}, this.context = null, this.dependencies = [], this.subscribedProvider = null, this.props = t, this.parent = n;
409
+ const k = (t) => t.constructor.name.includes("Provider"), pe = (t) => t.constructor.name.includes("Consumer");
410
+ class C {
411
+ constructor(e = {}, n) {
412
+ this.isMounted = !1, this.vdom = null, this.hostEl = null, this.parent = null, this.state = {}, this.context = null, this.dependencies = [], this.subscribedProvider = null, this.props = e, this.parent = n;
413
413
  }
414
- addDependency({ consumer: t }) {
415
- this.dependencies.some((n) => n.consumer === t) || (this.dependencies.push({ consumer: t }), t.subscribedProvider = this);
414
+ addDependency({ consumer: e }) {
415
+ this.dependencies.some((n) => n.consumer === e) || (this.dependencies.push({ consumer: e }), e.subscribedProvider = this);
416
416
  }
417
- removeDependency({ consumer: t }) {
418
- const n = this.dependencies.findIndex((r) => r.consumer === t);
419
- n !== -1 && (this.dependencies.splice(n, 1), t.subscribedProvider = null);
417
+ removeDependency({ consumer: e }) {
418
+ const n = this.dependencies.findIndex((r) => r.consumer === e);
419
+ n !== -1 && (this.dependencies.splice(n, 1), e.subscribedProvider = null);
420
420
  }
421
421
  notify() {
422
- this.dependencies.forEach(({ consumer: t }) => {
423
- t.isMounted && t.updateContext() && t.patch();
422
+ console.log("notify"), console.log("this.dependencies", this.dependencies), this.dependencies.forEach(({ consumer: e }) => {
423
+ if (console.log("consumer", e), console.log("consumer.isMounted", e.isMounted), e.isMounted) {
424
+ const n = e.updateContext();
425
+ console.log("changed", n), n && (console.log("consumer.patch"), e.patch());
426
+ }
424
427
  });
425
428
  }
426
429
  onMount() {
@@ -436,7 +439,7 @@ class k {
436
439
  return Promise.resolve();
437
440
  }
438
441
  get elements() {
439
- return this.vdom == null ? [] : this.vdom.type === c.FRAGMENT ? g(this.vdom).flatMap((t) => t.type === c.COMPONENT && t.component ? t.component.elements : t.el ? [t.el] : []) : this.vdom.el ? [this.vdom.el] : [];
442
+ return this.vdom == null ? [] : this.vdom.type === c.FRAGMENT ? v(this.vdom).flatMap((e) => e.type === c.COMPONENT && e.component ? e.component.elements : e.el ? [e.el] : []) : this.vdom.el ? [this.vdom.el] : [];
440
443
  }
441
444
  get firstElement() {
442
445
  return this.elements[0];
@@ -444,54 +447,61 @@ class k {
444
447
  get offset() {
445
448
  return this.vdom?.type === c.FRAGMENT && this.hostEl && this.firstElement ? Array.from(this.hostEl.children).indexOf(this.firstElement) : 0;
446
449
  }
447
- updateProps(t) {
448
- const n = { ...this.props, ...t }, r = this.props;
450
+ updateProps(e) {
451
+ console.log("updateProps", this);
452
+ const n = { ...this.props, ...e }, r = this.props;
449
453
  this.props = n;
450
454
  let s = this.updateContext();
451
- v(r, n) && !s || (ht(this) && this.notify(), this.patch());
455
+ if (console.log("isEqual(oldProps, newProps)", E(r, n)), console.log("isContextUpdated", s), E(r, n) && !s) {
456
+ console.log("return");
457
+ return;
458
+ }
459
+ console.log("isProvider(this as Component)", k(this)), k(this) && this.notify(), this.patch();
452
460
  }
453
- setState(t) {
454
- typeof t == "function" ? this.state = {
461
+ setState(e) {
462
+ typeof e == "function" ? this.state = {
455
463
  ...this.state,
456
- ...t(this.state, this.props)
457
- } : this.state = { ...this.state, ...t }, this.patch();
464
+ ...e(this.state, this.props)
465
+ } : this.state = { ...this.state, ...e }, this.patch();
458
466
  }
459
- mount(t, n = null) {
467
+ mount(e, n = null) {
460
468
  if (this.isMounted)
461
469
  throw new Error("Component is already mounted");
462
- pt(this) && !this.subscribedProvider && this.subscribeToProvider(), this.updateContext(), this.vdom = this.render(), h(this.vdom, t, n, this), this.hostEl = t, this.isMounted = !0;
470
+ pe(this) && !this.subscribedProvider && this.subscribeToProvider(), this.updateContext(), this.vdom = this.render(), h(this.vdom, e, n, this), this.hostEl = e, this.isMounted = !0;
463
471
  }
464
472
  unmount() {
465
- this.isMounted && (E(() => this.onWillUnmount()), this.subscribedProvider && this.subscribedProvider.removeDependency({ consumer: this }), this.dependencies.forEach(({ consumer: t }) => {
466
- t.subscribedProvider = null;
467
- }), this.dependencies = [], this.vdom && p(this.vdom), E(() => this.onUnmount()), this.vdom = null, this.hostEl = null, this.isMounted = !1);
473
+ this.isMounted && (g(() => this.onWillUnmount()), this.subscribedProvider && this.subscribedProvider.removeDependency({ consumer: this }), this.dependencies.forEach(({ consumer: e }) => {
474
+ e.subscribedProvider = null;
475
+ }), this.dependencies = [], this.vdom && p(this.vdom), g(() => this.onUnmount()), this.vdom = null, this.hostEl = null, this.isMounted = !1);
468
476
  }
469
477
  patch() {
470
478
  if (!this.isMounted || !this.hostEl || !this.vdom)
471
479
  return;
472
- const t = this.render();
473
- this.vdom = m(this.vdom, t, this.hostEl, this), E(() => this.onUpdate());
480
+ const e = this.render();
481
+ this.vdom = m(this.vdom, e, this.hostEl, this), g(() => this.onUpdate());
474
482
  }
475
483
  updateContext() {
476
- const t = Object.getPrototypeOf(this).constructor.contextType;
484
+ console.log("updateContext");
485
+ const e = Object.getPrototypeOf(this).constructor.contextType;
486
+ console.log("context", e);
477
487
  let n = this.parent;
478
- if (t != null) {
479
- for (; n; ) {
480
- if (Object.getPrototypeOf(n).constructor === t.Provider)
481
- return this.context = n.props.value, !0;
488
+ if (e != null) {
489
+ for (console.log(1); n; ) {
490
+ if (console.log(2), Object.getPrototypeOf(n).constructor === e.Provider)
491
+ return this.context = n.props.value, console.log("this.context", this.context), console.log(3), !0;
482
492
  n = n.parent;
483
493
  }
484
- n == null && (this.context = t.defaultValue);
494
+ n == null && (console.log(4), this.context = e.defaultValue);
485
495
  }
486
- return !1;
496
+ return console.log(5), !1;
487
497
  }
488
498
  subscribeToProvider() {
489
- const t = Object.getPrototypeOf(this).constructor.contextType;
490
- if (!t)
499
+ const e = Object.getPrototypeOf(this).constructor.contextType;
500
+ if (!e)
491
501
  return;
492
502
  let n = this.parent;
493
503
  for (; n; ) {
494
- if (Object.getPrototypeOf(n).constructor === t.Provider) {
504
+ if (Object.getPrototypeOf(n).constructor === e.Provider) {
495
505
  n.addDependency({ consumer: this });
496
506
  break;
497
507
  }
@@ -499,14 +509,14 @@ class k {
499
509
  }
500
510
  }
501
511
  }
502
- function yt(e) {
503
- class t extends k {
512
+ function ye(t) {
513
+ class e extends C {
504
514
  render() {
505
515
  let o = [];
506
- return Array.isArray(this.props.children) ? o = this.props.children : this.props.children ? o = [this.props.children] : o = [], U(o);
516
+ return Array.isArray(this.props.children) ? o = this.props.children : this.props.children ? o = [this.props.children] : o = [], q(o);
507
517
  }
508
518
  }
509
- const r = class r extends k {
519
+ const r = class r extends C {
510
520
  render() {
511
521
  let o = this.props.children;
512
522
  if (Array.isArray(o))
@@ -522,37 +532,37 @@ function yt(e) {
522
532
  }
523
533
  };
524
534
  r.contextType = {
525
- Provider: t,
526
- defaultValue: e
535
+ Provider: e,
536
+ defaultValue: t
527
537
  };
528
538
  let n = r;
529
539
  return {
530
- Provider: t,
540
+ Provider: e,
531
541
  Consumer: n,
532
- defaultValue: e
542
+ defaultValue: t
533
543
  };
534
544
  }
535
- function Et(e, t) {
536
- if (!t)
545
+ function ge(t, e) {
546
+ if (!e)
537
547
  throw new Error("Container element is not provided for rendering.");
538
- h(e, t);
548
+ h(t, e);
539
549
  }
540
- function bt(e = null) {
550
+ function Ee(t = null) {
541
551
  return {
542
- current: e
552
+ current: t
543
553
  };
544
554
  }
545
- function gt(e, t) {
546
- const n = Array.isArray(e) ? e : [e];
547
- return I(n, t);
555
+ function be(t, e) {
556
+ const n = Array.isArray(t) ? t : [t];
557
+ return I(n, e);
548
558
  }
549
559
  export {
550
- k as Component,
551
- yt as createContext,
552
- gt as createPortal,
553
- bt as createRef,
554
- Pt as h,
555
- U as hFragment,
556
- mt as hString,
557
- Et as render
560
+ C as Component,
561
+ ye as createContext,
562
+ be as createPortal,
563
+ Ee as createRef,
564
+ Oe as h,
565
+ q as hFragment,
566
+ me as hString,
567
+ ge as render
558
568
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ddd-react",
3
- "version": "1.3.5",
3
+ "version": "1.3.7",
4
4
  "scripts": {
5
5
  "test": "echo \"Error: no test specified\" && exit 1",
6
6
  "type-check": "tsc --noEmit",