@studiometa/ui 0.2.14 → 0.2.16

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 (292) hide show
  1. package/atoms/AnchorScrollTo/AnchorScrollTo.cjs +1 -0
  2. package/atoms/AnchorScrollTo/AnchorScrollTo.cjs.map +7 -0
  3. package/atoms/AnchorScrollTo/AnchorScrollTo.js +4 -9
  4. package/atoms/AnchorScrollTo/AnchorScrollTo.js.map +7 -0
  5. package/atoms/AnchorScrollTo/index.cjs +1 -0
  6. package/atoms/AnchorScrollTo/index.cjs.map +7 -0
  7. package/atoms/AnchorScrollTo/index.js +1 -0
  8. package/atoms/AnchorScrollTo/index.js.map +7 -0
  9. package/atoms/Cursor/Cursor.cjs +7 -9
  10. package/atoms/Cursor/Cursor.cjs.map +7 -0
  11. package/atoms/Cursor/Cursor.js +44 -52
  12. package/atoms/Cursor/Cursor.js.map +7 -0
  13. package/atoms/Cursor/index.cjs +1 -0
  14. package/atoms/Cursor/index.cjs.map +7 -0
  15. package/atoms/Cursor/index.js +1 -0
  16. package/atoms/Cursor/index.js.map +7 -0
  17. package/atoms/Figure/Figure.cjs +1 -0
  18. package/atoms/Figure/Figure.cjs.map +7 -0
  19. package/atoms/Figure/Figure.js +10 -15
  20. package/atoms/Figure/Figure.js.map +7 -0
  21. package/atoms/Figure/FigureTwicPics.cjs +1 -0
  22. package/atoms/Figure/FigureTwicPics.cjs.map +7 -0
  23. package/atoms/Figure/FigureTwicPics.js +17 -22
  24. package/atoms/Figure/FigureTwicPics.js.map +7 -0
  25. package/atoms/Figure/index.cjs +1 -0
  26. package/atoms/Figure/index.cjs.map +7 -0
  27. package/atoms/Figure/index.js +1 -0
  28. package/atoms/Figure/index.js.map +7 -0
  29. package/atoms/LargeText/LargeText.cjs +8 -10
  30. package/atoms/LargeText/LargeText.cjs.map +7 -0
  31. package/atoms/LargeText/LargeText.js +23 -31
  32. package/atoms/LargeText/LargeText.js.map +7 -0
  33. package/atoms/LargeText/index.cjs +1 -0
  34. package/atoms/LargeText/index.cjs.map +7 -0
  35. package/atoms/LargeText/index.js +1 -0
  36. package/atoms/LargeText/index.js.map +7 -0
  37. package/atoms/LazyInclude/LazyInclude.cjs +1 -0
  38. package/atoms/LazyInclude/LazyInclude.cjs.map +7 -0
  39. package/atoms/LazyInclude/LazyInclude.js +10 -15
  40. package/atoms/LazyInclude/LazyInclude.js.map +7 -0
  41. package/atoms/LazyInclude/index.cjs +1 -0
  42. package/atoms/LazyInclude/index.cjs.map +7 -0
  43. package/atoms/LazyInclude/index.js +1 -0
  44. package/atoms/LazyInclude/index.js.map +7 -0
  45. package/atoms/Prefetch/AbstractPrefetch.cjs +1 -0
  46. package/atoms/Prefetch/AbstractPrefetch.cjs.map +7 -0
  47. package/atoms/Prefetch/AbstractPrefetch.js +15 -21
  48. package/atoms/Prefetch/AbstractPrefetch.js.map +7 -0
  49. package/atoms/Prefetch/PrefetchWhenOver.cjs +1 -0
  50. package/atoms/Prefetch/PrefetchWhenOver.cjs.map +7 -0
  51. package/atoms/Prefetch/PrefetchWhenOver.js +5 -10
  52. package/atoms/Prefetch/PrefetchWhenOver.js.map +7 -0
  53. package/atoms/Prefetch/PrefetchWhenVisible.cjs +1 -0
  54. package/atoms/Prefetch/PrefetchWhenVisible.cjs.map +7 -0
  55. package/atoms/Prefetch/PrefetchWhenVisible.js +5 -10
  56. package/atoms/Prefetch/PrefetchWhenVisible.js.map +7 -0
  57. package/atoms/Prefetch/index.cjs +1 -0
  58. package/atoms/Prefetch/index.cjs.map +7 -0
  59. package/atoms/Prefetch/index.js +1 -0
  60. package/atoms/Prefetch/index.js.map +7 -0
  61. package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs +1 -0
  62. package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs.map +7 -0
  63. package/atoms/ScrollAnimation/AbstractScrollAnimation.js +25 -30
  64. package/atoms/ScrollAnimation/AbstractScrollAnimation.js.map +7 -0
  65. package/atoms/ScrollAnimation/ScrollAnimation.cjs +1 -0
  66. package/atoms/ScrollAnimation/ScrollAnimation.cjs.map +7 -0
  67. package/atoms/ScrollAnimation/ScrollAnimation.js +6 -11
  68. package/atoms/ScrollAnimation/ScrollAnimation.js.map +7 -0
  69. package/atoms/ScrollAnimation/ScrollAnimationChild.cjs +9 -11
  70. package/atoms/ScrollAnimation/ScrollAnimationChild.cjs.map +7 -0
  71. package/atoms/ScrollAnimation/ScrollAnimationChild.js +24 -32
  72. package/atoms/ScrollAnimation/ScrollAnimationChild.js.map +7 -0
  73. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs +1 -0
  74. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs.map +7 -0
  75. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js +5 -10
  76. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js.map +7 -0
  77. package/atoms/ScrollAnimation/ScrollAnimationParent.cjs +1 -0
  78. package/atoms/ScrollAnimation/ScrollAnimationParent.cjs.map +7 -0
  79. package/atoms/ScrollAnimation/ScrollAnimationParent.js +7 -12
  80. package/atoms/ScrollAnimation/ScrollAnimationParent.js.map +7 -0
  81. package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs +1 -0
  82. package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs.map +7 -0
  83. package/atoms/ScrollAnimation/ScrollAnimationWithEase.js +5 -10
  84. package/atoms/ScrollAnimation/ScrollAnimationWithEase.js.map +7 -0
  85. package/atoms/ScrollAnimation/animationScrollWithEase.cjs +12 -16
  86. package/atoms/ScrollAnimation/animationScrollWithEase.cjs.map +7 -0
  87. package/atoms/ScrollAnimation/animationScrollWithEase.js +12 -17
  88. package/atoms/ScrollAnimation/animationScrollWithEase.js.map +7 -0
  89. package/atoms/ScrollAnimation/index.cjs +1 -0
  90. package/atoms/ScrollAnimation/index.cjs.map +7 -0
  91. package/atoms/ScrollAnimation/index.js +1 -0
  92. package/atoms/ScrollAnimation/index.js.map +7 -0
  93. package/atoms/ScrollReveal/ScrollReveal.cjs +2 -2
  94. package/atoms/ScrollReveal/ScrollReveal.cjs.map +7 -0
  95. package/atoms/ScrollReveal/ScrollReveal.js +24 -31
  96. package/atoms/ScrollReveal/ScrollReveal.js.map +7 -0
  97. package/atoms/ScrollReveal/index.cjs +1 -0
  98. package/atoms/ScrollReveal/index.cjs.map +7 -0
  99. package/atoms/ScrollReveal/index.js +1 -0
  100. package/atoms/ScrollReveal/index.js.map +7 -0
  101. package/atoms/index.cjs +1 -0
  102. package/atoms/index.cjs.map +7 -0
  103. package/atoms/index.js +1 -0
  104. package/atoms/index.js.map +7 -0
  105. package/decorators/index.cjs +1 -0
  106. package/decorators/index.cjs.map +7 -0
  107. package/decorators/index.js +1 -0
  108. package/decorators/index.js.map +7 -0
  109. package/decorators/withTransition.cjs +18 -27
  110. package/decorators/withTransition.cjs.map +7 -0
  111. package/decorators/withTransition.js +19 -29
  112. package/decorators/withTransition.js.map +7 -0
  113. package/index.cjs +1 -0
  114. package/index.cjs.map +7 -0
  115. package/index.js +1 -0
  116. package/index.js.map +7 -0
  117. package/molecules/Accordion/Accordion.cjs +1 -0
  118. package/molecules/Accordion/Accordion.cjs.map +7 -0
  119. package/molecules/Accordion/Accordion.js +7 -12
  120. package/molecules/Accordion/Accordion.js.map +7 -0
  121. package/molecules/Accordion/AccordionCore.cjs +1 -0
  122. package/molecules/Accordion/AccordionCore.cjs.map +7 -0
  123. package/molecules/Accordion/AccordionCore.js +12 -17
  124. package/molecules/Accordion/AccordionCore.js.map +7 -0
  125. package/molecules/Accordion/AccordionItem.cjs +2 -2
  126. package/molecules/Accordion/AccordionItem.cjs.map +7 -0
  127. package/molecules/Accordion/AccordionItem.js +23 -30
  128. package/molecules/Accordion/AccordionItem.js.map +7 -0
  129. package/molecules/Accordion/index.cjs +1 -0
  130. package/molecules/Accordion/index.cjs.map +7 -0
  131. package/molecules/Accordion/index.js +1 -0
  132. package/molecules/Accordion/index.js.map +7 -0
  133. package/molecules/Menu/Menu.cjs +1 -0
  134. package/molecules/Menu/Menu.cjs.map +7 -0
  135. package/molecules/Menu/Menu.js +17 -23
  136. package/molecules/Menu/Menu.js.map +7 -0
  137. package/molecules/Menu/MenuBtn.cjs +2 -4
  138. package/molecules/Menu/MenuBtn.cjs.map +7 -0
  139. package/molecules/Menu/MenuBtn.js +5 -13
  140. package/molecules/Menu/MenuBtn.js.map +7 -0
  141. package/molecules/Menu/MenuList.cjs +3 -5
  142. package/molecules/Menu/MenuList.cjs.map +7 -0
  143. package/molecules/Menu/MenuList.d.ts +1 -1
  144. package/molecules/Menu/MenuList.js +13 -22
  145. package/molecules/Menu/MenuList.js.map +7 -0
  146. package/molecules/Menu/index.cjs +1 -0
  147. package/molecules/Menu/index.cjs.map +7 -0
  148. package/molecules/Menu/index.js +1 -0
  149. package/molecules/Menu/index.js.map +7 -0
  150. package/molecules/Modal/Modal.cjs +8 -15
  151. package/molecules/Modal/Modal.cjs.map +7 -0
  152. package/molecules/Modal/Modal.d.ts +1 -1
  153. package/molecules/Modal/Modal.js +34 -47
  154. package/molecules/Modal/Modal.js.map +7 -0
  155. package/molecules/Modal/ModalWithTransition.cjs +1 -0
  156. package/molecules/Modal/ModalWithTransition.cjs.map +7 -0
  157. package/molecules/Modal/ModalWithTransition.js +26 -31
  158. package/molecules/Modal/ModalWithTransition.js.map +7 -0
  159. package/molecules/Modal/index.cjs +1 -0
  160. package/molecules/Modal/index.cjs.map +7 -0
  161. package/molecules/Modal/index.js +1 -0
  162. package/molecules/Modal/index.js.map +7 -0
  163. package/molecules/Panel/Panel.cjs +3 -6
  164. package/molecules/Panel/Panel.cjs.map +7 -0
  165. package/molecules/Panel/Panel.js +20 -30
  166. package/molecules/Panel/Panel.js.map +7 -0
  167. package/molecules/Panel/index.cjs +1 -0
  168. package/molecules/Panel/index.cjs.map +7 -0
  169. package/molecules/Panel/index.js +1 -0
  170. package/molecules/Panel/index.js.map +7 -0
  171. package/molecules/Slider/AbstractSliderChild.cjs +1 -0
  172. package/molecules/Slider/AbstractSliderChild.cjs.map +7 -0
  173. package/molecules/Slider/AbstractSliderChild.js +4 -9
  174. package/molecules/Slider/AbstractSliderChild.js.map +7 -0
  175. package/molecules/Slider/Slider.cjs +14 -16
  176. package/molecules/Slider/Slider.cjs.map +7 -0
  177. package/molecules/Slider/Slider.js +30 -38
  178. package/molecules/Slider/Slider.js.map +7 -0
  179. package/molecules/Slider/SliderBtn.cjs +1 -0
  180. package/molecules/Slider/SliderBtn.cjs.map +7 -0
  181. package/molecules/Slider/SliderBtn.js +8 -13
  182. package/molecules/Slider/SliderBtn.js.map +7 -0
  183. package/molecules/Slider/SliderCount.cjs +1 -0
  184. package/molecules/Slider/SliderCount.cjs.map +7 -0
  185. package/molecules/Slider/SliderCount.js +5 -10
  186. package/molecules/Slider/SliderCount.js.map +7 -0
  187. package/molecules/Slider/SliderDots.cjs +2 -4
  188. package/molecules/Slider/SliderDots.cjs.map +7 -0
  189. package/molecules/Slider/SliderDots.js +6 -14
  190. package/molecules/Slider/SliderDots.js.map +7 -0
  191. package/molecules/Slider/SliderDrag.cjs +1 -0
  192. package/molecules/Slider/SliderDrag.cjs.map +7 -0
  193. package/molecules/Slider/SliderDrag.js +11 -16
  194. package/molecules/Slider/SliderDrag.js.map +7 -0
  195. package/molecules/Slider/SliderItem.cjs +5 -7
  196. package/molecules/Slider/SliderItem.cjs.map +7 -0
  197. package/molecules/Slider/SliderItem.js +9 -17
  198. package/molecules/Slider/SliderItem.js.map +7 -0
  199. package/molecules/Slider/SliderProgress.cjs +1 -0
  200. package/molecules/Slider/SliderProgress.cjs.map +7 -0
  201. package/molecules/Slider/SliderProgress.js +5 -10
  202. package/molecules/Slider/SliderProgress.js.map +7 -0
  203. package/molecules/Slider/index.cjs +1 -0
  204. package/molecules/Slider/index.cjs.map +7 -0
  205. package/molecules/Slider/index.js +1 -0
  206. package/molecules/Slider/index.js.map +7 -0
  207. package/molecules/Sticky/Sticky.cjs +4 -6
  208. package/molecules/Sticky/Sticky.cjs.map +7 -0
  209. package/molecules/Sticky/Sticky.js +25 -34
  210. package/molecules/Sticky/Sticky.js.map +7 -0
  211. package/molecules/Sticky/index.cjs +1 -0
  212. package/molecules/Sticky/index.cjs.map +7 -0
  213. package/molecules/Sticky/index.js +1 -0
  214. package/molecules/Sticky/index.js.map +7 -0
  215. package/molecules/TableOfContent/TableOfContent.cjs +1 -0
  216. package/molecules/TableOfContent/TableOfContent.cjs.map +7 -0
  217. package/molecules/TableOfContent/TableOfContent.js +12 -17
  218. package/molecules/TableOfContent/TableOfContent.js.map +7 -0
  219. package/molecules/TableOfContent/TableOfContentAnchor.cjs +2 -4
  220. package/molecules/TableOfContent/TableOfContentAnchor.cjs.map +7 -0
  221. package/molecules/TableOfContent/TableOfContentAnchor.js +12 -20
  222. package/molecules/TableOfContent/TableOfContentAnchor.js.map +7 -0
  223. package/molecules/TableOfContent/index.cjs +1 -0
  224. package/molecules/TableOfContent/index.cjs.map +7 -0
  225. package/molecules/TableOfContent/index.js +1 -0
  226. package/molecules/TableOfContent/index.js.map +7 -0
  227. package/molecules/Tabs/Tabs.cjs +2 -4
  228. package/molecules/Tabs/Tabs.cjs.map +7 -0
  229. package/molecules/Tabs/Tabs.js +23 -31
  230. package/molecules/Tabs/Tabs.js.map +7 -0
  231. package/molecules/Tabs/index.cjs +1 -0
  232. package/molecules/Tabs/index.cjs.map +7 -0
  233. package/molecules/Tabs/index.js +1 -0
  234. package/molecules/Tabs/index.js.map +7 -0
  235. package/molecules/index.cjs +1 -0
  236. package/molecules/index.cjs.map +7 -0
  237. package/molecules/index.js +1 -0
  238. package/molecules/index.js.map +7 -0
  239. package/organisms/Frame/Frame.cjs +1 -0
  240. package/organisms/Frame/Frame.cjs.map +7 -0
  241. package/organisms/Frame/Frame.js +26 -32
  242. package/organisms/Frame/Frame.js.map +7 -0
  243. package/organisms/Frame/FrameAnchor.cjs +1 -0
  244. package/organisms/Frame/FrameAnchor.cjs.map +7 -0
  245. package/organisms/Frame/FrameAnchor.js +4 -9
  246. package/organisms/Frame/FrameAnchor.js.map +7 -0
  247. package/organisms/Frame/FrameForm.cjs +1 -0
  248. package/organisms/Frame/FrameForm.cjs.map +7 -0
  249. package/organisms/Frame/FrameForm.js +4 -9
  250. package/organisms/Frame/FrameForm.js.map +7 -0
  251. package/organisms/Frame/FrameTarget.cjs +3 -5
  252. package/organisms/Frame/FrameTarget.cjs.map +7 -0
  253. package/organisms/Frame/FrameTarget.d.ts +1 -1
  254. package/organisms/Frame/FrameTarget.js +24 -33
  255. package/organisms/Frame/FrameTarget.js.map +7 -0
  256. package/organisms/Frame/index.cjs +1 -0
  257. package/organisms/Frame/index.cjs.map +7 -0
  258. package/organisms/Frame/index.js +1 -0
  259. package/organisms/Frame/index.js.map +7 -0
  260. package/organisms/index.cjs +1 -0
  261. package/organisms/index.cjs.map +7 -0
  262. package/organisms/index.js +1 -0
  263. package/organisms/index.js.map +7 -0
  264. package/package.json +2 -2
  265. package/primitives/Draggable/Draggable.cjs +5 -7
  266. package/primitives/Draggable/Draggable.cjs.map +7 -0
  267. package/primitives/Draggable/Draggable.js +8 -16
  268. package/primitives/Draggable/Draggable.js.map +7 -0
  269. package/primitives/Draggable/index.cjs +1 -0
  270. package/primitives/Draggable/index.cjs.map +7 -0
  271. package/primitives/Draggable/index.js +1 -0
  272. package/primitives/Draggable/index.js.map +7 -0
  273. package/primitives/Sentinel/Sentinel.cjs +1 -0
  274. package/primitives/Sentinel/Sentinel.cjs.map +7 -0
  275. package/primitives/Sentinel/Sentinel.js +4 -9
  276. package/primitives/Sentinel/Sentinel.js.map +7 -0
  277. package/primitives/Sentinel/index.cjs +1 -0
  278. package/primitives/Sentinel/index.cjs.map +7 -0
  279. package/primitives/Sentinel/index.js +1 -0
  280. package/primitives/Sentinel/index.js.map +7 -0
  281. package/primitives/Transition/Transition.cjs +1 -0
  282. package/primitives/Transition/Transition.cjs.map +7 -0
  283. package/primitives/Transition/Transition.js +4 -9
  284. package/primitives/Transition/Transition.js.map +7 -0
  285. package/primitives/Transition/index.cjs +1 -0
  286. package/primitives/Transition/index.cjs.map +7 -0
  287. package/primitives/Transition/index.js +1 -0
  288. package/primitives/Transition/index.js.map +7 -0
  289. package/primitives/index.cjs +1 -0
  290. package/primitives/index.cjs.map +7 -0
  291. package/primitives/index.js +1 -0
  292. package/primitives/index.js.map +7 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Tabs/Tabs.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { transition } from '@studiometa/js-toolkit/utils';\n\ntype TabItem = {\n btn: HTMLElement;\n content: HTMLElement;\n isEnabled: boolean;\n};\n\ntype TabsStates = Partial<\n Record<'open' | 'active' | 'closed', string | Partial<CSSStyleDeclaration>>\n>;\n// eslint-disable-next-line no-use-before-define\ntype TabsStylesOption = Partial<Record<keyof TabsProps['$refs'], TabsStates>>;\n\nexport interface TabsProps extends BaseProps {\n $options: {\n styles: TabsStylesOption;\n };\n $refs: {\n btn: HTMLElement[];\n content: HTMLElement[];\n };\n}\n\n/**\n * Tabs class.\n */\nexport class Tabs<T extends BaseProps = BaseProps> extends Base<T & TabsProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'Tabs',\n refs: ['btn[]', 'content[]'],\n emits: ['enable', 'disable'],\n options: {\n styles: {\n type: Object,\n default: (): TabsStylesOption => ({\n content: {\n closed: {\n position: 'absolute',\n opacity: '0',\n pointerEvents: 'none',\n visibility: 'hidden',\n },\n },\n }),\n merge: true,\n },\n },\n };\n\n items: TabItem[];\n\n /**\n * Initialize the component's behaviours.\n * @returns {void}\n */\n mounted() {\n this.items = this.$refs.btn.map((btn, index) => {\n const id = `${this.$id}-${index}`;\n const content = this.$refs.content[index];\n btn.setAttribute('id', id);\n content.setAttribute('aria-labelledby', id);\n\n const item = { btn, content, isEnabled: index > 0 };\n if (index > 0) {\n this.disableItem(item);\n } else {\n this.enableItem(item);\n }\n return item;\n });\n }\n\n /**\n * Switch tab on button click.\n */\n onBtnClick(event:MouseEvent, index:number) {\n this.items.forEach((item, i) => {\n if (i !== index) {\n this.disableItem(item);\n }\n });\n\n this.enableItem(this.items[index]);\n }\n\n /**\n * Enable the given tab and its associated content.\n */\n async enableItem(item:TabItem):Promise<this> {\n if (!item || item.isEnabled) {\n return Promise.resolve(this);\n }\n\n item.isEnabled = true;\n const { btn, content } = item;\n const btnStyles = this.$options.styles.btn || {};\n const contentStyles = this.$options.styles.content || {};\n\n content.setAttribute('aria-hidden', 'false');\n this.$emit('enable', item);\n\n return Promise.all([\n transition(\n btn,\n {\n from: btnStyles.closed,\n active: btnStyles.active,\n to: btnStyles.open,\n },\n 'keep',\n ),\n transition(\n content,\n {\n from: contentStyles.closed,\n active: contentStyles.active,\n to: contentStyles.open,\n },\n 'keep',\n ),\n ]).then(() => Promise.resolve(this));\n }\n\n /**\n * Disable the given tab and its associated content.\n */\n async disableItem(item:TabItem):Promise<this> {\n if (!item || !item.isEnabled) {\n return Promise.resolve(this);\n }\n\n item.isEnabled = false;\n const { btn, content } = item;\n const btnStyles = this.$options.styles.btn || {};\n const contentStyles = this.$options.styles.content || {};\n\n content.setAttribute('aria-hidden', 'true');\n this.$emit('disable', item);\n\n return Promise.all([\n transition(\n btn,\n {\n from: btnStyles.open,\n active: btnStyles.active,\n to: btnStyles.closed,\n },\n 'keep',\n ),\n transition(\n content,\n {\n from: contentStyles.open,\n active: contentStyles.active,\n to: contentStyles.closed,\n },\n 'keep',\n ),\n ]).then(() => Promise.resolve(this));\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,16 +1,28 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
