@epa-wg/custom-element-dist 0.0.31 → 0.0.32

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 (118) hide show
  1. package/.idea/inspectionProfiles/Project_Default.xml +2 -1
  2. package/README.md +4 -4
  3. package/coverage/coverage-final.json +6 -6
  4. package/coverage/index.html +27 -27
  5. package/coverage/src/custom-element/coverage.svg +1 -1
  6. package/coverage/src/custom-element/custom-element.js/coverage.svg +1 -1
  7. package/coverage/src/custom-element/custom-element.js.html +476 -380
  8. package/coverage/src/custom-element/http-request.js.html +10 -10
  9. package/coverage/src/custom-element/index.html +18 -18
  10. package/coverage/src/custom-element/local-storage.js.html +1 -1
  11. package/coverage/src/custom-element/location-element.js.html +1 -1
  12. package/coverage/src/custom-element/module-url.js.html +1 -1
  13. package/coverage/src/index.html +1 -1
  14. package/coverage/src/mocks/handlers.ts.html +1 -1
  15. package/coverage/src/mocks/index.html +1 -1
  16. package/coverage/src/stories/attributes.test.stories.ts/coverage.svg +1 -1
  17. package/coverage/src/stories/attributes.test.stories.ts.html +313 -13
  18. package/coverage/src/stories/coverage.svg +1 -1
  19. package/coverage/src/stories/css.test.stories.ts.html +1 -1
  20. package/coverage/src/stories/dom-merge.test.stories.ts.html +1 -1
  21. package/coverage/src/stories/external-template.test.stories.ts.html +2 -2
  22. package/coverage/src/stories/form.test.stories.ts.html +1 -1
  23. package/coverage/src/stories/http-request.stories.ts.html +1 -1
  24. package/coverage/src/stories/index.html +15 -15
  25. package/coverage/src/stories/local-storage.test.stories.ts.html +1 -1
  26. package/coverage/src/stories/location-element.test.stories.ts.html +1 -1
  27. package/coverage/src/stories/module-url.test.stories.ts.html +1 -1
  28. package/coverage/src/stories/set-url.test.stories.ts.html +1 -1
  29. package/coverage/src/stories/slice-events.test.stories.ts.html +1 -1
  30. package/coverage/src/stories/slots.test.stories.ts.html +1 -1
  31. package/coverage/src/stories/testStoryBook.ts.html +8 -8
  32. package/coverage/src/stories/version-select.test.stories.ts.html +3 -3
  33. package/coverage/src/sum.ts.html +1 -1
  34. package/dist/custom-element-D2wf_rqP.js +576 -0
  35. package/dist/custom-element-Dtzhbjkc.cjs +97 -0
  36. package/dist/custom-element-bundle.cjs +1 -1
  37. package/dist/custom-element-bundle.js +30 -28
  38. package/dist/demo/a.html +51 -38
  39. package/dist/demo/data-slices.html +2 -2
  40. package/dist/demo/external-template.html +1 -0
  41. package/dist/demo/form.html +42 -0
  42. package/dist/demo/hex-grid-dce.html +1 -1
  43. package/dist/demo/hex-grid.html +1 -1
  44. package/dist/demo/parameters.html +20 -1
  45. package/dist/demo/s.xml +6 -12
  46. package/dist/demo/s.xslt +64 -15
  47. package/dist/demo/ss.html +4 -23
  48. package/package.json +2 -2
  49. package/public/demo/a.html +51 -38
  50. package/public/demo/data-slices.html +2 -2
  51. package/public/demo/external-template.html +1 -0
  52. package/public/demo/form.html +42 -0
  53. package/public/demo/hex-grid-dce.html +1 -1
  54. package/public/demo/hex-grid.html +1 -1
  55. package/public/demo/parameters.html +20 -1
  56. package/public/demo/s.xml +6 -12
  57. package/public/demo/s.xslt +64 -15
  58. package/public/demo/ss.html +4 -23
  59. package/src/custom-element/custom-element.js +72 -40
  60. package/src/custom-element/demo/a.html +51 -38
  61. package/src/custom-element/demo/data-slices.html +2 -2
  62. package/src/custom-element/demo/external-template.html +1 -0
  63. package/src/custom-element/demo/form.html +42 -0
  64. package/src/custom-element/demo/hex-grid-dce.html +1 -1
  65. package/src/custom-element/demo/hex-grid.html +1 -1
  66. package/src/custom-element/demo/parameters.html +20 -1
  67. package/src/custom-element/demo/s.xml +6 -12
  68. package/src/custom-element/demo/s.xslt +64 -15
  69. package/src/custom-element/demo/ss.html +4 -23
  70. package/src/custom-element/ide/web-types-dce.json +1 -1
  71. package/src/custom-element/ide/web-types-xsl.json +1 -1
  72. package/src/material/components/dropdown.html +21 -4
  73. package/src/material/components/input.html +363 -0
  74. package/src/mocks/versions.mock.ts +1 -1
  75. package/src/stories/attributes.test.stories.ts +103 -3
  76. package/src/stories/external-template.test.stories.ts +1 -1
  77. package/storybook-static/assets/{Color-F6OSRLHC-CFyd3TND.js → Color-F6OSRLHC-BU3iy8jH.js} +1 -1
  78. package/storybook-static/assets/{Configure-UGTbPRKK.js → Configure-DN6ifayP.js} +1 -1
  79. package/storybook-static/assets/{DocsRenderer-CFRXHY34-Dpr5iB0o.js → DocsRenderer-CFRXHY34-BaVEufDj.js} +2 -2
  80. package/storybook-static/assets/attributes.test.stories-D1X6EBrd.js +278 -0
  81. package/storybook-static/assets/{css.test.stories-Cgn6ICr0.js → css.test.stories-Cp_g2hE1.js} +1 -1
  82. package/storybook-static/assets/custom-element-uuAtIYWS.js +97 -0
  83. package/storybook-static/assets/{dom-merge.test.stories-CBObfPWg.js → dom-merge.test.stories-hbpdCka0.js} +1 -1
  84. package/storybook-static/assets/{external-template.test.stories-VfKUQ8eu.js → external-template.test.stories-BK89h6sk.js} +3 -3
  85. package/storybook-static/assets/{form.test.stories-CnuGN7Zw.js → form.test.stories-BfoLe_rw.js} +1 -1
  86. package/storybook-static/assets/{handlers-V_T7WjNK.js → handlers-yVPwH_Nz.js} +1 -1
  87. package/storybook-static/assets/{http-request.stories-8NN1Coqm.js → http-request.stories-CBFJS2Ws.js} +1 -1
  88. package/storybook-static/assets/{iframe-DnhkgdtG.js → iframe-CJEL_4Nu.js} +2 -2
  89. package/storybook-static/assets/{index-CIBI7sCB.js → index-D5fBh-7N.js} +1 -1
  90. package/storybook-static/assets/{index-DN1RoK17.js → index-DM-KBPdl.js} +1 -1
  91. package/storybook-static/assets/{index-DjJD7gkO.js → index-RSFf30w1.js} +1 -1
  92. package/storybook-static/assets/{index-3Sfy-t3H.js → index-SnjB5uV8.js} +4 -4
  93. package/storybook-static/assets/{local-storage.test.stories-Dk5Yqc7m.js → local-storage.test.stories-C0Yzy6Am.js} +1 -1
  94. package/storybook-static/assets/{location-element.test.stories-56um6s5L.js → location-element.test.stories-DNFrEu5A.js} +1 -1
  95. package/storybook-static/assets/{module-url.test.stories-DEponQ7l.js → module-url.test.stories-CXibF5Ta.js} +1 -1
  96. package/storybook-static/assets/{preview-vbpHsp94.js → preview-Bnd0XhaF.js} +1 -1
  97. package/storybook-static/assets/{preview-Czc-sw5H.js → preview-DJMlNTk8.js} +2 -2
  98. package/storybook-static/assets/{set-url.test.stories-B4E6hIe-.js → set-url.test.stories-BBfLxv2u.js} +1 -1
  99. package/storybook-static/assets/{slice-events.test.stories-BR0F-B6I.js → slice-events.test.stories-HcXF8XQI.js} +1 -1
  100. package/storybook-static/assets/{slots.test.stories-CgfJIyCr.js → slots.test.stories-i6mnIFM2.js} +1 -1
  101. package/storybook-static/assets/{version-select.test.stories-nmxATIwv.js → version-select.test.stories-BsUFH6Va.js} +1 -1
  102. package/storybook-static/demo/a.html +51 -38
  103. package/storybook-static/demo/data-slices.html +2 -2
  104. package/storybook-static/demo/external-template.html +1 -0
  105. package/storybook-static/demo/form.html +42 -0
  106. package/storybook-static/demo/hex-grid-dce.html +1 -1
  107. package/storybook-static/demo/hex-grid.html +1 -1
  108. package/storybook-static/demo/parameters.html +20 -1
  109. package/storybook-static/demo/s.xml +6 -12
  110. package/storybook-static/demo/s.xslt +64 -15
  111. package/storybook-static/demo/ss.html +4 -23
  112. package/storybook-static/iframe.html +1 -1
  113. package/storybook-static/index.json +1 -1
  114. package/storybook-static/project.json +1 -1
  115. package/dist/custom-element-BbJMY20-.cjs +0 -97
  116. package/dist/custom-element-CoRNKeEP.js +0 -567
  117. package/storybook-static/assets/attributes.test.stories-DSOLHHOW.js +0 -152
  118. package/storybook-static/assets/custom-element-D59Fok1f.js +0 -97
