~didrocks/+junk/face-detection-15.04

« back to all changes in this revision

Viewing changes to facedetection/www/bower_components/prism/plugins/previewer-color/prism-previewer-color.js

  • Committer: Didier Roche
  • Date: 2016-05-10 23:09:11 UTC
  • Revision ID: didier.roche@canonical.com-20160510230911-c7xr490zrj3yrzxd
New version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
(function() {
 
2
 
 
3
        if (
 
4
                typeof self !== 'undefined' && !self.Prism ||
 
5
                typeof global !== 'undefined' && !global.Prism
 
6
        ) {
 
7
                return;
 
8
        }
 
9
 
 
10
        var languages = {
 
11
                'css': true,
 
12
                'less': true,
 
13
                'markup': {
 
14
                        lang: 'markup',
 
15
                        before: 'punctuation',
 
16
                        inside: 'inside',
 
17
                        root: Prism.languages.markup && Prism.languages.markup['tag'].inside['attr-value']
 
18
                },
 
19
                'sass': [
 
20
                        {
 
21
                                lang: 'sass',
 
22
                                before: 'punctuation',
 
23
                                inside: 'inside',
 
24
                                root: Prism.languages.sass && Prism.languages.sass['variable-line']
 
25
                        },
 
26
                        {
 
27
                                lang: 'sass',
 
28
                                inside: 'inside',
 
29
                                root: Prism.languages.sass && Prism.languages.sass['property-line']
 
30
                        }
 
31
                ],
 
32
                'scss': true,
 
33
                'stylus': [
 
34
                        {
 
35
                                lang: 'stylus',
 
36
                                before: 'hexcode',
 
37
                                inside: 'rest',
 
38
                                root: Prism.languages.stylus && Prism.languages.stylus['property-declaration'].inside
 
39
                        },
 
40
                        {
 
41
                                lang: 'stylus',
 
42
                                before: 'hexcode',
 
43
                                inside: 'rest',
 
44
                                root: Prism.languages.stylus && Prism.languages.stylus['variable-declaration'].inside
 
45
                        }
 
46
                ]
 
47
        };
 
48
 
 
49
        Prism.hooks.add('before-highlight', function (env) {
 
50
                if (env.language && languages[env.language] && !languages[env.language].initialized) {
 
51
                        var lang = languages[env.language];
 
52
                        if (Prism.util.type(lang) !== 'Array') {
 
53
                                lang = [lang];
 
54
                        }
 
55
                        lang.forEach(function(lang) {
 
56
                                var before, inside, root, skip;
 
57
                                if (lang === true) {
 
58
                                        before = 'important';
 
59
                                        inside = env.language;
 
60
                                        lang = env.language;
 
61
                                } else {
 
62
                                        before = lang.before || 'important';
 
63
                                        inside = lang.inside || lang.lang;
 
64
                                        root = lang.root || Prism.languages;
 
65
                                        skip = lang.skip;
 
66
                                        lang = env.language;
 
67
                                }
 
68
 
 
69
                                if (!skip && Prism.languages[lang]) {
 
70
                                        Prism.languages.insertBefore(inside, before, {
 
71
                                                'color': /\B#(?:[0-9a-f]{3}){1,2}\b|\b(?:rgb|hsl)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:rgb|hsl)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B|\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGray|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGray|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGray|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gray|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGray|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGray|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGray|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i
 
72
                                        }, root);
 
73
                                        env.grammar = Prism.languages[lang];
 
74
 
 
75
                                        languages[env.language] = {initialized: true};
 
76
                                }
 
77
                        });
 
78
                }
 
79
        });
 
80
 
 
81
        if (Prism.plugins.Previewer) {
 
82
                new Prism.plugins.Previewer('color', function(value) {
 
83
                        this.style.backgroundColor = '';
 
84
                        this.style.backgroundColor = value;
 
85
                        return !!this.style.backgroundColor;
 
86
                });
 
87
        }
 
88
 
 
89
}());
 
 
b'\\ No newline at end of file'