@symbiotejs/symbiote 2.2.4 → 2.3.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.
@@ -6,18 +6,15 @@ import { DICT } from './dictionary.js';
6
6
  * @param {T} fnCtx
7
7
  */
8
8
  export function itemizeProcessor(fr, fnCtx) {
9
- [...fr.querySelectorAll(`[${DICT.LIST_ATTR}]`)]
10
- .filter((el) => {
9
+ [...fr.querySelectorAll(`[${DICT.LIST_ATTR}]`)].filter((el) => {
11
10
  return !el.matches(`[${DICT.LIST_ATTR}] [${DICT.LIST_ATTR}]`);
12
- })
13
- .forEach((el) => {
11
+ }).forEach((el) => {
14
12
  let itemTag = el.getAttribute(DICT.LIST_ITEM_TAG_ATTR);
15
13
  let itemClass;
16
14
  if (itemTag) {
17
15
  itemClass = window.customElements.get(itemTag);
18
16
  }
19
17
  if (!itemClass) {
20
- // @ts-ignore - TS doesn't resolve Symbiote via getter =(
21
18
  itemClass = class extends fnCtx.Symbiote {
22
19
  constructor() {
23
20
  super();
@@ -26,8 +23,7 @@ export function itemizeProcessor(fr, fnCtx) {
26
23
  }
27
24
  }
28
25
  };
29
- let itemTpl = el.innerHTML;
30
- itemClass.template = itemTpl;
26
+ itemClass.template = el.querySelector('template')?.innerHTML || el.innerHTML;
31
27
  itemClass.reg(itemTag);
32
28
  }
33
29
  while (el.firstChild) {
@@ -41,18 +37,14 @@ export function itemizeProcessor(fr, fnCtx) {
41
37
  }
42
38
  return;
43
39
  }
40
+ /** @type {*[]} */
44
41
  let currentList = [...el.children];
45
42
  let fragment;
46
- let fillItems = (/** @type {any[]} */ items) => {
43
+ let fillItems = (/** @type {*[]} */ items) => {
47
44
  items.forEach((item, idx) => {
48
45
  if (currentList[idx]) {
49
- // @ts-ignore
50
46
  if (currentList[idx].set$) {
51
- // wait until repeated element's state will be initialized
52
- setTimeout(() => {
53
- // @ts-ignore
54
- currentList[idx].set$(item);
55
- });
47
+ currentList[idx].set$(item);
56
48
  } else {
57
49
  for (let k in item) {
58
50
  currentList[idx][k] = item[k];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@symbiotejs/symbiote",
4
- "version": "2.2.4",
4
+ "version": "2.3.0",
5
5
  "description": "Symbiote.js - close-to-platform frontend library for building super-powered web components",
6
6
  "author": "symbiote.js@gmail.com",
7
7
  "license": "MIT",
@@ -22,9 +22,45 @@
22
22
  "types": "./types/core/index.d.ts",
23
23
  "default": "./core/index.js"
24
24
  },
25
+ "./core/Symbiote.js": {
26
+ "types": "./types/core/Symbiote.d.ts",
27
+ "default": "./core/Symbiote.js"
28
+ },
29
+ "./core/PubSub.js": {
30
+ "types": "./types/core/PubSub.d.ts",
31
+ "default": "./core/PubSub.js"
32
+ },
33
+ "./core/html.js": {
34
+ "types": "./types/core/html.d.ts",
35
+ "default": "./core/html.js"
36
+ },
37
+ "./core/css.js": {
38
+ "types": "./types/core/css.d.ts",
39
+ "default": "./core/css.js"
40
+ },
25
41
  "./core/slotProcessor.js": {
26
42
  "types": "./types/core/slotProcessor.d.ts",
27
43
  "default": "./core/slotProcessor.js"
44
+ },
45
+ "./core/AppRouter.js": {
46
+ "types": "./types/core/AppRouter.d.ts",
47
+ "default": "./core/AppRouter.js"
48
+ },
49
+ "./utils/UID.js": {
50
+ "types": "./types/utils/UID.d.ts",
51
+ "default": "./utils/UID.js"
52
+ },
53
+ "./utils/setNestedProp.js": {
54
+ "types": "./types/utils/setNestedProp.d.ts",
55
+ "default": "./utils/setNestedProp.js"
56
+ },
57
+ "./utils/dom-helpers.js": {
58
+ "types": "./types/utils/dom-helpers.d.ts",
59
+ "default": "./utils/dom-helpers.js"
60
+ },
61
+ "./utils/kebabToCamel.js": {
62
+ "types": "./types/utils/kebabToCamel.d.ts",
63
+ "default": "./utils/kebabToCamel.js"
28
64
  }
29
65
  },
30
66
  "publishConfig": {
@@ -63,6 +99,6 @@
63
99
  "MIT"
64
100
  ],
65
101
  "devDependencies": {
66
- "typescript": "^5.3.3"
102
+ "typescript": "^5.4.5"
67
103
  }
68
- }
104
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../../core/PubSub.js"],"names":[],"mappings":"AAgBA;IAyBE,yDAEC;IAsGD,8DAFW,OAAO,QAuBjB;IA+DD,uEAHW,SAAS,MAAM,aAczB;IAGD,sBADY,SAAS,MAAM,QAG1B;IAOD,mBAJW,SAAS,MAAM,iCAMzB;IArOD,oBADY,CAAC,EAWZ;IARG,WAA6B;IAO/B,uCADoC,OAAO,KAAK,IAAI,GACd;IAYxC,WADY,MAAM,CAAC,OA6BlB;IAXK,sBAAuB;IAc7B,uBAEC;IAOD,uBAHW,OAAO,2BASjB;IAMD,UAHW,MAAM,CAAC,OACP,OAAO,QAkBjB;IAGD,eAcC;IAGD,iBADY,CAAC,QAKZ;IA+BD,aADY,MAAM,CAAC,QAclB;IAOD,UAJW,MAAM,CAAC,kBACD,OAAO,KAAK,IAAI;;wBAAhB,OAAO,KAAK,IAAI;MAwBhC;IAKD,8BAEC;IAED,2BAEC;;CAkCF;;qBAEU,IAAI,SAAS,MAAM,cAAS"}
1
+ {"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../../core/PubSub.js"],"names":[],"mappings":"AAgBA;IAyBE,yDAEC;IAsGD,8DAFW,OAAO,QAuBjB;IA+DD,uEAHW,SAAS,MAAM,aAczB;IAGD,sBADY,SAAS,MAAM,QAG1B;IAOD,mBAJW,SAAS,MAAM,iCAMzB;IArOD,oBADY,CAAC,EAWZ;IARG,WAA6B;IAO/B,aADW,OAAO,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,EAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAChB;IAYxC,WADY,MAAM,CAAC,OA6BlB;IAXK,sBAAuB;IAc7B,uBAEC;IAOD,uBAHW,OAAO,2BASjB;IAMD,UAHW,MAAM,CAAC,OACP,OAAO,QAkBjB;IAGD,eAcC;IAGD,iBADY,CAAC,QAKZ;IA+BD,aADY,MAAM,CAAC,QAclB;IAOD,UAJW,MAAM,CAAC,YACP,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI;;wBAAhB,OAAO,KAAK,IAAI;MAwBhC;IAKD,8BAEC;IAED,2BAEC;;CAkCF;;qBAEU,IAAI,SAAS,MAAM,cAAS"}
@@ -1 +1 @@
1
- {"version":3,"file":"Symbiote.d.ts","sourceRoot":"","sources":["../../core/Symbiote.js"],"names":[],"mappings":";;AAgBA;IAsBE,cADW,mBAAmB,CACjB;IAkBb,wBAAgB;IA4JhB;;;MAkCC;IAgPD,sDAsBC;IAED,wBAKC;IAGD;YADmB,MAAM,GAAE,MAAM;aAQhC;IA6GD,6BADY,SAAS,aAAa,QAOjC;IAGD,+BADY,SAAS,aAAa,QAOjC;IAGD,sDAGC;IAGD,wDAGC;IA5gBD,cA6BC;IA9HD,gCAEC;IAED,qBAAiB;IACjB,uBAAmB;IAiBnB,kBAHW,SAAS,gBAAgB,0BAoEnC;IAMD,mGAFmD,IAAI,QAItD;IAKC,OADW,CAAC,CACoB;IAEhC;YADkB,MAAM;MACW;IAEnC,wBADoB,gBAAgB,gBAAW,SAAS,OAAO,KAAK,IAAI,EAC1C;IAE9B;YADkB,MAAM,GAAE,GAAG;MACC;IAC9B,kBAAwB;IAExB,qBAAwB;IAExB,sBAAyB;IAEzB,wBAA0B;IAE1B,0BAA6B;IAE7B,iBAAoB;IAEpB,6BAAgC;IAEhC,kBAAqB;IAErB,mBAAsB;IAEtB,4BAA8B;IAIhC,0BAMC;IAGD,yBAEC;IAGD,sBASC;IAGD,4BAKC;IAGD,6BAEC;IAiDD,gEAH4B,IAAI,wBAmB/B;IAGD,2BAGC;IAGD,uBAGC;IAQD,6EAGC;IAMD,UAHW,QAAQ,CAAC,CAAC,2BAOpB;IAGD,WAgBC;IAMD,YAHW,QAAQ,CAAC,CAAC,mCAcpB;IAMD,8BAgBC;IAdG,4CASE;IAqEF,0BAAwC;IAoB1C,uBAAyB;IAG3B,0BAEC;IAED,wBAAoB;IAEpB,6BA0BC;IA+CD,oEAeC;IAMD,yDAiBC;IAYD,0BAME;IAMF,0CAFW,GAAG,QAab;IAED,yBAGC;IAOD,8EAmBC;;CA+BF;;oBAppBmB,iBAAiB;mBAFlB,aAAa"}
1
+ {"version":3,"file":"Symbiote.d.ts","sourceRoot":"","sources":["../../core/Symbiote.js"],"names":[],"mappings":";;AAgBA;IAsBE,cADW,mBAAmB,CACjB;IAkBb,wBAAgB;IA4JhB;;;MAkCC;IAgPD,sDAsBC;IAED,wBAKC;IAGD;YADmB,MAAM,GAAE,MAAM;aAQhC;IA6GD,6BADY,SAAS,aAAa,QAOjC;IAGD,+BADY,SAAS,aAAa,QAOjC;IAGD,sDAGC;IAGD,wDAGC;IA5gBD,cA6BC;IA9HD,gCAEC;IAED,qBAAiB;IACjB,uBAAmB;IAiBnB,kBAHW,SAAS,gBAAgB,0BAoEnC;IAMD,mGAFmD,IAAI,QAItD;IAKC,OADW,CAAC,CACoB;IAEhC;YADkB,MAAM;MACW;IAEnC,eADW,IAAI,CAAC,EAAE,EAAE,gBAAgB,gBAAW,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,CAC3C;IAE9B;YADkB,MAAM,GAAE,GAAG;MACC;IAC9B,kBAAwB;IAExB,qBAAwB;IAExB,sBAAyB;IAEzB,wBAA0B;IAE1B,0BAA6B;IAE7B,iBAAoB;IAEpB,6BAAgC;IAEhC,kBAAqB;IAErB,mBAAsB;IAEtB,4BAA8B;IAIhC,0BAMC;IAGD,yBAEC;IAGD,sBASC;IAGD,4BAKC;IAGD,6BAEC;IAiDD,gEAH4B,IAAI,wBAmB/B;IAGD,2BAGC;IAGD,uBAGC;IAQD,6EAGC;IAMD,UAHW,QAAQ,CAAC,CAAC,2BAOpB;IAGD,WAgBC;IAMD,YAHW,QAAQ,CAAC,CAAC,mCAcpB;IAMD,8BAgBC;IAdG,4CASE;IAqEF,0BAAwC;IAoB1C,uBAAyB;IAG3B,0BAEC;IAED,wBAAoB;IAEpB,6BA0BC;IA+CD,oEAeC;IAMD,yDAiBC;IAYD,0BAME;IAMF,0CAFW,GAAG,QAab;IAED,yBAGC;IAOD,8EAmBC;;CA+BF;;oBAppBmB,iBAAiB;mBAFlB,aAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../../core/css.js"],"names":[],"mappings":"AAKA,2BAJW,oBAAoB,oBAClB,aAAa,CAezB;;;IAKD,iCAEC;IAMD,2EAGC"}
1
+ {"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../../core/css.js"],"names":[],"mappings":"AAKA,2BAJW,oBAAoB,oBAClB,aAAa,CAezB;;oBAEU,CAAC,CAAC,MAAM,EAAE,MAAM,WAAW,CAAC,EAAE;IAGzC,iCAEC;IAMD,2EAGC"}
@@ -1 +1 @@
1
- {"version":3,"file":"itemizeProcessor.d.ts","sourceRoot":"","sources":["../../core/itemizeProcessor.js"],"names":[],"mappings":"AAOA,sFAHW,gBAAgB,kBA4F1B"}
1
+ {"version":3,"file":"itemizeProcessor.d.ts","sourceRoot":"","sources":["../../core/itemizeProcessor.js"],"names":[],"mappings":"AAOA,sFAHW,gBAAgB,kBAoF1B"}