@@ -182,13 +182,13 @@
182
182
  <span class="cline-any cline-neutral">&nbsp;</span>
183
183
  <span class="cline-any cline-yes">5x</span>
184
184
  <span class="cline-any cline-neutral">&nbsp;</span>
185
- <span class="cline-any cline-yes">34x</span>
186
- <span class="cline-any cline-yes">34x</span>
185
+ <span class="cline-any cline-yes">35x</span>
186
+ <span class="cline-any cline-yes">35x</span>
187
187
  <span class="cline-any cline-neutral">&nbsp;</span>
188
188
  <span class="cline-any cline-neutral">&nbsp;</span>
189
189
  <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-yes">38x</span>
191
- <span class="cline-any cline-yes">26x</span>
190
+ <span class="cline-any cline-yes">39x</span>
191
+ <span class="cline-any cline-yes">27x</span>
192
192
  <span class="cline-any cline-yes">12x</span>
193
193
  <span class="cline-any cline-yes">12x</span>
194
194
  <span class="cline-any cline-yes">1x</span>
@@ -223,12 +223,12 @@
223
223
  <span class="cline-any cline-neutral">&nbsp;</span>
224
224
  <span class="cline-any cline-neutral">&nbsp;</span>
225
225
  <span class="cline-any cline-neutral">&nbsp;</span>
