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