@jumpgroup/jump-design-system 0.2.2 → 0.2.3

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 (81) hide show
  1. package/dist/cjs/{index-79e97f36.js → index-12f40d28.js} +58 -8
  2. package/dist/cjs/index-12f40d28.js.map +1 -0
  3. package/dist/cjs/jump-badge.cjs.entry.js +1 -1
  4. package/dist/cjs/jump-button.cjs.entry.js +9 -6
  5. package/dist/cjs/jump-button.cjs.entry.js.map +1 -1
  6. package/dist/cjs/jump-card.cjs.entry.js +2 -2
  7. package/dist/cjs/jump-card.cjs.entry.js.map +1 -1
  8. package/dist/cjs/jump-design-system.cjs.js +2 -2
  9. package/dist/cjs/jump-icon.cjs.entry.js +1 -1
  10. package/dist/cjs/jump-pagination.cjs.entry.js +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/collection/components/jump-button/jump-button-anchor.stories.js +253 -0
  13. package/dist/collection/components/jump-button/jump-button-anchor.stories.js.map +1 -0
  14. package/dist/collection/components/jump-button/jump-button-dimension.stories.js +236 -0
  15. package/dist/collection/components/jump-button/jump-button-dimension.stories.js.map +1 -0
  16. package/dist/collection/components/jump-button/jump-button-filled.stories.js +5 -259
  17. package/dist/collection/components/jump-button/jump-button-filled.stories.js.map +1 -1
  18. package/dist/collection/components/jump-button/jump-button-only-icon.stories.js +342 -0
  19. package/dist/collection/components/jump-button/jump-button-only-icon.stories.js.map +1 -0
  20. package/dist/collection/components/jump-button/jump-button-outline.stories.js +5 -74
  21. package/dist/collection/components/jump-button/jump-button-outline.stories.js.map +1 -1
  22. package/dist/collection/components/jump-button/jump-button-text.stories.js +289 -0
  23. package/dist/collection/components/jump-button/jump-button-text.stories.js.map +1 -0
  24. package/dist/collection/components/jump-button/jump-button.css +92 -43
  25. package/dist/collection/components/jump-button/jump-button.js +20 -17
  26. package/dist/collection/components/jump-button/jump-button.js.map +1 -1
  27. package/dist/collection/components/jump-button/test/jump-button.spec.js +2 -2
  28. package/dist/collection/components/jump-button/test/jump-button.spec.js.map +1 -1
  29. package/dist/collection/components/jump-card/jump-card-border-radius.stories.js +2 -14
  30. package/dist/collection/components/jump-card/jump-card-border-radius.stories.js.map +1 -1
  31. package/dist/collection/components/jump-card/jump-card-top-border-content-radius.stories.js +1 -2
  32. package/dist/collection/components/jump-card/jump-card-top-border-content-radius.stories.js.map +1 -1
  33. package/dist/collection/components/jump-card/jump-card.css +50 -1
  34. package/dist/collection/utils/utils.js +13 -0
  35. package/dist/collection/utils/utils.js.map +1 -1
  36. package/dist/components/jump-button.js +24 -20
  37. package/dist/components/jump-button.js.map +1 -1
  38. package/dist/components/jump-card.js +1 -1
  39. package/dist/components/jump-card.js.map +1 -1
  40. package/dist/esm/{index-7feee8ea.js → index-d09b8a38.js} +58 -8
  41. package/dist/esm/index-d09b8a38.js.map +1 -0
  42. package/dist/esm/jump-badge.entry.js +1 -1
  43. package/dist/esm/jump-button.entry.js +9 -6
  44. package/dist/esm/jump-button.entry.js.map +1 -1
  45. package/dist/esm/jump-card.entry.js +2 -2
  46. package/dist/esm/jump-card.entry.js.map +1 -1
  47. package/dist/esm/jump-design-system.js +3 -3
  48. package/dist/esm/jump-icon.entry.js +1 -1
  49. package/dist/esm/jump-pagination.entry.js +1 -1
  50. package/dist/esm/loader.js +3 -3
  51. package/dist/jump-design-system/jump-design-system.esm.js +1 -1
  52. package/dist/jump-design-system/jump-design-system.esm.js.map +1 -1
  53. package/dist/jump-design-system/p-062fa189.entry.js +2 -0
  54. package/dist/jump-design-system/p-062fa189.entry.js.map +1 -0
  55. package/dist/jump-design-system/p-407027a9.js +3 -0
  56. package/dist/jump-design-system/p-407027a9.js.map +1 -0
  57. package/dist/jump-design-system/{p-99238e3f.entry.js → p-81fba573.entry.js} +2 -2
  58. package/dist/jump-design-system/{p-bc02e346.entry.js → p-b2967e30.entry.js} +2 -2
  59. package/dist/jump-design-system/{p-ddb6c98c.entry.js → p-e0c9453d.entry.js} +2 -2
  60. package/dist/jump-design-system/p-fea57bd7.entry.js +2 -0
  61. package/dist/jump-design-system/p-fea57bd7.entry.js.map +1 -0
  62. package/dist/types/components/jump-button/jump-button-anchor.stories.d.ts +160 -0
  63. package/dist/types/components/jump-button/jump-button-dimension.stories.d.ts +158 -0
  64. package/dist/types/components/jump-button/jump-button-filled.stories.d.ts +0 -13
  65. package/dist/types/components/jump-button/jump-button-only-icon.stories.d.ts +164 -0
  66. package/dist/types/components/jump-button/jump-button-outline.stories.d.ts +0 -2
  67. package/dist/types/components/jump-button/jump-button-text.stories.d.ts +161 -0
  68. package/dist/types/components/jump-button/jump-button.d.ts +2 -1
  69. package/dist/types/utils/utils.d.ts +2 -1
  70. package/package.json +1 -1
  71. package/dist/cjs/index-79e97f36.js.map +0 -1
  72. package/dist/esm/index-7feee8ea.js.map +0 -1
  73. package/dist/jump-design-system/p-7cfed9c6.entry.js +0 -2
  74. package/dist/jump-design-system/p-7cfed9c6.entry.js.map +0 -1
  75. package/dist/jump-design-system/p-9fd6e0a0.entry.js +0 -2
  76. package/dist/jump-design-system/p-9fd6e0a0.entry.js.map +0 -1
  77. package/dist/jump-design-system/p-c560071a.js +0 -3
  78. package/dist/jump-design-system/p-c560071a.js.map +0 -1
  79. /package/dist/jump-design-system/{p-99238e3f.entry.js.map → p-81fba573.entry.js.map} +0 -0
  80. /package/dist/jump-design-system/{p-bc02e346.entry.js.map → p-b2967e30.entry.js.map} +0 -0
  81. /package/dist/jump-design-system/{p-ddb6c98c.entry.js.map → p-e0c9453d.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"jump-card.js","mappings":";;AAAA,MAAM,WAAW,GAAG,uvEAAuvE,CAAC;AAC5wE,uBAAe,WAAW;;MCMb,OAAO;;;;0BAI2B,KAAK;oBAKX,KAAK;;;4BAeG,KAAK;sCAKK,KAAK;qBAKtB,KAAK;4BAKE,KAAK;sBAKZ,EAAE;sBAKF,EAAE;wBAKA,EAAE;;IAE5C,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,UAAU,EAAE,IAAI,CAAC,UAAU,mBAAiB,IAAI,CAAC,YAAY,mBAAiB,IAAI,CAAC,YAAY,+BAA6B,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IACvN,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,WAAK,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,GAAQ,GAAG,EAAE,EACpF,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM;YAC5B,aAAO,QAAQ,UACb,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,WAAW,GAAE,EAC9C,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,WAAW,GAAE,EAC9C,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,YAAY,GAAE,CACzC,GAAG,EAAE,EACf,4DAAK,KAAK,EAAC,SAAS,IAClB,6DAAM,IAAI,EAAC,MAAM,GAAQ,EACzB,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/jump-card/jump-card.scss?tag=jump-card","src/components/jump-card/jump-card.tsx"],"sourcesContent":["jump-card {\n display: flex;\n flex-direction: column;\n position: relative;\n // --jump-card-max-width: 320px;\n --jump-card-max-width-horizontal: 100%;\n --jump-card-color: var(--neutral-grey-primary);\n --jump-card-background: #fff;\n --jump-card-color-dark: #fff;\n --jump-card-border-color: var(--neutral-grey-background);\n --jump-card-border-radius: 6px;\n --jump-card-border-top-radius: 1rem;\n --jump-card-top-border-body-radius: 1.5rem 1rem;\n --jump-card-padding: 1rem 1.25rem;\n\n font-family: var(--ff-primary, 'Arial'), sans-serif;\n line-height: var(--lh-400, 1.3);\n background-color: var(--jump-card-background);\n color: var(--jump-card-color);\n // max-width: var(--jump-card-max-width);\n overflow: hidden;\n\n img,\n video {\n aspect-ratio: 4/3;\n overflow: hidden;\n position: relative;\n }\n\n .Content {\n padding: 1.5rem 1rem;\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n flex: 1;\n background-color: var(--jump-card-background);\n }\n\n &[dark] {\n background-color: var(--neutral-grey-primary);\n color: var(--jump-card-color-dark);\n\n .Content {\n background-color: var(--neutral-grey-primary);\n color: var(--jump-card-color-dark);\n }\n }\n\n &[border] {\n border: 1px solid var(--jump-card-border-color);\n }\n\n &[border-radius] {\n border-radius: var(--jump-card-border-radius);\n }\n\n &[top-border-content-radius] {\n border-radius: var(--jump-card-border-top-radius);\n\n .Content {\n border-top-left-radius: var(--jump-card-border-top-radius);\n border-top-right-radius: var(--jump-card-border-top-radius);\n margin-top: -1rem;\n z-index: 2;\n }\n }\n\n &[boxed] {\n border-radius: var(--jump-card-border-radius);\n\n img,\n video {\n border-radius: var(--jump-card-border-radius);\n background-color: var(--jump-card-background);\n margin: 0.5rem 0.5rem 0;\n }\n }\n\n &[horizontal] {\n flex-direction: row;\n gap: 0.5rem;\n align-items: center;\n max-width: var(--jump-card-max-width-horizontal);\n }\n\n &[rounded-media] {\n align-items: center;\n justify-content: center;\n text-align: center;\n background-color: transparent;\n\n img,\n video {\n background-color: transparent;\n border-radius: 50%;\n aspect-ratio: 1;\n object-fit: cover;\n width: 100%;\n flex: 0 1 40%;\n }\n\n .Content {\n background-color: transparent;\n align-items: center;\n }\n }\n\n &[rounded-media][horizontal] {\n text-align: left;\n\n .Content {\n align-items: flex-start;\n }\n }\n\n &[shadow] {\n box-shadow: 0px 2px 25px 0px hsla(0, 0%, 0%, 0.1);\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'jump-card',\n styleUrl: 'jump-card.scss',\n shadow: false,\n})\nexport class AppCard {\n /**\n * Indicates if the card is horizontal\n */\n @Prop({reflect: true}) horizontal: boolean = false;\n\n /**\n * Indicates if the card is horizontal\n */\n @Prop({reflect: true}) dark: boolean = false;\n\n /**\n * Indicates if card has shadow\n */\n @Prop({reflect: true}) shadow: boolean;\n\n /**\n * Indicates if card has borders\n */\n @Prop({reflect: true}) border: boolean;\n\n /**\n * Indicates if borders of the entire card are rounded\n */\n @Prop({reflect: true}) borderRadius: boolean = false;\n\n /**\n * Indicates if border top of the body is rounded; Not compatible with boxed\n */\n @Prop({reflect: true}) topBorderContentRadius: boolean = false;\n\n /**\n * Indicates if media has padding; Not compatible with roundedMedia\n */\n @Prop({reflect: true}) boxed: boolean = false;\n\n /**\n * Indicates if image is rounded and there isnt a bg\n */\n @Prop({reflect: true}) roundedMedia: boolean = false;\n\n /**\n * Indicates the imgSrc of the card\n */\n @Prop({reflect: true}) imgSrc: string = '';\n\n /**\n * Indicates the img's alt of the card\n */\n @Prop({reflect: true}) imgAlt: string = '';\n\n /**\n * Indicates the videoSrc of the card\n */\n @Prop({reflect: true}) videoSrc: string = '';\n\n render() {\n return (\n <Host horizontal={this.horizontal} border-radius={this.borderRadius} rounded-media={this.roundedMedia} top-border-content-radius={this.topBorderContentRadius} boxed={this.boxed} shadow={this.shadow} border={this.border}>\n {this.imgSrc && !this.videoSrc ? <img src={this.imgSrc} alt={this.imgAlt}></img> : ''}\n {this.videoSrc && !this.imgSrc ? \n <video autoplay> \n <source src={this.videoSrc} type=\"video/mp4\"/> \n <source src={this.videoSrc} type=\"video/mov\"/> \n <source src={this.videoSrc} type=\"video/webm\"/> \n </video> : ''}\n <div class=\"Content\">\n <slot name=\"body\"></slot>\n <slot name=\"footer\"></slot>\n </div>\n </Host>\n );\n }\n\n}\n"],"version":3}