226
- <span class="cline-any cline-yes">126x</span>
227
- <span class="cline-any cline-yes">63x</span>
226
+ <span class="cline-any cline-yes">130x</span>
227
+ <span class="cline-any cline-yes">65x</span>
228
228
  <span class="cline-any cline-neutral">&nbsp;</span>
229
- <span class="cline-any cline-yes">41x</span>
230
- <span class="cline-any cline-yes">41x</span>
231
- <span class="cline-any cline-yes">33x</span>
229
+ <span class="cline-any cline-yes">42x</span>
230
+ <span class="cline-any cline-yes">42x</span>
231
+ <span class="cline-any cline-yes">34x</span>
232
232
  <span class="cline-any cline-neutral">&nbsp;</span>
233
233
  <span class="cline-any cline-yes">8x</span>
234
234
  <span class="cline-any cline-yes">8x</span>
@@ -337,7 +337,7 @@ export default HttpRequestElement;
337
337
  <div class='footer quiet pad2 space-top1 center small'>
338
338
  Code coverage generated by
339
339
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
340
- at 2024-11-12T04:15:02.299Z
340
+ at 2024-11-28T15:54:41.264Z
341
341
  </div>
342
342
  <script src="../../prettify.js"></script>
343
343
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">96% </span>
26
+ <span class="strong">95.71% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>768/800</span>
28
+ <span class='fraction'>782/817</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">90.23% </span>
33
+ <span class="strong">90.04% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>379/420</span>
35
+ <span class='fraction'>389/432</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">97.28% </span>
40
+ <span class="strong">97.35% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>179/184</span>
42
+ <span class='fraction'>184/189</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">96.19% </span>
47
+ <span class="strong">95.85% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>682/709</span>
49
+ <span class='fraction'>693/723</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,17 +80,17 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file high" data-value="custom-element.js"><a href="custom-element.js.html">custom-element.js</a></td>
83
- <td data-value="94.69" class="pic high">
83
+ <td data-value="94.35" class="pic high">
84
84
  <div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