1
  import { Base } from "@studiometa/js-toolkit";
8
2
  import { transition } from "@studiometa/js-toolkit/utils";
9
3
  class Tabs extends Base {
10
- constructor() {
11
- super(...arguments);
12
- __publicField(this, "items");
13
- }
4
+ static config = {
5
+ name: "Tabs",
6
+ refs: ["btn[]", "content[]"],
7
+ emits: ["enable", "disable"],
8
+ options: {
9
+ styles: {
10
+ type: Object,
11
+ default: () => ({
12
+ content: {
13
+ closed: {
14
+ position: "absolute",
15
+ opacity: "0",
16
+ pointerEvents: "none",
17
+ visibility: "hidden"
18
+ }
19
+ }
20
+ }),
21
+ merge: true
22
+ }
23
+ }
24
+ };
25
+ items;
14
26
  mounted() {
15
27
  this.items = this.$refs.btn.map((btn, index) => {
16
28
  const id = `${this.$id}-${index}`;
@@ -97,27 +109,7 @@ class Tabs extends Base {
97
109
  ]).then(() => Promise.resolve(this));
98
110
  }
99
111
  }
100
- __publicField(Tabs, "config", {
101
- name: "Tabs",
102
- refs: ["btn[]", "content[]"],
103
- emits: ["enable", "disable"],
104
- options: {
105
- styles: {
106
- type: Object,
107
- default: () => ({
108
- content: {
109
- closed: {
110
- position: "absolute",
111
- opacity: "0",
112
- pointerEvents: "none",
113
- visibility: "hidden"
114
- }
115
- }
116
- }),
117
- merge: true
118
- }
119
- }
120
- });
121
112
  export {
122
113
  Tabs
123
114
  };
115
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Tabs/Tabs.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { transition } from '@studiometa/js-toolkit/utils';\n\ntype TabItem = {\n btn: HTMLElement;\n content: HTMLElement;\n isEnabled: boolean;\n};\n\ntype TabsStates = Partial<\n Record<'open' | 'active' | 'closed', string | Partial<CSSStyleDeclaration>>\n>;\n// eslint-disable-next-line no-use-before-define\ntype TabsStylesOption = Partial<Record<keyof TabsProps['$refs'], TabsStates>>;\n\nexport interface TabsProps extends BaseProps {\n $options: {\n styles: TabsStylesOption;\n };\n $refs: {\n btn: HTMLElement[];\n content: HTMLElement[];\n };\n}\n\n/**\n * Tabs class.\n */\nexport class Tabs<T extends BaseProps = BaseProps> extends Base<T & TabsProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'Tabs',\n refs: ['btn[]', 'content[]'],\n emits: ['enable', 'disable'],\n options: {\n styles: {\n type: Object,\n default: (): TabsStylesOption => ({\n content: {\n closed: {\n position: 'absolute',\n opacity: '0',\n pointerEvents: 'none',\n visibility: 'hidden',\n },\n },\n }),\n merge: true,\n },\n },\n };\n\n items: TabItem[];\n\n /**\n * Initialize the component's behaviours.\n * @returns {void}\n */\n mounted() {\n this.items = this.$refs.btn.map((btn, index) => {\n const id = `${this.$id}-${index}`;\n const content = this.$refs.content[index];\n btn.setAttribute('id', id);\n content.setAttribute('aria-labelledby', id);\n\n const item = { btn, content, isEnabled: index > 0 };\n if (index > 0) {\n this.disableItem(item);\n } else {\n this.enableItem(item);\n }\n return item;\n });\n }\n\n /**\n * Switch tab on button click.\n */\n onBtnClick(event:MouseEvent, index:number) {\n this.items.forEach((item, i) => {\n if (i !== index) {\n this.disableItem(item);\n }\n });\n\n this.enableItem(this.items[index]);\n }\n\n /**\n * Enable the given tab and its associated content.\n */\n async enableItem(item:TabItem):Promise<this> {\n if (!item || item.isEnabled) {\n return Promise.resolve(this);\n }\n\n item.isEnabled = true;\n const { btn, content } = item;\n const btnStyles = this.$options.styles.btn || {};\n const contentStyles = this.$options.styles.content || {};\n\n content.setAttribute('aria-hidden', 'false');\n this.$emit('enable', item);\n\n return Promise.all([\n transition(\n btn,\n {\n from: btnStyles.closed,\n active: btnStyles.active,\n to: btnStyles.open,\n },\n 'keep',\n ),\n transition(\n content,\n {\n from: contentStyles.closed,\n active: contentStyles.active,\n to: contentStyles.open,\n },\n 'keep',\n ),\n ]).then(() => Promise.resolve(this));\n }\n\n /**\n * Disable the given tab and its associated content.\n */\n async disableItem(item:TabItem):Promise<this> {\n if (!item || !item.isEnabled) {\n return Promise.resolve(this);\n }\n\n item.isEnabled = false;\n const { btn, content } = item;\n const btnStyles = this.$options.styles.btn || {};\n const contentStyles = this.$options.styles.content || {};\n\n content.setAttribute('aria-hidden', 'true');\n this.$emit('disable', item);\n\n return Promise.all([\n transition(\n btn,\n {\n from: btnStyles.open,\n active: btnStyles.active,\n to: btnStyles.closed,\n },\n 'keep',\n ),\n transition(\n content,\n {\n from: contentStyles.open,\n active: contentStyles.active,\n to: contentStyles.closed,\n },\n 'keep',\n ),\n ]).then(() => Promise.resolve(this));\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -18,3 +18,4 @@ var Tabs_exports = {};
18
18
  module.exports = __toCommonJS(Tabs_exports);
19
19
  __reExport(Tabs_exports, require("./Tabs.cjs"), module.exports);
20
20
  if (module.exports.default) module.exports = module.exports.default;
21
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Tabs/index.ts"],
4
+ "sourcesContent": ["export * from './Tabs.js';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,yBAAc,uBAAd;",
6
+ "names": []
7
+ }
@@ -1 +1,2 @@
1
1
  export * from "./Tabs.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Tabs/index.ts"],
