kcc-gem-theme 1.50.28 → 1.51.28

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.
@@ -0,0 +1,63 @@
1
+ function replaceRegex(string, regex, replacement) {
2
+ const newString = string.replace(regex, replacement);
3
+ return newString;
4
+ }
5
+
6
+ function escapeCharacters(string, escapeOption) {
7
+ const escapedCharactersObject = {
8
+ '\\*': '__asterisk__',
9
+ '\\_': '__underscore__',
10
+ '\\[': '__openBracket__',
11
+ '\\]': '__closeBracket__',
12
+ '\\(': '__openParenthesis__',
13
+ '\\)': '__closeParenthesis__'
14
+ }
15
+
16
+ for (let char in escapedCharactersObject) {
17
+ if (escapedCharactersObject.hasOwnProperty(char)) {
18
+ escapeOption === true ? string = replaceRegex(string, char, escapedCharactersObject[char])
19
+ : escapeOption === false ? string = replaceRegex(string, escapedCharactersObject[char], char.replace(/^\\/g, ''))
20
+ : null;
21
+ }
22
+ }
23
+ return string;
24
+ }
25
+
26
+ function createAnchorElements(string) {
27
+ return string = string.replace(/\[(?<linkText>[^\]]*)\]\((?<linkHref>[^\)]*)\)/g, '<a href="$<linkHref>" target="_blank" rel="noopener noreferrer">$<linkText></a>');
28
+ }
29
+
30
+ function createInlineElements(string) {
31
+ const inlineElementObject = {
32
+ 'strong': /\*\*([^\*]*)\*\*/g,
33
+ 'em': /(?<!_)_([^_]*)(?<!_)_/g // That's some pretty intense RegEx right there: "Negative lookbehind" to omit the escaped characters
34
+ }
35
+ for (var el in inlineElementObject) {
36
+ if (inlineElementObject.hasOwnProperty(el)) {
37
+ string = string.replace(inlineElementObject[el], '<' + el + '>$1</' + el + '>' );
38
+ }
39
+ }
40
+ return string;
41
+ }
42
+
43
+ function createParagraphElements(string) {
44
+ return string = string.replace(/(?<!$)^(.*)(?<!^)$/gm, '<p class="typography__alert">$1</p>');
45
+ }
46
+
47
+ function parseMarkdownToHTML(string) {
48
+ const escapedString = escapeCharacters(string, true);
49
+ const stringWithInlineElements = createInlineElements(escapedString);
50
+ const stringWithAnchorElements = createAnchorElements(stringWithInlineElements);
51
+ const stringWithParagraphElements = createParagraphElements(stringWithAnchorElements);
52
+ const unescapedString = escapeCharacters(stringWithParagraphElements, false);
53
+ //console.log(unescapedString);
54
+ return unescapedString;
55
+ }
56
+
57
+ //
58
+ // USAGE:
59
+ // import parseMarkdownToHTML from './parseMarkdownToHTML.js';
60
+ //
61
+ // parseMarkdownToHTML(stringContainingSimplifiedMarkdown);
62
+
63
+ export default parseMarkdownToHTML;
@@ -0,0 +1,23 @@
1
+ function setId(params, i) {
2
+ return params.spreadsheetId = i;
3
+ }
4
+
5
+ function setRange(params, r) {
6
+ return params.range = r;
7
+ }
8
+
9
+ function setSheetParameters(key, tab) {
10
+ let sheetParams = {};
11
+
12
+ setId(sheetParams, key);
13
+ setRange(sheetParams, tab);
14
+ return sheetParams;
15
+ }
16
+ //
17
+ // USAGE:
18
+ // const SHEET_KEY = '1spDfZUVLeEE5n0OFvbXl2FSJD_RmS0dSPc7CSGr1TjI'; // Long string from the URL of the Google Sheet
19
+ // const TAB_NAME = 'Scholarships Count' // Name as it appears on the "tab" of the desired sheet. Usually "Sheet1", "Sheet2", etc. if not renamed.
20
+ //
21
+ // const sheetParams = setSheetParameters(SHEET_KEY, TAB_NAME);
22
+ //
23
+ export default setSheetParameters;
@@ -635,4 +635,7 @@ h1 sup, h2 sup, h3 sup, h4 sup, h5 sup, h6 sup { // Make superscripts within hea
635
635
 
636
636
  .typography__alert {
637
637
  color: $color-alert;
638
+ &:last-child {
639
+ margin-bottom: 0;
640
+ }
638
641
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kcc-gem-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.50.28
4
+ version: 1.51.28
5
5
  platform: ruby
6
6
  authors:
7
7
  - wdzajicek
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-17 00:00:00.000000000 Z
11
+ date: 2020-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -75,6 +75,7 @@ files:
75
75
  - _includes/contacts.html
76
76
  - _includes/document-head.html
77
77
  - _includes/emergency-alert.html
78
+ - _includes/emergency-alerts.html
78
79
  - _includes/foot.html
79
80
  - _includes/footer.html
80
81
  - _includes/header-global.html
@@ -90,6 +91,7 @@ files:
90
91
  - _includes/nav-sub.html
91
92
  - _includes/old-head.html
92
93
  - _includes/scripts/custom.html
94
+ - _includes/scripts/emergency-alerts.html
93
95
  - _includes/scripts/google-api.html
94
96
  - _includes/scripts/google-noscript.html
95
97
  - _includes/scripts/google-tag.html
@@ -184,11 +186,17 @@ files:
184
186
  - assets/js/theme/alerts/gapi.js
185
187
  - assets/js/theme/alerts/simpleSetSheetParameters.js
186
188
  - assets/js/theme/alerts/trackAlertsCloseClicks.js
189
+ - assets/js/theme/dist/alerts.bundle.js
187
190
  - assets/js/theme/dist/kcc-alerts.bundle.js
188
191
  - assets/js/theme/dist/kcc-mega-nav.bundle.js
189
192
  - assets/js/theme/dist/kcc-nav.bundle.js
190
193
  - assets/js/theme/dist/kcc-theme-landing.bundle.js
191
194
  - assets/js/theme/dist/kcc-theme.bundle.js
195
+ - assets/js/theme/emergency/alerts.js
196
+ - assets/js/theme/emergency/campusAlertsSheetsAPI.js
197
+ - assets/js/theme/emergency/createAlertsHtml.js
198
+ - assets/js/theme/emergency/parseMarkdownToHTML.js
199
+ - assets/js/theme/emergency/simpleSetSheetParameters.js
192
200
  - assets/js/theme/landing/landing.js
193
201
  - assets/js/theme/landing/landingPage.js
194
202
  - assets/js/theme/nav/megaNav/closeMegaNavOnClick.js