85
85
  </td>
86
- <td data-value="94.69" class="pct high">94.69%</td>
87
- <td data-value="603" class="abs high">571/603</td>
88
- <td data-value="88.46" class="pct high">88.46%</td>
89
- <td data-value="338" class="abs high">299/338</td>
90
- <td data-value="96.12" class="pct high">96.12%</td>
91
- <td data-value="129" class="abs high">124/129</td>
92
- <td data-value="94.94" class="pct high">94.94%</td>
93
- <td data-value="534" class="abs high">507/534</td>
86
+ <td data-value="94.35" class="pct high">94.35%</td>
87
+ <td data-value="620" class="abs high">585/620</td>
88
+ <td data-value="88.28" class="pct high">88.28%</td>
89
+ <td data-value="350" class="abs high">309/350</td>
90
+ <td data-value="96.26" class="pct high">96.26%</td>
91
+ <td data-value="134" class="abs high">129/134</td>
92
+ <td data-value="94.52" class="pct high">94.52%</td>
93
+ <td data-value="548" class="abs high">518/548</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -161,7 +161,7 @@
161
161
  <div class='footer quiet pad2 space-top1 center small'>
162
162
  Code coverage generated by
163
163
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
164
- at 2024-11-12T04:15:02.299Z
164
+ at 2024-11-28T15:54:41.264Z
165
165
  </div>
166
166
  <script src="../../prettify.js"></script>
167
167
  <script>
@@ -346,7 +346,7 @@ export default LocalStorageElement;
346
346
  <div class='footer quiet pad2 space-top1 center small'>
347
347
  Code coverage generated by
348
348
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
349
- at 2024-11-12T04:15:02.299Z
349
+ at 2024-11-28T15:54:41.264Z
350
350
  </div>
351
351
  <script src="../../prettify.js"></script>
352
352
  <script>
@@ -397,7 +397,7 @@ export default LocationElement;</pre></td></tr></table></pre>
397
397
  <div class='footer quiet pad2 space-top1 center small'>
398
398
  Code coverage generated by
399
399
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
400
- at 2024-11-12T04:15:02.299Z
400
+ at 2024-11-28T15:54:41.264Z
401
401
  </div>
402
402
  <script src="../../prettify.js"></script>
403
403
  <script>
@@ -172,7 +172,7 @@ export default ModuleUrl;
172
172
  <div class='footer quiet pad2 space-top1 center small'>
173
173
  Code coverage generated by
174
174
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
175
- at 2024-11-12T04:15:02.299Z
175
+ at 2024-11-28T15:54:41.264Z
176
176
  </div>
177
177
  <script src="../../prettify.js"></script>
178
178
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2024-11-12T04:15:02.299Z
104
+ at 2024-11-28T15:54:41.264Z
105
105
  </div>
106
106
  <script src="../prettify.js"></script>
107
107
  <script>
@@ -181,7 +181,7 @@ export const handlers =
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
184
- at 2024-11-12T04:15:02.299Z
184
+ at 2024-11-28T15:54:41.264Z
185
185
  </div>
186
186
  <script src="../../prettify.js"></script>
187
187
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2024-11-12T04:15:02.299Z
104
+ at 2024-11-28T15:54:41.264Z
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
107
107
  <script>
@@ -6,5 +6,5 @@
6
6
  <rect width="140" height="32" fill="#473" rx="4"/>
7
7
  <rect width="88" height="32" fill="#534" rx="4"/>
8
8
  <text x="8" y="21" class="heavy">coverage</text>
9
- <text x="94" y="22" class="percent">20%</text>
9
+ <text x="94" y="22" class="percent">13.33%</text>
10
10
  </svg>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">26.66% </span>
26
+ <span class="strong">17.04% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>12/45</span>
28
+ <span class='fraction'>15/88</span>
29
29
  </div>
30
30
 
31
31
 
@@ -37,16 +37,16 @@
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">20% </span>
40
+ <span class="strong">13.33% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>2/10</span>
42
+ <span class='fraction'>2/15</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">27.5% </span>
47
+ <span class="strong">17.07% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>11/40</span>
49
+ <span class='fraction'>14/82</span>
50
50
  </div>
51
51
 
52
52
 
@@ -206,7 +206,107 @@
206
206
  <a name='L141'></a><a href='#L141'>141</a>
