xat_support 1.29.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +176 -0
  3. data/README.md +33 -0
  4. data/config/locales/en.yml +85 -0
  5. data/config/locales/translations/zendesk_apps_support.yml +210 -0
  6. data/lib/xat_support.rb +30 -0
  7. data/lib/zendesk_apps_support/app_file.rb +38 -0
  8. data/lib/zendesk_apps_support/app_requirement.rb +5 -0
  9. data/lib/zendesk_apps_support/app_version.rb +64 -0
  10. data/lib/zendesk_apps_support/assets/default_styles.scss +3 -0
  11. data/lib/zendesk_apps_support/assets/default_template.html.erb +10 -0
  12. data/lib/zendesk_apps_support/assets/installed.js.erb +17 -0
  13. data/lib/zendesk_apps_support/assets/src.js.erb +39 -0
  14. data/lib/zendesk_apps_support/build_translation.rb +50 -0
  15. data/lib/zendesk_apps_support/engine.rb +9 -0
  16. data/lib/zendesk_apps_support/i18n.rb +28 -0
  17. data/lib/zendesk_apps_support/installation.rb +20 -0
  18. data/lib/zendesk_apps_support/installed.rb +22 -0
  19. data/lib/zendesk_apps_support/location.rb +29 -0
  20. data/lib/zendesk_apps_support/package.rb +339 -0
  21. data/lib/zendesk_apps_support/product.rb +15 -0
  22. data/lib/zendesk_apps_support/sass_functions.rb +20 -0
  23. data/lib/zendesk_apps_support/stylesheet_compiler.rb +23 -0
  24. data/lib/zendesk_apps_support/validations/banner.rb +33 -0
  25. data/lib/zendesk_apps_support/validations/manifest.rb +214 -0
  26. data/lib/zendesk_apps_support/validations/marketplace.rb +20 -0
  27. data/lib/zendesk_apps_support/validations/requirements.rb +105 -0
  28. data/lib/zendesk_apps_support/validations/source.rb +95 -0
  29. data/lib/zendesk_apps_support/validations/stylesheets.rb +29 -0
  30. data/lib/zendesk_apps_support/validations/templates.rb +18 -0
  31. data/lib/zendesk_apps_support/validations/translations.rb +64 -0
  32. data/lib/zendesk_apps_support/validations/validation_error.rb +101 -0
  33. metadata +229 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d7756cf53baa5cae008ba435c2b48429678d4db6
