@vonage/vivid 3.0.0-next.2 → 3.0.0-next.5

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 (88) hide show
  1. package/accordion/index.js +61 -0
  2. package/accordion-item/index.js +125 -0
  3. package/badge/index.js +19 -10
  4. package/banner/index.js +212 -0
  5. package/breadcrumb/index.js +100 -0
  6. package/breadcrumb-item/index.js +15 -8
  7. package/button/index.js +24 -15
  8. package/calendar/index.js +1521 -0
  9. package/elevation/index.js +5 -12
  10. package/focus/index.js +2 -2
  11. package/icon/index.js +33 -4
  12. package/index.d.ts +1 -0
  13. package/index.js +21 -5
  14. package/layout/index.js +1 -1
  15. package/lib/accordion/accordion.d.ts +9 -0
  16. package/lib/accordion/accordion.template.d.ts +4 -0
  17. package/lib/accordion/index.d.ts +2 -0
  18. package/lib/accordion-item/accordion-item.d.ts +13 -0
  19. package/lib/accordion-item/accordion-item.template.d.ts +4 -0
  20. package/lib/accordion-item/index.d.ts +3 -0
  21. package/lib/badge/badge.d.ts +3 -3
  22. package/lib/banner/banner.d.ts +20 -0
  23. package/lib/banner/banner.template.d.ts +6 -0
  24. package/lib/banner/index.d.ts +2 -0
  25. package/lib/breadcrumb/breadcrumb.d.ts +3 -0
  26. package/lib/breadcrumb/index.d.ts +2 -0
  27. package/lib/breadcrumb-item/breadcrumb-item.d.ts +3 -3
  28. package/lib/breadcrumb-item/breadcrumb-item.template.d.ts +0 -1
  29. package/lib/breadcrumb-item/index.d.ts +1 -0
  30. package/lib/button/button.d.ts +3 -3
  31. package/lib/calendar/calendar.d.ts +11 -0
  32. package/lib/calendar/calendar.template.d.ts +4 -0
  33. package/lib/calendar/helpers/calendar.date-functions.d.ts +2 -0
  34. package/lib/calendar/helpers/calendar.event-context.d.ts +6 -0
  35. package/lib/calendar/helpers/calendar.keyboard-interactions.d.ts +9 -0
  36. package/lib/calendar/index.d.ts +3 -0
  37. package/lib/components.d.ts +9 -0
  38. package/lib/elevation/elevation.d.ts +1 -1
  39. package/lib/enums.d.ts +3 -2
  40. package/lib/icon/icon.d.ts +1 -3
  41. package/lib/popup/index.d.ts +4 -0
  42. package/lib/popup/popup.d.ts +29 -0
  43. package/lib/popup/popup.template.d.ts +4 -0
  44. package/lib/progress/index.d.ts +2 -0
  45. package/lib/progress/progress.d.ts +9 -0
  46. package/lib/progress/progress.template.d.ts +5 -0
  47. package/lib/progress-ring/index.d.ts +2 -0
  48. package/lib/progress-ring/progress-ring.d.ts +6 -0
  49. package/lib/progress-ring/progress-ring.template.d.ts +4 -0
  50. package/lib/side-drawer/index.d.ts +2 -0
  51. package/lib/side-drawer/side-drawer.d.ts +12 -0
  52. package/lib/side-drawer/side-drawer.template.d.ts +4 -0
  53. package/lib/sidenav-item/sidenav-item.d.ts +4 -5
  54. package/lib/text/index.d.ts +2 -0
  55. package/lib/text/text.d.ts +10 -0
  56. package/lib/text/text.template.d.ts +4 -0
  57. package/lib/text-anchor/text-anchor.d.ts +3 -0
  58. package/lib/tooltip/index.d.ts +3 -0
  59. package/lib/tooltip/tooltip.d.ts +10 -0
  60. package/lib/tooltip/tooltip.template.d.ts +4 -0
  61. package/package.json +9 -5
  62. package/popup/index.js +2087 -0
  63. package/progress/index.js +98 -0
  64. package/progress-ring/index.js +76 -0
  65. package/shared/_has.js +58 -0
  66. package/shared/affix.js +10 -25
  67. package/shared/anchor.js +3 -3
  68. package/shared/aria-global.js +20 -20
  69. package/shared/base-progress.js +65 -0
  70. package/shared/breadcrumb-item.js +25 -0
  71. package/shared/es.object.assign.js +68 -0
  72. package/shared/icon.js +1393 -0
  73. package/shared/index.js +4918 -1427
  74. package/shared/index2.js +15 -4905
  75. package/shared/patterns/affix.d.ts +3 -4
  76. package/shared/slotted.js +119 -0
  77. package/shared/text-anchor.js +21 -0
  78. package/shared/text-anchor.template.js +14 -19
  79. package/shared/web.dom-collections.iterator.js +639 -639
  80. package/shared/when.js +15 -0
  81. package/side-drawer/index.js +103 -0
  82. package/sidenav-item/index.js +15 -56
  83. package/styles/themes/dark.css +4 -4
  84. package/styles/themes/light.css +4 -4
  85. package/text/index.js +45 -0
  86. package/text-anchor/index.js +6 -2
  87. package/tooltip/index.js +73 -0
  88. package/shared/index3.js +0 -21