207
207
  <a name='L142'></a><a href='#L142'>142</a>
208
208
  <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
210
310
  <span class="cline-any cline-neutral">&nbsp;</span>
211
311
  <span class="cline-any cline-neutral">&nbsp;</span>
212
312
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -221,8 +321,8 @@
221
321
  <span class="cline-any cline-neutral">&nbsp;</span>
222
322
  <span class="cline-any cline-neutral">&nbsp;</span>
223
323
  <span class="cline-any cline-neutral">&nbsp;</span>
224
- <span class="cline-any cline-yes">3x</span>
225
- <span class="cline-any cline-yes">3x</span>
324
+ <span class="cline-any cline-yes">6x</span>
325
+ <span class="cline-any cline-yes">6x</span>
226
326
  <span class="cline-any cline-neutral">&nbsp;</span>
227
327
  <span class="cline-any cline-neutral">&nbsp;</span>
228
328
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -246,6 +346,40 @@
246
346
  <span class="cline-any cline-neutral">&nbsp;</span>
247
347
  <span class="cline-any cline-neutral">&nbsp;</span>
248
348
  <span class="cline-any cline-neutral">&nbsp;</span>
349
+ <span class="cline-any cline-no">&nbsp;</span>
350
+ <span class="cline-any cline-neutral">&nbsp;</span>
351
+ <span class="cline-any cline-no">&nbsp;</span>
352
+ <span class="cline-any cline-no">&nbsp;</span>
353
+ <span class="cline-any cline-no">&nbsp;</span>
354
+ <span class="cline-any cline-no">&nbsp;</span>
355
+ <span class="cline-any cline-no">&nbsp;</span>
356
+ <span class="cline-any cline-neutral">&nbsp;</span>
357
+ <span class="cline-any cline-no">&nbsp;</span>
358
+ <span class="cline-any cline-neutral">&nbsp;</span>
359
+ <span class="cline-any cline-no">&nbsp;</span>
360
+ <span class="cline-any cline-no">&nbsp;</span>
361
+ <span class="cline-any cline-no">&nbsp;</span>
362
+ <span class="cline-any cline-neutral">&nbsp;</span>
363
+ <span class="cline-any cline-neutral">&nbsp;</span>
364
+ <span class="cline-any cline-neutral">&nbsp;</span>
365
+ <span class="cline-any cline-yes">1x</span>
366
+ <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-neutral">&nbsp;</span>
368
+ <span class="cline-any cline-neutral">&nbsp;</span>
369
+ <span class="cline-any cline-neutral">&nbsp;</span>
370
+ <span class="cline-any cline-no">&nbsp;</span>
371
+ <span class="cline-any cline-neutral">&nbsp;</span>
372
+ <span class="cline-any cline-neutral">&nbsp;</span>
373
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
+ <span class="cline-any cline-neutral">&nbsp;</span>
375
+ <span class="cline-any cline-yes">1x</span>
376
+ <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-neutral">&nbsp;</span>
378
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-neutral">&nbsp;</span>
380
+ <span class="cline-any cline-neutral">&nbsp;</span>
381
+ <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-neutral">&nbsp;</span>
249
383
  <span class="cline-any cline-neutral">&nbsp;</span>
250
384
  <span class="cline-any cline-neutral">&nbsp;</span>
251
385
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -339,6 +473,72 @@
339
473
  <span class="cline-any cline-neutral">&nbsp;</span>
340
474
  <span class="cline-any cline-neutral">&nbsp;</span>
341
475
  <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-yes">1x</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-neutral">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-neutral">&nbsp;</span>