4
+ "sourcesContent": ["export * from './Tabs.js';\n"],
5
+ "mappings": "AAAA,cAAc;",
6
+ "names": []
7
+ }
@@ -26,3 +26,4 @@ __reExport(molecules_exports, require("./Tabs/index.cjs"), module.exports);
26
26
  __reExport(molecules_exports, require("./Modal/index.cjs"), module.exports);
27
27
  __reExport(molecules_exports, require("./Panel/index.cjs"), module.exports);
28
28
  if (module.exports.default) module.exports = module.exports.default;
29
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../packages/ui/molecules/index.ts"],
4
+ "sourcesContent": ["export * from './Accordion/Accordion.js';\nexport * from './Accordion/AccordionItem.js';\nexport * from './Menu/index.js';\nexport * from './Slider/index.js';\nexport * from './Sticky/Sticky.js';\nexport * from './TableOfContent/index.js';\nexport * from './Tabs/index.js';\nexport * from './Modal/index.js';\nexport * from './Panel/index.js';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,8BAAc,sCAAd;AACA,8BAAc,0CADd;AAEA,8BAAc,6BAFd;AAGA,8BAAc,+BAHd;AAIA,8BAAc,gCAJd;AAKA,8BAAc,uCALd;AAMA,8BAAc,6BANd;AAOA,8BAAc,8BAPd;AAQA,8BAAc,8BARd;",
6
+ "names": []
7
+ }
@@ -7,3 +7,4 @@ export * from "./TableOfContent/index.js";
7
7
  export * from "./Tabs/index.js";