4
+ data.tar.gz: 2a58b40673fc80902961284906610226f1a57dd1
5
+ SHA512:
6
+ metadata.gz: ca5b2e06052b0308b8329e36a00d658eb95cf4c8854ce4a6d0179f3a0b192bd33d2100d5c04afabf2cf59acddd8a3f2abc01f0d94330f17915c4b2abbbb19726
7
+ data.tar.gz: d1e0be8ce2610d82bc23c7c623733b18a8dd87b5164352d4279274ee78802a9babec60f25b9df6def0537c5086eadc07b47c03fef38257dcf9d2871922ac5aa5
data/LICENSE ADDED
@@ -0,0 +1,176 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
@@ -0,0 +1,33 @@
1
+ # Zendesk Apps Support
2
+
3
+ ## Description
4
+ Classes to manage and validate zendesk apps. This is a gem used in [Zendesk Apps Tools](https://github.com/zendesk/zendesk_apps_tools/).
5
+
6
+ ## Owners
7
+ This repo is owned and maintained by the Zendesk Apps team. You can reach us on vegemite@zendesk.com. We are located in Melbourne!
8
+
9
+ ## Getting Started
10
+ When you want to help **develop** this tool, you will need to clone this repo.
11
+
12
+ Very likely you want to try out your changes with the use of ZAT. See [ZAT](https://github.com/zendesk/zendesk_apps_tools/) for how to get ZAT/ZAS in development.
13
+
14
+ ## Testing
15
+ This project uses rspec, which can be run with `bundle exec rake`.
16
+
17
+ ## Contribute
18
+ * Put up a PR into the master branch.
19
+ * CC and get two +1 from @zendesk/vegemite.
20
+
21
+ ## Bugs
22
+ Bugs can be reported as an issue here on github, or submitted to support@zendesk.com. By mentioning this project it will assigned to the right team.
23
+
24
+ ## Copyright and license
25
+ Copyright 2013 Zendesk
26
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
27
+ You may obtain a copy of the License at
28
+
29
+ [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
30
+
31
+ Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
32
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
33
+ See the License for the specific language governing permissions and limitations under the License.
@@ -0,0 +1,85 @@
1
+ # This file is generated by rake i18n:standardize. Do NOT edit it directly.
2
+ ---
3
+ en:
4
+ txt:
5
+ apps:
6
+ admin:
7
+ error:
8
+ app_build:
9
+ jshint:
10
+ one: 'JSHint error in %{file}: %{errors}'
11
+ other: 'JSHint errors in %{file}: %{errors}'
12
+ eslint:
13
+ one: 'ESLint error in %{file}: %{errors}'
14
+ other: 'ESLint errors in %{file}: %{errors}'
15
+ no_location_required: Locations can't be defined when you specify requirements
16
+ only
17
+ no_framework_version_required: Framework versions can't be set when you
18
+ specify requirements only
19
+ no_app_js_required: Do not set your app to requirements only if you need
20
+ app.js
21
+ manifest_not_json: manifest is not proper JSON. %{errors}
22
+ missing_manifest: Could not find manifest.json
23
+ symlink_in_zip: Symlinks are not allowed in the zip file
24
+ missing_requirements: Could not find requirements.json
25
+ reserved_filename: reserved file name '_root.js' in lib folder
26
+ manifest_keys:
27
+ missing:
28
+ one: 'Missing required field in manifest: %{missing_keys}'
29
+ other: 'Missing required fields in manifest: %{missing_keys}'
30
+ requirements_not_json: requirements.json is not proper JSON. %{errors}
31
+ excessive_requirements: The requirements.json file contains too many requirements.
32
+ The current limit is %{max} requirements. This app has %{count} requirements.
33
+ missing_required_fields: 'Missing required fields in requirements.json:
34
+ "%{field}" is required in "%{identifier}"'
35
+ duplicate_requirements:
36
+ one: 'requirements.json contains a duplicate key: %{duplicate_keys}'
37
+ other: 'requirements.json contains duplicate keys: %{duplicate_keys}'
38
+ invalid_requirements_types:
39
+ one: 'requirements.json contains an invalid type: %{invalid_types}'
40
+ other: 'requirements.json contains invalid types: %{invalid_types}'
41
+ multiple_channel_integrations: 'Specifying multiple channel integrations in requirements.json is not supported.'
42
+ banner:
43
+ invalid_format: Banner image must be a PNG file.
44
+ invalid_size: Invalid banner image dimensions. Must be %{required_banner_width}x%{required_banner_height}px.
45
+ oauth_keys:
46
+ missing:
47
+ one: 'Missing required oauth field in manifest: %{missing_keys}'
48
+ other: 'Missing required oauth fields in manifest: %{missing_keys}'
49
+ missing_source: Could not find app.js
50
+ style_in_template: "<style> tag in %{template}. Use an app.css file instead."
51
+ no_code_for_ifo_notemplate: Javascripts, stylesheets and templates are not allowed when an iframe URI or noTemplate is specified
52
+ invalid_default_locale: "%{defaultLocale} is not a valid default locale."
53
+ missing_translation_file: 'Missing translation file for locale ''%{defaultLocale}''.
54
+ Please read: http://developer.zendesk.com/documentation/apps/i18n.html'
55
+ invalid_host: "%{host_name} is an invalid host for apps."
56
+ invalid_location:
57
+ one: "%{invalid_locations} is an invalid location in %{host_name}."
58
+ other: "%{invalid_locations} are invalid locations in %{host_name}."
59
+ invalid_location_uri: "%{uri} is either an invalid location URI, refers
60
+ to a missing asset or does not use HTTPS."
61
+ duplicate_location:
62
+ one: "%{duplicate_locations} is a duplicate location."
63
+ other: "%{duplicate_locations} are duplicate locations."
64
+ name_as_parameter_name: Can't call a parameter 'name'
65
+ invalid_hidden_parameter:
66
+ one: "%{invalid_params} is set to hidden and cannot be required."
67
+ other: "%{invalid_params} are set to hidden and cannot be required."
68
+ invalid_version: "%{target_version} is not a valid framework version.
69
+ Available versions are: %{available_versions}."
70
+ parameters_not_an_array: App parameters must be an array.
71
+ duplicate_parameters: 'Duplicate app parameters defined: %{duplicate_parameters}'
72
+ translation:
73
+ invalid_locale: "%{file} is not a valid locale."
74
+ invalid_format: "%{field} is invalid for translation."
75
+ not_json: "%{file} is not valid JSON. %{errors}"
76
+ not_json_object: "%{file} is not a JSON object."
77
+ stylesheet_error: 'Sass error: %{sass_error}'
78
+ invalid_type_parameter:
79
+ one: "%{invalid_types} is an invalid parameter type."
80
+ other: "%{invalid_types} are invalid parameter types."
81
+ warning:
82
+ app_build:
83
+ deprecated_version: You are targeting a deprecated version of the framework.
84
+ Your app will work, but it might break when the new framework version
85
+ is deployed.
@@ -0,0 +1,210 @@
1
+ # This file is contains translations in Zendesk's custom format. The rake task
2
+ # `i18n:standardize` will generate a version that is compatible with the i18n
3
+ # gem (and thus Rails). Both versions should be checked in.
4
+ title: "Apps Support"
5
+ packages:
6
+ - default
7
+ - apps_support
8
+
9
+ parts:
10
+ - translation:
11
+ key: "txt.apps.admin.error.app_build.jshint.one"
12
+ title: "App builder job: JSHint error message"
13
+ value: "JSHint error in %{file}: %{errors}"
14
+ - translation:
15
+ key: "txt.apps.admin.error.app_build.jshint.other"
16
+ title: "App builder job: JSHint error messages"
17
+ value: "JSHint errors in %{file}: %{errors}"
18
+ - translation:
19
+ key: "txt.apps.admin.error.app_build.eslint.one"
20
+ title: "App builder job: ESLint error message"
21
+ value: "ESLint error in %{file}: %{errors}"
22
+ - translation:
23
+ key: "txt.apps.admin.error.app_build.eslint.other"
24
+ title: "App builder job: ESLint error messages"
25
+ value: "ESLint errors in %{file}: %{errors}"
26
+ - translation:
27
+ key: "txt.apps.admin.error.app_build.no_location_required"
28
+ title: "App builder job: ban location while requirements only"
29
+ value: "Locations can't be defined when you specify requirements only"
30
+ - translation:
31
+ key: "txt.apps.admin.error.app_build.no_framework_version_required"
32
+ title: "App builder job: ban framework version while requirements only"
33
+ value: "Framework versions can't be set when you specify requirements only"
34
+ - translation:
35
+ key: "txt.apps.admin.error.app_build.no_app_js_required"
36
+ title: "App builder job: ban app.js while requirements only"
37
+ value: "Do not set your app to requirements only if you need app.js"
38
+ obsolete: "2016-02-28"
39
+ - translation:
40
+ key: "txt.apps.admin.error.app_build.manifest_not_json"
41
+ title: "App builder job: manifest is invalid JSON error"
42
+ value: "manifest is not proper JSON. %{errors}"
43
+ - translation:
44
+ key: "txt.apps.admin.error.app_build.missing_manifest"
45
+ title: "App builder job: missing manifest error"
46
+ value: "Could not find manifest.json"
47
+ - translation:
48
+ key: "txt.apps.admin.error.app_build.symlink_in_zip"
49
+ title: "App builder job: symlinks not allowed. https://en.wikipedia.org/wiki/Symbolic_link"
50
+ value: "Symlinks are not allowed in the zip file"
51
+ - translation:
52
+ key: "txt.apps.admin.error.app_build.missing_requirements"
53
+ title: "App builder job: missing requirements error"
54
+ value: "Could not find requirements.json"
55
+ - translation:
56
+ key: "txt.apps.admin.error.app_build.reserved_filename"
57
+ title: "App builder job: reserved file name '_root.js' in lib folder"
58
+ value: "reserved file name '_root.js' in lib folder"
59
+ - translation:
60
+ key: "txt.apps.admin.error.app_build.manifest_keys.missing.one"
61
+ title: "App builder job: missing manifest fields error"
62
+ value: "Missing required field in manifest: %{missing_keys}"
63
+ - translation:
64
+ key: "txt.apps.admin.error.app_build.manifest_keys.missing.other"
65
+ title: "App builder job: missing manifest fields error"
66
+ value: "Missing required fields in manifest: %{missing_keys}"
67
+ - translation:
68
+ key: "txt.apps.admin.error.app_build.requirements_not_json"
69
+ title: "App builder job: requirements file is invalid JSON error"
70
+ value: "requirements.json is not proper JSON. %{errors}"
71
+ - translation:
72
+ key: "txt.apps.admin.error.app_build.excessive_requirements"
73
+ title: "App builder job: requirements file contains too many requirements"
74
+ value: "The requirements.json file contains too many requirements. The current limit is %{max} requirements. This app has %{count} requirements."
75
+ - translation:
76
+ key: "txt.apps.admin.error.app_build.missing_required_fields"
77
+ title: "App builder job: required key missing in requirements, e.g. \"title\" is required in \"my_custom_email_target\""
78
+ value: "Missing required fields in requirements.json: \"%{field}\" is required in \"%{identifier}\""
79
+ - translation:
80
+ key: "txt.apps.admin.error.app_build.duplicate_requirements.one"
81
+ title: "App builder job: requirements file contains duplicate key error"
82
+ value: "requirements.json contains a duplicate key: %{duplicate_keys}"
83
+ - translation:
84
+ key: "txt.apps.admin.error.app_build.duplicate_requirements.other"
85
+ title: "App builder job: requirements file contains duplicate keys error"
86
+ value: "requirements.json contains duplicate keys: %{duplicate_keys}"
87
+ - translation:
88
+ key: "txt.apps.admin.error.app_build.invalid_requirements_types.one"
89
+ title: "App builder job: requirements file contains invalid type error"
90
+ value: "requirements.json contains an invalid type: %{invalid_types}"
91
+ - translation:
92
+ key: "txt.apps.admin.error.app_build.invalid_requirements_types.other"
93
+ title: "App builder job: requirements file contains invalid types error"
94
+ value: "requirements.json contains invalid types: %{invalid_types}"
95
+ - translation:
96
+ key: "txt.apps.admin.error.app_build.banner.invalid_format"
97
+ title: "App builder job: Banner image invalid format error"
98
+ value: "Banner image must be a PNG file."
99
+ - translation:
100
+ key: "txt.apps.admin.error.app_build.banner.invalid_size"
101
+ title: "App builder job: Banner image invalid size error"
102
+ value: "Invalid banner image dimensions. Must be %{required_banner_width}x%{required_banner_height}px."
103
+ - translation:
104
+ key: "txt.apps.admin.error.app_build.oauth_keys.missing.one"
105
+ title: "App builder job: missing oauth fields error"
106
+ value: "Missing required oauth field in manifest: %{missing_keys}"
107
+ - translation:
108
+ key: "txt.apps.admin.error.app_build.oauth_keys.missing.other"
109
+ title: "App builder job: missing oauth fields error"
110
+ value: "Missing required oauth fields in manifest: %{missing_keys}"
111
+ - translation:
112
+ key: "txt.apps.admin.error.app_build.missing_source"
113
+ title: "App builder job: missing app.js error"
114
+ value: "Could not find app.js"
115
+ - translation:
116
+ key: "txt.apps.admin.error.app_build.style_in_template"
117
+ title: "App builder job: <style> tags in template error"
118
+ value: "<style> tag in %{template}. Use an app.css file instead."
119
+ - translation:
120
+ key: "txt.apps.admin.error.app_build.no_code_for_ifo_notemplate"
121
+ title: "App builder job: code included for a type of app that shouldn't have code"
122
+ value: "Javascripts, stylesheets, and templates are not allowed when an iframe URI or noTemplate is specified"
123
+ - translation:
124
+ key: "txt.apps.admin.error.app_build.invalid_default_locale"
125
+ title: "App builder job: invalid default locale"
126
+ value: "%{defaultLocale} is not a valid default locale."
127
+ - translation:
128
+ key: "txt.apps.admin.error.app_build.missing_translation_file"
129
+ title: "App builder job: missing translation file"
130
+ value: "Missing translation file for locale '%{defaultLocale}'. Please read: http://developer.zendesk.com/documentation/apps/i18n.html"
131
+ - translation:
132
+ key: "txt.apps.admin.error.app_build.invalid_host"
133
+ title: "App builder job: invalid host application for apps"
134
+ value: "%{host_name} is an invalid host for apps."
135
+ - translation:
136
+ key: "txt.apps.admin.error.app_build.invalid_location.one"
137
+ title: "App builder job: invalid locations"
138
+ value: "%{invalid_locations} is an invalid location in %{host_name}."
139
+ - translation:
140
+ key: "txt.apps.admin.error.app_build.invalid_location.other"
141
+ title: "App builder job: invalid locations"
142
+ value: "%{invalid_locations} are invalid locations in %{host_name}."
143
+ - translation:
144
+ key: "txt.apps.admin.error.app_build.invalid_location_uri"
145
+ title: "App builder job: invalid URI for an iframe in the manifest"
146
+ value: "%{uri} is either an invalid location URI, refers to a missing asset, or does not use HTTPS."
147
+ - translation:
148
+ key: "txt.apps.admin.error.app_build.duplicate_location.one"
149
+ title: "App builder job: duplicate locations"
150
+ value: "%{duplicate_locations} is a duplicate location."
151
+ - translation:
152
+ key: "txt.apps.admin.error.app_build.duplicate_location.other"
153
+ title: "App builder job: duplicate locations"
154
+ value: "%{duplicate_locations} are duplicate locations."
155
+ - translation:
156
+ key: "txt.apps.admin.error.app_build.name_as_parameter_name"
157
+ title: "App builder job: error message when developer names a parameter 'name'"
158
+ value: "Can't call a parameter 'name'"
159
+ - translation:
160
+ key: "txt.apps.admin.error.app_build.invalid_hidden_parameter.one"
161
+ title: "App builder job: hidden parameters set to required"
162
+ value: "%{invalid_params} is set to hidden and cannot be required."
163
+ - translation:
164
+ key: "txt.apps.admin.error.app_build.invalid_hidden_parameter.other"
165
+ title: "App builder job: hidden parameters set to required"
166
+ value: "%{invalid_params} are set to hidden and cannot be required."
167
+ - translation:
168
+ key: "txt.apps.admin.warning.app_build.deprecated_version"
169
+ title: "App builder job: deprecated version specified"
170
+ value: 'You are targeting a deprecated version of the framework. Your app will work, but it might break when the new framework version is deployed.'
171
+ - translation:
172
+ key: "txt.apps.admin.error.app_build.invalid_version"
173
+ title: "App builder job: invalid framework version"
174
+ value: "%{target_version} is not a valid framework version. Available versions are: %{available_versions}."
175
+ - translation:
176
+ key: "txt.apps.admin.error.app_build.parameters_not_an_array"
177
+ title: "App builder job: app parameters must be an array"
178
+ value: "App parameters must be an array."
179
+ - translation:
180
+ key: "txt.apps.admin.error.app_build.duplicate_parameters"
181
+ title: "App builder job: duplicate parameters error"
182
+ value: "Duplicate app parameters defined: %{duplicate_parameters}"
183
+ - translation:
184
+ key: "txt.apps.admin.error.app_build.translation.invalid_locale"
185
+ title: "App builder job: invalid locale file name"
186
+ value: "%{file} is not a valid locale."
187
+ - translation:
188
+ key: "txt.apps.admin.error.app_build.translation.invalid_format"
189
+ title: "App builder job: file format is invalid for translation"
190
+ value: "%{field} is invalid for translation."
191
+ - translation:
192
+ key: "txt.apps.admin.error.app_build.translation.not_json"
193
+ title: "App builder job: translation file is invalid json"
194
+ value: "%{file} is not valid JSON. %{errors}"
195
+ - translation:
196
+ key: "txt.apps.admin.error.app_build.translation.not_json_object"
197
+ title: "App builder job: translation file is not a JSON object"
198
+ value: "%{file} is not a JSON object."
199
+ - translation:
200
+ key: "txt.apps.admin.error.app_build.stylesheet_error"
201
+ title: "App builder job: invalid stylesheet syntax"
202
+ value: "Sass error: %{sass_error}"
203
+ - translation:
204
+ key: "txt.apps.admin.error.app_build.invalid_type_parameter.one"
205
+ title: "App builder job: single invalid parameter type error"
206
+ value: "%{invalid_types} is an invalid parameter type."
207
+ - translation:
208
+ key: "txt.apps.admin.error.app_build.invalid_type_parameter.other"
209
+ title: "App builder job: multiple invalid parameter types error"
210
+ value: "%{invalid_types} are invalid parameter types."