486
+ <span class="cline-any cline-neutral">&nbsp;</span>
487
+ <span class="cline-any cline-neutral">&nbsp;</span>
488
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
+ <span class="cline-any cline-neutral">&nbsp;</span>
490
+ <span class="cline-any cline-neutral">&nbsp;</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-neutral">&nbsp;</span>
493
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
+ <span class="cline-any cline-neutral">&nbsp;</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-no">&nbsp;</span>
500
+ <span class="cline-any cline-no">&nbsp;</span>
501
+ <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-no">&nbsp;</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-no">&nbsp;</span>
505
+ <span class="cline-any cline-no">&nbsp;</span>
506
+ <span class="cline-any cline-no">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-no">&nbsp;</span>
509
+ <span class="cline-any cline-no">&nbsp;</span>
510
+ <span class="cline-any cline-no">&nbsp;</span>
511
+ <span class="cline-any cline-no">&nbsp;</span>
512
+ <span class="cline-any cline-no">&nbsp;</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-no">&nbsp;</span>
515
+ <span class="cline-any cline-no">&nbsp;</span>
516
+ <span class="cline-any cline-no">&nbsp;</span>
517
+ <span class="cline-any cline-neutral">&nbsp;</span>
518
+ <span class="cline-any cline-no">&nbsp;</span>
519
+ <span class="cline-any cline-no">&nbsp;</span>
520
+ <span class="cline-any cline-no">&nbsp;</span>
521
+ <span class="cline-any cline-no">&nbsp;</span>
522
+ <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-neutral">&nbsp;</span>
524
+ <span class="cline-any cline-no">&nbsp;</span>
525
+ <span class="cline-any cline-no">&nbsp;</span>
526
+ <span class="cline-any cline-no">&nbsp;</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-no">&nbsp;</span>
529
+ <span class="cline-any cline-no">&nbsp;</span>
530
+ <span class="cline-any cline-no">&nbsp;</span>
531
+ <span class="cline-any cline-no">&nbsp;</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-no">&nbsp;</span>
534
+ <span class="cline-any cline-no">&nbsp;</span>
535
+ <span class="cline-any cline-no">&nbsp;</span>
536
+ <span class="cline-any cline-neutral">&nbsp;</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-neutral">&nbsp;</span>
540
+ <span class="cline-any cline-neutral">&nbsp;</span>
541
+ <span class="cline-any cline-neutral">&nbsp;</span>
342
542
  <span class="cline-any cline-neutral">&nbsp;</span>
343
543
  <span class="cline-any cline-yes">1x</span>
344
544
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -352,9 +552,9 @@
352
552
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// noinspection DuplicatedCode
353
553
  &nbsp;
354
554
  import type { StoryObj } from '@storybook/web-components';
355
- import {expect, within} from '@storybook/test';
555
+ import {expect, userEvent, within} from '@storybook/test';
356
556
  &nbsp;
357
- import '../custom-element/custom-element.js';
557
+ import {cloneAs, mix} from'../custom-element/custom-element.js';
358
558
  &nbsp;
359
559
  type TProps = { title: string; body:string};
360
560
  &nbsp;
@@ -380,12 +580,46 @@ const meta =
380
580
  &nbsp;
381
581
  export default meta;
382
582
  &nbsp;
583
+ export const CloneAs:Story =
584
+ { args : {title: 'cloneAs(el,newTag)', body:`
585
+ &lt;p&gt;&lt;code&gt;cloneAs()&lt;/code&gt; used for conversion of &lt;code&gt;attribute&lt;/code&gt; to &lt;code&gt;xsl:param&lt;/code&gt;&lt;/p&gt;
586
+ &lt;attribute data-testid="t1" &gt;default_P1 &lt;/attribute&gt;
587
+ &lt;attribute data-testid="t2" select="'always_p2'" &gt;&lt;/attribute&gt;
588
+ &lt;attribute data-testid="t3" &gt;&lt;/attribute&gt;
589
+ `}
590
+ , play: <span class="fstat-no" title="function not covered" >async ({</span>canvasElement}) =&gt;
591
+ {
592
+ const canvas = <span class="cstat-no" title="statement not covered" >within(canvasElement);</span>
593
+ &nbsp;
594
+ const cmp = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async ( t</span>id:string ) =&gt;</span>
595
+ { const t1 = <span class="cstat-no" title="statement not covered" >await canvas.findByTestId(tid);</span>
596
+ const c1 = <span class="cstat-no" title="statement not covered" >cloneAs(t1, 'xsl:param');</span>
597
+ <span class="cstat-no" title="statement not covered" > for( let a of t1.attributes )</span>
598
+ { <span class="cstat-no" title="statement not covered" >await expect(a.value).toEqual(c1.getAttribute(a.name)); }</span>
599
+ &nbsp;
600
+ <span class="cstat-no" title="statement not covered" > await expect( c1.textContent ).toEqual(t1.textContent);</span>
601
+ }
602
+ <span class="cstat-no" title="statement not covered" > await cmp('t1');</span>
603
+ <span class="cstat-no" title="statement not covered" > await cmp('t2');</span>
604
+ <span class="cstat-no" title="statement not covered" > await cmp('t3');</span>
605
+ },
606
+ };
607
+ export const Mix:Story =
608
+ { args : {title: 'mix(to,from)', body:`
609
+ &lt;p&gt;&lt;code&gt;mix(to,from)&lt;/code&gt; used for &lt;code&gt;attribute&lt;/code&gt; collections&lt;/p&gt;
610
+ `}
611
+ , play: <span class="fstat-no" title="function not covered" >async () =&gt;</span>
612
+ {
613
+ <span class="cstat-no" title="statement not covered" > await expect( mix({},{a:1,b:'2'})).toEqual({a:1,b:'2'});</span>
614
+ },
615
+ };
616
+ &nbsp;
383
617
  export const AttributeDefaults:Story =
