@uoguelph/web-components 1.0.18 → 1.1.1
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/dist/cjs/{index-4cc5bac2.js → index-00f6c6f1.js} +1 -1
- package/dist/cjs/{index-79a6e12b.js → index-d71963b7.js} +177 -30
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/uofg-alert.cjs.entry.js +2 -2
- package/dist/cjs/{uofg-back-to-top_5.cjs.entry.js → uofg-back-to-top_4.cjs.entry.js} +23 -22
- package/dist/cjs/uofg-card.cjs.entry.js +21 -0
- package/dist/cjs/uofg-modal.cjs.entry.js +2 -2
- package/dist/cjs/uofg-web-components.cjs.js +3 -3
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/uofg-footer/uofg-footer.css +52 -1
- package/dist/collection/components/uofg-footer/uofg-footer.js +24 -1
- package/dist/collection/components/uofg-header/uofg-header.css +14 -7
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.js +1 -1
- package/dist/components/uofg-footer.js +23 -5
- package/dist/components/uofg-header.js +1 -1
- package/dist/components/uofg-menu2.js +2 -0
- package/dist/components/uofg-modal.js +2 -0
- package/dist/esm/{index-a1f4c438.js → index-284464b7.js} +177 -30
- package/dist/esm/{index-1fc4b1ff.js → index-a0a2924b.js} +1 -1
- package/dist/esm/loader.js +4 -4
- package/dist/esm/uofg-alert.entry.js +2 -2
- package/dist/esm/{uofg-back-to-top_5.entry.js → uofg-back-to-top_4.entry.js} +24 -22
- package/dist/esm/uofg-card.entry.js +17 -0
- package/dist/esm/uofg-modal.entry.js +2 -2
- package/dist/esm/uofg-web-components.js +4 -4
- package/dist/types/components/uofg-footer/uofg-footer.d.ts +5 -0
- package/dist/types/stencil-public-runtime.d.ts +17 -5
- package/dist/uofg-web-components/p-204e5cf7.entry.js +1 -0
- package/dist/uofg-web-components/{p-bbcc4d40.entry.js → p-3d5269a9.entry.js} +1 -1
- package/dist/uofg-web-components/{p-e5ddc271.js → p-8bb65209.js} +1 -1
- package/dist/uofg-web-components/p-b15e89f2.entry.js +1 -0
- package/dist/uofg-web-components/p-ba36e942.js +2 -0
- package/dist/uofg-web-components/{p-57518c30.entry.js → p-e063f0e4.entry.js} +1 -1
- package/dist/uofg-web-components/uofg-web-components.esm.js +1 -1
- package/loader/index.d.ts +1 -1
- package/package.json +1 -1
- package/dist/uofg-web-components/p-a80dfdee.entry.js +0 -1
- package/dist/uofg-web-components/p-ea5548ab.js +0 -2
|
@@ -107,10 +107,10 @@ const h = (nodeName, vnodeData, ...children) => {
|
|
|
107
107
|
};
|
|
108
108
|
walk(children);
|
|
109
109
|
if (vnodeData) {
|
|
110
|
-
// normalize class / classname attributes
|
|
111
110
|
if (vnodeData.key) {
|
|
112
111
|
key = vnodeData.key;
|
|
113
112
|
}
|
|
113
|
+
// normalize class / className attributes
|
|
114
114
|
{
|
|
115
115
|
const classData = vnodeData.className || vnodeData.class;
|
|
116
116
|
if (classData) {
|
|
@@ -377,6 +377,21 @@ const getScopeId = (cmp, mode) => 'sc-' + (cmp.$tagName$);
|
|
|
377
377
|
*
|
|
378
378
|
* Modified for Stencil's compiler and vdom
|
|
379
379
|
*/
|
|
380
|
+
/**
|
|
381
|
+
* When running a VDom render set properties present on a VDom node onto the
|
|
382
|
+
* corresponding HTML element.
|
|
383
|
+
*
|
|
384
|
+
* Note that this function has special functionality for the `class`,
|
|
385
|
+
* `style`, `key`, and `ref` attributes, as well as event handlers (like
|
|
386
|
+
* `onClick`, etc). All others are just passed through as-is.
|
|
387
|
+
*
|
|
388
|
+
* @param elm the HTMLElement onto which attributes should be set
|
|
389
|
+
* @param memberName the name of the attribute to set
|
|
390
|
+
* @param oldValue the old value for the attribute
|
|
391
|
+
* @param newValue the new value for the attribute
|
|
392
|
+
* @param isSvg whether we're in an svg context or not
|
|
393
|
+
* @param flags bitflags for Vdom variables
|
|
394
|
+
*/
|
|
380
395
|
const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {
|
|
381
396
|
if (oldValue !== newValue) {
|
|
382
397
|
let isProp = isMemberInElement(elm, memberName);
|
|
@@ -978,12 +993,39 @@ const nullifyVNodeRefs = (vNode) => {
|
|
|
978
993
|
* @param hostRef data needed to root and render the virtual DOM tree, such as
|
|
979
994
|
* the DOM node into which it should be rendered.
|
|
980
995
|
* @param renderFnResults the virtual DOM nodes to be rendered
|
|
996
|
+
* @param isInitialLoad whether or not this is the first call after page load
|
|
981
997
|
*/
|
|
982
|
-
const renderVdom = (hostRef, renderFnResults) => {
|
|
998
|
+
const renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
|
|
983
999
|
const hostElm = hostRef.$hostElement$;
|
|
984
1000
|
const oldVNode = hostRef.$vnode$ || newVNode(null, null);
|
|
1001
|
+
// if `renderFnResults` is a Host node then we can use it directly. If not,
|
|
1002
|
+
// we need to call `h` again to wrap the children of our component in a
|
|
1003
|
+
// 'dummy' Host node (well, an empty vnode) since `renderVdom` assumes
|
|
1004
|
+
// implicitly that the top-level vdom node is 1) an only child and 2)
|
|
1005
|
+
// contains attrs that need to be set on the host element.
|
|
985
1006
|
const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
|
|
986
1007
|
hostTagName = hostElm.tagName;
|
|
1008
|
+
// On the first render and *only* on the first render we want to check for
|
|
1009
|
+
// any attributes set on the host element which are also set on the vdom
|
|
1010
|
+
// node. If we find them, we override the value on the VDom node attrs with
|
|
1011
|
+
// the value from the host element, which allows developers building apps
|
|
1012
|
+
// with Stencil components to override e.g. the `role` attribute on a
|
|
1013
|
+
// component even if it's already set on the `Host`.
|
|
1014
|
+
if (isInitialLoad && rootVnode.$attrs$) {
|
|
1015
|
+
for (const key of Object.keys(rootVnode.$attrs$)) {
|
|
1016
|
+
// We have a special implementation in `setAccessor` for `style` and
|
|
1017
|
+
// `class` which reconciles values coming from the VDom with values
|
|
1018
|
+
// already present on the DOM element, so we don't want to override those
|
|
1019
|
+
// attributes on the VDom tree with values from the host element if they
|
|
1020
|
+
// are present.
|
|
1021
|
+
//
|
|
1022
|
+
// Likewise, `ref` and `key` are special internal values for the Stencil
|
|
1023
|
+
// runtime and we don't want to override those either.
|
|
1024
|
+
if (hostElm.hasAttribute(key) && !['key', 'ref', 'style', 'class'].includes(key)) {
|
|
1025
|
+
rootVnode.$attrs$[key] = hostElm[key];
|
|
1026
|
+
}
|
|
1027
|
+
}
|
|
1028
|
+
}
|
|
987
1029
|
rootVnode.$tag$ = null;
|
|
988
1030
|
rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
|
|
989
1031
|
hostRef.$vnode$ = rootVnode;
|
|
@@ -1081,6 +1123,16 @@ const enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.th
|
|
|
1081
1123
|
*/
|
|
1082
1124
|
const isPromisey = (maybePromise) => maybePromise instanceof Promise ||
|
|
1083
1125
|
(maybePromise && maybePromise.then && typeof maybePromise.then === 'function');
|
|
1126
|
+
/**
|
|
1127
|
+
* Update a component given reference to its host elements and so on.
|
|
1128
|
+
*
|
|
1129
|
+
* @param hostRef an object containing references to the element's host node,
|
|
1130
|
+
* VDom nodes, and other metadata
|
|
1131
|
+
* @param instance a reference to the underlying host element where it will be
|
|
1132
|
+
* rendered
|
|
1133
|
+
* @param isInitialLoad whether or not this function is being called as part of
|
|
1134
|
+
* the first render cycle
|
|
1135
|
+
*/
|
|
1084
1136
|
const updateComponent = async (hostRef, instance, isInitialLoad) => {
|
|
1085
1137
|
var _a;
|
|
1086
1138
|
const elm = hostRef.$hostElement$;
|
|
@@ -1092,7 +1144,7 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
|
|
|
1092
1144
|
}
|
|
1093
1145
|
const endRender = createTime('render', hostRef.$cmpMeta$.$tagName$);
|
|
1094
1146
|
{
|
|
1095
|
-
callRender(hostRef, instance);
|
|
1147
|
+
callRender(hostRef, instance, elm, isInitialLoad);
|
|
1096
1148
|
}
|
|
1097
1149
|
if (rc) {
|
|
1098
1150
|
// ok, so turns out there are some child host elements
|
|
@@ -1116,8 +1168,24 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
|
|
|
1116
1168
|
}
|
|
1117
1169
|
}
|
|
1118
1170
|
};
|
|
1119
|
-
|
|
1171
|
+
/**
|
|
1172
|
+
* Handle making the call to the VDom renderer with the proper context given
|
|
1173
|
+
* various build variables
|
|
1174
|
+
*
|
|
1175
|
+
* @param hostRef an object containing references to the element's host node,
|
|
1176
|
+
* VDom nodes, and other metadata
|
|
1177
|
+
* @param instance a reference to the underlying host element where it will be
|
|
1178
|
+
* rendered
|
|
1179
|
+
* @param elm the Host element for the component
|
|
1180
|
+
* @param isInitialLoad whether or not this function is being called as part of
|
|
1181
|
+
* @returns an empty promise
|
|
1182
|
+
*/
|
|
1183
|
+
const callRender = (hostRef, instance, elm, isInitialLoad) => {
|
|
1120
1184
|
try {
|
|
1185
|
+
/**
|
|
1186
|
+
* minification optimization: `allRenderFn` is `true` if all components have a `render`
|
|
1187
|
+
* method, so we can call the method immediately. If not, check before calling it.
|
|
1188
|
+
*/
|
|
1121
1189
|
instance = instance.render() ;
|
|
1122
1190
|
{
|
|
1123
1191
|
hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
|
|
@@ -1131,7 +1199,7 @@ const callRender = (hostRef, instance, elm) => {
|
|
|
1131
1199
|
// or we need to update the css class/attrs on the host element
|
|
1132
1200
|
// DOM WRITE!
|
|
1133
1201
|
{
|
|
1134
|
-
renderVdom(hostRef, instance);
|
|
1202
|
+
renderVdom(hostRef, instance, isInitialLoad);
|
|
1135
1203
|
}
|
|
1136
1204
|
}
|
|
1137
1205
|
}
|
|
@@ -1200,6 +1268,16 @@ const appDidLoad = (who) => {
|
|
|
1200
1268
|
}
|
|
1201
1269
|
nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
|
|
1202
1270
|
};
|
|
1271
|
+
/**
|
|
1272
|
+
* Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
|
|
1273
|
+
* e.g. custom element node. If a build figures out that e.g. no component
|
|
1274
|
+
* has a `componentDidLoad` method, the instance method gets removed from the
|
|
1275
|
+
* output bundle and this function returns `undefined`.
|
|
1276
|
+
* @param instance any object that may or may not contain methods
|
|
1277
|
+
* @param method method name
|
|
1278
|
+
* @param arg single arbitrary argument
|
|
1279
|
+
* @returns result of method call if it exists, otherwise `undefined`
|
|
1280
|
+
*/
|
|
1203
1281
|
const safeCall = (instance, method, arg) => {
|
|
1204
1282
|
if (instance && instance[method]) {
|
|
1205
1283
|
try {
|
|
@@ -1267,6 +1345,7 @@ const setValue = (ref, propName, newVal, cmpMeta) => {
|
|
|
1267
1345
|
* @returns a reference to the same constructor passed in (but now mutated)
|
|
1268
1346
|
*/
|
|
1269
1347
|
const proxyComponent = (Cstr, cmpMeta, flags) => {
|
|
1348
|
+
var _a;
|
|
1270
1349
|
if (cmpMeta.$members$) {
|
|
1271
1350
|
if (Cstr.watchers) {
|
|
1272
1351
|
cmpMeta.$watchers$ = Cstr.watchers;
|
|
@@ -1304,7 +1383,7 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
|
|
|
1304
1383
|
});
|
|
1305
1384
|
if ((flags & 1 /* PROXY_FLAGS.isElementConstructor */)) {
|
|
1306
1385
|
const attrNameToPropName = new Map();
|
|
1307
|
-
prototype.attributeChangedCallback = function (attrName,
|
|
1386
|
+
prototype.attributeChangedCallback = function (attrName, oldValue, newValue) {
|
|
1308
1387
|
plt.jmp(() => {
|
|
1309
1388
|
const propName = attrNameToPropName.get(attrName);
|
|
1310
1389
|
// In a web component lifecycle the attributeChangedCallback runs prior to connectedCallback
|
|
@@ -1327,12 +1406,12 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
|
|
|
1327
1406
|
// customElements.define('my-component', MyComponent);
|
|
1328
1407
|
// </script>
|
|
1329
1408
|
// ```
|
|
1330
|
-
// In this case if we do not
|
|
1409
|
+
// In this case if we do not un-shadow here and use the value of the shadowing property, attributeChangedCallback
|
|
1331
1410
|
// will be called with `newValue = "some-value"` and will set the shadowed property (this.someAttribute = "another-value")
|
|
1332
1411
|
// to the value that was set inline i.e. "some-value" from above example. When
|
|
1333
|
-
// the connectedCallback attempts to
|
|
1412
|
+
// the connectedCallback attempts to un-shadow it will use "some-value" as the initial value rather than "another-value"
|
|
1334
1413
|
//
|
|
1335
|
-
// The case where the attribute was NOT set inline but was not set programmatically shall be handled/
|
|
1414
|
+
// The case where the attribute was NOT set inline but was not set programmatically shall be handled/un-shadowed
|
|
1336
1415
|
// by connectedCallback as this attributeChangedCallback will not fire.
|
|
1337
1416
|
//
|
|
1338
1417
|
// https://developers.google.com/web/fundamentals/web-components/best-practices#lazy-properties
|
|
@@ -1352,18 +1431,46 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
|
|
|
1352
1431
|
// `propName` to be converted to a `DOMString`, which may not be what we want for other primitive props.
|
|
1353
1432
|
return;
|
|
1354
1433
|
}
|
|
1434
|
+
else if (propName == null) {
|
|
1435
|
+
// At this point we should know this is not a "member", so we can treat it like watching an attribute
|
|
1436
|
+
// on a vanilla web component
|
|
1437
|
+
const hostRef = getHostRef(this);
|
|
1438
|
+
const flags = hostRef === null || hostRef === void 0 ? void 0 : hostRef.$flags$;
|
|
1439
|
+
// We only want to trigger the callback(s) if:
|
|
1440
|
+
// 1. The instance is ready
|
|
1441
|
+
// 2. The watchers are ready
|
|
1442
|
+
// 3. The value has changed
|
|
1443
|
+
if (!(flags & 8 /* HOST_FLAGS.isConstructingInstance */) &&
|
|
1444
|
+
flags & 128 /* HOST_FLAGS.isWatchReady */ &&
|
|
1445
|
+
newValue !== oldValue) {
|
|
1446
|
+
const instance = hostRef.$lazyInstance$ ;
|
|
1447
|
+
const entry = cmpMeta.$watchers$[attrName];
|
|
1448
|
+
entry === null || entry === void 0 ? void 0 : entry.forEach((callbackName) => {
|
|
1449
|
+
if (instance[callbackName] != null) {
|
|
1450
|
+
instance[callbackName].call(instance, newValue, oldValue, attrName);
|
|
1451
|
+
}
|
|
1452
|
+
});
|
|
1453
|
+
}
|
|
1454
|
+
return;
|
|
1455
|
+
}
|
|
1355
1456
|
this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue;
|
|
1356
1457
|
});
|
|
1357
1458
|
};
|
|
1358
|
-
//
|
|
1359
|
-
//
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1459
|
+
// Create an array of attributes to observe
|
|
1460
|
+
// This list in comprised of all strings used within a `@Watch()` decorator
|
|
1461
|
+
// on a component as well as any Stencil-specific "members" (`@Prop()`s and `@State()`s).
|
|
1462
|
+
// As such, there is no way to guarantee type-safety here that a user hasn't entered
|
|
1463
|
+
// an invalid attribute.
|
|
1464
|
+
Cstr.observedAttributes = Array.from(new Set([
|
|
1465
|
+
...Object.keys((_a = cmpMeta.$watchers$) !== null && _a !== void 0 ? _a : {}),
|
|
1466
|
+
...members
|
|
1467
|
+
.filter(([_, m]) => m[0] & 15 /* MEMBER_FLAGS.HasAttribute */)
|
|
1468
|
+
.map(([propName, m]) => {
|
|
1469
|
+
const attrName = m[1] || propName;
|
|
1470
|
+
attrNameToPropName.set(attrName, propName);
|
|
1471
|
+
return attrName;
|
|
1472
|
+
}),
|
|
1473
|
+
]));
|
|
1367
1474
|
}
|
|
1368
1475
|
}
|
|
1369
1476
|
return Cstr;
|
|
@@ -1496,23 +1603,35 @@ const connectedCallback = (elm) => {
|
|
|
1496
1603
|
// since they would have been removed when disconnected
|
|
1497
1604
|
addHostEventListeners(elm, hostRef, cmpMeta.$listeners$);
|
|
1498
1605
|
// fire off connectedCallback() on component instance
|
|
1499
|
-
|
|
1606
|
+
if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
|
|
1607
|
+
fireConnectedCallback(hostRef.$lazyInstance$);
|
|
1608
|
+
}
|
|
1609
|
+
else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
|
|
1610
|
+
hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));
|
|
1611
|
+
}
|
|
1500
1612
|
}
|
|
1501
1613
|
endConnected();
|
|
1502
1614
|
}
|
|
1503
1615
|
};
|
|
1504
|
-
const
|
|
1616
|
+
const disconnectInstance = (instance) => {
|
|
1617
|
+
{
|
|
1618
|
+
safeCall(instance, 'disconnectedCallback');
|
|
1619
|
+
}
|
|
1620
|
+
};
|
|
1621
|
+
const disconnectedCallback = async (elm) => {
|
|
1505
1622
|
if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
|
|
1506
1623
|
const hostRef = getHostRef(elm);
|
|
1507
|
-
const instance = hostRef.$lazyInstance$ ;
|
|
1508
1624
|
{
|
|
1509
1625
|
if (hostRef.$rmListeners$) {
|
|
1510
1626
|
hostRef.$rmListeners$.map((rmListener) => rmListener());
|
|
1511
1627
|
hostRef.$rmListeners$ = undefined;
|
|
1512
1628
|
}
|
|
1513
1629
|
}
|
|
1514
|
-
{
|
|
1515
|
-
|
|
1630
|
+
if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$lazyInstance$) {
|
|
1631
|
+
disconnectInstance(hostRef.$lazyInstance$);
|
|
1632
|
+
}
|
|
1633
|
+
else if (hostRef === null || hostRef === void 0 ? void 0 : hostRef.$onReadyPromise$) {
|
|
1634
|
+
hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$));
|
|
1516
1635
|
}
|
|
1517
1636
|
}
|
|
1518
1637
|
};
|
|
@@ -1537,6 +1656,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1537
1656
|
}
|
|
1538
1657
|
lazyBundles.map((lazyBundle) => {
|
|
1539
1658
|
lazyBundle[1].map((compactMeta) => {
|
|
1659
|
+
var _a;
|
|
1540
1660
|
const cmpMeta = {
|
|
1541
1661
|
$flags$: compactMeta[0],
|
|
1542
1662
|
$tagName$: compactMeta[1],
|
|
@@ -1550,7 +1670,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
|
1550
1670
|
cmpMeta.$listeners$ = compactMeta[3];
|
|
1551
1671
|
}
|
|
1552
1672
|
{
|
|
1553
|
-
cmpMeta.$watchers$ = {};
|
|
1673
|
+
cmpMeta.$watchers$ = (_a = compactMeta[4]) !== null && _a !== void 0 ? _a : {};
|
|
1554
1674
|
}
|
|
1555
1675
|
const tagName = cmpMeta.$tagName$;
|
|
1556
1676
|
const HostElement = class extends HTMLElement {
|
|
@@ -1664,13 +1784,40 @@ const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !==
|
|
|
1664
1784
|
* @returns void
|
|
1665
1785
|
*/
|
|
1666
1786
|
const setNonce = (nonce) => (plt.$nonce$ = nonce);
|
|
1787
|
+
/**
|
|
1788
|
+
* A WeakMap mapping runtime component references to their corresponding host reference
|
|
1789
|
+
* instances.
|
|
1790
|
+
*/
|
|
1667
1791
|
const hostRefs = /*@__PURE__*/ new WeakMap();
|
|
1792
|
+
/**
|
|
1793
|
+
* Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
|
|
1794
|
+
*
|
|
1795
|
+
* @param ref the runtime ref of interest
|
|
1796
|
+
* @returns the Host reference (if found) or undefined
|
|
1797
|
+
*/
|
|
1668
1798
|
const getHostRef = (ref) => hostRefs.get(ref);
|
|
1799
|
+
/**
|
|
1800
|
+
* Register a lazy instance with the {@link hostRefs} object so it's
|
|
1801
|
+
* corresponding {@link d.HostRef} can be retrieved later.
|
|
1802
|
+
*
|
|
1803
|
+
* @param lazyInstance the lazy instance of interest
|
|
1804
|
+
* @param hostRef that instances `HostRef` object
|
|
1805
|
+
* @returns a reference to the host ref WeakMap
|
|
1806
|
+
*/
|
|
1669
1807
|
const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
|
|
1670
|
-
|
|
1808
|
+
/**
|
|
1809
|
+
* Register a host element for a Stencil component, setting up various metadata
|
|
1810
|
+
* and callbacks based on {@link BUILD} flags as well as the component's runtime
|
|
1811
|
+
* metadata.
|
|
1812
|
+
*
|
|
1813
|
+
* @param hostElement the host element to register
|
|
1814
|
+
* @param cmpMeta runtime metadata for that component
|
|
1815
|
+
* @returns a reference to the host ref WeakMap
|
|
1816
|
+
*/
|
|
1817
|
+
const registerHost = (hostElement, cmpMeta) => {
|
|
1671
1818
|
const hostRef = {
|
|
1672
1819
|
$flags$: 0,
|
|
1673
|
-
$hostElement$:
|
|
1820
|
+
$hostElement$: hostElement,
|
|
1674
1821
|
$cmpMeta$: cmpMeta,
|
|
1675
1822
|
$instanceValues$: new Map(),
|
|
1676
1823
|
};
|
|
@@ -1679,11 +1826,11 @@ const registerHost = (elm, cmpMeta) => {
|
|
|
1679
1826
|
}
|
|
1680
1827
|
{
|
|
1681
1828
|
hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
|
|
1682
|
-
|
|
1683
|
-
|
|
1829
|
+
hostElement['s-p'] = [];
|
|
1830
|
+
hostElement['s-rc'] = [];
|
|
1684
1831
|
}
|
|
1685
|
-
addHostEventListeners(
|
|
1686
|
-
return hostRefs.set(
|
|
1832
|
+
addHostEventListeners(hostElement, hostRef, cmpMeta.$listeners$);
|
|
1833
|
+
return hostRefs.set(hostElement, hostRef);
|
|
1687
1834
|
};
|
|
1688
1835
|
const isMemberInElement = (elm, memberName) => memberName in elm;
|
|
1689
1836
|
const consoleError = (e, el) => (0, console.error)(e, el);
|
package/dist/esm/loader.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { b as bootstrapLazy } from './index-
|
|
2
|
-
export { s as setNonce } from './index-
|
|
1
|
+
import { b as bootstrapLazy } from './index-284464b7.js';
|
|
2
|
+
export { s as setNonce } from './index-284464b7.js';
|
|
3
3
|
|
|
4
4
|
const defineCustomElements = (win, options) => {
|
|
5
|
-
if (typeof window === 'undefined') return
|
|
6
|
-
return bootstrapLazy([["uofg-alert",[[1,"uofg-alert"]]],["uofg-modal",[[1,"uofg-modal",{"label":[1],"alertDialog":[4,"alert-dialog"],"centered":[4],"staticBackdrop":[4,"static-backdrop"],"autoOpen":[4,"auto-open"],"isOpen":[32],"getState":[64],"setState":[64],"toggle":[64],"close":[64],"open":[64]}]]],["uofg-back-to-
|
|
5
|
+
if (typeof window === 'undefined') return undefined;
|
|
6
|
+
return bootstrapLazy([["uofg-alert",[[1,"uofg-alert"]]],["uofg-card",[[1,"uofg-card",{"href":[1]}]]],["uofg-modal",[[1,"uofg-modal",{"label":[1],"alertDialog":[4,"alert-dialog"],"centered":[4],"staticBackdrop":[4,"static-backdrop"],"autoOpen":[4,"auto-open"],"isOpen":[32],"getState":[64],"setState":[64],"toggle":[64],"close":[64],"open":[64]},null,{"isOpen":["handleIsOpenChange"]}]]],["uofg-back-to-top_4",[[1,"uofg-header",{"pageTitle":[1,"page-title"],"pageUrl":[1,"page-url"],"isFullSize":[32],"pageSpecificContent":[32],"isSubContainerOverflowing":[32]},[[9,"resize","updateFullSize"]]],[1,"uofg-back-to-top",{"threshold":[2],"isVisible":[32]},[[9,"scroll","onScroll"]]],[1,"uofg-footer",{"extraLinks":[32]}],[0,"uofg-menu",{"autoCollapse":[4,"auto-collapse"],"isExpanded":[32],"getExpanded":[64],"setExpanded":[64],"toggle":[64],"collapse":[64],"expand":[64]},null,{"isExpanded":["handleIsExpandedChange"]}]]]], options);
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
export { defineCustomElements };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, h } from './index-
|
|
2
|
-
import { F as FontAwesomeIcon, a as faCircleExclamation } from './index-
|
|
1
|
+
import { r as registerInstance, h } from './index-284464b7.js';
|
|
2
|
+
import { F as FontAwesomeIcon, a as faCircleExclamation } from './index-a0a2924b.js';
|
|
3
3
|
|
|
4
4
|
const uofgAlertCss = "*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}:host{display:block;max-width:100rem}#uofg-alert{display:flex;flex-direction:column;font-size:2rem}#uofg-alert-title{display:flex;align-items:center;font-size:2.25rem;padding:2rem;color:white;background-color:#c20430}#uofg-alert-title>svg{margin-right:1rem;fill:currentColor;height:1.5em}#uofg-alert-body{display:flex;flex-direction:column;padding:1.5rem 2rem;background-color:white}#uofg-alert-body slot[name=subtitle]::slotted(*){font-size:2rem;margin-bottom:2rem;font-weight:bold}#uofg-alert-body slot[name=message]::slotted(*){font-size:1.6rem}#uofg-alert-footer{display:flex;padding:1rem 2rem;background-color:#dddddd;font-size:1.4rem}";
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, h,
|
|
2
|
-
import { F as FontAwesomeIcon, f as faChevronUp } from './index-
|
|
1
|
+
import { r as registerInstance, h, g as getElement, c as createEvent, H as Host } from './index-284464b7.js';
|
|
2
|
+
import { F as FontAwesomeIcon, f as faChevronUp } from './index-a0a2924b.js';
|
|
3
3
|
import { W as WEB_ANIMATIONS_SUPPORTED, P as PREFERS_REDUCED_MOTION } from './utils-cfa32fa2.js';
|
|
4
4
|
|
|
5
5
|
const uofgBackToTopCss = ":host{display:block}:focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}#uofg-back-to-top{position:fixed;margin:10px;height:35px;width:35px;right:0;bottom:0;z-index:1000;cursor:pointer;background-color:black;color:white;transition-duration:0.3s;transition-timing-function:ease-in-out;transition-property:opacity, visibility, background-color;opacity:0;visibility:hidden;border-radius:50%;border:1px solid #fff}#uofg-back-to-top:hover{background-color:#d50029}#uofg-back-to-top>svg{width:1em;height:1em;fill:currentColor}#uofg-back-to-top.visible{opacity:1;visibility:visible}";
|
|
@@ -24,20 +24,6 @@ const UofgBackToTop = class {
|
|
|
24
24
|
};
|
|
25
25
|
UofgBackToTop.style = uofgBackToTopCss;
|
|
26
26
|
|
|
27
|
-
const uofgCardCss = "*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}:host{display:block;width:300px;margin:1rem}#uofg-card{display:flex;flex-direction:column;background-color:#f1f8fa;font-size:1.6rem;border-radius:5px;overflow:hidden}a#uofg-card{border:1px solid transparent;transition-property:border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}a#uofg-card:hover,a#uofg-card:focus,a#uofg-card:focus-within{border-color:#69a3b9}#uofg-card-img{display:flex;justify-content:center;align-items:center;overflow:hidden}#uofg-card-img>slot::slotted(img){width:100%;object-fit:cover;transition-property:transform;transition-duration:0.2s;transition-timing-function:ease-in-out}a#uofg-card:hover #uofg-card-img>slot::slotted(img),a#uofg-card:focus #uofg-card-img>slot::slotted(img),a#uofg-card:focus-within #uofg-card-img>slot::slotted(img){transform:scale(1.1)}#uofg-card-content{padding:1rem}#uofg-card-content>slot[name=title]::slotted(*){font-size:2.25rem;font-weight:normal;margin:0;padding:1rem 0}#uofg-card-content>slot[name=subtitle]::slotted(*){font-size:1.8rem;font-weight:normal;margin:0;padding:1rem 0}#uofg-card-content>slot[name=body]::slotted(*){font-size:1.6rem;font-weight:normal;margin:0}#uofg-card-footer{background-color:#bedae3}";
|
|
28
|
-
|
|
29
|
-
const UofgCard = class {
|
|
30
|
-
constructor(hostRef) {
|
|
31
|
-
registerInstance(this, hostRef);
|
|
32
|
-
this.href = undefined;
|
|
33
|
-
}
|
|
34
|
-
render() {
|
|
35
|
-
const Body = () => (h(Fragment, null, h("div", { id: "uofg-card-img" }, h("slot", { name: "img" })), h("div", { id: "uofg-card-content" }, h("slot", { name: "title" }), h("slot", { name: "subtitle" }), h("slot", { name: "body" })), h("div", { id: "uofg-card-footer" }, h("slot", { name: "footer" }))));
|
|
36
|
-
return this.href ? (h("a", { href: this.href, id: "uofg-card" }, h(Body, null))) : (h("div", { id: "uofg-card" }, h(Body, null)));
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
UofgCard.style = uofgCardCss;
|
|
40
|
-
|
|
41
27
|
const improveLifeLogo = `<svg xmlns="http://www.w3.org/2000/svg" fill="#fff" viewBox="0 0 107.4 12">
|
|
42
28
|
<path
|
|
43
29
|
d="M0 0h5.3v.5C4 .5 3.6.8 3.6 2.1v7.3c0 1.4.3 1.8 1.6 1.8v.5H0v-.5c1.5 0 1.5-.5 1.5-1.6V1.9C1.5.9 1.3.5 0 .5ZM6.1 11.4c.9 0 1.1-.2 1.2-1.4l.3-5.1c.1-1.2-.1-1.4-.9-1.4v-.4h2.6l3 6.5 2.8-6.5h2.6v.4c-.8 0-.9.2-.9.8l.5 6.3c.1.7.3.8 1.1.8v.4h-4v-.4c1.1 0 1.3-.3 1.2-1.8l-.4-5.1-3.2 7.3h-.5L8.4 4.7l-.3 5.1c-.1 1.5.2 1.5 1.1 1.6v.4H6.1ZM19.2 11.4c1 0 1.2-.2 1.2-1.5v-5c0-1.4-.2-1.5-1.3-1.5v-.3h1.4a14.4 14.4 0 0 1 1.8-.1c2.6 0 4.1.6 4.1 2.5 0 1.6-1.4 2.8-3.3 2.8a3.8 3.8 0 0 1-1.1-.1v1.9c0 1.1.3 1.3 1.6 1.3v.4h-4.3v-.4Zm2.7-3.7.6.1a2.2 2.2 0 0 0 2.2-2.3 2 2 0 0 0-2.1-2.1h-.7ZM29.7 10c0 1.2.2 1.4 1.4 1.4v.4h-4.3v-.4c1.2 0 1.3-.3 1.3-1.2V4.6c0-.9-.2-1.1-1.3-1.1v-.4l2-.1h1.7c2.8 0 3.8 1.2 3.8 2.5a2.5 2.5 0 0 1-1.8 2.3 9.4 9.4 0 0 1 1 1l.9.9a5.4 5.4 0 0 0 3.3 1.9v.4c-2.7.1-3.4-.4-4.7-1.7l-.7-.7a8 8 0 0 0-1.5-1.3h-1.2V10Zm0-2.2h.4c1.9-.1 2.5-.8 2.5-2.2a2 2 0 0 0-2.3-2.2 1.7 1.7 0 0 0-.7.1v4.3ZM42.4 2.9c3 0 5.1 1.8 5.1 4.4a4.8 4.8 0 0 1-5.1 4.7c-2.9 0-5-1.8-5-4.3-.1-2.8 2.1-4.8 5-4.8Zm.2 8.6c1.9 0 3.2-1.6 3.2-3.9 0-2.5-1.5-4.3-3.5-4.3S39 4.8 39 7.3c0 2.8 1.8 4.2 3.6 4.2ZM49 4.5c-.4-1-.5-1.1-1.4-1.1v-.3h4.3v.4c-1.1 0-1.3.3-1.3.6a3 3 0 0 0 .2.8l2.1 5.2 2-4.9a4.5 4.5 0 0 0 .3-1.1c0-.5-.4-.6-1.3-.6v-.4h3.4v.4c-1 0-1.2.5-1.6 1.6L52.8 12H52ZM57.7 11.8v-.4c1.1 0 1.4-.2 1.4-1v-6c0-.9-.5-.9-1.4-.9v-.4h7.1l.1 2.1h-.4l-.1-.3c-.3-1.1-.5-1.2-1.4-1.2h-2.5V7h2.2c.8 0 1-.1 1-1.1h.4v2.8h-.4c-.1-1-.3-1.1-1-1.1h-2.2v2.5c0 .9.1 1 .8 1H63c1.4 0 1.7-.2 2.1-1.6h.4l-.2 2.2h-7.6ZM72.2 11.8v-.5c1.5 0 1.8-.1 1.8-1.6V2.1C74 .8 73.9.4 72.2.5V0h6.2v.5c-2 0-2.3.1-2.3 1.5v8c0 .8.2.9 1 .9H79c1.6 0 1.7-.1 3.1-2h.6l-1.5 2.9ZM83.2 3.1h3.9v.4c-.9 0-1.2.2-1.2 1.2v5.4c0 1 .2 1.3 1.2 1.3v.4h-3.9v-.4c1.1 0 1.1-.4 1.1-1.2V4.5c0-.8-.2-1.1-1.1-1ZM90.7 10c0 1.1.2 1.3 1.2 1.3v.4H88v-.4c.9 0 1.1-.3 1.1-1.1V4.5c0-.8-.3-1-1.1-1v-.4h6.6v1.7h-.4c-.1-.9-.3-1.1-1.4-1.1h-2.2v3.1h2.2c.9 0 1-.1 1.1-.9h.4v2.6H94c-.1-.9-.3-1-1.2-1h-2.1ZM95.3 11.8v-.4c1.1 0 1.4-.2 1.4-1v-6c0-.9-.5-.9-1.4-.9v-.4h7.1l.1 2.1h-.4l-.1-.3c-.3-1.1-.5-1.2-1.4-1.2h-2.5V7h2.2c.8 0 1-.1 1-1.1h.4v2.8h-.4c-.1-1-.3-1.1-1-1.1h-2.2v2.5c0 .9.1 1 .8 1h1.5c1.4 0 1.7-.2 2.1-1.6h.4l-.2 2.2h-7.4ZM107.4 10.9c0 .7-.5 1.1-1.3 1.1s-1.3-.4-1.3-1.1a1.2 1.2 0 0 1 1.3-1.2 1.2 1.2 0 0 1 1.3 1.2Z"/>
|
|
@@ -162,7 +148,7 @@ var width = 576;
|
|
|
162
148
|
var height = 512;
|
|
163
149
|
var aliases = [];
|
|
164
150
|
var unicode = 'f4be';
|
|
165
|
-
var svgPathData = '
|
|
151
|
+
var svgPathData = 'M163.9 136.9c-29.4-29.8-29.4-78.2 0-108s77-29.8 106.4 0l17.7 18 17.7-18c29.4-29.8 77-29.8 106.4 0s29.4 78.2 0 108L310.5 240.1c-6.2 6.3-14.3 9.4-22.5 9.4s-16.3-3.1-22.5-9.4L163.9 136.9zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5H192 32c-17.7 0-32-14.3-32-32V416c0-17.7 14.3-32 32-32H68.8l44.9-36c22.7-18.2 50.9-28 80-28H272h16 64c17.7 0 32 14.3 32 32s-14.3 32-32 32H288 272c-8.8 0-16 7.2-16 16s7.2 16 16 16H392.6l119.7-88.2c17.8-13.1 42.8-9.3 55.9 8.5zM193.6 384l0 0-.9 0c.3 0 .6 0 .9 0z';
|
|
166
152
|
|
|
167
153
|
exports.definition = {
|
|
168
154
|
prefix: prefix,
|
|
@@ -539,7 +525,7 @@ var width = 448;
|
|
|
539
525
|
var height = 512;
|
|
540
526
|
var aliases = ["twitter-square"];
|
|
541
527
|
var unicode = 'f081';
|
|
542
|
-
var svgPathData = '
|
|
528
|
+
var svgPathData = 'M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM351.3 199.3v0c0 86.7-66 186.6-186.6 186.6c-37.2 0-71.7-10.8-100.7-29.4c5.3 .6 10.4 .8 15.8 .8c30.7 0 58.9-10.4 81.4-28c-28.8-.6-53-19.5-61.3-45.5c10.1 1.5 19.2 1.5 29.6-1.2c-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3c-9-6-16.4-14.1-21.5-23.6s-7.8-20.2-7.7-31c0-12.2 3.2-23.4 8.9-33.1c32.3 39.8 80.8 65.8 135.2 68.6c-9.3-44.5 24-80.6 64-80.6c18.9 0 35.9 7.9 47.9 20.7c14.8-2.8 29-8.3 41.6-15.8c-4.9 15.2-15.2 28-28.8 36.1c13.2-1.4 26-5.1 37.8-10.2c-8.9 13.1-20.1 24.7-32.9 34c.2 2.8 .2 5.7 .2 8.5z';
|
|
543
529
|
|
|
544
530
|
exports.definition = {
|
|
545
531
|
prefix: prefix,
|
|
@@ -620,17 +606,33 @@ exports.svgPathData = svgPathData;
|
|
|
620
606
|
exports.aliases = aliases;
|
|
621
607
|
});
|
|
622
608
|
|
|
623
|
-
const uofgFooterCss = ":focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:host{display:block;width:100%;font-size:1.6rem;font-family:sans-serif}a{display:flex;align-items:center;gap:0.5rem;border-bottom:2px dotted transparent;width:fit-content;width:-moz-max-content;color:inherit;white-space:nowrap;padding-bottom:0.2rem;transition-property:border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}a:hover,a:focus{border-color:currentColor}svg{fill:currentColor;height:1.6rem}li{display:contents}#uofg-footer{display:flex;justify-content:center;align-items:center;background-color:#000;color:#fff;
|
|
609
|
+
const uofgFooterCss = ":focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:host{display:block;width:100%;font-size:1.6rem;font-family:sans-serif}a{display:flex;align-items:center;gap:0.5rem;border-bottom:2px dotted transparent;width:fit-content;width:-moz-max-content;color:inherit;white-space:nowrap;padding-bottom:0.2rem;transition-property:border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}a:hover,a:focus{border-color:currentColor}svg{fill:currentColor;height:1.6rem}li{display:contents}#uofg-footer{display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#000;color:#fff;line-height:1.2}#uofg-footer-extra-links-container{display:flex;justify-content:center;align-items:center;width:100%;background-color:#f5f7fa}#uofg-footer-extra-links{display:flex;flex-direction:column;width:85%;align-items:center;justify-content:center;padding:1.25rem 1rem;color:#0074c1}#uofg-footer-extra-links>li>a{display:flex;justify-content:center;padding:1rem 0;width:100%;transition-property:color;transition-duration:0.2s;transition-timing-function:ease-in-out;border-bottom:2px solid transparent}#uofg-footer-extra-links>li>a:hover,#uofg-footer-extra-links>li>a:focus{color:black}#uofg-footer-extra-links>li:not(:last-child)>a{border-bottom:2px solid #bdc8ca}#uofg-footer-content{display:grid;grid-template-columns:1fr;gap:2rem;width:100%;padding:2rem;max-width:1320px}.uofg-footer-content-separator{display:flex;flex-direction:column;gap:0.75rem;justify-content:space-between}#uofg-footer-improve-life{transition-property:opacity;transition-duration:0.2s;transition-timing-function:ease-in-out;border:0}#uofg-footer-improve-life>svg{height:2.5rem}#uofg-footer-improve-life:hover,#uofg-footer-improve-life:focus{opacity:0.8}#uofg-footer-social-links{display:flex;align-items:center;list-style:none;padding:0;margin-left:0;gap:0 0.75rem}#uofg-footer-social-links a{transition-property:color;transition-duration:0.2s;transition-timing-function:ease-in-out;border:0}#uofg-footer-social-links a:hover,#uofg-footer-social-links a:focus{color:#ffc72a}#uofg-footer-social-links a:hover[aria-label=Twitter],#uofg-footer-social-links a:focus[aria-label=Twitter]{color:#1da1f2}#uofg-footer-social-links a:hover[aria-label=Facebook],#uofg-footer-social-links a:focus[aria-label=Facebook]{color:#4267b2}#uofg-footer-social-links a:hover[aria-label=Instagram],#uofg-footer-social-links a:focus[aria-label=Instagram]{color:#e1306c}#uofg-footer-social-links a:hover[aria-label=Youtube],#uofg-footer-social-links a:focus[aria-label=Youtube]{color:#f00}#uofg-footer-social-links a:hover[aria-label=LinkedIn],#uofg-footer-social-links a:focus[aria-label=LinkedIn]{color:#0077b5}#uofg-footer-social-links a:hover[aria-label=TikTok],#uofg-footer-social-links a:focus[aria-label=TikTok]{color:#f00}#uofg-footer-social-links svg{height:2rem}#uofg-footer-links-container{display:flex}#uofg-footer-links{display:grid;height:100%;grid-template-columns:1fr}#uofg-footer-links svg{color:#ffc72a}#uofg-footer-address{font-style:normal;white-space:nowrap}#uofg-footer-address a{color:#69a3b9}@media (min-width: 570px){#uofg-footer-extra-links{flex-direction:row;flex-wrap:wrap;width:100%;max-width:1320px;padding:2rem 1rem;gap:1rem}#uofg-footer-extra-links>li>a{width:auto;padding:0 1rem 0 0;border-bottom:none !important}#uofg-footer-extra-links>li:not(:last-child)>a{border-right:2px solid rgba(0, 0, 0, 0.15)}#uofg-footer-content{grid-template-columns:1fr 1fr}#uofg-footer-links-container{grid-column-start:1;grid-column-end:3}#uofg-footer-links{grid-template-columns:1fr 1fr;width:100%}#uofg-footer-address{grid-row:1;grid-column:2}}@media (min-width: 962px){#uofg-footer-content{grid-template-columns:0.5fr 1fr 0.5fr;justify-items:center;gap:2rem 2rem}#uofg-footer-links-container{grid-row:unset;grid-column:unset;justify-content:center;gap:0}#uofg-footer-links{gap:0 8rem;width:auto}#uofg-footer-address{grid-row:unset;grid-column:unset}}";
|
|
624
610
|
|
|
625
611
|
const SocialLink = props => (h("li", null, h("a", { href: props.url, "aria-label": props.name }, h(FontAwesomeIcon, { icon: props.icon }))));
|
|
626
612
|
const FooterLink = props => (h("li", null, h("a", { href: props.url, title: props.title }, h(FontAwesomeIcon, { icon: props.icon }), h("span", null, props.text))));
|
|
627
613
|
const UofgFooter = class {
|
|
628
614
|
constructor(hostRef) {
|
|
629
615
|
registerInstance(this, hostRef);
|
|
616
|
+
this.extraLinks = [];
|
|
617
|
+
}
|
|
618
|
+
connectedCallback() {
|
|
619
|
+
var _a;
|
|
620
|
+
this.updateExtraLinks();
|
|
621
|
+
(_a = this.observer) !== null && _a !== void 0 ? _a : (this.observer = new MutationObserver(() => {
|
|
622
|
+
this.updateExtraLinks();
|
|
623
|
+
}));
|
|
624
|
+
this.observer.observe(this.el, { childList: true, subtree: true });
|
|
625
|
+
}
|
|
626
|
+
updateExtraLinks() {
|
|
627
|
+
var _a;
|
|
628
|
+
this.extraLinks = Array.from((_a = this.el) === null || _a === void 0 ? void 0 : _a.children)
|
|
629
|
+
.filter(child => child.tagName === 'A')
|
|
630
|
+
.map(child => ({ text: child.textContent, href: child.getAttribute('href') }));
|
|
630
631
|
}
|
|
631
632
|
render() {
|
|
632
|
-
return (h("footer", { id: "uofg-footer" }, h("div", { id: "uofg-footer-content" }, h("div", { id: "uofg-footer-social", class: "uofg-footer-content-separator" }, h("a", { id: "uofg-footer-improve-life", href: "//www.uoguelph.ca/improve-life", "aria-label": "Improve Life", innerHTML: improveLifeLogo }), h("ul", { id: "uofg-footer-social-links" }, h(SocialLink, { name: "Twitter", url: "https://twitter.com/uofg", icon: faTwitterSquare.faTwitterSquare }), h(SocialLink, { name: "Facebook", url: "https://www.facebook.com/uofguelph", icon: faFacebookSquare.faFacebookSquare }), h(SocialLink, { name: "Instagram", url: "https://www.instagram.com/uofguelph/", icon: faInstagram.faInstagram }), h(SocialLink, { name: "Youtube", url: "https://www.youtube.com/user/uofguelph", icon: faYoutube.faYoutube }), h(SocialLink, { name: "LinkedIn", url: "https://www.linkedin.com/school/university-of-guelph/", icon: faLinkedin.faLinkedin }), h(SocialLink, { name: "TikTok", url: "https://www.tiktok.com/@uofguelph", icon: faTiktok.faTiktok })), h("a", { href: "https://www.uoguelph.ca/web/socialmedia/" }, "Social Media Directory"), h("a", { href: "//www.uoguelph.ca/web/" }, "\u00A9 ", new Date().getFullYear(), " University of Guelph")), h("div", { id: "uofg-footer-links-container" }, h("ul", { id: "uofg-footer-links", class: "uofg-footer-content-separator" }, h(FooterLink, { text: "Accessibility", url: "https://www.uoguelph.ca/diversity-human-rights/accessibility-u-g", icon: faUniversalAccess.faUniversalAccess }), h(FooterLink, { text: "Privacy", url: "https://www.uoguelph.ca/web/privacy/", icon: faKey.faKey }), h(FooterLink, { text: "Site Map", url: "https://www.uoguelph.ca/sitemap", icon: faSitemap.faSitemap }), h(FooterLink, { text: "Status Page", url: "https://uoguelph.statuspage.io/", icon: faCircleCheck.faCircleCheck }), h(FooterLink, { text: "Land Acknowledgement", url: "https://www.uoguelph.ca/land-acknowledgement/", icon: faTree.faTree, title: "The University of Guelph resides on the treaty lands and territory of the Mississaugas of the Credit. We recognize that today this gathering place is home to many First Nations, Inuit and M\u00E9tis peoples and acknowledging them reminds us of our collective responsibility to the land where we learn and work." }), h(FooterLink, { text: "Careers", url: "https://www.uoguelph.ca/hr/careers-guelph/current-opportunities", icon: faBriefcase.faBriefcase }), h(FooterLink, { text: "Undergraduate Calendar", url: "https://www.uoguelph.ca/registrar/calendars/undergraduate/current/", icon: faCalendar.faCalendar }), h(FooterLink, { text: "Graduate Calendar", url: "https://www.uoguelph.ca/registrar/calendars/graduate/current/", icon: faCalendar.faCalendar }), h(FooterLink, { text: "Program Plans", url: "https://admission.uoguelph.ca/programs", icon: faList.faList }), h(FooterLink, { text: "Give to U of G", url: "https://www.alumni.uoguelph.ca/give-to-guelph/how-to-give", icon: faHandHoldingHeart.faHandHoldingHeart }))), h("address", { id: "uofg-footer-address", class: "uofg-footer-content-separator" }, h("strong", null, "University of Guelph"), h("span", null, "50 Stone Road East,"), h("span", null, "Guelph, Ontario, Canada"), h("span", null, "N1G 2W1"), h("a", { href: "tel:1-519-824-4120" }, h(FontAwesomeIcon, { icon: faPhoneFlip.faPhoneFlip }), h("span", null, "519-824-4120"))))));
|
|
633
|
+
return (h("footer", { id: "uofg-footer" }, h("div", { id: "uofg-footer-extra-links-container" }, this.extraLinks.length > 0 && (h("ul", { id: "uofg-footer-extra-links" }, this.extraLinks.map(link => (h("li", null, h("a", { href: link.href }, link.text))))))), h("div", { id: "uofg-footer-content" }, h("div", { id: "uofg-footer-social", class: "uofg-footer-content-separator" }, h("a", { id: "uofg-footer-improve-life", href: "//www.uoguelph.ca/improve-life", "aria-label": "Improve Life", innerHTML: improveLifeLogo }), h("ul", { id: "uofg-footer-social-links" }, h(SocialLink, { name: "Twitter", url: "https://twitter.com/uofg", icon: faTwitterSquare.faTwitterSquare }), h(SocialLink, { name: "Facebook", url: "https://www.facebook.com/uofguelph", icon: faFacebookSquare.faFacebookSquare }), h(SocialLink, { name: "Instagram", url: "https://www.instagram.com/uofguelph/", icon: faInstagram.faInstagram }), h(SocialLink, { name: "Youtube", url: "https://www.youtube.com/user/uofguelph", icon: faYoutube.faYoutube }), h(SocialLink, { name: "LinkedIn", url: "https://www.linkedin.com/school/university-of-guelph/", icon: faLinkedin.faLinkedin }), h(SocialLink, { name: "TikTok", url: "https://www.tiktok.com/@uofguelph", icon: faTiktok.faTiktok })), h("a", { href: "https://www.uoguelph.ca/web/socialmedia/" }, "Social Media Directory"), h("a", { href: "//www.uoguelph.ca/web/" }, "\u00A9 ", new Date().getFullYear(), " University of Guelph")), h("div", { id: "uofg-footer-links-container" }, h("ul", { id: "uofg-footer-links", class: "uofg-footer-content-separator" }, h(FooterLink, { text: "Accessibility", url: "https://www.uoguelph.ca/diversity-human-rights/accessibility-u-g", icon: faUniversalAccess.faUniversalAccess }), h(FooterLink, { text: "Privacy", url: "https://www.uoguelph.ca/web/privacy/", icon: faKey.faKey }), h(FooterLink, { text: "Site Map", url: "https://www.uoguelph.ca/sitemap", icon: faSitemap.faSitemap }), h(FooterLink, { text: "Status Page", url: "https://uoguelph.statuspage.io/", icon: faCircleCheck.faCircleCheck }), h(FooterLink, { text: "Land Acknowledgement", url: "https://www.uoguelph.ca/land-acknowledgement/", icon: faTree.faTree, title: "The University of Guelph resides on the treaty lands and territory of the Mississaugas of the Credit. We recognize that today this gathering place is home to many First Nations, Inuit and M\u00E9tis peoples and acknowledging them reminds us of our collective responsibility to the land where we learn and work." }), h(FooterLink, { text: "Careers", url: "https://www.uoguelph.ca/hr/careers-guelph/current-opportunities", icon: faBriefcase.faBriefcase }), h(FooterLink, { text: "Undergraduate Calendar", url: "https://www.uoguelph.ca/registrar/calendars/undergraduate/current/", icon: faCalendar.faCalendar }), h(FooterLink, { text: "Graduate Calendar", url: "https://www.uoguelph.ca/registrar/calendars/graduate/current/", icon: faCalendar.faCalendar }), h(FooterLink, { text: "Program Plans", url: "https://admission.uoguelph.ca/programs", icon: faList.faList }), h(FooterLink, { text: "Give to U of G", url: "https://www.alumni.uoguelph.ca/give-to-guelph/how-to-give", icon: faHandHoldingHeart.faHandHoldingHeart }))), h("address", { id: "uofg-footer-address", class: "uofg-footer-content-separator" }, h("strong", null, "University of Guelph"), h("span", null, "50 Stone Road East,"), h("span", null, "Guelph, Ontario, Canada"), h("span", null, "N1G 2W1"), h("a", { href: "tel:1-519-824-4120" }, h(FontAwesomeIcon, { icon: faPhoneFlip.faPhoneFlip }), h("span", null, "519-824-4120"))))));
|
|
633
634
|
}
|
|
635
|
+
get el() { return getElement(this); }
|
|
634
636
|
};
|
|
635
637
|
UofgFooter.style = uofgFooterCss;
|
|
636
638
|
|
|
@@ -793,7 +795,7 @@ exports.svgPathData = svgPathData;
|
|
|
793
795
|
exports.aliases = aliases;
|
|
794
796
|
});
|
|
795
797
|
|
|
796
|
-
const uofgHeaderCss = ":focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:host{height:auto !important}a{display:flex;align-items:center;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}li{display:contents}button{border:none;background:none;cursor:pointer;font-size:inherit;font-family:inherit;color:inherit;line-height:inherit;word-spacing:inherit;letter-spacing:inherit;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}uofg-menu{--uofg-menu-animation-type:slide;--uofg-menu-animation-duration:0.2s;--uofg-menu-animation-easing:ease-in-out;display:block;position:relative}uofg-menu>[slot=button]{display:flex;align-items:center;gap:0.5rem;height:100%;padding:0 1rem}uofg-menu>[slot=button]>svg{height:1em;fill:currentColor;transition-property:transform;transition-duration:0.2s;transition-timing-function:ease-in-out}uofg-menu>[slot=content]{display:flex;flex-direction:column;position:absolute;z-index:1;min-width:20rem;right:0;background-color:white;color:black;box-shadow:0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0px 1px 5px 0px rgba(0, 0, 0, 0.2)}#uofg-header{position:relative;width:100%;z-index:1000;font-size:1.6rem;font-family:\"Roboto Condensed\", Arial, sans-serif}#uofg-header-top-content-container,#uofg-header-main-content-container,#uofg-header-sub-content-container{display:flex;position:relative;align-items:center;justify-content:flex-end;width:100%;padding:0 calc((100vw - 1320px) / 2)}#uofg-header-top-content-container{height:4rem;background-color:white;color:black;z-index:3;font-size:1.9rem}#uofg-header-top-content-container>ul{display:flex;align-items:center;height:100%}#uofg-header-top-content-container>ul>li>a{height:100%;padding:0 1rem}#uofg-header-top-content-container>ul>li>a:hover,#uofg-header-top-content-container>ul>li>a:focus-visible,#uofg-header-top-content-container>ul>li>a[aria-expanded=true]{background-color:#dddddd}#uofg-header-top-content-container>uofg-menu{height:100%}#uofg-header-top-content-container>uofg-menu>[slot=button]{padding:0 1rem;background-color:#ffc72a;color:black;font-weight:bold}#uofg-header-top-content-container>uofg-menu>[slot=button]:hover,#uofg-header-top-content-container>uofg-menu>[slot=button]:focus-visible,#uofg-header-top-content-container>uofg-menu>[slot=button][aria-expanded=true]{background-color:#ccc;color:black}#uofg-header-top-content-container>uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-top-content-container>uofg-menu>[slot=content]{background-color:#dddddd;color:black}#uofg-header-top-content-container>uofg-menu>[slot=content] a{height:100%;padding:0.75rem;border-bottom:1px solid rgba(0, 0, 0, 0.4)}#uofg-header-top-content-container>uofg-menu>[slot=content] a:hover,#uofg-header-top-content-container>uofg-menu>[slot=content] a:focus-visible{background-color:#ffc72a}#uofg-header-main-content-container{height:5rem;background-color:black;color:white;z-index:2}#uofg-header-main-content-container>*{height:100%}#uofg-header-main-content-container.full-height{height:10rem}#uofg-header-logo-container{display:flex;height:100%;margin-right:auto;overflow:hidden}#uofg-header-logo-container>*{height:100%}#uofg-header-logo-container svg{width:auto}#uofg-header-decorative-img{position:absolute;left:0}#uofg-header-decorative-img>svg{height:100%}#uofg-header-logo{height:100%;position:relative;margin-left:1rem;transition:opacity 0.2s ease-in-out}#uofg-header-logo>svg{height:100%}#uofg-header-logo:hover,#uofg-header-logo:focus-visible{opacity:0.8}#uofg-header-full-main-content,#uofg-header-reduced-main-content{display:flex}#uofg-header-full-main-content svg,#uofg-header-reduced-main-content svg{height:1em;fill:currentColor}#uofg-header-full-main-content>ul{display:flex;align-items:center}#uofg-header-full-main-content>ul>li>a,#uofg-header-full-main-content>a,#uofg-header-full-main-content>uofg-menu>[slot=button]{display:flex;align-items:center;justify-content:center;height:100%;padding:0 1.5rem;font-size:2.2rem;border-bottom:7px solid transparent;padding-top:7px;transition-property:color, border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-full-main-content>ul>li>a>svg,#uofg-header-full-main-content>a>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]>svg{transition-property:color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-full-main-content>ul>li>a:hover,#uofg-header-full-main-content>ul>li>a:focus-visible,#uofg-header-full-main-content>a:hover,#uofg-header-full-main-content>a:focus-visible,#uofg-header-full-main-content>uofg-menu>[slot=button]:hover,#uofg-header-full-main-content>uofg-menu>[slot=button]:focus-visible{color:#ffc72a;border-color:#ffc72a}#uofg-header-full-main-content>ul>li>a:hover>svg,#uofg-header-full-main-content>ul>li>a:focus-visible>svg,#uofg-header-full-main-content>a:hover>svg,#uofg-header-full-main-content>a:focus-visible>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]:hover>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]:focus-visible>svg{color:white}#uofg-header-full-main-content>uofg-menu>[slot=button]{color:#ffc72a}#uofg-header-full-main-content>uofg-menu>[slot=content]{color:black;background-color:white;padding:2rem;width:35rem}#uofg-header-full-main-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-full-main-content>a{color:#ffc72a}#uofg-header-reduced-main-content>uofg-menu>[slot=button],#uofg-header-reduced-main-content>a{justify-content:center;padding:0 1.5rem;font-size:2rem;border-left:1px solid rgba(255, 255, 255, 0.15)}#uofg-header-reduced-main-content>uofg-menu>[slot=button]:hover,#uofg-header-reduced-main-content>uofg-menu>[slot=button]:focus-visible,#uofg-header-reduced-main-content>uofg-menu>[slot=button][aria-expanded=true],#uofg-header-reduced-main-content>a:hover,#uofg-header-reduced-main-content>a:focus-visible,#uofg-header-reduced-main-content>a[aria-expanded=true]{background-color:white;color:black}#uofg-header-reduced-main-content>uofg-menu{position:static;height:100%}#uofg-header-reduced-main-content>uofg-menu>[slot=content]{background-color:white;color:black;width:100%;padding:1rem 2rem 2rem}#uofg-header-reduced-main-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-main-menu>[slot=content]{overflow-y:auto;max-height:calc(100vh - 5rem)}#uofg-header-main-menu uofg-menu{position:relative}#uofg-header-main-menu uofg-menu>[slot=button]{display:flex;padding:0.75rem;height:auto;width:100%;color:inherit;border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu>[slot=button]>svg{margin-left:auto}#uofg-header-main-menu uofg-menu>[slot=button]:hover,#uofg-header-main-menu uofg-menu>[slot=button]:focus-visible,#uofg-header-main-menu uofg-menu>[slot=button][aria-expanded=true]{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-main-menu uofg-menu>[slot=content]{position:relative;box-shadow:none;padding:0}#uofg-header-main-menu uofg-menu>[slot=content]>li>a{padding:0.75rem;border-bottom:1px solid rgba(0, 0, 0, 0.1);transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-main-menu uofg-menu>[slot=content]>li>a:hover,#uofg-header-main-menu uofg-menu>[slot=content]>li>a:focus-visible{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu.uofg-header-hello-you-menu>[slot=button]{background-color:#ffc72a;color:black;font-weight:bold}#uofg-header-main-menu uofg-menu.uofg-header-hello-you-menu>[slot=content]{background-color:rgba(0, 0, 0, 0.1);color:black}#uofg-header-main-menu ul>li>a{padding:0.75rem;width:100%;color:inherit;border-bottom:1px solid rgba(0, 0, 0, 0.1);transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-main-menu ul>li>a:hover,#uofg-header-main-menu ul>li>a:focus-visible,#uofg-header-main-menu ul>li>a[aria-expanded=true]{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-sub-content-container{height:4rem;background-color:#dddddd;color:black;z-index:1;font-size:2rem;white-space:nowrap;justify-content:flex-start}#uofg-header-sub-content-container #uofg-header-page-title{display:flex;align-items:center;margin-right:auto;padding:0 1rem;height:100%;font-weight:bold}#uofg-header-sub-content-container uofg-menu{position:relative;height:100%}#uofg-header-sub-content-container uofg-menu>[slot=button]{color:inherit}#uofg-header-sub-content-container uofg-menu>[slot=button]:hover,#uofg-header-sub-content-container uofg-menu>[slot=button]:focus-visible,#uofg-header-sub-content-container uofg-menu>[slot=button][aria-expanded=true]{background-color:#ffc72a;color:black}#uofg-header-sub-content-container uofg-menu>[slot=content]{position:absolute;background-color:#dddddd;color:black;white-space:normal}#uofg-header-sub-content-container uofg-menu>[slot=content]>li:not(:last-child)>a{border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-sub-content-container uofg-menu>[slot=content]>li>a{padding:0.75rem;justify-content:flex-start}#uofg-header-sub-content-container a{display:flex;align-items:center;justify-content:center;height:100%;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-sub-content-container a:hover,#uofg-header-sub-content-container a:focus-visible{background-color:#ffc72a;color:black}.uofg-header-sub-content{display:flex;margin-left:auto}#uofg-header-full-sub-content,#uofg-header-reduced-sub-content{height:100%}#uofg-header-full-sub-content a,#uofg-header-full-sub-content uofg-menu>[slot=button],#uofg-header-reduced-sub-content a,#uofg-header-reduced-sub-content uofg-menu>[slot=button]{padding:0 1.25rem}#uofg-header-full-sub-content{height:100%}#uofg-header-full-sub-content>ul{display:flex;align-items:center}#uofg-header-full-sub-content uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-full-sub-content .uofg-header-page-specific{display:flex;height:100%;align-items:center;margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu{position:static;margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu.overflowed{position:relative}#uofg-header-reduced-sub-content>uofg-menu.overflowed>[slot=content]{width:40rem}#uofg-header-reduced-sub-content>uofg-menu>[slot=button]{font-size:2rem;padding:0 1.5rem;text-align:left}#uofg-header-reduced-sub-content>uofg-menu>[slot=content]{background-color:white;color:black;padding:2rem;overflow-y:auto;max-height:calc(100vh - 5rem - 4rem);width:100%;white-space:normal}#uofg-header-reduced-sub-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a{height:auto;padding:1rem;width:100%;align-items:flex-start;justify-content:flex-start;border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a:hover,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a:focus-visible{background-color:rgba(0, 0, 0, 0.1);color:black}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu{height:auto}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]{width:100%;padding:1rem;border-bottom:1px solid rgba(0, 0, 0, 0.1);text-align:left}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]>svg{margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]:hover,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]:focus-visible,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button][aria-expanded=true]{background-color:rgba(0, 0, 0, 0.2);color:black}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=content]{position:static;background-color:rgba(0, 0, 0, 0.1);box-shadow:none}@media screen and (max-width: 1320px){#uofg-header-decorative-img{position:static}}@media screen and (min-width: 1320px) and (max-width: calc(1320px + 8.5rem)){#uofg-header-logo{position:absolute;left:0;margin-left:8.5rem}}";
|
|
798
|
+
const uofgHeaderCss = ":focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:host{height:auto !important}a{display:flex;align-items:center;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}li{display:contents}button{border:none;background:none;cursor:pointer;font-size:inherit;font-family:inherit;color:inherit;line-height:inherit;word-spacing:inherit;letter-spacing:inherit;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}uofg-menu{--uofg-menu-animation-type:slide;--uofg-menu-animation-duration:0.2s;--uofg-menu-animation-easing:ease-in-out;display:block;position:relative}uofg-menu>[slot=button]{display:flex;align-items:center;gap:0.5rem;height:100%;padding:0 1rem}uofg-menu>[slot=button]>svg{height:1em;fill:currentColor;transition-property:transform;transition-duration:0.2s;transition-timing-function:ease-in-out}uofg-menu>[slot=content]{display:flex;flex-direction:column;position:absolute;z-index:1;min-width:20rem;right:0;background-color:white;color:black;box-shadow:0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0px 1px 5px 0px rgba(0, 0, 0, 0.2)}#uofg-header{position:relative;width:100%;z-index:1000;font-size:1.6rem;font-family:\"Roboto Condensed\", Arial, sans-serif}#uofg-header-top-content-container,#uofg-header-main-content-container,#uofg-header-sub-content-container{display:flex;position:relative;align-items:center;justify-content:flex-end;width:100%;padding:0 calc((100vw - 1320px) / 2)}#uofg-header-top-content-container{height:4rem;background-color:white;color:black;z-index:3;font-size:1.9rem}#uofg-header-top-content-container>ul{display:flex;align-items:center;height:100%}#uofg-header-top-content-container>ul>li>a{height:100%;padding:0 1rem}#uofg-header-top-content-container>ul>li>a:hover,#uofg-header-top-content-container>ul>li>a:focus-visible,#uofg-header-top-content-container>ul>li>a[aria-expanded=true]{background-color:#dddddd}#uofg-header-top-content-container>uofg-menu{height:100%}#uofg-header-top-content-container>uofg-menu>[slot=button]{padding:0 1rem;background-color:#ffc72a;color:black;font-weight:bold}#uofg-header-top-content-container>uofg-menu>[slot=button]:hover,#uofg-header-top-content-container>uofg-menu>[slot=button]:focus-visible,#uofg-header-top-content-container>uofg-menu>[slot=button][aria-expanded=true]{background-color:#ccc;color:black}#uofg-header-top-content-container>uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-top-content-container>uofg-menu>[slot=content]{background-color:#dddddd;color:black}#uofg-header-top-content-container>uofg-menu>[slot=content] a{height:100%;padding:0.75rem;border-bottom:1px solid rgba(0, 0, 0, 0.4)}#uofg-header-top-content-container>uofg-menu>[slot=content] a:hover,#uofg-header-top-content-container>uofg-menu>[slot=content] a:focus-visible{background-color:#ffc72a}#uofg-header-main-content-container{height:5rem;background-color:black;color:white;z-index:2}#uofg-header-main-content-container>*{height:100%}#uofg-header-main-content-container.full-height{height:10rem}#uofg-header-logo-container{display:flex;height:100%;margin-right:auto;overflow:hidden}#uofg-header-logo-container>*{height:100%}#uofg-header-logo-container svg{width:auto}#uofg-header-decorative-img{position:absolute;left:0}#uofg-header-decorative-img>svg{height:100%}#uofg-header-logo{height:100%;position:relative;margin-left:1rem;transition:opacity 0.2s ease-in-out}#uofg-header-logo>svg{height:100%}#uofg-header-logo:hover,#uofg-header-logo:focus-visible{opacity:0.8}#uofg-header-full-main-content,#uofg-header-reduced-main-content{display:flex}#uofg-header-full-main-content svg,#uofg-header-reduced-main-content svg{height:1em;fill:currentColor}#uofg-header-full-main-content>ul{display:flex;align-items:center}#uofg-header-full-main-content>ul>li>a,#uofg-header-full-main-content>a,#uofg-header-full-main-content>uofg-menu>[slot=button]{display:flex;align-items:center;justify-content:center;height:100%;font-size:2.2rem;border-bottom:7px solid transparent;padding:7px 1.5rem 0;transition-property:color, border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-full-main-content>ul>li>a>svg,#uofg-header-full-main-content>a>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]>svg{transition-property:color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-full-main-content>ul>li>a:hover,#uofg-header-full-main-content>ul>li>a:focus-visible,#uofg-header-full-main-content>a:hover,#uofg-header-full-main-content>a:focus-visible,#uofg-header-full-main-content>uofg-menu>[slot=button]:hover,#uofg-header-full-main-content>uofg-menu>[slot=button]:focus-visible{color:#ffc72a;border-color:#ffc72a}#uofg-header-full-main-content>ul>li>a:hover>svg,#uofg-header-full-main-content>ul>li>a:focus-visible>svg,#uofg-header-full-main-content>a:hover>svg,#uofg-header-full-main-content>a:focus-visible>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]:hover>svg,#uofg-header-full-main-content>uofg-menu>[slot=button]:focus-visible>svg{color:white}#uofg-header-full-main-content>uofg-menu>[slot=button]{color:#ffc72a}#uofg-header-full-main-content>uofg-menu>[slot=content]{color:black;background-color:white;padding:2rem;width:35rem}#uofg-header-full-main-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-full-main-content>a{color:#ffc72a}#uofg-header-reduced-main-content{font-size:2rem}#uofg-header-reduced-main-content>uofg-menu>[slot=button],#uofg-header-reduced-main-content>a{justify-content:center;padding:0 1.5rem;font-size:2rem;border-left:1px solid rgba(255, 255, 255, 0.15)}#uofg-header-reduced-main-content>uofg-menu>[slot=button]:hover,#uofg-header-reduced-main-content>uofg-menu>[slot=button]:focus-visible,#uofg-header-reduced-main-content>uofg-menu>[slot=button][aria-expanded=true],#uofg-header-reduced-main-content>a:hover,#uofg-header-reduced-main-content>a:focus-visible,#uofg-header-reduced-main-content>a[aria-expanded=true]{background-color:white;color:black}#uofg-header-reduced-main-content>uofg-menu{position:static;height:100%}#uofg-header-reduced-main-content>uofg-menu>[slot=content]{background-color:white;color:black;width:100%;padding:1rem 2rem 2rem}#uofg-header-reduced-main-content>uofg-menu>[slot=content] a{padding:1rem}#uofg-header-reduced-main-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-main-menu>[slot=content]{overflow-y:auto;max-height:calc(100vh - 5rem)}#uofg-header-main-menu uofg-menu{position:relative}#uofg-header-main-menu uofg-menu>[slot=button]{display:flex;padding:1rem;height:auto;width:100%;color:inherit;border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu>[slot=button]>svg{margin-left:auto}#uofg-header-main-menu uofg-menu>[slot=button]:hover,#uofg-header-main-menu uofg-menu>[slot=button]:focus-visible,#uofg-header-main-menu uofg-menu>[slot=button][aria-expanded=true]{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-main-menu uofg-menu>[slot=content]{position:relative;box-shadow:none;padding:0}#uofg-header-main-menu uofg-menu>[slot=content]>li>a{padding:1rem;border-bottom:1px solid rgba(0, 0, 0, 0.1);transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-main-menu uofg-menu>[slot=content]>li>a:hover,#uofg-header-main-menu uofg-menu>[slot=content]>li>a:focus-visible{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-main-menu uofg-menu.uofg-header-hello-you-menu>[slot=button]{background-color:#ffc72a;color:black;font-weight:bold}#uofg-header-main-menu uofg-menu.uofg-header-hello-you-menu>[slot=content]{background-color:rgba(0, 0, 0, 0.1);color:black}#uofg-header-main-menu ul>li>a{padding:1rem;width:100%;color:inherit;border-bottom:1px solid rgba(0, 0, 0, 0.1);transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-main-menu ul>li>a:hover,#uofg-header-main-menu ul>li>a:focus-visible,#uofg-header-main-menu ul>li>a[aria-expanded=true]{background-color:rgba(0, 0, 0, 0.1)}#uofg-header-sub-content-container{height:4rem;background-color:#dddddd;color:black;z-index:1;font-size:2rem;white-space:nowrap;justify-content:flex-start}#uofg-header-sub-content-container #uofg-header-page-title{display:flex;align-items:center;margin-right:auto;padding:0 1rem;height:100%;font-weight:bold}#uofg-header-sub-content-container uofg-menu{position:relative;height:100%}#uofg-header-sub-content-container uofg-menu>[slot=button]{color:inherit}#uofg-header-sub-content-container uofg-menu>[slot=button]:hover,#uofg-header-sub-content-container uofg-menu>[slot=button]:focus-visible,#uofg-header-sub-content-container uofg-menu>[slot=button][aria-expanded=true]{background-color:#ffc72a;color:black}#uofg-header-sub-content-container uofg-menu>[slot=content]{position:absolute;background-color:#dddddd;color:black;white-space:normal}#uofg-header-sub-content-container uofg-menu>[slot=content]>li:not(:last-child)>a{border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-sub-content-container uofg-menu>[slot=content]>li>a{padding:0.75rem;justify-content:flex-start}#uofg-header-sub-content-container a{display:flex;align-items:center;justify-content:center;height:100%;transition-property:color, background-color;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-header-sub-content-container a:hover,#uofg-header-sub-content-container a:focus-visible{background-color:#ffc72a;color:black}.uofg-header-sub-content{display:flex;margin-left:auto}#uofg-header-full-sub-content,#uofg-header-reduced-sub-content{height:100%}#uofg-header-full-sub-content a,#uofg-header-full-sub-content uofg-menu>[slot=button],#uofg-header-reduced-sub-content a,#uofg-header-reduced-sub-content uofg-menu>[slot=button]{padding:0 1.25rem}#uofg-header-full-sub-content{height:100%}#uofg-header-full-sub-content>ul{display:flex;align-items:center}#uofg-header-full-sub-content uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-full-sub-content .uofg-header-page-specific{display:flex;height:100%;align-items:center;margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu{position:static;margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu.overflowed{position:relative}#uofg-header-reduced-sub-content>uofg-menu.overflowed>[slot=content]{width:40rem}#uofg-header-reduced-sub-content>uofg-menu>[slot=button]{font-size:2rem;padding:0 1.5rem;text-align:left}#uofg-header-reduced-sub-content>uofg-menu>[slot=content]{background-color:white;color:black;padding:2rem;overflow-y:auto;max-height:calc(\n 100vh - 1rem\n );width:100%;white-space:normal}#uofg-header-reduced-sub-content>uofg-menu>[slot=content]>span{display:block;font-size:2.4rem;font-weight:bold;padding:1rem 0}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a{height:auto;padding:1rem;width:100%;align-items:flex-start;justify-content:flex-start;border-bottom:1px solid rgba(0, 0, 0, 0.1)}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a:hover,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] a:focus-visible{background-color:rgba(0, 0, 0, 0.1);color:black}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu{height:auto}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]{width:100%;padding:1rem;border-bottom:1px solid rgba(0, 0, 0, 0.1);text-align:left}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]>svg{margin-left:auto}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]:hover,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button]:focus-visible,#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button][aria-expanded=true]{background-color:rgba(0, 0, 0, 0.2);color:black}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=button][aria-expanded=true]>svg{transform:rotate(180deg)}#uofg-header-reduced-sub-content>uofg-menu>[slot=content] uofg-menu>[slot=content]{position:static;background-color:rgba(0, 0, 0, 0.1);box-shadow:none}@media screen and (max-width: 1320px){#uofg-header-decorative-img{position:static}}@media screen and (min-width: 1320px) and (max-width: calc(1320px + $decorative-img-width)){#uofg-header-logo{position:absolute;left:0;margin-left:8.5rem}}";
|
|
797
799
|
|
|
798
800
|
const TopLinks = () => (h("ul", null, h("li", null, h("a", { href: "https://uoguelph.ca/apply/" }, "APPLY")), h("li", null, h("a", { href: "https://bbis.alumni.uoguelph.ca/BBIS_Cannon/give/uofg" }, "GIVE")), h("li", null, h("a", { href: "https://news.uoguelph.ca/" }, "NEWS"))));
|
|
799
801
|
const HelloMenu = props => (h("uofg-menu", { class: "uofg-header-hello-you-menu", "auto-collapse": props.autoCollapse }, h("button", { slot: "button" }, h("span", null, "HELLO!"), h(FontAwesomeIcon, { icon: faCaretDown.faCaretDown })), h("ul", { slot: "content" }, h("li", null, h("a", { href: "https://uoguelph.ca/future-students" }, "Future Students")), h("li", null, h("a", { href: "https://www.uoguelph.ca/students" }, "Current Students")), h("li", null, h("a", { href: "https://alumni.uoguelph.ca/" }, "Alumni & Donors")), h("li", null, h("a", { href: "https://www.uoguelph.ca/faculty" }, "Faculty & Staff")), h("li", null, h("a", { href: "https://cecs.uoguelph.ca/employers-institutions" }, "Employers & Partners")))));
|
|
@@ -1127,4 +1129,4 @@ const UofgMenu = class {
|
|
|
1127
1129
|
}; }
|
|
1128
1130
|
};
|
|
1129
1131
|
|
|
1130
|
-
export { UofgBackToTop as uofg_back_to_top,
|
|
1132
|
+
export { UofgBackToTop as uofg_back_to_top, UofgFooter as uofg_footer, UofgHeader as uofg_header, UofgMenu as uofg_menu };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { r as registerInstance, h, F as Fragment } from './index-284464b7.js';
|
|
2
|
+
|
|
3
|
+
const uofgCardCss = "*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}:focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}:host{display:block;width:300px;margin:1rem}#uofg-card{display:flex;flex-direction:column;background-color:#f1f8fa;font-size:1.6rem;border-radius:5px;overflow:hidden}a#uofg-card{border:1px solid transparent;transition-property:border-color;transition-duration:0.2s;transition-timing-function:ease-in-out}a#uofg-card:hover,a#uofg-card:focus,a#uofg-card:focus-within{border-color:#69a3b9}#uofg-card-img{display:flex;justify-content:center;align-items:center;overflow:hidden}#uofg-card-img>slot::slotted(img){width:100%;object-fit:cover;transition-property:transform;transition-duration:0.2s;transition-timing-function:ease-in-out}a#uofg-card:hover #uofg-card-img>slot::slotted(img),a#uofg-card:focus #uofg-card-img>slot::slotted(img),a#uofg-card:focus-within #uofg-card-img>slot::slotted(img){transform:scale(1.1)}#uofg-card-content{padding:1rem}#uofg-card-content>slot[name=title]::slotted(*){font-size:2.25rem;font-weight:normal;margin:0;padding:1rem 0}#uofg-card-content>slot[name=subtitle]::slotted(*){font-size:1.8rem;font-weight:normal;margin:0;padding:1rem 0}#uofg-card-content>slot[name=body]::slotted(*){font-size:1.6rem;font-weight:normal;margin:0}#uofg-card-footer{background-color:#bedae3}";
|
|
4
|
+
|
|
5
|
+
const UofgCard = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
this.href = undefined;
|
|
9
|
+
}
|
|
10
|
+
render() {
|
|
11
|
+
const Body = () => (h(Fragment, null, h("div", { id: "uofg-card-img" }, h("slot", { name: "img" })), h("div", { id: "uofg-card-content" }, h("slot", { name: "title" }), h("slot", { name: "subtitle" }), h("slot", { name: "body" })), h("div", { id: "uofg-card-footer" }, h("slot", { name: "footer" }))));
|
|
12
|
+
return this.href ? (h("a", { href: this.href, id: "uofg-card" }, h(Body, null))) : (h("div", { id: "uofg-card" }, h(Body, null)));
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
UofgCard.style = uofgCardCss;
|
|
16
|
+
|
|
17
|
+
export { UofgCard as uofg_card };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-
|
|
2
|
-
import { F as FontAwesomeIcon, b as faTimes } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-284464b7.js';
|
|
2
|
+
import { F as FontAwesomeIcon, b as faTimes } from './index-a0a2924b.js';
|
|
3
3
|
import { g as getAllFocusableElements } from './utils-cfa32fa2.js';
|
|
4
4
|
|
|
5
5
|
const uofgModalCss = ":host{visibility:visible !important;position:relative !important;z-index:100000 !important}:focus-visible{outline:2px solid #ffc72a;outline-offset:0.5rem}*{box-sizing:border-box}button{border:none;background-color:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0;margin:unset}ul>li{display:contents}#uofg-modal{display:flex;position:fixed;top:0;left:0;z-index:10000;width:100vw;height:100vh;background-color:rgba(0, 0, 0, 0.5);visibility:hidden;opacity:0;transition-property:opacity, visibility;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-modal.open{visibility:visible;opacity:1}#uofg-modal-dismiss{display:flex;justify-content:center;align-items:center;position:absolute;top:2rem;right:2rem;padding:0.5rem;height:3.5rem;width:3.5rem;font-size:2rem;line-height:1;color:var(--uofg-modal-dismiss-color, white);z-index:2}#uofg-modal-dismiss>svg{display:block;height:1em;fill:currentColor}#uofg-modal-content{position:absolute;width:fit-content;height:fit-content;width:-moz-max-content;height:-moz-max-content;padding:2rem;max-width:100%;max-height:100%;left:50%;transform:translate(-50%, -50px);z-index:1;overflow:auto;transition-property:transform;transition-duration:0.2s;transition-timing-function:ease-in-out}#uofg-modal-content.centered{top:50%;transform:translate(-50%, calc(-50% - 50px))}#uofg-modal.open #uofg-modal-content{visibility:visible;opacity:1;transform:translate(-50%, 0)}#uofg-modal.open #uofg-modal-content.centered{transform:translate(-50%, -50%)}@media (prefers-reduced-motion: reduce){#uofg-modal-content{transition:none}}";
|