@spectrum-web-components/story-decorator 0.7.0 → 0.7.2

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/decorator.dev.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  import { html, render } from "@spectrum-web-components/base";
2
3
  import "./sp-story-decorator.dev.js";
3
4
  export const themeStyles = html`
@@ -17,7 +18,9 @@ export const themeStyles = html`
17
18
  export const swcThemeDecoratorWithConfig = ({ bundled } = { bundled: true }) => (story) => {
18
19
  if (!bundled) {
19
20
  requestAnimationFrame(() => {
20
- const decorator = document.querySelector("sp-story-decorator");
21
+ const decorator = document.querySelector(
22
+ "sp-story-decorator"
23
+ );
21
24
  render(story(), decorator);
22
25
  });
23
26
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["decorator.ts"],
4
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 swcThemeDecoratorWithConfig =\n ({ bundled } = { bundled: true }) =>\n (story: () => TemplateResult) => {\n if (!bundled) {\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>\n ${bundled ? story() : html``}\n </sp-story-decorator>\n `;\n };\n\nexport const swcThemeDecorator = swcThemeDecoratorWithConfig();\n"],
5
- "mappings": "AAYA;AACA;AAEO,aAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAepB,aAAM,8BACT,CAAC,EAAE,YAAY,EAAE,SAAS,KAAK,MAC/B,CAAC,UAAgC;AAC7B,MAAI,CAAC,SAAS;AACV,0BAAsB,MAAM;AACxB,YAAM,YAAY,SAAS,cACvB,oBACJ;AACA,aAAO,MAAM,GAAG,SAAS;AAAA,IAC7B,CAAC;AAAA,EACL;AACA,SAAO;AAAA,cACD;AAAA;AAAA,kBAEI,UAAU,MAAM,IAAI;AAAA;AAAA;AAGlC;AAEG,aAAM,oBAAoB,4BAA4B;",
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,8BACT,CAAC,EAAE,QAAQ,IAAI,EAAE,SAAS,KAAK,MAC/B,CAAC,UAAgC;AAC7B,MAAI,CAAC,SAAS;AACV,0BAAsB,MAAM;AACxB,YAAM,YAAY,SAAS;AAAA,QACvB;AAAA,MACJ;AACA,aAAO,MAAM,GAAG,SAAS;AAAA,IAC7B,CAAC;AAAA,EACL;AACA,SAAO;AAAA,cACD;AAAA;AAAA,kBAEI,UAAU,MAAM,IAAI;AAAA;AAAA;AAGlC;AAEG,aAAM,oBAAoB,4BAA4B;",
6
6
  "names": []
7
7
  }
package/decorator.js CHANGED
@@ -1,4 +1,4 @@
1
- import{html as t,render as s}from"@spectrum-web-components/base";import"./sp-story-decorator.js";export const themeStyles=t`
1
+ "use strict";import{html as t,render as s}from"@spectrum-web-components/base";import"./sp-story-decorator.js";export const themeStyles=t`
2
2
  <style>
3
3
  #root {
4
4
  padding: 0;
package/decorator.js.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["decorator.ts"],
4
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 swcThemeDecoratorWithConfig =\n ({ bundled } = { bundled: true }) =>\n (story: () => TemplateResult) => {\n if (!bundled) {\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>\n ${bundled ? story() : html``}\n </sp-story-decorator>\n `;\n };\n\nexport const swcThemeDecorator = swcThemeDecoratorWithConfig();\n"],
5
- "mappings": "AAYA,iEACA,gCAEO,YAAM,aAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAed,4BACT,CAAC,CAAE,WAAY,CAAE,QAAS,EAAK,IAC/B,AAAC,GACQ,IACD,sBAAsB,IAAM,CACxB,KAAM,GAAY,SAAS,cACvB,oBACJ,EACA,EAAO,EAAM,EAAG,CAAS,CAC7B,CAAC,EAEE;AAAA,cACD;AAAA;AAAA,kBAEI,EAAU,EAAM,EAAI;AAAA;AAAA,WAKzB,kBAAoB,4BAA4B",
6
- "names": []
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,4BACT,CAAC,CAAE,QAAAE,CAAQ,EAAI,CAAE,QAAS,EAAK,IAC9BC,IACQD,GACD,sBAAsB,IAAM,CACxB,MAAME,EAAY,SAAS,cACvB,oBACJ,EACAH,EAAOE,EAAM,EAAGC,CAAS,CAC7B,CAAC,EAEEJ;AAAA,cACD;AAAA;AAAA,kBAEIE,EAAUC,EAAM,EAAIH;AAAA;AAAA,WAKzB,kBAAoB,4BAA4B",
6
+ "names": ["html", "render", "bundled", "story", "decorator"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spectrum-web-components/story-decorator",
3
- "version": "0.7.0",
3
+ "version": "0.7.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -68,11 +68,11 @@
68
68
  "dependencies": {
69
69
  "@spectrum-web-components/base": "^0.7.0",
70
70
  "@spectrum-web-components/field-label": "^0.8.0",
71
- "@spectrum-web-components/menu": "^0.16.0",
72
- "@spectrum-web-components/overlay": "^0.18.0",
73
- "@spectrum-web-components/picker": "^0.13.0",
71
+ "@spectrum-web-components/menu": "^0.16.2",
72
+ "@spectrum-web-components/overlay": "^0.18.2",
73
+ "@spectrum-web-components/picker": "^0.13.2",
74
74
  "@spectrum-web-components/switch": "^0.10.0",
75
- "@spectrum-web-components/theme": "^0.14.0",
75
+ "@spectrum-web-components/theme": "^0.14.2",
76
76
  "tslib": "^2.0.0"
77
77
  },
78
78
  "types": "./src/index.d.ts",
@@ -82,5 +82,5 @@
82
82
  "./**/*.dev.js",
83
83
  "./sp-*.ts"
84
84
  ],
85
- "gitHead": "05c81318844160db3f8156144106e643507fef97"
85
+ "gitHead": "60b2d3b7d9020d72f9ae930568670321a1918e6f"
86
86
  }
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  import { StoryDecorator } from "./src/StoryDecorator.dev.js";
2
3
  customElements.define("sp-story-decorator", StoryDecorator);
3
4
  //# sourceMappingURL=sp-story-decorator.dev.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["sp-story-decorator.ts"],
4
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;AAEA,eAAe,OAAO,sBAAsB,cAAc;",
5
+ "mappings": ";AAYA,SAAS,sBAAsB;AAE/B,eAAe,OAAO,sBAAsB,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,2 +1,2 @@
1
- import{StoryDecorator as o}from"./src/StoryDecorator.js";customElements.define("sp-story-decorator",o);
1
+ "use strict";import{StoryDecorator as o}from"./src/StoryDecorator.js";customElements.define("sp-story-decorator",o);
2
2
  //# sourceMappingURL=sp-story-decorator.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["sp-story-decorator.ts"],
4
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,yDAEA,eAAe,OAAO,qBAAsB,CAAc",
6
- "names": []
5
+ "mappings": "aAYA,OAAS,kBAAAA,MAAsB,0BAE/B,eAAe,OAAO,qBAAsBA,CAAc",
6
+ "names": ["StoryDecorator"]
7
7
  }
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __decorateClass = (decorators, target, key, kind) => {
@@ -227,14 +228,18 @@ export class StoryDecorator extends SpectrumElement {
227
228
  const descendents = target.assignedElements({
228
229
  flatten: true
229
230
  });
230
- const litElementDescendents = descendents.filter((el) => el.tagName.search("-") !== -1 && typeof el.updateComplete !== "undefined");
231
+ const litElementDescendents = descendents.filter(
232
+ (el) => el.tagName.search("-") !== -1 && typeof el.updateComplete !== "undefined"
233
+ );
231
234
  const updates = litElementDescendents.map((el) => el.updateComplete);
232
235
  await Promise.all(updates);
233
236
  new Promise((res) => {
234
237
  setTimeout(res);
235
238
  }).then(async () => {
236
239
  await (document.fonts ? document.fonts.ready : Promise.resolve());
237
- setTimeout(() => this.ready = true);
240
+ setTimeout(() => {
241
+ this.ready = true;
242
+ });
238
243
  });
239
244
  }
240
245
  get manageTheme() {
@@ -322,12 +327,16 @@ export class StoryDecorator extends SpectrumElement {
322
327
  }
323
328
  willUpdate(changes) {
324
329
  if (changes.has("screenshot") && this.screenshot) {
325
- Theme.registerThemeFragment("app", "app", css`
330
+ Theme.registerThemeFragment(
331
+ "app",
332
+ "app",
333
+ css`
326
334
  :host {
327
335
  --swc-test-caret-color: transparent;
328
336
  --swc-test-forced-color-adjust: none;
329
337
  }
330
- `);
338
+ `
339
+ );
331
340
  }
332
341
  }
333
342
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
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 { ifDefined } from '@spectrum-web-components/base/src/directives.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/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 Theme,\n ThemeVariant,\n} from '@spectrum-web-components/theme';\nimport { ActiveOverlay } from '@spectrum-web-components/overlay';\nimport './types.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: ThemeVariant =\n (urlParams.get('sp_theme') as ThemeVariant) || 'spectrum';\nexport let color: Color = (urlParams.get('sp_color') as Color) || 'light';\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultThemeVariant: theme,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\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-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nActiveOverlay.prototype.renderTheme = function (\n content: TemplateResult\n): TemplateResult {\n const { color, scale, theme, lang } = this.theme;\n return html`\n ${window.__swc_hack_knobs__.defaultReduceMotion\n ? html`\n <style>\n sp-theme {\n ${reduceMotionProperties}\n }\n </style>\n `\n : html``}\n <sp-theme\n theme=${ifDefined(theme)}\n color=${ifDefined(color)}\n scale=${ifDefined(scale)}\n lang=${ifDefined(lang)}\n part=\"theme\"\n >\n ${content}\n </sp-theme>\n `;\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(--spectrum-global-dimension-size-100)\n var(--spectrum-global-dimension-size-100)\n calc(\n 2 * var(--spectrum-alias-focus-ring-size) +\n var(--spectrum-alias-item-height-m)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n color: var(\n --spectrum-body-text-color,\n var(--spectrum-alias-text-color)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--spectrum-global-dimension-size-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--spectrum-global-dimension-size-200);\n right: var(--spectrum-global-dimension-size-200);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n [dir='ltr'] sp-field-label {\n padding-left: 0;\n padding-right: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-left: var(--spectrum-global-dimension-size-400);\n }\n [dir='ltr'] sp-switch {\n margin-left: var(--spectrum-global-dimension-size-400);\n margin-right: 0;\n padding: 0;\n }\n [dir='rtl'] sp-field-label {\n padding-right: 0;\n padding-left: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-right: var(--spectrum-global-dimension-size-400);\n }\n [dir='rtl'] sp-switch {\n margin-right: var(--spectrum-global-dimension-size-400);\n margin-left: 0;\n padding: 0;\n }\n `,\n ];\n }\n\n @property({ type: String })\n public theme: ThemeVariant = window.__swc_hack_knobs__.defaultThemeVariant;\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: Boolean, reflect: true })\n public screenshot = false;\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 'theme':\n this.theme =\n theme =\n window.__swc_hack_knobs__.defaultThemeVariant =\n value as ThemeVariant;\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 }\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some((node) => node instanceof HTMLInputElement);\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n theme=${this.theme}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\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 descendents = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\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(() => (this.ready = true));\n });\n }\n\n private get manageTheme(): TemplateResult {\n return html`\n <div class=\"manage-theme\" part=\"controls\">\n ${this.themeControl} ${this.colorControl} ${this.scaleControl}\n ${this.dirControl} ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get themeControl(): TemplateResult {\n return html`\n <sp-field-label for=\"theme\">Spectrum</sp-field-label>\n <sp-picker\n id=\"theme\"\n placement=\"top\"\n quiet\n .value=${this.theme}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Classic</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label for=\"color\">Theme</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=\"lightest\">Lightest</sp-menu-item>\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n <sp-menu-item value=\"darkest\">Darkest</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label for=\"scale\">Scale</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 dirControl(): TemplateResult {\n return html`\n <sp-field-label for=\"dir\">Direction</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": []
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 { ifDefined } from '@spectrum-web-components/base/src/directives.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/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 Theme,\n ThemeVariant,\n} from '@spectrum-web-components/theme';\nimport { ActiveOverlay } from '@spectrum-web-components/overlay';\nimport './types.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: ThemeVariant =\n (urlParams.get('sp_theme') as ThemeVariant) || 'spectrum';\nexport let color: Color = (urlParams.get('sp_color') as Color) || 'light';\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultThemeVariant: theme,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\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-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nActiveOverlay.prototype.renderTheme = function (\n content: TemplateResult\n): TemplateResult {\n const { color, scale, theme, lang } = this.theme;\n return html`\n ${window.__swc_hack_knobs__.defaultReduceMotion\n ? html`\n <style>\n sp-theme {\n ${reduceMotionProperties}\n }\n </style>\n `\n : html``}\n <sp-theme\n theme=${ifDefined(theme)}\n color=${ifDefined(color)}\n scale=${ifDefined(scale)}\n lang=${ifDefined(lang)}\n part=\"theme\"\n >\n ${content}\n </sp-theme>\n `;\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(--spectrum-global-dimension-size-100)\n var(--spectrum-global-dimension-size-100)\n calc(\n 2 * var(--spectrum-alias-focus-ring-size) +\n var(--spectrum-alias-item-height-m)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n color: var(\n --spectrum-body-text-color,\n var(--spectrum-alias-text-color)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--spectrum-global-dimension-size-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--spectrum-global-dimension-size-200);\n right: var(--spectrum-global-dimension-size-200);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n [dir='ltr'] sp-field-label {\n padding-left: 0;\n padding-right: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-left: var(--spectrum-global-dimension-size-400);\n }\n [dir='ltr'] sp-switch {\n margin-left: var(--spectrum-global-dimension-size-400);\n margin-right: 0;\n padding: 0;\n }\n [dir='rtl'] sp-field-label {\n padding-right: 0;\n padding-left: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-right: var(--spectrum-global-dimension-size-400);\n }\n [dir='rtl'] sp-switch {\n margin-right: var(--spectrum-global-dimension-size-400);\n margin-left: 0;\n padding: 0;\n }\n `,\n ];\n }\n\n @property({ type: String })\n public theme: ThemeVariant = window.__swc_hack_knobs__.defaultThemeVariant;\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: Boolean, reflect: true })\n public screenshot = false;\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 'theme':\n this.theme =\n theme =\n window.__swc_hack_knobs__.defaultThemeVariant =\n value as ThemeVariant;\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 }\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some((node) => node instanceof HTMLInputElement);\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n theme=${this.theme}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\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 descendents = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\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.themeControl} ${this.colorControl} ${this.scaleControl}\n ${this.dirControl} ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get themeControl(): TemplateResult {\n return html`\n <sp-field-label for=\"theme\">Spectrum</sp-field-label>\n <sp-picker\n id=\"theme\"\n placement=\"top\"\n quiet\n .value=${this.theme}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Classic</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label for=\"color\">Theme</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=\"lightest\">Lightest</sp-menu-item>\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n <sp-menu-item value=\"darkest\">Darkest</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label for=\"scale\">Scale</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 dirControl(): TemplateResult {\n return html`\n <sp-field-label for=\"dir\">Direction</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": ["color", "scale", "theme"]
7
7
  }
@@ -1,4 +1,4 @@
1
- var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i)=>{for(var t=i>1?void 0:i?g(e,s):e,a=l.length-1,p;a>=0;a--)(p=l[a])&&(t=(i?p(e,s,t):p(t))||t);return i&&t&&h(e,s,t),t};import{css as d,html as o,nothing as b,SpectrumElement as _}from"@spectrum-web-components/base";import{property as n,queryAsync as f}from"@spectrum-web-components/base/src/decorators.js";import{ifDefined as c}from"@spectrum-web-components/base/src/directives.js";import"@spectrum-web-components/theme/sp-theme.js";import"@spectrum-web-components/theme/src/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 w}from"@spectrum-web-components/theme";import{ActiveOverlay as v}from"@spectrum-web-components/overlay";import"./types.js";const k=window.location.search,m=new URLSearchParams(k);export let dir=m.get("sp_dir")||"ltr",theme=m.get("sp_theme")||"spectrum",color=m.get("sp_color")||"light",scale=m.get("sp_scale")||"medium",reduceMotion=m.get("sp_reduceMotion")==="true";window.__swc_hack_knobs__=window.__swc_hack_knobs__||{defaultThemeVariant:theme,defaultColor:color,defaultScale:scale,defaultDirection:dir,defaultReduceMotion:reduceMotion};const u=d`
1
+ "use strict";var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(m,n,e,i)=>{for(var t=i>1?void 0:i?g(n,e):n,s=m.length-1,a;s>=0;s--)(a=m[s])&&(t=(i?a(n,e,t):a(t))||t);return i&&t&&h(n,e,t),t};import{css as d,html as o,nothing as b,SpectrumElement as _}from"@spectrum-web-components/base";import{property as l,queryAsync as f}from"@spectrum-web-components/base/src/decorators.js";import{ifDefined as p}from"@spectrum-web-components/base/src/directives.js";import"@spectrum-web-components/theme/sp-theme.js";import"@spectrum-web-components/theme/src/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 w}from"@spectrum-web-components/theme";import{ActiveOverlay as v}from"@spectrum-web-components/overlay";import"./types.js";const k=window.location.search,c=new URLSearchParams(k);export let dir=c.get("sp_dir")||"ltr",theme=c.get("sp_theme")||"spectrum",color=c.get("sp_color")||"light",scale=c.get("sp_scale")||"medium",reduceMotion=c.get("sp_reduceMotion")==="true";window.__swc_hack_knobs__=window.__swc_hack_knobs__||{defaultThemeVariant:theme,defaultColor:color,defaultScale:scale,defaultDirection:dir,defaultReduceMotion:reduceMotion};const u=d`
2
2
  --spectrum-global-animation-duration-100: 0ms;
3
3
  --spectrum-global-animation-duration-200: 0ms;
4
4
  --spectrum-global-animation-duration-300: 0ms;
@@ -13,7 +13,7 @@ var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i
13
13
  --spectrum-global-animation-duration-4000: 0ms;
14
14
  --spectrum-coachmark-animation-indicator-ring-duration: 0ms;
15
15
  --swc-test-duration: 1ms;
16
- `;v.prototype.renderTheme=function(l){const{color:e,scale:s,theme:i,lang:t}=this.theme;return o`
16
+ `;v.prototype.renderTheme=function(m){const{color:n,scale:e,theme:i,lang:t}=this.theme;return o`
17
17
  ${window.__swc_hack_knobs__.defaultReduceMotion?o`
18
18
  <style>
19
19
  sp-theme {
@@ -22,13 +22,13 @@ var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i
22
22
  </style>
23
23
  `:o``}
24
24
  <sp-theme
25
- theme=${c(i)}
26
- color=${c(e)}
27
- scale=${c(s)}
28
- lang=${c(t)}
25
+ theme=${p(i)}
26
+ color=${p(n)}
27
+ scale=${p(e)}
28
+ lang=${p(t)}
29
29
  part="theme"
30
30
  >
31
- ${l}
31
+ ${m}
32
32
  </sp-theme>
33
33
  `};export class StoryDecorator extends _{constructor(){super(...arguments);this.theme=window.__swc_hack_knobs__.defaultThemeVariant;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.screenshot=!1;this.ready=!1}static get styles(){return[d`
34
34
  :host(:focus) {
@@ -99,7 +99,7 @@ var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i
99
99
  margin-left: 0;
100
100
  padding: 0;
101
101
  }
102
- `]}async startManagingContentDirection(e){(await this.themeRoot).startManagingContentDirection(e)}async stopManagingContentDirection(e){(await this.themeRoot).stopManagingContentDirection(e)}updateTheme({target:e}){const{id:s}=e,{value:i}=e,{checked:t}=e;switch(s){case"theme":this.theme=theme=window.__swc_hack_knobs__.defaultThemeVariant=i;break;case"color":this.color=color=window.__swc_hack_knobs__.defaultColor=i;break;case"scale":this.scale=scale=window.__swc_hack_knobs__.defaultScale=i;break;case"dir":this.direction=dir=window.__swc_hack_knobs__.defaultDirection=i,document.documentElement.dir=dir;break;case"reduceMotion":this.reduceMotion=reduceMotion=window.__swc_hack_knobs__.defaultReduceMotion=t;break}}handleKeydown(e){e.composedPath().some(t=>t instanceof HTMLInputElement)&&e.stopPropagation()}render(){return o`
102
+ `]}async startManagingContentDirection(e){(await this.themeRoot).startManagingContentDirection(e)}async stopManagingContentDirection(e){(await this.themeRoot).stopManagingContentDirection(e)}updateTheme({target:e}){const{id:i}=e,{value:t}=e,{checked:s}=e;switch(i){case"theme":this.theme=theme=window.__swc_hack_knobs__.defaultThemeVariant=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}}handleKeydown(e){e.composedPath().some(s=>s instanceof HTMLInputElement)&&e.stopPropagation()}render(){return o`
103
103
  <sp-theme
104
104
  theme=${this.theme}
105
105
  color=${this.color}
@@ -111,7 +111,7 @@ var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i
111
111
  <slot @slotchange=${this.checkReady}></slot>
112
112
  ${this.screenshot?b:this.manageTheme}
113
113
  </sp-theme>
114
- `}async checkReady({target:e}){this.ready=!1;const t=e.assignedElements({flatten:!0}).filter(a=>a.tagName.search("-")!==-1&&typeof a.updateComplete!="undefined").map(a=>a.updateComplete);await Promise.all(t),new Promise(a=>{setTimeout(a)}).then(async()=>{await(document.fonts?document.fonts.ready:Promise.resolve()),setTimeout(()=>this.ready=!0)})}get manageTheme(){return o`
114
+ `}async checkReady({target:e}){this.ready=!1;const s=e.assignedElements({flatten:!0}).filter(a=>a.tagName.search("-")!==-1&&typeof a.updateComplete!="undefined").map(a=>a.updateComplete);await Promise.all(s),new Promise(a=>{setTimeout(a)}).then(async()=>{await(document.fonts?document.fonts.ready:Promise.resolve()),setTimeout(()=>{this.ready=!0})})}get manageTheme(){return o`
115
115
  <div class="manage-theme" part="controls">
116
116
  ${this.themeControl} ${this.colorControl} ${this.scaleControl}
117
117
  ${this.dirControl} ${this.reduceMotionControl}
@@ -181,5 +181,5 @@ var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var r=(l,e,s,i
181
181
  --swc-test-caret-color: transparent;
182
182
  --swc-test-forced-color-adjust: none;
183
183
  }
184
- `)}}r([n({type:String})],StoryDecorator.prototype,"theme",2),r([n({type:String})],StoryDecorator.prototype,"color",2),r([n({type:String})],StoryDecorator.prototype,"scale",2),r([n({type:String,reflect:!0,attribute:"dir"})],StoryDecorator.prototype,"direction",2),r([n({type:Boolean,attribute:"reduce-motion",reflect:!0})],StoryDecorator.prototype,"reduceMotion",2),r([n({type:Boolean,reflect:!0})],StoryDecorator.prototype,"screenshot",2),r([f("sp-theme")],StoryDecorator.prototype,"themeRoot",2);
184
+ `)}}r([l({type:String})],StoryDecorator.prototype,"theme",2),r([l({type:String})],StoryDecorator.prototype,"color",2),r([l({type:String})],StoryDecorator.prototype,"scale",2),r([l({type:String,reflect:!0,attribute:"dir"})],StoryDecorator.prototype,"direction",2),r([l({type:Boolean,attribute:"reduce-motion",reflect:!0})],StoryDecorator.prototype,"reduceMotion",2),r([l({type:Boolean,reflect:!0})],StoryDecorator.prototype,"screenshot",2),r([f("sp-theme")],StoryDecorator.prototype,"themeRoot",2);
185
185
  //# sourceMappingURL=StoryDecorator.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
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 { ifDefined } from '@spectrum-web-components/base/src/directives.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/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 Theme,\n ThemeVariant,\n} from '@spectrum-web-components/theme';\nimport { ActiveOverlay } from '@spectrum-web-components/overlay';\nimport './types.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: ThemeVariant =\n (urlParams.get('sp_theme') as ThemeVariant) || 'spectrum';\nexport let color: Color = (urlParams.get('sp_color') as Color) || 'light';\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultThemeVariant: theme,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\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-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nActiveOverlay.prototype.renderTheme = function (\n content: TemplateResult\n): TemplateResult {\n const { color, scale, theme, lang } = this.theme;\n return html`\n ${window.__swc_hack_knobs__.defaultReduceMotion\n ? html`\n <style>\n sp-theme {\n ${reduceMotionProperties}\n }\n </style>\n `\n : html``}\n <sp-theme\n theme=${ifDefined(theme)}\n color=${ifDefined(color)}\n scale=${ifDefined(scale)}\n lang=${ifDefined(lang)}\n part=\"theme\"\n >\n ${content}\n </sp-theme>\n `;\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(--spectrum-global-dimension-size-100)\n var(--spectrum-global-dimension-size-100)\n calc(\n 2 * var(--spectrum-alias-focus-ring-size) +\n var(--spectrum-alias-item-height-m)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n color: var(\n --spectrum-body-text-color,\n var(--spectrum-alias-text-color)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--spectrum-global-dimension-size-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--spectrum-global-dimension-size-200);\n right: var(--spectrum-global-dimension-size-200);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n [dir='ltr'] sp-field-label {\n padding-left: 0;\n padding-right: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-left: var(--spectrum-global-dimension-size-400);\n }\n [dir='ltr'] sp-switch {\n margin-left: var(--spectrum-global-dimension-size-400);\n margin-right: 0;\n padding: 0;\n }\n [dir='rtl'] sp-field-label {\n padding-right: 0;\n padding-left: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-right: var(--spectrum-global-dimension-size-400);\n }\n [dir='rtl'] sp-switch {\n margin-right: var(--spectrum-global-dimension-size-400);\n margin-left: 0;\n padding: 0;\n }\n `,\n ];\n }\n\n @property({ type: String })\n public theme: ThemeVariant = window.__swc_hack_knobs__.defaultThemeVariant;\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: Boolean, reflect: true })\n public screenshot = false;\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 'theme':\n this.theme =\n theme =\n window.__swc_hack_knobs__.defaultThemeVariant =\n value as ThemeVariant;\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 }\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some((node) => node instanceof HTMLInputElement);\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n theme=${this.theme}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\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 descendents = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\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(() => (this.ready = true));\n });\n }\n\n private get manageTheme(): TemplateResult {\n return html`\n <div class=\"manage-theme\" part=\"controls\">\n ${this.themeControl} ${this.colorControl} ${this.scaleControl}\n ${this.dirControl} ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get themeControl(): TemplateResult {\n return html`\n <sp-field-label for=\"theme\">Spectrum</sp-field-label>\n <sp-picker\n id=\"theme\"\n placement=\"top\"\n quiet\n .value=${this.theme}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Classic</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label for=\"color\">Theme</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=\"lightest\">Lightest</sp-menu-item>\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n <sp-menu-item value=\"darkest\">Darkest</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label for=\"scale\">Scale</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 dirControl(): TemplateResult {\n return html`\n <sp-field-label for=\"dir\">Direction</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": []
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 { ifDefined } from '@spectrum-web-components/base/src/directives.js';\nimport '@spectrum-web-components/theme/sp-theme.js';\nimport '@spectrum-web-components/theme/src/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 Theme,\n ThemeVariant,\n} from '@spectrum-web-components/theme';\nimport { ActiveOverlay } from '@spectrum-web-components/overlay';\nimport './types.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: ThemeVariant =\n (urlParams.get('sp_theme') as ThemeVariant) || 'spectrum';\nexport let color: Color = (urlParams.get('sp_color') as Color) || 'light';\nexport let scale: Scale = (urlParams.get('sp_scale') as Scale) || 'medium';\nexport let reduceMotion = urlParams.get('sp_reduceMotion') === 'true';\n\nwindow.__swc_hack_knobs__ = window.__swc_hack_knobs__ || {\n defaultThemeVariant: theme,\n defaultColor: color,\n defaultScale: scale,\n defaultDirection: dir,\n defaultReduceMotion: reduceMotion,\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-coachmark-animation-indicator-ring-duration: 0ms;\n --swc-test-duration: 1ms;\n`;\n\nActiveOverlay.prototype.renderTheme = function (\n content: TemplateResult\n): TemplateResult {\n const { color, scale, theme, lang } = this.theme;\n return html`\n ${window.__swc_hack_knobs__.defaultReduceMotion\n ? html`\n <style>\n sp-theme {\n ${reduceMotionProperties}\n }\n </style>\n `\n : html``}\n <sp-theme\n theme=${ifDefined(theme)}\n color=${ifDefined(color)}\n scale=${ifDefined(scale)}\n lang=${ifDefined(lang)}\n part=\"theme\"\n >\n ${content}\n </sp-theme>\n `;\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(--spectrum-global-dimension-size-100)\n var(--spectrum-global-dimension-size-100)\n calc(\n 2 * var(--spectrum-alias-focus-ring-size) +\n var(--spectrum-alias-item-height-m)\n );\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n color: var(\n --spectrum-body-text-color,\n var(--spectrum-alias-text-color)\n );\n }\n :host([screenshot]) sp-theme {\n padding: var(--spectrum-global-dimension-size-100);\n }\n :host([reduce-motion]) sp-theme {\n ${reduceMotionProperties}\n }\n .manage-theme {\n position: fixed;\n bottom: 0;\n left: var(--spectrum-global-dimension-size-200);\n right: var(--spectrum-global-dimension-size-200);\n display: flex;\n align-items: center;\n justify-content: flex-end;\n box-sizing: border-box;\n background-color: var(--spectrum-global-color-gray-100);\n padding-bottom: calc(\n 2 * var(--spectrum-alias-focus-ring-size)\n );\n }\n [dir='ltr'] sp-field-label {\n padding-left: 0;\n padding-right: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-left: var(--spectrum-global-dimension-size-400);\n }\n [dir='ltr'] sp-switch {\n margin-left: var(--spectrum-global-dimension-size-400);\n margin-right: 0;\n padding: 0;\n }\n [dir='rtl'] sp-field-label {\n padding-right: 0;\n padding-left: var(\n --spectrum-fieldlabel-side-padding-x,\n var(--spectrum-global-dimension-size-100)\n );\n margin-right: var(--spectrum-global-dimension-size-400);\n }\n [dir='rtl'] sp-switch {\n margin-right: var(--spectrum-global-dimension-size-400);\n margin-left: 0;\n padding: 0;\n }\n `,\n ];\n }\n\n @property({ type: String })\n public theme: ThemeVariant = window.__swc_hack_knobs__.defaultThemeVariant;\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: Boolean, reflect: true })\n public screenshot = false;\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 'theme':\n this.theme =\n theme =\n window.__swc_hack_knobs__.defaultThemeVariant =\n value as ThemeVariant;\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 }\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const path = event.composedPath();\n const hasInput = path.some((node) => node instanceof HTMLInputElement);\n if (hasInput) {\n event.stopPropagation();\n }\n }\n\n protected override render(): TemplateResult {\n return html`\n <sp-theme\n theme=${this.theme}\n color=${this.color}\n scale=${this.scale}\n dir=${this.direction}\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 descendents = target.assignedElements({\n flatten: true,\n }) as SpectrumElement[];\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.themeControl} ${this.colorControl} ${this.scaleControl}\n ${this.dirControl} ${this.reduceMotionControl}\n </div>\n `;\n }\n\n private get themeControl(): TemplateResult {\n return html`\n <sp-field-label for=\"theme\">Spectrum</sp-field-label>\n <sp-picker\n id=\"theme\"\n placement=\"top\"\n quiet\n .value=${this.theme}\n @change=${this.updateTheme}\n >\n <sp-menu-item value=\"spectrum\">Classic</sp-menu-item>\n <sp-menu-item value=\"express\">Express</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get colorControl(): TemplateResult {\n return html`\n <sp-field-label for=\"color\">Theme</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=\"lightest\">Lightest</sp-menu-item>\n <sp-menu-item value=\"light\">Light</sp-menu-item>\n <sp-menu-item value=\"dark\">Dark</sp-menu-item>\n <sp-menu-item value=\"darkest\">Darkest</sp-menu-item>\n </sp-picker>\n `;\n }\n\n private get scaleControl(): TemplateResult {\n return html`\n <sp-field-label for=\"scale\">Scale</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 dirControl(): TemplateResult {\n return html`\n <sp-field-label for=\"dir\">Direction</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", "ifDefined", "Theme", "ActiveOverlay", "queryString", "urlParams", "reduceMotionProperties", "content", "color", "scale", "theme", "lang", "el", "target", "id", "value", "checked", "event", "node", "updates", "res", "changes", "__decorateClass"]
7
7
  }
package/src/index.dev.js CHANGED
@@ -1,2 +1,3 @@
1
+ "use strict";
1
2
  export * from "./StoryDecorator.dev.js";
2
3
  //# sourceMappingURL=index.dev.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["index.ts"],
4
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;",
5
+ "mappings": ";AAYA,cAAc;",
6
6
  "names": []
7
7
  }
package/src/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export*from"./StoryDecorator.js";
1
+ "use strict";export*from"./StoryDecorator.js";
2
2
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["index.ts"],
4
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",
5
+ "mappings": "aAYA,WAAc",
6
6
  "names": []
7
7
  }
package/src/types.dev.js CHANGED
@@ -1 +1,2 @@
1
+ "use strict";
1
2
  //# sourceMappingURL=types.dev.js.map
package/src/types.js CHANGED
@@ -1 +1,2 @@
1
+ "use strict";
1
2
  //# sourceMappingURL=types.js.map