@universityofmaryland/web-elements-library 1.6.4 → 1.6.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.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # University of Maryland Web Elements Library
2
2
 
3
- [![Elements Version](https://img.shields.io/badge/Elements-v1.6.4-blue)](https://www.npmjs.com/package/@universityofmaryland/web-elements-library)
3
+ [![Elements Version](https://img.shields.io/badge/Elements-v1.6.5-blue)](https://www.npmjs.com/package/@universityofmaryland/web-elements-library)
4
4
 
5
5
  Foundational UI building blocks for the UMD Design System, providing atomic elements that combine to create complex, accessible, and brand-compliant University of Maryland digital experiences.
6
6
 
@@ -7,6 +7,8 @@ export interface PersonContactProps extends PersonCtaProps, Pick<ThemeProps, 'is
7
7
  address?: ContentElement;
8
8
  email?: ContentElement;
9
9
  linkedin?: ContentElement;
10
+ substack?: ContentElement;
11
+ bluesky?: ContentElement;
10
12
  phone?: ContentElement;
11
13
  }
12
14
  export interface PersonTextLockupProps extends PersonCtaProps, Pick<ThemeProps, 'isThemeDark'> {
@@ -1 +1 @@
1
- {"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../source/atomic/_types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAKD,MAAM,WAAW,kBACf,SAAQ,cAAc,EACpB,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC;IACjC,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAGD,MAAM,WAAW,qBACf,SAAQ,cAAc,EACpB,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC;IACjC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,aAAa,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAGD,MAAM,WAAW,4BAA6B,SAAQ,kBAAkB;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,eACf,SAAQ,qBAAqB,EAC3B,kBAAkB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B"}
1
+ {"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../source/atomic/_types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAKD,MAAM,WAAW,kBACf,SAAQ,cAAc,EACpB,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC;IACjC,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAGD,MAAM,WAAW,qBACf,SAAQ,cAAc,EACpB,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC;IACjC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,aAAa,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAGD,MAAM,WAAW,4BAA6B,SAAQ,kBAAkB;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,eACf,SAAQ,qBAAqB,EAC3B,kBAAkB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B"}
@@ -1,3 +1,3 @@
1
1
  import { PersonContactProps } from '../_types';
2
- export declare const createTextLockupContact: ({ actions, address, email, isThemeDark, linkedin, phone, }: PersonContactProps) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
2
+ export declare const createTextLockupContact: ({ actions, address, email, isThemeDark, linkedin, bluesky, substack, phone, }: PersonContactProps) => import('@universityofmaryland/web-builder-library').ElementModel<HTMLElement>;
3
3
  //# sourceMappingURL=contact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../../source/atomic/text-lockup/contact.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;AA4FpD,eAAO,MAAM,uBAAuB,GAAI,4DAOrC,kBAAkB,kFAuEpB,CAAC"}
1
+ {"version":3,"file":"contact.d.ts","sourceRoot":"","sources":["../../../source/atomic/text-lockup/contact.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;AA4FpD,eAAO,MAAM,uBAAuB,GAAI,+EASrC,kBAAkB,kFAqGpB,CAAC"}
@@ -6,7 +6,7 @@ import * as elementStyles from "@universityofmaryland/web-styles-library/element
6
6
  import { theme } from "@universityofmaryland/web-utilities-library/theme";
7
7
  import { phone, email } from "@universityofmaryland/web-icons-library/communication";
8
8
  import { pin } from "@universityofmaryland/web-icons-library/location";
9
- import { linkedin } from "@universityofmaryland/web-icons-library/social";
9
+ import { linkedin, bluesky, substack } from "@universityofmaryland/web-icons-library/social";
10
10
  const makeIcon = ({
11
11
  icon,
12
12
  isThemeDark
@@ -68,6 +68,8 @@ const createTextLockupContact = ({
68
68
  email: email$1,
69
69
  isThemeDark,
70
70
  linkedin: linkedin$1,
71
+ bluesky: bluesky$1,
72
+ substack: substack$1,
71
73
  phone: phone$1
72
74
  }) => {
73
75
  const container = new ElementBuilder().withClassName("text-lockup-contact").withStyles({
@@ -97,6 +99,26 @@ const createTextLockupContact = ({
97
99
  ).build();
98
100
  container.withChild(linkedInElement);
99
101
  }
102
+ if (bluesky$1) {
103
+ const blueSkyElement = new ElementBuilder().withClassName("text-lockup-contact-bluesky").withChild(
104
+ makeContactLink({
105
+ element: bluesky$1,
106
+ icon: bluesky,
107
+ isThemeDark
108
+ })
109
+ ).build();
110
+ container.withChild(blueSkyElement);
111
+ }
112
+ if (substack$1) {
113
+ const substackElement = new ElementBuilder().withClassName("text-lockup-contact-substack").withChild(
114
+ makeContactLink({
115
+ element: substack$1,
116
+ icon: substack,
117
+ isThemeDark
118
+ })
119
+ ).build();
120
+ container.withChild(substackElement);
121
+ }
100
122
  if (address) {
101
123
  const addressElement = new ElementBuilder().withClassName("text-lockup-contact-address").withChild(
102
124
  makeContactLink({ element: address, icon: pin, isThemeDark })
@@ -1 +1 @@
1
- {"version":3,"file":"contact.js","sources":["../../../source/atomic/text-lockup/contact.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as layout from '@universityofmaryland/web-styles-library/layout';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { theme } from '@universityofmaryland/web-utilities-library/theme';\nimport {\n email as iconEmail,\n phone as iconPhone,\n} from '@universityofmaryland/web-icons-library/communication';\nimport { pin as iconPin } from '@universityofmaryland/web-icons-library/location';\nimport { linkedin as iconLinkedIn } from '@universityofmaryland/web-icons-library/social';\nimport { type PersonContactProps } from '../_types';\n\nconst makeIcon = ({\n icon,\n isThemeDark,\n}: {\n icon: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(icon)\n .styled(\n elementStyles.action.icon.composeIcon({\n theme: theme.variant(isThemeDark),\n }),\n )\n .build();\n};\n\nconst makeText = ({\n text,\n isThemeDark,\n}: {\n text: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(text)\n .styled(\n typography.sans.compose('smaller', {\n theme: theme.fontColor(isThemeDark),\n }),\n )\n .withStyles({\n element: {\n ...(!isThemeDark && { color: `${token.color.gray.dark}` }),\n },\n })\n .build();\n};\n\nconst makeContactLink = ({\n element,\n icon,\n isThemeDark,\n}: {\n element: HTMLElement | HTMLAnchorElement;\n icon: string;\n isThemeDark?: boolean;\n}) => {\n const isLink = element.getAttribute('href') && icon !== iconPin;\n const textSpan = makeText({ text: element.innerHTML, isThemeDark });\n const iconSpan = makeIcon({ icon, isThemeDark });\n const containerStyles = {\n element: {\n marginTop: '4px',\n lineHeight: '1.2em',\n\n [`&a:hover, &a:focus`]: {\n textDecoration: 'underline',\n\n ...(isThemeDark && {\n color: `${token.color.white}`,\n }),\n },\n },\n };\n\n if (isLink) {\n const ariaLabel = element.getAttribute('aria-label');\n const href = element.getAttribute('href') || '';\n\n const linkBuilder = new ElementBuilder('a')\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .withAttribute('href', href);\n\n if (ariaLabel) {\n linkBuilder.withAttribute('aria-label', ariaLabel);\n }\n\n return linkBuilder.build();\n }\n\n return new ElementBuilder()\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .build();\n};\n\nexport const createTextLockupContact = ({\n actions,\n address,\n email,\n isThemeDark,\n linkedin,\n phone,\n}: PersonContactProps) => {\n const container = new ElementBuilder()\n .withClassName('text-lockup-contact')\n .withStyles({\n element: {\n marginTop: `${token.spacing.sm}`,\n },\n });\n\n if (phone) {\n const phoneElement = new ElementBuilder()\n .withClassName('text-lockup-contact-phone')\n .withChild(\n makeContactLink({ element: phone, icon: iconPhone, isThemeDark }),\n )\n .build();\n\n container.withChild(phoneElement);\n }\n\n if (email) {\n const emailElement = new ElementBuilder()\n .withClassName('text-lockup-contact-email')\n .withChild(\n makeContactLink({ element: email, icon: iconEmail, isThemeDark }),\n )\n .build();\n\n container.withChild(emailElement);\n }\n\n if (linkedin) {\n const linkedInElement = new ElementBuilder()\n .withClassName('text-lockup-contact-linkedin')\n .withChild(\n makeContactLink({\n element: linkedin,\n icon: iconLinkedIn,\n isThemeDark,\n }),\n )\n .build();\n\n container.withChild(linkedInElement);\n }\n\n if (address) {\n const addressElement = new ElementBuilder()\n .withClassName('text-lockup-contact-address')\n .withChild(\n makeContactLink({ element: address, icon: iconPin, isThemeDark }),\n )\n .build();\n\n container.withChild(addressElement);\n }\n\n if (actions) {\n const actionsElement = new ElementBuilder(actions)\n .styled(layout.grid.inline.tabletRows)\n .withStyles({\n element: {\n marginTop: token.spacing.sm,\n },\n })\n .build();\n\n container.withChild(actionsElement);\n }\n\n return container.build();\n};\n"],"names":["iconPin","email","linkedin","phone","iconPhone","iconEmail","iconLinkedIn"],"mappings":"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"}
1
+ {"version":3,"file":"contact.js","sources":["../../../source/atomic/text-lockup/contact.ts"],"sourcesContent":["import { ElementBuilder } from '@universityofmaryland/web-builder-library';\nimport * as token from '@universityofmaryland/web-token-library';\nimport * as typography from '@universityofmaryland/web-styles-library/typography';\nimport * as layout from '@universityofmaryland/web-styles-library/layout';\nimport * as elementStyles from '@universityofmaryland/web-styles-library/element';\nimport { theme } from '@universityofmaryland/web-utilities-library/theme';\nimport {\n email as iconEmail,\n phone as iconPhone,\n} from '@universityofmaryland/web-icons-library/communication';\nimport { pin as iconPin } from '@universityofmaryland/web-icons-library/location';\nimport {\n linkedin as iconLinkedIn,\n bluesky as iconBluesky,\n substack as iconSubstack,\n} from '@universityofmaryland/web-icons-library/social';\nimport { type PersonContactProps } from '../_types';\n\nconst makeIcon = ({\n icon,\n isThemeDark,\n}: {\n icon: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(icon)\n .styled(\n elementStyles.action.icon.composeIcon({\n theme: theme.variant(isThemeDark),\n }),\n )\n .build();\n};\n\nconst makeText = ({\n text,\n isThemeDark,\n}: {\n text: string;\n isThemeDark?: boolean;\n}) => {\n return new ElementBuilder('span')\n .withHTML(text)\n .styled(\n typography.sans.compose('smaller', {\n theme: theme.fontColor(isThemeDark),\n }),\n )\n .withStyles({\n element: {\n ...(!isThemeDark && { color: `${token.color.gray.dark}` }),\n },\n })\n .build();\n};\n\nconst makeContactLink = ({\n element,\n icon,\n isThemeDark,\n}: {\n element: HTMLElement | HTMLAnchorElement;\n icon: string;\n isThemeDark?: boolean;\n}) => {\n const isLink = element.getAttribute('href') && icon !== iconPin;\n const textSpan = makeText({ text: element.innerHTML, isThemeDark });\n const iconSpan = makeIcon({ icon, isThemeDark });\n const containerStyles = {\n element: {\n marginTop: '4px',\n lineHeight: '1.2em',\n\n [`&a:hover, &a:focus`]: {\n textDecoration: 'underline',\n\n ...(isThemeDark && {\n color: `${token.color.white}`,\n }),\n },\n },\n };\n\n if (isLink) {\n const ariaLabel = element.getAttribute('aria-label');\n const href = element.getAttribute('href') || '';\n\n const linkBuilder = new ElementBuilder('a')\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .withAttribute('href', href);\n\n if (ariaLabel) {\n linkBuilder.withAttribute('aria-label', ariaLabel);\n }\n\n return linkBuilder.build();\n }\n\n return new ElementBuilder()\n .styled(layout.grid.inline.row)\n .withStyles(containerStyles)\n .withChildren(iconSpan, textSpan)\n .build();\n};\n\nexport const createTextLockupContact = ({\n actions,\n address,\n email,\n isThemeDark,\n linkedin,\n bluesky,\n substack,\n phone,\n}: PersonContactProps) => {\n const container = new ElementBuilder()\n .withClassName('text-lockup-contact')\n .withStyles({\n element: {\n marginTop: `${token.spacing.sm}`,\n },\n });\n\n if (phone) {\n const phoneElement = new ElementBuilder()\n .withClassName('text-lockup-contact-phone')\n .withChild(\n makeContactLink({ element: phone, icon: iconPhone, isThemeDark }),\n )\n .build();\n\n container.withChild(phoneElement);\n }\n\n if (email) {\n const emailElement = new ElementBuilder()\n .withClassName('text-lockup-contact-email')\n .withChild(\n makeContactLink({ element: email, icon: iconEmail, isThemeDark }),\n )\n .build();\n\n container.withChild(emailElement);\n }\n\n if (linkedin) {\n const linkedInElement = new ElementBuilder()\n .withClassName('text-lockup-contact-linkedin')\n .withChild(\n makeContactLink({\n element: linkedin,\n icon: iconLinkedIn,\n isThemeDark,\n }),\n )\n .build();\n\n container.withChild(linkedInElement);\n }\n\n if (bluesky) {\n const blueSkyElement = new ElementBuilder()\n .withClassName('text-lockup-contact-bluesky')\n .withChild(\n makeContactLink({\n element: bluesky,\n icon: iconBluesky,\n isThemeDark,\n }),\n )\n .build();\n\n container.withChild(blueSkyElement);\n }\n\n if (substack) {\n const substackElement = new ElementBuilder()\n .withClassName('text-lockup-contact-substack')\n .withChild(\n makeContactLink({\n element: substack,\n icon: iconSubstack,\n isThemeDark,\n }),\n )\n .build();\n\n container.withChild(substackElement);\n }\n\n if (address) {\n const addressElement = new ElementBuilder()\n .withClassName('text-lockup-contact-address')\n .withChild(\n makeContactLink({ element: address, icon: iconPin, isThemeDark }),\n )\n .build();\n\n container.withChild(addressElement);\n }\n\n if (actions) {\n const actionsElement = new ElementBuilder(actions)\n .styled(layout.grid.inline.tabletRows)\n .withStyles({\n element: {\n marginTop: token.spacing.sm,\n },\n })\n .build();\n\n container.withChild(actionsElement);\n }\n\n return container.build();\n};\n"],"names":["iconPin","email","linkedin","bluesky","substack","phone","iconPhone","iconEmail","iconLinkedIn","iconBluesky","iconSubstack"],"mappings":"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"}
@@ -8,6 +8,8 @@ export interface PersonContact extends PersonTheme {
8
8
  phone?: HTMLElement | null;
9
9
  email?: HTMLElement | null;
10
10
  linkedin?: HTMLElement | null;
11
+ bluesky?: HTMLElement | null;
12
+ substack?: HTMLElement | null;
11
13
  address?: HTMLElement | null;
12
14
  additionalContact?: HTMLElement | null;
13
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../source/composite/person/_types.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,aAAc,SAAQ,WAAW;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,iBAAiB,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,MAAO,SAAQ,aAAa,EAAE,aAAa;IAC1D,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,KAAK,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAClC"}
1
+ {"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../source/composite/person/_types.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,aAAc,SAAQ,WAAW;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,iBAAiB,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,MAAO,SAAQ,aAAa,EAAE,aAAa;IAC1D,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,KAAK,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAClC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@universityofmaryland/web-elements-library",
3
- "version": "1.6.4",
3
+ "version": "1.6.5",
4
4
  "description": "UMD Web Elements",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",