@universityofmaryland/web-model-library 1.0.7 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/LICENSE +5 -0
  2. package/README.md +1 -1
  3. package/dist/_types.d.ts +43 -0
  4. package/dist/_types.d.ts.map +1 -1
  5. package/dist/_virtual/index.js +1 -1
  6. package/dist/_virtual/postcss.js +1 -1
  7. package/dist/attributes/change-detection.d.ts +21 -0
  8. package/dist/attributes/change-detection.d.ts.map +1 -0
  9. package/dist/attributes/change-detection.js +60 -0
  10. package/dist/attributes/change-detection.js.map +1 -0
  11. package/dist/attributes/checks.d.ts.map +1 -1
  12. package/dist/attributes/checks.js +15 -8
  13. package/dist/attributes/checks.js.map +1 -1
  14. package/dist/attributes/config.d.ts +29 -0
  15. package/dist/attributes/config.d.ts.map +1 -0
  16. package/dist/attributes/config.js +57 -0
  17. package/dist/attributes/config.js.map +1 -0
  18. package/dist/attributes/converters.d.ts +14 -0
  19. package/dist/attributes/converters.d.ts.map +1 -0
  20. package/dist/attributes/converters.js +84 -0
  21. package/dist/attributes/converters.js.map +1 -0
  22. package/dist/attributes/errors.d.ts +16 -0
  23. package/dist/attributes/errors.d.ts.map +1 -0
  24. package/dist/attributes/errors.js +51 -0
  25. package/dist/attributes/errors.js.map +1 -0
  26. package/dist/attributes/index.d.ts +4 -0
  27. package/dist/attributes/index.d.ts.map +1 -1
  28. package/dist/attributes.js +18 -0
  29. package/dist/attributes.js.map +1 -1
  30. package/dist/index.d.ts +2 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +3 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/model/controllers.d.ts +22 -0
  35. package/dist/model/controllers.d.ts.map +1 -0
  36. package/dist/model/controllers.js +53 -0
  37. package/dist/model/controllers.js.map +1 -0
  38. package/dist/model/errors.d.ts +13 -0
  39. package/dist/model/errors.d.ts.map +1 -0
  40. package/dist/model/errors.js +23 -0
  41. package/dist/model/errors.js.map +1 -0
  42. package/dist/model/index.d.ts +54 -3
  43. package/dist/model/index.d.ts.map +1 -1
  44. package/dist/model/registration.d.ts +13 -0
  45. package/dist/model/registration.d.ts.map +1 -0
  46. package/dist/model/registration.js +83 -0
  47. package/dist/model/registration.js.map +1 -0
  48. package/dist/model/update-cycle.d.ts +12 -0
  49. package/dist/model/update-cycle.d.ts.map +1 -0
  50. package/dist/model/update-cycle.js +41 -0
  51. package/dist/model/update-cycle.js.map +1 -0
  52. package/dist/model.js +335 -55
  53. package/dist/model.js.map +1 -1
  54. package/dist/node_modules/.pnpm/nanoid@3.3.11/node_modules/nanoid/non-secure/index.js.map +1 -0
  55. package/dist/node_modules/{picocolors → .pnpm/picocolors@1.1.1/node_modules/picocolors}/picocolors.browser.js +1 -1
  56. package/dist/node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.browser.js.map +1 -0
  57. package/dist/node_modules/.pnpm/postcss-discard-duplicates@5.1.0_postcss@8.5.8/node_modules/postcss-discard-duplicates/src/index.js.map +1 -0
  58. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/at-rule.js.map +1 -0
  59. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/comment.js.map +1 -0
  60. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/container.js.map +1 -0
  61. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/css-syntax-error.js +2 -2
  62. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/css-syntax-error.js.map +1 -0
  63. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/declaration.js.map +1 -0
  64. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/document.js.map +1 -0
  65. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/fromJSON.js.map +1 -0
  66. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/input.js +2 -2
  67. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/input.js.map +1 -0
  68. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/lazy-result.js.map +1 -0
  69. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/list.js.map +1 -0
  70. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/map-generator.js +1 -1
  71. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/map-generator.js.map +1 -0
  72. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/no-work-result.js.map +1 -0
  73. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/node.js.map +1 -0
  74. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/parse.js.map +1 -0
  75. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/parser.js.map +1 -0
  76. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/postcss.js +1 -1
  77. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/postcss.js.map +1 -0
  78. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/postcss2.js.map +1 -0
  79. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/previous-map.js +1 -1
  80. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/previous-map.js.map +1 -0
  81. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/processor.js.map +1 -0
  82. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/result.js.map +1 -0
  83. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/root.js.map +1 -0
  84. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/rule.js.map +1 -0
  85. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/stringifier.js.map +1 -0
  86. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/stringify.js.map +1 -0
  87. package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/symbols.js +1 -1
  88. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/symbols.js.map +1 -0
  89. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/tokenize.js.map +1 -0
  90. package/dist/node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/warning.js.map +1 -0
  91. package/dist/slots/index.d.ts +6 -0
  92. package/dist/slots/index.d.ts.map +1 -1
  93. package/dist/slots/slot-events.d.ts +32 -0
  94. package/dist/slots/slot-events.d.ts.map +1 -0
  95. package/dist/slots/slot-events.js +83 -0
  96. package/dist/slots/slot-events.js.map +1 -0
  97. package/dist/slots/slot-query.d.ts +18 -0
  98. package/dist/slots/slot-query.d.ts.map +1 -0
  99. package/dist/slots/slot-query.js +59 -0
  100. package/dist/slots/slot-query.js.map +1 -0
  101. package/dist/slots/slot-validation.d.ts +5 -0
  102. package/dist/slots/slot-validation.d.ts.map +1 -0
  103. package/dist/slots/slot-validation.js +89 -0
  104. package/dist/slots/slot-validation.js.map +1 -0
  105. package/dist/slots.js +15 -1
  106. package/dist/slots.js.map +1 -1
  107. package/dist/testing/console.d.ts +8 -0
  108. package/dist/testing/console.d.ts.map +1 -0
  109. package/dist/testing/console.js +39 -0
  110. package/dist/testing/console.js.map +1 -0
  111. package/dist/testing/events.d.ts +11 -0
  112. package/dist/testing/events.d.ts.map +1 -0
  113. package/dist/testing/events.js +47 -0
  114. package/dist/testing/events.js.map +1 -0
  115. package/dist/testing/fixture.d.ts +10 -0
  116. package/dist/testing/fixture.d.ts.map +1 -0
  117. package/dist/testing/fixture.js +36 -0
  118. package/dist/testing/fixture.js.map +1 -0
  119. package/dist/testing/index.d.ts +8 -0
  120. package/dist/testing/index.d.ts.map +1 -0
  121. package/dist/testing/shadow.d.ts +6 -0
  122. package/dist/testing/shadow.d.ts.map +1 -0
  123. package/dist/testing/shadow.js +27 -0
  124. package/dist/testing/shadow.js.map +1 -0
  125. package/dist/testing/slots.d.ts +10 -0
  126. package/dist/testing/slots.d.ts.map +1 -0
  127. package/dist/testing/slots.js +62 -0
  128. package/dist/testing/slots.js.map +1 -0
  129. package/dist/testing.d.ts +2 -0
  130. package/dist/testing.js +26 -0
  131. package/dist/testing.js.map +1 -0
  132. package/dist/utilities/debug.d.ts +365 -0
  133. package/dist/utilities/debug.d.ts.map +1 -0
  134. package/dist/utilities/debug.js +71 -0
  135. package/dist/utilities/debug.js.map +1 -0
  136. package/dist/utilities/dom.d.ts +11 -0
  137. package/dist/utilities/dom.d.ts.map +1 -0
  138. package/dist/utilities/dom.js +57 -0
  139. package/dist/utilities/dom.js.map +1 -0
  140. package/dist/utilities/events.d.ts +22 -0
  141. package/dist/utilities/events.d.ts.map +1 -0
  142. package/dist/utilities/events.js +49 -0
  143. package/dist/utilities/events.js.map +1 -0
  144. package/dist/utilities/index.d.ts +7 -0
  145. package/dist/utilities/index.d.ts.map +1 -1
  146. package/dist/utilities/register.d.ts.map +1 -1
  147. package/dist/utilities/register.js +16 -4
  148. package/dist/utilities/register.js.map +1 -1
  149. package/dist/utilities/styles.js +1 -1
  150. package/dist/utilities/types.d.ts +10 -0
  151. package/dist/utilities/types.d.ts.map +1 -0
  152. package/dist/utilities/types.js +45 -0
  153. package/dist/utilities/types.js.map +1 -0
  154. package/dist/utilities.js +27 -1
  155. package/dist/utilities.js.map +1 -1
  156. package/package.json +21 -15
  157. package/dist/node_modules/nanoid/non-secure/index.js.map +0 -1
  158. package/dist/node_modules/picocolors/picocolors.browser.js.map +0 -1
  159. package/dist/node_modules/postcss/lib/at-rule.js.map +0 -1
  160. package/dist/node_modules/postcss/lib/comment.js.map +0 -1
  161. package/dist/node_modules/postcss/lib/container.js.map +0 -1
  162. package/dist/node_modules/postcss/lib/css-syntax-error.js.map +0 -1
  163. package/dist/node_modules/postcss/lib/declaration.js.map +0 -1
  164. package/dist/node_modules/postcss/lib/document.js.map +0 -1
  165. package/dist/node_modules/postcss/lib/fromJSON.js.map +0 -1
  166. package/dist/node_modules/postcss/lib/input.js.map +0 -1
  167. package/dist/node_modules/postcss/lib/lazy-result.js.map +0 -1
  168. package/dist/node_modules/postcss/lib/list.js.map +0 -1
  169. package/dist/node_modules/postcss/lib/map-generator.js.map +0 -1
  170. package/dist/node_modules/postcss/lib/no-work-result.js.map +0 -1
  171. package/dist/node_modules/postcss/lib/node.js.map +0 -1
  172. package/dist/node_modules/postcss/lib/parse.js.map +0 -1
  173. package/dist/node_modules/postcss/lib/parser.js.map +0 -1
  174. package/dist/node_modules/postcss/lib/postcss.js.map +0 -1
  175. package/dist/node_modules/postcss/lib/postcss2.js.map +0 -1
  176. package/dist/node_modules/postcss/lib/previous-map.js.map +0 -1
  177. package/dist/node_modules/postcss/lib/processor.js.map +0 -1
  178. package/dist/node_modules/postcss/lib/result.js.map +0 -1
  179. package/dist/node_modules/postcss/lib/root.js.map +0 -1
  180. package/dist/node_modules/postcss/lib/rule.js.map +0 -1
  181. package/dist/node_modules/postcss/lib/stringifier.js.map +0 -1
  182. package/dist/node_modules/postcss/lib/stringify.js.map +0 -1
  183. package/dist/node_modules/postcss/lib/symbols.js.map +0 -1
  184. package/dist/node_modules/postcss/lib/tokenize.js.map +0 -1
  185. package/dist/node_modules/postcss/lib/warning.js.map +0 -1
  186. package/dist/packages/model/node_modules/postcss-discard-duplicates/src/index.js.map +0 -1
  187. /package/dist/node_modules/{nanoid → .pnpm/nanoid@3.3.11/node_modules/nanoid}/non-secure/index.js +0 -0
  188. /package/dist/{packages/model → node_modules/.pnpm/postcss-discard-duplicates@5.1.0_postcss@8.5.8}/node_modules/postcss-discard-duplicates/src/index.js +0 -0
  189. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/at-rule.js +0 -0
  190. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/comment.js +0 -0
  191. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/container.js +0 -0
  192. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/declaration.js +0 -0
  193. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/document.js +0 -0
  194. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/fromJSON.js +0 -0
  195. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/lazy-result.js +0 -0
  196. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/list.js +0 -0
  197. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/no-work-result.js +0 -0
  198. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/node.js +0 -0
  199. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/parse.js +0 -0
  200. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/parser.js +0 -0
  201. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/postcss2.js +0 -0
  202. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/processor.js +0 -0
  203. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/result.js +0 -0
  204. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/root.js +0 -0
  205. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/rule.js +0 -0
  206. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/stringifier.js +0 -0
  207. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/stringify.js +0 -0
  208. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/tokenize.js +0 -0
  209. /package/dist/node_modules/{postcss → .pnpm/postcss@8.5.8/node_modules/postcss}/lib/warning.js +0 -0
@@ -1,8 +1,13 @@
1
1
  import { createCustomElement } from "../model.js";
2
+ import { registerComponent } from "../model/registration.js";
3
+ import { devWarning } from "../attributes/errors.js";
2
4
  if (!window.WebComponents) {
3
5
  window.WebComponents = {};
4
6
  }
