├── .gitattributes
├── .gitignore
├── .hgignore
├── CoffeeScriptPreprocessor.cs
├── Libs
├── CoffeeSharp.dll
└── Jurassic.dll
├── Licence.md
├── Module.txt
├── Piedone.Combinator.CoffeeScript.csproj
├── Properties
└── AssemblyInfo.cs
├── Readme.md
├── Web.config
└── packages.config
/.gitattributes:
--------------------------------------------------------------------------------
1 | * -crlf
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | obj/
2 | bin/
3 | *.user
4 |
--------------------------------------------------------------------------------
/.hgignore:
--------------------------------------------------------------------------------
1 | syntax: glob
2 | bin/
3 | obj/
4 | *.user
5 |
--------------------------------------------------------------------------------
/CoffeeScriptPreprocessor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Web;
6 | using CoffeeSharp;
7 | using Piedone.Combinator.EventHandlers;
8 |
9 | namespace Piedone.Combinator.CoffeeScript {
10 | public class CoffeeScriptPreprocessor : ICombinatorResourceEventHandler
11 | {
12 |
13 | public void OnContentLoaded(Models.CombinatorResource resource)
14 | {
15 | if (Path.GetExtension(resource.AbsoluteUrl.ToString()).ToLowerInvariant() != ".coffee") return;
16 |
17 | resource.Content = new CoffeeScriptEngine().Compile(resource.Content);
18 | }
19 |
20 | public void OnContentProcessed(Models.CombinatorResource resource)
21 | {
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/Libs/CoffeeSharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lombiq/Combinator-CoffeeScript-Preprocessor/dde7e8a03b31fc61c9d28b71e2876b4a3752053a/Libs/CoffeeSharp.dll
--------------------------------------------------------------------------------
/Libs/Jurassic.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lombiq/Combinator-CoffeeScript-Preprocessor/dde7e8a03b31fc61c9d28b71e2876b4a3752053a/Libs/Jurassic.dll
--------------------------------------------------------------------------------
/Licence.md:
--------------------------------------------------------------------------------
1 | Copyright © 2015, [Lombiq Technologies Ltd.](https://lombiq.com)
2 |
3 | All rights reserved.
4 |
5 | For more information and requests about licensing please [contact us through our website](https://lombiq.com/contact-us).
6 |
7 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
8 |
9 | * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
10 |
11 | * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
12 |
13 | * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
14 |
15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/Module.txt:
--------------------------------------------------------------------------------
1 | Name: Combinator CoffeeScript Preprocessor
2 | AntiForgery: enabled
3 | Author: Piedone
4 | Website: https://github.com/Lombiq/Combinator-CoffeeScript-Preprocessor
5 | Version: 1.0
6 | OrchardVersion: 1.10.1
7 | Description: CoffeeScript preprocessor for the Combinator Orchard module (https://combinator.codeplex.com/). Uses CoffeeSharp (http://tomlokhorst.github.com/CoffeeSharp/).
8 | Features:
9 | Piedone.Combinator.CoffeeScript:
10 | Name: Combinator CoffeeScript Preprocessor
11 | Description: CoffeeScript preprocessor for the Combinator Orchard module (https://combinator.codeplex.com/). Uses CoffeeSharp (http://tomlokhorst.github.com/CoffeeSharp/).
12 | Category: Performance
13 | Dependencies: Piedone.Combinator
--------------------------------------------------------------------------------
/Piedone.Combinator.CoffeeScript.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 9.0.30729
8 | 2.0
9 | {F8EBC4DF-8C62-43FE-A90D-4D7B12AF93B9}
10 | {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
11 | Library
12 | Properties
13 | Piedone.Combinator.CoffeeScript
14 | Piedone.Combinator.CoffeeScript
15 | v4.5.2
16 | false
17 |
18 | 4.0
19 |
20 |
21 | false
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | true
30 | full
31 | false
32 | bin\
33 | DEBUG;TRACE
34 | prompt
35 | 4
36 | ..\..\..\OrchardBasicCorrectness.ruleset
37 | false
38 |
39 |
40 | pdbonly
41 | true
42 | bin\
43 | TRACE
44 | prompt
45 | 4
46 | AllRules.ruleset
47 | false
48 |
49 |
50 |
51 | Libs\CoffeeSharp.dll
52 |
53 |
54 | Libs\Jurassic.dll
55 |
56 |
57 |
58 |
59 |
60 | 3.5
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | ..\..\..\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll
75 | True
76 |
77 |
78 | ..\..\..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll
79 | True
80 |
81 |
82 | ..\..\..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll
83 | True
84 |
85 |
86 | ..\..\..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll
87 | True
88 |
89 |
90 | ..\..\..\packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll
91 | True
92 |
93 |
94 | ..\..\..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll
95 | True
96 |
97 |
98 | ..\..\..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll
99 | True
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | {2d1d92bb-4555-4cbe-8d0e-63563d6ce4c6}
110 | Orchard.Framework
111 | false
112 |
113 |
114 | {9916839c-39fc-4ceb-a5af-89ca7e87119f}
115 | Orchard.Core
116 | false
117 |
118 |
119 | {c2f88c61-ed65-400a-aaa3-12518108eb8d}
120 | Piedone.Combinator
121 |
122 |
123 |
124 |
125 |
126 |
127 | 10.0
128 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
129 |
130 |
131 |
132 |
133 |
137 |
138 |
139 | $(ProjectDir)\..\Manifests
140 |
141 |
144 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 | False
157 | True
158 | 45979
159 | /
160 |
161 | False
162 | True
163 | http://orchard.codeplex.com
164 | False
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
--------------------------------------------------------------------------------
/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using System.Security;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("Piedone.Combinator.CoffeeScript")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyProduct("Orchard")]
13 | [assembly: AssemblyCopyright("")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("b5db443b-8e22-4dbf-a0ad-70d7a79e6008")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Revision and Build Numbers
33 | // by using the '*' as shown below:
34 | [assembly: AssemblyVersion("1.0.0.0")]
35 | [assembly: AssemblyFileVersion("1.0.0.0")]
36 |
37 |
--------------------------------------------------------------------------------
/Readme.md:
--------------------------------------------------------------------------------
1 | # Combinator CoffeeScript Preprocessor
2 |
3 |
4 |
5 | ## About
6 |
7 | CoffeeScript preprocessor for the Combinator Orchard module (https://github.com/Lombiq/Combinator/).
8 |
9 |
10 | ## Documentation
11 |
12 | **The module is dependent on the [Combinator](https://github.com/Lombiq/Combinator) Orchard module (needs at least Combinator 2.0), so make sure to install it first!**
13 |
14 | This preprocessor hooks into Combinator and compiles included CoffeeScript files (.coffee files) into pure JavaScript.
15 |
16 |
17 | ## Contributing and support
18 |
19 | Bug reports, feature requests, comments, questions, code contributions, and love letters are warmly welcome, please do so via GitHub issues and pull requests. Please adhere to our [open-source guidelines](https://lombiq.com/open-source-guidelines) while doing so.
20 |
21 | This project is developed by [Lombiq Technologies](https://lombiq.com/). Commercial-grade support is available through Lombiq.
--------------------------------------------------------------------------------
/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------