package/button/index.js CHANGED
@@ -1,12 +1,15 @@
1
- import '../shared/index.js';
2
- import { F as Focus } from '../shared/index3.js';
3
- import { e as emptyArray, D as DOM, a as attr, o as observable, F as FoundationElement, _ as __decorate, b as __metadata, h as html, d as designSystem } from '../shared/index2.js';
1
+ import '../icon/index.js';
2
+ import { F as Focus } from '../shared/index2.js';
3
+ import { e as emptyArray, D as DOM, a as attr, o as observable, F as FoundationElement, _ as __decorate, b as __metadata, h as html, d as designSystem } from '../shared/index.js';
4
4
  import '../shared/web.dom-collections.iterator.js';
5
- import { P as PrefixOrSuffix, p as prefixOrSuffixTemplate } from '../shared/affix.js';
5
+ import { A as AffixIconWithTrailing, a as affixIconTemplateFactory } from '../shared/affix.js';
6
6
  import { a as applyMixins } from '../shared/apply-mixins.js';
7
7
  import { A as ARIAGlobalStatesAndProperties, S as StartEnd, r as ref } from '../shared/aria-global.js';
8
8
  import { s as styleInject } from '../shared/style-inject.es.js';
9
9
  import { c as classNames } from '../shared/class-names.js';
10
+ import '../shared/icon.js';
11
+ import '../shared/_has.js';
12
+ import '../shared/when.js';
10
13
 
11
14
  /**
12
15
  * Key Code values
@@ -93,7 +96,7 @@ const ElementInternalsKey = "ElementInternals";
93
96
  */
94
97
  const supportsElementInternals = ElementInternalsKey in window &&
95
98
  "setFormValue" in window[ElementInternalsKey].prototype;
