include ../../../_includes/_util-fns //- See the _util-fns file included above for a description of the use of these variables. - var _docsFor = 'dart'; - var _decorator = 'annotation'; - var _array = 'list'; - var _an_array = 'a list'; //- Deprecate now that we have the articles - var _a = 'an'; - var _an = 'a'; - var _priv = '_'; - var _Lang = 'Dart'; - var _Promise = 'Future'; - var _Observable = 'Stream'; - var _liveLink = 'sample repo'; mixin liveExampleLink(linkText, exampleUrlPartName) - var text = linkText || 'live example'; - var ex = exampleUrlPartName || getExampleName(); - var href = 'http://angular-examples.github.io/' + ex; a(href='#{href}' target="_blank")= text mixin liveExampleLink2(linkText, exampleUrlPartName) - var srcText = attributes.srcText || 'view source'; - var ex = exampleUrlPartName || attributes.example || getExampleName(); - var href = 'http://github.com/angular-examples/' + ex; span #[+liveExampleLink(linkText, ex)] (#[a(href='#{href}' target="_blank") #{srcText}]) - var adjustExamplePath = function(_path) { - if(!_path) return _path; - var path = _path.trim(); - var folder = getFolder(path); - var extn = getExtn(path); - // if(extn == 'dart') return path; - var baseName = getBaseFileName(path) || path; // TODO: have getBaseFileName() return path - var baseNameNoExt = baseName.substr(0,baseName.length - (extn.length + 1)); - var inWebFolder = baseNameNoExt.match(/^(main|index(\.\d)?)$/); - // Adjust the folder path, e.g., ts -> dart - folder = folder.replace(/(^|\/)ts($|\/)/, '$1dart$2').replace(/(^|\/)app($|\/)/, inWebFolder ? '$1web$2' : '$1lib$2'); - // Special case not handled above: e.g., index.html -> web/index.html - if(baseNameNoExt.match(/^(index|styles)(\.\d)?$/)) folder = (folder ? folder + '/' : '') + 'web'; - // In file name, replace special characters with underscore - baseNameNoExt = baseNameNoExt.replace(/[\-\.]/g, '_'); - // Adjust the file extension - if(extn == 'ts') extn = 'dart'; - return (folder ? folder + '/' : '') + baseNameNoExt + (extn ? '.' + extn : ''); - }; - var adjustExampleTitle = function(_title) { - if(!_title || !adjustExamplePath) return _title; - var title = _title.trim(); - // Assume title is a path if it ends with an extension like '.foo', - // optionally followed by some comment in parentheses. - var matches = title.match(/(.*\.\w+)($|\s*\([\w ]+\)$)/); - if(matches && matches.length == 3) { - // e.g. matches == ['abc.ts (excerpt)', 'abc.ts', ' (excerpt)'] - var path = adjustExamplePath(matches[1]); - title = path + matches[2]; - } - return title; - }