8
8
  export * from "./Modal/index.js";
9
9
  export * from "./Panel/index.js";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../packages/ui/molecules/index.ts"],
4
+ "sourcesContent": ["export * from './Accordion/Accordion.js';\nexport * from './Accordion/AccordionItem.js';\nexport * from './Menu/index.js';\nexport * from './Slider/index.js';\nexport * from './Sticky/Sticky.js';\nexport * from './TableOfContent/index.js';\nexport * from './Tabs/index.js';\nexport * from './Modal/index.js';\nexport * from './Panel/index.js';\n"],
5
+ "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
6
+ "names": []
7
+ }
@@ -180,3 +180,4 @@ __publicField(Frame, "config", {
180
180
  }
181
181
  });
182
182
  if (module.exports.default) module.exports = module.exports.default;
183
+ //# sourceMappingURL=Frame.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/Frame.ts"],
4
+ "sourcesContent": ["import { Base, isDirectChild, getDirectChildren } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { nextFrame, historyPush } from '@studiometa/js-toolkit/utils';\nimport { FrameAnchor } from './FrameAnchor.js';\nimport { FrameForm } from './FrameForm.js';\nimport { FrameTarget } from './FrameTarget.js';\n\n/**\n * Get the scroll position.\n */\nfunction getScrollPosition() {\n return {\n left: window.pageXOffset,\n top: window.pageYOffset,\n };\n}\n\n/**\n * The fetch cache.\n */\nconst cache: Map<\n string,\n { promise: Promise<string>; status: 'pending' | 'resolved' | 'error'; content: string }\n> = new Map();\n\nexport interface FrameProps extends BaseProps {\n $children: {\n FrameAnchor: FrameAnchor[];\n FrameForm: FrameForm[];\n FrameTarget: FrameTarget[];\n // eslint-disable-next-line no-use-before-define\n Frame: Frame[];\n };\n $options: {\n history: boolean;\n };\n}\n\n/**\n * Class.\n */\nexport class Frame<T extends BaseProps = BaseProps> extends Base<T & FrameProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'Frame',\n emits: [\n 'before-fetch',\n 'after-fetch',\n 'before-leave',\n 'after-leave',\n 'before-content',\n 'after-content',\n 'before-enter',\n 'after-enter',\n ],\n components: {\n FrameAnchor,\n FrameForm,\n FrameTarget,\n Frame,\n },\n options: {\n history: Boolean,\n },\n };\n\n /**\n * Get uniq id.\n */\n get id() {\n return this.$el.id;\n }\n\n /**\n * Get direct `FrameTarget` children.\n */\n get directChildrenFrameTarget(): FrameTarget[] {\n return getDirectChildren(this, 'Frame', 'FrameTarget');\n }\n\n /**\n * Prevent scroll top on unload.\n */\n onWindowUnload() {\n const { history } = window;\n\n if (!history.state) {\n return;\n }\n\n history.replaceState(\n {\n ...history.state,\n scroll: getScrollPosition(),\n },\n '',\n );\n }\n\n /**\n * Go to the previous URL on `popstate` event.\n */\n onWindowPopstate(event: PopStateEvent) {\n this.goTo(window.location.href, event.state);\n }\n\n /**\n * Prevent click on `FrameAnchor`.\n */\n onFrameAnchorClick(index: number, event: MouseEvent) {\n // Prevent propagation of nested frames\n if (!isDirectChild(this, 'Frame', 'FrameAnchor', this.$children.FrameAnchor[index])) {\n return;\n }\n\n this.$log('onAFrameClick', index, event);\n event.preventDefault();\n const anchor = this.$children.FrameAnchor[index];\n\n // Do nothing when clicking links on the same page\n // @todo handle hash change\n if (anchor.href === window.location.href) {\n return;\n }\n\n this.goTo(anchor.href);\n }\n\n /**\n * Prevent submit on forms.\n */\n onFrameFormSubmit(index:number, event:SubmitEvent) {\n // Prevent propagation of nested frames\n if (!isDirectChild(this, 'Frame', 'FrameForm', this.$children.FrameForm[index])) {\n return;\n }\n\n this.$log('onFrameFormFrameSubmit', index, event);\n event.preventDefault();\n const form = this.$children.FrameForm[index];\n const url = new URL(form.action);\n // @ts-ignore\n url.search = new URLSearchParams(new FormData(form.$el)).toString();\n // @todo handle post request\n this.goTo(url.toString());\n }\n\n /**\n * Parge an HTML string into a DOM object.\n */\n parseHTML(string = '') {\n return new DOMParser().parseFromString(string, 'text/html');\n }\n\n /**\n * Go to the given url.\n */\n async goTo(url:string, scroll:{ top: number, left: number } = null) {\n this.$log('goTo', url);\n const parsedUrl = new URL(url);\n\n if (parsedUrl.origin !== window.location.origin) {\n throw new Error('Cross origin request are not allowed.');\n }\n\n this.$emit('before-fetch', url);\n\n // @todo add option to use content as is or to parse it and extract the new frame\n const content = await this.fetch(url);\n const doc = this.parseHTML(content);\n const el = doc.querySelector(`#${this.id}`);\n // @todo manage el === null\n const newFrame = new Frame(el as HTMLElement);\n newFrame.$children.registerAll();\n\n this.$emit('after-fetch', url, content);\n\n this.$emit('before-leave');\n // Leave all\n await Promise.all(this.directChildrenFrameTarget.map((target) => target.leave()));\n\n this.$emit('after-leave');\n this.$emit('before-content');\n\n // Update content\n // @todo insert non existing FrameTarget as well\n this.directChildrenFrameTarget.map((target, index) =>\n target.updateContent(newFrame.directChildrenFrameTarget[index]),\n );\n\n // Push history\n if (this.$options.history) {\n document.title = doc.title;\n historyPush({ path: parsedUrl.pathname, search: parsedUrl.searchParams });\n }\n\n if (scroll) {\n document.scrollingElement.scrollTop = scroll.top;\n document.scrollingElement.scrollLeft = scroll.left;\n }\n\n // Update components\n await nextFrame();\n this.$root.$update();\n await nextFrame();\n\n this.$emit('after-content');\n this.$emit('before-enter');\n\n // Enter all\n await Promise.all(this.directChildrenFrameTarget.map((target) => target.enter()));\n\n this.$emit('after-enter');\n }\n\n /**\n * Fetch the given url.\n */\n async fetch(url:string):Promise<string> {\n const cached = cache.get(url);\n\n if (cached) {\n if (cached.status === 'pending') {\n return cached.promise;\n }\n\n return cached.content;\n }\n\n const promise = fetch(url).then((response) => response.text());\n\n try {\n cache.set(url, {\n promise,\n status: 'pending',\n content: undefined,\n });\n\n const content = await promise;\n\n cache.set(url, {\n promise,\n status: 'resolved',\n content,\n });\n\n return content;\n } catch (err) {\n cache.set(url, {\n promise,\n status: 'error',\n content: err,\n });\n\n return err;\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,9 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
1
  import { Base, isDirectChild, getDirectChildren } from "@studiometa/js-toolkit";
8
2
  import { nextFrame, historyPush } from "@studiometa/js-toolkit/utils";
9
3
  import { FrameAnchor } from "./FrameAnchor.js";
@@ -16,7 +10,29 @@ function getScrollPosition() {
16
10
  };
17
11
  }