96
- const InternalsMap = new Map();
99
+ const InternalsMap = new WeakMap();
97
100
  /**
98
101
  * Base function for providing Custom Element Form Association.
99
102
  *
@@ -639,10 +642,10 @@ __decorate([
639
642
  class DelegatesARIAButton {
640
643
  }
641
644
  __decorate([
642
- attr({ attribute: "aria-expanded", mode: "fromView" })
645
+ attr({ attribute: "aria-expanded" })
643
646
  ], DelegatesARIAButton.prototype, "ariaExpanded", void 0);
644
647
  __decorate([
645
- attr({ attribute: "aria-pressed", mode: "fromView" })
648
+ attr({ attribute: "aria-pressed" })
646
649
  ], DelegatesARIAButton.prototype, "ariaPressed", void 0);
647
650
  applyMixins(DelegatesARIAButton, ARIAGlobalStatesAndProperties);
648
651
  applyMixins(Button$1, StartEnd, DelegatesARIAButton);
@@ -663,11 +666,13 @@ __decorate([attr, __metadata("design:type", String)], Button.prototype, "appeara
663
666
 
664
667
  __decorate([attr, __metadata("design:type", String)], Button.prototype, "size", void 0);
665
668
 
666
- __decorate([attr, __metadata("design:type", Object)], Button.prototype, "label", void 0);
669
+ __decorate([attr({
670
+ mode: 'fromView'
671
+ }), __metadata("design:type", Object)], Button.prototype, "label", void 0);
667
672
 
668
- applyMixins(Button, PrefixOrSuffix);
673
+ applyMixins(Button, AffixIconWithTrailing);
669
674
 
670
- var css_248z = "/*\n Do not edit directly\n Generated on Sun, 23 Jan 2022 11:15:05 GMT\n*/\n.control.appearance-filled {\n --appearance-color-fill: var(--connotation);\n --appearance-color-text: var(--on-connotation);\n}\n\n.control.appearance-outlined {\n --appearance-color-fill: transparent;\n --appearance-color-outline: var(--connotation-diverse);\n --appearance-color-text: var(--connotation-diverse);\n}\n\n.control.appearance-ghost,\n.control:not(.appearance-filled):not(.appearance-filled-idle):not(.appearance-outlined):not(.appearance-outlined-idle):not(.appearance-ghost-idle) {\n --appearance-color-fill: transparent;\n --appearance-color-text: var(--connotation-diverse);\n}\n\n.control.appearance-filled-idle {\n --appearance-color-fill: var(--vvd-color-neutral-10);\n --appearance-color-text: var(--vvd-color-neutral-30);\n}\n\n.control.appearance-outlined-idle {\n --appearance-color-fill: transparent;\n --appearance-color-outline: var(--vvd-color-neutral-30);\n --appearance-color-text: var(--vvd-color-neutral-30);\n}\n\n.control.appearance-ghost-idle {\n --appearance-color-fill: transparent;\n --appearance-color-text: var(--vvd-color-neutral-30);\n}\n\n:host {\n outline: 0 none;\n}\n\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n background-color: var(--appearance-color-fill);\n block-size: var(--button-block-size);\n box-shadow: inset 0 0 0 1px var(--appearance-color-outline);\n color: var(--appearance-color-text);\n outline: 0 none;\n vertical-align: middle;\n}\n.control:not(.connotation-cta):not(.connotation-success):not(.connotation-alert) {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-diverse: var(--vvd-color-primary);\n}\n\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-diverse: var(--vvd-color-cta-70);\n}\n\n.control.connotation-success {\n --connotation: var(--vvd-color-success);\n --on-connotation: var(--vvd-color-on-success);\n --connotation-diverse: var(--vvd-color-success-70);\n}\n\n.control.connotation-alert {\n --connotation: var(--vvd-color-alert);\n --on-connotation: var(--vvd-color-on-alert);\n --connotation-diverse: var(--vvd-color-alert-70);\n}\n\n.control.icon-only {\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .control.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .control.icon-only {\n inline-size: var(--button-block-size);\n }\n}\n\n/* Size */\n.control.size-base-small {\n --button-block-size: 32px;\n font: 600 ultra-condensed 12px / 16px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control.size-base-small:not(.icon-only) {\n --button-icon-gap: 8px;\n padding-inline: 12px;\n}\n.control.size-base-small .icon {\n font-size: 16px;\n}\n\n.control.size-base-large {\n --button-block-size: 48px;\n font: 600 ultra-condensed 16px / 24px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control.size-base-large:not(.icon-only) {\n --button-icon-gap: 10px;\n padding-inline: 20px;\n}\n.control.size-base-large .icon {\n font-size: 24px;\n}\n\n.control:not(.size-base-small):not(.size-base-large) {\n --button-block-size: 40px;\n font: 600 ultra-condensed 14px / 100% SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control:not(.size-base-small):not(.size-base-large):not(.icon-only) {\n --button-icon-gap: 8px;\n padding-inline: 16px;\n}\n.control:not(.size-base-small):not(.size-base-large) .icon {\n font-size: 20px;\n}\n\n/* Shape */\n.control:not(.shape-pill) {\n border-radius: 6px;\n}\n\n.control.shape-pill:not(.icon-only) {\n border-radius: 24px;\n}\n.control.shape-pill.icon-only {\n border-radius: 50%;\n}\n\n/* Icon */\n.icon:not(.icon-trailing) {\n margin-inline-end: var(--button-icon-gap);\n}\n.icon.icon-trailing {\n order: 1;\n margin-inline-start: var(--button-icon-gap);\n}\n\n:not(:focus) .focus-indicator {\n display: none;\n}\n.appearance-outlined .focus-indicator, .appearance-ghost .focus-indicator {\n --focus-stroke-gap-color: transparent;\n}";
675
+ var css_248z = "/*\n Do not edit directly\n Generated on Sun, 23 Jan 2022 11:15:05 GMT\n*/\n:host {\n outline: 0 none;\n}\n\n.control {\n position: relative;\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n border: 0 none;\n background-color: var(--_appearance-color-fill);\n block-size: var(--button-block-size);\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n cursor: pointer;\n outline: 0 none;\n vertical-align: middle;\n}\n.control:not(.connotation-cta):not(.connotation-success):not(.connotation-alert) {\n --connotation: var(--vvd-color-primary);\n --on-connotation: var(--vvd-color-on-primary);\n --connotation-diverse: var(--vvd-color-neutral-70);\n --connotation-contrast: var(--vvd-color-neutral-90);\n --connotation-soft: var(--vvd-color-neutral-20);\n --connotation-pale: var(--vvd-color-neutral-10);\n}\n\n.control.connotation-cta {\n --connotation: var(--vvd-color-cta);\n --on-connotation: var(--vvd-color-on-cta);\n --connotation-diverse: var(--vvd-color-cta-70);\n --connotation-contrast: var(--vvd-color-cta-90);\n --connotation-soft: var(--vvd-color-cta-20);\n --connotation-pale: var(--vvd-color-cta-10);\n}\n\n.control.connotation-success {\n --connotation: var(--vvd-color-success);\n --on-connotation: var(--vvd-color-on-success);\n --connotation-diverse: var(--vvd-color-success-70);\n --connotation-contrast: var(--vvd-color-success-90);\n --connotation-soft: var(--vvd-color-success-20);\n --connotation-pale: var(--vvd-color-success-10);\n}\n\n.control.connotation-alert {\n --connotation: var(--vvd-color-alert);\n --on-connotation: var(--vvd-color-on-alert);\n --connotation-diverse: var(--vvd-color-alert-70);\n --connotation-contrast: var(--vvd-color-alert-90);\n --connotation-soft: var(--vvd-color-alert-20);\n --connotation-pale: var(--vvd-color-alert-10);\n}\n\n.control.appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation);\n --_appearance-color-outline: transaprent;\n}\n.control.appearance-outlined {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: var(--connotation);\n}\n.control {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:hover.appearance-filled, .control.hovered.appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-diverse);\n --_appearance-color-outline: transaprent;\n}\n.control:hover.appearance-outlined, .control.hovered.appearance-outlined {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-pale);\n --_appearance-color-outline: var(--connotation);\n}\n.control:hover, .control.hovered {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-pale);\n --_appearance-color-outline: transaprent;\n}\n.control:disabled.appearance-filled, .control.disabled.appearance-filled {\n --_appearance-color-text: var(--vvd-color-neutral-30);\n --_appearance-color-fill: var(--vvd-color-neutral-10);\n --_appearance-color-outline: transaprent;\n}\n.control:disabled.appearance-outlined, .control.disabled.appearance-outlined {\n --_appearance-color-text: var(--vvd-color-neutral-30);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: var(--vvd-color-neutral-30);\n}\n.control:disabled, .control.disabled {\n --_appearance-color-text: var(--vvd-color-neutral-30);\n --_appearance-color-fill: transaprent;\n --_appearance-color-outline: transaprent;\n}\n.control:active.appearance-filled, .control.active.appearance-filled {\n --_appearance-color-text: var(--on-connotation);\n --_appearance-color-fill: var(--connotation-contrast);\n --_appearance-color-outline: transaprent;\n}\n.control:active.appearance-outlined, .control.active.appearance-outlined {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-soft);\n --_appearance-color-outline: var(--connotation);\n}\n.control:active, .control.active {\n --_appearance-color-text: var(--connotation);\n --_appearance-color-fill: var(--connotation-soft);\n --_appearance-color-outline: transaprent;\n}\n.control.icon-only {\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .control.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .control.icon-only {\n inline-size: var(--button-block-size);\n }\n}\n\n/* Size */\n.control.size-base-small {\n --button-block-size: 32px;\n font: 600 ultra-condensed 12px / 16px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control.size-base-small:not(.icon-only) {\n --button-icon-gap: 8px;\n padding-inline: 12px;\n}\n.control.size-base-small .icon {\n font-size: 16px;\n}\n\n.control.size-base-large {\n --button-block-size: 48px;\n font: 600 ultra-condensed 16px / 24px SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control.size-base-large:not(.icon-only) {\n --button-icon-gap: 10px;\n padding-inline: 20px;\n}\n.control.size-base-large .icon {\n font-size: 24px;\n}\n\n.control:not(.size-base-small):not(.size-base-large) {\n --button-block-size: 40px;\n font: 600 ultra-condensed 14px / 100% SpeziaWebVariable;\n letter-spacing: 0px;\n text-decoration: none;\n text-transform: none;\n}\n.control:not(.size-base-small):not(.size-base-large):not(.icon-only) {\n --button-icon-gap: 8px;\n padding-inline: 16px;\n}\n.control:not(.size-base-small):not(.size-base-large) .icon {\n font-size: 20px;\n}\n\n/* Shape */\n.control:not(.shape-pill) {\n border-radius: 6px;\n}\n\n.control.shape-pill:not(.icon-only) {\n border-radius: 24px;\n}\n.control.shape-pill.icon-only {\n border-radius: 50%;\n}\n\n/* Icon */\n:not(.icon-trailing) .icon {\n margin-inline-end: var(--button-icon-gap);\n}\n.icon-trailing .icon {\n order: 1;\n margin-inline-start: var(--button-icon-gap);\n}\n\n:not(:focus) .focus-indicator {\n display: none;\n}\n.appearance-outlined .focus-indicator, .appearance-ghost .focus-indicator {\n --focus-stroke-gap-color: transparent;\n}";
671
676
  styleInject(css_248z);
672
677
 
673
678
  let _ = t => t,
@@ -676,7 +681,7 @@ let _ = t => t,
676
681
 
677
682
  const getAppearanceClassName = (appearance, disabled) => {
678
683
  let className = `appearance-${appearance}`;
679
- disabled && (className += '-idle');
684
+ disabled && (className += ' disabled');
680
685
  return className;
681
686
  };
682
687
 
@@ -687,15 +692,18 @@ const getClasses = ({
687
692
  size,
688
693
  icon,
689
694
  label,
690
- disabled
691
- }) => classNames('control', [`connotation-${connotation}`, Boolean(connotation)], [getAppearanceClassName(appearance, disabled), Boolean(appearance)], [`shape-${shape}`, Boolean(shape)], [`size-${size}`, Boolean(size)], ['icon-only', !label && !!icon]);
695
+ disabled,
696
+ iconTrailing
697
+ }) => classNames('control', [`connotation-${connotation}`, Boolean(connotation)], [getAppearanceClassName(appearance, disabled), Boolean(appearance)], [`shape-${shape}`, Boolean(shape)], [`size-${size}`, Boolean(size)], ['icon-only', !label && !!icon], ['icon-trailing', iconTrailing]);
692
698
 
693
699
  const focusTemplate = context => {
694
700
  const focusTag = context.tagFor(Focus);
695
701
  return html(_t || (_t = _`<${0} class="focus-indicator"></${0}>`), focusTag, focusTag);
696
702
  };
697
703
 
698
- const buttonTemplate = context => html(_t2 || (_t2 = _`
704
+ const buttonTemplate = context => {
705
+ const affixIconTemplate = affixIconTemplateFactory(context);
706
+ return html(_t2 || (_t2 = _`
699
707
  <button
700
708
  class="${0}"
701
709
  ?autofocus="${0}"
@@ -736,7 +744,8 @@ const buttonTemplate = context => html(_t2 || (_t2 = _`
736
744
  ${0}
737
745
  ${0}
738
746
  </button>
739
- `), getClasses, x => x.autofocus, x => x.disabled, x => x.formId, x => x.formaction, x => x.formenctype, x => x.formmethod, x => x.formnovalidate, x => x.formtarget, x => x.name, x => x.type, x => x.value, x => x.ariaAtomic, x => x.ariaBusy, x => x.ariaControls, x => x.ariaCurrent, x => x.ariaDescribedby, x => x.ariaDetails, x => x.ariaDisabled, x => x.ariaErrormessage, x => x.ariaExpanded, x => x.ariaFlowto, x => x.ariaHaspopup, x => x.ariaHidden, x => x.ariaInvalid, x => x.ariaKeyshortcuts, x => x.ariaLabel, x => x.ariaLabelledby, x => x.ariaLive, x => x.ariaOwns, x => x.ariaPressed, x => x.ariaRelevant, x => x.ariaRoledescription, ref('control'), () => focusTemplate(context), () => prefixOrSuffixTemplate(context), x => x.label);
747
+ `), getClasses, x => x.autofocus, x => x.disabled, x => x.formId, x => x.formaction, x => x.formenctype, x => x.formmethod, x => x.formnovalidate, x => x.formtarget, x => x.name, x => x.type, x => x.value, x => x.ariaAtomic, x => x.ariaBusy, x => x.ariaControls, x => x.ariaCurrent, x => x.ariaDescribedby, x => x.ariaDetails, x => x.ariaDisabled, x => x.ariaErrormessage, x => x.ariaExpanded, x => x.ariaFlowto, x => x.ariaHaspopup, x => x.ariaHidden, x => x.ariaInvalid, x => x.ariaKeyshortcuts, x => x.ariaLabel, x => x.ariaLabelledby, x => x.ariaLive, x => x.ariaOwns, x => x.ariaPressed, x => x.ariaRelevant, x => x.ariaRoledescription, ref('control'), () => focusTemplate(context), x => affixIconTemplate(x.icon), x => x.label);
748
+ };
740
749
 
741
750
  const vividButton = Button.compose({
742
751
  baseName: 'button',