1
+ {"file":"jump-card.js","mappings":";;AAAA,MAAM,WAAW,GAAG,8wGAA8wG,CAAC;AACnyG,uBAAe,WAAW;;MCMb,OAAO;;;;0BAI2B,KAAK;oBAKX,KAAK;;;4BAeG,KAAK;sCAKK,KAAK;qBAKtB,KAAK;4BAKE,KAAK;sBAKZ,EAAE;sBAKF,EAAE;wBAKA,EAAE;;IAE5C,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,UAAU,EAAE,IAAI,CAAC,UAAU,mBAAiB,IAAI,CAAC,YAAY,mBAAiB,IAAI,CAAC,YAAY,+BAA6B,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IACvN,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,WAAK,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,GAAQ,GAAG,EAAE,EACpF,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM;YAC5B,aAAO,QAAQ,UACb,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,WAAW,GAAE,EAC9C,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,WAAW,GAAE,EAC9C,cAAQ,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAC,YAAY,GAAE,CACzC,GAAG,EAAE,EACf,4DAAK,KAAK,EAAC,SAAS,IAClB,6DAAM,IAAI,EAAC,MAAM,GAAQ,EACzB,6DAAM,IAAI,EAAC,QAAQ,GAAQ,CACvB,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/jump-card/jump-card.scss?tag=jump-card","src/components/jump-card/jump-card.tsx"],"sourcesContent":[":root {\n /*BASE COLOR RULES*/\n --neutral-grey-background: #eeeeee;\n --neutral-grey-disabled: #cbcbcb;\n --neutral-grey-primary: #282828;\n --neutral-grey-secondary: #707070;\n --neutral-white: #ffffff;\n --primary-hard: #e75a50;\n --primary-soft: #ffeae9;\n --primary-standard: #fa7268;\n --secondary-hard: #435171;\n --secondary-soft: #dde3ed;\n --secondary-standard: #5e79ba;\n --status-danger-hard: #ba250a;\n --status-danger-soft: #fdd3d1;\n --status-danger-standard: #d72c0d;\n --status-interaction-hard: #22559e;\n --status-interaction-soft: #f2f7fe;\n --status-interaction-standard: #2c6ecb;\n --status-success-hard: #156048;\n --status-success-soft: #f1f8f5;\n --status-success-standard: #1d7f60;\n --status-warning-hard: #987100;\n --status-warning-soft: #fef5ea;\n --status-warning-standard: #b98900;\n\n /*TYPOGRAPHY RULES*/\n --ff-primary: 'Inter';\n --ff-secondary: 'Prompt';\n\n --lh-300: 1.25rem;\n --lh-400: 1.5rem;\n --lh-500: 1.625rem;\n --lh-600: 2rem;\n --lh-700: 2.75rem;\n --lh-800: 3.5rem;\n --lh-850: 4.375rem;\n --lh-900: 5.5rem;\n --fs-300: 0.875rem;\n --fs-400: 1rem;\n --fs-500: 1.125rem;\n --fs-600: 1.5rem;\n --fs-700: 2.25rem;\n --fs-800: 3rem;\n --fs-850: 3.75rem;\n --fs-900: 4.5rem;\n --fw-300: 300;\n --fw-400: 400;\n --fw-900: 700;\n}\n\njump-card {\n display: flex;\n flex-direction: column;\n position: relative;\n // --jump-card-max-width: 320px;\n --jump-card-max-width-horizontal: 100%;\n --jump-card-color: var(--neutral-grey-primary);\n --jump-card-background: #fff;\n --jump-card-color-dark: #fff;\n --jump-card-border-color: var(--neutral-grey-background);\n --jump-card-border-radius: 6px;\n --jump-card-border-top-radius: 1rem;\n --jump-card-top-border-body-radius: 1.5rem 1rem;\n --jump-card-padding: 1rem 1.25rem;\n\n font-family: var(--ff-primary, 'Arial'), sans-serif;\n line-height: var(--lh-400, 1.3);\n background-color: var(--jump-card-background);\n color: var(--jump-card-color);\n // max-width: var(--jump-card-max-width);\n overflow: hidden;\n\n img,\n video {\n aspect-ratio: 4/3;\n overflow: hidden;\n position: relative;\n object-fit: cover;\n }\n\n .Content {\n padding: 1.5rem 1rem;\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n flex: 1;\n background-color: var(--jump-card-background);\n }\n\n &[dark] {\n background-color: var(--neutral-grey-primary);\n color: var(--jump-card-color-dark);\n\n .Content {\n background-color: var(--neutral-grey-primary);\n color: var(--jump-card-color-dark);\n }\n }\n\n &[border] {\n border: 1px solid var(--jump-card-border-color);\n }\n\n &[border-radius] {\n border-radius: var(--jump-card-border-radius);\n }\n\n &[top-border-content-radius] {\n border-radius: var(--jump-card-border-top-radius);\n\n .Content {\n border-top-left-radius: var(--jump-card-border-top-radius);\n border-top-right-radius: var(--jump-card-border-top-radius);\n margin-top: -1rem;\n z-index: 2;\n }\n }\n\n &[boxed] {\n border-radius: var(--jump-card-border-radius);\n\n img,\n video {\n border-radius: var(--jump-card-border-radius);\n background-color: var(--jump-card-background);\n margin: 0.5rem 0.5rem 0;\n }\n }\n\n &[horizontal] {\n flex-direction: row;\n gap: 0.5rem;\n align-items: center;\n max-width: var(--jump-card-max-width-horizontal);\n }\n\n &[rounded-media] {\n align-items: center;\n justify-content: center;\n text-align: center;\n background-color: transparent;\n\n img,\n video {\n background-color: transparent;\n border-radius: 50%;\n aspect-ratio: 1;\n width: 100%;\n flex: 0 1 40%;\n }\n\n .Content {\n background-color: transparent;\n align-items: center;\n }\n }\n\n &[rounded-media][horizontal] {\n text-align: left;\n\n .Content {\n align-items: flex-start;\n }\n }\n\n &[shadow] {\n box-shadow: 0px 2px 25px 0px hsla(0, 0%, 0%, 0.1);\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'jump-card',\n styleUrl: 'jump-card.scss',\n shadow: false,\n})\nexport class AppCard {\n /**\n * Indicates if the card is horizontal\n */\n @Prop({reflect: true}) horizontal: boolean = false;\n\n /**\n * Indicates if the card is horizontal\n */\n @Prop({reflect: true}) dark: boolean = false;\n\n /**\n * Indicates if card has shadow\n */\n @Prop({reflect: true}) shadow: boolean;\n\n /**\n * Indicates if card has borders\n */\n @Prop({reflect: true}) border: boolean;\n\n /**\n * Indicates if borders of the entire card are rounded\n */\n @Prop({reflect: true}) borderRadius: boolean = false;\n\n /**\n * Indicates if border top of the body is rounded; Not compatible with boxed\n */\n @Prop({reflect: true}) topBorderContentRadius: boolean = false;\n\n /**\n * Indicates if media has padding; Not compatible with roundedMedia\n */\n @Prop({reflect: true}) boxed: boolean = false;\n\n /**\n * Indicates if image is rounded and there isnt a bg\n */\n @Prop({reflect: true}) roundedMedia: boolean = false;\n\n /**\n * Indicates the imgSrc of the card\n */\n @Prop({reflect: true}) imgSrc: string = '';\n\n /**\n * Indicates the img's alt of the card\n */\n @Prop({reflect: true}) imgAlt: string = '';\n\n /**\n * Indicates the videoSrc of the card\n */\n @Prop({reflect: true}) videoSrc: string = '';\n\n render() {\n return (\n <Host horizontal={this.horizontal} border-radius={this.borderRadius} rounded-media={this.roundedMedia} top-border-content-radius={this.topBorderContentRadius} boxed={this.boxed} shadow={this.shadow} border={this.border}>\n {this.imgSrc && !this.videoSrc ? <img src={this.imgSrc} alt={this.imgAlt}></img> : ''}\n {this.videoSrc && !this.imgSrc ? \n <video autoplay> \n <source src={this.videoSrc} type=\"video/mp4\"/> \n <source src={this.videoSrc} type=\"video/mov\"/> \n <source src={this.videoSrc} type=\"video/webm\"/> \n </video> : ''}\n <div class=\"Content\">\n <slot name=\"body\"></slot>\n <slot name=\"footer\"></slot>\n </div>\n </Host>\n );\n }\n\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  const NAMESPACE = 'jump-design-system';
2
- const BUILD = /* jump-design-system */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: false, slot: true, slotChildNodesFix: false, slotRelocation: true, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
2
+ const BUILD = /* jump-design-system */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: false, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: false, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: false, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
3
3
 
4
4
  /**
5
5
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -9,6 +9,7 @@ const BUILD = /* jump-design-system */ { allRenderFn: true, appendChildSlotFix:
9
9
  *
10
10
  * Modified for Stencil's renderer and slot projection
11
11
  */
12
+ let scopeId;
12
13
  let contentRef;
13
14
  let hostTagName;
14
15
  let useNativeShadowDom = false;
@@ -46,6 +47,7 @@ const SLOT_FB_CSS = 'slot-fb{display:contents}slot-fb[hidden]{display:none}';
46
47
  * Don't add values to these!!
47
48
  */
48
49
  const EMPTY_OBJ = {};
50
+ const isDef = (v) => v != null;
49
51
  /**
50
52
  * Check whether a value is a 'complex type', defined here as an object or a
51
53
  * function.
@@ -298,8 +300,20 @@ const addStyle = (styleContainerNode, cmpMeta, mode) => {
298
300
  const attachStyles = (hostRef) => {
299
301
  const cmpMeta = hostRef.$cmpMeta$;
300
302
  const elm = hostRef.$hostElement$;
303
+ const flags = cmpMeta.$flags$;
301
304
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
302
- addStyle(elm.getRootNode(), cmpMeta);
305
+ const scopeId = addStyle(elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta);
306
+ if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
307
+ // only required when we're NOT using native shadow dom (slot)
308
+ // or this browser doesn't support native shadow dom
309
+ // and this host element was NOT created with SSR
310
+ // let's pick out the inner content for slot projection
311
+ // create a node to represent where the original
312
+ // content was first placed, which is useful later on
313
+ // DOM WRITE!!
314
+ elm['s-sc'] = scopeId;
315
+ elm.classList.add(scopeId + '-h');
316
+ }
303
317
  endAttachStyles();
304
318
  };
305
319
  const getScopeId = (cmp, mode) => 'sc-' + (cmp.$tagName$);
@@ -431,6 +445,10 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
431
445
  // remember for later we need to check to relocate nodes
432
446
  checkSlotRelocate = true;
433
447
  if (newVNode.$tag$ === 'slot') {
448
+ if (scopeId) {
449
+ // scoped css needs to add its scoped id to the parent element
450
+ parentElm.classList.add(scopeId + '-s');
451
+ }
434
452
  newVNode.$flags$ |= newVNode.$children$
435
453
  ? // slot element has fallback content
436
454
  2 /* VNODE_FLAGS.isSlotFallback */
@@ -456,10 +474,15 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
456
474
  {
457
475
  updateElement(null, newVNode, isSvgMode);
458
476
  }
477
+ if (isDef(scopeId) && elm['s-si'] !== scopeId) {
478
+ // if there is a scopeId and this is the initial render
479
+ // then let's add the scopeId as a css class
480
+ elm.classList.add((elm['s-si'] = scopeId));
481
+ }
459
482
  if (newVNode.$children$) {
460
483
  for (i = 0; i < newVNode.$children$.length; ++i) {
461
484
  // create the node
462
- childNode = createElm(oldParentVNode, newVNode, i);
485
+ childNode = createElm(oldParentVNode, newVNode, i, elm);
463
486
  // return node could have been null
464
487
  if (childNode) {
465
488
  // append our new node
@@ -543,9 +566,12 @@ const putBackInOriginalLocation = (parentElm, recursive) => {
543
566
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
544
567
  let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
545
568
  let childNode;
569
+ if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
570
+ containerElm = containerElm.shadowRoot;
571
+ }
546
572
  for (; startIdx <= endIdx; ++startIdx) {
547
573
  if (vnodes[startIdx]) {
548
- childNode = createElm(null, parentVNode, startIdx);
574
+ childNode = createElm(null, parentVNode, startIdx, parentElm);
549
575
  if (childNode) {
550
576
  vnodes[startIdx].$elm$ = childNode;
551
577
  containerElm.insertBefore(childNode, referenceNode(before) );
@@ -796,7 +822,7 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh, isInitialRender = fal
796
822
  elmToMove = oldCh[idxInOld];
797
823
  if (elmToMove.$tag$ !== newStartVnode.$tag$) {
798
824
  // the tag doesn't match so we'll need a new DOM element
799
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld);
825
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld, parentElm);
800
826
  }
801
827
  else {
802
828
  patch(elmToMove, newStartVnode, isInitialRender);
@@ -812,7 +838,7 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh, isInitialRender = fal
812
838
  // the key of the first new child OR the build is not using `key`
813
839
  // attributes at all. In either case we need to create a new element
814
840
  // for the new node.
815
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx);
841
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm);
816
842
  newStartVnode = newCh[++newStartIdx];
817
843
  }
818
844
  if (node) {
@@ -1165,7 +1191,10 @@ const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1165
1191
  rootVnode.$tag$ = null;
1166
1192
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
1167
1193
  hostRef.$vnode$ = rootVnode;
1168
- rootVnode.$elm$ = oldVNode.$elm$ = (hostElm);
1194
+ rootVnode.$elm$ = oldVNode.$elm$ = (hostElm.shadowRoot || hostElm );
1195
+ {
1196
+ scopeId = hostElm['s-sc'];
1197
+ }
1169
1198
  useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1170
1199
  {
1171
1200
  contentRef = hostElm['s-cr'];
@@ -1320,6 +1349,16 @@ const dispatchHooks = (hostRef, isInitialLoad) => {
1320
1349
  // 2. If all functions added to the queue are asynchronous they'll all be
1321
1350
  // called in order after `dispatchHooks` exits.
1322
1351
  let maybePromise;
1352
+ if (isInitialLoad) {
1353
+ {
1354
+ // If `componentWillLoad` returns a `Promise` then we want to wait on
1355
+ // whatever's going on in that `Promise` before we launch into
1356
+ // rendering the component, doing other lifecycle stuff, etc. So
1357
+ // in that case we assign the returned promise to the variable we
1358
+ // declared above to hold a possible 'queueing' Promise
1359
+ maybePromise = safeCall(instance, 'componentWillLoad');
1360
+ }
1361
+ }
1323
1362
  endSchedule();
1324
1363
  return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
1325
1364
  };
@@ -1884,6 +1923,17 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1884
1923
  super(self);
1885
1924
  self = this;
1886
1925
  registerHost(self, cmpMeta);
1926
+ if (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
1927
+ // this component is using shadow dom
1928
+ // and this browser supports shadow dom
1929
+ // add the read-only property "shadowRoot" to the host element
1930
+ // adding the shadow root build conditionals to minimize runtime
1931
+ {
1932
+ {
1933
+ self.attachShadow({ mode: 'open' });
1934
+ }
1935
+ }
1936
+ }
1887
1937
  }
1888
1938
  connectedCallback() {
1889
1939
  if (appLoadFallback) {
@@ -2102,4 +2152,4 @@ const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
2102
2152
 
2103
2153
  export { Host as H, bootstrapLazy as b, h, promiseResolve as p, registerInstance as r, setNonce as s };
2104
2154
 
2105
- //# sourceMappingURL=index-7feee8ea.js.map
2155
+ //# sourceMappingURL=index-d09b8a38.js.map