18
12
  const cache = /* @__PURE__ */ new Map();
19
- const _Frame = class extends Base {
13
+ class Frame extends Base {
14
+ static config = {
15
+ name: "Frame",
16
+ emits: [
17
+ "before-fetch",
18
+ "after-fetch",
19
+ "before-leave",
20
+ "after-leave",
21
+ "before-content",
22
+ "after-content",
23
+ "before-enter",
24
+ "after-enter"
25
+ ],
26
+ components: {
27
+ FrameAnchor,
28
+ FrameForm,
29
+ FrameTarget,
30
+ Frame
31
+ },
32
+ options: {
33
+ history: Boolean
34
+ }
35
+ };
20
36
  get id() {
21
37
  return this.$el.id;
22
38
  }
@@ -75,7 +91,7 @@ const _Frame = class extends Base {
75
91
  const content = await this.fetch(url);
76
92
  const doc = this.parseHTML(content);
77
93
  const el = doc.querySelector(`#${this.id}`);
78
- const newFrame = new _Frame(el);
94
+ const newFrame = new Frame(el);
79
95
  newFrame.$children.registerAll();
80
96
  this.$emit("after-fetch", url, content);
81
97
  this.$emit("before-leave");
@@ -132,30 +148,8 @@ const _Frame = class extends Base {
132
148
  return err;
133
149
  }
134
150
  }
135
- };
136
- let Frame = _Frame;
137
- __publicField(Frame, "config", {
138
- name: "Frame",
139
- emits: [
140
- "before-fetch",
141
- "after-fetch",
142
- "before-leave",
143
- "after-leave",
144
- "before-content",
145
- "after-content",
146
- "before-enter",
147
- "after-enter"
148
- ],
149
- components: {
150
- FrameAnchor,
151
- FrameForm,
152
- FrameTarget,
153
- Frame: _Frame
154
- },
155
- options: {
156
- history: Boolean
157
- }
158
- });
151
+ }
159
152
  export {
160
153
  Frame
161
154
  };
155
+ //# sourceMappingURL=Frame.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/Frame.ts"],
4
+ "sourcesContent": ["import { Base, isDirectChild, getDirectChildren } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { nextFrame, historyPush } from '@studiometa/js-toolkit/utils';\nimport { FrameAnchor } from './FrameAnchor.js';\nimport { FrameForm } from './FrameForm.js';\nimport { FrameTarget } from './FrameTarget.js';\n\n/**\n * Get the scroll position.\n */\nfunction getScrollPosition() {\n return {\n left: window.pageXOffset,\n top: window.pageYOffset,\n };\n}\n\n/**\n * The fetch cache.\n */\nconst cache: Map<\n string,\n { promise: Promise<string>; status: 'pending' | 'resolved' | 'error'; content: string }\n> = new Map();\n\nexport interface FrameProps extends BaseProps {\n $children: {\n FrameAnchor: FrameAnchor[];\n FrameForm: FrameForm[];\n FrameTarget: FrameTarget[];\n // eslint-disable-next-line no-use-before-define\n Frame: Frame[];\n };\n $options: {\n history: boolean;\n };\n}\n\n/**\n * Class.\n */\nexport class Frame<T extends BaseProps = BaseProps> extends Base<T & FrameProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'Frame',\n emits: [\n 'before-fetch',\n 'after-fetch',\n 'before-leave',\n 'after-leave',\n 'before-content',\n 'after-content',\n 'before-enter',\n 'after-enter',\n ],\n components: {\n FrameAnchor,\n FrameForm,\n FrameTarget,\n Frame,\n },\n options: {\n history: Boolean,\n },\n };\n\n /**\n * Get uniq id.\n */\n get id() {\n return this.$el.id;\n }\n\n /**\n * Get direct `FrameTarget` children.\n */\n get directChildrenFrameTarget(): FrameTarget[] {\n return getDirectChildren(this, 'Frame', 'FrameTarget');\n }\n\n /**\n * Prevent scroll top on unload.\n */\n onWindowUnload() {\n const { history } = window;\n\n if (!history.state) {\n return;\n }\n\n history.replaceState(\n {\n ...history.state,\n scroll: getScrollPosition(),\n },\n '',\n );\n }\n\n /**\n * Go to the previous URL on `popstate` event.\n */\n onWindowPopstate(event: PopStateEvent) {\n this.goTo(window.location.href, event.state);\n }\n\n /**\n * Prevent click on `FrameAnchor`.\n */\n onFrameAnchorClick(index: number, event: MouseEvent) {\n // Prevent propagation of nested frames\n if (!isDirectChild(this, 'Frame', 'FrameAnchor', this.$children.FrameAnchor[index])) {\n return;\n }\n\n this.$log('onAFrameClick', index, event);\n event.preventDefault();\n const anchor = this.$children.FrameAnchor[index];\n\n // Do nothing when clicking links on the same page\n // @todo handle hash change\n if (anchor.href === window.location.href) {\n return;\n }\n\n this.goTo(anchor.href);\n }\n\n /**\n * Prevent submit on forms.\n */\n onFrameFormSubmit(index:number, event:SubmitEvent) {\n // Prevent propagation of nested frames\n if (!isDirectChild(this, 'Frame', 'FrameForm', this.$children.FrameForm[index])) {\n return;\n }\n\n this.$log('onFrameFormFrameSubmit', index, event);\n event.preventDefault();\n const form = this.$children.FrameForm[index];\n const url = new URL(form.action);\n // @ts-ignore\n url.search = new URLSearchParams(new FormData(form.$el)).toString();\n // @todo handle post request\n this.goTo(url.toString());\n }\n\n /**\n * Parge an HTML string into a DOM object.\n */\n parseHTML(string = '') {\n return new DOMParser().parseFromString(string, 'text/html');\n }\n\n /**\n * Go to the given url.\n */\n async goTo(url:string, scroll:{ top: number, left: number } = null) {\n this.$log('goTo', url);\n const parsedUrl = new URL(url);\n\n if (parsedUrl.origin !== window.location.origin) {\n throw new Error('Cross origin request are not allowed.');\n }\n\n this.$emit('before-fetch', url);\n\n // @todo add option to use content as is or to parse it and extract the new frame\n const content = await this.fetch(url);\n const doc = this.parseHTML(content);\n const el = doc.querySelector(`#${this.id}`);\n // @todo manage el === null\n const newFrame = new Frame(el as HTMLElement);\n newFrame.$children.registerAll();\n\n this.$emit('after-fetch', url, content);\n\n this.$emit('before-leave');\n // Leave all\n await Promise.all(this.directChildrenFrameTarget.map((target) => target.leave()));\n\n this.$emit('after-leave');\n this.$emit('before-content');\n\n // Update content\n // @todo insert non existing FrameTarget as well\n this.directChildrenFrameTarget.map((target, index) =>\n target.updateContent(newFrame.directChildrenFrameTarget[index]),\n );\n\n // Push history\n if (this.$options.history) {\n document.title = doc.title;\n historyPush({ path: parsedUrl.pathname, search: parsedUrl.searchParams });\n }\n\n if (scroll) {\n document.scrollingElement.scrollTop = scroll.top;\n document.scrollingElement.scrollLeft = scroll.left;\n }\n\n // Update components\n await nextFrame();\n this.$root.$update();\n await nextFrame();\n\n this.$emit('after-content');\n this.$emit('before-enter');\n\n // Enter all\n await Promise.all(this.directChildrenFrameTarget.map((target) => target.enter()));\n\n this.$emit('after-enter');\n }\n\n /**\n * Fetch the given url.\n */\n async fetch(url:string):Promise<string> {\n const cached = cache.get(url);\n\n if (cached) {\n if (cached.status === 'pending') {\n return cached.promise;\n }\n\n return cached.content;\n }\n\n const promise = fetch(url).then((response) => response.text());\n\n try {\n cache.set(url, {\n promise,\n status: 'pending',\n content: undefined,\n });\n\n const content = await promise;\n\n cache.set(url, {\n promise,\n status: 'resolved',\n content,\n });\n\n return content;\n } catch (err) {\n cache.set(url, {\n promise,\n status: 'error',\n content: err,\n });\n\n return err;\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -37,3 +37,4 @@ __publicField(FrameAnchor, "config", {
37
37
  name: "FrameAnchor"
38
38
  });