5
7
  const registerWebComponent = ({ name, element }) => {
8
+ devWarning(
9
+ `registerWebComponent() is deprecated. Use Model.registerComponent("${name}", element, { eager: false }) instead.`
10
+ );
6
11
  if (window.customElements.get(name)) {
7
12
  return;
8
13
  }
@@ -15,14 +20,21 @@ const registerWebComponent = ({ name, element }) => {
15
20
  };
16
21
  function webComponent(config) {
17
22
  return () => {
23
+ devWarning(
24
+ `Register.webComponent() is deprecated. Use Model.registerComponent() instead.`
25
+ );
18
26
  const normalizedConfig = {
19
27
  ...config,
20
28
  attributes: config.attributes ? Array.isArray(config.attributes) ? config.attributes : [config.attributes] : void 0
21
29
  };
22
- registerWebComponent({
23
- name: config.tagName,
24
- element: createCustomElement(normalizedConfig)
25
- });
30
+ const element = createCustomElement(normalizedConfig);
31
+ try {
32
+ registerComponent(config.tagName, element, { eager: false });
33
+ } catch {
34
+ registerWebComponent({ name: config.tagName, element });
35
+ return;
36
+ }
37
+ window.WebComponents[config.tagName] = element;
26
38
  };
27
39
  }
28
40
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../source/utilities/register.ts"],"sourcesContent":["interface WebComponentConfig {\n name: string;\n element: CustomElementConstructor;\n}\n\ninterface WebComponentRegistry {\n [key: string]: CustomElementConstructor;\n}\n\ndeclare global {\n interface Window {\n WebComponents: WebComponentRegistry;\n }\n}\n\nif (!window.WebComponents) {\n window.WebComponents = {};\n}\n\nconst registerWebComponent = ({ name, element }: WebComponentConfig): void => {\n if (window.customElements.get(name)) {\n return;\n }\n\n const hasElement = document.getElementsByTagName(name).length > 0;\n if (!hasElement) {\n return;\n }\n\n window.WebComponents[name] = element;\n window.customElements.define(name, element);\n};\n\nimport type { ComponentConfiguration, ComponentRegistration } from '../_types';\nimport { createCustomElement } from '../model';\n\n/**\n * Helper to create a standard component registration function.\n * This simplifies the component export pattern and ensures consistency.\n *\n * @param config - Component configuration\n * @returns Registration function that can be called to register the component\n *\n * @example\n * ```typescript\n * export default createComponentRegistration({\n * tagName: 'umd-element-name',\n * slots,\n * createComponent,\n * attributes: Attributes.handler.common.resize((element) => element.events?.recalculate()),\n * });\n * ```\n */\nexport function webComponent(\n config: ComponentConfiguration,\n): ComponentRegistration {\n return () => {\n // Normalize attributes to always be an array\n const normalizedConfig = {\n ...config,\n attributes: config.attributes\n ? Array.isArray(config.attributes)\n ? config.attributes\n : [config.attributes]\n : undefined,\n };\n \n registerWebComponent({\n name: config.tagName,\n element: createCustomElement(normalizedConfig),\n });\n };\n}\n\nexport { registerWebComponent, type WebComponentConfig };\n"],"names":[],"mappings":";AAeA,IAAI,CAAC,OAAO,eAAe;AACzB,SAAO,gBAAgB,CAAA;AACzB;AAEA,MAAM,uBAAuB,CAAC,EAAE,MAAM,cAAwC;AAC5E,MAAI,OAAO,eAAe,IAAI,IAAI,GAAG;AACnC;AAAA,EACF;AAEA,QAAM,aAAa,SAAS,qBAAqB,IAAI,EAAE,SAAS;AAChE,MAAI,CAAC,YAAY;AACf;AAAA,EACF;AAEA,SAAO,cAAc,IAAI,IAAI;AAC7B,SAAO,eAAe,OAAO,MAAM,OAAO;AAC5C;AAsBO,SAAS,aACd,QACuB;AACvB,SAAO,MAAM;AAEX,UAAM,mBAAmB;AAAA,MACvB,GAAG;AAAA,MACH,YAAY,OAAO,aACf,MAAM,QAAQ,OAAO,UAAU,IAC7B,OAAO,aACP,CAAC,OAAO,UAAU,IACpB;AAAA,IAAA;AAGN,yBAAqB;AAAA,MACnB,MAAM,OAAO;AAAA,MACb,SAAS,oBAAoB,gBAAgB;AAAA,IAAA,CAC9C;AAAA,EACH;AACF;"}
1
+ {"version":3,"file":"register.js","sources":["../../source/utilities/register.ts"],"sourcesContent":["import type { ComponentConfiguration, ComponentRegistration } from '../_types';\nimport { createCustomElement } from '../model';\nimport { registerComponent } from '../model/registration';\nimport { devWarning } from '../attributes/errors';\n\ninterface WebComponentConfig {\n name: string;\n element: CustomElementConstructor;\n}\n\ninterface WebComponentRegistry {\n [key: string]: CustomElementConstructor;\n}\n\ndeclare global {\n interface Window {\n WebComponents: WebComponentRegistry;\n }\n}\n\nif (!window.WebComponents) {\n window.WebComponents = {};\n}\n\n/**\n * @deprecated Use `Model.registerComponent()` from `@universityofmaryland/web-model-library` instead.\n */\nconst registerWebComponent = ({ name, element }: WebComponentConfig): void => {\n devWarning(\n `registerWebComponent() is deprecated. Use Model.registerComponent(\"${name}\", element, { eager: false }) instead.`,\n );\n\n if (window.customElements.get(name)) {\n return;\n }\n\n const hasElement = document.getElementsByTagName(name).length > 0;\n if (!hasElement) {\n return;\n }\n\n window.WebComponents[name] = element;\n window.customElements.define(name, element);\n};\n\n/**\n * Helper to create a standard component registration function.\n * This simplifies the component export pattern and ensures consistency.\n *\n * @deprecated Use `Model.registerComponent()` from `@universityofmaryland/web-model-library` instead.\n *\n * @param config - Component configuration\n * @returns Registration function that can be called to register the component\n *\n * @example\n * ```typescript\n * export default createComponentRegistration({\n * tagName: 'umd-element-name',\n * slots,\n * createComponent,\n * attributes: Attributes.handler.common.resize((element) => element.events?.recalculate()),\n * });\n * ```\n */\nexport function webComponent(\n config: ComponentConfiguration,\n): ComponentRegistration {\n return () => {\n devWarning(\n `Register.webComponent() is deprecated. Use Model.registerComponent() instead.`,\n );\n\n // Normalize attributes to always be an array\n const normalizedConfig = {\n ...config,\n attributes: config.attributes\n ? Array.isArray(config.attributes)\n ? config.attributes\n : [config.attributes]\n : undefined,\n };\n\n const element = createCustomElement(normalizedConfig);\n\n try {\n registerComponent(config.tagName, element, { eager: false });\n } catch {\n // Fall back to legacy behavior on validation errors\n // to preserve backwards compatibility during migration\n registerWebComponent({ name: config.tagName, element });\n return;\n }\n\n // Maintain legacy global registry for backwards compat\n window.WebComponents[config.tagName] = element;\n };\n}\n\nexport { registerWebComponent, type WebComponentConfig };\n"],"names":[],"mappings":";;;AAoBA,IAAI,CAAC,OAAO,eAAe;AACzB,SAAO,gBAAgB,CAAA;AACzB;AAKA,MAAM,uBAAuB,CAAC,EAAE,MAAM,cAAwC;AAC5E;AAAA,IACE,sEAAsE,IAAI;AAAA,EAAA;AAG5E,MAAI,OAAO,eAAe,IAAI,IAAI,GAAG;AACnC;AAAA,EACF;AAEA,QAAM,aAAa,SAAS,qBAAqB,IAAI,EAAE,SAAS;AAChE,MAAI,CAAC,YAAY;AACf;AAAA,EACF;AAEA,SAAO,cAAc,IAAI,IAAI;AAC7B,SAAO,eAAe,OAAO,MAAM,OAAO;AAC5C;AAqBO,SAAS,aACd,QACuB;AACvB,SAAO,MAAM;AACX;AAAA,MACE;AAAA,IAAA;AAIF,UAAM,mBAAmB;AAAA,MACvB,GAAG;AAAA,MACH,YAAY,OAAO,aACf,MAAM,QAAQ,OAAO,UAAU,IAC7B,OAAO,aACP,CAAC,OAAO,UAAU,IACpB;AAAA,IAAA;AAGN,UAAM,UAAU,oBAAoB,gBAAgB;AAEpD,QAAI;AACF,wBAAkB,OAAO,SAAS,SAAS,EAAE,OAAO,OAAO;AAAA,IAC7D,QAAQ;AAGN,2BAAqB,EAAE,MAAM,OAAO,SAAS,SAAS;AACtD;AAAA,IACF;AAGA,WAAO,cAAc,OAAO,OAAO,IAAI;AAAA,EACzC;AACF;"}
@@ -1,4 +1,4 @@
1
- import "../node_modules/postcss/lib/postcss.js";
1
+ import "../node_modules/.pnpm/postcss@8.5.8/node_modules/postcss/lib/postcss.js";
2
2
  import { token } from "@universityofmaryland/web-styles-library";
3
3
  import postcssDuplicates from "../_virtual/index.js";
4
4
  import postcss from "../_virtual/postcss.js";
@@ -0,0 +1,10 @@
1
+ export declare function isElement(value: unknown): value is Element;
2
+ export declare function isHTMLElement(value: unknown): value is HTMLElement;
3
+ export declare function isCustomElement(element: Element): boolean;
4
+ export declare function isShadowRoot(value: unknown): value is ShadowRoot;
5
+ export declare function isSlotElement(value: unknown): value is HTMLSlotElement;
6
+ export declare function isTemplateElement(value: unknown): value is HTMLTemplateElement;
7
+ export declare function assertElement(value: unknown, message?: string): asserts value is Element;
8
+ export declare function assertHTMLElement(value: unknown, message?: string): asserts value is HTMLElement;
9
+ export declare function assertShadowRoot(value: unknown, message?: string): asserts value is ShadowRoot;
10
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../source/utilities/types.ts"],"names":[],"mappings":"AAAA,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAE1D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAEhE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAEtE;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,mBAAmB,CAE9B;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,KAAK,IAAI,OAAO,CAI1B;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,KAAK,IAAI,WAAW,CAI9B;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,KAAK,IAAI,UAAU,CAI7B"}
@@ -0,0 +1,45 @@
1
+ function isElement(value) {
2
+ return value instanceof Element;
3
+ }
4
+ function isHTMLElement(value) {
5
+ return value instanceof HTMLElement;
6
+ }
7
+ function isCustomElement(element) {
8
+ return customElements.get(element.tagName.toLowerCase()) !== void 0;
9
+ }
10
+ function isShadowRoot(value) {
11
+ return value instanceof ShadowRoot;
12
+ }
13
+ function isSlotElement(value) {
14
+ return value instanceof HTMLSlotElement;
15
+ }
16
+ function isTemplateElement(value) {
17
+ return value instanceof HTMLTemplateElement;
18
+ }
19
+ function assertElement(value, message) {
20
+ if (!isElement(value)) {
21
+ throw new TypeError(message ?? `Expected Element, got ${typeof value}`);
22
+ }
23
+ }
24
+ function assertHTMLElement(value, message) {
25
+ if (!isHTMLElement(value)) {
26
+ throw new TypeError(message ?? `Expected HTMLElement, got ${typeof value}`);
27
+ }
28
+ }
29
+ function assertShadowRoot(value, message) {
30
+ if (!isShadowRoot(value)) {
31
+ throw new TypeError(message ?? `Expected ShadowRoot, got ${typeof value}`);
32
+ }
33
+ }
34
+ export {
35
+ assertElement,
36
+ assertHTMLElement,
37
+ assertShadowRoot,
38
+ isCustomElement,
39
+ isElement,
40
+ isHTMLElement,
41
+ isShadowRoot,
42
+ isSlotElement,
43
+ isTemplateElement
44
+ };
45
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../source/utilities/types.ts"],"sourcesContent":["export function isElement(value: unknown): value is Element {\n return value instanceof Element;\n}\n\nexport function isHTMLElement(value: unknown): value is HTMLElement {\n return value instanceof HTMLElement;\n}\n\nexport function isCustomElement(element: Element): boolean {\n return customElements.get(element.tagName.toLowerCase()) !== undefined;\n}\n\nexport function isShadowRoot(value: unknown): value is ShadowRoot {\n return value instanceof ShadowRoot;\n}\n\nexport function isSlotElement(value: unknown): value is HTMLSlotElement {\n return value instanceof HTMLSlotElement;\n}\n\nexport function isTemplateElement(\n value: unknown,\n): value is HTMLTemplateElement {\n return value instanceof HTMLTemplateElement;\n}\n\nexport function assertElement(\n value: unknown,\n message?: string,\n): asserts value is Element {\n if (!isElement(value)) {\n throw new TypeError(message ?? `Expected Element, got ${typeof value}`);\n }\n}\n\nexport function assertHTMLElement(\n value: unknown,\n message?: string,\n): asserts value is HTMLElement {\n if (!isHTMLElement(value)) {\n throw new TypeError(message ?? `Expected HTMLElement, got ${typeof value}`);\n }\n}\n\nexport function assertShadowRoot(\n value: unknown,\n message?: string,\n): asserts value is ShadowRoot {\n if (!isShadowRoot(value)) {\n throw new TypeError(message ?? `Expected ShadowRoot, got ${typeof value}`);\n }\n}\n"],"names":[],"mappings":"AAAO,SAAS,UAAU,OAAkC;AAC1D,SAAO,iBAAiB;AAC1B;AAEO,SAAS,cAAc,OAAsC;AAClE,SAAO,iBAAiB;AAC1B;AAEO,SAAS,gBAAgB,SAA2B;AACzD,SAAO,eAAe,IAAI,QAAQ,QAAQ,YAAA,CAAa,MAAM;AAC/D;AAEO,SAAS,aAAa,OAAqC;AAChE,SAAO,iBAAiB;AAC1B;AAEO,SAAS,cAAc,OAA0C;AACtE,SAAO,iBAAiB;AAC1B;AAEO,SAAS,kBACd,OAC8B;AAC9B,SAAO,iBAAiB;AAC1B;AAEO,SAAS,cACd,OACA,SAC0B;AAC1B,MAAI,CAAC,UAAU,KAAK,GAAG;AACrB,UAAM,IAAI,UAAU,WAAW,yBAAyB,OAAO,KAAK,EAAE;AAAA,EACxE;AACF;AAEO,SAAS,kBACd,OACA,SAC8B;AAC9B,MAAI,CAAC,cAAc,KAAK,GAAG;AACzB,UAAM,IAAI,UAAU,WAAW,6BAA6B,OAAO,KAAK,EAAE;AAAA,EAC5E;AACF;AAEO,SAAS,iBACd,OACA,SAC6B;AAC7B,MAAI,CAAC,aAAa,KAAK,GAAG;AACxB,UAAM,IAAI,UAAU,WAAW,4BAA4B,OAAO,KAAK,EAAE;AAAA,EAC3E;AACF;"}
package/dist/utilities.js CHANGED
@@ -1,11 +1,37 @@
1
1
  import { registerWebComponent, webComponent } from "./utilities/register.js";
2
2
  import { CommonLifecycleHooks, hooks } from "./utilities/lifecycle.js";
3
3
  import { stylesTemplate } from "./utilities/styles.js";
4
+ import { createLogger, isDev, withLifecycleDebug } from "./utilities/debug.js";
5
+ import { createCustomEvent, createEventListener, defineEvents, delegate, dispatchCustomEvent } from "./utilities/events.js";
6
+ import { assertElement, assertHTMLElement, assertShadowRoot, isCustomElement, isElement, isHTMLElement, isShadowRoot, isSlotElement, isTemplateElement } from "./utilities/types.js";
7
+ import { closestAcrossShadow, createIntersectionObserver, createMutationObserver, createResizeObserver, querySlotted } from "./utilities/dom.js";
4
8
  export {
5
9
  CommonLifecycleHooks,
6
10
  stylesTemplate as StylesTemplate,
11
+ assertElement,
12
+ assertHTMLElement,
13
+ assertShadowRoot,
14
+ closestAcrossShadow,
15
+ createCustomEvent,
16
+ createEventListener,
17
+ createIntersectionObserver,
18
+ createLogger,
19
+ createMutationObserver,
20
+ createResizeObserver,
21
+ defineEvents,
22
+ delegate,
23
+ dispatchCustomEvent,
7
24
  hooks,
25
+ isCustomElement,
26
+ isDev,
27
+ isElement,
28
+ isHTMLElement,
29
+ isShadowRoot,
30
+ isSlotElement,
31
+ isTemplateElement,
32
+ querySlotted,
8
33
  registerWebComponent,
9
- webComponent
34
+ webComponent,
35
+ withLifecycleDebug
10
36
  };
11
37
  //# sourceMappingURL=utilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
1
+ {"version":3,"file":"utilities.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@universityofmaryland/web-model-library",
3
- "version": "1.0.7",
3
+ "version": "1.1.0",
4
4
  "description": "UMD Web Component Model - Base utilities for building web components",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -31,6 +31,11 @@
31
31
  "types": "./dist/utilities.d.ts",
32
32
  "import": "./dist/utilities.js",
33
33
  "default": "./dist/utilities.js"
34
+ },
35
+ "./testing": {
36
+ "types": "./dist/testing.d.ts",
37
+ "import": "./dist/testing.js",
38
+ "default": "./dist/testing.js"
34
39
  }
35
40
  },
36
41
  "license": "MIT",
@@ -42,18 +47,6 @@
42
47
  "access": "public",
43
48
  "registry": "https://registry.npmjs.org/"
44
49
  },
45
- "scripts": {
46
- "clean": "rm -rf dist build",
47
- "docs": "npx typedoc --options ./typedoc.json",
48
- "prebuild": "node ../../scripts/update-badges.js",
49
- "release": "npm run test && npm run build && npm publish --access public",
50
- "build": "vite build",
51
- "dev": "vite build --watch",
52
- "start": "npm run dev",
53
- "test": "jest",
54
- "test:watch": "jest --watch",
55
- "test:coverage": "jest --coverage"
56
- },
57
50
  "dependencies": {
58
51
  "postcss": "^8.4.31",
59
52
  "postcss-discard-duplicates": "^5.1.0"
@@ -63,9 +56,22 @@
63
56
  },
64
57
  "devDependencies": {
65
58
  "@vitejs/plugin-legacy": "^7.2.1",
66
- "typescript": "^5.8.2",
59
+ "typescript": "~5.8.2",
67
60
  "vite": "^7.1.4",
68
61
  "vite-plugin-checker": "^0.10.3",
69
62
  "vite-plugin-dts": "^4.5.4"
63
+ },
64
+ "scripts": {
65
+ "clean": "rm -rf dist",
66
+ "docs": "npx typedoc --options ./typedoc.json",
67
+ "prebuild": "node ../../scripts/update-badges.js",
68
+ "release": "pnpm run test && pnpm run build && pnpm publish --access public",
69
+ "build": "vite build",
70
+ "dev": "vite build --watch",
71
+ "start": "pnpm run dev",
72
+ "test": "jest",
73
+ "test:watch": "jest --watch",
74
+ "test:coverage": "jest --coverage",
75
+ "test:snapshot": "jest --updateSnapshot"
70
76
  }
71
- }
77
+ }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../node_modules/nanoid/non-secure/index.cjs"],"sourcesContent":["// This alphabet uses `A-Za-z0-9_-` symbols.\n// The order of characters is optimized for better gzip and brotli compression.\n// References to the same file (works both for gzip and brotli):\n// `'use`, `andom`, and `rict'`\n// References to the brotli default dictionary:\n// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf`\nlet urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\n\nlet nanoid = (size = 21) => {\n let id = ''\n // A compact alternative for `for (var i = 0; i < step; i++)`.\n let i = size | 0\n while (i--) {\n // `| 0` is more compact and faster than `Math.floor()`.\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\n\nmodule.exports = { nanoid, customAlphabet }\n"],"names":[],"mappings":";;;;;AAMA,MAAI,cACF;AAEF,MAAI,iBAAiB,CAAC,UAAU,cAAc,OAAO;AACnD,WAAO,CAAC,OAAO,gBAAgB;AAC7B,UAAI,KAAK;AAET,UAAI,IAAI,OAAO;AACf,aAAO,KAAK;AAEV,cAAM,SAAU,KAAK,OAAM,IAAK,SAAS,SAAU,CAAC;AAAA,MAC1D;AACI,aAAO;AAAA,IACX;AAAA,EACA;AAEA,MAAI,SAAS,CAAC,OAAO,OAAO;AAC1B,QAAI,KAAK;AAET,QAAI,IAAI,OAAO;AACf,WAAO,KAAK;AAEV,YAAM,YAAa,KAAK,OAAM,IAAK,KAAM,CAAC;AAAA,IAC9C;AACE,WAAO;AAAA,EACT;AAEA,cAAiB,EAAE,QAAQ,eAAc;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"picocolors.browser.js","sources":["../../../../../node_modules/picocolors/picocolors.browser.js"],"sourcesContent":["var x=String;\nvar create=function() {return {isColorSupported:false,reset:x,bold:x,dim:x,italic:x,underline:x,inverse:x,hidden:x,strikethrough:x,black:x,red:x,green:x,yellow:x,blue:x,magenta:x,cyan:x,white:x,gray:x,bgBlack:x,bgRed:x,bgGreen:x,bgYellow:x,bgBlue:x,bgMagenta:x,bgCyan:x,bgWhite:x,blackBright:x,redBright:x,greenBright:x,yellowBright:x,blueBright:x,magentaBright:x,cyanBright:x,whiteBright:x,bgBlackBright:x,bgRedBright:x,bgGreenBright:x,bgYellowBright:x,bgBlueBright:x,bgMagentaBright:x,bgCyanBright:x,bgWhiteBright:x}};\nmodule.exports=create();\nmodule.exports.createColors = create;\n"],"names":["picocolors_browserModule"],"mappings":";;;;;AAAA,MAAI,IAAE;AACN,MAAI,SAAO,WAAW;AAAC,WAAO,EAAC,kBAAiB,OAAM,OAAM,GAAE,MAAK,GAAE,KAAI,GAAE,QAAO,GAAE,WAAU,GAAE,SAAQ,GAAE,QAAO,GAAE,eAAc,GAAE,OAAM,GAAE,KAAI,GAAE,OAAM,GAAE,QAAO,GAAE,MAAK,GAAE,SAAQ,GAAE,MAAK,GAAE,OAAM,GAAE,MAAK,GAAE,SAAQ,GAAE,OAAM,GAAE,SAAQ,GAAE,UAAS,GAAE,QAAO,GAAE,WAAU,GAAE,QAAO,GAAE,SAAQ,GAAE,aAAY,GAAE,WAAU,GAAE,aAAY,GAAE,cAAa,GAAE,YAAW,GAAE,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,eAAc,GAAE,aAAY,GAAE,eAAc,GAAE,gBAAe,GAAE,cAAa,GAAE,iBAAgB,GAAE,cAAa,GAAE,eAAc,EAAC;AAAA,EAAC;AACtgBA,qBAAA,UAAe,OAAM;AACrBA,qBAAA,QAAA,eAA8B;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"at-rule.js","sources":["../../../../../../node_modules/postcss/lib/at-rule.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\n\nclass AtRule extends Container {\n constructor(defaults) {\n super(defaults)\n this.type = 'atrule'\n }\n\n append(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.append(...children)\n }\n\n prepend(...children) {\n if (!this.proxyOf.nodes) this.nodes = []\n return super.prepend(...children)\n }\n}\n\nmodule.exports = AtRule\nAtRule.default = AtRule\n\nContainer.registerAtRule(AtRule)\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,YAAYA,iBAAA;AAAA,EAEhB,MAAM,eAAe,UAAU;AAAA,IAC7B,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,OAAO;AAAA,IAChB;AAAA,IAEE,UAAU,UAAU;AAClB,UAAI,CAAC,KAAK,QAAQ,MAAO,MAAK,QAAQ,CAAA;AACtC,aAAO,MAAM,OAAO,GAAG,QAAQ;AAAA,IACnC;AAAA,IAEE,WAAW,UAAU;AACnB,UAAI,CAAC,KAAK,QAAQ,MAAO,MAAK,QAAQ,CAAA;AACtC,aAAO,MAAM,QAAQ,GAAG,QAAQ;AAAA,IACpC;AAAA,EACA;AAEA,WAAiB;AACjB,SAAO,UAAU;AAEjB,YAAU,eAAe,MAAM;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"comment.js","sources":["../../../../../../node_modules/postcss/lib/comment.js"],"sourcesContent":["'use strict'\n\nlet Node = require('./node')\n\nclass Comment extends Node {\n constructor(defaults) {\n super(defaults)\n this.type = 'comment'\n }\n}\n\nmodule.exports = Comment\nComment.default = Comment\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,OAAOA,YAAA;AAAA,EAEX,MAAM,gBAAgB,KAAK;AAAA,IACzB,YAAY,UAAU;AACpB,YAAM,QAAQ;AACd,WAAK,OAAO;AAAA,IAChB;AAAA,EACA;AAEA,YAAiB;AACjB,UAAQ,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"container.js","sources":["../../../../../../node_modules/postcss/lib/container.js"],"sourcesContent":["'use strict'\n\nlet Comment = require('./comment')\nlet Declaration = require('./declaration')\nlet Node = require('./node')\nlet { isClean, my } = require('./symbols')\n\nlet AtRule, parse, Root, Rule\n\nfunction cleanSource(nodes) {\n return nodes.map(i => {\n if (i.nodes) i.nodes = cleanSource(i.nodes)\n delete i.source\n return i\n })\n}\n\nfunction markTreeDirty(node) {\n node[isClean] = false\n if (node.proxyOf.nodes) {\n for (let i of node.proxyOf.nodes) {\n markTreeDirty(i)\n }\n }\n}\n\nclass Container extends Node {\n get first() {\n if (!this.proxyOf.nodes) return undefined\n return this.proxyOf.nodes[0]\n }\n\n get last() {\n if (!this.proxyOf.nodes) return undefined\n return this.proxyOf.nodes[this.proxyOf.nodes.length - 1]\n }\n\n append(...children) {\n for (let child of children) {\n let nodes = this.normalize(child, this.last)\n for (let node of nodes) this.proxyOf.nodes.push(node)\n }\n\n this.markDirty()\n\n return this\n }\n\n cleanRaws(keepBetween) {\n super.cleanRaws(keepBetween)\n if (this.nodes) {\n for (let node of this.nodes) node.cleanRaws(keepBetween)\n }\n }\n\n each(callback) {\n if (!this.proxyOf.nodes) return undefined\n let iterator = this.getIterator()\n\n let index, result\n while (this.indexes[iterator] < this.proxyOf.nodes.length) {\n index = this.indexes[iterator]\n result = callback(this.proxyOf.nodes[index], index)\n if (result === false) break\n\n this.indexes[iterator] += 1\n }\n\n delete this.indexes[iterator]\n return result\n }\n\n every(condition) {\n return this.nodes.every(condition)\n }\n\n getIterator() {\n if (!this.lastEach) this.lastEach = 0\n if (!this.indexes) this.indexes = {}\n\n this.lastEach += 1\n let iterator = this.lastEach\n this.indexes[iterator] = 0\n\n return iterator\n }\n\n getProxyProcessor() {\n return {\n get(node, prop) {\n if (prop === 'proxyOf') {\n return node\n } else if (!node[prop]) {\n return node[prop]\n } else if (\n prop === 'each' ||\n (typeof prop === 'string' && prop.startsWith('walk'))\n ) {\n return (...args) => {\n return node[prop](\n ...args.map(i => {\n if (typeof i === 'function') {\n return (child, index) => i(child.toProxy(), index)\n } else {\n return i\n }\n })\n )\n }\n } else if (prop === 'every' || prop === 'some') {\n return cb => {\n return node[prop]((child, ...other) =>\n cb(child.toProxy(), ...other)\n )\n }\n } else if (prop === 'root') {\n return () => node.root().toProxy()\n } else if (prop === 'nodes') {\n return node.nodes.map(i => i.toProxy())\n } else if (prop === 'first' || prop === 'last') {\n return node[prop].toProxy()\n } else {\n return node[prop]\n }\n },\n\n set(node, prop, value) {\n if (node[prop] === value) return true\n node[prop] = value\n if (prop === 'name' || prop === 'params' || prop === 'selector') {\n node.markDirty()\n }\n return true\n }\n }\n }\n\n index(child) {\n if (typeof child === 'number') return child\n if (child.proxyOf) child = child.proxyOf\n return this.proxyOf.nodes.indexOf(child)\n }\n\n insertAfter(exist, add) {\n let existIndex = this.index(exist)\n let nodes = this.normalize(add, this.proxyOf.nodes[existIndex]).reverse()\n existIndex = this.index(exist)\n for (let node of nodes) this.proxyOf.nodes.splice(existIndex + 1, 0, node)\n\n let index\n for (let id in this.indexes) {\n index = this.indexes[id]\n if (existIndex < index) {\n this.indexes[id] = index + nodes.length\n }\n }\n\n this.markDirty()\n\n return this\n }\n\n insertBefore(exist, add) {\n let existIndex = this.index(exist)\n let type = existIndex === 0 ? 'prepend' : false\n let nodes = this.normalize(\n add,\n this.proxyOf.nodes[existIndex],\n type\n ).reverse()\n existIndex = this.index(exist)\n for (let node of nodes) this.proxyOf.nodes.splice(existIndex, 0, node)\n\n let index\n for (let id in this.indexes) {\n index = this.indexes[id]\n if (existIndex <= index) {\n this.indexes[id] = index + nodes.length\n }\n }\n\n this.markDirty()\n\n return this\n }\n\n normalize(nodes, sample) {\n if (typeof nodes === 'string') {\n nodes = cleanSource(parse(nodes).nodes)\n } else if (typeof nodes === 'undefined') {\n nodes = []\n } else if (Array.isArray(nodes)) {\n nodes = nodes.slice(0)\n for (let i of nodes) {\n if (i.parent) i.parent.removeChild(i, 'ignore')\n }\n } else if (nodes.type === 'root' && this.type !== 'document') {\n nodes = nodes.nodes.slice(0)\n for (let i of nodes) {\n if (i.parent) i.parent.removeChild(i, 'ignore')\n }\n } else if (nodes.type) {\n nodes = [nodes]\n } else if (nodes.prop) {\n if (typeof nodes.value === 'undefined') {\n throw new Error('Value field is missed in node creation')\n } else if (typeof nodes.value !== 'string') {\n nodes.value = String(nodes.value)\n }\n nodes = [new Declaration(nodes)]\n } else if (nodes.selector || nodes.selectors) {\n nodes = [new Rule(nodes)]\n } else if (nodes.name) {\n nodes = [new AtRule(nodes)]\n } else if (nodes.text) {\n nodes = [new Comment(nodes)]\n } else {\n throw new Error('Unknown node type in node creation')\n }\n\n let processed = nodes.map(i => {\n /* c8 ignore next */\n if (!i[my]) Container.rebuild(i)\n i = i.proxyOf\n if (i.parent) i.parent.removeChild(i)\n if (i[isClean]) markTreeDirty(i)\n\n if (!i.raws) i.raws = {}\n if (typeof i.raws.before === 'undefined') {\n if (sample && typeof sample.raws.before !== 'undefined') {\n i.raws.before = sample.raws.before.replace(/\\S/g, '')\n }\n }\n i.parent = this.proxyOf\n return i\n })\n\n return processed\n }\n\n prepend(...children) {\n children = children.reverse()\n for (let child of children) {\n let nodes = this.normalize(child, this.first, 'prepend').reverse()\n for (let node of nodes) this.proxyOf.nodes.unshift(node)\n for (let id in this.indexes) {\n this.indexes[id] = this.indexes[id] + nodes.length\n }\n }\n\n this.markDirty()\n\n return this\n }\n\n push(child) {\n child.parent = this\n this.proxyOf.nodes.push(child)\n return this\n }\n\n removeAll() {\n for (let node of this.proxyOf.nodes) node.parent = undefined\n this.proxyOf.nodes = []\n\n this.markDirty()\n\n return this\n }\n\n removeChild(child) {\n child = this.index(child)\n this.proxyOf.nodes[child].parent = undefined\n this.proxyOf.nodes.splice(child, 1)\n\n let index\n for (let id in this.indexes) {\n index = this.indexes[id]\n if (index >= child) {\n this.indexes[id] = index - 1\n }\n }\n\n this.markDirty()\n\n return this\n }\n\n replaceValues(pattern, opts, callback) {\n if (!callback) {\n callback = opts\n opts = {}\n }\n\n this.walkDecls(decl => {\n if (opts.props && !opts.props.includes(decl.prop)) return\n if (opts.fast && !decl.value.includes(opts.fast)) return\n\n decl.value = decl.value.replace(pattern, callback)\n })\n\n this.markDirty()\n\n return this\n }\n\n some(condition) {\n return this.nodes.some(condition)\n }\n\n walk(callback) {\n return this.each((child, i) => {\n let result\n try {\n result = callback(child, i)\n } catch (e) {\n throw child.addToError(e)\n }\n if (result !== false && child.walk) {\n result = child.walk(callback)\n }\n\n return result\n })\n }\n\n walkAtRules(name, callback) {\n if (!callback) {\n callback = name\n return this.walk((child, i) => {\n if (child.type === 'atrule') {\n return callback(child, i)\n }\n })\n }\n if (name instanceof RegExp) {\n return this.walk((child, i) => {\n if (child.type === 'atrule' && name.test(child.name)) {\n return callback(child, i)\n }\n })\n }\n return this.walk((child, i) => {\n if (child.type === 'atrule' && child.name === name) {\n return callback(child, i)\n }\n })\n }\n\n walkComments(callback) {\n return this.walk((child, i) => {\n if (child.type === 'comment') {\n return callback(child, i)\n }\n })\n }\n\n walkDecls(prop, callback) {\n if (!callback) {\n callback = prop\n return this.walk((child, i) => {\n if (child.type === 'decl') {\n return callback(child, i)\n }\n })\n }\n if (prop instanceof RegExp) {\n return this.walk((child, i) => {\n if (child.type === 'decl' && prop.test(child.prop)) {\n return callback(child, i)\n }\n })\n }\n return this.walk((child, i) => {\n if (child.type === 'decl' && child.prop === prop) {\n return callback(child, i)\n }\n })\n }\n\n walkRules(selector, callback) {\n if (!callback) {\n callback = selector\n\n return this.walk((child, i) => {\n if (child.type === 'rule') {\n return callback(child, i)\n }\n })\n }\n if (selector instanceof RegExp) {\n return this.walk((child, i) => {\n if (child.type === 'rule' && selector.test(child.selector)) {\n return callback(child, i)\n }\n })\n }\n return this.walk((child, i) => {\n if (child.type === 'rule' && child.selector === selector) {\n return callback(child, i)\n }\n })\n }\n}\n\nContainer.registerParse = dependant => {\n parse = dependant\n}\n\nContainer.registerRule = dependant => {\n Rule = dependant\n}\n\nContainer.registerAtRule = dependant => {\n AtRule = dependant\n}\n\nContainer.registerRoot = dependant => {\n Root = dependant\n}\n\nmodule.exports = Container\nContainer.default = Container\n\n/* c8 ignore start */\nContainer.rebuild = node => {\n if (node.type === 'atrule') {\n Object.setPrototypeOf(node, AtRule.prototype)\n } else if (node.type === 'rule') {\n Object.setPrototypeOf(node, Rule.prototype)\n } else if (node.type === 'decl') {\n Object.setPrototypeOf(node, Declaration.prototype)\n } else if (node.type === 'comment') {\n Object.setPrototypeOf(node, Comment.prototype)\n } else if (node.type === 'root') {\n Object.setPrototypeOf(node, Root.prototype)\n }\n\n node[my] = true\n\n if (node.nodes) {\n node.nodes.forEach(child => {\n Container.rebuild(child)\n })\n }\n}\n/* c8 ignore stop */\n"],"names":["require$$0","require$$1","require$$2","require$$3"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"css-syntax-error.js","sources":["../../../../../../node_modules/postcss/lib/css-syntax-error.js"],"sourcesContent":["'use strict'\n\nlet pico = require('picocolors')\n\nlet terminalHighlight = require('./terminal-highlight')\n\nclass CssSyntaxError extends Error {\n constructor(message, line, column, source, file, plugin) {\n super(message)\n this.name = 'CssSyntaxError'\n this.reason = message\n\n if (file) {\n this.file = file\n }\n if (source) {\n this.source = source\n }\n if (plugin) {\n this.plugin = plugin\n }\n if (typeof line !== 'undefined' && typeof column !== 'undefined') {\n if (typeof line === 'number') {\n this.line = line\n this.column = column\n } else {\n this.line = line.line\n this.column = line.column\n this.endLine = column.line\n this.endColumn = column.column\n }\n }\n\n this.setMessage()\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, CssSyntaxError)\n }\n }\n\n setMessage() {\n this.message = this.plugin ? this.plugin + ': ' : ''\n this.message += this.file ? this.file : '<css input>'\n if (typeof this.line !== 'undefined') {\n this.message += ':' + this.line + ':' + this.column\n }\n this.message += ': ' + this.reason\n }\n\n showSourceCode(color) {\n if (!this.source) return ''\n\n let css = this.source\n if (color == null) color = pico.isColorSupported\n\n let aside = text => text\n let mark = text => text\n let highlight = text => text\n if (color) {\n let { bold, gray, red } = pico.createColors(true)\n mark = text => bold(red(text))\n aside = text => gray(text)\n if (terminalHighlight) {\n highlight = text => terminalHighlight(text)\n }\n }\n\n let lines = css.split(/\\r?\\n/)\n let start = Math.max(this.line - 3, 0)\n let end = Math.min(this.line + 2, lines.length)\n let maxWidth = String(end).length\n\n return lines\n .slice(start, end)\n .map((line, index) => {\n let number = start + 1 + index\n let gutter = ' ' + (' ' + number).slice(-maxWidth) + ' | '\n if (number === this.line) {\n if (line.length > 160) {\n let padding = 20\n let subLineStart = Math.max(0, this.column - padding)\n let subLineEnd = Math.max(\n this.column + padding,\n this.endColumn + padding\n )\n let subLine = line.slice(subLineStart, subLineEnd)\n\n let spacing =\n aside(gutter.replace(/\\d/g, ' ')) +\n line\n .slice(0, Math.min(this.column - 1, padding - 1))\n .replace(/[^\\t]/g, ' ')\n\n return (\n mark('>') +\n aside(gutter) +\n highlight(subLine) +\n '\\n ' +\n spacing +\n mark('^')\n )\n }\n\n let spacing =\n aside(gutter.replace(/\\d/g, ' ')) +\n line.slice(0, this.column - 1).replace(/[^\\t]/g, ' ')\n\n return (\n mark('>') +\n aside(gutter) +\n highlight(line) +\n '\\n ' +\n spacing +\n mark('^')\n )\n }\n\n return ' ' + aside(gutter) + highlight(line)\n })\n .join('\\n')\n }\n\n toString() {\n let code = this.showSourceCode()\n if (code) {\n code = '\\n\\n' + code + '\\n'\n }\n return this.name + ': ' + this.message + code\n }\n}\n\nmodule.exports = CssSyntaxError\nCssSyntaxError.default = CssSyntaxError\n"],"names":["require$$0","require$$1","spacing"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"declaration.js","sources":["../../../../../../node_modules/postcss/lib/declaration.js"],"sourcesContent":["'use strict'\n\nlet Node = require('./node')\n\nclass Declaration extends Node {\n get variable() {\n return this.prop.startsWith('--') || this.prop[0] === '$'\n }\n\n constructor(defaults) {\n if (\n defaults &&\n typeof defaults.value !== 'undefined' &&\n typeof defaults.value !== 'string'\n ) {\n defaults = { ...defaults, value: String(defaults.value) }\n }\n super(defaults)\n this.type = 'decl'\n }\n}\n\nmodule.exports = Declaration\nDeclaration.default = Declaration\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,OAAOA,YAAA;AAAA,EAEX,MAAM,oBAAoB,KAAK;AAAA,IAC7B,IAAI,WAAW;AACb,aAAO,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM;AAAA,IAC1D;AAAA,IAEE,YAAY,UAAU;AACpB,UACE,YACA,OAAO,SAAS,UAAU,eAC1B,OAAO,SAAS,UAAU,UAC1B;AACA,mBAAW,EAAE,GAAG,UAAU,OAAO,OAAO,SAAS,KAAK,EAAC;AAAA,MAC7D;AACI,YAAM,QAAQ;AACd,WAAK,OAAO;AAAA,IAChB;AAAA,EACA;AAEA,gBAAiB;AACjB,cAAY,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"document.js","sources":["../../../../../../node_modules/postcss/lib/document.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\n\nlet LazyResult, Processor\n\nclass Document extends Container {\n constructor(defaults) {\n // type needs to be passed to super, otherwise child roots won't be normalized correctly\n super({ type: 'document', ...defaults })\n\n if (!this.nodes) {\n this.nodes = []\n }\n }\n\n toResult(opts = {}) {\n let lazy = new LazyResult(new Processor(), this, opts)\n\n return lazy.stringify()\n }\n}\n\nDocument.registerLazyResult = dependant => {\n LazyResult = dependant\n}\n\nDocument.registerProcessor = dependant => {\n Processor = dependant\n}\n\nmodule.exports = Document\nDocument.default = Document\n"],"names":["require$$0"],"mappings":";;;;;;AAEA,MAAI,YAAYA,iBAAA;AAEhB,MAAI,YAAY;AAAA,EAEhB,MAAM,iBAAiB,UAAU;AAAA,IAC/B,YAAY,UAAU;AAEpB,YAAM,EAAE,MAAM,YAAY,GAAG,SAAQ,CAAE;AAEvC,UAAI,CAAC,KAAK,OAAO;AACf,aAAK,QAAQ,CAAA;AAAA,MACnB;AAAA,IACA;AAAA,IAEE,SAAS,OAAO,IAAI;AAClB,UAAI,OAAO,IAAI,WAAW,IAAI,UAAS,GAAI,MAAM,IAAI;AAErD,aAAO,KAAK,UAAS;AAAA,IACzB;AAAA,EACA;AAEA,WAAS,qBAAqB,eAAa;AACzC,iBAAa;AAAA,EACf;AAEA,WAAS,oBAAoB,eAAa;AACxC,gBAAY;AAAA,EACd;AAEA,aAAiB;AACjB,WAAS,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fromJSON.js","sources":["../../../../../../node_modules/postcss/lib/fromJSON.js"],"sourcesContent":["'use strict'\n\nlet AtRule = require('./at-rule')\nlet Comment = require('./comment')\nlet Declaration = require('./declaration')\nlet Input = require('./input')\nlet PreviousMap = require('./previous-map')\nlet Root = require('./root')\nlet Rule = require('./rule')\n\nfunction fromJSON(json, inputs) {\n if (Array.isArray(json)) return json.map(n => fromJSON(n))\n\n let { inputs: ownInputs, ...defaults } = json\n if (ownInputs) {\n inputs = []\n for (let input of ownInputs) {\n let inputHydrated = { ...input, __proto__: Input.prototype }\n if (inputHydrated.map) {\n inputHydrated.map = {\n ...inputHydrated.map,\n __proto__: PreviousMap.prototype\n }\n }\n inputs.push(inputHydrated)\n }\n }\n if (defaults.nodes) {\n defaults.nodes = json.nodes.map(n => fromJSON(n, inputs))\n }\n if (defaults.source) {\n let { inputId, ...source } = defaults.source\n defaults.source = source\n if (inputId != null) {\n defaults.source.input = inputs[inputId]\n }\n }\n if (defaults.type === 'root') {\n return new Root(defaults)\n } else if (defaults.type === 'decl') {\n return new Declaration(defaults)\n } else if (defaults.type === 'rule') {\n return new Rule(defaults)\n } else if (defaults.type === 'comment') {\n return new Comment(defaults)\n } else if (defaults.type === 'atrule') {\n return new AtRule(defaults)\n } else {\n throw new Error('Unknown node type: ' + json.type)\n }\n}\n\nmodule.exports = fromJSON\nfromJSON.default = fromJSON\n"],"names":["require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","require$$6"],"mappings":";;;;;;;;;;;;AAEA,MAAI,SAASA,cAAA;AACb,MAAI,UAAUC,eAAA;AACd,MAAI,cAAcC,mBAAA;AAClB,MAAI,QAAQC,aAAA;AACZ,MAAI,cAAcC,mBAAA;AAClB,MAAI,OAAOC,YAAA;AACX,MAAI,OAAOC,YAAA;AAEX,WAAS,SAAS,MAAM,QAAQ;AAC9B,QAAI,MAAM,QAAQ,IAAI,EAAG,QAAO,KAAK,IAAI,OAAK,SAAS,CAAC,CAAC;AAEzD,QAAI,EAAE,QAAQ,WAAW,GAAG,SAAQ,IAAK;AACzC,QAAI,WAAW;AACb,eAAS,CAAA;AACT,eAAS,SAAS,WAAW;AAC3B,YAAI,gBAAgB,EAAE,GAAG,OAAO,WAAW,MAAM,UAAS;AAC1D,YAAI,cAAc,KAAK;AACrB,wBAAc,MAAM;AAAA,YAClB,GAAG,cAAc;AAAA,YACjB,WAAW,YAAY;AAAA,UACjC;AAAA,QACA;AACM,eAAO,KAAK,aAAa;AAAA,MAC/B;AAAA,IACA;AACE,QAAI,SAAS,OAAO;AAClB,eAAS,QAAQ,KAAK,MAAM,IAAI,OAAK,SAAS,GAAG,MAAM,CAAC;AAAA,IAC5D;AACE,QAAI,SAAS,QAAQ;AACnB,UAAI,EAAE,SAAS,GAAG,OAAM,IAAK,SAAS;AACtC,eAAS,SAAS;AAClB,UAAI,WAAW,MAAM;AACnB,iBAAS,OAAO,QAAQ,OAAO,OAAO;AAAA,MAC5C;AAAA,IACA;AACE,QAAI,SAAS,SAAS,QAAQ;AAC5B,aAAO,IAAI,KAAK,QAAQ;AAAA,IAC5B,WAAa,SAAS,SAAS,QAAQ;AACnC,aAAO,IAAI,YAAY,QAAQ;AAAA,IACnC,WAAa,SAAS,SAAS,QAAQ;AACnC,aAAO,IAAI,KAAK,QAAQ;AAAA,IAC5B,WAAa,SAAS,SAAS,WAAW;AACtC,aAAO,IAAI,QAAQ,QAAQ;AAAA,IAC/B,WAAa,SAAS,SAAS,UAAU;AACrC,aAAO,IAAI,OAAO,QAAQ;AAAA,IAC9B,OAAS;AACL,YAAM,IAAI,MAAM,wBAAwB,KAAK,IAAI;AAAA,IACrD;AAAA,EACA;AAEA,eAAiB;AACjB,WAAS,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"input.js","sources":["../../../../../../node_modules/postcss/lib/input.js"],"sourcesContent":["'use strict'\n\nlet { nanoid } = require('nanoid/non-secure')\nlet { isAbsolute, resolve } = require('path')\nlet { SourceMapConsumer, SourceMapGenerator } = require('source-map-js')\nlet { fileURLToPath, pathToFileURL } = require('url')\n\nlet CssSyntaxError = require('./css-syntax-error')\nlet PreviousMap = require('./previous-map')\nlet terminalHighlight = require('./terminal-highlight')\n\nlet lineToIndexCache = Symbol('lineToIndexCache')\n\nlet sourceMapAvailable = Boolean(SourceMapConsumer && SourceMapGenerator)\nlet pathAvailable = Boolean(resolve && isAbsolute)\n\nfunction getLineToIndex(input) {\n if (input[lineToIndexCache]) return input[lineToIndexCache]\n let lines = input.css.split('\\n')\n let lineToIndex = new Array(lines.length)\n let prevIndex = 0\n\n for (let i = 0, l = lines.length; i < l; i++) {\n lineToIndex[i] = prevIndex\n prevIndex += lines[i].length + 1\n }\n\n input[lineToIndexCache] = lineToIndex\n return lineToIndex\n}\n\nclass Input {\n get from() {\n return this.file || this.id\n }\n\n constructor(css, opts = {}) {\n if (\n css === null ||\n typeof css === 'undefined' ||\n (typeof css === 'object' && !css.toString)\n ) {\n throw new Error(`PostCSS received ${css} instead of CSS string`)\n }\n\n this.css = css.toString()\n\n if (this.css[0] === '\\uFEFF' || this.css[0] === '\\uFFFE') {\n this.hasBOM = true\n this.css = this.css.slice(1)\n } else {\n this.hasBOM = false\n }\n\n this.document = this.css\n if (opts.document) this.document = opts.document.toString()\n\n if (opts.from) {\n if (\n !pathAvailable ||\n /^\\w+:\\/\\//.test(opts.from) ||\n isAbsolute(opts.from)\n ) {\n this.file = opts.from\n } else {\n this.file = resolve(opts.from)\n }\n }\n\n if (pathAvailable && sourceMapAvailable) {\n let map = new PreviousMap(this.css, opts)\n if (map.text) {\n this.map = map\n let file = map.consumer().file\n if (!this.file && file) this.file = this.mapResolve(file)\n }\n }\n\n if (!this.file) {\n this.id = '<input css ' + nanoid(6) + '>'\n }\n if (this.map) this.map.file = this.from\n }\n\n error(message, line, column, opts = {}) {\n let endColumn, endLine, endOffset, offset, result\n\n if (line && typeof line === 'object') {\n let start = line\n let end = column\n if (typeof start.offset === 'number') {\n offset = start.offset\n let pos = this.fromOffset(offset)\n line = pos.line\n column = pos.col\n } else {\n line = start.line\n column = start.column\n offset = this.fromLineAndColumn(line, column)\n }\n if (typeof end.offset === 'number') {\n endOffset = end.offset\n let pos = this.fromOffset(endOffset)\n endLine = pos.line\n endColumn = pos.col\n } else {\n endLine = end.line\n endColumn = end.column\n endOffset = this.fromLineAndColumn(end.line, end.column)\n }\n } else if (!column) {\n offset = line\n let pos = this.fromOffset(offset)\n line = pos.line\n column = pos.col\n } else {\n offset = this.fromLineAndColumn(line, column)\n }\n\n let origin = this.origin(line, column, endLine, endColumn)\n if (origin) {\n result = new CssSyntaxError(\n message,\n origin.endLine === undefined\n ? origin.line\n : { column: origin.column, line: origin.line },\n origin.endLine === undefined\n ? origin.column\n : { column: origin.endColumn, line: origin.endLine },\n origin.source,\n origin.file,\n opts.plugin\n )\n } else {\n result = new CssSyntaxError(\n message,\n endLine === undefined ? line : { column, line },\n endLine === undefined ? column : { column: endColumn, line: endLine },\n this.css,\n this.file,\n opts.plugin\n )\n }\n\n result.input = { column, endColumn, endLine, endOffset, line, offset, source: this.css }\n if (this.file) {\n if (pathToFileURL) {\n result.input.url = pathToFileURL(this.file).toString()\n }\n result.input.file = this.file\n }\n\n return result\n }\n\n fromLineAndColumn(line, column) {\n let lineToIndex = getLineToIndex(this)\n let index = lineToIndex[line - 1]\n return index + column - 1\n }\n\n fromOffset(offset) {\n let lineToIndex = getLineToIndex(this)\n let lastLine = lineToIndex[lineToIndex.length - 1]\n\n let min = 0\n if (offset >= lastLine) {\n min = lineToIndex.length - 1\n } else {\n let max = lineToIndex.length - 2\n let mid\n while (min < max) {\n mid = min + ((max - min) >> 1)\n if (offset < lineToIndex[mid]) {\n max = mid - 1\n } else if (offset >= lineToIndex[mid + 1]) {\n min = mid + 1\n } else {\n min = mid\n break\n }\n }\n }\n return {\n col: offset - lineToIndex[min] + 1,\n line: min + 1\n }\n }\n\n mapResolve(file) {\n if (/^\\w+:\\/\\//.test(file)) {\n return file\n }\n return resolve(this.map.consumer().sourceRoot || this.map.root || '.', file)\n }\n\n origin(line, column, endLine, endColumn) {\n if (!this.map) return false\n let consumer = this.map.consumer()\n\n let from = consumer.originalPositionFor({ column, line })\n if (!from.source) return false\n\n let to\n if (typeof endLine === 'number') {\n to = consumer.originalPositionFor({ column: endColumn, line: endLine })\n }\n\n let fromUrl\n\n if (isAbsolute(from.source)) {\n fromUrl = pathToFileURL(from.source)\n } else {\n fromUrl = new URL(\n from.source,\n this.map.consumer().sourceRoot || pathToFileURL(this.map.mapFile)\n )\n }\n\n let result = {\n column: from.column,\n endColumn: to && to.column,\n endLine: to && to.line,\n line: from.line,\n url: fromUrl.toString()\n }\n\n if (fromUrl.protocol === 'file:') {\n if (fileURLToPath) {\n result.file = fileURLToPath(fromUrl)\n } else {\n /* c8 ignore next 2 */\n throw new Error(`file: protocol is not available in this PostCSS build`)\n }\n }\n\n let source = consumer.sourceContentFor(from.source)\n if (source) result.source = source\n\n return result\n }\n\n toJSON() {\n let json = {}\n for (let name of ['hasBOM', 'css', 'file', 'id']) {\n if (this[name] != null) {\n json[name] = this[name]\n }\n }\n if (this.map) {\n json.map = { ...this.map }\n if (json.map.consumerCache) {\n json.map.consumerCache = undefined\n }\n }\n return json\n }\n}\n\nmodule.exports = Input\nInput.default = Input\n\nif (terminalHighlight && terminalHighlight.registerInput) {\n terminalHighlight.registerInput(Input)\n}\n"],"names":["require$$0","require$$1","require$$3","require$$4","require$$5","require$$6","input"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"lazy-result.js","sources":["../../../../../../node_modules/postcss/lib/lazy-result.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\nlet Document = require('./document')\nlet MapGenerator = require('./map-generator')\nlet parse = require('./parse')\nlet Result = require('./result')\nlet Root = require('./root')\nlet stringify = require('./stringify')\nlet { isClean, my } = require('./symbols')\nlet warnOnce = require('./warn-once')\n\nconst TYPE_TO_CLASS_NAME = {\n atrule: 'AtRule',\n comment: 'Comment',\n decl: 'Declaration',\n document: 'Document',\n root: 'Root',\n rule: 'Rule'\n}\n\nconst PLUGIN_PROPS = {\n AtRule: true,\n AtRuleExit: true,\n Comment: true,\n CommentExit: true,\n Declaration: true,\n DeclarationExit: true,\n Document: true,\n DocumentExit: true,\n Once: true,\n OnceExit: true,\n postcssPlugin: true,\n prepare: true,\n Root: true,\n RootExit: true,\n Rule: true,\n RuleExit: true\n}\n\nconst NOT_VISITORS = {\n Once: true,\n postcssPlugin: true,\n prepare: true\n}\n\nconst CHILDREN = 0\n\nfunction isPromise(obj) {\n return typeof obj === 'object' && typeof obj.then === 'function'\n}\n\nfunction getEvents(node) {\n let key = false\n let type = TYPE_TO_CLASS_NAME[node.type]\n if (node.type === 'decl') {\n key = node.prop.toLowerCase()\n } else if (node.type === 'atrule') {\n key = node.name.toLowerCase()\n }\n\n if (key && node.append) {\n return [\n type,\n type + '-' + key,\n CHILDREN,\n type + 'Exit',\n type + 'Exit-' + key\n ]\n } else if (key) {\n return [type, type + '-' + key, type + 'Exit', type + 'Exit-' + key]\n } else if (node.append) {\n return [type, CHILDREN, type + 'Exit']\n } else {\n return [type, type + 'Exit']\n }\n}\n\nfunction toStack(node) {\n let events\n if (node.type === 'document') {\n events = ['Document', CHILDREN, 'DocumentExit']\n } else if (node.type === 'root') {\n events = ['Root', CHILDREN, 'RootExit']\n } else {\n events = getEvents(node)\n }\n\n return {\n eventIndex: 0,\n events,\n iterator: 0,\n node,\n visitorIndex: 0,\n visitors: []\n }\n}\n\nfunction cleanMarks(node) {\n node[isClean] = false\n if (node.nodes) node.nodes.forEach(i => cleanMarks(i))\n return node\n}\n\nlet postcss = {}\n\nclass LazyResult {\n get content() {\n return this.stringify().content\n }\n\n get css() {\n return this.stringify().css\n }\n\n get map() {\n return this.stringify().map\n }\n\n get messages() {\n return this.sync().messages\n }\n\n get opts() {\n return this.result.opts\n }\n\n get processor() {\n return this.result.processor\n }\n\n get root() {\n return this.sync().root\n }\n\n get [Symbol.toStringTag]() {\n return 'LazyResult'\n }\n\n constructor(processor, css, opts) {\n this.stringified = false\n this.processed = false\n\n let root\n if (\n typeof css === 'object' &&\n css !== null &&\n (css.type === 'root' || css.type === 'document')\n ) {\n root = cleanMarks(css)\n } else if (css instanceof LazyResult || css instanceof Result) {\n root = cleanMarks(css.root)\n if (css.map) {\n if (typeof opts.map === 'undefined') opts.map = {}\n if (!opts.map.inline) opts.map.inline = false\n opts.map.prev = css.map\n }\n } else {\n let parser = parse\n if (opts.syntax) parser = opts.syntax.parse\n if (opts.parser) parser = opts.parser\n if (parser.parse) parser = parser.parse\n\n try {\n root = parser(css, opts)\n } catch (error) {\n this.processed = true\n this.error = error\n }\n\n if (root && !root[my]) {\n /* c8 ignore next 2 */\n Container.rebuild(root)\n }\n }\n\n this.result = new Result(processor, root, opts)\n this.helpers = { ...postcss, postcss, result: this.result }\n this.plugins = this.processor.plugins.map(plugin => {\n if (typeof plugin === 'object' && plugin.prepare) {\n return { ...plugin, ...plugin.prepare(this.result) }\n } else {\n return plugin\n }\n })\n }\n\n async() {\n if (this.error) return Promise.reject(this.error)\n if (this.processed) return Promise.resolve(this.result)\n if (!this.processing) {\n this.processing = this.runAsync()\n }\n return this.processing\n }\n\n catch(onRejected) {\n return this.async().catch(onRejected)\n }\n\n finally(onFinally) {\n return this.async().then(onFinally, onFinally)\n }\n\n getAsyncError() {\n throw new Error('Use process(css).then(cb) to work with async plugins')\n }\n\n handleError(error, node) {\n let plugin = this.result.lastPlugin\n try {\n if (node) node.addToError(error)\n this.error = error\n if (error.name === 'CssSyntaxError' && !error.plugin) {\n error.plugin = plugin.postcssPlugin\n error.setMessage()\n } else if (plugin.postcssVersion) {\n if (process.env.NODE_ENV !== 'production') {\n let pluginName = plugin.postcssPlugin\n let pluginVer = plugin.postcssVersion\n let runtimeVer = this.result.processor.version\n let a = pluginVer.split('.')\n let b = runtimeVer.split('.')\n\n if (a[0] !== b[0] || parseInt(a[1]) > parseInt(b[1])) {\n // eslint-disable-next-line no-console\n console.error(\n 'Unknown error from PostCSS plugin. Your current PostCSS ' +\n 'version is ' +\n runtimeVer +\n ', but ' +\n pluginName +\n ' uses ' +\n pluginVer +\n '. Perhaps this is the source of the error below.'\n )\n }\n }\n }\n } catch (err) {\n /* c8 ignore next 3 */\n // eslint-disable-next-line no-console\n if (console && console.error) console.error(err)\n }\n return error\n }\n\n prepareVisitors() {\n this.listeners = {}\n let add = (plugin, type, cb) => {\n if (!this.listeners[type]) this.listeners[type] = []\n this.listeners[type].push([plugin, cb])\n }\n for (let plugin of this.plugins) {\n if (typeof plugin === 'object') {\n for (let event in plugin) {\n if (!PLUGIN_PROPS[event] && /^[A-Z]/.test(event)) {\n throw new Error(\n `Unknown event ${event} in ${plugin.postcssPlugin}. ` +\n `Try to update PostCSS (${this.processor.version} now).`\n )\n }\n if (!NOT_VISITORS[event]) {\n if (typeof plugin[event] === 'object') {\n for (let filter in plugin[event]) {\n if (filter === '*') {\n add(plugin, event, plugin[event][filter])\n } else {\n add(\n plugin,\n event + '-' + filter.toLowerCase(),\n plugin[event][filter]\n )\n }\n }\n } else if (typeof plugin[event] === 'function') {\n add(plugin, event, plugin[event])\n }\n }\n }\n }\n }\n this.hasListener = Object.keys(this.listeners).length > 0\n }\n\n async runAsync() {\n this.plugin = 0\n for (let i = 0; i < this.plugins.length; i++) {\n let plugin = this.plugins[i]\n let promise = this.runOnRoot(plugin)\n if (isPromise(promise)) {\n try {\n await promise\n } catch (error) {\n throw this.handleError(error)\n }\n }\n }\n\n this.prepareVisitors()\n if (this.hasListener) {\n let root = this.result.root\n while (!root[isClean]) {\n root[isClean] = true\n let stack = [toStack(root)]\n while (stack.length > 0) {\n let promise = this.visitTick(stack)\n if (isPromise(promise)) {\n try {\n await promise\n } catch (e) {\n let node = stack[stack.length - 1].node\n throw this.handleError(e, node)\n }\n }\n }\n }\n\n if (this.listeners.OnceExit) {\n for (let [plugin, visitor] of this.listeners.OnceExit) {\n this.result.lastPlugin = plugin\n try {\n if (root.type === 'document') {\n let roots = root.nodes.map(subRoot =>\n visitor(subRoot, this.helpers)\n )\n\n await Promise.all(roots)\n } else {\n await visitor(root, this.helpers)\n }\n } catch (e) {\n throw this.handleError(e)\n }\n }\n }\n }\n\n this.processed = true\n return this.stringify()\n }\n\n runOnRoot(plugin) {\n this.result.lastPlugin = plugin\n try {\n if (typeof plugin === 'object' && plugin.Once) {\n if (this.result.root.type === 'document') {\n let roots = this.result.root.nodes.map(root =>\n plugin.Once(root, this.helpers)\n )\n\n if (isPromise(roots[0])) {\n return Promise.all(roots)\n }\n\n return roots\n }\n\n return plugin.Once(this.result.root, this.helpers)\n } else if (typeof plugin === 'function') {\n return plugin(this.result.root, this.result)\n }\n } catch (error) {\n throw this.handleError(error)\n }\n }\n\n stringify() {\n if (this.error) throw this.error\n if (this.stringified) return this.result\n this.stringified = true\n\n this.sync()\n\n let opts = this.result.opts\n let str = stringify\n if (opts.syntax) str = opts.syntax.stringify\n if (opts.stringifier) str = opts.stringifier\n if (str.stringify) str = str.stringify\n\n let map = new MapGenerator(str, this.result.root, this.result.opts)\n let data = map.generate()\n this.result.css = data[0]\n this.result.map = data[1]\n\n return this.result\n }\n\n sync() {\n if (this.error) throw this.error\n if (this.processed) return this.result\n this.processed = true\n\n if (this.processing) {\n throw this.getAsyncError()\n }\n\n for (let plugin of this.plugins) {\n let promise = this.runOnRoot(plugin)\n if (isPromise(promise)) {\n throw this.getAsyncError()\n }\n }\n\n this.prepareVisitors()\n if (this.hasListener) {\n let root = this.result.root\n while (!root[isClean]) {\n root[isClean] = true\n this.walkSync(root)\n }\n if (this.listeners.OnceExit) {\n if (root.type === 'document') {\n for (let subRoot of root.nodes) {\n this.visitSync(this.listeners.OnceExit, subRoot)\n }\n } else {\n this.visitSync(this.listeners.OnceExit, root)\n }\n }\n }\n\n return this.result\n }\n\n then(onFulfilled, onRejected) {\n if (process.env.NODE_ENV !== 'production') {\n if (!('from' in this.opts)) {\n warnOnce(\n 'Without `from` option PostCSS could generate wrong source map ' +\n 'and will not find Browserslist config. Set it to CSS file path ' +\n 'or to `undefined` to prevent this warning.'\n )\n }\n }\n return this.async().then(onFulfilled, onRejected)\n }\n\n toString() {\n return this.css\n }\n\n visitSync(visitors, node) {\n for (let [plugin, visitor] of visitors) {\n this.result.lastPlugin = plugin\n let promise\n try {\n promise = visitor(node, this.helpers)\n } catch (e) {\n throw this.handleError(e, node.proxyOf)\n }\n if (node.type !== 'root' && node.type !== 'document' && !node.parent) {\n return true\n }\n if (isPromise(promise)) {\n throw this.getAsyncError()\n }\n }\n }\n\n visitTick(stack) {\n let visit = stack[stack.length - 1]\n let { node, visitors } = visit\n\n if (node.type !== 'root' && node.type !== 'document' && !node.parent) {\n stack.pop()\n return\n }\n\n if (visitors.length > 0 && visit.visitorIndex < visitors.length) {\n let [plugin, visitor] = visitors[visit.visitorIndex]\n visit.visitorIndex += 1\n if (visit.visitorIndex === visitors.length) {\n visit.visitors = []\n visit.visitorIndex = 0\n }\n this.result.lastPlugin = plugin\n try {\n return visitor(node.toProxy(), this.helpers)\n } catch (e) {\n throw this.handleError(e, node)\n }\n }\n\n if (visit.iterator !== 0) {\n let iterator = visit.iterator\n let child\n while ((child = node.nodes[node.indexes[iterator]])) {\n node.indexes[iterator] += 1\n if (!child[isClean]) {\n child[isClean] = true\n stack.push(toStack(child))\n return\n }\n }\n visit.iterator = 0\n delete node.indexes[iterator]\n }\n\n let events = visit.events\n while (visit.eventIndex < events.length) {\n let event = events[visit.eventIndex]\n visit.eventIndex += 1\n if (event === CHILDREN) {\n if (node.nodes && node.nodes.length) {\n node[isClean] = true\n visit.iterator = node.getIterator()\n }\n return\n } else if (this.listeners[event]) {\n visit.visitors = this.listeners[event]\n return\n }\n }\n stack.pop()\n }\n\n walkSync(node) {\n node[isClean] = true\n let events = getEvents(node)\n for (let event of events) {\n if (event === CHILDREN) {\n if (node.nodes) {\n node.each(child => {\n if (!child[isClean]) this.walkSync(child)\n })\n }\n } else {\n let visitors = this.listeners[event]\n if (visitors) {\n if (this.visitSync(visitors, node.toProxy())) return\n }\n }\n }\n }\n\n warnings() {\n return this.sync().warnings()\n }\n}\n\nLazyResult.registerPostcss = dependant => {\n postcss = dependant\n}\n\nmodule.exports = LazyResult\nLazyResult.default = LazyResult\n\nRoot.registerLazyResult(LazyResult)\nDocument.registerLazyResult(LazyResult)\n"],"names":["require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","require$$6","require$$7"],"mappings":";;;;;;;;;;;;;AAEA,MAAI,YAAYA,iBAAA;AAChB,MAAI,WAAWC,gBAAA;AACf,MAAI,eAAeC,oBAAA;AACnB,MAAI,QAAQC,aAAA;AACZ,MAAI,SAASC,cAAA;AACb,MAAI,OAAOC,YAAA;AACX,MAAI,YAAYC,iBAAA;AAChB,MAAI,EAAE,SAAS,GAAA,IAAOC,eAAA;AAGtB,QAAM,qBAAqB;AAAA,IACzB,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,MAAM;AAAA,IACN,UAAU;AAAA,IACV,MAAM;AAAA,IACN,MAAM;AAAA;AAGR,QAAM,eAAe;AAAA,IACnB,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,UAAU;AAAA,IACV,cAAc;AAAA,IACd,MAAM;AAAA,IACN,UAAU;AAAA,IACV,eAAe;AAAA,IACf,SAAS;AAAA,IACT,MAAM;AAAA,IACN,UAAU;AAAA,IACV,MAAM;AAAA,IACN,UAAU;AAAA;AAGZ,QAAM,eAAe;AAAA,IACnB,MAAM;AAAA,IACN,eAAe;AAAA,IACf,SAAS;AAAA;AAGX,QAAM,WAAW;AAEjB,WAAS,UAAU,KAAK;AACtB,WAAO,OAAO,QAAQ,YAAY,OAAO,IAAI,SAAS;AAAA,EACxD;AAEA,WAAS,UAAU,MAAM;AACvB,QAAI,MAAM;AACV,QAAI,OAAO,mBAAmB,KAAK,IAAI;AACvC,QAAI,KAAK,SAAS,QAAQ;AACxB,YAAM,KAAK,KAAK,YAAA;AAAA,IAAY,WACnB,KAAK,SAAS,UAAU;AACjC,YAAM,KAAK,KAAK,YAAA;AAAA,IAAY;AAG9B,QAAI,OAAO,KAAK,QAAQ;AACtB,aAAO;AAAA,QACL;AAAA,QACA,OAAO,MAAM;AAAA,QACb;AAAA,QACA,OAAO;AAAA,QACP,OAAO,UAAU;AAAA;IACnB,WACS,KAAK;AACd,aAAO,CAAC,MAAM,OAAO,MAAM,KAAK,OAAO,QAAQ,OAAO,UAAU,GAAG;AAAA,IAAA,WAC1D,KAAK,QAAQ;AACtB,aAAO,CAAC,MAAM,UAAU,OAAO,MAAM;AAAA,IAAA,OAChC;AACL,aAAO,CAAC,MAAM,OAAO,MAAM;AAAA,IAAA;AAAA,EAE/B;AAEA,WAAS,QAAQ,MAAM;AACrB,QAAI;AACJ,QAAI,KAAK,SAAS,YAAY;AAC5B,eAAS,CAAC,YAAY,UAAU,cAAc;AAAA,IAAA,WACrC,KAAK,SAAS,QAAQ;AAC/B,eAAS,CAAC,QAAQ,UAAU,UAAU;AAAA,IAAA,OACjC;AACL,eAAS,UAAU,IAAI;AAAA,IAAA;AAGzB,WAAO;AAAA,MACL,YAAY;AAAA,MACZ;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA,cAAc;AAAA,MACd,UAAU,CAAA;AAAA;EAEd;AAEA,WAAS,WAAW,MAAM;AACxB,SAAK,OAAO,IAAI;AAChB,QAAI,KAAK,MAAO,MAAK,MAAM,QAAQ,CAAA,MAAK,WAAW,CAAC,CAAC;AACrD,WAAO;AAAA,EACT;AAEA,MAAI,UAAU,CAAA;AAAA,EAEd,MAAM,WAAW;AAAA,IACf,IAAI,UAAU;AACZ,aAAO,KAAK,YAAY;AAAA,IAAA;AAAA,IAG1B,IAAI,MAAM;AACR,aAAO,KAAK,YAAY;AAAA,IAAA;AAAA,IAG1B,IAAI,MAAM;AACR,aAAO,KAAK,YAAY;AAAA,IAAA;AAAA,IAG1B,IAAI,WAAW;AACb,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,OAAO;AACT,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,YAAY;AACd,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,OAAO;AACT,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,KAAK,OAAO,WAAW,IAAI;AACzB,aAAO;AAAA,IAAA;AAAA,IAGT,YAAY,WAAW,KAAK,MAAM;AAChC,WAAK,cAAc;AACnB,WAAK,YAAY;AAEjB,UAAI;AACJ,UACE,OAAO,QAAQ,YACf,QAAQ,SACP,IAAI,SAAS,UAAU,IAAI,SAAS,aACrC;AACA,eAAO,WAAW,GAAG;AAAA,MAAA,WACZ,eAAe,cAAc,eAAe,QAAQ;AAC7D,eAAO,WAAW,IAAI,IAAI;AAC1B,YAAI,IAAI,KAAK;AACX,cAAI,OAAO,KAAK,QAAQ,YAAa,MAAK,MAAM,CAAA;AAChD,cAAI,CAAC,KAAK,IAAI,OAAQ,MAAK,IAAI,SAAS;AACxC,eAAK,IAAI,OAAO,IAAI;AAAA,QAAA;AAAA,MACtB,OACK;AACL,YAAI,SAAS;AACb,YAAI,KAAK,OAAQ,UAAS,KAAK,OAAO;AACtC,YAAI,KAAK,OAAQ,UAAS,KAAK;AAC/B,YAAI,OAAO,MAAO,UAAS,OAAO;AAElC,YAAI;AACF,iBAAO,OAAO,KAAK,IAAI;AAAA,QAAA,SAChB,OAAO;AACd,eAAK,YAAY;AACjB,eAAK,QAAQ;AAAA,QAAA;AAGf,YAAI,QAAQ,CAAC,KAAK,EAAE,GAAG;AAErB,oBAAU,QAAQ,IAAI;AAAA,QAAA;AAAA,MACxB;AAGF,WAAK,SAAS,IAAI,OAAO,WAAW,MAAM,IAAI;AAC9C,WAAK,UAAU,EAAE,GAAG,SAAS,SAAS,QAAQ,KAAK,OAAA;AACnD,WAAK,UAAU,KAAK,UAAU,QAAQ,IAAI,CAAA,WAAU;AAClD,YAAI,OAAO,WAAW,YAAY,OAAO,SAAS;AAChD,iBAAO,EAAE,GAAG,QAAQ,GAAG,OAAO,QAAQ,KAAK,MAAM,EAAA;AAAA,QAAE,OAC9C;AACL,iBAAO;AAAA,QAAA;AAAA,MACT,CACD;AAAA,IAAA;AAAA,IAGH,QAAQ;AACN,UAAI,KAAK,MAAO,QAAO,QAAQ,OAAO,KAAK,KAAK;AAChD,UAAI,KAAK,UAAW,QAAO,QAAQ,QAAQ,KAAK,MAAM;AACtD,UAAI,CAAC,KAAK,YAAY;AACpB,aAAK,aAAa,KAAK,SAAA;AAAA,MAAS;AAElC,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,MAAM,YAAY;AAChB,aAAO,KAAK,QAAQ,MAAM,UAAU;AAAA,IAAA;AAAA,IAGtC,QAAQ,WAAW;AACjB,aAAO,KAAK,MAAA,EAAQ,KAAK,WAAW,SAAS;AAAA,IAAA;AAAA,IAG/C,gBAAgB;AACd,YAAM,IAAI,MAAM,sDAAsD;AAAA,IAAA;AAAA,IAGxE,YAAY,OAAO,MAAM;AACvB,UAAI,SAAS,KAAK,OAAO;AACzB,UAAI;AACF,YAAI,KAAM,MAAK,WAAW,KAAK;AAC/B,aAAK,QAAQ;AACb,YAAI,MAAM,SAAS,oBAAoB,CAAC,MAAM,QAAQ;AACpD,gBAAM,SAAS,OAAO;AACtB,gBAAM,WAAA;AAAA,QAAW,WACR,OAAO,gBAAgB;AAChC,cAAI,MAAA;AAAA,QAoBJ;AAAA,MACF,SACO,KAAK;AAGZ,YAAI,WAAW,QAAQ,MAAO,SAAQ,MAAM,GAAG;AAAA,MAAA;AAEjD,aAAO;AAAA,IAAA;AAAA,IAGT,kBAAkB;AAChB,WAAK,YAAY,CAAA;AACjB,UAAI,MAAM,CAAC,QAAQ,MAAM,OAAO;AAC9B,YAAI,CAAC,KAAK,UAAU,IAAI,EAAG,MAAK,UAAU,IAAI,IAAI,CAAA;AAClD,aAAK,UAAU,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;AAAA,MAAA;AAExC,eAAS,UAAU,KAAK,SAAS;AAC/B,YAAI,OAAO,WAAW,UAAU;AAC9B,mBAAS,SAAS,QAAQ;AACxB,gBAAI,CAAC,aAAa,KAAK,KAAK,SAAS,KAAK,KAAK,GAAG;AAChD,oBAAM,IAAI;AAAA,gBACR,iBAAiB,KAAK,OAAO,OAAO,aAAa,4BACrB,KAAK,UAAU,OAAO;AAAA;YACpD;AAEF,gBAAI,CAAC,aAAa,KAAK,GAAG;AACxB,kBAAI,OAAO,OAAO,KAAK,MAAM,UAAU;AACrC,yBAAS,UAAU,OAAO,KAAK,GAAG;AAChC,sBAAI,WAAW,KAAK;AAClB,wBAAI,QAAQ,OAAO,OAAO,KAAK,EAAE,MAAM,CAAC;AAAA,kBAAA,OACnC;AACL;AAAA,sBACE;AAAA,sBACA,QAAQ,MAAM,OAAO,YAAA;AAAA,sBACrB,OAAO,KAAK,EAAE,MAAM;AAAA;kBACtB;AAAA,gBACF;AAAA,cACF,WACS,OAAO,OAAO,KAAK,MAAM,YAAY;AAC9C,oBAAI,QAAQ,OAAO,OAAO,KAAK,CAAC;AAAA,cAAA;AAAA,YAClC;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEF,WAAK,cAAc,OAAO,KAAK,KAAK,SAAS,EAAE,SAAS;AAAA,IAAA;AAAA,IAG1D,MAAM,WAAW;AACf,WAAK,SAAS;AACd,eAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,QAAQ,KAAK;AAC5C,YAAI,SAAS,KAAK,QAAQ,CAAC;AAC3B,YAAI,UAAU,KAAK,UAAU,MAAM;AACnC,YAAI,UAAU,OAAO,GAAG;AACtB,cAAI;AACF,kBAAM;AAAA,UAAA,SACC,OAAO;AACd,kBAAM,KAAK,YAAY,KAAK;AAAA,UAAA;AAAA,QAC9B;AAAA,MACF;AAGF,WAAK,gBAAA;AACL,UAAI,KAAK,aAAa;AACpB,YAAI,OAAO,KAAK,OAAO;AACvB,eAAO,CAAC,KAAK,OAAO,GAAG;AACrB,eAAK,OAAO,IAAI;AAChB,cAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC;AAC1B,iBAAO,MAAM,SAAS,GAAG;AACvB,gBAAI,UAAU,KAAK,UAAU,KAAK;AAClC,gBAAI,UAAU,OAAO,GAAG;AACtB,kBAAI;AACF,sBAAM;AAAA,cAAA,SACC,GAAG;AACV,oBAAI,OAAO,MAAM,MAAM,SAAS,CAAC,EAAE;AACnC,sBAAM,KAAK,YAAY,GAAG,IAAI;AAAA,cAAA;AAAA,YAChC;AAAA,UACF;AAAA,QACF;AAGF,YAAI,KAAK,UAAU,UAAU;AAC3B,mBAAS,CAAC,QAAQ,OAAO,KAAK,KAAK,UAAU,UAAU;AACrD,iBAAK,OAAO,aAAa;AACzB,gBAAI;AACF,kBAAI,KAAK,SAAS,YAAY;AAC5B,oBAAI,QAAQ,KAAK,MAAM;AAAA,kBAAI,CAAA,YACzB,QAAQ,SAAS,KAAK,OAAO;AAAA;AAG/B,sBAAM,QAAQ,IAAI,KAAK;AAAA,cAAA,OAClB;AACL,sBAAM,QAAQ,MAAM,KAAK,OAAO;AAAA,cAAA;AAAA,YAClC,SACO,GAAG;AACV,oBAAM,KAAK,YAAY,CAAC;AAAA,YAAA;AAAA,UAC1B;AAAA,QACF;AAAA,MACF;AAGF,WAAK,YAAY;AACjB,aAAO,KAAK,UAAA;AAAA,IAAU;AAAA,IAGxB,UAAU,QAAQ;AAChB,WAAK,OAAO,aAAa;AACzB,UAAI;AACF,YAAI,OAAO,WAAW,YAAY,OAAO,MAAM;AAC7C,cAAI,KAAK,OAAO,KAAK,SAAS,YAAY;AACxC,gBAAI,QAAQ,KAAK,OAAO,KAAK,MAAM;AAAA,cAAI,CAAA,SACrC,OAAO,KAAK,MAAM,KAAK,OAAO;AAAA;AAGhC,gBAAI,UAAU,MAAM,CAAC,CAAC,GAAG;AACvB,qBAAO,QAAQ,IAAI,KAAK;AAAA,YAAA;AAG1B,mBAAO;AAAA,UAAA;AAGT,iBAAO,OAAO,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO;AAAA,QAAA,WACxC,OAAO,WAAW,YAAY;AACvC,iBAAO,OAAO,KAAK,OAAO,MAAM,KAAK,MAAM;AAAA,QAAA;AAAA,MAC7C,SACO,OAAO;AACd,cAAM,KAAK,YAAY,KAAK;AAAA,MAAA;AAAA,IAC9B;AAAA,IAGF,YAAY;AACV,UAAI,KAAK,MAAO,OAAM,KAAK;AAC3B,UAAI,KAAK,YAAa,QAAO,KAAK;AAClC,WAAK,cAAc;AAEnB,WAAK,KAAA;AAEL,UAAI,OAAO,KAAK,OAAO;AACvB,UAAI,MAAM;AACV,UAAI,KAAK,OAAQ,OAAM,KAAK,OAAO;AACnC,UAAI,KAAK,YAAa,OAAM,KAAK;AACjC,UAAI,IAAI,UAAW,OAAM,IAAI;AAE7B,UAAI,MAAM,IAAI,aAAa,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI;AAClE,UAAI,OAAO,IAAI,SAAA;AACf,WAAK,OAAO,MAAM,KAAK,CAAC;AACxB,WAAK,OAAO,MAAM,KAAK,CAAC;AAExB,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,OAAO;AACL,UAAI,KAAK,MAAO,OAAM,KAAK;AAC3B,UAAI,KAAK,UAAW,QAAO,KAAK;AAChC,WAAK,YAAY;AAEjB,UAAI,KAAK,YAAY;AACnB,cAAM,KAAK,cAAA;AAAA,MAAc;AAG3B,eAAS,UAAU,KAAK,SAAS;AAC/B,YAAI,UAAU,KAAK,UAAU,MAAM;AACnC,YAAI,UAAU,OAAO,GAAG;AACtB,gBAAM,KAAK,cAAA;AAAA,QAAc;AAAA,MAC3B;AAGF,WAAK,gBAAA;AACL,UAAI,KAAK,aAAa;AACpB,YAAI,OAAO,KAAK,OAAO;AACvB,eAAO,CAAC,KAAK,OAAO,GAAG;AACrB,eAAK,OAAO,IAAI;AAChB,eAAK,SAAS,IAAI;AAAA,QAAA;AAEpB,YAAI,KAAK,UAAU,UAAU;AAC3B,cAAI,KAAK,SAAS,YAAY;AAC5B,qBAAS,WAAW,KAAK,OAAO;AAC9B,mBAAK,UAAU,KAAK,UAAU,UAAU,OAAO;AAAA,YAAA;AAAA,UACjD,OACK;AACL,iBAAK,UAAU,KAAK,UAAU,UAAU,IAAI;AAAA,UAAA;AAAA,QAC9C;AAAA,MACF;AAGF,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,KAAK,aAAa,YAAY;AAU5B,aAAO,KAAK,MAAA,EAAQ,KAAK,aAAa,UAAU;AAAA,IAAA;AAAA,IAGlD,WAAW;AACT,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,UAAU,UAAU,MAAM;AACxB,eAAS,CAAC,QAAQ,OAAO,KAAK,UAAU;AACtC,aAAK,OAAO,aAAa;AACzB,YAAI;AACJ,YAAI;AACF,oBAAU,QAAQ,MAAM,KAAK,OAAO;AAAA,QAAA,SAC7B,GAAG;AACV,gBAAM,KAAK,YAAY,GAAG,KAAK,OAAO;AAAA,QAAA;AAExC,YAAI,KAAK,SAAS,UAAU,KAAK,SAAS,cAAc,CAAC,KAAK,QAAQ;AACpE,iBAAO;AAAA,QAAA;AAET,YAAI,UAAU,OAAO,GAAG;AACtB,gBAAM,KAAK,cAAA;AAAA,QAAc;AAAA,MAC3B;AAAA,IACF;AAAA,IAGF,UAAU,OAAO;AACf,UAAI,QAAQ,MAAM,MAAM,SAAS,CAAC;AAClC,UAAI,EAAE,MAAM,SAAA,IAAa;AAEzB,UAAI,KAAK,SAAS,UAAU,KAAK,SAAS,cAAc,CAAC,KAAK,QAAQ;AACpE,cAAM,IAAA;AACN;AAAA,MAAA;AAGF,UAAI,SAAS,SAAS,KAAK,MAAM,eAAe,SAAS,QAAQ;AAC/D,YAAI,CAAC,QAAQ,OAAO,IAAI,SAAS,MAAM,YAAY;AACnD,cAAM,gBAAgB;AACtB,YAAI,MAAM,iBAAiB,SAAS,QAAQ;AAC1C,gBAAM,WAAW,CAAA;AACjB,gBAAM,eAAe;AAAA,QAAA;AAEvB,aAAK,OAAO,aAAa;AACzB,YAAI;AACF,iBAAO,QAAQ,KAAK,QAAA,GAAW,KAAK,OAAO;AAAA,QAAA,SACpC,GAAG;AACV,gBAAM,KAAK,YAAY,GAAG,IAAI;AAAA,QAAA;AAAA,MAChC;AAGF,UAAI,MAAM,aAAa,GAAG;AACxB,YAAI,WAAW,MAAM;AACrB,YAAI;AACJ,eAAQ,QAAQ,KAAK,MAAM,KAAK,QAAQ,QAAQ,CAAC,GAAI;AACnD,eAAK,QAAQ,QAAQ,KAAK;AAC1B,cAAI,CAAC,MAAM,OAAO,GAAG;AACnB,kBAAM,OAAO,IAAI;AACjB,kBAAM,KAAK,QAAQ,KAAK,CAAC;AACzB;AAAA,UAAA;AAAA,QACF;AAEF,cAAM,WAAW;AACjB,eAAO,KAAK,QAAQ,QAAQ;AAAA,MAAA;AAG9B,UAAI,SAAS,MAAM;AACnB,aAAO,MAAM,aAAa,OAAO,QAAQ;AACvC,YAAI,QAAQ,OAAO,MAAM,UAAU;AACnC,cAAM,cAAc;AACpB,YAAI,UAAU,UAAU;AACtB,cAAI,KAAK,SAAS,KAAK,MAAM,QAAQ;AACnC,iBAAK,OAAO,IAAI;AAChB,kBAAM,WAAW,KAAK,YAAA;AAAA,UAAY;AAEpC;AAAA,QAAA,WACS,KAAK,UAAU,KAAK,GAAG;AAChC,gBAAM,WAAW,KAAK,UAAU,KAAK;AACrC;AAAA,QAAA;AAAA,MACF;AAEF,YAAM,IAAA;AAAA,IAAI;AAAA,IAGZ,SAAS,MAAM;AACb,WAAK,OAAO,IAAI;AAChB,UAAI,SAAS,UAAU,IAAI;AAC3B,eAAS,SAAS,QAAQ;AACxB,YAAI,UAAU,UAAU;AACtB,cAAI,KAAK,OAAO;AACd,iBAAK,KAAK,CAAA,UAAS;AACjB,kBAAI,CAAC,MAAM,OAAO,EAAG,MAAK,SAAS,KAAK;AAAA,YAAA,CACzC;AAAA,UAAA;AAAA,QACH,OACK;AACL,cAAI,WAAW,KAAK,UAAU,KAAK;AACnC,cAAI,UAAU;AACZ,gBAAI,KAAK,UAAU,UAAU,KAAK,QAAA,CAAS,EAAG;AAAA,UAAA;AAAA,QAChD;AAAA,MACF;AAAA,IACF;AAAA,IAGF,WAAW;AACT,aAAO,KAAK,KAAA,EAAO,SAAA;AAAA,IAAS;AAAA,EAEhC;AAEA,aAAW,kBAAkB,CAAA,cAAa;AACxC,cAAU;AAAA,EACZ;AAEA,eAAiB;AACjB,aAAW,UAAU;AAErB,OAAK,mBAAmB,UAAU;AAClC,WAAS,mBAAmB,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"list.js","sources":["../../../../../../node_modules/postcss/lib/list.js"],"sourcesContent":["'use strict'\n\nlet list = {\n comma(string) {\n return list.split(string, [','], true)\n },\n\n space(string) {\n let spaces = [' ', '\\n', '\\t']\n return list.split(string, spaces)\n },\n\n split(string, separators, last) {\n let array = []\n let current = ''\n let split = false\n\n let func = 0\n let inQuote = false\n let prevQuote = ''\n let escape = false\n\n for (let letter of string) {\n if (escape) {\n escape = false\n } else if (letter === '\\\\') {\n escape = true\n } else if (inQuote) {\n if (letter === prevQuote) {\n inQuote = false\n }\n } else if (letter === '\"' || letter === \"'\") {\n inQuote = true\n prevQuote = letter\n } else if (letter === '(') {\n func += 1\n } else if (letter === ')') {\n if (func > 0) func -= 1\n } else if (func === 0) {\n if (separators.includes(letter)) split = true\n }\n\n if (split) {\n if (current !== '') array.push(current.trim())\n current = ''\n split = false\n } else {\n current += letter\n }\n }\n\n if (last || current !== '') array.push(current.trim())\n return array\n }\n}\n\nmodule.exports = list\nlist.default = list\n"],"names":[],"mappings":";;;;;AAEA,MAAI,OAAO;AAAA,IACT,MAAM,QAAQ;AACZ,aAAO,KAAK,MAAM,QAAQ,CAAC,GAAG,GAAG,IAAI;AAAA,IACzC;AAAA,IAEE,MAAM,QAAQ;AACZ,UAAI,SAAS,CAAC,KAAK,MAAM,GAAI;AAC7B,aAAO,KAAK,MAAM,QAAQ,MAAM;AAAA,IACpC;AAAA,IAEE,MAAM,QAAQ,YAAY,MAAM;AAC9B,UAAI,QAAQ,CAAA;AACZ,UAAI,UAAU;AACd,UAAI,QAAQ;AAEZ,UAAI,OAAO;AACX,UAAI,UAAU;AACd,UAAI,YAAY;AAChB,UAAI,SAAS;AAEb,eAAS,UAAU,QAAQ;AACzB,YAAI,QAAQ;AACV,mBAAS;AAAA,QACjB,WAAiB,WAAW,MAAM;AAC1B,mBAAS;AAAA,QACjB,WAAiB,SAAS;AAClB,cAAI,WAAW,WAAW;AACxB,sBAAU;AAAA,UACpB;AAAA,QACA,WAAiB,WAAW,OAAO,WAAW,KAAK;AAC3C,oBAAU;AACV,sBAAY;AAAA,QACpB,WAAiB,WAAW,KAAK;AACzB,kBAAQ;AAAA,QAChB,WAAiB,WAAW,KAAK;AACzB,cAAI,OAAO,EAAG,SAAQ;AAAA,QAC9B,WAAiB,SAAS,GAAG;AACrB,cAAI,WAAW,SAAS,MAAM,EAAG,SAAQ;AAAA,QACjD;AAEM,YAAI,OAAO;AACT,cAAI,YAAY,GAAI,OAAM,KAAK,QAAQ,KAAI,CAAE;AAC7C,oBAAU;AACV,kBAAQ;AAAA,QAChB,OAAa;AACL,qBAAW;AAAA,QACnB;AAAA,MACA;AAEI,UAAI,QAAQ,YAAY,GAAI,OAAM,KAAK,QAAQ,KAAI,CAAE;AACrD,aAAO;AAAA,IACX;AAAA,EACA;AAEA,WAAiB;AACjB,OAAK,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"map-generator.js","sources":["../../../../../../node_modules/postcss/lib/map-generator.js"],"sourcesContent":["'use strict'\n\nlet { dirname, relative, resolve, sep } = require('path')\nlet { SourceMapConsumer, SourceMapGenerator } = require('source-map-js')\nlet { pathToFileURL } = require('url')\n\nlet Input = require('./input')\n\nlet sourceMapAvailable = Boolean(SourceMapConsumer && SourceMapGenerator)\nlet pathAvailable = Boolean(dirname && resolve && relative && sep)\n\nclass MapGenerator {\n constructor(stringify, root, opts, cssString) {\n this.stringify = stringify\n this.mapOpts = opts.map || {}\n this.root = root\n this.opts = opts\n this.css = cssString\n this.originalCSS = cssString\n this.usesFileUrls = !this.mapOpts.from && this.mapOpts.absolute\n\n this.memoizedFileURLs = new Map()\n this.memoizedPaths = new Map()\n this.memoizedURLs = new Map()\n }\n\n addAnnotation() {\n let content\n\n if (this.isInline()) {\n content =\n 'data:application/json;base64,' + this.toBase64(this.map.toString())\n } else if (typeof this.mapOpts.annotation === 'string') {\n content = this.mapOpts.annotation\n } else if (typeof this.mapOpts.annotation === 'function') {\n content = this.mapOpts.annotation(this.opts.to, this.root)\n } else {\n content = this.outputFile() + '.map'\n }\n let eol = '\\n'\n if (this.css.includes('\\r\\n')) eol = '\\r\\n'\n\n this.css += eol + '/*# sourceMappingURL=' + content + ' */'\n }\n\n applyPrevMaps() {\n for (let prev of this.previous()) {\n let from = this.toUrl(this.path(prev.file))\n let root = prev.root || dirname(prev.file)\n let map\n\n if (this.mapOpts.sourcesContent === false) {\n map = new SourceMapConsumer(prev.text)\n if (map.sourcesContent) {\n map.sourcesContent = null\n }\n } else {\n map = prev.consumer()\n }\n\n this.map.applySourceMap(map, from, this.toUrl(this.path(root)))\n }\n }\n\n clearAnnotation() {\n if (this.mapOpts.annotation === false) return\n\n if (this.root) {\n let node\n for (let i = this.root.nodes.length - 1; i >= 0; i--) {\n node = this.root.nodes[i]\n if (node.type !== 'comment') continue\n if (node.text.startsWith('# sourceMappingURL=')) {\n this.root.removeChild(i)\n }\n }\n } else if (this.css) {\n let startIndex\n while ((startIndex = this.css.lastIndexOf('/*#')) !== -1) {\n let endIndex = this.css.indexOf('*/', startIndex + 3)\n if (endIndex === -1) break\n while (startIndex > 0 && this.css[startIndex - 1] === '\\n') {\n startIndex--\n }\n this.css = this.css.slice(0, startIndex) + this.css.slice(endIndex + 2)\n }\n }\n }\n\n generate() {\n this.clearAnnotation()\n if (pathAvailable && sourceMapAvailable && this.isMap()) {\n return this.generateMap()\n } else {\n let result = ''\n this.stringify(this.root, i => {\n result += i\n })\n return [result]\n }\n }\n\n generateMap() {\n if (this.root) {\n this.generateString()\n } else if (this.previous().length === 1) {\n let prev = this.previous()[0].consumer()\n prev.file = this.outputFile()\n this.map = SourceMapGenerator.fromSourceMap(prev, {\n ignoreInvalidMapping: true\n })\n } else {\n this.map = new SourceMapGenerator({\n file: this.outputFile(),\n ignoreInvalidMapping: true\n })\n this.map.addMapping({\n generated: { column: 0, line: 1 },\n original: { column: 0, line: 1 },\n source: this.opts.from\n ? this.toUrl(this.path(this.opts.from))\n : '<no source>'\n })\n }\n\n if (this.isSourcesContent()) this.setSourcesContent()\n if (this.root && this.previous().length > 0) this.applyPrevMaps()\n if (this.isAnnotation()) this.addAnnotation()\n\n if (this.isInline()) {\n return [this.css]\n } else {\n return [this.css, this.map]\n }\n }\n\n generateString() {\n this.css = ''\n this.map = new SourceMapGenerator({\n file: this.outputFile(),\n ignoreInvalidMapping: true\n })\n\n let line = 1\n let column = 1\n\n let noSource = '<no source>'\n let mapping = {\n generated: { column: 0, line: 0 },\n original: { column: 0, line: 0 },\n source: ''\n }\n\n let last, lines\n this.stringify(this.root, (str, node, type) => {\n this.css += str\n\n if (node && type !== 'end') {\n mapping.generated.line = line\n mapping.generated.column = column - 1\n if (node.source && node.source.start) {\n mapping.source = this.sourcePath(node)\n mapping.original.line = node.source.start.line\n mapping.original.column = node.source.start.column - 1\n this.map.addMapping(mapping)\n } else {\n mapping.source = noSource\n mapping.original.line = 1\n mapping.original.column = 0\n this.map.addMapping(mapping)\n }\n }\n\n lines = str.match(/\\n/g)\n if (lines) {\n line += lines.length\n last = str.lastIndexOf('\\n')\n column = str.length - last\n } else {\n column += str.length\n }\n\n if (node && type !== 'start') {\n let p = node.parent || { raws: {} }\n let childless =\n node.type === 'decl' || (node.type === 'atrule' && !node.nodes)\n if (!childless || node !== p.last || p.raws.semicolon) {\n if (node.source && node.source.end) {\n mapping.source = this.sourcePath(node)\n mapping.original.line = node.source.end.line\n mapping.original.column = node.source.end.column - 1\n mapping.generated.line = line\n mapping.generated.column = column - 2\n this.map.addMapping(mapping)\n } else {\n mapping.source = noSource\n mapping.original.line = 1\n mapping.original.column = 0\n mapping.generated.line = line\n mapping.generated.column = column - 1\n this.map.addMapping(mapping)\n }\n }\n }\n })\n }\n\n isAnnotation() {\n if (this.isInline()) {\n return true\n }\n if (typeof this.mapOpts.annotation !== 'undefined') {\n return this.mapOpts.annotation\n }\n if (this.previous().length) {\n return this.previous().some(i => i.annotation)\n }\n return true\n }\n\n isInline() {\n if (typeof this.mapOpts.inline !== 'undefined') {\n return this.mapOpts.inline\n }\n\n let annotation = this.mapOpts.annotation\n if (typeof annotation !== 'undefined' && annotation !== true) {\n return false\n }\n\n if (this.previous().length) {\n return this.previous().some(i => i.inline)\n }\n return true\n }\n\n isMap() {\n if (typeof this.opts.map !== 'undefined') {\n return !!this.opts.map\n }\n return this.previous().length > 0\n }\n\n isSourcesContent() {\n if (typeof this.mapOpts.sourcesContent !== 'undefined') {\n return this.mapOpts.sourcesContent\n }\n if (this.previous().length) {\n return this.previous().some(i => i.withContent())\n }\n return true\n }\n\n outputFile() {\n if (this.opts.to) {\n return this.path(this.opts.to)\n } else if (this.opts.from) {\n return this.path(this.opts.from)\n } else {\n return 'to.css'\n }\n }\n\n path(file) {\n if (this.mapOpts.absolute) return file\n if (file.charCodeAt(0) === 60 /* `<` */) return file\n if (/^\\w+:\\/\\//.test(file)) return file\n let cached = this.memoizedPaths.get(file)\n if (cached) return cached\n\n let from = this.opts.to ? dirname(this.opts.to) : '.'\n\n if (typeof this.mapOpts.annotation === 'string') {\n from = dirname(resolve(from, this.mapOpts.annotation))\n }\n\n let path = relative(from, file)\n this.memoizedPaths.set(file, path)\n\n return path\n }\n\n previous() {\n if (!this.previousMaps) {\n this.previousMaps = []\n if (this.root) {\n this.root.walk(node => {\n if (node.source && node.source.input.map) {\n let map = node.source.input.map\n if (!this.previousMaps.includes(map)) {\n this.previousMaps.push(map)\n }\n }\n })\n } else {\n let input = new Input(this.originalCSS, this.opts)\n if (input.map) this.previousMaps.push(input.map)\n }\n }\n\n return this.previousMaps\n }\n\n setSourcesContent() {\n let already = {}\n if (this.root) {\n this.root.walk(node => {\n if (node.source) {\n let from = node.source.input.from\n if (from && !already[from]) {\n already[from] = true\n let fromUrl = this.usesFileUrls\n ? this.toFileUrl(from)\n : this.toUrl(this.path(from))\n this.map.setSourceContent(fromUrl, node.source.input.css)\n }\n }\n })\n } else if (this.css) {\n let from = this.opts.from\n ? this.toUrl(this.path(this.opts.from))\n : '<no source>'\n this.map.setSourceContent(from, this.css)\n }\n }\n\n sourcePath(node) {\n if (this.mapOpts.from) {\n return this.toUrl(this.mapOpts.from)\n } else if (this.usesFileUrls) {\n return this.toFileUrl(node.source.input.from)\n } else {\n return this.toUrl(this.path(node.source.input.from))\n }\n }\n\n toBase64(str) {\n if (Buffer) {\n return Buffer.from(str).toString('base64')\n } else {\n return window.btoa(unescape(encodeURIComponent(str)))\n }\n }\n\n toFileUrl(path) {\n let cached = this.memoizedFileURLs.get(path)\n if (cached) return cached\n\n if (pathToFileURL) {\n let fileURL = pathToFileURL(path).toString()\n this.memoizedFileURLs.set(path, fileURL)\n\n return fileURL\n } else {\n throw new Error(\n '`map.absolute` option is not available in this PostCSS build'\n )\n }\n }\n\n toUrl(path) {\n let cached = this.memoizedURLs.get(path)\n if (cached) return cached\n\n if (sep === '\\\\') {\n path = path.replace(/\\\\/g, '/')\n }\n\n let url = encodeURI(path).replace(/[#?]/g, encodeURIComponent)\n this.memoizedURLs.set(path, url)\n\n return url\n }\n}\n\nmodule.exports = MapGenerator\n"],"names":["require$$0","require$$1","require$$3"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"no-work-result.js","sources":["../../../../../../node_modules/postcss/lib/no-work-result.js"],"sourcesContent":["'use strict'\n\nlet MapGenerator = require('./map-generator')\nlet parse = require('./parse')\nconst Result = require('./result')\nlet stringify = require('./stringify')\nlet warnOnce = require('./warn-once')\n\nclass NoWorkResult {\n get content() {\n return this.result.css\n }\n\n get css() {\n return this.result.css\n }\n\n get map() {\n return this.result.map\n }\n\n get messages() {\n return []\n }\n\n get opts() {\n return this.result.opts\n }\n\n get processor() {\n return this.result.processor\n }\n\n get root() {\n if (this._root) {\n return this._root\n }\n\n let root\n let parser = parse\n\n try {\n root = parser(this._css, this._opts)\n } catch (error) {\n this.error = error\n }\n\n if (this.error) {\n throw this.error\n } else {\n this._root = root\n return root\n }\n }\n\n get [Symbol.toStringTag]() {\n return 'NoWorkResult'\n }\n\n constructor(processor, css, opts) {\n css = css.toString()\n this.stringified = false\n\n this._processor = processor\n this._css = css\n this._opts = opts\n this._map = undefined\n\n let str = stringify\n this.result = new Result(this._processor, undefined, this._opts)\n this.result.css = css\n\n let self = this\n Object.defineProperty(this.result, 'root', {\n get() {\n return self.root\n }\n })\n\n let map = new MapGenerator(str, undefined, this._opts, css)\n if (map.isMap()) {\n let [generatedCSS, generatedMap] = map.generate()\n if (generatedCSS) {\n this.result.css = generatedCSS\n }\n if (generatedMap) {\n this.result.map = generatedMap\n }\n } else {\n map.clearAnnotation()\n this.result.css = map.css\n }\n }\n\n async() {\n if (this.error) return Promise.reject(this.error)\n return Promise.resolve(this.result)\n }\n\n catch(onRejected) {\n return this.async().catch(onRejected)\n }\n\n finally(onFinally) {\n return this.async().then(onFinally, onFinally)\n }\n\n sync() {\n if (this.error) throw this.error\n return this.result\n }\n\n then(onFulfilled, onRejected) {\n if (process.env.NODE_ENV !== 'production') {\n if (!('from' in this._opts)) {\n warnOnce(\n 'Without `from` option PostCSS could generate wrong source map ' +\n 'and will not find Browserslist config. Set it to CSS file path ' +\n 'or to `undefined` to prevent this warning.'\n )\n }\n }\n\n return this.async().then(onFulfilled, onRejected)\n }\n\n toString() {\n return this._css\n }\n\n warnings() {\n return []\n }\n}\n\nmodule.exports = NoWorkResult\nNoWorkResult.default = NoWorkResult\n"],"names":["require$$0","require$$1","require$$2","require$$3"],"mappings":";;;;;;;;;AAEA,MAAI,eAAeA,oBAAA;AACnB,MAAI,QAAQC,aAAA;AACZ,QAAM,SAASC,cAAA;AACf,MAAI,YAAYC,iBAAA;AAAA,EAGhB,MAAM,aAAa;AAAA,IACjB,IAAI,UAAU;AACZ,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,MAAM;AACR,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,MAAM;AACR,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,WAAW;AACb,aAAO,CAAA;AAAA,IAAC;AAAA,IAGV,IAAI,OAAO;AACT,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,YAAY;AACd,aAAO,KAAK,OAAO;AAAA,IAAA;AAAA,IAGrB,IAAI,OAAO;AACT,UAAI,KAAK,OAAO;AACd,eAAO,KAAK;AAAA,MAAA;AAGd,UAAI;AACJ,UAAI,SAAS;AAEb,UAAI;AACF,eAAO,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,MAAA,SAC5B,OAAO;AACd,aAAK,QAAQ;AAAA,MAAA;AAGf,UAAI,KAAK,OAAO;AACd,cAAM,KAAK;AAAA,MAAA,OACN;AACL,aAAK,QAAQ;AACb,eAAO;AAAA,MAAA;AAAA,IACT;AAAA,IAGF,KAAK,OAAO,WAAW,IAAI;AACzB,aAAO;AAAA,IAAA;AAAA,IAGT,YAAY,WAAW,KAAK,MAAM;AAChC,YAAM,IAAI,SAAA;AACV,WAAK,cAAc;AAEnB,WAAK,aAAa;AAClB,WAAK,OAAO;AACZ,WAAK,QAAQ;AACb,WAAK,OAAO;AAEZ,UAAI,MAAM;AACV,WAAK,SAAS,IAAI,OAAO,KAAK,YAAY,QAAW,KAAK,KAAK;AAC/D,WAAK,OAAO,MAAM;AAElB,UAAI,OAAO;AACX,aAAO,eAAe,KAAK,QAAQ,QAAQ;AAAA,QACzC,MAAM;AACJ,iBAAO,KAAK;AAAA,QAAA;AAAA,MACd,CACD;AAED,UAAI,MAAM,IAAI,aAAa,KAAK,QAAW,KAAK,OAAO,GAAG;AAC1D,UAAI,IAAI,SAAS;AACf,YAAI,CAAC,cAAc,YAAY,IAAI,IAAI,SAAA;AACvC,YAAI,cAAc;AAChB,eAAK,OAAO,MAAM;AAAA,QAAA;AAEpB,YAAI,cAAc;AAChB,eAAK,OAAO,MAAM;AAAA,QAAA;AAAA,MACpB,OACK;AACL,YAAI,gBAAA;AACJ,aAAK,OAAO,MAAM,IAAI;AAAA,MAAA;AAAA,IACxB;AAAA,IAGF,QAAQ;AACN,UAAI,KAAK,MAAO,QAAO,QAAQ,OAAO,KAAK,KAAK;AAChD,aAAO,QAAQ,QAAQ,KAAK,MAAM;AAAA,IAAA;AAAA,IAGpC,MAAM,YAAY;AAChB,aAAO,KAAK,QAAQ,MAAM,UAAU;AAAA,IAAA;AAAA,IAGtC,QAAQ,WAAW;AACjB,aAAO,KAAK,MAAA,EAAQ,KAAK,WAAW,SAAS;AAAA,IAAA;AAAA,IAG/C,OAAO;AACL,UAAI,KAAK,MAAO,OAAM,KAAK;AAC3B,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,KAAK,aAAa,YAAY;AAW5B,aAAO,KAAK,MAAA,EAAQ,KAAK,aAAa,UAAU;AAAA,IAAA;AAAA,IAGlD,WAAW;AACT,aAAO,KAAK;AAAA,IAAA;AAAA,IAGd,WAAW;AACT,aAAO,CAAA;AAAA,IAAC;AAAA,EAEZ;AAEA,iBAAiB;AACjB,eAAa,UAAU;;;","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"node.js","sources":["../../../../../../node_modules/postcss/lib/node.js"],"sourcesContent":["'use strict'\n\nlet CssSyntaxError = require('./css-syntax-error')\nlet Stringifier = require('./stringifier')\nlet stringify = require('./stringify')\nlet { isClean, my } = require('./symbols')\n\nfunction cloneNode(obj, parent) {\n let cloned = new obj.constructor()\n\n for (let i in obj) {\n if (!Object.prototype.hasOwnProperty.call(obj, i)) {\n /* c8 ignore next 2 */\n continue\n }\n if (i === 'proxyCache') continue\n let value = obj[i]\n let type = typeof value\n\n if (i === 'parent' && type === 'object') {\n if (parent) cloned[i] = parent\n } else if (i === 'source') {\n cloned[i] = value\n } else if (Array.isArray(value)) {\n cloned[i] = value.map(j => cloneNode(j, cloned))\n } else {\n if (type === 'object' && value !== null) value = cloneNode(value)\n cloned[i] = value\n }\n }\n\n return cloned\n}\n\nfunction sourceOffset(inputCSS, position) {\n // Not all custom syntaxes support `offset` in `source.start` and `source.end`\n if (position && typeof position.offset !== 'undefined') {\n return position.offset\n }\n\n let column = 1\n let line = 1\n let offset = 0\n\n for (let i = 0; i < inputCSS.length; i++) {\n if (line === position.line && column === position.column) {\n offset = i\n break\n }\n\n if (inputCSS[i] === '\\n') {\n column = 1\n line += 1\n } else {\n column += 1\n }\n }\n\n return offset\n}\n\nclass Node {\n get proxyOf() {\n return this\n }\n\n constructor(defaults = {}) {\n this.raws = {}\n this[isClean] = false\n this[my] = true\n\n for (let name in defaults) {\n if (name === 'nodes') {\n this.nodes = []\n for (let node of defaults[name]) {\n if (typeof node.clone === 'function') {\n this.append(node.clone())\n } else {\n this.append(node)\n }\n }\n } else {\n this[name] = defaults[name]\n }\n }\n }\n\n addToError(error) {\n error.postcssNode = this\n if (error.stack && this.source && /\\n\\s{4}at /.test(error.stack)) {\n let s = this.source\n error.stack = error.stack.replace(\n /\\n\\s{4}at /,\n `$&${s.input.from}:${s.start.line}:${s.start.column}$&`\n )\n }\n return error\n }\n\n after(add) {\n this.parent.insertAfter(this, add)\n return this\n }\n\n assign(overrides = {}) {\n for (let name in overrides) {\n this[name] = overrides[name]\n }\n return this\n }\n\n before(add) {\n this.parent.insertBefore(this, add)\n return this\n }\n\n cleanRaws(keepBetween) {\n delete this.raws.before\n delete this.raws.after\n if (!keepBetween) delete this.raws.between\n }\n\n clone(overrides = {}) {\n let cloned = cloneNode(this)\n for (let name in overrides) {\n cloned[name] = overrides[name]\n }\n return cloned\n }\n\n cloneAfter(overrides = {}) {\n let cloned = this.clone(overrides)\n this.parent.insertAfter(this, cloned)\n return cloned\n }\n\n cloneBefore(overrides = {}) {\n let cloned = this.clone(overrides)\n this.parent.insertBefore(this, cloned)\n return cloned\n }\n\n error(message, opts = {}) {\n if (this.source) {\n let { end, start } = this.rangeBy(opts)\n return this.source.input.error(\n message,\n { column: start.column, line: start.line },\n { column: end.column, line: end.line },\n opts\n )\n }\n return new CssSyntaxError(message)\n }\n\n getProxyProcessor() {\n return {\n get(node, prop) {\n if (prop === 'proxyOf') {\n return node\n } else if (prop === 'root') {\n return () => node.root().toProxy()\n } else {\n return node[prop]\n }\n },\n\n set(node, prop, value) {\n if (node[prop] === value) return true\n node[prop] = value\n if (\n prop === 'prop' ||\n prop === 'value' ||\n prop === 'name' ||\n prop === 'params' ||\n prop === 'important' ||\n /* c8 ignore next */\n prop === 'text'\n ) {\n node.markDirty()\n }\n return true\n }\n }\n }\n\n /* c8 ignore next 3 */\n markClean() {\n this[isClean] = true\n }\n\n markDirty() {\n if (this[isClean]) {\n this[isClean] = false\n let next = this\n while ((next = next.parent)) {\n next[isClean] = false\n }\n }\n }\n\n next() {\n if (!this.parent) return undefined\n let index = this.parent.index(this)\n return this.parent.nodes[index + 1]\n }\n\n positionBy(opts = {}) {\n let pos = this.source.start\n if (opts.index) {\n pos = this.positionInside(opts.index)\n } else if (opts.word) {\n let inputString =\n 'document' in this.source.input\n ? this.source.input.document\n : this.source.input.css\n let stringRepresentation = inputString.slice(\n sourceOffset(inputString, this.source.start),\n sourceOffset(inputString, this.source.end)\n )\n let index = stringRepresentation.indexOf(opts.word)\n if (index !== -1) pos = this.positionInside(index)\n }\n return pos\n }\n\n positionInside(index) {\n let column = this.source.start.column\n let line = this.source.start.line\n let inputString =\n 'document' in this.source.input\n ? this.source.input.document\n : this.source.input.css\n let offset = sourceOffset(inputString, this.source.start)\n let end = offset + index\n\n for (let i = offset; i < end; i++) {\n if (inputString[i] === '\\n') {\n column = 1\n line += 1\n } else {\n column += 1\n }\n }\n\n return { column, line, offset: end }\n }\n\n prev() {\n if (!this.parent) return undefined\n let index = this.parent.index(this)\n return this.parent.nodes[index - 1]\n }\n\n rangeBy(opts = {}) {\n let inputString =\n 'document' in this.source.input\n ? this.source.input.document\n : this.source.input.css\n let start = {\n column: this.source.start.column,\n line: this.source.start.line,\n offset: sourceOffset(inputString, this.source.start)\n }\n let end = this.source.end\n ? {\n column: this.source.end.column + 1,\n line: this.source.end.line,\n offset:\n typeof this.source.end.offset === 'number'\n ? // `source.end.offset` is exclusive, so we don't need to add 1\n this.source.end.offset\n : // Since line/column in this.source.end is inclusive,\n // the `sourceOffset(... , this.source.end)` returns an inclusive offset.\n // So, we add 1 to convert it to exclusive.\n sourceOffset(inputString, this.source.end) + 1\n }\n : {\n column: start.column + 1,\n line: start.line,\n offset: start.offset + 1\n }\n\n if (opts.word) {\n let stringRepresentation = inputString.slice(\n sourceOffset(inputString, this.source.start),\n sourceOffset(inputString, this.source.end)\n )\n let index = stringRepresentation.indexOf(opts.word)\n if (index !== -1) {\n start = this.positionInside(index)\n end = this.positionInside(index + opts.word.length)\n }\n } else {\n if (opts.start) {\n start = {\n column: opts.start.column,\n line: opts.start.line,\n offset: sourceOffset(inputString, opts.start)\n }\n } else if (opts.index) {\n start = this.positionInside(opts.index)\n }\n\n if (opts.end) {\n end = {\n column: opts.end.column,\n line: opts.end.line,\n offset: sourceOffset(inputString, opts.end)\n }\n } else if (typeof opts.endIndex === 'number') {\n end = this.positionInside(opts.endIndex)\n } else if (opts.index) {\n end = this.positionInside(opts.index + 1)\n }\n }\n\n if (\n end.line < start.line ||\n (end.line === start.line && end.column <= start.column)\n ) {\n end = {\n column: start.column + 1,\n line: start.line,\n offset: start.offset + 1\n }\n }\n\n return { end, start }\n }\n\n raw(prop, defaultType) {\n let str = new Stringifier()\n return str.raw(this, prop, defaultType)\n }\n\n remove() {\n if (this.parent) {\n this.parent.removeChild(this)\n }\n this.parent = undefined\n return this\n }\n\n replaceWith(...nodes) {\n if (this.parent) {\n let bookmark = this\n let foundSelf = false\n for (let node of nodes) {\n if (node === this) {\n foundSelf = true\n } else if (foundSelf) {\n this.parent.insertAfter(bookmark, node)\n bookmark = node\n } else {\n this.parent.insertBefore(bookmark, node)\n }\n }\n\n if (!foundSelf) {\n this.remove()\n }\n }\n\n return this\n }\n\n root() {\n let result = this\n while (result.parent && result.parent.type !== 'document') {\n result = result.parent\n }\n return result\n }\n\n toJSON(_, inputs) {\n let fixed = {}\n let emitInputs = inputs == null\n inputs = inputs || new Map()\n let inputsNextIndex = 0\n\n for (let name in this) {\n if (!Object.prototype.hasOwnProperty.call(this, name)) {\n /* c8 ignore next 2 */\n continue\n }\n if (name === 'parent' || name === 'proxyCache') continue\n let value = this[name]\n\n if (Array.isArray(value)) {\n fixed[name] = value.map(i => {\n if (typeof i === 'object' && i.toJSON) {\n return i.toJSON(null, inputs)\n } else {\n return i\n }\n })\n } else if (typeof value === 'object' && value.toJSON) {\n fixed[name] = value.toJSON(null, inputs)\n } else if (name === 'source') {\n if (value == null) continue\n let inputId = inputs.get(value.input)\n if (inputId == null) {\n inputId = inputsNextIndex\n inputs.set(value.input, inputsNextIndex)\n inputsNextIndex++\n }\n fixed[name] = {\n end: value.end,\n inputId,\n start: value.start\n }\n } else {\n fixed[name] = value\n }\n }\n\n if (emitInputs) {\n fixed.inputs = [...inputs.keys()].map(input => input.toJSON())\n }\n\n return fixed\n }\n\n toProxy() {\n if (!this.proxyCache) {\n this.proxyCache = new Proxy(this, this.getProxyProcessor())\n }\n return this.proxyCache\n }\n\n toString(stringifier = stringify) {\n if (stringifier.stringify) stringifier = stringifier.stringify\n let result = ''\n stringifier(this, i => {\n result += i\n })\n return result\n }\n\n warn(result, text, opts = {}) {\n let data = { node: this }\n for (let i in opts) data[i] = opts[i]\n return result.warn(text, data)\n }\n}\n\nmodule.exports = Node\nNode.default = Node\n"],"names":["require$$0","require$$1","require$$2","require$$3","node"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.js","sources":["../../../../../../node_modules/postcss/lib/parse.js"],"sourcesContent":["'use strict'\n\nlet Container = require('./container')\nlet Input = require('./input')\nlet Parser = require('./parser')\n\nfunction parse(css, opts) {\n let input = new Input(css, opts)\n let parser = new Parser(input)\n try {\n parser.parse()\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n if (e.name === 'CssSyntaxError' && opts && opts.from) {\n if (/\\.scss$/i.test(opts.from)) {\n e.message +=\n '\\nYou tried to parse SCSS with ' +\n 'the standard CSS parser; ' +\n 'try again with the postcss-scss parser'\n } else if (/\\.sass/i.test(opts.from)) {\n e.message +=\n '\\nYou tried to parse Sass with ' +\n 'the standard CSS parser; ' +\n 'try again with the postcss-sass parser'\n } else if (/\\.less$/i.test(opts.from)) {\n e.message +=\n '\\nYou tried to parse Less with ' +\n 'the standard CSS parser; ' +\n 'try again with the postcss-less parser'\n }\n }\n }\n throw e\n }\n\n return parser.root\n}\n\nmodule.exports = parse\nparse.default = parse\n\nContainer.registerParse(parse)\n"],"names":["require$$0","require$$1","require$$2"],"mappings":";;;;;;;;AAEA,MAAI,YAAYA,iBAAA;AAChB,MAAI,QAAQC,aAAA;AACZ,MAAI,SAASC,cAAA;AAEb,WAAS,MAAM,KAAK,MAAM;AACxB,QAAI,QAAQ,IAAI,MAAM,KAAK,IAAI;AAC/B,QAAI,SAAS,IAAI,OAAO,KAAK;AAC7B,QAAI;AACF,aAAO,MAAA;AAAA,IAAM,SACN,GAAG;AAqBV,YAAM;AAAA,IAAA;AAGR,WAAO,OAAO;AAAA,EAChB;AAEA,YAAiB;AACjB,QAAM,UAAU;AAEhB,YAAU,cAAc,KAAK;;;","x_google_ignoreList":[0]}