1 | /**
|
2 | * @fileOverview Borschik object to use in browser.
|
3 | */
|
4 |
|
5 | (function() {
|
6 |
|
7 | /**
|
8 | * Borschik
|
9 | * @namespace
|
10 | */
|
11 | var borschik = {};
|
12 |
|
13 | /**
|
14 | * Storage for dynamic links.
|
15 | * @private
|
16 | * @type {Object}
|
17 | */
|
18 | var links = {};
|
19 |
|
20 | /**
|
21 | * Add links from "tech/freeze-links".
|
22 | * @param {object} json
|
23 | */
|
24 | borschik.addLinks = function(json) {
|
25 | for (var link in json) {
|
26 | links[link] = json[link];
|
27 | }
|
28 | };
|
29 |
|
30 | /**
|
31 | * Return link by name.
|
32 | * @param {string} link
|
33 | * @returns {string}
|
34 | */
|
35 | borschik.link = function(link) {
|
36 | // link with "@" is dynamic
|
37 | if (link.charAt(0) === '@') {
|
38 | return links[link.substr(1)] || '[borschik] Undefined link "' + link + '"';
|
39 | }
|
40 |
|
41 | return link;
|
42 | };
|
43 |
|
44 | // exports namespace
|
45 | if (typeof window === 'undefined' && typeof module !== 'undefined') {
|
46 | module.exports = borschik;
|
47 | } else {
|
48 | window['borschik'] = borschik;
|
49 | }
|
50 |
|
51 | })();
|