39
39
  if (module.exports.default) module.exports = module.exports.default;
40
+ //# sourceMappingURL=FrameAnchor.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameAnchor.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseConfig, BaseProps } from '@studiometa/js-toolkit';\n\nexport interface FrameAnchorProps extends BaseProps {\n $el: HTMLAnchorElement;\n}\n\n/**\n * FrameAnchor class.\n */\nexport class FrameAnchor<T extends BaseProps = BaseProps> extends Base<T & FrameAnchorProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'FrameAnchor',\n };\n\n /**\n * Get the URL.\n */\n get href(): string {\n return this.$el.href;\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAqB;AAUd,IAAM,cAAN,cAA2D,uBAA2B;AAAA,EAW3F,IAAI,OAAe;AACjB,WAAO,KAAK,IAAI;AAAA,EAClB;AACF;AAVE,cAJW,aAIJ,UAAqB;AAAA,EAC1B,MAAM;AACR;",
6
+ "names": []
7
+ }
@@ -1,18 +1,13 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
1
  import { Base } from "@studiometa/js-toolkit";
8
2
  class FrameAnchor extends Base {
3
+ static config = {
4
+ name: "FrameAnchor"
5
+ };
9
6
  get href() {
10
7
  return this.$el.href;
11
8
  }
12
9
  }
13
- __publicField(FrameAnchor, "config", {
14
- name: "FrameAnchor"
15
- });
16
10
  export {
17
11
  FrameAnchor
18
12
  };
13
+ //# sourceMappingURL=FrameAnchor.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameAnchor.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseConfig, BaseProps } from '@studiometa/js-toolkit';\n\nexport interface FrameAnchorProps extends BaseProps {\n $el: HTMLAnchorElement;\n}\n\n/**\n * FrameAnchor class.\n */\nexport class FrameAnchor<T extends BaseProps = BaseProps> extends Base<T & FrameAnchorProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'FrameAnchor',\n };\n\n /**\n * Get the URL.\n */\n get href(): string {\n return this.$el.href;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,YAAY;AAUd,MAAM,oBAAqD,KAA2B;AAAA,EAI3F,OAAO,SAAqB;AAAA,IAC1B,MAAM;AAAA,EACR;AAAA,EAKA,IAAI,OAAe;AACjB,WAAO,KAAK,IAAI;AAAA,EAClB;AACF;",
6
+ "names": []
7
+ }
@@ -37,3 +37,4 @@ __publicField(FrameForm, "config", {
37
37
  name: "FrameForm"
38
38
  });
39
39
  if (module.exports.default) module.exports = module.exports.default;
40
+ //# sourceMappingURL=FrameForm.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameForm.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\n\nexport interface FrameFormProps extends BaseProps {\n $el: HTMLFormElement;\n}\n\n/**\n * FrameForm class.\n */\nexport class FrameForm<T extends BaseProps = BaseProps> extends Base<T & FrameFormProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'FrameForm',\n };\n\n /**\n * Get the form action.\n */\n get action(): string {\n return this.$el.action;\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAqB;AAUd,IAAM,YAAN,cAAyD,uBAAyB;AAAA,EAWvF,IAAI,SAAiB;AACnB,WAAO,KAAK,IAAI;AAAA,EAClB;AACF;AAVE,cAJW,WAIJ,UAAqB;AAAA,EAC1B,MAAM;AACR;",
6
+ "names": []
7
+ }
@@ -1,18 +1,13 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
1
  import { Base } from "@studiometa/js-toolkit";
8
2
  class FrameForm extends Base {
3
+ static config = {
4
+ name: "FrameForm"
5
+ };
9
6
  get action() {
10
7
  return this.$el.action;
11
8
  }
12
9
  }
13
- __publicField(FrameForm, "config", {
14
- name: "FrameForm"
15
- });
16
10
  export {
17
11
  FrameForm
18
12
  };
13
+ //# sourceMappingURL=FrameForm.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameForm.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\n\nexport interface FrameFormProps extends BaseProps {\n $el: HTMLFormElement;\n}\n\n/**\n * FrameForm class.\n */\nexport class FrameForm<T extends BaseProps = BaseProps> extends Base<T & FrameFormProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'FrameForm',\n };\n\n /**\n * Get the form action.\n */\n get action(): string {\n return this.$el.action;\n }\n}\n"],
5
+ "mappings": "AAAA,SAAS,YAAY;AAUd,MAAM,kBAAmD,KAAyB;AAAA,EAIvF,OAAO,SAAqB;AAAA,IAC1B,MAAM;AAAA,EACR;AAAA,EAKA,IAAI,SAAiB;AACnB,WAAO,KAAK,IAAI;AAAA,EAClB;AACF;",
6
+ "names": []
7
+ }
@@ -36,8 +36,7 @@ var _FrameTarget = class extends import_primitives.Transition {
36
36
  return options;
37
37
  }
38
38
  get id() {
39
- var _a;
40
- return (_a = this.$options.id) != null ? _a : this.$el.id;
39
+ return this.$options.id ?? this.$el.id;
41
40
  }
42
41
  async enter() {
43
42
  this.$log("enter");
@@ -64,9 +63,7 @@ var _FrameTarget = class extends import_primitives.Transition {
64
63
  switch (this.$options.mode) {
65
64
  case "prepend":
66
65
  case "append":
67
- Array.from(newTarget.$el.children).forEach((child) => {
68
- child.classList.add(...this.$options.enterFrom.split(" "));
69
- });
66
+ (0, import_utils.addClass)(Array.from(newTarget.$el.children), this.$options.enterFrom.split(" "));
70
67
  this.$el.insertAdjacentHTML(
71
68
  _FrameTarget.__INSERT_MODES[this.$options.mode],
72
69
  newTarget.$el.innerHTML
@@ -98,3 +95,4 @@ __publicField(FrameTarget, "__INSERT_MODES", {
98
95
  append: "beforeend"
99
96
  });
100
97
  if (module.exports.default) module.exports = module.exports.default;
98
+ //# sourceMappingURL=FrameTarget.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameTarget.ts"],
4
+ "sourcesContent": ["import type { BaseConfig, BaseProps } from '@studiometa/js-toolkit';\nimport { addClass, transition } from '@studiometa/js-toolkit/utils';\nimport { Transition } from '../../primitives/index.js';\n\nexport interface FrameTargetProps extends BaseProps {\n $options: {\n mode: 'replace' | 'prepend' | 'append';\n id: string;\n leaveKeep: true;\n };\n}\n\n/**\n * FrameTarget class.\n */\nexport class FrameTarget<T extends BaseProps = BaseProps> extends Transition<T & FrameTargetProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n ...Transition.config,\n name: 'FrameTarget',\n log: true,\n options: {\n ...Transition.config.options,\n mode: {\n type: String,\n default: 'replace', // or 'prepend' or 'append'\n },\n id: String,\n },\n };\n\n /**\n * Insert modes.\n */\n static __INSERT_MODES = {\n prepend: 'afterbegin',\n append: 'beforeend',\n } as const;\n\n /**\n * Override options.\n */\n // @ts-ignore\n get $options() {\n const options = super.$options;\n\n options.leaveKeep = true;\n\n return options;\n }\n\n /**\n * Get uniq ID.\n */\n get id(): string {\n return this.$options.id ?? this.$el.id;\n }\n\n /**\n * Enter transition.\n */\n async enter() {\n this.$log('enter');\n\n const { enterFrom: from, enterActive: active, enterTo: to, leaveTo, enterKeep } = this.$options;\n const transitionStyles = { from, active, to };\n\n switch (this.$options.mode) {\n case 'append':\n case 'prepend':\n await Promise.all(\n Array.from(this.$el.children)\n .filter((child) =>\n from.split(' ').every((className) => child.classList.contains(className)),\n )\n .map((child) =>\n transition(child as HTMLElement, transitionStyles, enterKeep && 'keep'),\n ),\n );\n break;\n case 'replace':\n default:\n transitionStyles.from = Array.from(new Set([from, leaveTo].flat())).join(' ');\n await transition(this.$el, transitionStyles, enterKeep && 'keep');\n }\n }\n\n /**\n * Update the content from the new target.\n *\n * @param {FrameTarget} newTarget The instance of the new target.\n * @returns {void}\n */\n updateContent(newTarget:FrameTarget) {\n // @todo manage 'prepend' and 'append' transition\n // only the new content should have the transition\n // - add the leaveTo and enterFrom classes to all `newTarget.children`\n // - or wrap the new content in a custom div ?\n switch (this.$options.mode) {\n case 'prepend':\n case 'append':\n addClass(Array.from(newTarget.$el.children), this.$options.enterFrom.split(' '));\n this.$el.insertAdjacentHTML(\n FrameTarget.__INSERT_MODES[this.$options.mode],\n newTarget.$el.innerHTML,\n );\n break;\n case 'replace':\n default:\n this.$el.innerHTML = newTarget.$el.innerHTML;\n break;\n }\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAqC;AACrC,wBAA2B;AAapB,IAAM,eAAN,cAA2D,6BAAiC;AAAA,EA8BjG,IAAI,WAAW;AACb,UAAM,UAAU,MAAM;AAEtB,YAAQ,YAAY;AAEpB,WAAO;AAAA,EACT;AAAA,EAKA,IAAI,KAAa;AACf,WAAO,KAAK,SAAS,MAAM,KAAK,IAAI;AAAA,EACtC;AAAA,EAKA,MAAM,QAAQ;AACZ,SAAK,KAAK,OAAO;AAEjB,UAAM,EAAE,WAAW,MAAM,aAAa,QAAQ,SAAS,IAAI,SAAS,UAAU,IAAI,KAAK;AACvF,UAAM,mBAAmB,EAAE,MAAM,QAAQ,GAAG;AAE5C,YAAQ,KAAK,SAAS,MAAM;AAAA,MAC1B,KAAK;AAAA,MACL,KAAK;AACH,cAAM,QAAQ;AAAA,UACZ,MAAM,KAAK,KAAK,IAAI,QAAQ,EACzB;AAAA,YAAO,CAAC,UACP,KAAK,MAAM,GAAG,EAAE,MAAM,CAAC,cAAc,MAAM,UAAU,SAAS,SAAS,CAAC;AAAA,UAC1E,EACC;AAAA,YAAI,CAAC,cACJ,yBAAW,OAAsB,kBAAkB,aAAa,MAAM;AAAA,UACxE;AAAA,QACJ;AACA;AAAA,MACF,KAAK;AAAA,MACL;AACE,yBAAiB,OAAO,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG;AAC5E,kBAAM,yBAAW,KAAK,KAAK,kBAAkB,aAAa,MAAM;AAAA,IACpE;AAAA,EACF;AAAA,EAQA,cAAc,WAAuB;AAKnC,YAAQ,KAAK,SAAS,MAAM;AAAA,MAC1B,KAAK;AAAA,MACL,KAAK;AACH,mCAAS,MAAM,KAAK,UAAU,IAAI,QAAQ,GAAG,KAAK,SAAS,UAAU,MAAM,GAAG,CAAC;AAC/E,aAAK,IAAI;AAAA,UACP,aAAY,eAAe,KAAK,SAAS;AAAA,UACzC,UAAU,IAAI;AAAA,QAChB;AACA;AAAA,MACF,KAAK;AAAA,MACL;AACE,aAAK,IAAI,YAAY,UAAU,IAAI;AACnC;AAAA,IACJ;AAAA,EACF;AACF;AApGO,IAAM,cAAN;AAIL,cAJW,aAIJ,UAAqB;AAAA,EAC1B,GAAG,6BAAW;AAAA,EACd,MAAM;AAAA,EACN,KAAK;AAAA,EACL,SAAS;AAAA,IACP,GAAG,6BAAW,OAAO;AAAA,IACrB,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,IAAI;AAAA,EACN;AACF;AAKA,cArBW,aAqBJ,kBAAiB;AAAA,EACtB,SAAS;AAAA,EACT,QAAQ;AACV;",
6
+ "names": []
7
+ }
@@ -25,7 +25,7 @@ export declare class FrameTarget<T extends BaseProps = BaseProps> extends Transi
25
25
  /**
26
26
  * Override options.
27
27
  */
28
- get $options(): import("@studiometa/js-toolkit/Base/managers/OptionsManager.js").default & import("@studiometa/js-toolkit/Base/index.js").BaseOptions & (T & FrameTargetProps & import("../../index.js").TransitionProps)["$options"];
28
+ get $options(): import("@studiometa/js-toolkit/Base/managers/OptionsManager.js").OptionsManager & import("@studiometa/js-toolkit/Base/index.js").BaseOptions & (T & FrameTargetProps & import("../../index.js").TransitionProps)["$options"];
29
29
  /**
30
30
  * Get uniq ID.
31
31
  */
@@ -1,20 +1,30 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
- import { transition } from "@studiometa/js-toolkit/utils";
1
+ import { addClass, transition } from "@studiometa/js-toolkit/utils";
8
2
  import { Transition } from "../../primitives/index.js";
9
- const _FrameTarget = class extends Transition {
3
+ class FrameTarget extends Transition {
4
+ static config = {
5
+ ...Transition.config,
6
+ name: "FrameTarget",
7
+ log: true,
8
+ options: {
9
+ ...Transition.config.options,
10
+ mode: {
11
+ type: String,
12
+ default: "replace"
13
+ },
14
+ id: String
15
+ }
16
+ };
17
+ static __INSERT_MODES = {
18
+ prepend: "afterbegin",
19
+ append: "beforeend"
20
+ };
10
21
  get $options() {
11
22
  const options = super.$options;
12
23
  options.leaveKeep = true;
13
24
  return options;
14
25
  }
15
26
  get id() {
16
- var _a;
17
- return (_a = this.$options.id) != null ? _a : this.$el.id;
27
+ return this.$options.id ?? this.$el.id;
18
28
  }
19
29
  async enter() {
20
30
  this.$log("enter");
@@ -41,11 +51,9 @@ const _FrameTarget = class extends Transition {
41
51
  switch (this.$options.mode) {
42
52
  case "prepend":
43
53
  case "append":
44
- Array.from(newTarget.$el.children).forEach((child) => {
45
- child.classList.add(...this.$options.enterFrom.split(" "));
46
- });
54
+ addClass(Array.from(newTarget.$el.children), this.$options.enterFrom.split(" "));
47
55
  this.$el.insertAdjacentHTML(
48
- _FrameTarget.__INSERT_MODES[this.$options.mode],
56
+ FrameTarget.__INSERT_MODES[this.$options.mode],
49
57
  newTarget.$el.innerHTML
50
58
  );
51
59
  break;
@@ -55,25 +63,8 @@ const _FrameTarget = class extends Transition {
55
63
  break;
56
64
  }
57
65
  }
58
- };
59
- let FrameTarget = _FrameTarget;
60
- __publicField(FrameTarget, "config", {
61
- ...Transition.config,
62
- name: "FrameTarget",
63
- log: true,
64
- options: {
65
- ...Transition.config.options,
66
- mode: {
67
- type: String,
68
- default: "replace"
69
- },
70
- id: String
71
- }
72
- });
73
- __publicField(FrameTarget, "__INSERT_MODES", {
74
- prepend: "afterbegin",
75
- append: "beforeend"
76
- });
66
+ }
77
67
  export {
78
68
  FrameTarget
79
69
  };
70
+ //# sourceMappingURL=FrameTarget.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/FrameTarget.ts"],
4
+ "sourcesContent": ["import type { BaseConfig, BaseProps } from '@studiometa/js-toolkit';\nimport { addClass, transition } from '@studiometa/js-toolkit/utils';\nimport { Transition } from '../../primitives/index.js';\n\nexport interface FrameTargetProps extends BaseProps {\n $options: {\n mode: 'replace' | 'prepend' | 'append';\n id: string;\n leaveKeep: true;\n };\n}\n\n/**\n * FrameTarget class.\n */\nexport class FrameTarget<T extends BaseProps = BaseProps> extends Transition<T & FrameTargetProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n ...Transition.config,\n name: 'FrameTarget',\n log: true,\n options: {\n ...Transition.config.options,\n mode: {\n type: String,\n default: 'replace', // or 'prepend' or 'append'\n },\n id: String,\n },\n };\n\n /**\n * Insert modes.\n */\n static __INSERT_MODES = {\n prepend: 'afterbegin',\n append: 'beforeend',\n } as const;\n\n /**\n * Override options.\n */\n // @ts-ignore\n get $options() {\n const options = super.$options;\n\n options.leaveKeep = true;\n\n return options;\n }\n\n /**\n * Get uniq ID.\n */\n get id(): string {\n return this.$options.id ?? this.$el.id;\n }\n\n /**\n * Enter transition.\n */\n async enter() {\n this.$log('enter');\n\n const { enterFrom: from, enterActive: active, enterTo: to, leaveTo, enterKeep } = this.$options;\n const transitionStyles = { from, active, to };\n\n switch (this.$options.mode) {\n case 'append':\n case 'prepend':\n await Promise.all(\n Array.from(this.$el.children)\n .filter((child) =>\n from.split(' ').every((className) => child.classList.contains(className)),\n )\n .map((child) =>\n transition(child as HTMLElement, transitionStyles, enterKeep && 'keep'),\n ),\n );\n break;\n case 'replace':\n default:\n transitionStyles.from = Array.from(new Set([from, leaveTo].flat())).join(' ');\n await transition(this.$el, transitionStyles, enterKeep && 'keep');\n }\n }\n\n /**\n * Update the content from the new target.\n *\n * @param {FrameTarget} newTarget The instance of the new target.\n * @returns {void}\n */\n updateContent(newTarget:FrameTarget) {\n // @todo manage 'prepend' and 'append' transition\n // only the new content should have the transition\n // - add the leaveTo and enterFrom classes to all `newTarget.children`\n // - or wrap the new content in a custom div ?\n switch (this.$options.mode) {\n case 'prepend':\n case 'append':\n addClass(Array.from(newTarget.$el.children), this.$options.enterFrom.split(' '));\n this.$el.insertAdjacentHTML(\n FrameTarget.__INSERT_MODES[this.$options.mode],\n newTarget.$el.innerHTML,\n );\n break;\n case 'replace':\n default:\n this.$el.innerHTML = newTarget.$el.innerHTML;\n break;\n }\n }\n}\n"],
5
+ "mappings": "AACA,SAAS,UAAU,kBAAkB;AACrC,SAAS,kBAAkB;AAapB,MAAM,oBAAqD,WAAiC;AAAA,EAIjG,OAAO,SAAqB;AAAA,IAC1B,GAAG,WAAW;AAAA,IACd,MAAM;AAAA,IACN,KAAK;AAAA,IACL,SAAS;AAAA,MACP,GAAG,WAAW,OAAO;AAAA,MACrB,MAAM;AAAA,QACJ,MAAM;AAAA,QACN,SAAS;AAAA,MACX;AAAA,MACA,IAAI;AAAA,IACN;AAAA,EACF;AAAA,EAKA,OAAO,iBAAiB;AAAA,IACtB,SAAS;AAAA,IACT,QAAQ;AAAA,EACV;AAAA,EAMA,IAAI,WAAW;AACb,UAAM,UAAU,MAAM;AAEtB,YAAQ,YAAY;AAEpB,WAAO;AAAA,EACT;AAAA,EAKA,IAAI,KAAa;AACf,WAAO,KAAK,SAAS,MAAM,KAAK,IAAI;AAAA,EACtC;AAAA,EAKA,MAAM,QAAQ;AACZ,SAAK,KAAK,OAAO;AAEjB,UAAM,EAAE,WAAW,MAAM,aAAa,QAAQ,SAAS,IAAI,SAAS,UAAU,IAAI,KAAK;AACvF,UAAM,mBAAmB,EAAE,MAAM,QAAQ,GAAG;AAE5C,YAAQ,KAAK,SAAS,MAAM;AAAA,MAC1B,KAAK;AAAA,MACL,KAAK;AACH,cAAM,QAAQ;AAAA,UACZ,MAAM,KAAK,KAAK,IAAI,QAAQ,EACzB;AAAA,YAAO,CAAC,UACP,KAAK,MAAM,GAAG,EAAE,MAAM,CAAC,cAAc,MAAM,UAAU,SAAS,SAAS,CAAC;AAAA,UAC1E,EACC;AAAA,YAAI,CAAC,UACJ,WAAW,OAAsB,kBAAkB,aAAa,MAAM;AAAA,UACxE;AAAA,QACJ;AACA;AAAA,MACF,KAAK;AAAA,MACL;AACE,yBAAiB,OAAO,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG;AAC5E,cAAM,WAAW,KAAK,KAAK,kBAAkB,aAAa,MAAM;AAAA,IACpE;AAAA,EACF;AAAA,EAQA,cAAc,WAAuB;AAKnC,YAAQ,KAAK,SAAS,MAAM;AAAA,MAC1B,KAAK;AAAA,MACL,KAAK;AACH,iBAAS,MAAM,KAAK,UAAU,IAAI,QAAQ,GAAG,KAAK,SAAS,UAAU,MAAM,GAAG,CAAC;AAC/E,aAAK,IAAI;AAAA,UACP,YAAY,eAAe,KAAK,SAAS;AAAA,UACzC,UAAU,IAAI;AAAA,QAChB;AACA;AAAA,MACF,KAAK;AAAA,MACL;AACE,aAAK,IAAI,YAAY,UAAU,IAAI;AACnC;AAAA,IACJ;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -21,3 +21,4 @@ __reExport(Frame_exports, require("./FrameAnchor.cjs"), module.exports);
21
21
  __reExport(Frame_exports, require("./FrameForm.cjs"), module.exports);
22
22
  __reExport(Frame_exports, require("./FrameTarget.cjs"), module.exports);
23
23
  if (module.exports.default) module.exports = module.exports.default;
24
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/index.ts"],
4
+ "sourcesContent": ["export * from './Frame.js';\nexport * from './FrameAnchor.js';\nexport * from './FrameForm.js';\nexport * from './FrameTarget.js';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,0BAAc,wBAAd;AACA,0BAAc,8BADd;AAEA,0BAAc,4BAFd;AAGA,0BAAc,8BAHd;",
6
+ "names": []
7
+ }
@@ -2,3 +2,4 @@ export * from "./Frame.js";
2
2
  export * from "./FrameAnchor.js";
3
3
  export * from "./FrameForm.js";
4
4
  export * from "./FrameTarget.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/organisms/Frame/index.ts"],
4
+ "sourcesContent": ["export * from './Frame.js';\nexport * from './FrameAnchor.js';\nexport * from './FrameForm.js';\nexport * from './FrameTarget.js';\n"],
5
+ "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
6
+ "names": []
7
+ }
@@ -18,3 +18,4 @@ var organisms_exports = {};
18
18
  module.exports = __toCommonJS(organisms_exports);
19
19
  __reExport(organisms_exports, require("./Frame/index.cjs"), module.exports);
20
20
  if (module.exports.default) module.exports = module.exports.default;
21
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../packages/ui/organisms/index.ts"],
4
+ "sourcesContent": ["export * from './Frame/index.js';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,8BAAc,8BAAd;",
6
+ "names": []
7
+ }
@@ -1 +1,2 @@
1
1
  export * from "./Frame/index.js";
2
+ //# sourceMappingURL=index.js.map