@spectrum-web-components/story-decorator 0.0.0-20241209155954

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/README.md ADDED
@@ -0,0 +1,28 @@
1
+ ## Description
2
+
3
+ ### Usage
4
+
5
+ [![See it on NPM!](https://img.shields.io/npm/v/@spectrum-web-components/story-decorator?style=for-the-badge)](https://www.npmjs.com/package/@spectrum-web-components/story-decorator)
6
+ [![How big is this package in your project?](https://img.shields.io/bundlephobia/minzip/@spectrum-web-components/story-decorator?style=for-the-badge)](https://bundlephobia.com/result?p=@spectrum-web-components/story-decorator)
7
+
8
+ ```
9
+ yarn add @spectrum-web-components/story-decorator
10
+ ```
11
+
12
+ Import the side effectful registration of `<sp-story-decorator>` via:
13
+
14
+ ```
15
+ import '@spectrum-web-components/story-decorator/sp-story-decorator.js';
16
+ ```
17
+
18
+ When looking to leverage the `StoryDecorator` base class as a type and/or for extension purposes, do so via:
19
+
20
+ ```
21
+ import { StoryDecorator } from '@spectrum-web-components/story-decorator';
22
+ ```
23
+
24
+ ## Example
25
+
26
+ ```html
27
+ <sp-story-decorator></sp-story-decorator>
28
+ ```
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ import { html, render } from "@spectrum-web-components/base";
3
+ import "./sp-story-decorator.dev.js";
4
+ export const themeStyles = html`
5
+ <style>
6
+ #root {
7
+ padding: 0;
8
+ }
9
+ .docs-story sp-story-decorator::part(container) {
10
+ min-height: auto;
11
+ position: relative;
12
+ }
13
+ .docs-story sp-story-decorator::part(controls) {
14
+ position: absolute;
15
+ }
16
+ </style>
17
+ `;
18
+ export const swcThemeDecorator = (story) => {
19
+ requestAnimationFrame(() => {
20
+ const decorator = document.querySelector(
21
+ "sp-story-decorator"
22
+ );
23
+ render(story(), decorator);
24
+ });
25
+ return html`
26
+ ${themeStyles}
27
+ <sp-story-decorator role="main"></sp-story-decorator>
28
+ `;
29
+ };
30
+ //# sourceMappingURL=decorator.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["decorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { html, render, TemplateResult } from '@spectrum-web-components/base';\nimport './sp-story-decorator.dev.js'\n\nexport const themeStyles = html`\n <style>\n #root {\n padding: 0;\n }\n .docs-story sp-story-decorator::part(container) {\n min-height: auto;\n position: relative;\n }\n .docs-story sp-story-decorator::part(controls) {\n position: absolute;\n }\n </style>\n`;\n\nexport const swcThemeDecorator = (story: () => TemplateResult) => {\n requestAnimationFrame(() => {\n const decorator = document.querySelector(\n 'sp-story-decorator'\n ) as HTMLElement;\n render(story(), decorator);\n });\n\n return html`\n ${themeStyles}\n <sp-story-decorator role=\"main\"></sp-story-decorator>\n `;\n};\n"],
5
+ "mappings": ";AAYA,SAAS,MAAM,cAA8B;AAC7C,OAAO;AAEA,aAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAepB,aAAM,oBAAoB,CAAC,UAAgC;AAC9D,wBAAsB,MAAM;AACxB,UAAM,YAAY,SAAS;AAAA,MACvB;AAAA,IACJ;AACA,WAAO,MAAM,GAAG,SAAS;AAAA,EAC7B,CAAC;AAED,SAAO;AAAA,UACD,WAAW;AAAA;AAAA;AAGrB;",
6
+ "names": []
7
+ }
package/decorator.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";import{html as t,render as e}from"@spectrum-web-components/base";import"./sp-story-decorator.js";export const themeStyles=t`
2
+ <style>
3
+ #root {
4
+ padding: 0;
5
+ }
6
+ .docs-story sp-story-decorator::part(container) {
7
+ min-height: auto;
8
+ position: relative;
9
+ }
10
+ .docs-story sp-story-decorator::part(controls) {
11
+ position: absolute;
12
+ }
13
+ </style>
14
+ `,swcThemeDecorator=o=>(requestAnimationFrame(()=>{const r=document.querySelector("sp-story-decorator");e(o(),r)}),t`
15
+ ${themeStyles}
16
+ <sp-story-decorator role="main"></sp-story-decorator>
17
+ `);
18
+ //# sourceMappingURL=decorator.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["decorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { html, render, TemplateResult } from '@spectrum-web-components/base';\nimport './sp-story-decorator.js';\n\nexport const themeStyles = html`\n <style>\n #root {\n padding: 0;\n }\n .docs-story sp-story-decorator::part(container) {\n min-height: auto;\n position: relative;\n }\n .docs-story sp-story-decorator::part(controls) {\n position: absolute;\n }\n </style>\n`;\n\nexport const swcThemeDecorator = (story: () => TemplateResult) => {\n requestAnimationFrame(() => {\n const decorator = document.querySelector(\n 'sp-story-decorator'\n ) as HTMLElement;\n render(story(), decorator);\n });\n\n return html`\n ${themeStyles}\n <sp-story-decorator role=\"main\"></sp-story-decorator>\n `;\n};\n"],
5
+ "mappings": "aAYA,OAAS,QAAAA,EAAM,UAAAC,MAA8B,gCAC7C,MAAO,0BAEA,aAAM,YAAcD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAed,kBAAqBE,IAC9B,sBAAsB,IAAM,CACxB,MAAMC,EAAY,SAAS,cACvB,oBACJ,EACAF,EAAOC,EAAM,EAAGC,CAAS,CAC7B,CAAC,EAEMH;AAAA,UACD,WAAW;AAAA;",
6
+ "names": ["html", "render", "story", "decorator"]
7
+ }
package/package.json ADDED
@@ -0,0 +1,88 @@
1
+ {
2
+ "name": "@spectrum-web-components/story-decorator",
3
+ "version": "0.0.0-20241209155954",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "description": "",
8
+ "license": "Apache-2.0",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/adobe/spectrum-web-components.git",
12
+ "directory": "packages/story-decorator"
13
+ },
14
+ "author": "",
15
+ "bugs": {
16
+ "url": "https://github.com/adobe/spectrum-web-components/issues"
17
+ },
18
+ "main": "./src/index.js",
19
+ "module": "./src/index.js",
20
+ "type": "module",
21
+ "exports": {
22
+ ".": {
23
+ "development": "./src/index.dev.js",
24
+ "default": "./src/index.js"
25
+ },
26
+ "./package.json": "./package.json",
27
+ "./src/StoryDecorator.js": {
28
+ "development": "./src/StoryDecorator.dev.js",
29
+ "default": "./src/StoryDecorator.js"
30
+ },
31
+ "./src/index.js": {
32
+ "development": "./src/index.dev.js",
33
+ "default": "./src/index.js"
34
+ },
35
+ "./src/locales.js": {
36
+ "development": "./src/locales.dev.js",
37
+ "default": "./src/locales.js"
38
+ },
39
+ "./src/types.js": {
40
+ "development": "./src/types.dev.js",
41
+ "default": "./src/types.js"
42
+ },
43
+ "./decorator": "./decorator.js",
44
+ "./decorator.js": {
45
+ "development": "./decorator.dev.js",
46
+ "default": "./decorator.js"
47
+ },
48
+ "./sp-story-decorator": "./sp-story-decorator.js",
49
+ "./sp-story-decorator.js": {
50
+ "development": "./sp-story-decorator.dev.js",
51
+ "default": "./sp-story-decorator.js"
52
+ }
53
+ },
54
+ "scripts": {
55
+ "test": "echo \"Error: run tests from mono-repo root.\" && exit 1"
56
+ },
57
+ "files": [
58
+ "**/*.d.ts",
59
+ "**/*.js",
60
+ "**/*.js.map",
61
+ "custom-elements.json",
62
+ "!stories/",
63
+ "!test/"
64
+ ],
65
+ "keywords": [
66
+ "spectrum css",
67
+ "web components",
68
+ "lit-element",
69
+ "lit-html"
70
+ ],
71
+ "dependencies": {
72
+ "@spectrum-web-components/base": "0.0.0-20241209155954",
73
+ "@spectrum-web-components/field-label": "0.0.0-20241209155954",
74
+ "@spectrum-web-components/menu": "0.0.0-20241209155954",
75
+ "@spectrum-web-components/overlay": "0.0.0-20241209155954",
76
+ "@spectrum-web-components/picker": "0.0.0-20241209155954",
77
+ "@spectrum-web-components/reactive-controllers": "0.0.0-20241209155954",
78
+ "@spectrum-web-components/switch": "0.0.0-20241209155954",
79
+ "@spectrum-web-components/theme": "0.0.0-20241209155954"
80
+ },
81
+ "types": "./src/index.d.ts",
82
+ "customElements": "custom-elements.json",
83
+ "sideEffects": [
84
+ "./sp-*.js",
85
+ "./**/*.dev.js",
86
+ "./sp-*.ts"
87
+ ]
88
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ import { StoryDecorator } from "./src/StoryDecorator.dev.js";
3
+ customElements.define("sp-story-decorator", StoryDecorator);
4
+ //# sourceMappingURL=sp-story-decorator.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["sp-story-decorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { StoryDecorator } from './src/StoryDecorator.dev.js'\n\ncustomElements.define('sp-story-decorator', StoryDecorator);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sp-story-decorator': StoryDecorator;\n }\n}\n"],
5
+ "mappings": ";AAYA,SAAS,sBAAsB;AAE/B,eAAe,OAAO,sBAAsB,cAAc;",
6
+ "names": []
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";import{StoryDecorator as o}from"./src/StoryDecorator.js";customElements.define("sp-story-decorator",o);
2
+ //# sourceMappingURL=sp-story-decorator.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["sp-story-decorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { StoryDecorator } from './src/StoryDecorator.js';\n\ncustomElements.define('sp-story-decorator', StoryDecorator);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sp-story-decorator': StoryDecorator;\n }\n}\n"],
5
+ "mappings": "aAYA,OAAS,kBAAAA,MAAsB,0BAE/B,eAAe,OAAO,qBAAsBA,CAAc",
6
+ "names": ["StoryDecorator"]
7
+ }
@@ -0,0 +1,403 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __decorateClass = (decorators, target, key, kind) => {
5
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
6
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
7
+ if (decorator = decorators[i])
8
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
9
+ if (kind && result) __defProp(target, key, result);
10
+ return result;
11
+ };
12
+ import {
13
+ css,
14
+ html,
15
+ nothing,
16
+ SpectrumElement
17
+ } from "@spectrum-web-components/base";
18
+ import {
19
+ property,
20
+ queryAsync
21
+ } from "@spectrum-web-components/base/src/decorators.js";
22
+ import { DARK_MODE } from "@spectrum-web-components/reactive-controllers/src/MatchMedia.js";
23
+ import "@spectrum-web-components/theme/sp-theme.js";
24
+ import "@spectrum-web-components/theme/src/themes.js";
25
+ import "@spectrum-web-components/theme/src/spectrum-two/themes.js";
26
+ import "@spectrum-web-components/theme/src/express/themes.js";
27
+ import "@spectrum-web-components/field-label/sp-field-label.js";
28
+ import "@spectrum-web-components/picker/sp-picker.js";
29
+ import "@spectrum-web-components/menu/sp-menu.js";
30
+ import "@spectrum-web-components/menu/sp-menu-item.js";
31
+ import "@spectrum-web-components/switch/sp-switch.js";
32
+ import {
33
+ Theme
34
+ } from "@spectrum-web-components/theme";
35
+ import "./types.dev.js";
36
+ import { Locales } from "./locales.dev.js";
37
+ const queryString = window.location.search;
38
+ const urlParams = new URLSearchParams(queryString);
39
+ export let dir = urlParams.get("sp_dir") || "ltr";
40
+ export let theme = urlParams.get("sp_theme") || "spectrum";
41
+ export let system = urlParams.get("sp_system") || "spectrum";
42
+ export let color = urlParams.get("sp_color") || (matchMedia(DARK_MODE).matches ? "dark" : "light");
43
+ export let scale = urlParams.get("sp_scale") || "medium";
44
+ export let reduceMotion = urlParams.get("sp_reduceMotion") === "true";
45
+ export let screenshot = urlParams.get("sp_screenshot") === "true";
46
+ export let locale = urlParams.get("sp_locale") || "en-US";
47
+ window.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {
48
+ defaultSystemVariant: system,
49
+ defaultColor: color,
50
+ defaultScale: scale,
51
+ defaultDirection: dir,
52
+ defaultReduceMotion: reduceMotion,
53
+ defaultLocale: locale
54
+ };
55
+ const reduceMotionProperties = css`
56
+ --spectrum-global-animation-duration-100: 0ms;
57
+ --spectrum-global-animation-duration-200: 0ms;
58
+ --spectrum-global-animation-duration-300: 0ms;
59
+ --spectrum-global-animation-duration-400: 0ms;
60
+ --spectrum-global-animation-duration-500: 0ms;
61
+ --spectrum-global-animation-duration-600: 0ms;
62
+ --spectrum-global-animation-duration-700: 0ms;
63
+ --spectrum-global-animation-duration-800: 0ms;
64
+ --spectrum-global-animation-duration-900: 0ms;
65
+ --spectrum-global-animation-duration-1000: 0ms;
66
+ --spectrum-global-animation-duration-2000: 0ms;
67
+ --spectrum-global-animation-duration-4000: 0ms;
68
+ --spectrum-animation-duration-0: 0ms;
69
+ --spectrum-animation-duration-100: 0ms;
70
+ --spectrum-animation-duration-200: 0ms;
71
+ --spectrum-animation-duration-300: 0ms;
72
+ --spectrum-animation-duration-400: 0ms;
73
+ --spectrum-animation-duration-500: 0ms;
74
+ --spectrum-animation-duration-600: 0ms;
75
+ --spectrum-animation-duration-700: 0ms;
76
+ --spectrum-animation-duration-800: 0ms;
77
+ --spectrum-animation-duration-900: 0ms;
78
+ --spectrum-animation-duration-1000: 0ms;
79
+ --spectrum-animation-duration-2000: 0ms;
80
+ --spectrum-animation-duration-4000: 0ms;
81
+ --spectrum-animation-duration-6000: 0ms;
82
+ --pending-delay: 0s;
83
+ --spectrum-coachmark-animation-indicator-ring-duration: 0ms;
84
+ --swc-test-duration: 1ms;
85
+ `;
86
+ export class StoryDecorator extends SpectrumElement {
87
+ constructor() {
88
+ super(...arguments);
89
+ this.system = window.__swc_hack_knobs__.defaultSystemVariant;
90
+ this.color = window.__swc_hack_knobs__.defaultColor;
91
+ this.scale = window.__swc_hack_knobs__.defaultScale;
92
+ this.direction = window.__swc_hack_knobs__.defaultDirection;
93
+ this.reduceMotion = window.__swc_hack_knobs__.defaultReduceMotion;
94
+ this.lang = window.__swc_hack_knobs__.defaultLocale;
95
+ this.screenshot = screenshot;
96
+ this.ready = false;
97
+ }
98
+ static get styles() {
99
+ return [
100
+ css`
101
+ :host(:focus) {
102
+ outline: none;
103
+ }
104
+ sp-theme {
105
+ overflow-x: hidden;
106
+ display: block;
107
+ box-sizing: border-box;
108
+ width: 100%;
109
+ min-height: 100vh;
110
+ padding: var(--decorator-padding-100)
111
+ var(--decorator-padding-100)
112
+ calc(
113
+ 2 * var(--spectrum-focus-indicator-thickness) +
114
+ var(--spectrum-component-height-100)
115
+ );
116
+ box-sizing: border-box;
117
+ background-color: var(--spectrum-background-base-color);
118
+ color: var(--spectrum-body-color);
119
+
120
+ --decorator-padding-100: calc(
121
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-100)
122
+ );
123
+ --decorator-padding-200: calc(
124
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-200)
125
+ );
126
+ --decorator-padding-400: calc(
127
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-400)
128
+ );
129
+ }
130
+ :host([screenshot]) sp-theme {
131
+ padding: var(--decorator-padding-100);
132
+ }
133
+ :host([reduce-motion]) sp-theme {
134
+ ${reduceMotionProperties}
135
+ }
136
+ .manage-theme {
137
+ position: fixed;
138
+ bottom: 0;
139
+ left: var(--decorator-padding-200);
140
+ right: var(--decorator-padding-200);
141
+ display: flex;
142
+ align-items: flex-start;
143
+ justify-content: flex-end;
144
+ box-sizing: border-box;
145
+ padding-bottom: calc(
146
+ 2 * var(--spectrum-alias-focus-ring-size)
147
+ );
148
+ }
149
+ sp-field-label {
150
+ padding-inline-end: var(
151
+ --spectrum-fieldlabel-side-padding-x,
152
+ var(--decorator-padding-100)
153
+ );
154
+ margin-inline-start: var(--decorator-padding-400);
155
+ }
156
+ sp-switch {
157
+ margin-inline-start: var(--decorator-padding-400);
158
+ }
159
+ `
160
+ ];
161
+ }
162
+ async startManagingContentDirection(el) {
163
+ (await this.themeRoot).startManagingContentDirection(el);
164
+ }
165
+ async stopManagingContentDirection(el) {
166
+ (await this.themeRoot).stopManagingContentDirection(el);
167
+ }
168
+ updateTheme({ target }) {
169
+ const { id } = target;
170
+ const { value } = target;
171
+ const { checked } = target;
172
+ switch (id) {
173
+ case "system":
174
+ this.system = system = window.__swc_hack_knobs__.defaultSystemVariant = value;
175
+ break;
176
+ case "color":
177
+ this.color = color = window.__swc_hack_knobs__.defaultColor = value;
178
+ break;
179
+ case "scale":
180
+ this.scale = scale = window.__swc_hack_knobs__.defaultScale = value;
181
+ break;
182
+ case "dir":
183
+ this.direction = dir = window.__swc_hack_knobs__.defaultDirection = value;
184
+ document.documentElement.dir = dir;
185
+ break;
186
+ case "reduceMotion":
187
+ this.reduceMotion = reduceMotion = window.__swc_hack_knobs__.defaultReduceMotion = checked;
188
+ break;
189
+ case "locale":
190
+ this.lang = window.__swc_hack_knobs__.defaultLocale = value;
191
+ break;
192
+ }
193
+ }
194
+ get backgroundStyle() {
195
+ if (system === "spectrum-two") {
196
+ return `background-color: var(--spectrum-background-base-color);`;
197
+ }
198
+ return `background-color: var(--spectrum-gray-100);`;
199
+ }
200
+ handleKeydown(event) {
201
+ const path = event.composedPath();
202
+ const hasInput = path.some(
203
+ (node) => node instanceof HTMLInputElement || node instanceof HTMLTextAreaElement || !!node.isContentEditable
204
+ );
205
+ if (hasInput) {
206
+ event.stopPropagation();
207
+ }
208
+ }
209
+ render() {
210
+ return html`
211
+ <sp-theme
212
+ system=${this.system}
213
+ color=${this.color}
214
+ scale=${this.scale}
215
+ dir=${this.direction}
216
+ style=${this.backgroundStyle}
217
+ part="container"
218
+ @keydown=${this.handleKeydown}
219
+ >
220
+ <slot @slotchange=${this.checkReady}></slot>
221
+ ${this.screenshot ? nothing : this.manageTheme}
222
+ </sp-theme>
223
+ `;
224
+ }
225
+ async checkReady({
226
+ target
227
+ }) {
228
+ this.ready = false;
229
+ const assignedElements = target.assignedElements({
230
+ flatten: true
231
+ });
232
+ const descendents = assignedElements;
233
+ assignedElements.forEach((descendent) => {
234
+ const gathered = [
235
+ ...descendent.querySelectorAll("*") || []
236
+ ];
237
+ descendents.push(...gathered);
238
+ });
239
+ const litElementDescendents = descendents.filter(
240
+ (el) => el.tagName.search("-") !== -1 && typeof el.updateComplete !== "undefined"
241
+ );
242
+ const updates = litElementDescendents.map((el) => el.updateComplete);
243
+ await Promise.all(updates);
244
+ new Promise((res) => {
245
+ setTimeout(res);
246
+ }).then(async () => {
247
+ await (document.fonts ? document.fonts.ready : Promise.resolve());
248
+ setTimeout(() => {
249
+ this.ready = true;
250
+ });
251
+ });
252
+ }
253
+ get manageTheme() {
254
+ return html`
255
+ <div class="manage-theme" part="controls">
256
+ ${this.systemControl} ${this.colorControl} ${this.scaleControl}
257
+ ${this.localeControl} ${this.dirControl}
258
+ ${this.reduceMotionControl}
259
+ </div>
260
+ `;
261
+ }
262
+ get systemControl() {
263
+ return html`
264
+ <sp-field-label side-aligned="start" for="system">
265
+ System
266
+ </sp-field-label>
267
+ <sp-picker
268
+ id="system"
269
+ placement="top"
270
+ quiet
271
+ .value=${this.system}
272
+ @change=${this.updateTheme}
273
+ >
274
+ <sp-menu-item value="spectrum">Spectrum</sp-menu-item>
275
+ <sp-menu-item value="express">Express</sp-menu-item>
276
+ <sp-menu-item value="spectrum-two">Spectrum 2</sp-menu-item>
277
+ </sp-picker>
278
+ `;
279
+ }
280
+ get colorControl() {
281
+ return html`
282
+ <sp-field-label side-aligned="start" for="color">
283
+ Theme
284
+ </sp-field-label>
285
+ <sp-picker
286
+ id="color"
287
+ placement="top"
288
+ quiet
289
+ .value=${this.color}
290
+ @change=${this.updateTheme}
291
+ >
292
+ <sp-menu-item value="light">Light</sp-menu-item>
293
+ <sp-menu-item value="dark">Dark</sp-menu-item>
294
+ </sp-picker>
295
+ `;
296
+ }
297
+ get scaleControl() {
298
+ return html`
299
+ <sp-field-label side-aligned="start" for="scale">
300
+ Scale
301
+ </sp-field-label>
302
+ <sp-picker
303
+ id="scale"
304
+ label="Scale"
305
+ placement="top"
306
+ quiet
307
+ .value=${this.scale}
308
+ @change=${this.updateTheme}
309
+ >
310
+ <sp-menu-item value="medium">Medium</sp-menu-item>
311
+ <sp-menu-item value="large">Large</sp-menu-item>
312
+ </sp-picker>
313
+ `;
314
+ }
315
+ get localeControl() {
316
+ const renderLocaleOption = (locale2) => html`
317
+ <sp-menu-item value=${locale2}>${Locales[locale2]}</sp-menu-item>
318
+ `;
319
+ return html`
320
+ <sp-field-label side-aligned="start" for="locale">
321
+ Locale
322
+ </sp-field-label>
323
+ <sp-picker
324
+ id="locale"
325
+ label="Locale"
326
+ placement="top"
327
+ quiet
328
+ .value=${this.lang}
329
+ @change=${this.updateTheme}
330
+ >
331
+ ${Object.keys(Locales).map(renderLocaleOption)}
332
+ </sp-picker>
333
+ `;
334
+ }
335
+ get dirControl() {
336
+ return html`
337
+ <sp-field-label side-aligned="start" for="dir">
338
+ Direction
339
+ </sp-field-label>
340
+ <sp-picker
341
+ id="dir"
342
+ label="Direction"
343
+ placement="top"
344
+ quiet
345
+ .value=${this.direction}
346
+ @change=${this.updateTheme}
347
+ >
348
+ <sp-menu-item value="ltr">LTR</sp-menu-item>
349
+ <sp-menu-item value="rtl">RTL</sp-menu-item>
350
+ </sp-picker>
351
+ `;
352
+ }
353
+ get reduceMotionControl() {
354
+ return html`
355
+ <sp-switch
356
+ id="reduceMotion"
357
+ ?checked=${this.reduceMotion}
358
+ @change=${this.updateTheme}
359
+ >
360
+ Reduce Motion
361
+ </sp-switch>
362
+ `;
363
+ }
364
+ willUpdate(changes) {
365
+ if (changes.has("screenshot") && this.screenshot) {
366
+ Theme.registerThemeFragment(
367
+ "app",
368
+ "app",
369
+ css`
370
+ :host {
371
+ --swc-test-caret-color: transparent;
372
+ --swc-test-forced-color-adjust: none;
373
+ }
374
+ `
375
+ );
376
+ }
377
+ }
378
+ }
379
+ __decorateClass([
380
+ property({ type: String })
381
+ ], StoryDecorator.prototype, "system", 2);
382
+ __decorateClass([
383
+ property({ type: String })
384
+ ], StoryDecorator.prototype, "color", 2);
385
+ __decorateClass([
386
+ property({ type: String })
387
+ ], StoryDecorator.prototype, "scale", 2);
388
+ __decorateClass([
389
+ property({ type: String, reflect: true, attribute: "dir" })
390
+ ], StoryDecorator.prototype, "direction", 2);
391
+ __decorateClass([
392
+ property({ type: Boolean, attribute: "reduce-motion", reflect: true })
393
+ ], StoryDecorator.prototype, "reduceMotion", 2);
394
+ __decorateClass([
395
+ property({ type: String })
396
+ ], StoryDecorator.prototype, "lang", 2);
397
+ __decorateClass([
398
+ property({ type: Boolean, reflect: true })
399
+ ], StoryDecorator.prototype, "screenshot", 2);
400
+ __decorateClass([
401
+ queryAsync("sp-theme")
402
+ ], StoryDecorator.prototype, "themeRoot", 2);
403
+ //# sourceMappingURL=StoryDecorator.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["StoryDecorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n css,\n html,\n nothing,\n PropertyValues,\n SpectrumElement,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n property,\n queryAsync,\n} from '@spectrum-web-components/base/src/decorators.js';\nimport { DARK_MODE } from '@spectrum-web-components/reactive-controllers/src/MatchMedia.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/themes.js';\nimport '@spectrum-web-components/theme/src/spectrum-two/themes.js';\nimport '@spectrum-web-components/theme/src/express/themes.js';\nimport '@spectrum-web-components/field-label/sp-field-label.js';\nimport '@spectrum-web-components/picker/sp-picker.js';\nimport '@spectrum-web-components/menu/sp-menu.js';\nimport '@spectrum-web-components/menu/sp-menu-item.js';\nimport '@spectrum-web-components/switch/sp-switch.js';\nimport { Picker } from '@spectrum-web-components/picker';\nimport { Switch } from '@spectrum-web-components/switch';\nimport {\n Color,\n Scale,\n SystemVariant,\n Theme,\n} from '@spectrum-web-components/theme';\nimport './types.dev.js'\nimport { type Locale, Locales } from './locales.dev.js'\n\nconst queryString = window.location.search;\nconst urlParams = new URLSearchParams(queryString);\n\nexport let dir: 'ltr' | 'rtl' =\n (urlParams.get('sp_dir') as 'ltr' | 'rtl') || 'ltr';\nexport let theme: SystemVariant =\n (urlParams.get('sp_theme') as SystemVariant) || 'spectrum';\nexport let system: SystemVariant =\n (urlParams.get('sp_system') as SystemVariant) || 'spectrum';\nexport let color: Color =\n (urlParams.get('sp_color') as Color) ||\n (matchMedia(DARK_MODE).matches ? 'dark' : 'light');\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\nexport let screenshot = urlParams.get('sp_screenshot') === 'true';\nexport let locale = urlParams.get('sp_locale') || 'en-US';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultSystemVariant: system,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\n defaultLocale: locale,\n};\n\nconst reduceMotionProperties = css`\n --spectrum-global-animation-duration-100: 0ms;\n --spectrum-global-animation-duration-200: 0ms;\n --spectrum-global-animation-duration-300: 0ms;\n --spectrum-global-animation-duration-400: 0ms;\n --spectrum-global-animation-duration-500: 0ms;\n --spectrum-global-animation-duration-600: 0ms;\n --spectrum-global-animation-duration-700: 0ms;\n --spectrum-global-animation-duration-800: 0ms;\n --spectrum-global-animation-duration-900: 0ms;\n --spectrum-global-animation-duration-1000: 0ms;\n --spectrum-global-animation-duration-2000: 0ms;\n --spectrum-global-animation-duration-4000: 0ms;\n --spectrum-animation-duration-0: 0ms;\n --spectrum-animation-duration-100: 0ms;\n --spectrum-animation-duration-200: 0ms;\n --spectrum-animation-duration-300: 0ms;\n --spectrum-animation-duration-400: 0ms;\n --spectrum-animation-duration-500: 0ms;\n --spectrum-animation-duration-600: 0ms;\n --spectrum-animation-duration-700: 0ms;\n --spectrum-animation-duration-800: 0ms;\n --spectrum-animation-duration-900: 0ms;\n --spectrum-animation-duration-1000: 0ms;\n --spectrum-animation-duration-2000: 0ms;\n --spectrum-animation-duration-4000: 0ms;\n --spectrum-animation-duration-6000: 0ms;\n --pending-delay: 0s;\n --spectrum-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nexport class StoryDecorator extends SpectrumElement {\n static override get styles() {\n return [\n css`\n :host(:focus) {\n outline: none;\n }\n sp-theme {\n overflow-x: hidden;\n display: block;\n box-sizing: border-box;\n width: 100%;\n min-height: 100vh;\n padding: var(--decorator-padding-100)\n var(--decorator-padding-100)\n calc(\n 2 * var(--spectrum-focus-indicator-thickness) +\n var(--spectrum-component-height-100)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-background-base-color);\n color: var(--spectrum-body-color);\n\n --decorator-padding-100: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-100)\n );\n --decorator-padding-200: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-200)\n );\n --decorator-padding-400: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-400)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--decorator-padding-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--decorator-padding-200);\n right: var(--decorator-padding-200);\n display: flex;\n align-items: flex-start;\n justify-content: flex-end;\n box-sizing: border-box;\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n sp-field-label {\n padding-inline-end: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--decorator-padding-100)\n );\n margin-inline-start: var(--decorator-padding-400);\n }\n sp-switch {\n margin-inline-start: var(--decorator-padding-400);\n }\n `,\n ];\n }\n\n @property({ type: String })\n public system: SystemVariant =\n window.__swc_hack_knobs__.defaultSystemVariant;\n\n @property({ type: String })\n public color: Color = window.__swc_hack_knobs__.defaultColor;\n\n @property({ type: String })\n public scale: Scale = window.__swc_hack_knobs__.defaultScale;\n\n @property({ type: String, reflect: true, attribute: 'dir' })\n public direction: 'ltr' | 'rtl' =\n window.__swc_hack_knobs__.defaultDirection;\n\n @property({ type: Boolean, attribute: 'reduce-motion', reflect: true })\n public reduceMotion = window.__swc_hack_knobs__.defaultReduceMotion;\n\n @property({ type: String })\n public override lang: Locale = window.__swc_hack_knobs__.defaultLocale;\n\n @property({ type: Boolean, reflect: true })\n public screenshot = screenshot;\n\n @queryAsync('sp-theme')\n private themeRoot!: Theme;\n\n public ready = false;\n\n public async startManagingContentDirection(el: HTMLElement): Promise<void> {\n (await this.themeRoot).startManagingContentDirection(el);\n }\n\n public async stopManagingContentDirection(el: HTMLElement): Promise<void> {\n (await this.themeRoot).stopManagingContentDirection(el);\n }\n\n private updateTheme({ target }: Event & { target: Picker | Switch }): void {\n const { id } = target;\n const { value } = target as Picker;\n const { checked } = target as Switch;\n switch (id) {\n case 'system':\n this.system =\n system =\n window.__swc_hack_knobs__.defaultSystemVariant =\n value as SystemVariant;\n break;\n case 'color':\n this.color =\n color =\n window.__swc_hack_knobs__.defaultColor =\n value as Color;\n break;\n case 'scale':\n this.scale =\n scale =\n window.__swc_hack_knobs__.defaultScale =\n value as Scale;\n break;\n case 'dir':\n this.direction =\n dir =\n window.__swc_hack_knobs__.defaultDirection =\n value as 'ltr' | 'rtl';\n document.documentElement.dir = dir;\n break;\n case 'reduceMotion':\n this.reduceMotion =\n reduceMotion =\n window.__swc_hack_knobs__.defaultReduceMotion =\n checked as boolean;\n break;\n case 'locale':\n this.lang = window.__swc_hack_knobs__.defaultLocale =\n value as Locale;\n break;\n }\n }\n\n public get backgroundStyle() {\n if (system === 'spectrum-two') {\n return `background-color: var(--spectrum-background-base-color);`;\n }\n return `background-color: var(--spectrum-gray-100);`;\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some(\n (node) =>\n node instanceof HTMLInputElement ||\n node instanceof HTMLTextAreaElement ||\n !!(node as HTMLElement).isContentEditable\n );\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n system=${this.system}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\n style=${this.backgroundStyle}\n part=\"container\"\n @keydown=${this.handleKeydown}\n >\n <slot @slotchange=${this.checkReady}></slot>\n ${this.screenshot ? nothing : this.manageTheme}\n </sp-theme>\n `;\n }\n\n protected async checkReady({\n target,\n }: Event & { target: HTMLSlotElement }): Promise<void> {\n this.ready = false;\n const assignedElements = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\n const descendents = assignedElements;\n assignedElements.forEach((descendent) => {\n const gathered = [\n ...(descendent.querySelectorAll('*') || []),\n ] as SpectrumElement[];\n descendents.push(...gathered);\n });\n const litElementDescendents = descendents.filter(\n (el) =>\n el.tagName.search('-') !== -1 &&\n typeof el.updateComplete !== 'undefined'\n );\n const updates = litElementDescendents.map((el) => el.updateComplete);\n await Promise.all(updates);\n new Promise((res) => {\n setTimeout(res);\n }).then(async () => {\n await (document.fonts ? document.fonts.ready : Promise.resolve());\n setTimeout(() => {\n this.ready = true;\n });\n });\n }\n\n private get manageTheme(): TemplateResult {\n return html`\n <div class=\"manage-theme\" part=\"controls\">\n ${this.systemControl} ${this.colorControl} ${this.scaleControl}\n ${this.localeControl} ${this.dirControl}\n ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get systemControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"system\">\n System\n </sp-field-label>\n <sp-picker\n id=\"system\"\n placement=\"top\"\n quiet\n .value=${this.system}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Spectrum</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n <sp-menu-item value=\"spectrum-two\">Spectrum 2</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"color\">\n Theme\n </sp-field-label>\n <sp-picker\n id=\"color\"\n placement=\"top\"\n quiet\n .value=${this.color}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"scale\">\n Scale\n </sp-field-label>\n <sp-picker\n id=\"scale\"\n label=\"Scale\"\n placement=\"top\"\n quiet\n .value=${this.scale}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"medium\">Medium</sp-menu-item>\n <sp-menu-item value=\"large\">Large</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get localeControl(): TemplateResult {\n const renderLocaleOption = (locale: Locale): TemplateResult => html`\n <sp-menu-item value=${locale}>${Locales[locale]}</sp-menu-item>\n `;\n\n return html`\n <sp-field-label side-aligned=\"start\" for=\"locale\">\n Locale\n </sp-field-label>\n <sp-picker\n id=\"locale\"\n label=\"Locale\"\n placement=\"top\"\n quiet\n .value=${this.lang}\n @change=${this.updateTheme}\n >\n ${(Object.keys(Locales) as Locale[]).map(renderLocaleOption)}\n </sp-picker>\n `;\n }\n\n private get dirControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"dir\">\n Direction\n </sp-field-label>\n <sp-picker\n id=\"dir\"\n label=\"Direction\"\n placement=\"top\"\n quiet\n .value=${this.direction}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"ltr\">LTR</sp-menu-item>\n <sp-menu-item value=\"rtl\">RTL</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get reduceMotionControl(): TemplateResult {\n return html`\n <sp-switch\n id=\"reduceMotion\"\n ?checked=${this.reduceMotion}\n @change=${this.updateTheme}\n >\n Reduce Motion\n </sp-switch>\n `;\n }\n\n protected override willUpdate(changes: PropertyValues<this>): void {\n if (changes.has('screenshot') && this.screenshot) {\n Theme.registerThemeFragment(\n 'app',\n 'app',\n css`\n :host {\n --swc-test-caret-color: transparent;\n --swc-test-forced-color-adjust: none;\n }\n `\n );\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["locale"]
7
+ }
@@ -0,0 +1,198 @@
1
+ "use strict";var g=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var i=(p,l,e,a)=>{for(var t=a>1?void 0:a?_(l,e):l,s=p.length-1,m;s>=0;s--)(m=p[s])&&(t=(a?m(l,e,t):m(t))||t);return a&&t&&g(l,e,t),t};import{css as d,html as o,nothing as b,SpectrumElement as f}from"@spectrum-web-components/base";import{property as c,queryAsync as w}from"@spectrum-web-components/base/src/decorators.js";import{DARK_MODE as k}from"@spectrum-web-components/reactive-controllers/src/MatchMedia.js";import"@spectrum-web-components/theme/sp-theme.js";import"@spectrum-web-components/theme/src/themes.js";import"@spectrum-web-components/theme/src/spectrum-two/themes.js";import"@spectrum-web-components/theme/src/express/themes.js";import"@spectrum-web-components/field-label/sp-field-label.js";import"@spectrum-web-components/picker/sp-picker.js";import"@spectrum-web-components/menu/sp-menu.js";import"@spectrum-web-components/menu/sp-menu-item.js";import"@spectrum-web-components/switch/sp-switch.js";import{Theme as v}from"@spectrum-web-components/theme";import"./types.js";import{Locales as u}from"./locales.js";const y=window.location.search,n=new URLSearchParams(y);export let dir=n.get("sp_dir")||"ltr",theme=n.get("sp_theme")||"spectrum",system=n.get("sp_system")||"spectrum",color=n.get("sp_color")||(matchMedia(k).matches?"dark":"light"),scale=n.get("sp_scale")||"medium",reduceMotion=n.get("sp_reduceMotion")==="true",screenshot=n.get("sp_screenshot")==="true",locale=n.get("sp_locale")||"en-US";window.__swc_hack_knobs__=window.__swc_hack_knobs__||{defaultSystemVariant:system,defaultColor:color,defaultScale:scale,defaultDirection:dir,defaultReduceMotion:reduceMotion,defaultLocale:locale};const S=d`
2
+ --spectrum-global-animation-duration-100: 0ms;
3
+ --spectrum-global-animation-duration-200: 0ms;
4
+ --spectrum-global-animation-duration-300: 0ms;
5
+ --spectrum-global-animation-duration-400: 0ms;
6
+ --spectrum-global-animation-duration-500: 0ms;
7
+ --spectrum-global-animation-duration-600: 0ms;
8
+ --spectrum-global-animation-duration-700: 0ms;
9
+ --spectrum-global-animation-duration-800: 0ms;
10
+ --spectrum-global-animation-duration-900: 0ms;
11
+ --spectrum-global-animation-duration-1000: 0ms;
12
+ --spectrum-global-animation-duration-2000: 0ms;
13
+ --spectrum-global-animation-duration-4000: 0ms;
14
+ --spectrum-animation-duration-0: 0ms;
15
+ --spectrum-animation-duration-100: 0ms;
16
+ --spectrum-animation-duration-200: 0ms;
17
+ --spectrum-animation-duration-300: 0ms;
18
+ --spectrum-animation-duration-400: 0ms;
19
+ --spectrum-animation-duration-500: 0ms;
20
+ --spectrum-animation-duration-600: 0ms;
21
+ --spectrum-animation-duration-700: 0ms;
22
+ --spectrum-animation-duration-800: 0ms;
23
+ --spectrum-animation-duration-900: 0ms;
24
+ --spectrum-animation-duration-1000: 0ms;
25
+ --spectrum-animation-duration-2000: 0ms;
26
+ --spectrum-animation-duration-4000: 0ms;
27
+ --spectrum-animation-duration-6000: 0ms;
28
+ --pending-delay: 0s;
29
+ --spectrum-coachmark-animation-indicator-ring-duration: 0ms;
30
+ --swc-test-duration: 1ms;
31
+ `;export class StoryDecorator extends f{constructor(){super(...arguments);this.system=window.__swc_hack_knobs__.defaultSystemVariant;this.color=window.__swc_hack_knobs__.defaultColor;this.scale=window.__swc_hack_knobs__.defaultScale;this.direction=window.__swc_hack_knobs__.defaultDirection;this.reduceMotion=window.__swc_hack_knobs__.defaultReduceMotion;this.lang=window.__swc_hack_knobs__.defaultLocale;this.screenshot=screenshot;this.ready=!1}static get styles(){return[d`
32
+ :host(:focus) {
33
+ outline: none;
34
+ }
35
+ sp-theme {
36
+ overflow-x: hidden;
37
+ display: block;
38
+ box-sizing: border-box;
39
+ width: 100%;
40
+ min-height: 100vh;
41
+ padding: var(--decorator-padding-100)
42
+ var(--decorator-padding-100)
43
+ calc(
44
+ 2 * var(--spectrum-focus-indicator-thickness) +
45
+ var(--spectrum-component-height-100)
46
+ );
47
+ box-sizing: border-box;
48
+ background-color: var(--spectrum-background-base-color);
49
+ color: var(--spectrum-body-color);
50
+
51
+ --decorator-padding-100: calc(
52
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-100)
53
+ );
54
+ --decorator-padding-200: calc(
55
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-200)
56
+ );
57
+ --decorator-padding-400: calc(
58
+ var(--swc-scale-factor, 1) * var(--spectrum-spacing-400)
59
+ );
60
+ }
61
+ :host([screenshot]) sp-theme {
62
+ padding: var(--decorator-padding-100);
63
+ }
64
+ :host([reduce-motion]) sp-theme {
65
+ ${S}
66
+ }
67
+ .manage-theme {
68
+ position: fixed;
69
+ bottom: 0;
70
+ left: var(--decorator-padding-200);
71
+ right: var(--decorator-padding-200);
72
+ display: flex;
73
+ align-items: flex-start;
74
+ justify-content: flex-end;
75
+ box-sizing: border-box;
76
+ padding-bottom: calc(
77
+ 2 * var(--spectrum-alias-focus-ring-size)
78
+ );
79
+ }
80
+ sp-field-label {
81
+ padding-inline-end: var(
82
+ --spectrum-fieldlabel-side-padding-x,
83
+ var(--decorator-padding-100)
84
+ );
85
+ margin-inline-start: var(--decorator-padding-400);
86
+ }
87
+ sp-switch {
88
+ margin-inline-start: var(--decorator-padding-400);
89
+ }
90
+ `]}async startManagingContentDirection(e){(await this.themeRoot).startManagingContentDirection(e)}async stopManagingContentDirection(e){(await this.themeRoot).stopManagingContentDirection(e)}updateTheme({target:e}){const{id:a}=e,{value:t}=e,{checked:s}=e;switch(a){case"system":this.system=system=window.__swc_hack_knobs__.defaultSystemVariant=t;break;case"color":this.color=color=window.__swc_hack_knobs__.defaultColor=t;break;case"scale":this.scale=scale=window.__swc_hack_knobs__.defaultScale=t;break;case"dir":this.direction=dir=window.__swc_hack_knobs__.defaultDirection=t,document.documentElement.dir=dir;break;case"reduceMotion":this.reduceMotion=reduceMotion=window.__swc_hack_knobs__.defaultReduceMotion=s;break;case"locale":this.lang=window.__swc_hack_knobs__.defaultLocale=t;break}}get backgroundStyle(){return system==="spectrum-two"?"background-color: var(--spectrum-background-base-color);":"background-color: var(--spectrum-gray-100);"}handleKeydown(e){e.composedPath().some(s=>s instanceof HTMLInputElement||s instanceof HTMLTextAreaElement||!!s.isContentEditable)&&e.stopPropagation()}render(){return o`
91
+ <sp-theme
92
+ system=${this.system}
93
+ color=${this.color}
94
+ scale=${this.scale}
95
+ dir=${this.direction}
96
+ style=${this.backgroundStyle}
97
+ part="container"
98
+ @keydown=${this.handleKeydown}
99
+ >
100
+ <slot @slotchange=${this.checkReady}></slot>
101
+ ${this.screenshot?b:this.manageTheme}
102
+ </sp-theme>
103
+ `}async checkReady({target:e}){this.ready=!1;const a=e.assignedElements({flatten:!0}),t=a;a.forEach(r=>{const h=[...r.querySelectorAll("*")||[]];t.push(...h)});const m=t.filter(r=>r.tagName.search("-")!==-1&&typeof r.updateComplete!="undefined").map(r=>r.updateComplete);await Promise.all(m),new Promise(r=>{setTimeout(r)}).then(async()=>{await(document.fonts?document.fonts.ready:Promise.resolve()),setTimeout(()=>{this.ready=!0})})}get manageTheme(){return o`
104
+ <div class="manage-theme" part="controls">
105
+ ${this.systemControl} ${this.colorControl} ${this.scaleControl}
106
+ ${this.localeControl} ${this.dirControl}
107
+ ${this.reduceMotionControl}
108
+ </div>
109
+ `}get systemControl(){return o`
110
+ <sp-field-label side-aligned="start" for="system">
111
+ System
112
+ </sp-field-label>
113
+ <sp-picker
114
+ id="system"
115
+ placement="top"
116
+ quiet
117
+ .value=${this.system}
118
+ @change=${this.updateTheme}
119
+ >
120
+ <sp-menu-item value="spectrum">Spectrum</sp-menu-item>
121
+ <sp-menu-item value="express">Express</sp-menu-item>
122
+ <sp-menu-item value="spectrum-two">Spectrum 2</sp-menu-item>
123
+ </sp-picker>
124
+ `}get colorControl(){return o`
125
+ <sp-field-label side-aligned="start" for="color">
126
+ Theme
127
+ </sp-field-label>
128
+ <sp-picker
129
+ id="color"
130
+ placement="top"
131
+ quiet
132
+ .value=${this.color}
133
+ @change=${this.updateTheme}
134
+ >
135
+ <sp-menu-item value="light">Light</sp-menu-item>
136
+ <sp-menu-item value="dark">Dark</sp-menu-item>
137
+ </sp-picker>
138
+ `}get scaleControl(){return o`
139
+ <sp-field-label side-aligned="start" for="scale">
140
+ Scale
141
+ </sp-field-label>
142
+ <sp-picker
143
+ id="scale"
144
+ label="Scale"
145
+ placement="top"
146
+ quiet
147
+ .value=${this.scale}
148
+ @change=${this.updateTheme}
149
+ >
150
+ <sp-menu-item value="medium">Medium</sp-menu-item>
151
+ <sp-menu-item value="large">Large</sp-menu-item>
152
+ </sp-picker>
153
+ `}get localeControl(){const e=a=>o`
154
+ <sp-menu-item value=${a}>${u[a]}</sp-menu-item>
155
+ `;return o`
156
+ <sp-field-label side-aligned="start" for="locale">
157
+ Locale
158
+ </sp-field-label>
159
+ <sp-picker
160
+ id="locale"
161
+ label="Locale"
162
+ placement="top"
163
+ quiet
164
+ .value=${this.lang}
165
+ @change=${this.updateTheme}
166
+ >
167
+ ${Object.keys(u).map(e)}
168
+ </sp-picker>
169
+ `}get dirControl(){return o`
170
+ <sp-field-label side-aligned="start" for="dir">
171
+ Direction
172
+ </sp-field-label>
173
+ <sp-picker
174
+ id="dir"
175
+ label="Direction"
176
+ placement="top"
177
+ quiet
178
+ .value=${this.direction}
179
+ @change=${this.updateTheme}
180
+ >
181
+ <sp-menu-item value="ltr">LTR</sp-menu-item>
182
+ <sp-menu-item value="rtl">RTL</sp-menu-item>
183
+ </sp-picker>
184
+ `}get reduceMotionControl(){return o`
185
+ <sp-switch
186
+ id="reduceMotion"
187
+ ?checked=${this.reduceMotion}
188
+ @change=${this.updateTheme}
189
+ >
190
+ Reduce Motion
191
+ </sp-switch>
192
+ `}willUpdate(e){e.has("screenshot")&&this.screenshot&&v.registerThemeFragment("app","app",d`
193
+ :host {
194
+ --swc-test-caret-color: transparent;
195
+ --swc-test-forced-color-adjust: none;
196
+ }
197
+ `)}}i([c({type:String})],StoryDecorator.prototype,"system",2),i([c({type:String})],StoryDecorator.prototype,"color",2),i([c({type:String})],StoryDecorator.prototype,"scale",2),i([c({type:String,reflect:!0,attribute:"dir"})],StoryDecorator.prototype,"direction",2),i([c({type:Boolean,attribute:"reduce-motion",reflect:!0})],StoryDecorator.prototype,"reduceMotion",2),i([c({type:String})],StoryDecorator.prototype,"lang",2),i([c({type:Boolean,reflect:!0})],StoryDecorator.prototype,"screenshot",2),i([w("sp-theme")],StoryDecorator.prototype,"themeRoot",2);
198
+ //# sourceMappingURL=StoryDecorator.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["StoryDecorator.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n css,\n html,\n nothing,\n PropertyValues,\n SpectrumElement,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n property,\n queryAsync,\n} from '@spectrum-web-components/base/src/decorators.js';\nimport { DARK_MODE } from '@spectrum-web-components/reactive-controllers/src/MatchMedia.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/themes.js';\nimport '@spectrum-web-components/theme/src/spectrum-two/themes.js';\nimport '@spectrum-web-components/theme/src/express/themes.js';\nimport '@spectrum-web-components/field-label/sp-field-label.js';\nimport '@spectrum-web-components/picker/sp-picker.js';\nimport '@spectrum-web-components/menu/sp-menu.js';\nimport '@spectrum-web-components/menu/sp-menu-item.js';\nimport '@spectrum-web-components/switch/sp-switch.js';\nimport { Picker } from '@spectrum-web-components/picker';\nimport { Switch } from '@spectrum-web-components/switch';\nimport {\n Color,\n Scale,\n SystemVariant,\n Theme,\n} from '@spectrum-web-components/theme';\nimport './types.js';\nimport { type Locale, Locales } from './locales.js';\n\nconst queryString = window.location.search;\nconst urlParams = new URLSearchParams(queryString);\n\nexport let dir: 'ltr' | 'rtl' =\n (urlParams.get('sp_dir') as 'ltr' | 'rtl') || 'ltr';\nexport let theme: SystemVariant =\n (urlParams.get('sp_theme') as SystemVariant) || 'spectrum';\nexport let system: SystemVariant =\n (urlParams.get('sp_system') as SystemVariant) || 'spectrum';\nexport let color: Color =\n (urlParams.get('sp_color') as Color) ||\n (matchMedia(DARK_MODE).matches ? 'dark' : 'light');\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\nexport let screenshot = urlParams.get('sp_screenshot') === 'true';\nexport let locale = urlParams.get('sp_locale') || 'en-US';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultSystemVariant: system,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\n defaultLocale: locale,\n};\n\nconst reduceMotionProperties = css`\n --spectrum-global-animation-duration-100: 0ms;\n --spectrum-global-animation-duration-200: 0ms;\n --spectrum-global-animation-duration-300: 0ms;\n --spectrum-global-animation-duration-400: 0ms;\n --spectrum-global-animation-duration-500: 0ms;\n --spectrum-global-animation-duration-600: 0ms;\n --spectrum-global-animation-duration-700: 0ms;\n --spectrum-global-animation-duration-800: 0ms;\n --spectrum-global-animation-duration-900: 0ms;\n --spectrum-global-animation-duration-1000: 0ms;\n --spectrum-global-animation-duration-2000: 0ms;\n --spectrum-global-animation-duration-4000: 0ms;\n --spectrum-animation-duration-0: 0ms;\n --spectrum-animation-duration-100: 0ms;\n --spectrum-animation-duration-200: 0ms;\n --spectrum-animation-duration-300: 0ms;\n --spectrum-animation-duration-400: 0ms;\n --spectrum-animation-duration-500: 0ms;\n --spectrum-animation-duration-600: 0ms;\n --spectrum-animation-duration-700: 0ms;\n --spectrum-animation-duration-800: 0ms;\n --spectrum-animation-duration-900: 0ms;\n --spectrum-animation-duration-1000: 0ms;\n --spectrum-animation-duration-2000: 0ms;\n --spectrum-animation-duration-4000: 0ms;\n --spectrum-animation-duration-6000: 0ms;\n --pending-delay: 0s;\n --spectrum-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nexport class StoryDecorator extends SpectrumElement {\n static override get styles() {\n return [\n css`\n :host(:focus) {\n outline: none;\n }\n sp-theme {\n overflow-x: hidden;\n display: block;\n box-sizing: border-box;\n width: 100%;\n min-height: 100vh;\n padding: var(--decorator-padding-100)\n var(--decorator-padding-100)\n calc(\n 2 * var(--spectrum-focus-indicator-thickness) +\n var(--spectrum-component-height-100)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-background-base-color);\n color: var(--spectrum-body-color);\n\n --decorator-padding-100: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-100)\n );\n --decorator-padding-200: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-200)\n );\n --decorator-padding-400: calc(\n var(--swc-scale-factor, 1) * var(--spectrum-spacing-400)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--decorator-padding-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--decorator-padding-200);\n right: var(--decorator-padding-200);\n display: flex;\n align-items: flex-start;\n justify-content: flex-end;\n box-sizing: border-box;\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n sp-field-label {\n padding-inline-end: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--decorator-padding-100)\n );\n margin-inline-start: var(--decorator-padding-400);\n }\n sp-switch {\n margin-inline-start: var(--decorator-padding-400);\n }\n `,\n ];\n }\n\n @property({ type: String })\n public system: SystemVariant =\n window.__swc_hack_knobs__.defaultSystemVariant;\n\n @property({ type: String })\n public color: Color = window.__swc_hack_knobs__.defaultColor;\n\n @property({ type: String })\n public scale: Scale = window.__swc_hack_knobs__.defaultScale;\n\n @property({ type: String, reflect: true, attribute: 'dir' })\n public direction: 'ltr' | 'rtl' =\n window.__swc_hack_knobs__.defaultDirection;\n\n @property({ type: Boolean, attribute: 'reduce-motion', reflect: true })\n public reduceMotion = window.__swc_hack_knobs__.defaultReduceMotion;\n\n @property({ type: String })\n public override lang: Locale = window.__swc_hack_knobs__.defaultLocale;\n\n @property({ type: Boolean, reflect: true })\n public screenshot = screenshot;\n\n @queryAsync('sp-theme')\n private themeRoot!: Theme;\n\n public ready = false;\n\n public async startManagingContentDirection(el: HTMLElement): Promise<void> {\n (await this.themeRoot).startManagingContentDirection(el);\n }\n\n public async stopManagingContentDirection(el: HTMLElement): Promise<void> {\n (await this.themeRoot).stopManagingContentDirection(el);\n }\n\n private updateTheme({ target }: Event & { target: Picker | Switch }): void {\n const { id } = target;\n const { value } = target as Picker;\n const { checked } = target as Switch;\n switch (id) {\n case 'system':\n this.system =\n system =\n window.__swc_hack_knobs__.defaultSystemVariant =\n value as SystemVariant;\n break;\n case 'color':\n this.color =\n color =\n window.__swc_hack_knobs__.defaultColor =\n value as Color;\n break;\n case 'scale':\n this.scale =\n scale =\n window.__swc_hack_knobs__.defaultScale =\n value as Scale;\n break;\n case 'dir':\n this.direction =\n dir =\n window.__swc_hack_knobs__.defaultDirection =\n value as 'ltr' | 'rtl';\n document.documentElement.dir = dir;\n break;\n case 'reduceMotion':\n this.reduceMotion =\n reduceMotion =\n window.__swc_hack_knobs__.defaultReduceMotion =\n checked as boolean;\n break;\n case 'locale':\n this.lang = window.__swc_hack_knobs__.defaultLocale =\n value as Locale;\n break;\n }\n }\n\n public get backgroundStyle() {\n if (system === 'spectrum-two') {\n return `background-color: var(--spectrum-background-base-color);`;\n }\n return `background-color: var(--spectrum-gray-100);`;\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some(\n (node) =>\n node instanceof HTMLInputElement ||\n node instanceof HTMLTextAreaElement ||\n !!(node as HTMLElement).isContentEditable\n );\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n system=${this.system}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\n style=${this.backgroundStyle}\n part=\"container\"\n @keydown=${this.handleKeydown}\n >\n <slot @slotchange=${this.checkReady}></slot>\n ${this.screenshot ? nothing : this.manageTheme}\n </sp-theme>\n `;\n }\n\n protected async checkReady({\n target,\n }: Event & { target: HTMLSlotElement }): Promise<void> {\n this.ready = false;\n const assignedElements = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\n const descendents = assignedElements;\n assignedElements.forEach((descendent) => {\n const gathered = [\n ...(descendent.querySelectorAll('*') || []),\n ] as SpectrumElement[];\n descendents.push(...gathered);\n });\n const litElementDescendents = descendents.filter(\n (el) =>\n el.tagName.search('-') !== -1 &&\n typeof el.updateComplete !== 'undefined'\n );\n const updates = litElementDescendents.map((el) => el.updateComplete);\n await Promise.all(updates);\n new Promise((res) => {\n setTimeout(res);\n }).then(async () => {\n await (document.fonts ? document.fonts.ready : Promise.resolve());\n setTimeout(() => {\n this.ready = true;\n });\n });\n }\n\n private get manageTheme(): TemplateResult {\n return html`\n <div class=\"manage-theme\" part=\"controls\">\n ${this.systemControl} ${this.colorControl} ${this.scaleControl}\n ${this.localeControl} ${this.dirControl}\n ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get systemControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"system\">\n System\n </sp-field-label>\n <sp-picker\n id=\"system\"\n placement=\"top\"\n quiet\n .value=${this.system}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Spectrum</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n <sp-menu-item value=\"spectrum-two\">Spectrum 2</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"color\">\n Theme\n </sp-field-label>\n <sp-picker\n id=\"color\"\n placement=\"top\"\n quiet\n .value=${this.color}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"scale\">\n Scale\n </sp-field-label>\n <sp-picker\n id=\"scale\"\n label=\"Scale\"\n placement=\"top\"\n quiet\n .value=${this.scale}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"medium\">Medium</sp-menu-item>\n <sp-menu-item value=\"large\">Large</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get localeControl(): TemplateResult {\n const renderLocaleOption = (locale: Locale): TemplateResult => html`\n <sp-menu-item value=${locale}>${Locales[locale]}</sp-menu-item>\n `;\n\n return html`\n <sp-field-label side-aligned=\"start\" for=\"locale\">\n Locale\n </sp-field-label>\n <sp-picker\n id=\"locale\"\n label=\"Locale\"\n placement=\"top\"\n quiet\n .value=${this.lang}\n @change=${this.updateTheme}\n >\n ${(Object.keys(Locales) as Locale[]).map(renderLocaleOption)}\n </sp-picker>\n `;\n }\n\n private get dirControl(): TemplateResult {\n return html`\n <sp-field-label side-aligned=\"start\" for=\"dir\">\n Direction\n </sp-field-label>\n <sp-picker\n id=\"dir\"\n label=\"Direction\"\n placement=\"top\"\n quiet\n .value=${this.direction}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"ltr\">LTR</sp-menu-item>\n <sp-menu-item value=\"rtl\">RTL</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get reduceMotionControl(): TemplateResult {\n return html`\n <sp-switch\n id=\"reduceMotion\"\n ?checked=${this.reduceMotion}\n @change=${this.updateTheme}\n >\n Reduce Motion\n </sp-switch>\n `;\n }\n\n protected override willUpdate(changes: PropertyValues<this>): void {\n if (changes.has('screenshot') && this.screenshot) {\n Theme.registerThemeFragment(\n 'app',\n 'app',\n css`\n :host {\n --swc-test-caret-color: transparent;\n --swc-test-forced-color-adjust: none;\n }\n `\n );\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["css", "html", "nothing", "SpectrumElement", "property", "queryAsync", "DARK_MODE", "Theme", "Locales", "queryString", "urlParams", "reduceMotionProperties", "el", "target", "id", "value", "checked", "event", "node", "assignedElements", "descendents", "descendent", "gathered", "updates", "res", "renderLocaleOption", "locale", "changes", "__decorateClass"]
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ export * from "./StoryDecorator.dev.js";
3
+ //# sourceMappingURL=index.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["index.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nexport * from './StoryDecorator.dev.js'\n"],
5
+ "mappings": ";AAYA,cAAc;",
6
+ "names": []
7
+ }
package/src/index.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";export*from"./StoryDecorator.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["index.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nexport * from './StoryDecorator.js';\n"],
5
+ "mappings": "aAYA,WAAc",
6
+ "names": []
7
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ export var Locales = /* @__PURE__ */ ((Locales2) => {
3
+ Locales2["bn-IN"] = "Bengali (India)";
4
+ Locales2["cy-GB"] = "Welsh (United Kingdom)";
5
+ Locales2["da-DK"] = "Danish (Denmark)";
6
+ Locales2["de-DE"] = "German (Germany)";
7
+ Locales2["el-GR"] = "Greek (Greece)";
8
+ Locales2["en-US"] = "English (United States)";
9
+ Locales2["es-ES"] = "Spanish (Spain)";
10
+ Locales2["fi-FI"] = "Finnish (Finland)";
11
+ Locales2["fil-PH"] = "Filipino (Philippines)";
12
+ Locales2["fr-FR"] = "French (France)";
13
+ Locales2["hi-IN"] = "Hindi (India)";
14
+ Locales2["id-ID"] = "Indonesian (Indonesia)";
15
+ Locales2["it-IT"] = "Italian (Italy)";
16
+ Locales2["ja-JP"] = "Japanese (Japan)";
17
+ Locales2["ko-KR"] = "Korean (South Korea)";
18
+ Locales2["ms-MY"] = "Malay (Malaysia)";
19
+ Locales2["nb-NO"] = "Norwegian (Bokm\xE5l, Norway)";
20
+ Locales2["nl-NL"] = "Dutch (Netherlands)";
21
+ Locales2["pl-PL"] = "Polish (Poland)";
22
+ Locales2["pt-BR"] = "Portuguese (Brazil)";
23
+ Locales2["ro-RO"] = "Romanian (Romania)";
24
+ Locales2["sv-SE"] = "Swedish (Sweden)";
25
+ Locales2["ta-IN"] = "Tamil (India)";
26
+ Locales2["th-TH"] = "Thai (Thailand)";
27
+ Locales2["tr-TR"] = "Turkish (Turkey)";
28
+ Locales2["zh-Hans-CN"] = "Chinese (Simplified, China)";
29
+ Locales2["zh-Hant-TW"] = "Chinese (Traditional, Taiwan)";
30
+ return Locales2;
31
+ })(Locales || {});
32
+ //# sourceMappingURL=locales.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["locales.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2024 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nexport enum Locales {\n 'bn-IN' = 'Bengali (India)',\n 'cy-GB' = 'Welsh (United Kingdom)',\n 'da-DK' = 'Danish (Denmark)',\n 'de-DE' = 'German (Germany)',\n 'el-GR' = 'Greek (Greece)',\n 'en-US' = 'English (United States)',\n 'es-ES' = 'Spanish (Spain)',\n 'fi-FI' = 'Finnish (Finland)',\n 'fil-PH' = 'Filipino (Philippines)',\n 'fr-FR' = 'French (France)',\n 'hi-IN' = 'Hindi (India)',\n 'id-ID' = 'Indonesian (Indonesia)',\n 'it-IT' = 'Italian (Italy)',\n 'ja-JP' = 'Japanese (Japan)',\n 'ko-KR' = 'Korean (South Korea)',\n 'ms-MY' = 'Malay (Malaysia)',\n 'nb-NO' = 'Norwegian (Bokm\u00E5l, Norway)',\n 'nl-NL' = 'Dutch (Netherlands)',\n 'pl-PL' = 'Polish (Poland)',\n 'pt-BR' = 'Portuguese (Brazil)',\n 'ro-RO' = 'Romanian (Romania)',\n 'sv-SE' = 'Swedish (Sweden)',\n 'ta-IN' = 'Tamil (India)',\n 'th-TH' = 'Thai (Thailand)',\n 'tr-TR' = 'Turkish (Turkey)',\n 'zh-Hans-CN' = 'Chinese (Simplified, China)',\n 'zh-Hant-TW' = 'Chinese (Traditional, Taiwan)',\n}\n\nexport type Locale = keyof typeof Locales;\n"],
5
+ "mappings": ";AAYO,WAAK,UAAL,kBAAKA,aAAL;AACH,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,YAAW;AACX,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,WAAU;AACV,EAAAA,SAAA,gBAAe;AACf,EAAAA,SAAA,gBAAe;AA3BP,SAAAA;AAAA,GAAA;",
6
+ "names": ["Locales"]
7
+ }
package/src/locales.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";export var Locales=(n=>(n["bn-IN"]="Bengali (India)",n["cy-GB"]="Welsh (United Kingdom)",n["da-DK"]="Danish (Denmark)",n["de-DE"]="German (Germany)",n["el-GR"]="Greek (Greece)",n["en-US"]="English (United States)",n["es-ES"]="Spanish (Spain)",n["fi-FI"]="Finnish (Finland)",n["fil-PH"]="Filipino (Philippines)",n["fr-FR"]="French (France)",n["hi-IN"]="Hindi (India)",n["id-ID"]="Indonesian (Indonesia)",n["it-IT"]="Italian (Italy)",n["ja-JP"]="Japanese (Japan)",n["ko-KR"]="Korean (South Korea)",n["ms-MY"]="Malay (Malaysia)",n["nb-NO"]="Norwegian (Bokm\xE5l, Norway)",n["nl-NL"]="Dutch (Netherlands)",n["pl-PL"]="Polish (Poland)",n["pt-BR"]="Portuguese (Brazil)",n["ro-RO"]="Romanian (Romania)",n["sv-SE"]="Swedish (Sweden)",n["ta-IN"]="Tamil (India)",n["th-TH"]="Thai (Thailand)",n["tr-TR"]="Turkish (Turkey)",n["zh-Hans-CN"]="Chinese (Simplified, China)",n["zh-Hant-TW"]="Chinese (Traditional, Taiwan)",n))(Locales||{});
2
+ //# sourceMappingURL=locales.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["locales.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2024 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nexport enum Locales {\n 'bn-IN' = 'Bengali (India)',\n 'cy-GB' = 'Welsh (United Kingdom)',\n 'da-DK' = 'Danish (Denmark)',\n 'de-DE' = 'German (Germany)',\n 'el-GR' = 'Greek (Greece)',\n 'en-US' = 'English (United States)',\n 'es-ES' = 'Spanish (Spain)',\n 'fi-FI' = 'Finnish (Finland)',\n 'fil-PH' = 'Filipino (Philippines)',\n 'fr-FR' = 'French (France)',\n 'hi-IN' = 'Hindi (India)',\n 'id-ID' = 'Indonesian (Indonesia)',\n 'it-IT' = 'Italian (Italy)',\n 'ja-JP' = 'Japanese (Japan)',\n 'ko-KR' = 'Korean (South Korea)',\n 'ms-MY' = 'Malay (Malaysia)',\n 'nb-NO' = 'Norwegian (Bokm\u00E5l, Norway)',\n 'nl-NL' = 'Dutch (Netherlands)',\n 'pl-PL' = 'Polish (Poland)',\n 'pt-BR' = 'Portuguese (Brazil)',\n 'ro-RO' = 'Romanian (Romania)',\n 'sv-SE' = 'Swedish (Sweden)',\n 'ta-IN' = 'Tamil (India)',\n 'th-TH' = 'Thai (Thailand)',\n 'tr-TR' = 'Turkish (Turkey)',\n 'zh-Hans-CN' = 'Chinese (Simplified, China)',\n 'zh-Hant-TW' = 'Chinese (Traditional, Taiwan)',\n}\n\nexport type Locale = keyof typeof Locales;\n"],
5
+ "mappings": "aAYO,WAAK,SAAAA,IACRA,EAAA,SAAU,kBACVA,EAAA,SAAU,yBACVA,EAAA,SAAU,mBACVA,EAAA,SAAU,mBACVA,EAAA,SAAU,iBACVA,EAAA,SAAU,0BACVA,EAAA,SAAU,kBACVA,EAAA,SAAU,oBACVA,EAAA,UAAW,yBACXA,EAAA,SAAU,kBACVA,EAAA,SAAU,gBACVA,EAAA,SAAU,yBACVA,EAAA,SAAU,kBACVA,EAAA,SAAU,mBACVA,EAAA,SAAU,uBACVA,EAAA,SAAU,mBACVA,EAAA,SAAU,gCACVA,EAAA,SAAU,sBACVA,EAAA,SAAU,kBACVA,EAAA,SAAU,sBACVA,EAAA,SAAU,qBACVA,EAAA,SAAU,mBACVA,EAAA,SAAU,gBACVA,EAAA,SAAU,kBACVA,EAAA,SAAU,mBACVA,EAAA,cAAe,8BACfA,EAAA,cAAe,gCA3BPA,IAAA",
6
+ "names": ["Locales"]
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
package/src/types.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }