@epa-wg/custom-element-dist 0.0.28 → 0.0.31
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.
- package/.idea/custom-element-dist.iml +11 -0
- package/.idea/inspectionProfiles/Project_Default.xml +24 -0
- package/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/vcs.xml +6 -0
- package/.storybook/main.ts +21 -19
- package/.storybook/preview.ts +25 -25
- package/README.md +4 -4
- package/coverage/coverage-final.json +21 -22
- package/coverage/index.html +24 -39
- package/coverage/src/custom-element/coverage.svg +1 -1
- package/coverage/src/custom-element/custom-element.js/coverage.svg +1 -1
- package/coverage/src/custom-element/custom-element.js.html +248 -242
- package/coverage/src/custom-element/http-request.js.html +12 -12
- package/coverage/src/custom-element/index.html +14 -14
- package/coverage/src/custom-element/local-storage.js.html +52 -52
- package/coverage/src/custom-element/location-element.js.html +4 -4
- package/coverage/src/custom-element/module-url.js.html +1 -1
- package/coverage/src/index.html +1 -1
- package/coverage/src/mocks/handlers.ts.html +1 -1
- package/coverage/src/mocks/index.html +1 -1
- package/coverage/src/stories/attributes.test.stories.ts.html +28 -28
- package/coverage/src/stories/coverage.svg +1 -1
- package/coverage/src/stories/css.test.stories.ts.html +1 -1
- package/coverage/src/stories/dom-merge.test.stories.ts.html +1 -1
- package/coverage/src/stories/external-template.test.stories.ts.html +1 -1
- package/coverage/src/stories/form.test.stories.ts.html +1 -1
- package/coverage/src/stories/http-request.stories.ts.html +1 -1
- package/coverage/src/stories/index.html +19 -19
- package/coverage/src/stories/local-storage.test.stories.ts.html +17 -17
- package/coverage/src/stories/location-element.test.stories.ts.html +3 -6
- package/coverage/src/stories/module-url.test.stories.ts.html +1 -1
- package/coverage/src/stories/set-url.test.stories.ts.html +1 -1
- package/coverage/src/stories/slice-events.test.stories.ts/coverage.svg +1 -1
- package/coverage/src/stories/slice-events.test.stories.ts.html +284 -23
- package/coverage/src/stories/slots.test.stories.ts.html +1 -1
- package/coverage/src/stories/testStoryBook.ts.html +7 -7
- package/coverage/src/stories/version-select.test.stories.ts.html +1 -1
- package/coverage/src/sum.ts.html +1 -1
- package/dist/custom-element-BbJMY20-.cjs +97 -0
- package/dist/{custom-element-BOIPgtxz.js → custom-element-CoRNKeEP.js} +122 -120
- package/dist/custom-element-bundle.cjs +1 -1
- package/dist/custom-element-bundle.js +2 -2
- package/dist/demo/a.svg +26 -26
- package/dist/demo/data-slices.html +37 -0
- package/dist/demo/demo.css +0 -3
- package/package.json +13 -13
- package/public/demo/a.svg +26 -26
- package/public/demo/data-slices.html +37 -0
- package/public/demo/demo.css +0 -3
- package/src/custom-element/custom-element.js +4 -2
- package/src/custom-element/demo/a.svg +26 -26
- package/src/custom-element/demo/data-slices.html +37 -0
- package/src/custom-element/demo/demo.css +0 -3
- package/src/custom-element/ide/web-types-dce.json +1 -1
- package/src/custom-element/ide/web-types-xsl.json +1 -1
- package/src/material/angular.css +987 -987
- package/src/material/components/autocomplete.html +239 -240
- package/src/material/components/dropdown.html +93 -46
- package/src/material/components/icon-link.html +161 -0
- package/src/material/components/menu.html +234 -234
- package/src/material/components.html +121 -108
- package/src/material/demo.css +36 -31
- package/src/material/index.html +110 -168
- package/src/material/material.css +356 -356
- package/src/material/theme/README.md +17 -17
- package/src/material/theme/semantic.css +113 -112
- package/src/mocks/versions.mock.ts +8 -8
- package/src/stories/attributes.test.stories.ts +20 -20
- package/src/stories/location-element.test.stories.ts +1 -2
- package/src/stories/slice-events.test.stories.ts +87 -0
- package/storybook-static/assets/Color-F6OSRLHC-CFyd3TND.js +1 -0
- package/storybook-static/assets/{Configure-CJVwFVjC.js → Configure-UGTbPRKK.js} +1 -1
- package/storybook-static/assets/{DocsRenderer-CFRXHY34-Bz6q-OqD.js → DocsRenderer-CFRXHY34-Dpr5iB0o.js} +2 -2
- package/storybook-static/assets/{attributes.test.stories-BJBuuXgZ.js → attributes.test.stories-DSOLHHOW.js} +38 -36
- package/storybook-static/assets/{css.test.stories-pgbBc17d.js → css.test.stories-Cgn6ICr0.js} +1 -1
- package/storybook-static/assets/custom-element-D59Fok1f.js +97 -0
- package/storybook-static/assets/{dom-merge.test.stories-CXcYP_-J.js → dom-merge.test.stories-CBObfPWg.js} +1 -1
- package/storybook-static/assets/entry-preview-DHVXbf3x.js +26 -0
- package/storybook-static/assets/entry-preview-docs-BbcIMweR.js +2 -0
- package/storybook-static/assets/{external-template.test.stories-CpJ68Ghy.js → external-template.test.stories-VfKUQ8eu.js} +1 -1
- package/storybook-static/assets/{form.test.stories-D35lyqd8.js → form.test.stories-CnuGN7Zw.js} +1 -1
- package/storybook-static/assets/{handlers-B-OZtf2K.js → handlers-V_T7WjNK.js} +21 -21
- package/storybook-static/assets/{http-request.stories-DccXgHyF.js → http-request.stories-8NN1Coqm.js} +1 -1
- package/storybook-static/assets/iframe-DnhkgdtG.js +2 -0
- package/storybook-static/assets/index-3Sfy-t3H.js +769 -0
- package/storybook-static/assets/index-BcZLpTeD.js +8 -0
- package/storybook-static/assets/index-CIBI7sCB.js +1 -0
- package/storybook-static/assets/{index-BSz1w4Gl.js → index-CxRwF5Or.js} +130 -130
- package/storybook-static/assets/{index-lY6s0fkU.js → index-DN1RoK17.js} +1 -1
- package/storybook-static/assets/{index-f2MAjm2i.js → index-DjJD7gkO.js} +1 -1
- package/storybook-static/assets/{local-storage.test.stories-BY-PWhuk.js → local-storage.test.stories-Dk5Yqc7m.js} +1 -1
- package/storybook-static/assets/{location-element.test.stories-3auBYEaU.js → location-element.test.stories-56um6s5L.js} +1 -1
- package/storybook-static/assets/{module-url.test.stories-B7L9cL60.js → module-url.test.stories-DEponQ7l.js} +1 -1
- package/storybook-static/assets/{preview-BRPR-UXC.js → preview-CNKoaWES.js} +1 -1
- package/storybook-static/assets/preview-Czc-sw5H.js +2 -0
- package/storybook-static/assets/preview-DAeyCMnM.js +1 -0
- package/storybook-static/assets/{preview-BUQm51_C.js → preview-vbpHsp94.js} +2 -2
- package/storybook-static/assets/{set-url.test.stories-CuSuDLIx.js → set-url.test.stories-B4E6hIe-.js} +1 -1
- package/storybook-static/assets/{slice-events.test.stories-BkRKsKem.js → slice-events.test.stories-BR0F-B6I.js} +138 -13
- package/storybook-static/assets/{slots.test.stories-BJCUWFkE.js → slots.test.stories-CgfJIyCr.js} +1 -1
- package/storybook-static/assets/tiny-invariant-CopsF_GD.js +1 -0
- package/storybook-static/assets/{version-select.test.stories-B3ybJn_Z.js → version-select.test.stories-nmxATIwv.js} +1 -1
- package/storybook-static/demo/a.svg +26 -26
- package/storybook-static/demo/data-slices.html +37 -0
- package/storybook-static/demo/demo.css +0 -3
- package/storybook-static/iframe.html +2 -2
- package/storybook-static/index.html +4 -0
- package/storybook-static/index.json +1 -1
- package/storybook-static/project.json +1 -1
- package/storybook-static/sb-addons/chromatic-com-storybook-10/manager-bundle.js +333 -0
- package/storybook-static/sb-addons/chromatic-com-storybook-10/manager-bundle.js.LEGAL.txt +40 -0
- package/storybook-static/sb-addons/essentials-actions-3/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/essentials-backgrounds-4/manager-bundle.js +8 -8
- package/storybook-static/sb-addons/essentials-controls-2/manager-bundle.js +82 -85
- package/storybook-static/sb-addons/essentials-measure-7/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/essentials-outline-8/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/essentials-viewport-5/manager-bundle.js +1 -1
- package/storybook-static/sb-addons/interactions-9/manager-bundle.js +66 -67
- package/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +1 -1
- package/storybook-static/sb-manager/globals-module-info.js +25 -3
- package/storybook-static/sb-manager/globals-runtime.js +29585 -43124
- package/storybook-static/sb-manager/runtime.js +10647 -9399
- package/storybook-static/sb-preview/runtime.js +3536 -5860
- package/test-runner-jest.config.js +15 -0
- package/coverage/src/custom-element/demo/coverage.svg +0 -10
- package/coverage/src/custom-element/demo/index.html +0 -116
- package/coverage/src/custom-element/demo/z.js/coverage.svg +0 -10
- package/coverage/src/custom-element/demo/z.js.html +0 -112
- package/dist/custom-element-CUsSENWc.cjs +0 -97
- package/dist/demo/s1.xslt +0 -60
- package/dist/demo/z.html +0 -33
- package/dist/demo/z.js +0 -9
- package/dist/demo/z.xml +0 -60
- package/dist/demo/z1.html +0 -34
- package/public/demo/s1.xslt +0 -60
- package/public/demo/z.html +0 -33
- package/public/demo/z.js +0 -9
- package/public/demo/z.xml +0 -60
- package/public/demo/z1.html +0 -34
- package/src/custom-element/demo/s1.xslt +0 -60
- package/src/custom-element/demo/z.html +0 -33
- package/src/custom-element/demo/z.js +0 -9
- package/src/custom-element/demo/z.xml +0 -60
- package/src/custom-element/demo/z1.html +0 -34
- package/src/stories/__screenshots__/http-request.test.ts/http-request-url-change-1.png +0 -0
- package/storybook-static/assets/Color-ERTF36HU-ChyYtq0t.js +0 -1
- package/storybook-static/assets/custom-element-BDGsYgbP.js +0 -97
- package/storybook-static/assets/entry-preview-C313OLrj.js +0 -26
- package/storybook-static/assets/entry-preview-docs-B7ORr9w5.js +0 -2
- package/storybook-static/assets/iframe-Ddc_axoC.js +0 -2
- package/storybook-static/assets/index-BdcJ-iJ7.js +0 -8
- package/storybook-static/assets/index-CiCdFubk.js +0 -634
- package/storybook-static/assets/index-tfEkrhWr.js +0 -1
- package/storybook-static/assets/preview-CcS4DQh8.js +0 -1
- package/storybook-static/assets/preview-CfH4_OzN.js +0 -2
- package/storybook-static/assets/tiny-invariant-BxWVcicq.js +0 -1
- package/storybook-static/demo/s1.xslt +0 -60
- package/storybook-static/demo/z.html +0 -33
- package/storybook-static/demo/z.js +0 -9
- package/storybook-static/demo/z.xml +0 -60
- package/storybook-static/demo/z1.html +0 -34
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const { getJestConfig } = require('@storybook/test-runner');
|
|
2
|
+
|
|
3
|
+
// The default Jest configuration comes from @storybook/test-runner
|
|
4
|
+
const testRunnerConfig = getJestConfig();
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @type {import('@jest/types').Config.InitialOptions}
|
|
8
|
+
*/
|
|
9
|
+
module.exports = {
|
|
10
|
+
...testRunnerConfig,
|
|
11
|
+
/** Add your own overrides below, and make sure
|
|
12
|
+
* to merge testRunnerConfig properties with your own
|
|
13
|
+
* @see https://jestjs.io/docs/configuration
|
|
14
|
+
*/
|
|
15
|
+
};
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 140 32" height="20px" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<style>
|
|
3
|
-
.heavy { font: bold 16px sans-serif; fill:white; }
|
|
4
|
-
.percent { font: bold 16px monotype; fill: white; }
|
|
5
|
-
</style>
|
|
6
|
-
<rect width="140" height="32" fill="#473" rx="4"/>
|
|
7
|
-
<rect width="88" height="32" fill="#534" rx="4"/>
|
|
8
|
-
<text x="8" y="21" class="heavy">coverage</text>
|
|
9
|
-
<text x="94" y="22" class="percent">0%</text>
|
|
10
|
-
</svg>
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
<!doctype html>
|
|
3
|
-
<html lang="en">
|
|
4
|
-
|
|
5
|
-
<head>
|
|
6
|
-
<title>Code coverage report for src/custom-element/demo</title>
|
|
7
|
-
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
|
-
<link rel="stylesheet" href="../../../base.css" />
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
-
<style type='text/css'>
|
|
13
|
-
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(../../../sort-arrow-sprite.png);
|
|
15
|
-
}
|
|
16
|
-
</style>
|
|
17
|
-
</head>
|
|
18
|
-
|
|
19
|
-
<body>
|
|
20
|
-
<div class='wrapper'>
|
|
21
|
-
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../index.html">All files</a> src/custom-element/demo</h1>
|
|
23
|
-
<div class='clearfix'>
|
|
24
|
-
|
|
25
|
-
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">0% </span>
|
|
27
|
-
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/4</span>
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">100% </span>
|
|
34
|
-
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/0</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">100% </span>
|
|
41
|
-
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/0</span>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">0% </span>
|
|
48
|
-
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/4</span>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<p class="quiet">
|
|
55
|
-
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
-
</p>
|
|
57
|
-
<template id="filterTemplate">
|
|
58
|
-
<div class="quiet">
|
|
59
|
-
Filter:
|
|
60
|
-
<input type="search" id="fileSearch">
|
|
61
|
-
</div>
|
|
62
|
-
</template>
|
|
63
|
-
</div>
|
|
64
|
-
<div class='status-line low'></div>
|
|
65
|
-
<div class="pad1">
|
|
66
|
-
<table class="coverage-summary">
|
|
67
|
-
<thead>
|
|
68
|
-
<tr>
|
|
69
|
-
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
|
70
|
-
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
|
71
|
-
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
|
72
|
-
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
73
|
-
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
|
74
|
-
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
75
|
-
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
|
76
|
-
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
77
|
-
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
|
78
|
-
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
79
|
-
</tr>
|
|
80
|
-
</thead>
|
|
81
|
-
<tbody><tr>
|
|
82
|
-
<td class="file low" data-value="z.js"><a href="z.js.html">z.js</a></td>
|
|
83
|
-
<td data-value="0" class="pic low">
|
|
84
|
-
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
|
-
</td>
|
|
86
|
-
<td data-value="0" class="pct low">0%</td>
|
|
87
|
-
<td data-value="4" class="abs low">0/4</td>
|
|
88
|
-
<td data-value="100" class="pct high">100%</td>
|
|
89
|
-
<td data-value="0" class="abs high">0/0</td>
|
|
90
|
-
<td data-value="100" class="pct high">100%</td>
|
|
91
|
-
<td data-value="0" class="abs high">0/0</td>
|
|
92
|
-
<td data-value="0" class="pct low">0%</td>
|
|
93
|
-
<td data-value="4" class="abs low">0/4</td>
|
|
94
|
-
</tr>
|
|
95
|
-
|
|
96
|
-
</tbody>
|
|
97
|
-
</table>
|
|
98
|
-
</div>
|
|
99
|
-
<div class='push'></div><!-- for sticky footer -->
|
|
100
|
-
</div><!-- /wrapper -->
|
|
101
|
-
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
|
-
Code coverage generated by
|
|
103
|
-
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at 2024-11-07T03:27:34.733Z
|
|
105
|
-
</div>
|
|
106
|
-
<script src="../../../prettify.js"></script>
|
|
107
|
-
<script>
|
|
108
|
-
window.onload = function () {
|
|
109
|
-
prettyPrint();
|
|
110
|
-
};
|
|
111
|
-
</script>
|
|
112
|
-
<script src="../../../sorter.js"></script>
|
|
113
|
-
<script src="../../../block-navigation.js"></script>
|
|
114
|
-
</body>
|
|
115
|
-
</html>
|
|
116
|
-
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 140 32" height="20px" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<style>
|
|
3
|
-
.heavy { font: bold 16px sans-serif; fill:white; }
|
|
4
|
-
.percent { font: bold 16px monotype; fill: white; }
|
|
5
|
-
</style>
|
|
6
|
-
<rect width="140" height="32" fill="#473" rx="4"/>
|
|
7
|
-
<rect width="88" height="32" fill="#534" rx="4"/>
|
|
8
|
-
<text x="8" y="21" class="heavy">coverage</text>
|
|
9
|
-
<text x="94" y="22" class="percent">0%</text>
|
|
10
|
-
</svg>
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
<!doctype html>
|
|
3
|
-
<html lang="en">
|
|
4
|
-
|
|
5
|
-
<head>
|
|
6
|
-
<title>Code coverage report for src/custom-element/demo/z.js</title>
|
|
7
|
-
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
|
-
<link rel="stylesheet" href="../../../base.css" />
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
-
<style type='text/css'>
|
|
13
|
-
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(../../../sort-arrow-sprite.png);
|
|
15
|
-
}
|
|
16
|
-
</style>
|
|
17
|
-
</head>
|
|
18
|
-
|
|
19
|
-
<body>
|
|
20
|
-
<div class='wrapper'>
|
|
21
|
-
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../index.html">All files</a> / <a href="index.html">src/custom-element/demo</a> z.js</h1>
|
|
23
|
-
<div class='clearfix'>
|
|
24
|
-
|
|
25
|
-
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">0% </span>
|
|
27
|
-
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/4</span>
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">100% </span>
|
|
34
|
-
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/0</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">100% </span>
|
|
41
|
-
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/0</span>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">0% </span>
|
|
48
|
-
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/4</span>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<p class="quiet">
|
|
55
|
-
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
-
</p>
|
|
57
|
-
<template id="filterTemplate">
|
|
58
|
-
<div class="quiet">
|
|
59
|
-
Filter:
|
|
60
|
-
<input type="search" id="fileSearch">
|
|
61
|
-
</div>
|
|
62
|
-
</template>
|
|
63
|
-
</div>
|
|
64
|
-
<div class='status-line low'></div>
|
|
65
|
-
<pre><table class="coverage">
|
|
66
|
-
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
-
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
-
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
-
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
-
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
-
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
-
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
-
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
-
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
-
<a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
76
|
-
<span class="cline-any cline-neutral"> </span>
|
|
77
|
-
<span class="cline-any cline-no"> </span>
|
|
78
|
-
<span class="cline-any cline-no"> </span>
|
|
79
|
-
<span class="cline-any cline-neutral"> </span>
|
|
80
|
-
<span class="cline-any cline-no"> </span>
|
|
81
|
-
<span class="cline-any cline-neutral"> </span>
|
|
82
|
-
<span class="cline-any cline-no"> </span>
|
|
83
|
-
<span class="cline-any cline-neutral"> </span>
|
|
84
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"> import circle from "circle";
|
|
85
|
-
import circle2 from "lib-root/circle.js";
|
|
86
|
-
<span class="cstat-no" title="statement not covered" > console.log(circle())</span>
|
|
87
|
-
<span class="cstat-no" title="statement not covered" > try{</span>
|
|
88
|
-
|
|
89
|
-
<span class="cstat-no" title="statement not covered" > console.log(import.meta.resolve('lib-root/a.js'))</span>
|
|
90
|
-
}catch( err ){
|
|
91
|
-
<span class="cstat-no" title="statement not covered" > console.error(err.message)</span>
|
|
92
|
-
}
|
|
93
|
-
</pre></td></tr></table></pre>
|
|
94
|
-
|
|
95
|
-
<div class='push'></div><!-- for sticky footer -->
|
|
96
|
-
</div><!-- /wrapper -->
|
|
97
|
-
<div class='footer quiet pad2 space-top1 center small'>
|
|
98
|
-
Code coverage generated by
|
|
99
|
-
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
100
|
-
at 2024-11-07T03:27:34.733Z
|
|
101
|
-
</div>
|
|
102
|
-
<script src="../../../prettify.js"></script>
|
|
103
|
-
<script>
|
|
104
|
-
window.onload = function () {
|
|
105
|
-
prettyPrint();
|
|
106
|
-
};
|
|
107
|
-
</script>
|
|
108
|
-
<script src="../../../sorter.js"></script>
|
|
109
|
-
<script src="../../../block-navigation.js"></script>
|
|
110
|
-
</body>
|
|
111
|
-
</html>
|
|
112
|
-
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";const Y="http://www.w3.org/1999/XSL/Transform",k="http://www.w3.org/1999/xhtml",Ne="http://exslt.org/common",f=(e,l)=>e.getAttribute?.(l),te=e=>e.nodeType===3,Ae=e=>typeof e=="string",Te=e=>e&&typeof e.nodeType=="number",L=(e,l)=>(e.ownerDocument||e).createTextNode(l),ne=e=>{for(;e.firstChild;)e.firstChild.remove();return e},V=e=>(e.getAttributeNames().map(l=>e.removeAttribute(l)),ne(e)),ae=e=>(e?.setAttribute("xmlns:xsl",Y),e),ie=e=>(e?.setAttribute("xmlns:xhtml",k),ae(e)),oe=e=>/^[_a-zA-Z][-_:a-zA-Z0-9]*$/.test(e),T=(e,l="",t=document)=>{const s=i=>(r=>(l&&r.append(L(t.ownerDocument||t,l)),r))((t.ownerDocument||t).createElement(i));if(oe(e))return s(e);const n=s("dce-object");return n.setAttribute("dce-object-name",e),n},se=(e,l)=>{const t=e.ownerDocument.createElementNS(e.namespaceURI,l);for(let s of e.attributes)t.setAttribute(s.name,s.value);for(;e.firstChild;)t.append(e.firstChild);return t};function P(e){return new DOMParser().parseFromString(e,"application/xml")}function M(e){return new XMLSerializer().serializeToString(e)}function H(e,l,t,s){const n=x=>e.ownerDocument.createElement(x),r=((x,p,u)=>(p.append(u=n(x)),u))(l,e);return[...t].forEach(x=>r.append(s(x))),r}function we(e){return e.slot||(e.setAttribute||(e=T("span",e.textContent.replaceAll(`
|
|
2
|
-
`,""))),e.setAttribute("slot","")),e}function le(e,l){e.getAttributeNames().forEach(t=>l.includes(t)||e.removeAttribute(t))}const G=e=>[...e].filter(l=>!(l.nodeType===3&&l.data.trim()===""));function $(e,l,t){const s=typeof e;if(s==="string")return T(l,e,t);if(s==="number")return T(l,""+e,t);if(e instanceof Array){const i=T("array","",t);return e.map(r=>i.append($(r,l,t))),i}if(e instanceof FormData){const i=T("form-data","",t);for(const r of e)i.append($(r[1],r[0],t));return i}const n=T(l,"",t);for(let i in e)Te(e[i])||typeof e[i]=="function"||e[i]instanceof Window||(typeof e[i]!="object"&&oe(i)?n.setAttribute(i,e[i]):n.append($(e[i],i,t)));return n}function Z(e){if(D(e,"*",l=>[...l.childNodes].filter(t=>t.nodeType===3&&t.parentNode.localName!=="style"&&t.data).forEach(t=>{const s=t.data,n=s.matchAll(/{([^}]*)}/g);if(n){let i=0,r=p=>L(t,p),x=[];if([...n].forEach(p=>{p.index>i&&x.push(r(p.input.substring(i,p.index)));const u=e.querySelector("value-of").cloneNode();u.setAttribute("select",p[1]),x.push(u),i=p.index+p[0].length}),i<s.length&&x.push(r(s.substring(i,s.length))),x.length){for(let p of x)l.insertBefore(p,t);l.removeChild(t)}}})),"all"in e){let l=1;for(let t of e.all)t.setAttribute&&!t.tagName.startsWith("xsl:")&&t.setAttribute("data-dce-id",""+l++)}return e}function re(e,l="xsl:stylesheet"){if(e.tagName===l||e.documentElement?.tagName===l)return Z(e);const t=P(`<xsl:stylesheet version="1.0" xmlns:xsl="${Y}" xmlns:xhtml="${k}" xmlns:exsl="${Ne}" exclude-result-prefixes="exsl" >
|
|
3
|
-
<xsl:output method="xml"/>
|
|
4
|
-
<xsl:template match="/"><dce-root xmlns="${k}"><xsl:apply-templates select="*" /></dce-root></xsl:template>
|
|
5
|
-
<xsl:template match="*[name()='template']">
|
|
6
|
-
<xsl:apply-templates mode="sanitize" select="*|text()"/>
|
|
7
|
-
</xsl:template>
|
|
8
|
-
<xsl:template match="*">
|
|
9
|
-
<xsl:apply-templates mode="sanitize" select="*|text()"/>
|
|
10
|
-
</xsl:template>
|
|
11
|
-
<xsl:template match="*[name()='svg']|*[name()='math']">
|
|
12
|
-
<xsl:apply-templates mode="sanitize" select="."/>
|
|
13
|
-
</xsl:template>
|
|
14
|
-
<xsl:template mode="sanitize" match="*[count(text())=1 and count(*)=0]">
|
|
15
|
-
<xsl:copy>
|
|
16
|
-
<xsl:apply-templates mode="sanitize" select="@*"/>
|
|
17
|
-
<xsl:value-of select="text()"></xsl:value-of>
|
|
18
|
-
</xsl:copy>
|
|
19
|
-
</xsl:template>
|
|
20
|
-
<xsl:template mode="sanitize" match="xhtml:*[count(text())=1 and count(*)=0]">
|
|
21
|
-
<xsl:element name="{local-name()}">
|
|
22
|
-
<xsl:apply-templates mode="sanitize" select="@*"/>
|
|
23
|
-
<xsl:value-of select="text()"></xsl:value-of>
|
|
24
|
-
</xsl:element>
|
|
25
|
-
</xsl:template>
|
|
26
|
-
<xsl:template mode="sanitize" match="*|@*">
|
|
27
|
-
<xsl:copy>
|
|
28
|
-
<xsl:apply-templates mode="sanitize" select="*|@*|text()"/>
|
|
29
|
-
</xsl:copy>
|
|
30
|
-
</xsl:template>
|
|
31
|
-
<xsl:template mode="sanitize" match="text()[normalize-space(.) = '']"/>
|
|
32
|
-
<xsl:template mode="sanitize" match="text()">
|
|
33
|
-
<dce-text>
|
|
34
|
-
<xsl:copy/>
|
|
35
|
-
</dce-text>
|
|
36
|
-
</xsl:template>
|
|
37
|
-
<xsl:template mode="sanitize" match="xsl:value-of|*[name()='slot']">
|
|
38
|
-
<xsl:copy>
|
|
39
|
-
<xsl:apply-templates mode="sanitize" select="*|@*|text()"/>
|
|
40
|
-
</xsl:copy>
|
|
41
|
-
</xsl:template>
|
|
42
|
-
<xsl:template mode="sanitize" match="xhtml:*">
|
|
43
|
-
<xsl:element name="{local-name()}">
|
|
44
|
-
<xsl:apply-templates mode="sanitize" select="*|@*|text()"/>
|
|
45
|
-
</xsl:element>
|
|
46
|
-
</xsl:template>
|
|
47
|
-
<xsl:template mode="sanitize" match="xhtml:input">
|
|
48
|
-
<xsl:element name="{local-name()}">
|
|
49
|
-
<xsl:apply-templates mode="sanitize" select="*|@*|text()"/>
|
|
50
|
-
</xsl:element>
|
|
51
|
-
<xsl:for-each select="*">
|
|
52
|
-
<xsl:copy>
|
|
53
|
-
<xsl:attribute name="for" >^</xsl:attribute>
|
|
54
|
-
<xsl:apply-templates mode="sanitize" select="*|@*|text()"/>
|
|
55
|
-
</xsl:copy>
|
|
56
|
-
</xsl:for-each>
|
|
57
|
-
</xsl:template>
|
|
58
|
-
</xsl:stylesheet>`),s=new XSLTProcessor,n=(a=>{D(a,"custom-element",b=>{b.firstElementChild.localName==="template"&&([...b.firstElementChild.content.childNodes].forEach(y=>b.append(y)),b.firstElementChild.remove())}),D(a,"script",b=>b.remove());const c=a.content??a.firstElementChild?.content??a.body??a;be.forEach(b=>D(c,b,y=>ye(y,c)));const N=a.firstElementChild?.content||a.content,E=b=>{const y=P("<xhtml/>"),j=y.importNode(b,!0);return y.replaceChild(j,y.documentElement),ie(j)};if(N){const b=T("div");return[...N.childNodes].map(y=>b.append(y.cloneNode(!0))),E(b)}return E(a.documentElement||a.body||a)})(e),i=P(`<xsl:stylesheet version="1.0"
|
|
59
|
-
xmlns:xsl="${Y}"
|
|
60
|
-
xmlns:xhtml="${k}"
|
|
61
|
-
xmlns:dce="urn:schemas-epa-wg:dce"
|
|
62
|
-
xmlns:exsl="http://exslt.org/common"
|
|
63
|
-
exclude-result-prefixes="exsl"
|
|
64
|
-
>
|
|
65
|
-
<xsl:template match="ignore">
|
|
66
|
-
<xsl:choose>
|
|
67
|
-
<xsl:when test="//attr">{//attr}</xsl:when>
|
|
68
|
-
<xsl:otherwise>{def}</xsl:otherwise>
|
|
69
|
-
</xsl:choose><xsl:value-of select="."></xsl:value-of></xsl:template>
|
|
70
|
-
<xsl:template mode="payload" match="attributes"></xsl:template>
|
|
71
|
-
<xsl:template match="/">
|
|
72
|
-
<xsl:apply-templates mode="payload" select="/datadom/attributes"/>
|
|
73
|
-
</xsl:template>
|
|
74
|
-
<xsl:template name="slot" >
|
|
75
|
-
<xsl:param name="slotname" />
|
|
76
|
-
<xsl:param name="defaultvalue" />
|
|
77
|
-
<xsl:choose>
|
|
78
|
-
<xsl:when test="//payload/*[@slot=$slotname]">
|
|
79
|
-
<xsl:copy-of select="//payload/*[@slot=$slotname]"/>
|
|
80
|
-
</xsl:when>
|
|
81
|
-
<xsl:otherwise>
|
|
82
|
-
<xsl:copy-of select="$defaultvalue"/>
|
|
83
|
-
</xsl:otherwise>
|
|
84
|
-
</xsl:choose>
|
|
85
|
-
</xsl:template>
|
|
86
|
-
<xsl:variable name="js-injected-body">
|
|
87
|
-
<xsl:call-template name="slot" >
|
|
88
|
-
<xsl:with-param name="slotname" select="''"/>
|
|
89
|
-
<xsl:with-param name="defaultvalue"/>
|
|
90
|
-
</xsl:call-template>
|
|
91
|
-
</xsl:variable>
|
|
92
|
-
</xsl:stylesheet>`);s.importStylesheet(t);const r=s.transformToFragment(n,document),x=(a,c)=>a.querySelector(c),p=x(i,'template[mode="payload"]');if(!r)return console.error("transformation error",{xml:n.outerHTML,xsl:M(t)});if(r.firstElementChild.localName!=="dce-root"){const a=r.ownerDocument.createElement("dce-root");[...r.childNodes].forEach(c=>a.append(c)),r.append(a)}const u=[];[...r.querySelectorAll("dce-root>attribute")].forEach(a=>{le(a,"namespace,name,select");const c=se(a,"xsl:param"),N=f(a,"name");p.append(c),le(c,"select,name");let E=f(c,"select")?.split("??");E||(E=["//"+N,`'${c.textContent}'`],V(c),c.setAttribute("name",N));let b;if(E?.length>1){c.removeAttribute("select");const y=x(i,'template[match="ignore"]>choose').cloneNode(!0);V(y.firstElementChild).append(L(y,"{"+E[0]+"}")),V(y.lastElementChild).append(L(y,"{"+E[1]+"}")),y.firstElementChild.setAttribute("test",E[0]),c.append(y),b=y.cloneNode(!0)}else b=se(a,"xsl:value-of");b.removeAttribute("name"),a.append(b),a.removeAttribute("select"),u.push(c)}),[...r.querySelectorAll("[value]")].filter(a=>a.getAttribute("value").match(/\{(.*)\?\?(.*)\}/g)).forEach(a=>{const c=f(a,"value");c&&a.setAttribute("value",xe(c))});for(const a of r.childNodes)p.append(i.importNode(a,!0));[...p.getElementsByTagName("xsl:template")].forEach(a=>p.ownerDocument.documentElement.append(a));const q=x(i,'call-template[name="slot"]'),d=a=>{const c=q.cloneNode(!0),N=f(a,"name");N&&c.firstElementChild.setAttribute("select",`'${N}'`);for(let E of a.childNodes)c.lastElementChild.append(E);return c};D(p,"slot",a=>a.parentNode.replaceChild(d(a),a));const m=Z(i);return m.params=u,m}async function ce(e){return await new Promise((t,s)=>{const n=new XMLHttpRequest;n.open("GET",e),n.responseType="document",n.onload=()=>{n.readyState===n.DONE&&n.status===200?t(n.responseXML?.body||n.responseXML||T("div",n.responseText)):s(`${n.statusText} - ${e}`)},n.addEventListener("error",i=>s(i)),n.send()})}function me(e,l,t=!1){if(e===l)return!0;if(typeof e!="object"||e===null||typeof l!="object"||l===null||Object.keys(e).length!==Object.keys(l).length)return t;for(let s in e)if(!(s in l)||!me(e[s],l[s]))return t;return!0}const ue=e=>e.split("|").map(l=>l.trim()).filter(l=>l),de=(e,l)=>ue(l).map(t=>{let s=e.ownerDocument,n=i=>(e.append(i),i);if(t.includes("/")){const i=[],r=s.evaluate(t,e);for(let x;x=r.iterateNext();)i.push(x);return i}return[...e.childNodes].find(i=>i.localName===t)||n(T(t,"",s))}).flat();function J(e,l,t,s){if(!t.sliceProcessed)return t.sliceProcessed=1,de(e,l??"").map(n=>{const i=e.ownerDocument,r=t.sliceEventSource,x=t.sliceElement,p=()=>[...n.childNodes].filter(u=>u.nodeType===3||u.localName==="value"||u.localName==="form-data").map(u=>u.remove());if(r.getAttributeNames().map(u=>n.setAttribute(u,f(r,u))),[...n.childNodes].filter(u=>u.localName==="event").map(u=>u.remove()),"validationMessage"in r&&n.setAttribute("validation-message",r.validationMessage),t.type==="init"&&p(),n.append($(t,"event",i)),x.hasAttribute("slice-value")){r.value===void 0?n.removeAttribute("value"):n.setAttribute("value",r.value);const u=z(f(x,"slice-value"),n);p(),n.append(L(i,u))}else{if("elements"in r)return p(),n.append($(new FormData(r),"value",n.ownerDocument)),n;const u=r.value??f(r,"value");p(),u==null?[...n.childNodes].filter(w=>w.localName!=="event").map(w=>w.remove()):Ae(u)?n.append(L(i,u)):n.append($(u,"value",n.ownerDocument))}return n})}function D(e,l,t){e.querySelectorAll&&[...e.querySelectorAll(l)].forEach(t)}const Se=async(e,l)=>{if(!e||!e.trim())return[l];if(e.startsWith("#"))return(t=>{const s=t.querySelectorAll(e);return[...s.length?s:t.getRootNode().querySelectorAll(e)]})(l.parentElement);try{const[t,s]=e.split("#");if(e.charAt(0)===".")e=new URL(t,l.closest("[base]")?.getAttribute("base")||location).href;else try{e=(void 0)(t),s&&(e+="#"+s)}catch(i){console.error(i.message)}const n=await ce(e);if(l.setAttributeNS("xml","base",e),s){const i=n.querySelectorAll("#"+s);return i.length?[...i]:(console.error("template not found",e+"#"+s),[l])}return[n]}catch{return[l]}};function pe(e,l){for(let t of e.attributes)t.namespaceURI?l.setAttributeNS(t.namespaceURI,t.name,t.value):l.setAttribute(t.name,t.value),t.name==="value"&&(l.value=t.value)}function K(e,l=0){const t={};for(const s of e.childNodes){const n=f(s,"data-dce-id")||s.dceId||0;if(!t[n])n?t[n]=1:(t[n]=s.dceId=++l,s.setAttribute&&s.setAttribute("data-dce-id",s.dceId));else{const i=s.dceId=n+"-"+t[n]++;s.setAttribute&&s.setAttribute("data-dce-id",i)}s.childNodes.length&&K(s)}}function fe(e,l,t){t=1*t;for(let s of e.childNodes)if((s.dceId??s.getAttribute("data-dce-id")*1)>t)return e.insertBefore(l,s);e.append(l)}function Q(e,l){if(e.firstElementChild?.localName==="dce-root"&&l[0].localName!=="dce-root")return;if(!l.length)return e.firstElementChild?.localName!=="dce-root"&&ne(e);const t={};for(let s of e.childNodes)t[s.dceId],te(s)?(s.data.trim(),t[s.dceId||0]=s):t[f(s,"data-dce-id")||0]=s;for(let s of[...l]){const n=f(s,"data-dce-id")||s.dceId,i=t[n];i?(te(s)?i.nodeValue!==s.nodeValue&&(i.nodeValue=s.nodeValue):(pe(s,i),(i.childNodes.length||s.childNodes.length)&&Q(i,s.childNodes)),delete t[n]):fe(e,s,n)}for(let s of Object.values(t))s.localName!=="dce-root"&&s.remove()}function he(e,l){return e.hasAttribute(l)||e.setAttribute(l,crypto.randomUUID()),e.getAttribute(l)}const xe=e=>[...e?.matchAll(/([^{}]*)(\{)([^}]+)}([^{}]*)/g)].map(t=>`${t[1]}{${O(t[3])}}${t[4]}`).join(""),O=e=>{if(!e.trim())return e;const l=e.split("??"),t=l.shift(),s=O(l.join("??"));return l.length?`concat( ${t} , substring( ${s} , (1+string-length( ${s} )) * string-length( ${t} ) ) )`:e},z=(e,l)=>{const t=e.split("??");if(t.length>1)return z(t[0],l)||z(t[1],l);e=O(e);const s=l.ownerDocument.evaluate(e,l);switch(s.resultType){case XPathResult.NUMBER_TYPE:return s.numberValue;case XPathResult.STRING_TYPE:return s.stringValue;case XPathResult.BOOLEAN_TYPE:return s.booleanValue}let n="";for(let i;i=s.iterateNext();)n+=i.textContent;return n},be="stylesheet,transform,import,include,strip-space,preserve-space,output,key,decimal-format,namespace-alias,value-of,copy-of,number,apply-templates,apply-imports,for-each,sort,if,choose,when,otherwise,attribute-set,call-template,with-param,variable,param,text,processing-instruction,element,attribute,comment,copy,message,fallback".split(","),ye=(e,l)=>{const t=T("xsl:"+e.localName);for(let s of e.attributes)t.setAttribute(s.name,s.value);for(;e.firstChild;)t.append(e.firstChild);if(e.parentElement)e.parentElement.replaceChild(t,e);else{const s=e.parentElement||l,n=[...s.childNodes];n.forEach((i,r)=>{i===e&&(n[r]=t)}),s.replaceChildren(...n)}};class ge extends HTMLElement{static observedAttributes=["src","tag","hidden"];async connectedCallback(){this.firstElementChild&&this.firstElementChild.localName!=="template"&&console.warn(`custom-element used without template wrapping content
|
|
93
|
-
`,this.outerHTML);const l=await Se(f(this,"src"),this),t=f(this,"tag"),s=t||"dce-"+crypto.randomUUID();for(const d of l)D(d.templateNode||d.content||d,"style",m=>{const a=m.closest("slot"),c=a?`slot[name="${a.name}"]`:"";m.innerHTML=`${s} ${c}{${m.innerHTML}}`,this.append(m)});const n=l.map(d=>re(d)),i=n.map((d,m)=>{m=new XSLTProcessor;try{m.importStylesheet(d)}catch(a){console.error(a,M(d))}return m});Object.defineProperty(this,"xsltString",{get:()=>n.map(d=>M(d)).join(`
|
|
94
|
-
`)});const r=this,x=[...this.templateNode.querySelectorAll("[slice]")],p=x.map(d=>f(d,"slice")).filter(d=>!d.includes("/")).filter((d,m,a)=>a.indexOf(d)===m).map(ue).flat(),u=n.reduce((d,m)=>(m.params&&d.push(...m.params),d),[]);class w extends HTMLElement{static get observedAttributes(){return u.map(m=>f(m,"name"))}#e=0;connectedCallback(){let m=G(this.childNodes);if(this.firstElementChild?.tagName==="TEMPLATE"){this.firstElementChild!==this.lastElementChild&&console.error("payload should have TEMPLATE as only child",this.outerHTML);const h=this.firstElementChild;h.remove(),m=G(h.content.childNodes);for(const g of m)if(g.localName==="style"){const o=he(this,"data-dce-style");g.innerHTML=`${s}[data-dce-style="${o}"]{${g.innerHTML}}`,h.insertAdjacentElement("beforebegin",g)}else g.nodeType===1?h.insertAdjacentElement("beforebegin",g):g.nodeType===3&&h.insertAdjacentText("beforebegin",g.data)}const a=P("<datadom/>").documentElement,c=(h,g="")=>(o=>(g&&o.append(L(a,g)),o))(a.ownerDocument.createElement(h)),N=H(a,"payload",m,we);ae(N),ie(N),this.innerHTML="";const E=H(a,"attributes",this.attributes,h=>c(h.nodeName,h.value));H(a,"dataset",Object.keys(this.dataset),h=>c(h,this.dataset[h]));const b=H(a,"slice",p,h=>c(h,"")),y=h=>z(h,b);this.xml=a;const j=[],ee=()=>{const h={};for(let g;g=j.pop();){const o=f(g.sliceElement,"slice");h[o]||(J(b,o,g),h[o]=g)}Object.keys(h).length!==0&&U()};let _;this.onSlice=h=>{j.push(h),_||(_=setTimeout(()=>{ee(),_=0},1))};const U=this.transform=()=>{if(this.#e)debugger;this.#e=1,i.map((o,v)=>{const S=o.transformToFragment(a.ownerDocument,document);return S||console.error(`XSLT transformation error. xsl:
|
|
95
|
-
`,M(n[v]),`
|
|
96
|
-
xml:
|
|
97
|
-
`,M(a)),S}).map(o=>{o&&(K(o),Q(this,o.childNodes))}),w.observedAttributes.map(o=>{let v=f(this.firstElementChild,o);v!==f(this,o)&&(this.setAttribute(o,v),this.#t(o,v))});function g(o){let v=o;if(o.localName==="slice"){const S=f(o,"for");if(S||(v=o.parentElement),S==="^")do v=v.previousElementSibling;while(v.localName==="slice");else v=this.querySelector(S);if(!v)return console.warn(`can not find selector in "slice for=${S}" `,o.outerHTML);f(o,"slice")||o.setAttribute("slice",f(o,"name"))}return v}D(this,"[slice],[slice-event]",o=>{let v=f(o,"slice-event");const S=o.hasAttribute("slice-value")||o.hasAttribute("value")||o.value,I=g(o);o.dceInitialized||(o.dceInitialized=1,I.hasAttribute("custom-validity")&&(v+=" change submit"),[...new Set((v||"change").split(" "))].forEach(ve=>I.addEventListener(ve,A=>{A.sliceElement=o,A.sliceEventSource=A.currentTarget||A.target,A.sliceProcessed=0;const Ee=J(b,f(A.sliceElement,"slice"),A);D(this,"[custom-validity]",X=>{if(!X.setCustomValidity)return;const W=f(X,"custom-validity");try{const R=W&&z(W,E);X.setCustomValidity(R===!0?"":R===!1?"invalid":R)}catch(R){console.error(R,"xPath",W)}});const B=f(I,"custom-validity"),C=B&&z(B,E),F=C===!0?"":C;if(B){if(o.setCustomValidity?o.setCustomValidity(F):o.validationMessage=F,Ee.map(X=>X.setAttribute("validation-message",F)),A.type==="submit")return C===!0?void 0:(setTimeout(U,1),!!C===C?(C||A.preventDefault(),C):C?(A.preventDefault(),!1):void 0);setTimeout(U,1)}this.onSlice(A)})),(!v||v.includes("init"))&&(S?this.onSlice({type:"init",target:I,sliceElement:o,sliceEventSource:I}):o.value=y(f(o,"slice"))))}),this.#e=0};U(),ee()}#t(m,a){m==="value"&&(this.value=a);let c=this.xml.querySelector(`attributes>${m}`);c?V(c).append(L(c,a)):(c=T(m,a,this.xml),this.xml.querySelector("attributes").append(c)),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,detail:{[m]:a}}))}attributeChangedCallback(m,a,c){!this.xml||this.#e||(this.#t(m,c),this.transform())}get dce(){return r}}const q=d=>{window.customElements.get(d)!==w&&window.customElements.define(d,w)};if(t)q(t);else{const d=s;this.setAttribute("tag",d),q(d);const m=document.createElement(d);this.getAttributeNames().forEach(a=>m.setAttribute(a,this.getAttribute(a))),m.append(...[...this.childNodes].filter(a=>a.localName!=="style")),this.append(m)}}get templateNode(){return this.firstElementChild?.tagName==="TEMPLATE"?this.firstElementChild.content:this}get dce(){return this}get xslt(){return P(this.xsltString)}}window.customElements.define("custom-element",ge);exports.CustomElement=ge;exports.appendByDceId=fe;exports.assureSlices=de;exports.assureUID=he;exports.assureUnique=K;exports.createXsltFromDom=re;exports.deepEqual=me;exports.evalCurly=xe;exports.event2slice=J;exports.merge=Q;exports.mergeAttr=pe;exports.obj2node=$;exports.sanitizeBlankText=G;exports.tagUid=Z;exports.toXsl=ye;exports.xPath=z;exports.xPathDefaults=O;exports.xhrTemplate=ce;exports.xml2dom=P;exports.xmlString=M;exports.xslTags=be;
|
package/dist/demo/s1.xslt
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xhtml="http://www.w3.org/1999/xhtml"
|
|
3
|
-
xmlns:dce="urn:schemas-epa-wg:dce" xmlns:exsl="http://exslt.org/common" version="1.0"
|
|
4
|
-
exclude-result-prefixes="exsl">
|
|
5
|
-
<xsl:template match="ignore">
|
|
6
|
-
<xsl:choose>
|
|
7
|
-
<xsl:when test="//attr">
|
|
8
|
-
<xsl:value-of select="//attr"/>
|
|
9
|
-
</xsl:when>
|
|
10
|
-
<xsl:otherwise>
|
|
11
|
-
<xsl:value-of select="def"/>
|
|
12
|
-
</xsl:otherwise>
|
|
13
|
-
</xsl:choose>
|
|
14
|
-
<xsl:value-of select="."/>
|
|
15
|
-
</xsl:template>
|
|
16
|
-
<xsl:template mode="payload" match="attributes">
|
|
17
|
-
<dce-root xmlns="http://www.w3.org/1999/xhtml" xmlns:xhtml="http://www.w3.org/1999/xhtml" data-dce-id="1">
|
|
18
|
-
<u xmlns="" data-dce-id="2">
|
|
19
|
-
<dce-text data-dce-id="3">
|
|
20
|
-
<xsl:call-template name="slot">
|
|
21
|
-
<xsl:with-param name="slotname" select="''"/>
|
|
22
|
-
<xsl:with-param name="defaultvalue">
|
|
23
|
-
<dce-text xmlns="" data-dce-id="4">is green</dce-text>
|
|
24
|
-
</xsl:with-param>
|
|
25
|
-
</xsl:call-template>
|
|
26
|
-
</dce-text>
|
|
27
|
-
</u>
|
|
28
|
-
</dce-root>
|
|
29
|
-
</xsl:template>
|
|
30
|
-
<xsl:template match="/">
|
|
31
|
-
<xsl:apply-templates mode="payload" select="/datadom/attributes"/>
|
|
32
|
-
</xsl:template>
|
|
33
|
-
|
|
34
|
-
<xsl:template match="@*|node()" mode="copy-html">
|
|
35
|
-
<xsl:copy><xsl:apply-templates select="@*|node()" mode="copy-html"/></xsl:copy>
|
|
36
|
-
</xsl:template>
|
|
37
|
-
<xsl:template match="node()[starts-with(name(),'xhtml:')]" mode="copy-html">
|
|
38
|
-
<xsl:element name="{local-name()}"><xsl:apply-templates select="@*|node()" mode="copy-html"/></xsl:element>
|
|
39
|
-
</xsl:template>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
<xsl:template name="slot">
|
|
43
|
-
<xsl:param name="slotname"/>
|
|
44
|
-
<xsl:param name="defaultvalue"/>
|
|
45
|
-
<xsl:choose>
|
|
46
|
-
<xsl:when test="//payload/*[@slot=$slotname]">
|
|
47
|
-
<xsl:apply-templates mode="copy-html" select="//payload/*[@slot=$slotname]"/>
|
|
48
|
-
</xsl:when>
|
|
49
|
-
<xsl:otherwise>
|
|
50
|
-
<xsl:apply-templates mode="copy-html" select="$defaultvalue"/>
|
|
51
|
-
</xsl:otherwise>
|
|
52
|
-
</xsl:choose>
|
|
53
|
-
</xsl:template>
|
|
54
|
-
<xsl:variable name="js-injected-body">
|
|
55
|
-
<xsl:call-template name="slot">
|
|
56
|
-
<xsl:with-param name="slotname" select="''"/>
|
|
57
|
-
<xsl:with-param name="defaultvalue"/>
|
|
58
|
-
</xsl:call-template>
|
|
59
|
-
</xsl:variable>
|
|
60
|
-
</xsl:stylesheet>
|
package/dist/demo/z.html
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
|
3
|
-
<head>
|
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
|
5
|
-
<title>DOM merge - Declarative Custom Element implementation demo</title>
|
|
6
|
-
<link rel="icon" href="./wc-square.svg"/>
|
|
7
|
-
<script type="importmap">
|
|
8
|
-
{
|
|
9
|
-
"imports": {
|
|
10
|
-
"@epa-wg/custom-element/": "../",
|
|
11
|
-
"@epa-wg/custom-element-dist/": "../"
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
</script>
|
|
15
|
-
<script type="module" src="../http-request.js"></script>
|
|
16
|
-
<script type="module" src="../location-element.js"></script>
|
|
17
|
-
<script type="module" src="../custom-element.js"></script>
|
|
18
|
-
<style>
|
|
19
|
-
@import "./demo.css";
|
|
20
|
-
dt{ font-weight: bold}
|
|
21
|
-
dd{ padding: 0;}
|
|
22
|
-
h1,h3{ margin: 0;}
|
|
23
|
-
nav{ gap:0; }
|
|
24
|
-
</style>
|
|
25
|
-
</head>
|
|
26
|
-
<body>
|
|
27
|
-
|
|
28
|
-
<custom-element src="./html-template.html#dwc-logo">
|
|
29
|
-
<template><i>loading SVG from templates file ...</i></template>
|
|
30
|
-
</custom-element>
|
|
31
|
-
|
|
32
|
-
</body>
|
|
33
|
-
</html>
|
package/dist/demo/z.js
DELETED
package/dist/demo/z.xml
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<dce-root data-dce-id="1" xmlns:dce="urn:schemas-epa-wg:dce" xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
|
3
|
-
<location-element slice="window-url" data-dce-id="2"/>
|
|
4
|
-
<table data-dce-id="3">
|
|
5
|
-
<tr data-dce-id="4">
|
|
6
|
-
<th data-dce-id="5">
|
|
7
|
-
<u data-dce-id="6">URL properties</u>
|
|
8
|
-
</th>
|
|
9
|
-
</tr>
|
|
10
|
-
<tr data-dce-id="7">
|
|
11
|
-
<th data-dce-id="8">href</th>
|
|
12
|
-
<td data-dce-id="9">http://localhost:63342/custom-element/demo/a.html?_ijt=qca6trk5kne6eo4s4tomq4egmm&_ij_reload=RELOAD_ON_SAVE</td>
|
|
13
|
-
</tr>
|
|
14
|
-
<tr data-dce-id="7">
|
|
15
|
-
<th data-dce-id="8">origin</th>
|
|
16
|
-
<td data-dce-id="9">http://localhost:63342</td>
|
|
17
|
-
</tr>
|
|
18
|
-
<tr data-dce-id="7">
|
|
19
|
-
<th data-dce-id="8">protocol</th>
|
|
20
|
-
<td data-dce-id="9">http:</td>
|
|
21
|
-
</tr>
|
|
22
|
-
<tr data-dce-id="7">
|
|
23
|
-
<th data-dce-id="8">host</th>
|
|
24
|
-
<td data-dce-id="9">localhost:63342</td>
|
|
25
|
-
</tr>
|
|
26
|
-
<tr data-dce-id="7">
|
|
27
|
-
<th data-dce-id="8">hostname</th>
|
|
28
|
-
<td data-dce-id="9">localhost</td>
|
|
29
|
-
</tr>
|
|
30
|
-
<tr data-dce-id="7">
|
|
31
|
-
<th data-dce-id="8">port</th>
|
|
32
|
-
<td data-dce-id="9">63342</td>
|
|
33
|
-
</tr>
|
|
34
|
-
<tr data-dce-id="7">
|
|
35
|
-
<th data-dce-id="8">pathname</th>
|
|
36
|
-
<td data-dce-id="9">/custom-element/demo/a.html</td>
|
|
37
|
-
</tr>
|
|
38
|
-
<tr data-dce-id="7">
|
|
39
|
-
<th data-dce-id="8">search</th>
|
|
40
|
-
<td data-dce-id="9">?_ijt=qca6trk5kne6eo4s4tomq4egmm&_ij_reload=RELOAD_ON_SAVE</td>
|
|
41
|
-
</tr>
|
|
42
|
-
<tr data-dce-id="7">
|
|
43
|
-
<th data-dce-id="8">hash</th>
|
|
44
|
-
<td data-dce-id="9"/>
|
|
45
|
-
</tr>
|
|
46
|
-
<tr data-dce-id="10">
|
|
47
|
-
<th data-dce-id="11">
|
|
48
|
-
<u data-dce-id="12">URL parameters</u>
|
|
49
|
-
</th>
|
|
50
|
-
</tr>
|
|
51
|
-
<tr data-dce-id="13">
|
|
52
|
-
<th data-dce-id="14">_ijt</th>
|
|
53
|
-
<td data-dce-id="15">qca6trk5kne6eo4s4tomq4egmm</td>
|
|
54
|
-
</tr>
|
|
55
|
-
<tr data-dce-id="13">
|
|
56
|
-
<th data-dce-id="14">_ij_reload</th>
|
|
57
|
-
<td data-dce-id="15">RELOAD_ON_SAVE</td>
|
|
58
|
-
</tr>
|
|
59
|
-
</table>
|
|
60
|
-
</dce-root>
|
package/dist/demo/z1.html
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
|
3
|
-
<head>
|
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
|
5
|
-
<title>DOM merge - Declarative Custom Element implementation demo</title>
|
|
6
|
-
<link rel="icon" href="./wc-square.svg"/>
|
|
7
|
-
<script type="importmap">
|
|
8
|
-
{
|
|
9
|
-
"imports": {
|
|
10
|
-
"@epa-wg/custom-element/": "../",
|
|
11
|
-
"@epa-wg/custom-element-dist/": "../"
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
</script>
|
|
15
|
-
<script type="module" src="../http-request.js"></script>
|
|
16
|
-
<script type="module" src="../location-element.js"></script>
|
|
17
|
-
<script type="module" src="../custom-element.js"></script>
|
|
18
|
-
<style>
|
|
19
|
-
@import "./demo.css";
|
|
20
|
-
dt{ font-weight: bold}
|
|
21
|
-
dd{ padding: 0;}
|
|
22
|
-
h1,h3{ margin: 0;}
|
|
23
|
-
nav{ gap:0; }
|
|
24
|
-
</style>
|
|
25
|
-
</head>
|
|
26
|
-
<body>
|
|
27
|
-
<button onclick="window.location.hash = `#@epa-wg/custom-element-dist@0.0.27/storybook-static/index.html`">set in page URL</button>
|
|
28
|
-
|
|
29
|
-
<custom-element src="@epa-wg/custom-element-dist/demo/npm-versions.html#npm-version"
|
|
30
|
-
package-name="@epa-wg/custom-element-dist"
|
|
31
|
-
></custom-element>
|
|
32
|
-
|
|
33
|
-
</body>
|
|
34
|
-
</html>
|