384
618
  { args : {title: 'Attributes definition', body:`
385
619
  &lt;p&gt;Params needed to declare DCE attributes and track the attributes changes. It also is used by IDE and validation.&lt;/p&gt;
386
620
  &lt;custom-element tag="dce-link" &gt;
387
621
  &lt;template&gt;
388
- &lt;attribute name="p1"&gt;default_P1 &lt;/attribute&gt;
622
+ &lt;attribute name="p1"&gt;default_P1&lt;/attribute&gt;
389
623
  &lt;attribute name="p2" select="'always_p2'" &gt;&lt;/attribute&gt;
390
624
  &lt;attribute name="p3" select="//p3 ?? 'def_P3' "&gt;&lt;/attribute&gt;
391
625
  p1: &lt;code data-testid="p1"&gt;{$p1}&lt;/code&gt; &lt;br/&gt;
@@ -481,6 +715,72 @@ export const InstanceAttributes:Story =
481
715
  };
482
716
  &nbsp;
483
717
  &nbsp;
718
+ export const AttributesPropagationUp:Story =
719
+ { args : {title: 'Instance Attributes', body:`
720
+ &lt;p&gt;Attributes with value(p2) or &lt;code&gt;select&lt;/code&gt;(p3) should be propagated to DCE&lt;/p&gt;
721
+ &lt;p&gt;p1 attribute is not propagated as does not have the value.&lt;/p&gt;
722
+ &lt;custom-element tag="sample-el"&gt;
723
+ &lt;template&gt;
724
+ &lt;attribute name="data-testid"&gt;&lt;/attribute&gt;
725
+ &lt;attribute name="p1"&gt;&lt;/attribute&gt;
726
+ &lt;attribute name="p2"&gt;DEFAULT VALUE&lt;/attribute&gt;
727
+ &lt;attribute name="p3" select=" //from-input ?? 'abc' "&gt;&lt;/attribute&gt;
728
+ &lt;input slice="from-input" slice-event="input"/&gt;&lt;br/&gt;
729
+ p1:&lt;code data-testid="{$data-testid}-p1" &gt;{ $p1 }&lt;/code&gt;&lt;br/&gt;
730
+ p2:&lt;code data-testid="{$data-testid}-p2" &gt;{ $p2 }&lt;/code&gt;&lt;br/&gt;
731
+ p2:&lt;code data-testid="{$data-testid}-p3" &gt;{ $p3 }&lt;/code&gt;&lt;br/&gt;
732
+ //from-input: {//from-input} &lt;hr/&gt;
733
+ &lt;/template&gt;
734
+ &lt;/custom-element&gt;
735
+ &nbsp;
736
+ &lt;sample-el data-testid="t1" value="123" &gt;&lt;/sample-el&gt;
737
+ &lt;sample-el data-testid="t2" p1="P1" p2="123" p3="P3" &gt;&lt;/sample-el&gt;
738
+ &lt;sample-el data-testid="t3" &gt;&lt;/sample-el&gt;
739
+ `}
740
+ , play: <span class="fstat-no" title="function not covered" >async ({</span>canvasElement}) =&gt;
741
+ {
742
+ const canvas = <span class="cstat-no" title="statement not covered" >within(canvasElement)</span>
743
+ , code = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >async (<span class="cstat-no" title="statement not covered" >i</span>d:string) =&gt; (await canvas.findByTestId(id)).textContent?.trim();</span></span>
744
+ &nbsp;
745
+ <span class="cstat-no" title="statement not covered" > await sleep(20)</span>
746
+
747
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t1-p1') ).toEqual('' );</span>
748
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t1-p2') ).toEqual('DEFAULT VALUE' );</span>
749
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t1-p3') ).toEqual('abc' );</span>
750
+ &nbsp;
751
+ const t1 = <span class="cstat-no" title="statement not covered" >await canvas.findByTestId('t1');</span>
752
+ <span class="cstat-no" title="statement not covered" > await expect( t1 ).toHaveAttribute('value','123');</span>
753
+ <span class="cstat-no" title="statement not covered" > await expect( t1 ).toHaveAttribute('p2','DEFAULT VALUE');</span>
754
+ <span class="cstat-no" title="statement not covered" > await expect( t1 ).toHaveAttribute('p3','abc');</span>
755
+ <span class="cstat-no" title="statement not covered" > await expect( t1 ).not.toHaveAttribute('p1');</span>
756
+ &nbsp;
757
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t2-p1') ).toEqual('P1' );</span>
758
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t2-p2') ).toEqual('123' );</span>
759
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t2-p3') ).toEqual('abc' );</span>
760
+
761
+ const t2 = <span class="cstat-no" title="statement not covered" >await canvas.findByTestId('t2');</span>
762
+ <span class="cstat-no" title="statement not covered" > await expect( t2 ).toHaveAttribute('p1','P1');</span>
763
+ <span class="cstat-no" title="statement not covered" > await expect( t2 ).toHaveAttribute('p2','123');</span>
764
+ <span class="cstat-no" title="statement not covered" > await expect( t2 ).toHaveAttribute('p3','abc');</span>
765
+ &nbsp;
766
+ &nbsp;
767
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t3-p1') ).toEqual('' );</span>
768
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t3-p2') ).toEqual('DEFAULT VALUE' );</span>
769
+ <span class="cstat-no" title="statement not covered" > await expect( await code('t3-p3') ).toEqual('abc' );</span>
770
+
771
+ const t3 = <span class="cstat-no" title="statement not covered" >await canvas.findByTestId('t3');</span>
772
+ <span class="cstat-no" title="statement not covered" > await expect( t1 ).not.toHaveAttribute('p1');</span>
773
+ <span class="cstat-no" title="statement not covered" > await expect( t3 ).toHaveAttribute('p2','DEFAULT VALUE');</span>
774
+ <span class="cstat-no" title="statement not covered" > await expect( t3 ).toHaveAttribute('p3','abc');</span>
775
+ &nbsp;
776
+ <span class="cstat-no" title="statement not covered" > t3.querySelector('input')?.focus();</span>
777
+ <span class="cstat-no" title="statement not covered" > await userEvent.keyboard('DCE');</span>
778
+ <span class="cstat-no" title="statement not covered" > await expect( t3 ).toHaveAttribute('p3','DCE');</span>
779
+ &nbsp;
780
+ },
781
+ };
782
+ &nbsp;
783
+ &nbsp;
484
784
  //#region unit tests
485
785
  /* istanbul ignore else -- @preserve */
486
786
  if( 'test' === import.meta.env.MODE &amp;&amp;
@@ -499,7 +799,7 @@ if( 'test' === import.meta.env.MODE &amp;&amp;
499
799
  <div class='footer quiet pad2 space-top1 center small'>
500
800
  Code coverage generated by
501
801
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
502
- at 2024-11-12T04:15:02.299Z
802
+ at 2024-11-28T15:54:41.264Z
503
803
  </div>
504
804
  <script src="../../prettify.js"></script>
505
805
  <script>
@@ -6,5 +6,5 @@
6
6
  <rect width="140" height="32" fill="#473" rx="4"/>
7
7
  <rect width="88" height="32" fill="#534" rx="4"/>
8
8
  <text x="8" y="21" class="heavy">coverage</text>
9
- <text x="94" y="22" class="percent">27.5%</text>
9
+ <text x="94" y="22" class="percent">26.56%</text>
10
10
  </svg>
@@ -445,7 +445,7 @@ if( 'test' === import.meta.env.MODE &amp;&amp;
445
445
  <div class='footer quiet pad2 space-top1 center small'>
446
446
  Code coverage generated by
447
447
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
448
- at 2024-11-12T04:15:02.299Z
448
+ at 2024-11-28T15:54:41.264Z
449
449
  </div>
450
450
  <script src="../../prettify.js"></script>
451
451
  <script>