lemboy-google-api-client 0.9.26

Sign up to get free protection for your applications and to get access to all the features.
Files changed (555) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +27 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +309 -0
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +53 -0
  11. data/LICENSE +202 -0
  12. data/MIGRATING.md +171 -0
  13. data/README.md +327 -0
  14. data/Rakefile +2 -0
  15. data/api_names.yaml +36215 -0
  16. data/bin/generate-api +109 -0
  17. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +298 -0
  19. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +122 -0
  20. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +458 -0
  21. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  22. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  23. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  24. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  25. data/generated/google/apis/adexchangebuyer_v1_4.rb +35 -0
  26. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +3550 -0
  27. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1421 -0
  28. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +1538 -0
  29. data/generated/google/apis/adexchangeseller_v2_0.rb +37 -0
  30. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  31. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +347 -0
  32. data/generated/google/apis/adexchangeseller_v2_0/service.rb +667 -0
  33. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  34. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  35. data/generated/google/apis/admin_datatransfer_v1/representations.rb +130 -0
  36. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  37. data/generated/google/apis/admin_directory_v1.rb +113 -0
  38. data/generated/google/apis/admin_directory_v1/classes.rb +3241 -0
  39. data/generated/google/apis/admin_directory_v1/representations.rb +1172 -0
  40. data/generated/google/apis/admin_directory_v1/service.rb +3857 -0
  41. data/generated/google/apis/admin_reports_v1.rb +38 -0
  42. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  43. data/generated/google/apis/admin_reports_v1/representations.rb +257 -0
  44. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  45. data/generated/google/apis/adsense_v1_4.rb +37 -0
  46. data/generated/google/apis/adsense_v1_4/classes.rb +1280 -0
  47. data/generated/google/apis/adsense_v1_4/representations.rb +555 -0
  48. data/generated/google/apis/adsense_v1_4/service.rb +1713 -0
  49. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  50. data/generated/google/apis/adsensehost_v4_1/classes.rb +836 -0
  51. data/generated/google/apis/adsensehost_v4_1/representations.rb +367 -0
  52. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  53. data/generated/google/apis/analytics_v3.rb +49 -0
  54. data/generated/google/apis/analytics_v3/classes.rb +5536 -0
  55. data/generated/google/apis/analytics_v3/representations.rb +1992 -0
  56. data/generated/google/apis/analytics_v3/service.rb +3785 -0
  57. data/generated/google/apis/analyticsreporting_v4.rb +37 -0
  58. data/generated/google/apis/analyticsreporting_v4/classes.rb +1420 -0
  59. data/generated/google/apis/analyticsreporting_v4/representations.rb +598 -0
  60. data/generated/google/apis/analyticsreporting_v4/service.rb +88 -0
  61. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  62. data/generated/google/apis/androidenterprise_v1/classes.rb +2250 -0
  63. data/generated/google/apis/androidenterprise_v1/representations.rb +970 -0
  64. data/generated/google/apis/androidenterprise_v1/service.rb +3267 -0
  65. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  66. data/generated/google/apis/androidpublisher_v2/classes.rb +1941 -0
  67. data/generated/google/apis/androidpublisher_v2/representations.rb +975 -0
  68. data/generated/google/apis/androidpublisher_v2/service.rb +2572 -0
  69. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  70. data/generated/google/apis/appengine_v1beta4/classes.rb +1585 -0
  71. data/generated/google/apis/appengine_v1beta4/representations.rb +542 -0
  72. data/generated/google/apis/appengine_v1beta4/service.rb +477 -0
  73. data/generated/google/apis/appengine_v1beta5.rb +40 -0
  74. data/generated/google/apis/appengine_v1beta5/classes.rb +1984 -0
  75. data/generated/google/apis/appengine_v1beta5/representations.rb +765 -0
  76. data/generated/google/apis/appengine_v1beta5/service.rb +864 -0
  77. data/generated/google/apis/appsactivity_v1.rb +46 -0
  78. data/generated/google/apis/appsactivity_v1/classes.rb +415 -0
  79. data/generated/google/apis/appsactivity_v1/representations.rb +209 -0
  80. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  81. data/generated/google/apis/appstate_v1.rb +34 -0
  82. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  83. data/generated/google/apis/appstate_v1/representations.rb +87 -0
  84. data/generated/google/apis/appstate_v1/service.rb +260 -0
  85. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  86. data/generated/google/apis/autoscaler_v1beta2/classes.rb +710 -0
  87. data/generated/google/apis/autoscaler_v1beta2/representations.rb +296 -0
  88. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  89. data/generated/google/apis/bigquery_v2.rb +52 -0
  90. data/generated/google/apis/bigquery_v2/classes.rb +3081 -0
  91. data/generated/google/apis/bigquery_v2/representations.rb +1094 -0
  92. data/generated/google/apis/bigquery_v2/service.rb +988 -0
  93. data/generated/google/apis/blogger_v3.rb +37 -0
  94. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  95. data/generated/google/apis/blogger_v3/representations.rb +632 -0
  96. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  97. data/generated/google/apis/books_v1.rb +34 -0
  98. data/generated/google/apis/books_v1/classes.rb +4160 -0
  99. data/generated/google/apis/books_v1/representations.rb +1799 -0
  100. data/generated/google/apis/books_v1/service.rb +2300 -0
  101. data/generated/google/apis/calendar_v3.rb +37 -0
  102. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  103. data/generated/google/apis/calendar_v3/representations.rb +631 -0
  104. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  105. data/generated/google/apis/civicinfo_v2.rb +32 -0
  106. data/generated/google/apis/civicinfo_v2/classes.rb +1499 -0
  107. data/generated/google/apis/civicinfo_v2/representations.rb +572 -0
  108. data/generated/google/apis/civicinfo_v2/service.rb +300 -0
  109. data/generated/google/apis/classroom_v1.rb +70 -0
  110. data/generated/google/apis/classroom_v1/classes.rb +1572 -0
  111. data/generated/google/apis/classroom_v1/representations.rb +729 -0
  112. data/generated/google/apis/classroom_v1/service.rb +1945 -0
  113. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  114. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  115. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  116. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  117. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  118. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  119. data/generated/google/apis/cloudbilling_v1/representations.rb +87 -0
  120. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  121. data/generated/google/apis/cloudbuild_v1.rb +34 -0
  122. data/generated/google/apis/cloudbuild_v1/classes.rb +919 -0
  123. data/generated/google/apis/cloudbuild_v1/representations.rb +364 -0
  124. data/generated/google/apis/cloudbuild_v1/service.rb +492 -0
  125. data/generated/google/apis/clouddebugger_v2.rb +38 -0
  126. data/generated/google/apis/clouddebugger_v2/classes.rb +1081 -0
  127. data/generated/google/apis/clouddebugger_v2/representations.rb +465 -0
  128. data/generated/google/apis/clouddebugger_v2/service.rb +396 -0
  129. data/generated/google/apis/cloudkms_v1beta1.rb +34 -0
  130. data/generated/google/apis/cloudkms_v1beta1/classes.rb +999 -0
  131. data/generated/google/apis/cloudkms_v1beta1/representations.rb +448 -0
  132. data/generated/google/apis/cloudkms_v1beta1/service.rb +932 -0
  133. data/generated/google/apis/cloudlatencytest_v2.rb +34 -0
  134. data/generated/google/apis/cloudlatencytest_v2/classes.rb +195 -0
  135. data/generated/google/apis/cloudlatencytest_v2/representations.rb +127 -0
  136. data/generated/google/apis/cloudlatencytest_v2/service.rb +135 -0
  137. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  138. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  139. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +353 -0
  140. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  141. data/generated/google/apis/cloudresourcemanager_v1.rb +38 -0
  142. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +886 -0
  143. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +359 -0
  144. data/generated/google/apis/cloudresourcemanager_v1/service.rb +686 -0
  145. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  146. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +682 -0
  147. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +312 -0
  148. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +710 -0
  149. data/generated/google/apis/cloudtrace_v1.rb +43 -0
  150. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  151. data/generated/google/apis/cloudtrace_v1/representations.rb +102 -0
  152. data/generated/google/apis/cloudtrace_v1/service.rb +192 -0
  153. data/generated/google/apis/clouduseraccounts_beta.rb +44 -0
  154. data/generated/google/apis/clouduseraccounts_beta/classes.rb +845 -0
  155. data/generated/google/apis/clouduseraccounts_beta/representations.rb +352 -0
  156. data/generated/google/apis/clouduseraccounts_beta/service.rb +907 -0
  157. data/generated/google/apis/compute_beta.rb +49 -0
  158. data/generated/google/apis/compute_beta/classes.rb +12261 -0
  159. data/generated/google/apis/compute_beta/representations.rb +4615 -0
  160. data/generated/google/apis/compute_beta/service.rb +15330 -0
  161. data/generated/google/apis/compute_v1.rb +49 -0
  162. data/generated/google/apis/compute_v1/classes.rb +11179 -0
  163. data/generated/google/apis/compute_v1/representations.rb +4203 -0
  164. data/generated/google/apis/compute_v1/service.rb +12937 -0
  165. data/generated/google/apis/container_v1.rb +35 -0
  166. data/generated/google/apis/container_v1/classes.rb +1040 -0
  167. data/generated/google/apis/container_v1/representations.rb +415 -0
  168. data/generated/google/apis/container_v1/service.rb +659 -0
  169. data/generated/google/apis/container_v1beta1.rb +35 -0
  170. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  171. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  172. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  173. data/generated/google/apis/content_v2.rb +35 -0
  174. data/generated/google/apis/content_v2/classes.rb +6887 -0
  175. data/generated/google/apis/content_v2/representations.rb +2963 -0
  176. data/generated/google/apis/content_v2/service.rb +2653 -0
  177. data/generated/google/apis/coordinate_v1.rb +37 -0
  178. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  179. data/generated/google/apis/coordinate_v1/representations.rb +321 -0
  180. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  181. data/generated/google/apis/customsearch_v1.rb +31 -0
  182. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  183. data/generated/google/apis/customsearch_v1/representations.rb +302 -0
  184. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  185. data/generated/google/apis/dataflow_v1b3.rb +37 -0
  186. data/generated/google/apis/dataflow_v1b3/classes.rb +4225 -0
  187. data/generated/google/apis/dataflow_v1b3/representations.rb +1809 -0
  188. data/generated/google/apis/dataflow_v1b3/service.rb +874 -0
  189. data/generated/google/apis/dataproc_v1.rb +34 -0
  190. data/generated/google/apis/dataproc_v1/classes.rb +1716 -0
  191. data/generated/google/apis/dataproc_v1/representations.rb +678 -0
  192. data/generated/google/apis/dataproc_v1/service.rb +670 -0
  193. data/generated/google/apis/datastore_v1.rb +38 -0
  194. data/generated/google/apis/datastore_v1/classes.rb +1289 -0
  195. data/generated/google/apis/datastore_v1/representations.rb +572 -0
  196. data/generated/google/apis/datastore_v1/service.rb +259 -0
  197. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  198. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  199. data/generated/google/apis/datastore_v1beta2/representations.rb +594 -0
  200. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  201. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  202. data/generated/google/apis/datastore_v1beta3/classes.rb +1284 -0
  203. data/generated/google/apis/datastore_v1beta3/representations.rb +572 -0
  204. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  205. data/generated/google/apis/deploymentmanager_v2.rb +43 -0
  206. data/generated/google/apis/deploymentmanager_v2/classes.rb +1582 -0
  207. data/generated/google/apis/deploymentmanager_v2/representations.rb +686 -0
  208. data/generated/google/apis/deploymentmanager_v2/service.rb +1026 -0
  209. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  210. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  211. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  212. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  213. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  214. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  215. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  216. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  217. data/generated/google/apis/dfareporting_v2_3.rb +37 -0
  218. data/generated/google/apis/dfareporting_v2_3/classes.rb +10839 -0
  219. data/generated/google/apis/dfareporting_v2_3/representations.rb +3829 -0
  220. data/generated/google/apis/dfareporting_v2_3/service.rb +8581 -0
  221. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  222. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  223. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  224. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  225. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  226. data/generated/google/apis/dfareporting_v2_6/classes.rb +11586 -0
  227. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  228. data/generated/google/apis/dfareporting_v2_6/service.rb +9025 -0
  229. data/generated/google/apis/dfareporting_v2_7.rb +40 -0
  230. data/generated/google/apis/dfareporting_v2_7/classes.rb +11876 -0
  231. data/generated/google/apis/dfareporting_v2_7/representations.rb +4243 -0
  232. data/generated/google/apis/dfareporting_v2_7/service.rb +9095 -0
  233. data/generated/google/apis/discovery_v1.rb +32 -0
  234. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  235. data/generated/google/apis/discovery_v1/representations.rb +397 -0
  236. data/generated/google/apis/discovery_v1/service.rb +142 -0
  237. data/generated/google/apis/dns_v1.rb +43 -0
  238. data/generated/google/apis/dns_v1/classes.rb +406 -0
  239. data/generated/google/apis/dns_v1/representations.rb +167 -0
  240. data/generated/google/apis/dns_v1/service.rb +453 -0
  241. data/generated/google/apis/dns_v2beta1.rb +43 -0
  242. data/generated/google/apis/dns_v2beta1/classes.rb +915 -0
  243. data/generated/google/apis/dns_v2beta1/representations.rb +368 -0
  244. data/generated/google/apis/dns_v2beta1/service.rb +768 -0
  245. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  246. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +795 -0
  247. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +368 -0
  248. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +376 -0
  249. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  250. data/generated/google/apis/doubleclicksearch_v2/classes.rb +960 -0
  251. data/generated/google/apis/doubleclicksearch_v2/representations.rb +350 -0
  252. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  253. data/generated/google/apis/drive_v2.rb +59 -0
  254. data/generated/google/apis/drive_v2/classes.rb +2633 -0
  255. data/generated/google/apis/drive_v2/representations.rb +885 -0
  256. data/generated/google/apis/drive_v2/service.rb +2754 -0
  257. data/generated/google/apis/drive_v3.rb +56 -0
  258. data/generated/google/apis/drive_v3/classes.rb +1611 -0
  259. data/generated/google/apis/drive_v3/representations.rb +555 -0
  260. data/generated/google/apis/drive_v3/service.rb +1553 -0
  261. data/generated/google/apis/fitness_v1.rb +85 -0
  262. data/generated/google/apis/fitness_v1/classes.rb +943 -0
  263. data/generated/google/apis/fitness_v1/representations.rb +380 -0
  264. data/generated/google/apis/fitness_v1/service.rb +674 -0
  265. data/generated/google/apis/fusiontables_v2.rb +37 -0
  266. data/generated/google/apis/fusiontables_v2/classes.rb +1049 -0
  267. data/generated/google/apis/fusiontables_v2/representations.rb +457 -0
  268. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  269. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  270. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  271. data/generated/google/apis/games_configuration_v1configuration/representations.rb +228 -0
  272. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  273. data/generated/google/apis/games_management_v1management.rb +37 -0
  274. data/generated/google/apis/games_management_v1management/classes.rb +567 -0
  275. data/generated/google/apis/games_management_v1management/representations.rb +278 -0
  276. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  277. data/generated/google/apis/games_v1.rb +40 -0
  278. data/generated/google/apis/games_v1/classes.rb +4667 -0
  279. data/generated/google/apis/games_v1/representations.rb +1800 -0
  280. data/generated/google/apis/games_v1/service.rb +2449 -0
  281. data/generated/google/apis/gan_v1beta1.rb +31 -0
  282. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  283. data/generated/google/apis/gan_v1beta1/representations.rb +462 -0
  284. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  285. data/generated/google/apis/genomics_v1.rb +46 -0
  286. data/generated/google/apis/genomics_v1/classes.rb +3477 -0
  287. data/generated/google/apis/genomics_v1/representations.rb +1284 -0
  288. data/generated/google/apis/genomics_v1/service.rb +2207 -0
  289. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  290. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  291. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  292. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  293. data/generated/google/apis/gmail_v1.rb +61 -0
  294. data/generated/google/apis/gmail_v1/classes.rb +1382 -0
  295. data/generated/google/apis/gmail_v1/representations.rb +624 -0
  296. data/generated/google/apis/gmail_v1/service.rb +2447 -0
  297. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  298. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  299. data/generated/google/apis/groupsmigration_v1/representations.rb +40 -0
  300. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  301. data/generated/google/apis/groupssettings_v1.rb +34 -0
  302. data/generated/google/apis/groupssettings_v1/classes.rb +240 -0
  303. data/generated/google/apis/groupssettings_v1/representations.rb +69 -0
  304. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  305. data/generated/google/apis/iam_v1.rb +36 -0
  306. data/generated/google/apis/iam_v1/classes.rb +640 -0
  307. data/generated/google/apis/iam_v1/representations.rb +316 -0
  308. data/generated/google/apis/iam_v1/service.rb +554 -0
  309. data/generated/google/apis/identitytoolkit_v3.rb +37 -0
  310. data/generated/google/apis/identitytoolkit_v3/classes.rb +2182 -0
  311. data/generated/google/apis/identitytoolkit_v3/representations.rb +742 -0
  312. data/generated/google/apis/identitytoolkit_v3/service.rb +657 -0
  313. data/generated/google/apis/kgsearch_v1.rb +31 -0
  314. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  315. data/generated/google/apis/kgsearch_v1/representations.rb +41 -0
  316. data/generated/google/apis/kgsearch_v1/service.rb +113 -0
  317. data/generated/google/apis/language_v1beta1.rb +36 -0
  318. data/generated/google/apis/language_v1beta1/classes.rb +757 -0
  319. data/generated/google/apis/language_v1beta1/representations.rb +339 -0
  320. data/generated/google/apis/language_v1beta1/service.rb +184 -0
  321. data/generated/google/apis/licensing_v1.rb +34 -0
  322. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  323. data/generated/google/apis/licensing_v1/representations.rb +74 -0
  324. data/generated/google/apis/licensing_v1/service.rb +369 -0
  325. data/generated/google/apis/logging_v1beta3.rb +47 -0
  326. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  327. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  328. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  329. data/generated/google/apis/logging_v2beta1.rb +46 -0
  330. data/generated/google/apis/logging_v2beta1/classes.rb +1254 -0
  331. data/generated/google/apis/logging_v2beta1/representations.rb +421 -0
  332. data/generated/google/apis/logging_v2beta1/service.rb +788 -0
  333. data/generated/google/apis/manager_v1beta2.rb +53 -0
  334. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  335. data/generated/google/apis/manager_v1beta2/representations.rb +606 -0
  336. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  337. data/generated/google/apis/manufacturers_v1.rb +34 -0
  338. data/generated/google/apis/manufacturers_v1/classes.rb +258 -0
  339. data/generated/google/apis/manufacturers_v1/representations.rb +103 -0
  340. data/generated/google/apis/manufacturers_v1/service.rb +138 -0
  341. data/generated/google/apis/mirror_v1.rb +37 -0
  342. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  343. data/generated/google/apis/mirror_v1/representations.rb +390 -0
  344. data/generated/google/apis/mirror_v1/service.rb +977 -0
  345. data/generated/google/apis/monitoring_v3.rb +45 -0
  346. data/generated/google/apis/monitoring_v3/classes.rb +1335 -0
  347. data/generated/google/apis/monitoring_v3/representations.rb +516 -0
  348. data/generated/google/apis/monitoring_v3/service.rb +706 -0
  349. data/generated/google/apis/mybusiness_v3.rb +32 -0
  350. data/generated/google/apis/mybusiness_v3/classes.rb +1864 -0
  351. data/generated/google/apis/mybusiness_v3/representations.rb +741 -0
  352. data/generated/google/apis/mybusiness_v3/service.rb +960 -0
  353. data/generated/google/apis/oauth2_v2.rb +43 -0
  354. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  355. data/generated/google/apis/oauth2_v2/representations.rb +102 -0
  356. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  357. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  358. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  359. data/generated/google/apis/pagespeedonline_v2/representations.rb +272 -0
  360. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  361. data/generated/google/apis/partners_v2.rb +32 -0
  362. data/generated/google/apis/partners_v2/classes.rb +942 -0
  363. data/generated/google/apis/partners_v2/representations.rb +454 -0
  364. data/generated/google/apis/partners_v2/service.rb +400 -0
  365. data/generated/google/apis/people_v1.rb +59 -0
  366. data/generated/google/apis/people_v1/classes.rb +1521 -0
  367. data/generated/google/apis/people_v1/representations.rb +663 -0
  368. data/generated/google/apis/people_v1/service.rb +189 -0
  369. data/generated/google/apis/plus_domains_v1.rb +61 -0
  370. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  371. data/generated/google/apis/plus_domains_v1/representations.rb +1111 -0
  372. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  373. data/generated/google/apis/plus_v1.rb +43 -0
  374. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  375. data/generated/google/apis/plus_v1/representations.rb +907 -0
  376. data/generated/google/apis/plus_v1/service.rb +470 -0
  377. data/generated/google/apis/prediction_v1_6.rb +47 -0
  378. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  379. data/generated/google/apis/prediction_v1_6/representations.rb +369 -0
  380. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  381. data/generated/google/apis/proximitybeacon_v1beta1.rb +34 -0
  382. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +786 -0
  383. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +347 -0
  384. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +806 -0
  385. data/generated/google/apis/pubsub_v1.rb +37 -0
  386. data/generated/google/apis/pubsub_v1/classes.rb +676 -0
  387. data/generated/google/apis/pubsub_v1/representations.rb +323 -0
  388. data/generated/google/apis/pubsub_v1/service.rb +900 -0
  389. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  390. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  391. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  392. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  393. data/generated/google/apis/qpx_express_v1.rb +31 -0
  394. data/generated/google/apis/qpx_express_v1/classes.rb +1274 -0
  395. data/generated/google/apis/qpx_express_v1/representations.rb +473 -0
  396. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  397. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  398. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  399. data/generated/google/apis/replicapool_v1beta2/representations.rb +264 -0
  400. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  401. data/generated/google/apis/replicapoolupdater_v1beta1.rb +45 -0
  402. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  403. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +294 -0
  404. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +509 -0
  405. data/generated/google/apis/reseller_v1.rb +37 -0
  406. data/generated/google/apis/reseller_v1/classes.rb +540 -0
  407. data/generated/google/apis/reseller_v1/representations.rb +225 -0
  408. data/generated/google/apis/reseller_v1/service.rb +623 -0
  409. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  410. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  411. data/generated/google/apis/resourceviews_v1beta2/representations.rb +301 -0
  412. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  413. data/generated/google/apis/script_v1.rb +64 -0
  414. data/generated/google/apis/script_v1/classes.rb +265 -0
  415. data/generated/google/apis/script_v1/representations.rb +119 -0
  416. data/generated/google/apis/script_v1/service.rb +98 -0
  417. data/generated/google/apis/sheets_v4.rb +43 -0
  418. data/generated/google/apis/sheets_v4/classes.rb +6368 -0
  419. data/generated/google/apis/sheets_v4/representations.rb +2289 -0
  420. data/generated/google/apis/sheets_v4/service.rb +569 -0
  421. data/generated/google/apis/site_verification_v1.rb +37 -0
  422. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  423. data/generated/google/apis/site_verification_v1/representations.rb +113 -0
  424. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  425. data/generated/google/apis/slides_v1.rb +49 -0
  426. data/generated/google/apis/slides_v1/classes.rb +4044 -0
  427. data/generated/google/apis/slides_v1/representations.rb +1765 -0
  428. data/generated/google/apis/slides_v1/service.rb +202 -0
  429. data/generated/google/apis/speech_v1beta1.rb +34 -0
  430. data/generated/google/apis/speech_v1beta1/classes.rb +513 -0
  431. data/generated/google/apis/speech_v1beta1/representations.rb +218 -0
  432. data/generated/google/apis/speech_v1beta1/service.rb +273 -0
  433. data/generated/google/apis/sqladmin_v1beta4.rb +38 -0
  434. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2142 -0
  435. data/generated/google/apis/sqladmin_v1beta4/representations.rb +893 -0
  436. data/generated/google/apis/sqladmin_v1beta4/service.rb +1709 -0
  437. data/generated/google/apis/storage_v1.rb +46 -0
  438. data/generated/google/apis/storage_v1/classes.rb +1255 -0
  439. data/generated/google/apis/storage_v1/representations.rb +502 -0
  440. data/generated/google/apis/storage_v1/service.rb +1906 -0
  441. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  442. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  443. data/generated/google/apis/storagetransfer_v1/representations.rb +418 -0
  444. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  445. data/generated/google/apis/tagmanager_v1.rb +52 -0
  446. data/generated/google/apis/tagmanager_v1/classes.rb +1494 -0
  447. data/generated/google/apis/tagmanager_v1/representations.rb +611 -0
  448. data/generated/google/apis/tagmanager_v1/service.rb +2119 -0
  449. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  450. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  451. data/generated/google/apis/taskqueue_v1beta2/representations.rb +126 -0
  452. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  453. data/generated/google/apis/tasks_v1.rb +37 -0
  454. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  455. data/generated/google/apis/tasks_v1/representations.rb +125 -0
  456. data/generated/google/apis/tasks_v1/service.rb +643 -0
  457. data/generated/google/apis/translate_v2.rb +31 -0
  458. data/generated/google/apis/translate_v2/classes.rb +168 -0
  459. data/generated/google/apis/translate_v2/representations.rb +121 -0
  460. data/generated/google/apis/translate_v2/service.rb +182 -0
  461. data/generated/google/apis/urlshortener_v1.rb +34 -0
  462. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  463. data/generated/google/apis/urlshortener_v1/representations.rb +121 -0
  464. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  465. data/generated/google/apis/vision_v1.rb +36 -0
  466. data/generated/google/apis/vision_v1/classes.rb +1267 -0
  467. data/generated/google/apis/vision_v1/representations.rb +418 -0
  468. data/generated/google/apis/vision_v1/service.rb +90 -0
  469. data/generated/google/apis/webmasters_v3.rb +37 -0
  470. data/generated/google/apis/webmasters_v3/classes.rb +570 -0
  471. data/generated/google/apis/webmasters_v3/representations.rb +283 -0
  472. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  473. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  474. data/generated/google/apis/youtube_analytics_v1/classes.rb +337 -0
  475. data/generated/google/apis/youtube_analytics_v1/representations.rb +174 -0
  476. data/generated/google/apis/youtube_analytics_v1/service.rb +486 -0
  477. data/generated/google/apis/youtube_partner_v1.rb +37 -0
  478. data/generated/google/apis/youtube_partner_v1/classes.rb +3854 -0
  479. data/generated/google/apis/youtube_partner_v1/representations.rb +1537 -0
  480. data/generated/google/apis/youtube_partner_v1/service.rb +3269 -0
  481. data/generated/google/apis/youtube_v3.rb +50 -0
  482. data/generated/google/apis/youtube_v3/classes.rb +8375 -0
  483. data/generated/google/apis/youtube_v3/representations.rb +3273 -0
  484. data/generated/google/apis/youtube_v3/service.rb +4440 -0
  485. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  486. data/generated/google/apis/youtubereporting_v1/classes.rb +302 -0
  487. data/generated/google/apis/youtubereporting_v1/representations.rb +149 -0
  488. data/generated/google/apis/youtubereporting_v1/service.rb +385 -0
  489. data/google-api-client.gemspec +33 -0
  490. data/lib/cacerts.pem +2183 -0
  491. data/lib/google/api_client/auth/installed_app.rb +128 -0
  492. data/lib/google/api_client/auth/key_utils.rb +94 -0
  493. data/lib/google/api_client/auth/storage.rb +104 -0
  494. data/lib/google/api_client/auth/storages/file_store.rb +57 -0
  495. data/lib/google/api_client/auth/storages/redis_store.rb +59 -0
  496. data/lib/google/api_client/client_secrets.rb +177 -0
  497. data/lib/google/apis.rb +58 -0
  498. data/lib/google/apis/core/api_command.rb +146 -0
  499. data/lib/google/apis/core/base_service.rb +401 -0
  500. data/lib/google/apis/core/batch.rb +239 -0
  501. data/lib/google/apis/core/download.rb +108 -0
  502. data/lib/google/apis/core/hashable.rb +44 -0
  503. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  504. data/lib/google/apis/core/http_command.rb +332 -0
  505. data/lib/google/apis/core/json_representation.rb +145 -0
  506. data/lib/google/apis/core/logging.rb +30 -0
  507. data/lib/google/apis/core/multipart.rb +187 -0
  508. data/lib/google/apis/core/upload.rb +295 -0
  509. data/lib/google/apis/errors.rb +80 -0
  510. data/lib/google/apis/generator.rb +70 -0
  511. data/lib/google/apis/generator/annotator.rb +301 -0
  512. data/lib/google/apis/generator/helpers.rb +74 -0
  513. data/lib/google/apis/generator/model.rb +143 -0
  514. data/lib/google/apis/generator/template.rb +124 -0
  515. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  516. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  517. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  518. data/lib/google/apis/generator/templates/_representation_stub.tmpl +17 -0
  519. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  520. data/lib/google/apis/generator/templates/classes.rb.tmpl +29 -0
  521. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  522. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  523. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  524. data/lib/google/apis/options.rb +85 -0
  525. data/lib/google/apis/version.rb +39 -0
  526. data/rakelib/metrics.rake +22 -0
  527. data/rakelib/rubocop.rake +10 -0
  528. data/rakelib/spec.rake +11 -0
  529. data/rakelib/yard.rake +11 -0
  530. data/samples/cli/.env +4 -0
  531. data/samples/cli/Gemfile +7 -0
  532. data/samples/cli/README.md +51 -0
  533. data/samples/cli/google-api-samples +32 -0
  534. data/samples/cli/lib/base_cli.rb +95 -0
  535. data/samples/cli/lib/samples/analytics.rb +62 -0
  536. data/samples/cli/lib/samples/androidpublisher.rb +47 -0
  537. data/samples/cli/lib/samples/bigquery.rb +101 -0
  538. data/samples/cli/lib/samples/calendar.rb +83 -0
  539. data/samples/cli/lib/samples/drive.rb +82 -0
  540. data/samples/cli/lib/samples/gmail.rb +124 -0
  541. data/samples/cli/lib/samples/pubsub.rb +114 -0
  542. data/samples/cli/lib/samples/sheets.rb +61 -0
  543. data/samples/cli/lib/samples/translate.rb +44 -0
  544. data/samples/cli/lib/samples/you_tube.rb +44 -0
  545. data/samples/web/.env +2 -0
  546. data/samples/web/Gemfile +7 -0
  547. data/samples/web/README.md +44 -0
  548. data/samples/web/app.rb +120 -0
  549. data/samples/web/views/calendar.erb +34 -0
  550. data/samples/web/views/drive.erb +33 -0
  551. data/samples/web/views/home.erb +34 -0
  552. data/samples/web/views/layout.erb +40 -0
  553. data/sync.rb +71 -0
  554. data/third_party/hurley_patches.rb +103 -0
  555. metadata +735 -0
@@ -0,0 +1,49 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/slides_v1/service.rb'
16
+ require 'google/apis/slides_v1/classes.rb'
17
+ require 'google/apis/slides_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Google Slides API
22
+ #
23
+ # An API for creating and editing Google Slides presentations.
24
+ #
25
+ # @see https://developers.google.com/slides/
26
+ module SlidesV1
27
+ VERSION = 'V1'
28
+ REVISION = '20170118'
29
+
30
+ # View and manage the files in your Google Drive
31
+ AUTH_DRIVE = 'https://www.googleapis.com/auth/drive'
32
+
33
+ # View your Google Spreadsheets
34
+ AUTH_SPREADSHEETS_READONLY = 'https://www.googleapis.com/auth/spreadsheets.readonly'
35
+
36
+ # View and manage your Google Slides presentations
37
+ AUTH_PRESENTATIONS = 'https://www.googleapis.com/auth/presentations'
38
+
39
+ # View your Google Slides presentations
40
+ AUTH_PRESENTATIONS_READONLY = 'https://www.googleapis.com/auth/presentations.readonly'
41
+
42
+ # View the files in your Google Drive
43
+ AUTH_DRIVE_READONLY = 'https://www.googleapis.com/auth/drive.readonly'
44
+
45
+ # View and manage your spreadsheets in Google Drive
46
+ AUTH_SPREADSHEETS = 'https://www.googleapis.com/auth/spreadsheets'
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,4044 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module SlidesV1
24
+
25
+ # The stretched picture fill. The page or page element is filled entirely with
26
+ # the specified picture. The picture is stretched to fit its container.
27
+ class StretchedPictureFill
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Reading the content_url:
31
+ # An URL to a picture with a default lifetime of 30 minutes.
32
+ # This URL is tagged with the account of the requester. Anyone with the URL
33
+ # effectively accesses the picture as the original requester. Access to the
34
+ # picture may be lost if the presentation's sharing settings change.
35
+ # Writing the content_url:
36
+ # The picture is fetched once at insertion time and a copy is stored for
37
+ # display inside the presentation. Pictures must be less than 50MB in size,
38
+ # cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF
39
+ # format.
40
+ # Corresponds to the JSON property `contentUrl`
41
+ # @return [String]
42
+ attr_accessor :content_url
43
+
44
+ # A width and height.
45
+ # Corresponds to the JSON property `size`
46
+ # @return [Google::Apis::SlidesV1::Size]
47
+ attr_accessor :size
48
+
49
+ def initialize(**args)
50
+ update!(**args)
51
+ end
52
+
53
+ # Update properties of this object
54
+ def update!(**args)
55
+ @content_url = args[:content_url] if args.key?(:content_url)
56
+ @size = args[:size] if args.key?(:size)
57
+ end
58
+ end
59
+
60
+ # A PageElement kind representing an
61
+ # image.
62
+ class Image
63
+ include Google::Apis::Core::Hashable
64
+
65
+ # An URL to an image with a default lifetime of 30 minutes.
66
+ # This URL is tagged with the account of the requester. Anyone with the URL
67
+ # effectively accesses the image as the original requester. Access to the
68
+ # image may be lost if the presentation's sharing settings change.
69
+ # Corresponds to the JSON property `contentUrl`
70
+ # @return [String]
71
+ attr_accessor :content_url
72
+
73
+ # The properties of the Image.
74
+ # Corresponds to the JSON property `imageProperties`
75
+ # @return [Google::Apis::SlidesV1::ImageProperties]
76
+ attr_accessor :image_properties
77
+
78
+ def initialize(**args)
79
+ update!(**args)
80
+ end
81
+
82
+ # Update properties of this object
83
+ def update!(**args)
84
+ @content_url = args[:content_url] if args.key?(:content_url)
85
+ @image_properties = args[:image_properties] if args.key?(:image_properties)
86
+ end
87
+ end
88
+
89
+ # The properties of the Video.
90
+ class VideoProperties
91
+ include Google::Apis::Core::Hashable
92
+
93
+ # The outline of a PageElement.
94
+ # If these fields are unset, they may be inherited from a parent placeholder
95
+ # if it exists. If there is no parent, the fields will default to the value
96
+ # used for new page elements created in the Slides editor, which may depend on
97
+ # the page element kind.
98
+ # Corresponds to the JSON property `outline`
99
+ # @return [Google::Apis::SlidesV1::Outline]
100
+ attr_accessor :outline
101
+
102
+ def initialize(**args)
103
+ update!(**args)
104
+ end
105
+
106
+ # Update properties of this object
107
+ def update!(**args)
108
+ @outline = args[:outline] if args.key?(:outline)
109
+ end
110
+ end
111
+
112
+ # The crop properties of an object enclosed in a container. For example, an
113
+ # Image.
114
+ # The crop properties is represented by the offsets of four edges which define
115
+ # a crop rectangle. The offsets are measured in percentage from the
116
+ # corresponding edges of the object's original bounding rectangle towards
117
+ # inside, relative to the object's original dimensions.
118
+ # - If the offset is in the interval (0, 1), the corresponding edge of crop
119
+ # rectangle is positioned inside of the object's original bounding rectangle.
120
+ # - If the offset is negative or greater than 1, the corresponding edge of crop
121
+ # rectangle is positioned outside of the object's original bounding rectangle.
122
+ # - If the left edge of the crop rectangle is on the right side of its right
123
+ # edge, the object will be flipped horizontally.
124
+ # - If the top edge of the crop rectangle is below its bottom edge, the object
125
+ # will be flipped vertically.
126
+ # - If all offsets and rotation angle is 0, the object is not cropped.
127
+ # After cropping, the content in the crop rectangle will be stretched to fit
128
+ # its container.
129
+ class CropProperties
130
+ include Google::Apis::Core::Hashable
131
+
132
+ # The offset specifies the right edge of the crop rectangle that is located
133
+ # to the left of the original bounding rectangle right edge, relative to the
134
+ # object's original width.
135
+ # Corresponds to the JSON property `rightOffset`
136
+ # @return [Float]
137
+ attr_accessor :right_offset
138
+
139
+ # The rotation angle of the crop window around its center, in radians.
140
+ # Rotation angle is applied after the offset.
141
+ # Corresponds to the JSON property `angle`
142
+ # @return [Float]
143
+ attr_accessor :angle
144
+
145
+ # The offset specifies the left edge of the crop rectangle that is located to
146
+ # the right of the original bounding rectangle left edge, relative to the
147
+ # object's original width.
148
+ # Corresponds to the JSON property `leftOffset`
149
+ # @return [Float]
150
+ attr_accessor :left_offset
151
+
152
+ # The offset specifies the top edge of the crop rectangle that is located
153
+ # below the original bounding rectangle top edge, relative to the object's
154
+ # original height.
155
+ # Corresponds to the JSON property `topOffset`
156
+ # @return [Float]
157
+ attr_accessor :top_offset
158
+
159
+ # The offset specifies the bottom edge of the crop rectangle that is located
160
+ # above the original bounding rectangle bottom edge, relative to the object's
161
+ # original height.
162
+ # Corresponds to the JSON property `bottomOffset`
163
+ # @return [Float]
164
+ attr_accessor :bottom_offset
165
+
166
+ def initialize(**args)
167
+ update!(**args)
168
+ end
169
+
170
+ # Update properties of this object
171
+ def update!(**args)
172
+ @right_offset = args[:right_offset] if args.key?(:right_offset)
173
+ @angle = args[:angle] if args.key?(:angle)
174
+ @left_offset = args[:left_offset] if args.key?(:left_offset)
175
+ @top_offset = args[:top_offset] if args.key?(:top_offset)
176
+ @bottom_offset = args[:bottom_offset] if args.key?(:bottom_offset)
177
+ end
178
+ end
179
+
180
+ # A table range represents a reference to a subset of a table.
181
+ # It's important to note that the cells specified by a table range do not
182
+ # necessarily form a rectangle. For example, let's say we have a 3 x 3 table
183
+ # where all the cells of the last row are merged together. The table looks
184
+ # like this:
185
+ #
186
+ # [ ]
187
+ # A table range with location = (0, 0), row span = 3 and column span = 2
188
+ # specifies the following cells:
189
+ # x x
190
+ # [ x ]
191
+ class TableRange
192
+ include Google::Apis::Core::Hashable
193
+
194
+ # A location of a single table cell within a table.
195
+ # Corresponds to the JSON property `location`
196
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
197
+ attr_accessor :location
198
+
199
+ # The row span of the table range.
200
+ # Corresponds to the JSON property `rowSpan`
201
+ # @return [Fixnum]
202
+ attr_accessor :row_span
203
+
204
+ # The column span of the table range.
205
+ # Corresponds to the JSON property `columnSpan`
206
+ # @return [Fixnum]
207
+ attr_accessor :column_span
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @location = args[:location] if args.key?(:location)
216
+ @row_span = args[:row_span] if args.key?(:row_span)
217
+ @column_span = args[:column_span] if args.key?(:column_span)
218
+ end
219
+ end
220
+
221
+ # Update the styling of text in a Shape or
222
+ # Table.
223
+ class UpdateTextStyleRequest
224
+ include Google::Apis::Core::Hashable
225
+
226
+ # Represents the styling that can be applied to a TextRun.
227
+ # If this text is contained in a shape with a parent placeholder, then these
228
+ # text styles may be
229
+ # inherited from the parent. Which text styles are inherited depend on the
230
+ # nesting level of lists:
231
+ # * A text run in a paragraph that is not in a list will inherit its text style
232
+ # from the the newline character in the paragraph at the 0 nesting level of
233
+ # the list inside the parent placeholder.
234
+ # * A text run in a paragraph that is in a list will inherit its text style
235
+ # from the newline character in the paragraph at its corresponding nesting
236
+ # level of the list inside the parent placeholder.
237
+ # Inherited text styles are represented as unset fields in this message. If
238
+ # text is contained in a shape without a parent placeholder, unsetting these
239
+ # fields will revert the style to a value matching the defaults in the Slides
240
+ # editor.
241
+ # Corresponds to the JSON property `style`
242
+ # @return [Google::Apis::SlidesV1::TextStyle]
243
+ attr_accessor :style
244
+
245
+ # The object ID of the shape or table with the text to be styled.
246
+ # Corresponds to the JSON property `objectId`
247
+ # @return [String]
248
+ attr_accessor :object_id_prop
249
+
250
+ # The fields that should be updated.
251
+ # At least one field must be specified. The root `style` is implied and
252
+ # should not be specified. A single `"*"` can be used as short-hand for
253
+ # listing every field.
254
+ # For example to update the text style to bold, set `fields` to `"bold"`.
255
+ # To reset a property to its default value,
256
+ # include its field name in the field mask but leave the field itself unset.
257
+ # Corresponds to the JSON property `fields`
258
+ # @return [String]
259
+ attr_accessor :fields
260
+
261
+ # Specifies a contiguous range of an indexed collection, such as characters in
262
+ # text.
263
+ # Corresponds to the JSON property `textRange`
264
+ # @return [Google::Apis::SlidesV1::Range]
265
+ attr_accessor :text_range
266
+
267
+ # A location of a single table cell within a table.
268
+ # Corresponds to the JSON property `cellLocation`
269
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
270
+ attr_accessor :cell_location
271
+
272
+ def initialize(**args)
273
+ update!(**args)
274
+ end
275
+
276
+ # Update properties of this object
277
+ def update!(**args)
278
+ @style = args[:style] if args.key?(:style)
279
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
280
+ @fields = args[:fields] if args.key?(:fields)
281
+ @text_range = args[:text_range] if args.key?(:text_range)
282
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
283
+ end
284
+ end
285
+
286
+ # Inserts text into a shape or a table cell.
287
+ class InsertTextRequest
288
+ include Google::Apis::Core::Hashable
289
+
290
+ # The text to be inserted.
291
+ # Inserting a newline character will implicitly create a new
292
+ # ParagraphMarker at that index.
293
+ # The paragraph style of the new paragraph will be copied from the paragraph
294
+ # at the current insertion index, including lists and bullets.
295
+ # Text styles for inserted text will be determined automatically, generally
296
+ # preserving the styling of neighboring text. In most cases, the text will be
297
+ # added to the TextRun that exists at the
298
+ # insertion index.
299
+ # Some control characters (U+0000-U+0008, U+000C-U+001F) and characters
300
+ # from the Unicode Basic Multilingual Plane Private Use Area (U+E000-U+F8FF)
301
+ # will be stripped out of the inserted text.
302
+ # Corresponds to the JSON property `text`
303
+ # @return [String]
304
+ attr_accessor :text
305
+
306
+ # The object ID of the shape or table where the text will be inserted.
307
+ # Corresponds to the JSON property `objectId`
308
+ # @return [String]
309
+ attr_accessor :object_id_prop
310
+
311
+ # The index where the text will be inserted, in Unicode code units, based
312
+ # on TextElement indexes.
313
+ # The index is zero-based and is computed from the start of the string.
314
+ # The index may be adjusted to prevent insertions inside Unicode grapheme
315
+ # clusters. In these cases, the text will be inserted immediately after the
316
+ # grapheme cluster.
317
+ # Corresponds to the JSON property `insertionIndex`
318
+ # @return [Fixnum]
319
+ attr_accessor :insertion_index
320
+
321
+ # A location of a single table cell within a table.
322
+ # Corresponds to the JSON property `cellLocation`
323
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
324
+ attr_accessor :cell_location
325
+
326
+ def initialize(**args)
327
+ update!(**args)
328
+ end
329
+
330
+ # Update properties of this object
331
+ def update!(**args)
332
+ @text = args[:text] if args.key?(:text)
333
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
334
+ @insertion_index = args[:insertion_index] if args.key?(:insertion_index)
335
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
336
+ end
337
+ end
338
+
339
+ # An RGB color.
340
+ class RgbColor
341
+ include Google::Apis::Core::Hashable
342
+
343
+ # The green component of the color, from 0.0 to 1.0.
344
+ # Corresponds to the JSON property `green`
345
+ # @return [Float]
346
+ attr_accessor :green
347
+
348
+ # The blue component of the color, from 0.0 to 1.0.
349
+ # Corresponds to the JSON property `blue`
350
+ # @return [Float]
351
+ attr_accessor :blue
352
+
353
+ # The red component of the color, from 0.0 to 1.0.
354
+ # Corresponds to the JSON property `red`
355
+ # @return [Float]
356
+ attr_accessor :red
357
+
358
+ def initialize(**args)
359
+ update!(**args)
360
+ end
361
+
362
+ # Update properties of this object
363
+ def update!(**args)
364
+ @green = args[:green] if args.key?(:green)
365
+ @blue = args[:blue] if args.key?(:blue)
366
+ @red = args[:red] if args.key?(:red)
367
+ end
368
+ end
369
+
370
+ # Common properties for a page element.
371
+ # Note: When you initially create a
372
+ # PageElement, the API may modify
373
+ # the values of both `size` and `transform`, but the
374
+ # visual size will be unchanged.
375
+ class PageElementProperties
376
+ include Google::Apis::Core::Hashable
377
+
378
+ # A width and height.
379
+ # Corresponds to the JSON property `size`
380
+ # @return [Google::Apis::SlidesV1::Size]
381
+ attr_accessor :size
382
+
383
+ # The object ID of the page where the element is located.
384
+ # Corresponds to the JSON property `pageObjectId`
385
+ # @return [String]
386
+ attr_accessor :page_object_id
387
+
388
+ # AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]
389
+ # to transform source coordinates (x,y) into destination coordinates (x', y')
390
+ # according to:
391
+ # x' x = shear_y scale_y translate_y
392
+ # 1 [ 1 ]
393
+ # After transformation,
394
+ # x' = scale_x * x + shear_x * y + translate_x;
395
+ # y' = scale_y * y + shear_y * x + translate_y;
396
+ # This message is therefore composed of these six matrix elements.
397
+ # Corresponds to the JSON property `transform`
398
+ # @return [Google::Apis::SlidesV1::AffineTransform]
399
+ attr_accessor :transform
400
+
401
+ def initialize(**args)
402
+ update!(**args)
403
+ end
404
+
405
+ # Update properties of this object
406
+ def update!(**args)
407
+ @size = args[:size] if args.key?(:size)
408
+ @page_object_id = args[:page_object_id] if args.key?(:page_object_id)
409
+ @transform = args[:transform] if args.key?(:transform)
410
+ end
411
+ end
412
+
413
+ # Deletes text from a shape or a table cell.
414
+ class DeleteTextRequest
415
+ include Google::Apis::Core::Hashable
416
+
417
+ # The object ID of the shape or table from which the text will be deleted.
418
+ # Corresponds to the JSON property `objectId`
419
+ # @return [String]
420
+ attr_accessor :object_id_prop
421
+
422
+ # Specifies a contiguous range of an indexed collection, such as characters in
423
+ # text.
424
+ # Corresponds to the JSON property `textRange`
425
+ # @return [Google::Apis::SlidesV1::Range]
426
+ attr_accessor :text_range
427
+
428
+ # A location of a single table cell within a table.
429
+ # Corresponds to the JSON property `cellLocation`
430
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
431
+ attr_accessor :cell_location
432
+
433
+ def initialize(**args)
434
+ update!(**args)
435
+ end
436
+
437
+ # Update properties of this object
438
+ def update!(**args)
439
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
440
+ @text_range = args[:text_range] if args.key?(:text_range)
441
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
442
+ end
443
+ end
444
+
445
+ # Styles that apply to a whole paragraph.
446
+ # If this text is contained in a shape with a parent placeholder, then these
447
+ # paragraph styles may be
448
+ # inherited from the parent. Which paragraph styles are inherited depend on the
449
+ # nesting level of lists:
450
+ # * A paragraph not in a list will inherit its paragraph style from the
451
+ # paragraph at the 0 nesting level of the list inside the parent placeholder.
452
+ # * A paragraph in a list will inherit its paragraph style from the paragraph
453
+ # at its corresponding nesting level of the list inside the parent
454
+ # placeholder.
455
+ # Inherited paragraph styles are represented as unset fields in this message.
456
+ class ParagraphStyle
457
+ include Google::Apis::Core::Hashable
458
+
459
+ # The amount of space between lines, as a percentage of normal, where normal
460
+ # is represented as 100.0. If unset, the value is inherited from the parent.
461
+ # This property is read-only.
462
+ # Corresponds to the JSON property `lineSpacing`
463
+ # @return [Float]
464
+ attr_accessor :line_spacing
465
+
466
+ # The spacing mode for the paragraph. This property is read-only.
467
+ # Corresponds to the JSON property `spacingMode`
468
+ # @return [String]
469
+ attr_accessor :spacing_mode
470
+
471
+ # The text alignment for this paragraph. This property is read-only.
472
+ # Corresponds to the JSON property `alignment`
473
+ # @return [String]
474
+ attr_accessor :alignment
475
+
476
+ # A magnitude in a single direction in the specified units.
477
+ # Corresponds to the JSON property `spaceAbove`
478
+ # @return [Google::Apis::SlidesV1::Dimension]
479
+ attr_accessor :space_above
480
+
481
+ # The text direction of this paragraph. This property is read-only.
482
+ # Corresponds to the JSON property `direction`
483
+ # @return [String]
484
+ attr_accessor :direction
485
+
486
+ # A magnitude in a single direction in the specified units.
487
+ # Corresponds to the JSON property `indentEnd`
488
+ # @return [Google::Apis::SlidesV1::Dimension]
489
+ attr_accessor :indent_end
490
+
491
+ # A magnitude in a single direction in the specified units.
492
+ # Corresponds to the JSON property `indentFirstLine`
493
+ # @return [Google::Apis::SlidesV1::Dimension]
494
+ attr_accessor :indent_first_line
495
+
496
+ # A magnitude in a single direction in the specified units.
497
+ # Corresponds to the JSON property `indentStart`
498
+ # @return [Google::Apis::SlidesV1::Dimension]
499
+ attr_accessor :indent_start
500
+
501
+ # A magnitude in a single direction in the specified units.
502
+ # Corresponds to the JSON property `spaceBelow`
503
+ # @return [Google::Apis::SlidesV1::Dimension]
504
+ attr_accessor :space_below
505
+
506
+ def initialize(**args)
507
+ update!(**args)
508
+ end
509
+
510
+ # Update properties of this object
511
+ def update!(**args)
512
+ @line_spacing = args[:line_spacing] if args.key?(:line_spacing)
513
+ @spacing_mode = args[:spacing_mode] if args.key?(:spacing_mode)
514
+ @alignment = args[:alignment] if args.key?(:alignment)
515
+ @space_above = args[:space_above] if args.key?(:space_above)
516
+ @direction = args[:direction] if args.key?(:direction)
517
+ @indent_end = args[:indent_end] if args.key?(:indent_end)
518
+ @indent_first_line = args[:indent_first_line] if args.key?(:indent_first_line)
519
+ @indent_start = args[:indent_start] if args.key?(:indent_start)
520
+ @space_below = args[:space_below] if args.key?(:space_below)
521
+ end
522
+ end
523
+
524
+ # A page in a presentation.
525
+ class Page
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # The properties of Page that are only
529
+ # relevant for pages with page_type SLIDE.
530
+ # Corresponds to the JSON property `slideProperties`
531
+ # @return [Google::Apis::SlidesV1::SlideProperties]
532
+ attr_accessor :slide_properties
533
+
534
+ # The type of the page.
535
+ # Corresponds to the JSON property `pageType`
536
+ # @return [String]
537
+ attr_accessor :page_type
538
+
539
+ # The page elements rendered on the page.
540
+ # Corresponds to the JSON property `pageElements`
541
+ # @return [Array<Google::Apis::SlidesV1::PageElement>]
542
+ attr_accessor :page_elements
543
+
544
+ # The properties of the Page.
545
+ # The page will inherit properties from the parent page. Depending on the page
546
+ # type the hierarchy is defined in either
547
+ # SlideProperties or
548
+ # LayoutProperties.
549
+ # Corresponds to the JSON property `pageProperties`
550
+ # @return [Google::Apis::SlidesV1::PageProperties]
551
+ attr_accessor :page_properties
552
+
553
+ # The properties of Page are only
554
+ # relevant for pages with page_type LAYOUT.
555
+ # Corresponds to the JSON property `layoutProperties`
556
+ # @return [Google::Apis::SlidesV1::LayoutProperties]
557
+ attr_accessor :layout_properties
558
+
559
+ # The object ID for this page. Object IDs used by
560
+ # Page and
561
+ # PageElement share the same namespace.
562
+ # Corresponds to the JSON property `objectId`
563
+ # @return [String]
564
+ attr_accessor :object_id_prop
565
+
566
+ def initialize(**args)
567
+ update!(**args)
568
+ end
569
+
570
+ # Update properties of this object
571
+ def update!(**args)
572
+ @slide_properties = args[:slide_properties] if args.key?(:slide_properties)
573
+ @page_type = args[:page_type] if args.key?(:page_type)
574
+ @page_elements = args[:page_elements] if args.key?(:page_elements)
575
+ @page_properties = args[:page_properties] if args.key?(:page_properties)
576
+ @layout_properties = args[:layout_properties] if args.key?(:layout_properties)
577
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
578
+ end
579
+ end
580
+
581
+ # Update the properties of a Shape.
582
+ class UpdateShapePropertiesRequest
583
+ include Google::Apis::Core::Hashable
584
+
585
+ # The properties of a Shape.
586
+ # If the shape is a placeholder shape as determined by the
587
+ # placeholder field, then these
588
+ # properties may be inherited from a parent placeholder shape.
589
+ # Determining the rendered value of the property depends on the corresponding
590
+ # property_state field value.
591
+ # Corresponds to the JSON property `shapeProperties`
592
+ # @return [Google::Apis::SlidesV1::ShapeProperties]
593
+ attr_accessor :shape_properties
594
+
595
+ # The object ID of the shape the updates are applied to.
596
+ # Corresponds to the JSON property `objectId`
597
+ # @return [String]
598
+ attr_accessor :object_id_prop
599
+
600
+ # The fields that should be updated.
601
+ # At least one field must be specified. The root `shapeProperties` is
602
+ # implied and should not be specified. A single `"*"` can be used as
603
+ # short-hand for listing every field.
604
+ # For example to update the shape background solid fill color, set `fields`
605
+ # to `"shapeBackgroundFill.solidFill.color"`.
606
+ # To reset a property to its default value, include its field name in the
607
+ # field mask but leave the field itself unset.
608
+ # Corresponds to the JSON property `fields`
609
+ # @return [String]
610
+ attr_accessor :fields
611
+
612
+ def initialize(**args)
613
+ update!(**args)
614
+ end
615
+
616
+ # Update properties of this object
617
+ def update!(**args)
618
+ @shape_properties = args[:shape_properties] if args.key?(:shape_properties)
619
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
620
+ @fields = args[:fields] if args.key?(:fields)
621
+ end
622
+ end
623
+
624
+ # The result of creating a line.
625
+ class CreateLineResponse
626
+ include Google::Apis::Core::Hashable
627
+
628
+ # The object ID of the created line.
629
+ # Corresponds to the JSON property `objectId`
630
+ # @return [String]
631
+ attr_accessor :object_id_prop
632
+
633
+ def initialize(**args)
634
+ update!(**args)
635
+ end
636
+
637
+ # Update properties of this object
638
+ def update!(**args)
639
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
640
+ end
641
+ end
642
+
643
+ # A Google Slides presentation.
644
+ class Presentation
645
+ include Google::Apis::Core::Hashable
646
+
647
+ # The title of the presentation.
648
+ # Corresponds to the JSON property `title`
649
+ # @return [String]
650
+ attr_accessor :title
651
+
652
+ # The locale of the presentation, as an IETF BCP 47 language tag.
653
+ # Corresponds to the JSON property `locale`
654
+ # @return [String]
655
+ attr_accessor :locale
656
+
657
+ # The slides in the presentation.
658
+ # A slide inherits properties from a slide layout.
659
+ # Corresponds to the JSON property `slides`
660
+ # @return [Array<Google::Apis::SlidesV1::Page>]
661
+ attr_accessor :slides
662
+
663
+ # The slide masters in the presentation. A slide master contains all common
664
+ # page elements and the common properties for a set of layouts. They serve
665
+ # three purposes:
666
+ # - Placeholder shapes on a master contain the default text styles and shape
667
+ # properties of all placeholder shapes on pages that use that master.
668
+ # - The master page properties define the common page properties inherited by
669
+ # its layouts.
670
+ # - Any other shapes on the master slide will appear on all slides using that
671
+ # master, regardless of their layout.
672
+ # Corresponds to the JSON property `masters`
673
+ # @return [Array<Google::Apis::SlidesV1::Page>]
674
+ attr_accessor :masters
675
+
676
+ # A width and height.
677
+ # Corresponds to the JSON property `pageSize`
678
+ # @return [Google::Apis::SlidesV1::Size]
679
+ attr_accessor :page_size
680
+
681
+ # The ID of the presentation.
682
+ # Corresponds to the JSON property `presentationId`
683
+ # @return [String]
684
+ attr_accessor :presentation_id
685
+
686
+ # The layouts in the presentation. A layout is a template that determines
687
+ # how content is arranged and styled on the slides that inherit from that
688
+ # layout.
689
+ # Corresponds to the JSON property `layouts`
690
+ # @return [Array<Google::Apis::SlidesV1::Page>]
691
+ attr_accessor :layouts
692
+
693
+ def initialize(**args)
694
+ update!(**args)
695
+ end
696
+
697
+ # Update properties of this object
698
+ def update!(**args)
699
+ @title = args[:title] if args.key?(:title)
700
+ @locale = args[:locale] if args.key?(:locale)
701
+ @slides = args[:slides] if args.key?(:slides)
702
+ @masters = args[:masters] if args.key?(:masters)
703
+ @page_size = args[:page_size] if args.key?(:page_size)
704
+ @presentation_id = args[:presentation_id] if args.key?(:presentation_id)
705
+ @layouts = args[:layouts] if args.key?(:layouts)
706
+ end
707
+ end
708
+
709
+ # Creates an image.
710
+ class CreateImageRequest
711
+ include Google::Apis::Core::Hashable
712
+
713
+ # The image URL.
714
+ # The image is fetched once at insertion time and a copy is stored for
715
+ # display inside the presentation. Images must be less than 50MB in size,
716
+ # cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF
717
+ # format.
718
+ # Corresponds to the JSON property `url`
719
+ # @return [String]
720
+ attr_accessor :url
721
+
722
+ # A user-supplied object ID.
723
+ # If you specify an ID, it must be unique among all pages and page elements
724
+ # in the presentation. The ID must start with an alphanumeric character or an
725
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
726
+ # may include those as well as a hyphen or colon (matches regex
727
+ # `[a-zA-Z0-9_-:]`).
728
+ # The length of the ID must not be less than 5 or greater than 50.
729
+ # If you don't specify an ID, a unique one is generated.
730
+ # Corresponds to the JSON property `objectId`
731
+ # @return [String]
732
+ attr_accessor :object_id_prop
733
+
734
+ # Common properties for a page element.
735
+ # Note: When you initially create a
736
+ # PageElement, the API may modify
737
+ # the values of both `size` and `transform`, but the
738
+ # visual size will be unchanged.
739
+ # Corresponds to the JSON property `elementProperties`
740
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
741
+ attr_accessor :element_properties
742
+
743
+ def initialize(**args)
744
+ update!(**args)
745
+ end
746
+
747
+ # Update properties of this object
748
+ def update!(**args)
749
+ @url = args[:url] if args.key?(:url)
750
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
751
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
752
+ end
753
+ end
754
+
755
+ # The properties of Page that are only
756
+ # relevant for pages with page_type SLIDE.
757
+ class SlideProperties
758
+ include Google::Apis::Core::Hashable
759
+
760
+ # The object ID of the layout that this slide is based on.
761
+ # Corresponds to the JSON property `layoutObjectId`
762
+ # @return [String]
763
+ attr_accessor :layout_object_id
764
+
765
+ # The object ID of the master that this slide is based on.
766
+ # Corresponds to the JSON property `masterObjectId`
767
+ # @return [String]
768
+ attr_accessor :master_object_id
769
+
770
+ def initialize(**args)
771
+ update!(**args)
772
+ end
773
+
774
+ # Update properties of this object
775
+ def update!(**args)
776
+ @layout_object_id = args[:layout_object_id] if args.key?(:layout_object_id)
777
+ @master_object_id = args[:master_object_id] if args.key?(:master_object_id)
778
+ end
779
+ end
780
+
781
+ # Updates the transform of a page element.
782
+ class UpdatePageElementTransformRequest
783
+ include Google::Apis::Core::Hashable
784
+
785
+ # The apply mode of the transform update.
786
+ # Corresponds to the JSON property `applyMode`
787
+ # @return [String]
788
+ attr_accessor :apply_mode
789
+
790
+ # The object ID of the page element to update.
791
+ # Corresponds to the JSON property `objectId`
792
+ # @return [String]
793
+ attr_accessor :object_id_prop
794
+
795
+ # AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]
796
+ # to transform source coordinates (x,y) into destination coordinates (x', y')
797
+ # according to:
798
+ # x' x = shear_y scale_y translate_y
799
+ # 1 [ 1 ]
800
+ # After transformation,
801
+ # x' = scale_x * x + shear_x * y + translate_x;
802
+ # y' = scale_y * y + shear_y * x + translate_y;
803
+ # This message is therefore composed of these six matrix elements.
804
+ # Corresponds to the JSON property `transform`
805
+ # @return [Google::Apis::SlidesV1::AffineTransform]
806
+ attr_accessor :transform
807
+
808
+ def initialize(**args)
809
+ update!(**args)
810
+ end
811
+
812
+ # Update properties of this object
813
+ def update!(**args)
814
+ @apply_mode = args[:apply_mode] if args.key?(:apply_mode)
815
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
816
+ @transform = args[:transform] if args.key?(:transform)
817
+ end
818
+ end
819
+
820
+ # A List describes the look and feel of bullets belonging to paragraphs
821
+ # associated with a list. A paragraph that is part of a list has an implicit
822
+ # reference to that list's ID.
823
+ class List
824
+ include Google::Apis::Core::Hashable
825
+
826
+ # A map of nesting levels to the properties of bullets at the associated
827
+ # level. A list has at most nine levels of nesting, so the possible values
828
+ # for the keys of this map are 0 through 8, inclusive.
829
+ # Corresponds to the JSON property `nestingLevel`
830
+ # @return [Hash<String,Google::Apis::SlidesV1::NestingLevel>]
831
+ attr_accessor :nesting_level
832
+
833
+ # The ID of the list.
834
+ # Corresponds to the JSON property `listId`
835
+ # @return [String]
836
+ attr_accessor :list_id
837
+
838
+ def initialize(**args)
839
+ update!(**args)
840
+ end
841
+
842
+ # Update properties of this object
843
+ def update!(**args)
844
+ @nesting_level = args[:nesting_level] if args.key?(:nesting_level)
845
+ @list_id = args[:list_id] if args.key?(:list_id)
846
+ end
847
+ end
848
+
849
+ # The result of creating a video.
850
+ class CreateVideoResponse
851
+ include Google::Apis::Core::Hashable
852
+
853
+ # The object ID of the created video.
854
+ # Corresponds to the JSON property `objectId`
855
+ # @return [String]
856
+ attr_accessor :object_id_prop
857
+
858
+ def initialize(**args)
859
+ update!(**args)
860
+ end
861
+
862
+ # Update properties of this object
863
+ def update!(**args)
864
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
865
+ end
866
+ end
867
+
868
+ # Inserts rows into a table.
869
+ class InsertTableRowsRequest
870
+ include Google::Apis::Core::Hashable
871
+
872
+ # The table to insert rows into.
873
+ # Corresponds to the JSON property `tableObjectId`
874
+ # @return [String]
875
+ attr_accessor :table_object_id
876
+
877
+ # Whether to insert new rows below the reference cell location.
878
+ # - `True`: insert below the cell.
879
+ # - `False`: insert above the cell.
880
+ # Corresponds to the JSON property `insertBelow`
881
+ # @return [Boolean]
882
+ attr_accessor :insert_below
883
+ alias_method :insert_below?, :insert_below
884
+
885
+ # A location of a single table cell within a table.
886
+ # Corresponds to the JSON property `cellLocation`
887
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
888
+ attr_accessor :cell_location
889
+
890
+ # The number of rows to be inserted. Maximum 20 per request.
891
+ # Corresponds to the JSON property `number`
892
+ # @return [Fixnum]
893
+ attr_accessor :number
894
+
895
+ def initialize(**args)
896
+ update!(**args)
897
+ end
898
+
899
+ # Update properties of this object
900
+ def update!(**args)
901
+ @table_object_id = args[:table_object_id] if args.key?(:table_object_id)
902
+ @insert_below = args[:insert_below] if args.key?(:insert_below)
903
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
904
+ @number = args[:number] if args.key?(:number)
905
+ end
906
+ end
907
+
908
+ # Update the properties of a Video.
909
+ class UpdateVideoPropertiesRequest
910
+ include Google::Apis::Core::Hashable
911
+
912
+ # The properties of the Video.
913
+ # Corresponds to the JSON property `videoProperties`
914
+ # @return [Google::Apis::SlidesV1::VideoProperties]
915
+ attr_accessor :video_properties
916
+
917
+ # The object ID of the video the updates are applied to.
918
+ # Corresponds to the JSON property `objectId`
919
+ # @return [String]
920
+ attr_accessor :object_id_prop
921
+
922
+ # The fields that should be updated.
923
+ # At least one field must be specified. The root `videoProperties` is
924
+ # implied and should not be specified. A single `"*"` can be used as
925
+ # short-hand for listing every field.
926
+ # For example to update the video outline color, set `fields` to
927
+ # `"outline.outlineFill.solidFill.color"`.
928
+ # To reset a property to its default value, include its field name in the
929
+ # field mask but leave the field itself unset.
930
+ # Corresponds to the JSON property `fields`
931
+ # @return [String]
932
+ attr_accessor :fields
933
+
934
+ def initialize(**args)
935
+ update!(**args)
936
+ end
937
+
938
+ # Update properties of this object
939
+ def update!(**args)
940
+ @video_properties = args[:video_properties] if args.key?(:video_properties)
941
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
942
+ @fields = args[:fields] if args.key?(:fields)
943
+ end
944
+ end
945
+
946
+ # A themeable solid color value.
947
+ class OpaqueColor
948
+ include Google::Apis::Core::Hashable
949
+
950
+ # An RGB color.
951
+ # Corresponds to the JSON property `rgbColor`
952
+ # @return [Google::Apis::SlidesV1::RgbColor]
953
+ attr_accessor :rgb_color
954
+
955
+ # An opaque theme color.
956
+ # Corresponds to the JSON property `themeColor`
957
+ # @return [String]
958
+ attr_accessor :theme_color
959
+
960
+ def initialize(**args)
961
+ update!(**args)
962
+ end
963
+
964
+ # Update properties of this object
965
+ def update!(**args)
966
+ @rgb_color = args[:rgb_color] if args.key?(:rgb_color)
967
+ @theme_color = args[:theme_color] if args.key?(:theme_color)
968
+ end
969
+ end
970
+
971
+ # A single response from an update.
972
+ class Response
973
+ include Google::Apis::Core::Hashable
974
+
975
+ # The result of creating a table.
976
+ # Corresponds to the JSON property `createTable`
977
+ # @return [Google::Apis::SlidesV1::CreateTableResponse]
978
+ attr_accessor :create_table
979
+
980
+ # The result of replacing text.
981
+ # Corresponds to the JSON property `replaceAllText`
982
+ # @return [Google::Apis::SlidesV1::ReplaceAllTextResponse]
983
+ attr_accessor :replace_all_text
984
+
985
+ # The result of creating a line.
986
+ # Corresponds to the JSON property `createLine`
987
+ # @return [Google::Apis::SlidesV1::CreateLineResponse]
988
+ attr_accessor :create_line
989
+
990
+ # The result of creating an embedded Google Sheets chart.
991
+ # Corresponds to the JSON property `createSheetsChart`
992
+ # @return [Google::Apis::SlidesV1::CreateSheetsChartResponse]
993
+ attr_accessor :create_sheets_chart
994
+
995
+ # The result of creating a slide.
996
+ # Corresponds to the JSON property `createSlide`
997
+ # @return [Google::Apis::SlidesV1::CreateSlideResponse]
998
+ attr_accessor :create_slide
999
+
1000
+ # The result of creating a shape.
1001
+ # Corresponds to the JSON property `createShape`
1002
+ # @return [Google::Apis::SlidesV1::CreateShapeResponse]
1003
+ attr_accessor :create_shape
1004
+
1005
+ # The result of replacing shapes with an image.
1006
+ # Corresponds to the JSON property `replaceAllShapesWithImage`
1007
+ # @return [Google::Apis::SlidesV1::ReplaceAllShapesWithImageResponse]
1008
+ attr_accessor :replace_all_shapes_with_image
1009
+
1010
+ # The result of creating a video.
1011
+ # Corresponds to the JSON property `createVideo`
1012
+ # @return [Google::Apis::SlidesV1::CreateVideoResponse]
1013
+ attr_accessor :create_video
1014
+
1015
+ # The result of creating an image.
1016
+ # Corresponds to the JSON property `createImage`
1017
+ # @return [Google::Apis::SlidesV1::CreateImageResponse]
1018
+ attr_accessor :create_image
1019
+
1020
+ # The response of duplicating an object.
1021
+ # Corresponds to the JSON property `duplicateObject`
1022
+ # @return [Google::Apis::SlidesV1::DuplicateObjectResponse]
1023
+ attr_accessor :duplicate_object
1024
+
1025
+ def initialize(**args)
1026
+ update!(**args)
1027
+ end
1028
+
1029
+ # Update properties of this object
1030
+ def update!(**args)
1031
+ @create_table = args[:create_table] if args.key?(:create_table)
1032
+ @replace_all_text = args[:replace_all_text] if args.key?(:replace_all_text)
1033
+ @create_line = args[:create_line] if args.key?(:create_line)
1034
+ @create_sheets_chart = args[:create_sheets_chart] if args.key?(:create_sheets_chart)
1035
+ @create_slide = args[:create_slide] if args.key?(:create_slide)
1036
+ @create_shape = args[:create_shape] if args.key?(:create_shape)
1037
+ @replace_all_shapes_with_image = args[:replace_all_shapes_with_image] if args.key?(:replace_all_shapes_with_image)
1038
+ @create_video = args[:create_video] if args.key?(:create_video)
1039
+ @create_image = args[:create_image] if args.key?(:create_image)
1040
+ @duplicate_object = args[:duplicate_object] if args.key?(:duplicate_object)
1041
+ end
1042
+ end
1043
+
1044
+ # The properties of the Line.
1045
+ # When unset, these fields default to values that match the appearance of
1046
+ # new lines created in the Slides editor.
1047
+ class LineProperties
1048
+ include Google::Apis::Core::Hashable
1049
+
1050
+ # A magnitude in a single direction in the specified units.
1051
+ # Corresponds to the JSON property `weight`
1052
+ # @return [Google::Apis::SlidesV1::Dimension]
1053
+ attr_accessor :weight
1054
+
1055
+ # The style of the arrow at the end of the line.
1056
+ # Corresponds to the JSON property `endArrow`
1057
+ # @return [String]
1058
+ attr_accessor :end_arrow
1059
+
1060
+ # A hypertext link.
1061
+ # Corresponds to the JSON property `link`
1062
+ # @return [Google::Apis::SlidesV1::Link]
1063
+ attr_accessor :link
1064
+
1065
+ # The fill of the line.
1066
+ # Corresponds to the JSON property `lineFill`
1067
+ # @return [Google::Apis::SlidesV1::LineFill]
1068
+ attr_accessor :line_fill
1069
+
1070
+ # The dash style of the line.
1071
+ # Corresponds to the JSON property `dashStyle`
1072
+ # @return [String]
1073
+ attr_accessor :dash_style
1074
+
1075
+ # The style of the arrow at the beginning of the line.
1076
+ # Corresponds to the JSON property `startArrow`
1077
+ # @return [String]
1078
+ attr_accessor :start_arrow
1079
+
1080
+ def initialize(**args)
1081
+ update!(**args)
1082
+ end
1083
+
1084
+ # Update properties of this object
1085
+ def update!(**args)
1086
+ @weight = args[:weight] if args.key?(:weight)
1087
+ @end_arrow = args[:end_arrow] if args.key?(:end_arrow)
1088
+ @link = args[:link] if args.key?(:link)
1089
+ @line_fill = args[:line_fill] if args.key?(:line_fill)
1090
+ @dash_style = args[:dash_style] if args.key?(:dash_style)
1091
+ @start_arrow = args[:start_arrow] if args.key?(:start_arrow)
1092
+ end
1093
+ end
1094
+
1095
+ # A PageElement kind representing a
1096
+ # table.
1097
+ class Table
1098
+ include Google::Apis::Core::Hashable
1099
+
1100
+ # Number of columns in the table.
1101
+ # Corresponds to the JSON property `columns`
1102
+ # @return [Fixnum]
1103
+ attr_accessor :columns
1104
+
1105
+ # Properties of each column.
1106
+ # Corresponds to the JSON property `tableColumns`
1107
+ # @return [Array<Google::Apis::SlidesV1::TableColumnProperties>]
1108
+ attr_accessor :table_columns
1109
+
1110
+ # Number of rows in the table.
1111
+ # Corresponds to the JSON property `rows`
1112
+ # @return [Fixnum]
1113
+ attr_accessor :rows
1114
+
1115
+ # Properties and contents of each row.
1116
+ # Cells that span multiple rows are contained in only one of these rows and
1117
+ # have a row_span greater
1118
+ # than 1.
1119
+ # Corresponds to the JSON property `tableRows`
1120
+ # @return [Array<Google::Apis::SlidesV1::TableRow>]
1121
+ attr_accessor :table_rows
1122
+
1123
+ def initialize(**args)
1124
+ update!(**args)
1125
+ end
1126
+
1127
+ # Update properties of this object
1128
+ def update!(**args)
1129
+ @columns = args[:columns] if args.key?(:columns)
1130
+ @table_columns = args[:table_columns] if args.key?(:table_columns)
1131
+ @rows = args[:rows] if args.key?(:rows)
1132
+ @table_rows = args[:table_rows] if args.key?(:table_rows)
1133
+ end
1134
+ end
1135
+
1136
+ # Contains properties describing the look and feel of a list bullet at a given
1137
+ # level of nesting.
1138
+ class NestingLevel
1139
+ include Google::Apis::Core::Hashable
1140
+
1141
+ # Represents the styling that can be applied to a TextRun.
1142
+ # If this text is contained in a shape with a parent placeholder, then these
1143
+ # text styles may be
1144
+ # inherited from the parent. Which text styles are inherited depend on the
1145
+ # nesting level of lists:
1146
+ # * A text run in a paragraph that is not in a list will inherit its text style
1147
+ # from the the newline character in the paragraph at the 0 nesting level of
1148
+ # the list inside the parent placeholder.
1149
+ # * A text run in a paragraph that is in a list will inherit its text style
1150
+ # from the newline character in the paragraph at its corresponding nesting
1151
+ # level of the list inside the parent placeholder.
1152
+ # Inherited text styles are represented as unset fields in this message. If
1153
+ # text is contained in a shape without a parent placeholder, unsetting these
1154
+ # fields will revert the style to a value matching the defaults in the Slides
1155
+ # editor.
1156
+ # Corresponds to the JSON property `bulletStyle`
1157
+ # @return [Google::Apis::SlidesV1::TextStyle]
1158
+ attr_accessor :bullet_style
1159
+
1160
+ def initialize(**args)
1161
+ update!(**args)
1162
+ end
1163
+
1164
+ # Update properties of this object
1165
+ def update!(**args)
1166
+ @bullet_style = args[:bullet_style] if args.key?(:bullet_style)
1167
+ end
1168
+ end
1169
+
1170
+ # The response of duplicating an object.
1171
+ class DuplicateObjectResponse
1172
+ include Google::Apis::Core::Hashable
1173
+
1174
+ # The ID of the new duplicate object.
1175
+ # Corresponds to the JSON property `objectId`
1176
+ # @return [String]
1177
+ attr_accessor :object_id_prop
1178
+
1179
+ def initialize(**args)
1180
+ update!(**args)
1181
+ end
1182
+
1183
+ # Update properties of this object
1184
+ def update!(**args)
1185
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1186
+ end
1187
+ end
1188
+
1189
+ # Refreshes an embedded Google Sheets chart by replacing it with the latest
1190
+ # version of the chart from Google Sheets.
1191
+ # NOTE: Refreshing charts requires at least one of the spreadsheets.readonly,
1192
+ # spreadsheets, drive.readonly, or drive OAuth scopes.
1193
+ class RefreshSheetsChartRequest
1194
+ include Google::Apis::Core::Hashable
1195
+
1196
+ # The object ID of the chart to refresh.
1197
+ # Corresponds to the JSON property `objectId`
1198
+ # @return [String]
1199
+ attr_accessor :object_id_prop
1200
+
1201
+ def initialize(**args)
1202
+ update!(**args)
1203
+ end
1204
+
1205
+ # Update properties of this object
1206
+ def update!(**args)
1207
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1208
+ end
1209
+ end
1210
+
1211
+ # A location of a single table cell within a table.
1212
+ class TableCellLocation
1213
+ include Google::Apis::Core::Hashable
1214
+
1215
+ # The 0-based row index.
1216
+ # Corresponds to the JSON property `rowIndex`
1217
+ # @return [Fixnum]
1218
+ attr_accessor :row_index
1219
+
1220
+ # The 0-based column index.
1221
+ # Corresponds to the JSON property `columnIndex`
1222
+ # @return [Fixnum]
1223
+ attr_accessor :column_index
1224
+
1225
+ def initialize(**args)
1226
+ update!(**args)
1227
+ end
1228
+
1229
+ # Update properties of this object
1230
+ def update!(**args)
1231
+ @row_index = args[:row_index] if args.key?(:row_index)
1232
+ @column_index = args[:column_index] if args.key?(:column_index)
1233
+ end
1234
+ end
1235
+
1236
+ # The general text content. The text must reside in a compatible shape (e.g.
1237
+ # text box or rectangle) or a table cell in a page.
1238
+ class TextContent
1239
+ include Google::Apis::Core::Hashable
1240
+
1241
+ # The bulleted lists contained in this text, keyed by list ID.
1242
+ # Corresponds to the JSON property `lists`
1243
+ # @return [Hash<String,Google::Apis::SlidesV1::List>]
1244
+ attr_accessor :lists
1245
+
1246
+ # The text contents broken down into its component parts, including styling
1247
+ # information. This property is read-only.
1248
+ # Corresponds to the JSON property `textElements`
1249
+ # @return [Array<Google::Apis::SlidesV1::TextElement>]
1250
+ attr_accessor :text_elements
1251
+
1252
+ def initialize(**args)
1253
+ update!(**args)
1254
+ end
1255
+
1256
+ # Update properties of this object
1257
+ def update!(**args)
1258
+ @lists = args[:lists] if args.key?(:lists)
1259
+ @text_elements = args[:text_elements] if args.key?(:text_elements)
1260
+ end
1261
+ end
1262
+
1263
+ # A visual element rendered on a page.
1264
+ class PageElement
1265
+ include Google::Apis::Core::Hashable
1266
+
1267
+ # The description of the page element. Combined with title to display alt
1268
+ # text.
1269
+ # Corresponds to the JSON property `description`
1270
+ # @return [String]
1271
+ attr_accessor :description
1272
+
1273
+ # The title of the page element. Combined with description to display alt
1274
+ # text.
1275
+ # Corresponds to the JSON property `title`
1276
+ # @return [String]
1277
+ attr_accessor :title
1278
+
1279
+ # AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]
1280
+ # to transform source coordinates (x,y) into destination coordinates (x', y')
1281
+ # according to:
1282
+ # x' x = shear_y scale_y translate_y
1283
+ # 1 [ 1 ]
1284
+ # After transformation,
1285
+ # x' = scale_x * x + shear_x * y + translate_x;
1286
+ # y' = scale_y * y + shear_y * x + translate_y;
1287
+ # This message is therefore composed of these six matrix elements.
1288
+ # Corresponds to the JSON property `transform`
1289
+ # @return [Google::Apis::SlidesV1::AffineTransform]
1290
+ attr_accessor :transform
1291
+
1292
+ # A PageElement kind representing a
1293
+ # video.
1294
+ # Corresponds to the JSON property `video`
1295
+ # @return [Google::Apis::SlidesV1::Video]
1296
+ attr_accessor :video
1297
+
1298
+ # A PageElement kind representing
1299
+ # a linked chart embedded from Google Sheets.
1300
+ # Corresponds to the JSON property `sheetsChart`
1301
+ # @return [Google::Apis::SlidesV1::SheetsChart]
1302
+ attr_accessor :sheets_chart
1303
+
1304
+ # A PageElement kind representing a
1305
+ # line, curved connector, or bent connector.
1306
+ # Corresponds to the JSON property `line`
1307
+ # @return [Google::Apis::SlidesV1::Line]
1308
+ attr_accessor :line
1309
+
1310
+ # A PageElement kind representing a
1311
+ # table.
1312
+ # Corresponds to the JSON property `table`
1313
+ # @return [Google::Apis::SlidesV1::Table]
1314
+ attr_accessor :table
1315
+
1316
+ # A PageElement kind representing
1317
+ # word art.
1318
+ # Corresponds to the JSON property `wordArt`
1319
+ # @return [Google::Apis::SlidesV1::WordArt]
1320
+ attr_accessor :word_art
1321
+
1322
+ # A PageElement kind representing a
1323
+ # generic shape that does not have a more specific classification.
1324
+ # Corresponds to the JSON property `shape`
1325
+ # @return [Google::Apis::SlidesV1::Shape]
1326
+ attr_accessor :shape
1327
+
1328
+ # A PageElement kind representing a
1329
+ # joined collection of PageElements.
1330
+ # Corresponds to the JSON property `elementGroup`
1331
+ # @return [Google::Apis::SlidesV1::Group]
1332
+ attr_accessor :element_group
1333
+
1334
+ # A PageElement kind representing an
1335
+ # image.
1336
+ # Corresponds to the JSON property `image`
1337
+ # @return [Google::Apis::SlidesV1::Image]
1338
+ attr_accessor :image
1339
+
1340
+ # The object ID for this page element. Object IDs used by
1341
+ # google.apps.slides.v1.Page and
1342
+ # google.apps.slides.v1.PageElement share the same namespace.
1343
+ # Corresponds to the JSON property `objectId`
1344
+ # @return [String]
1345
+ attr_accessor :object_id_prop
1346
+
1347
+ # A width and height.
1348
+ # Corresponds to the JSON property `size`
1349
+ # @return [Google::Apis::SlidesV1::Size]
1350
+ attr_accessor :size
1351
+
1352
+ def initialize(**args)
1353
+ update!(**args)
1354
+ end
1355
+
1356
+ # Update properties of this object
1357
+ def update!(**args)
1358
+ @description = args[:description] if args.key?(:description)
1359
+ @title = args[:title] if args.key?(:title)
1360
+ @transform = args[:transform] if args.key?(:transform)
1361
+ @video = args[:video] if args.key?(:video)
1362
+ @sheets_chart = args[:sheets_chart] if args.key?(:sheets_chart)
1363
+ @line = args[:line] if args.key?(:line)
1364
+ @table = args[:table] if args.key?(:table)
1365
+ @word_art = args[:word_art] if args.key?(:word_art)
1366
+ @shape = args[:shape] if args.key?(:shape)
1367
+ @element_group = args[:element_group] if args.key?(:element_group)
1368
+ @image = args[:image] if args.key?(:image)
1369
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1370
+ @size = args[:size] if args.key?(:size)
1371
+ end
1372
+ end
1373
+
1374
+ # Updates the properties of a Page.
1375
+ class UpdatePagePropertiesRequest
1376
+ include Google::Apis::Core::Hashable
1377
+
1378
+ # The object ID of the page the update is applied to.
1379
+ # Corresponds to the JSON property `objectId`
1380
+ # @return [String]
1381
+ attr_accessor :object_id_prop
1382
+
1383
+ # The fields that should be updated.
1384
+ # At least one field must be specified. The root `pageProperties` is
1385
+ # implied and should not be specified. A single `"*"` can be used as
1386
+ # short-hand for listing every field.
1387
+ # For example to update the page background solid fill color, set `fields`
1388
+ # to `"pageBackgroundFill.solidFill.color"`.
1389
+ # To reset a property to its default value, include its field name in the
1390
+ # field mask but leave the field itself unset.
1391
+ # Corresponds to the JSON property `fields`
1392
+ # @return [String]
1393
+ attr_accessor :fields
1394
+
1395
+ # The properties of the Page.
1396
+ # The page will inherit properties from the parent page. Depending on the page
1397
+ # type the hierarchy is defined in either
1398
+ # SlideProperties or
1399
+ # LayoutProperties.
1400
+ # Corresponds to the JSON property `pageProperties`
1401
+ # @return [Google::Apis::SlidesV1::PageProperties]
1402
+ attr_accessor :page_properties
1403
+
1404
+ def initialize(**args)
1405
+ update!(**args)
1406
+ end
1407
+
1408
+ # Update properties of this object
1409
+ def update!(**args)
1410
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1411
+ @fields = args[:fields] if args.key?(:fields)
1412
+ @page_properties = args[:page_properties] if args.key?(:page_properties)
1413
+ end
1414
+ end
1415
+
1416
+ # Update the properties of a TableCell.
1417
+ class UpdateTableCellPropertiesRequest
1418
+ include Google::Apis::Core::Hashable
1419
+
1420
+ # The object ID of the table.
1421
+ # Corresponds to the JSON property `objectId`
1422
+ # @return [String]
1423
+ attr_accessor :object_id_prop
1424
+
1425
+ # A table range represents a reference to a subset of a table.
1426
+ # It's important to note that the cells specified by a table range do not
1427
+ # necessarily form a rectangle. For example, let's say we have a 3 x 3 table
1428
+ # where all the cells of the last row are merged together. The table looks
1429
+ # like this:
1430
+ #
1431
+ # [ ]
1432
+ # A table range with location = (0, 0), row span = 3 and column span = 2
1433
+ # specifies the following cells:
1434
+ # x x
1435
+ # [ x ]
1436
+ # Corresponds to the JSON property `tableRange`
1437
+ # @return [Google::Apis::SlidesV1::TableRange]
1438
+ attr_accessor :table_range
1439
+
1440
+ # The fields that should be updated.
1441
+ # At least one field must be specified. The root `tableCellProperties` is
1442
+ # implied and should not be specified. A single `"*"` can be used as
1443
+ # short-hand for listing every field.
1444
+ # For example to update the table cell background solid fill color, set
1445
+ # `fields` to `"tableCellBackgroundFill.solidFill.color"`.
1446
+ # To reset a property to its default value, include its field name in the
1447
+ # field mask but leave the field itself unset.
1448
+ # Corresponds to the JSON property `fields`
1449
+ # @return [String]
1450
+ attr_accessor :fields
1451
+
1452
+ # The properties of the TableCell.
1453
+ # Corresponds to the JSON property `tableCellProperties`
1454
+ # @return [Google::Apis::SlidesV1::TableCellProperties]
1455
+ attr_accessor :table_cell_properties
1456
+
1457
+ def initialize(**args)
1458
+ update!(**args)
1459
+ end
1460
+
1461
+ # Update properties of this object
1462
+ def update!(**args)
1463
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1464
+ @table_range = args[:table_range] if args.key?(:table_range)
1465
+ @fields = args[:fields] if args.key?(:fields)
1466
+ @table_cell_properties = args[:table_cell_properties] if args.key?(:table_cell_properties)
1467
+ end
1468
+ end
1469
+
1470
+ # Request message for PresentationsService.BatchUpdatePresentation.
1471
+ class BatchUpdatePresentationRequest
1472
+ include Google::Apis::Core::Hashable
1473
+
1474
+ # A list of updates to apply to the presentation.
1475
+ # Corresponds to the JSON property `requests`
1476
+ # @return [Array<Google::Apis::SlidesV1::Request>]
1477
+ attr_accessor :requests
1478
+
1479
+ def initialize(**args)
1480
+ update!(**args)
1481
+ end
1482
+
1483
+ # Update properties of this object
1484
+ def update!(**args)
1485
+ @requests = args[:requests] if args.key?(:requests)
1486
+ end
1487
+ end
1488
+
1489
+ # A magnitude in a single direction in the specified units.
1490
+ class Dimension
1491
+ include Google::Apis::Core::Hashable
1492
+
1493
+ # The units for magnitude.
1494
+ # Corresponds to the JSON property `unit`
1495
+ # @return [String]
1496
+ attr_accessor :unit
1497
+
1498
+ # The magnitude.
1499
+ # Corresponds to the JSON property `magnitude`
1500
+ # @return [Float]
1501
+ attr_accessor :magnitude
1502
+
1503
+ def initialize(**args)
1504
+ update!(**args)
1505
+ end
1506
+
1507
+ # Update properties of this object
1508
+ def update!(**args)
1509
+ @unit = args[:unit] if args.key?(:unit)
1510
+ @magnitude = args[:magnitude] if args.key?(:magnitude)
1511
+ end
1512
+ end
1513
+
1514
+ # The placeholder information that uniquely identifies a placeholder shape.
1515
+ class Placeholder
1516
+ include Google::Apis::Core::Hashable
1517
+
1518
+ # The index of the placeholder. If the same placeholder types are the present
1519
+ # in the same page, they would have different index values.
1520
+ # Corresponds to the JSON property `index`
1521
+ # @return [Fixnum]
1522
+ attr_accessor :index
1523
+
1524
+ # The type of the placeholder.
1525
+ # Corresponds to the JSON property `type`
1526
+ # @return [String]
1527
+ attr_accessor :type
1528
+
1529
+ # The object ID of this shape's parent placeholder.
1530
+ # If unset, the parent placeholder shape does not exist, so the shape does
1531
+ # not inherit properties from any other shape.
1532
+ # Corresponds to the JSON property `parentObjectId`
1533
+ # @return [String]
1534
+ attr_accessor :parent_object_id
1535
+
1536
+ def initialize(**args)
1537
+ update!(**args)
1538
+ end
1539
+
1540
+ # Update properties of this object
1541
+ def update!(**args)
1542
+ @index = args[:index] if args.key?(:index)
1543
+ @type = args[:type] if args.key?(:type)
1544
+ @parent_object_id = args[:parent_object_id] if args.key?(:parent_object_id)
1545
+ end
1546
+ end
1547
+
1548
+ # Creates an embedded Google Sheets chart.
1549
+ # NOTE: Chart creation requires at least one of the spreadsheets.readonly,
1550
+ # spreadsheets, drive.readonly, or drive OAuth scopes.
1551
+ class CreateSheetsChartRequest
1552
+ include Google::Apis::Core::Hashable
1553
+
1554
+ # The ID of the specific chart in the Google Sheets spreadsheet.
1555
+ # Corresponds to the JSON property `chartId`
1556
+ # @return [Fixnum]
1557
+ attr_accessor :chart_id
1558
+
1559
+ # A user-supplied object ID.
1560
+ # If specified, the ID must be unique among all pages and page elements in
1561
+ # the presentation. The ID should start with a word character [a-zA-Z0-9_]
1562
+ # and then followed by any number of the following characters [a-zA-Z0-9_-:].
1563
+ # The length of the ID should not be less than 5 or greater than 50.
1564
+ # If empty, a unique identifier will be generated.
1565
+ # Corresponds to the JSON property `objectId`
1566
+ # @return [String]
1567
+ attr_accessor :object_id_prop
1568
+
1569
+ # The ID of the Google Sheets spreadsheet that contains the chart.
1570
+ # Corresponds to the JSON property `spreadsheetId`
1571
+ # @return [String]
1572
+ attr_accessor :spreadsheet_id
1573
+
1574
+ # Common properties for a page element.
1575
+ # Note: When you initially create a
1576
+ # PageElement, the API may modify
1577
+ # the values of both `size` and `transform`, but the
1578
+ # visual size will be unchanged.
1579
+ # Corresponds to the JSON property `elementProperties`
1580
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
1581
+ attr_accessor :element_properties
1582
+
1583
+ # The mode with which the chart is linked to the source spreadsheet. When
1584
+ # not specified, the chart will be an image that is not linked.
1585
+ # Corresponds to the JSON property `linkingMode`
1586
+ # @return [String]
1587
+ attr_accessor :linking_mode
1588
+
1589
+ def initialize(**args)
1590
+ update!(**args)
1591
+ end
1592
+
1593
+ # Update properties of this object
1594
+ def update!(**args)
1595
+ @chart_id = args[:chart_id] if args.key?(:chart_id)
1596
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1597
+ @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
1598
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
1599
+ @linking_mode = args[:linking_mode] if args.key?(:linking_mode)
1600
+ end
1601
+ end
1602
+
1603
+ # Deletes a row from a table.
1604
+ class DeleteTableRowRequest
1605
+ include Google::Apis::Core::Hashable
1606
+
1607
+ # The table to delete rows from.
1608
+ # Corresponds to the JSON property `tableObjectId`
1609
+ # @return [String]
1610
+ attr_accessor :table_object_id
1611
+
1612
+ # A location of a single table cell within a table.
1613
+ # Corresponds to the JSON property `cellLocation`
1614
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
1615
+ attr_accessor :cell_location
1616
+
1617
+ def initialize(**args)
1618
+ update!(**args)
1619
+ end
1620
+
1621
+ # Update properties of this object
1622
+ def update!(**args)
1623
+ @table_object_id = args[:table_object_id] if args.key?(:table_object_id)
1624
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
1625
+ end
1626
+ end
1627
+
1628
+ # A PageElement kind representing a
1629
+ # video.
1630
+ class Video
1631
+ include Google::Apis::Core::Hashable
1632
+
1633
+ # An URL to a video. The URL is valid as long as the source video
1634
+ # exists and sharing settings do not change.
1635
+ # Corresponds to the JSON property `url`
1636
+ # @return [String]
1637
+ attr_accessor :url
1638
+
1639
+ # The properties of the Video.
1640
+ # Corresponds to the JSON property `videoProperties`
1641
+ # @return [Google::Apis::SlidesV1::VideoProperties]
1642
+ attr_accessor :video_properties
1643
+
1644
+ # The video source.
1645
+ # Corresponds to the JSON property `source`
1646
+ # @return [String]
1647
+ attr_accessor :source
1648
+
1649
+ # The video source's unique identifier for this video.
1650
+ # Corresponds to the JSON property `id`
1651
+ # @return [String]
1652
+ attr_accessor :id
1653
+
1654
+ def initialize(**args)
1655
+ update!(**args)
1656
+ end
1657
+
1658
+ # Update properties of this object
1659
+ def update!(**args)
1660
+ @url = args[:url] if args.key?(:url)
1661
+ @video_properties = args[:video_properties] if args.key?(:video_properties)
1662
+ @source = args[:source] if args.key?(:source)
1663
+ @id = args[:id] if args.key?(:id)
1664
+ end
1665
+ end
1666
+
1667
+ # A hypertext link.
1668
+ class Link
1669
+ include Google::Apis::Core::Hashable
1670
+
1671
+ # If set, indicates this is a link to the external web page at this URL.
1672
+ # Corresponds to the JSON property `url`
1673
+ # @return [String]
1674
+ attr_accessor :url
1675
+
1676
+ # If set, indicates this is a link to a slide in this presentation,
1677
+ # addressed by its position.
1678
+ # Corresponds to the JSON property `relativeLink`
1679
+ # @return [String]
1680
+ attr_accessor :relative_link
1681
+
1682
+ # If set, indicates this is a link to the slide at this zero-based index
1683
+ # in the presentation. There may not be a slide at this index.
1684
+ # Corresponds to the JSON property `slideIndex`
1685
+ # @return [Fixnum]
1686
+ attr_accessor :slide_index
1687
+
1688
+ # If set, indicates this is a link to the specific page in this
1689
+ # presentation with this ID. A page with this ID may not exist.
1690
+ # Corresponds to the JSON property `pageObjectId`
1691
+ # @return [String]
1692
+ attr_accessor :page_object_id
1693
+
1694
+ def initialize(**args)
1695
+ update!(**args)
1696
+ end
1697
+
1698
+ # Update properties of this object
1699
+ def update!(**args)
1700
+ @url = args[:url] if args.key?(:url)
1701
+ @relative_link = args[:relative_link] if args.key?(:relative_link)
1702
+ @slide_index = args[:slide_index] if args.key?(:slide_index)
1703
+ @page_object_id = args[:page_object_id] if args.key?(:page_object_id)
1704
+ end
1705
+ end
1706
+
1707
+ # The page background fill.
1708
+ class PageBackgroundFill
1709
+ include Google::Apis::Core::Hashable
1710
+
1711
+ # The stretched picture fill. The page or page element is filled entirely with
1712
+ # the specified picture. The picture is stretched to fit its container.
1713
+ # Corresponds to the JSON property `stretchedPictureFill`
1714
+ # @return [Google::Apis::SlidesV1::StretchedPictureFill]
1715
+ attr_accessor :stretched_picture_fill
1716
+
1717
+ # The background fill property state.
1718
+ # Updating the the fill on a page will implicitly update this field to
1719
+ # `RENDERED`, unless another value is specified in the same request. To
1720
+ # have no fill on a page, set this field to `NOT_RENDERED`. In this case,
1721
+ # any other fill fields set in the same request will be ignored.
1722
+ # Corresponds to the JSON property `propertyState`
1723
+ # @return [String]
1724
+ attr_accessor :property_state
1725
+
1726
+ # A solid color fill. The page or page element is filled entirely with the
1727
+ # specified color value.
1728
+ # If any field is unset, its value may be inherited from a parent placeholder
1729
+ # if it exists.
1730
+ # Corresponds to the JSON property `solidFill`
1731
+ # @return [Google::Apis::SlidesV1::SolidFill]
1732
+ attr_accessor :solid_fill
1733
+
1734
+ def initialize(**args)
1735
+ update!(**args)
1736
+ end
1737
+
1738
+ # Update properties of this object
1739
+ def update!(**args)
1740
+ @stretched_picture_fill = args[:stretched_picture_fill] if args.key?(:stretched_picture_fill)
1741
+ @property_state = args[:property_state] if args.key?(:property_state)
1742
+ @solid_fill = args[:solid_fill] if args.key?(:solid_fill)
1743
+ end
1744
+ end
1745
+
1746
+ # A color and position in a gradient band.
1747
+ class ColorStop
1748
+ include Google::Apis::Core::Hashable
1749
+
1750
+ # A themeable solid color value.
1751
+ # Corresponds to the JSON property `color`
1752
+ # @return [Google::Apis::SlidesV1::OpaqueColor]
1753
+ attr_accessor :color
1754
+
1755
+ # The relative position of the color stop in the gradient band measured
1756
+ # in percentage. The value should be in the interval [0.0, 1.0].
1757
+ # Corresponds to the JSON property `position`
1758
+ # @return [Float]
1759
+ attr_accessor :position
1760
+
1761
+ # The alpha value of this color in the gradient band. Defaults to 1.0,
1762
+ # fully opaque.
1763
+ # Corresponds to the JSON property `alpha`
1764
+ # @return [Float]
1765
+ attr_accessor :alpha
1766
+
1767
+ def initialize(**args)
1768
+ update!(**args)
1769
+ end
1770
+
1771
+ # Update properties of this object
1772
+ def update!(**args)
1773
+ @color = args[:color] if args.key?(:color)
1774
+ @position = args[:position] if args.key?(:position)
1775
+ @alpha = args[:alpha] if args.key?(:alpha)
1776
+ end
1777
+ end
1778
+
1779
+ # A pair mapping a theme color type to the concrete color it represents.
1780
+ class ThemeColorPair
1781
+ include Google::Apis::Core::Hashable
1782
+
1783
+ # An RGB color.
1784
+ # Corresponds to the JSON property `color`
1785
+ # @return [Google::Apis::SlidesV1::RgbColor]
1786
+ attr_accessor :color
1787
+
1788
+ # The type of the theme color.
1789
+ # Corresponds to the JSON property `type`
1790
+ # @return [String]
1791
+ attr_accessor :type
1792
+
1793
+ def initialize(**args)
1794
+ update!(**args)
1795
+ end
1796
+
1797
+ # Update properties of this object
1798
+ def update!(**args)
1799
+ @color = args[:color] if args.key?(:color)
1800
+ @type = args[:type] if args.key?(:type)
1801
+ end
1802
+ end
1803
+
1804
+ # Replaces all shapes that match the given criteria with the provided image.
1805
+ class ReplaceAllShapesWithImageRequest
1806
+ include Google::Apis::Core::Hashable
1807
+
1808
+ # The replace method.
1809
+ # Corresponds to the JSON property `replaceMethod`
1810
+ # @return [String]
1811
+ attr_accessor :replace_method
1812
+
1813
+ # A criteria that matches a specific string of text in a shape or table.
1814
+ # Corresponds to the JSON property `containsText`
1815
+ # @return [Google::Apis::SlidesV1::SubstringMatchCriteria]
1816
+ attr_accessor :contains_text
1817
+
1818
+ # The image URL.
1819
+ # The image is fetched once at insertion time and a copy is stored for
1820
+ # display inside the presentation. Images must be less than 50MB in size,
1821
+ # cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF
1822
+ # format.
1823
+ # Corresponds to the JSON property `imageUrl`
1824
+ # @return [String]
1825
+ attr_accessor :image_url
1826
+
1827
+ def initialize(**args)
1828
+ update!(**args)
1829
+ end
1830
+
1831
+ # Update properties of this object
1832
+ def update!(**args)
1833
+ @replace_method = args[:replace_method] if args.key?(:replace_method)
1834
+ @contains_text = args[:contains_text] if args.key?(:contains_text)
1835
+ @image_url = args[:image_url] if args.key?(:image_url)
1836
+ end
1837
+ end
1838
+
1839
+ # Deletes an object, either pages or
1840
+ # page elements, from the
1841
+ # presentation.
1842
+ class DeleteObjectRequest
1843
+ include Google::Apis::Core::Hashable
1844
+
1845
+ # The object ID of the page or page element to delete.
1846
+ # If after a delete operation a group contains
1847
+ # only 1 or no page elements, the group is also deleted.
1848
+ # If a placeholder is deleted on a layout, any empty inheriting shapes are
1849
+ # also deleted.
1850
+ # Corresponds to the JSON property `objectId`
1851
+ # @return [String]
1852
+ attr_accessor :object_id_prop
1853
+
1854
+ def initialize(**args)
1855
+ update!(**args)
1856
+ end
1857
+
1858
+ # Update properties of this object
1859
+ def update!(**args)
1860
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1861
+ end
1862
+ end
1863
+
1864
+ # The result of creating an image.
1865
+ class CreateImageResponse
1866
+ include Google::Apis::Core::Hashable
1867
+
1868
+ # The object ID of the created image.
1869
+ # Corresponds to the JSON property `objectId`
1870
+ # @return [String]
1871
+ attr_accessor :object_id_prop
1872
+
1873
+ def initialize(**args)
1874
+ update!(**args)
1875
+ end
1876
+
1877
+ # Update properties of this object
1878
+ def update!(**args)
1879
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
1880
+ end
1881
+ end
1882
+
1883
+ # A recolor effect applied on an image.
1884
+ class Recolor
1885
+ include Google::Apis::Core::Hashable
1886
+
1887
+ # The recolor effect is represented by a gradient, which is a list of color
1888
+ # stops. This property is read-only.
1889
+ # Corresponds to the JSON property `recolorStops`
1890
+ # @return [Array<Google::Apis::SlidesV1::ColorStop>]
1891
+ attr_accessor :recolor_stops
1892
+
1893
+ def initialize(**args)
1894
+ update!(**args)
1895
+ end
1896
+
1897
+ # Update properties of this object
1898
+ def update!(**args)
1899
+ @recolor_stops = args[:recolor_stops] if args.key?(:recolor_stops)
1900
+ end
1901
+ end
1902
+
1903
+ # Represents the styling that can be applied to a TextRun.
1904
+ # If this text is contained in a shape with a parent placeholder, then these
1905
+ # text styles may be
1906
+ # inherited from the parent. Which text styles are inherited depend on the
1907
+ # nesting level of lists:
1908
+ # * A text run in a paragraph that is not in a list will inherit its text style
1909
+ # from the the newline character in the paragraph at the 0 nesting level of
1910
+ # the list inside the parent placeholder.
1911
+ # * A text run in a paragraph that is in a list will inherit its text style
1912
+ # from the newline character in the paragraph at its corresponding nesting
1913
+ # level of the list inside the parent placeholder.
1914
+ # Inherited text styles are represented as unset fields in this message. If
1915
+ # text is contained in a shape without a parent placeholder, unsetting these
1916
+ # fields will revert the style to a value matching the defaults in the Slides
1917
+ # editor.
1918
+ class TextStyle
1919
+ include Google::Apis::Core::Hashable
1920
+
1921
+ # Whether or not the text is bold.
1922
+ # Corresponds to the JSON property `bold`
1923
+ # @return [Boolean]
1924
+ attr_accessor :bold
1925
+ alias_method :bold?, :bold
1926
+
1927
+ # Whether or not the text is italicized.
1928
+ # Corresponds to the JSON property `italic`
1929
+ # @return [Boolean]
1930
+ attr_accessor :italic
1931
+ alias_method :italic?, :italic
1932
+
1933
+ # The text's vertical offset from its normal position.
1934
+ # Text with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically
1935
+ # rendered in a smaller font size, computed based on the `font_size` field.
1936
+ # The `font_size` itself is not affected by changes in this field.
1937
+ # Corresponds to the JSON property `baselineOffset`
1938
+ # @return [String]
1939
+ attr_accessor :baseline_offset
1940
+
1941
+ # A color that can either be fully opaque or fully transparent.
1942
+ # Corresponds to the JSON property `foregroundColor`
1943
+ # @return [Google::Apis::SlidesV1::OptionalColor]
1944
+ attr_accessor :foreground_color
1945
+
1946
+ # The font family of the text.
1947
+ # The font family can be any font from the Font menu in Slides or from
1948
+ # [Google Fonts] (https://fonts.google.com/). If the font name is
1949
+ # unrecognized, the text is rendered in `Arial`.
1950
+ # Some fonts can affect the weight of the text. If an update request
1951
+ # specifies values for both `font_family` and `bold`, the explicitly-set
1952
+ # `bold` value is used.
1953
+ # Corresponds to the JSON property `fontFamily`
1954
+ # @return [String]
1955
+ attr_accessor :font_family
1956
+
1957
+ # Whether or not the text is struck through.
1958
+ # Corresponds to the JSON property `strikethrough`
1959
+ # @return [Boolean]
1960
+ attr_accessor :strikethrough
1961
+ alias_method :strikethrough?, :strikethrough
1962
+
1963
+ # A hypertext link.
1964
+ # Corresponds to the JSON property `link`
1965
+ # @return [Google::Apis::SlidesV1::Link]
1966
+ attr_accessor :link
1967
+
1968
+ # Whether or not the text is in small capital letters.
1969
+ # Corresponds to the JSON property `smallCaps`
1970
+ # @return [Boolean]
1971
+ attr_accessor :small_caps
1972
+ alias_method :small_caps?, :small_caps
1973
+
1974
+ # A color that can either be fully opaque or fully transparent.
1975
+ # Corresponds to the JSON property `backgroundColor`
1976
+ # @return [Google::Apis::SlidesV1::OptionalColor]
1977
+ attr_accessor :background_color
1978
+
1979
+ # A magnitude in a single direction in the specified units.
1980
+ # Corresponds to the JSON property `fontSize`
1981
+ # @return [Google::Apis::SlidesV1::Dimension]
1982
+ attr_accessor :font_size
1983
+
1984
+ # Whether or not the text is underlined.
1985
+ # Corresponds to the JSON property `underline`
1986
+ # @return [Boolean]
1987
+ attr_accessor :underline
1988
+ alias_method :underline?, :underline
1989
+
1990
+ def initialize(**args)
1991
+ update!(**args)
1992
+ end
1993
+
1994
+ # Update properties of this object
1995
+ def update!(**args)
1996
+ @bold = args[:bold] if args.key?(:bold)
1997
+ @italic = args[:italic] if args.key?(:italic)
1998
+ @baseline_offset = args[:baseline_offset] if args.key?(:baseline_offset)
1999
+ @foreground_color = args[:foreground_color] if args.key?(:foreground_color)
2000
+ @font_family = args[:font_family] if args.key?(:font_family)
2001
+ @strikethrough = args[:strikethrough] if args.key?(:strikethrough)
2002
+ @link = args[:link] if args.key?(:link)
2003
+ @small_caps = args[:small_caps] if args.key?(:small_caps)
2004
+ @background_color = args[:background_color] if args.key?(:background_color)
2005
+ @font_size = args[:font_size] if args.key?(:font_size)
2006
+ @underline = args[:underline] if args.key?(:underline)
2007
+ end
2008
+ end
2009
+
2010
+ # Updates the properties of a Line.
2011
+ class UpdateLinePropertiesRequest
2012
+ include Google::Apis::Core::Hashable
2013
+
2014
+ # The object ID of the line the update is applied to.
2015
+ # Corresponds to the JSON property `objectId`
2016
+ # @return [String]
2017
+ attr_accessor :object_id_prop
2018
+
2019
+ # The properties of the Line.
2020
+ # When unset, these fields default to values that match the appearance of
2021
+ # new lines created in the Slides editor.
2022
+ # Corresponds to the JSON property `lineProperties`
2023
+ # @return [Google::Apis::SlidesV1::LineProperties]
2024
+ attr_accessor :line_properties
2025
+
2026
+ # The fields that should be updated.
2027
+ # At least one field must be specified. The root `lineProperties` is
2028
+ # implied and should not be specified. A single `"*"` can be used as
2029
+ # short-hand for listing every field.
2030
+ # For example to update the line solid fill color, set `fields` to
2031
+ # `"lineFill.solidFill.color"`.
2032
+ # To reset a property to its default value, include its field name in the
2033
+ # field mask but leave the field itself unset.
2034
+ # Corresponds to the JSON property `fields`
2035
+ # @return [String]
2036
+ attr_accessor :fields
2037
+
2038
+ def initialize(**args)
2039
+ update!(**args)
2040
+ end
2041
+
2042
+ # Update properties of this object
2043
+ def update!(**args)
2044
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2045
+ @line_properties = args[:line_properties] if args.key?(:line_properties)
2046
+ @fields = args[:fields] if args.key?(:fields)
2047
+ end
2048
+ end
2049
+
2050
+ # The table cell background fill.
2051
+ class TableCellBackgroundFill
2052
+ include Google::Apis::Core::Hashable
2053
+
2054
+ # The background fill property state.
2055
+ # Updating the the fill on a table cell will implicitly update this field
2056
+ # to `RENDERED`, unless another value is specified in the same request. To
2057
+ # have no fill on a table cell, set this field to `NOT_RENDERED`. In this
2058
+ # case, any other fill fields set in the same request will be ignored.
2059
+ # Corresponds to the JSON property `propertyState`
2060
+ # @return [String]
2061
+ attr_accessor :property_state
2062
+
2063
+ # A solid color fill. The page or page element is filled entirely with the
2064
+ # specified color value.
2065
+ # If any field is unset, its value may be inherited from a parent placeholder
2066
+ # if it exists.
2067
+ # Corresponds to the JSON property `solidFill`
2068
+ # @return [Google::Apis::SlidesV1::SolidFill]
2069
+ attr_accessor :solid_fill
2070
+
2071
+ def initialize(**args)
2072
+ update!(**args)
2073
+ end
2074
+
2075
+ # Update properties of this object
2076
+ def update!(**args)
2077
+ @property_state = args[:property_state] if args.key?(:property_state)
2078
+ @solid_fill = args[:solid_fill] if args.key?(:solid_fill)
2079
+ end
2080
+ end
2081
+
2082
+ # A solid color fill. The page or page element is filled entirely with the
2083
+ # specified color value.
2084
+ # If any field is unset, its value may be inherited from a parent placeholder
2085
+ # if it exists.
2086
+ class SolidFill
2087
+ include Google::Apis::Core::Hashable
2088
+
2089
+ # A themeable solid color value.
2090
+ # Corresponds to the JSON property `color`
2091
+ # @return [Google::Apis::SlidesV1::OpaqueColor]
2092
+ attr_accessor :color
2093
+
2094
+ # The fraction of this `color` that should be applied to the pixel.
2095
+ # That is, the final pixel color is defined by the equation:
2096
+ # pixel color = alpha * (color) + (1.0 - alpha) * (background color)
2097
+ # This means that a value of 1.0 corresponds to a solid color, whereas
2098
+ # a value of 0.0 corresponds to a completely transparent color.
2099
+ # Corresponds to the JSON property `alpha`
2100
+ # @return [Float]
2101
+ attr_accessor :alpha
2102
+
2103
+ def initialize(**args)
2104
+ update!(**args)
2105
+ end
2106
+
2107
+ # Update properties of this object
2108
+ def update!(**args)
2109
+ @color = args[:color] if args.key?(:color)
2110
+ @alpha = args[:alpha] if args.key?(:alpha)
2111
+ end
2112
+ end
2113
+
2114
+ # Duplicates a slide or page element.
2115
+ # When duplicating a slide, the duplicate slide will be created immediately
2116
+ # following the specified slide. When duplicating a page element, the duplicate
2117
+ # will be placed on the same page at the same position as the original.
2118
+ class DuplicateObjectRequest
2119
+ include Google::Apis::Core::Hashable
2120
+
2121
+ # The ID of the object to duplicate.
2122
+ # Corresponds to the JSON property `objectId`
2123
+ # @return [String]
2124
+ attr_accessor :object_id_prop
2125
+
2126
+ # The object being duplicated may contain other objects, for example when
2127
+ # duplicating a slide or a group page element. This map defines how the IDs
2128
+ # of duplicated objects are generated: the keys are the IDs of the original
2129
+ # objects and its values are the IDs that will be assigned to the
2130
+ # corresponding duplicate object. The ID of the source object's duplicate
2131
+ # may be specified in this map as well, using the same value of the
2132
+ # `object_id` field as a key and the newly desired ID as the value.
2133
+ # All keys must correspond to existing IDs in the presentation. All values
2134
+ # must be unique in the presentation and must start with an alphanumeric
2135
+ # character or an underscore (matches regex `[a-zA-Z0-9_]`); remaining
2136
+ # characters may include those as well as a hyphen or colon (matches regex
2137
+ # `[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or
2138
+ # greater than 50.
2139
+ # If any IDs of source objects are omitted from the map, a new random ID will
2140
+ # be assigned. If the map is empty or unset, all duplicate objects will
2141
+ # receive a new random ID.
2142
+ # Corresponds to the JSON property `objectIds`
2143
+ # @return [Hash<String,String>]
2144
+ attr_accessor :object_ids
2145
+
2146
+ def initialize(**args)
2147
+ update!(**args)
2148
+ end
2149
+
2150
+ # Update properties of this object
2151
+ def update!(**args)
2152
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2153
+ @object_ids = args[:object_ids] if args.key?(:object_ids)
2154
+ end
2155
+ end
2156
+
2157
+ # A PageElement kind representing
2158
+ # a linked chart embedded from Google Sheets.
2159
+ class SheetsChart
2160
+ include Google::Apis::Core::Hashable
2161
+
2162
+ # The ID of the specific chart in the Google Sheets spreadsheet that is
2163
+ # embedded.
2164
+ # Corresponds to the JSON property `chartId`
2165
+ # @return [Fixnum]
2166
+ attr_accessor :chart_id
2167
+
2168
+ # The ID of the Google Sheets spreadsheet that contains the source chart.
2169
+ # Corresponds to the JSON property `spreadsheetId`
2170
+ # @return [String]
2171
+ attr_accessor :spreadsheet_id
2172
+
2173
+ # The properties of the SheetsChart.
2174
+ # Corresponds to the JSON property `sheetsChartProperties`
2175
+ # @return [Google::Apis::SlidesV1::SheetsChartProperties]
2176
+ attr_accessor :sheets_chart_properties
2177
+
2178
+ # The URL of an image of the embedded chart, with a default lifetime of 30
2179
+ # minutes. This URL is tagged with the account of the requester. Anyone with
2180
+ # the URL effectively accesses the image as the original requester. Access to
2181
+ # the image may be lost if the presentation's sharing settings change.
2182
+ # Corresponds to the JSON property `contentUrl`
2183
+ # @return [String]
2184
+ attr_accessor :content_url
2185
+
2186
+ def initialize(**args)
2187
+ update!(**args)
2188
+ end
2189
+
2190
+ # Update properties of this object
2191
+ def update!(**args)
2192
+ @chart_id = args[:chart_id] if args.key?(:chart_id)
2193
+ @spreadsheet_id = args[:spreadsheet_id] if args.key?(:spreadsheet_id)
2194
+ @sheets_chart_properties = args[:sheets_chart_properties] if args.key?(:sheets_chart_properties)
2195
+ @content_url = args[:content_url] if args.key?(:content_url)
2196
+ end
2197
+ end
2198
+
2199
+ # The properties of the Page.
2200
+ # The page will inherit properties from the parent page. Depending on the page
2201
+ # type the hierarchy is defined in either
2202
+ # SlideProperties or
2203
+ # LayoutProperties.
2204
+ class PageProperties
2205
+ include Google::Apis::Core::Hashable
2206
+
2207
+ # The page background fill.
2208
+ # Corresponds to the JSON property `pageBackgroundFill`
2209
+ # @return [Google::Apis::SlidesV1::PageBackgroundFill]
2210
+ attr_accessor :page_background_fill
2211
+
2212
+ # The palette of predefined colors for a page.
2213
+ # Corresponds to the JSON property `colorScheme`
2214
+ # @return [Google::Apis::SlidesV1::ColorScheme]
2215
+ attr_accessor :color_scheme
2216
+
2217
+ def initialize(**args)
2218
+ update!(**args)
2219
+ end
2220
+
2221
+ # Update properties of this object
2222
+ def update!(**args)
2223
+ @page_background_fill = args[:page_background_fill] if args.key?(:page_background_fill)
2224
+ @color_scheme = args[:color_scheme] if args.key?(:color_scheme)
2225
+ end
2226
+ end
2227
+
2228
+ # The shadow properties of a page element.
2229
+ # If these fields are unset, they may be inherited from a parent placeholder
2230
+ # if it exists. If there is no parent, the fields will default to the value
2231
+ # used for new page elements created in the Slides editor, which may depend on
2232
+ # the page element kind.
2233
+ class Shadow
2234
+ include Google::Apis::Core::Hashable
2235
+
2236
+ # The alignment point of the shadow, that sets the origin for translate,
2237
+ # scale and skew of the shadow.
2238
+ # Corresponds to the JSON property `alignment`
2239
+ # @return [String]
2240
+ attr_accessor :alignment
2241
+
2242
+ # Whether the shadow should rotate with the shape.
2243
+ # Corresponds to the JSON property `rotateWithShape`
2244
+ # @return [Boolean]
2245
+ attr_accessor :rotate_with_shape
2246
+ alias_method :rotate_with_shape?, :rotate_with_shape
2247
+
2248
+ # AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]
2249
+ # to transform source coordinates (x,y) into destination coordinates (x', y')
2250
+ # according to:
2251
+ # x' x = shear_y scale_y translate_y
2252
+ # 1 [ 1 ]
2253
+ # After transformation,
2254
+ # x' = scale_x * x + shear_x * y + translate_x;
2255
+ # y' = scale_y * y + shear_y * x + translate_y;
2256
+ # This message is therefore composed of these six matrix elements.
2257
+ # Corresponds to the JSON property `transform`
2258
+ # @return [Google::Apis::SlidesV1::AffineTransform]
2259
+ attr_accessor :transform
2260
+
2261
+ # A themeable solid color value.
2262
+ # Corresponds to the JSON property `color`
2263
+ # @return [Google::Apis::SlidesV1::OpaqueColor]
2264
+ attr_accessor :color
2265
+
2266
+ # A magnitude in a single direction in the specified units.
2267
+ # Corresponds to the JSON property `blurRadius`
2268
+ # @return [Google::Apis::SlidesV1::Dimension]
2269
+ attr_accessor :blur_radius
2270
+
2271
+ # The shadow property state.
2272
+ # Updating the the shadow on a page element will implicitly update this field
2273
+ # to `RENDERED`, unless another value is specified in the same request. To
2274
+ # have no shadow on a page element, set this field to `NOT_RENDERED`. In this
2275
+ # case, any other shadow fields set in the same request will be ignored.
2276
+ # Corresponds to the JSON property `propertyState`
2277
+ # @return [String]
2278
+ attr_accessor :property_state
2279
+
2280
+ # The alpha of the shadow's color, from 0.0 to 1.0.
2281
+ # Corresponds to the JSON property `alpha`
2282
+ # @return [Float]
2283
+ attr_accessor :alpha
2284
+
2285
+ # The type of the shadow.
2286
+ # Corresponds to the JSON property `type`
2287
+ # @return [String]
2288
+ attr_accessor :type
2289
+
2290
+ def initialize(**args)
2291
+ update!(**args)
2292
+ end
2293
+
2294
+ # Update properties of this object
2295
+ def update!(**args)
2296
+ @alignment = args[:alignment] if args.key?(:alignment)
2297
+ @rotate_with_shape = args[:rotate_with_shape] if args.key?(:rotate_with_shape)
2298
+ @transform = args[:transform] if args.key?(:transform)
2299
+ @color = args[:color] if args.key?(:color)
2300
+ @blur_radius = args[:blur_radius] if args.key?(:blur_radius)
2301
+ @property_state = args[:property_state] if args.key?(:property_state)
2302
+ @alpha = args[:alpha] if args.key?(:alpha)
2303
+ @type = args[:type] if args.key?(:type)
2304
+ end
2305
+ end
2306
+
2307
+ # Slide layout reference. This may reference either:
2308
+ # - A predefined layout
2309
+ # - One of the layouts in the presentation.
2310
+ class LayoutReference
2311
+ include Google::Apis::Core::Hashable
2312
+
2313
+ # Predefined layout.
2314
+ # Corresponds to the JSON property `predefinedLayout`
2315
+ # @return [String]
2316
+ attr_accessor :predefined_layout
2317
+
2318
+ # Layout ID: the object ID of one of the layouts in the presentation.
2319
+ # Corresponds to the JSON property `layoutId`
2320
+ # @return [String]
2321
+ attr_accessor :layout_id
2322
+
2323
+ def initialize(**args)
2324
+ update!(**args)
2325
+ end
2326
+
2327
+ # Update properties of this object
2328
+ def update!(**args)
2329
+ @predefined_layout = args[:predefined_layout] if args.key?(:predefined_layout)
2330
+ @layout_id = args[:layout_id] if args.key?(:layout_id)
2331
+ end
2332
+ end
2333
+
2334
+ # The result of creating an embedded Google Sheets chart.
2335
+ class CreateSheetsChartResponse
2336
+ include Google::Apis::Core::Hashable
2337
+
2338
+ # The object ID of the created chart.
2339
+ # Corresponds to the JSON property `objectId`
2340
+ # @return [String]
2341
+ attr_accessor :object_id_prop
2342
+
2343
+ def initialize(**args)
2344
+ update!(**args)
2345
+ end
2346
+
2347
+ # Update properties of this object
2348
+ def update!(**args)
2349
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2350
+ end
2351
+ end
2352
+
2353
+ # The result of replacing text.
2354
+ class ReplaceAllTextResponse
2355
+ include Google::Apis::Core::Hashable
2356
+
2357
+ # The number of occurrences changed by replacing all text.
2358
+ # Corresponds to the JSON property `occurrencesChanged`
2359
+ # @return [Fixnum]
2360
+ attr_accessor :occurrences_changed
2361
+
2362
+ def initialize(**args)
2363
+ update!(**args)
2364
+ end
2365
+
2366
+ # Update properties of this object
2367
+ def update!(**args)
2368
+ @occurrences_changed = args[:occurrences_changed] if args.key?(:occurrences_changed)
2369
+ end
2370
+ end
2371
+
2372
+ # The properties of Page are only
2373
+ # relevant for pages with page_type LAYOUT.
2374
+ class LayoutProperties
2375
+ include Google::Apis::Core::Hashable
2376
+
2377
+ # The human readable name of the layout in the presentation's locale.
2378
+ # Corresponds to the JSON property `displayName`
2379
+ # @return [String]
2380
+ attr_accessor :display_name
2381
+
2382
+ # The object ID of the master that this layout is based on.
2383
+ # Corresponds to the JSON property `masterObjectId`
2384
+ # @return [String]
2385
+ attr_accessor :master_object_id
2386
+
2387
+ # The name of the layout.
2388
+ # Corresponds to the JSON property `name`
2389
+ # @return [String]
2390
+ attr_accessor :name
2391
+
2392
+ def initialize(**args)
2393
+ update!(**args)
2394
+ end
2395
+
2396
+ # Update properties of this object
2397
+ def update!(**args)
2398
+ @display_name = args[:display_name] if args.key?(:display_name)
2399
+ @master_object_id = args[:master_object_id] if args.key?(:master_object_id)
2400
+ @name = args[:name] if args.key?(:name)
2401
+ end
2402
+ end
2403
+
2404
+ # Inserts columns into a table.
2405
+ # Other columns in the table will be resized to fit the new column.
2406
+ class InsertTableColumnsRequest
2407
+ include Google::Apis::Core::Hashable
2408
+
2409
+ # The table to insert columns into.
2410
+ # Corresponds to the JSON property `tableObjectId`
2411
+ # @return [String]
2412
+ attr_accessor :table_object_id
2413
+
2414
+ # Whether to insert new columns to the right of the reference cell location.
2415
+ # - `True`: insert to the right.
2416
+ # - `False`: insert to the left.
2417
+ # Corresponds to the JSON property `insertRight`
2418
+ # @return [Boolean]
2419
+ attr_accessor :insert_right
2420
+ alias_method :insert_right?, :insert_right
2421
+
2422
+ # A location of a single table cell within a table.
2423
+ # Corresponds to the JSON property `cellLocation`
2424
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
2425
+ attr_accessor :cell_location
2426
+
2427
+ # The number of columns to be inserted. Maximum 20 per request.
2428
+ # Corresponds to the JSON property `number`
2429
+ # @return [Fixnum]
2430
+ attr_accessor :number
2431
+
2432
+ def initialize(**args)
2433
+ update!(**args)
2434
+ end
2435
+
2436
+ # Update properties of this object
2437
+ def update!(**args)
2438
+ @table_object_id = args[:table_object_id] if args.key?(:table_object_id)
2439
+ @insert_right = args[:insert_right] if args.key?(:insert_right)
2440
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
2441
+ @number = args[:number] if args.key?(:number)
2442
+ end
2443
+ end
2444
+
2445
+ # Deletes a column from a table.
2446
+ class DeleteTableColumnRequest
2447
+ include Google::Apis::Core::Hashable
2448
+
2449
+ # The table to delete columns from.
2450
+ # Corresponds to the JSON property `tableObjectId`
2451
+ # @return [String]
2452
+ attr_accessor :table_object_id
2453
+
2454
+ # A location of a single table cell within a table.
2455
+ # Corresponds to the JSON property `cellLocation`
2456
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
2457
+ attr_accessor :cell_location
2458
+
2459
+ def initialize(**args)
2460
+ update!(**args)
2461
+ end
2462
+
2463
+ # Update properties of this object
2464
+ def update!(**args)
2465
+ @table_object_id = args[:table_object_id] if args.key?(:table_object_id)
2466
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
2467
+ end
2468
+ end
2469
+
2470
+ # Properties and contents of each row in a table.
2471
+ class TableRow
2472
+ include Google::Apis::Core::Hashable
2473
+
2474
+ # A magnitude in a single direction in the specified units.
2475
+ # Corresponds to the JSON property `rowHeight`
2476
+ # @return [Google::Apis::SlidesV1::Dimension]
2477
+ attr_accessor :row_height
2478
+
2479
+ # Properties and contents of each cell.
2480
+ # Cells that span multiple columns are represented only once with a
2481
+ # column_span greater
2482
+ # than 1. As a result, the length of this collection does not always match
2483
+ # the number of columns of the entire table.
2484
+ # Corresponds to the JSON property `tableCells`
2485
+ # @return [Array<Google::Apis::SlidesV1::TableCell>]
2486
+ attr_accessor :table_cells
2487
+
2488
+ def initialize(**args)
2489
+ update!(**args)
2490
+ end
2491
+
2492
+ # Update properties of this object
2493
+ def update!(**args)
2494
+ @row_height = args[:row_height] if args.key?(:row_height)
2495
+ @table_cells = args[:table_cells] if args.key?(:table_cells)
2496
+ end
2497
+ end
2498
+
2499
+ # AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]
2500
+ # to transform source coordinates (x,y) into destination coordinates (x', y')
2501
+ # according to:
2502
+ # x' x = shear_y scale_y translate_y
2503
+ # 1 [ 1 ]
2504
+ # After transformation,
2505
+ # x' = scale_x * x + shear_x * y + translate_x;
2506
+ # y' = scale_y * y + shear_y * x + translate_y;
2507
+ # This message is therefore composed of these six matrix elements.
2508
+ class AffineTransform
2509
+ include Google::Apis::Core::Hashable
2510
+
2511
+ # The units for translate elements.
2512
+ # Corresponds to the JSON property `unit`
2513
+ # @return [String]
2514
+ attr_accessor :unit
2515
+
2516
+ # The Y coordinate shearing element.
2517
+ # Corresponds to the JSON property `shearY`
2518
+ # @return [Float]
2519
+ attr_accessor :shear_y
2520
+
2521
+ # The X coordinate translation element.
2522
+ # Corresponds to the JSON property `translateX`
2523
+ # @return [Float]
2524
+ attr_accessor :translate_x
2525
+
2526
+ # The X coordinate shearing element.
2527
+ # Corresponds to the JSON property `shearX`
2528
+ # @return [Float]
2529
+ attr_accessor :shear_x
2530
+
2531
+ # The Y coordinate scaling element.
2532
+ # Corresponds to the JSON property `scaleY`
2533
+ # @return [Float]
2534
+ attr_accessor :scale_y
2535
+
2536
+ # The X coordinate scaling element.
2537
+ # Corresponds to the JSON property `scaleX`
2538
+ # @return [Float]
2539
+ attr_accessor :scale_x
2540
+
2541
+ # The Y coordinate translation element.
2542
+ # Corresponds to the JSON property `translateY`
2543
+ # @return [Float]
2544
+ attr_accessor :translate_y
2545
+
2546
+ def initialize(**args)
2547
+ update!(**args)
2548
+ end
2549
+
2550
+ # Update properties of this object
2551
+ def update!(**args)
2552
+ @unit = args[:unit] if args.key?(:unit)
2553
+ @shear_y = args[:shear_y] if args.key?(:shear_y)
2554
+ @translate_x = args[:translate_x] if args.key?(:translate_x)
2555
+ @shear_x = args[:shear_x] if args.key?(:shear_x)
2556
+ @scale_y = args[:scale_y] if args.key?(:scale_y)
2557
+ @scale_x = args[:scale_x] if args.key?(:scale_x)
2558
+ @translate_y = args[:translate_y] if args.key?(:translate_y)
2559
+ end
2560
+ end
2561
+
2562
+ # Creates a new shape.
2563
+ class CreateShapeRequest
2564
+ include Google::Apis::Core::Hashable
2565
+
2566
+ # A user-supplied object ID.
2567
+ # If you specify an ID, it must be unique among all pages and page elements
2568
+ # in the presentation. The ID must start with an alphanumeric character or an
2569
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
2570
+ # may include those as well as a hyphen or colon (matches regex
2571
+ # `[a-zA-Z0-9_-:]`).
2572
+ # The length of the ID must not be less than 5 or greater than 50.
2573
+ # If empty, a unique identifier will be generated.
2574
+ # Corresponds to the JSON property `objectId`
2575
+ # @return [String]
2576
+ attr_accessor :object_id_prop
2577
+
2578
+ # The shape type.
2579
+ # Corresponds to the JSON property `shapeType`
2580
+ # @return [String]
2581
+ attr_accessor :shape_type
2582
+
2583
+ # Common properties for a page element.
2584
+ # Note: When you initially create a
2585
+ # PageElement, the API may modify
2586
+ # the values of both `size` and `transform`, but the
2587
+ # visual size will be unchanged.
2588
+ # Corresponds to the JSON property `elementProperties`
2589
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
2590
+ attr_accessor :element_properties
2591
+
2592
+ def initialize(**args)
2593
+ update!(**args)
2594
+ end
2595
+
2596
+ # Update properties of this object
2597
+ def update!(**args)
2598
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2599
+ @shape_type = args[:shape_type] if args.key?(:shape_type)
2600
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
2601
+ end
2602
+ end
2603
+
2604
+ # The shape background fill.
2605
+ class ShapeBackgroundFill
2606
+ include Google::Apis::Core::Hashable
2607
+
2608
+ # The background fill property state.
2609
+ # Updating the the fill on a shape will implicitly update this field to
2610
+ # `RENDERED`, unless another value is specified in the same request. To
2611
+ # have no fill on a shape, set this field to `NOT_RENDERED`. In this case,
2612
+ # any other fill fields set in the same request will be ignored.
2613
+ # Corresponds to the JSON property `propertyState`
2614
+ # @return [String]
2615
+ attr_accessor :property_state
2616
+
2617
+ # A solid color fill. The page or page element is filled entirely with the
2618
+ # specified color value.
2619
+ # If any field is unset, its value may be inherited from a parent placeholder
2620
+ # if it exists.
2621
+ # Corresponds to the JSON property `solidFill`
2622
+ # @return [Google::Apis::SlidesV1::SolidFill]
2623
+ attr_accessor :solid_fill
2624
+
2625
+ def initialize(**args)
2626
+ update!(**args)
2627
+ end
2628
+
2629
+ # Update properties of this object
2630
+ def update!(**args)
2631
+ @property_state = args[:property_state] if args.key?(:property_state)
2632
+ @solid_fill = args[:solid_fill] if args.key?(:solid_fill)
2633
+ end
2634
+ end
2635
+
2636
+ # A PageElement kind representing a
2637
+ # line, curved connector, or bent connector.
2638
+ class Line
2639
+ include Google::Apis::Core::Hashable
2640
+
2641
+ # The properties of the Line.
2642
+ # When unset, these fields default to values that match the appearance of
2643
+ # new lines created in the Slides editor.
2644
+ # Corresponds to the JSON property `lineProperties`
2645
+ # @return [Google::Apis::SlidesV1::LineProperties]
2646
+ attr_accessor :line_properties
2647
+
2648
+ # The type of the line.
2649
+ # Corresponds to the JSON property `lineType`
2650
+ # @return [String]
2651
+ attr_accessor :line_type
2652
+
2653
+ def initialize(**args)
2654
+ update!(**args)
2655
+ end
2656
+
2657
+ # Update properties of this object
2658
+ def update!(**args)
2659
+ @line_properties = args[:line_properties] if args.key?(:line_properties)
2660
+ @line_type = args[:line_type] if args.key?(:line_type)
2661
+ end
2662
+ end
2663
+
2664
+ # The properties of the SheetsChart.
2665
+ class SheetsChartProperties
2666
+ include Google::Apis::Core::Hashable
2667
+
2668
+ # The properties of the Image.
2669
+ # Corresponds to the JSON property `chartImageProperties`
2670
+ # @return [Google::Apis::SlidesV1::ImageProperties]
2671
+ attr_accessor :chart_image_properties
2672
+
2673
+ def initialize(**args)
2674
+ update!(**args)
2675
+ end
2676
+
2677
+ # Update properties of this object
2678
+ def update!(**args)
2679
+ @chart_image_properties = args[:chart_image_properties] if args.key?(:chart_image_properties)
2680
+ end
2681
+ end
2682
+
2683
+ # A TextElement kind that represents auto text.
2684
+ class AutoText
2685
+ include Google::Apis::Core::Hashable
2686
+
2687
+ # Represents the styling that can be applied to a TextRun.
2688
+ # If this text is contained in a shape with a parent placeholder, then these
2689
+ # text styles may be
2690
+ # inherited from the parent. Which text styles are inherited depend on the
2691
+ # nesting level of lists:
2692
+ # * A text run in a paragraph that is not in a list will inherit its text style
2693
+ # from the the newline character in the paragraph at the 0 nesting level of
2694
+ # the list inside the parent placeholder.
2695
+ # * A text run in a paragraph that is in a list will inherit its text style
2696
+ # from the newline character in the paragraph at its corresponding nesting
2697
+ # level of the list inside the parent placeholder.
2698
+ # Inherited text styles are represented as unset fields in this message. If
2699
+ # text is contained in a shape without a parent placeholder, unsetting these
2700
+ # fields will revert the style to a value matching the defaults in the Slides
2701
+ # editor.
2702
+ # Corresponds to the JSON property `style`
2703
+ # @return [Google::Apis::SlidesV1::TextStyle]
2704
+ attr_accessor :style
2705
+
2706
+ # The type of this auto text.
2707
+ # Corresponds to the JSON property `type`
2708
+ # @return [String]
2709
+ attr_accessor :type
2710
+
2711
+ # The rendered content of this auto text, if available.
2712
+ # Corresponds to the JSON property `content`
2713
+ # @return [String]
2714
+ attr_accessor :content
2715
+
2716
+ def initialize(**args)
2717
+ update!(**args)
2718
+ end
2719
+
2720
+ # Update properties of this object
2721
+ def update!(**args)
2722
+ @style = args[:style] if args.key?(:style)
2723
+ @type = args[:type] if args.key?(:type)
2724
+ @content = args[:content] if args.key?(:content)
2725
+ end
2726
+ end
2727
+
2728
+ # A TextElement describes the content of a range of indices in the text content
2729
+ # of a Shape or TableCell.
2730
+ class TextElement
2731
+ include Google::Apis::Core::Hashable
2732
+
2733
+ # The zero-based end index of this text element, exclusive, in Unicode code
2734
+ # units.
2735
+ # Corresponds to the JSON property `endIndex`
2736
+ # @return [Fixnum]
2737
+ attr_accessor :end_index
2738
+
2739
+ # A TextElement kind that represents a run of text that all has the same
2740
+ # styling.
2741
+ # Corresponds to the JSON property `textRun`
2742
+ # @return [Google::Apis::SlidesV1::TextRun]
2743
+ attr_accessor :text_run
2744
+
2745
+ # The zero-based start index of this text element, in Unicode code units.
2746
+ # Corresponds to the JSON property `startIndex`
2747
+ # @return [Fixnum]
2748
+ attr_accessor :start_index
2749
+
2750
+ # A TextElement kind that represents the beginning of a new paragraph.
2751
+ # Corresponds to the JSON property `paragraphMarker`
2752
+ # @return [Google::Apis::SlidesV1::ParagraphMarker]
2753
+ attr_accessor :paragraph_marker
2754
+
2755
+ # A TextElement kind that represents auto text.
2756
+ # Corresponds to the JSON property `autoText`
2757
+ # @return [Google::Apis::SlidesV1::AutoText]
2758
+ attr_accessor :auto_text
2759
+
2760
+ def initialize(**args)
2761
+ update!(**args)
2762
+ end
2763
+
2764
+ # Update properties of this object
2765
+ def update!(**args)
2766
+ @end_index = args[:end_index] if args.key?(:end_index)
2767
+ @text_run = args[:text_run] if args.key?(:text_run)
2768
+ @start_index = args[:start_index] if args.key?(:start_index)
2769
+ @paragraph_marker = args[:paragraph_marker] if args.key?(:paragraph_marker)
2770
+ @auto_text = args[:auto_text] if args.key?(:auto_text)
2771
+ end
2772
+ end
2773
+
2774
+ # Updates the position of slides in the presentation.
2775
+ class UpdateSlidesPositionRequest
2776
+ include Google::Apis::Core::Hashable
2777
+
2778
+ # The index where the slides should be inserted, based on the slide
2779
+ # arrangement before the move takes place. Must be between zero and the
2780
+ # number of slides in the presentation, inclusive.
2781
+ # Corresponds to the JSON property `insertionIndex`
2782
+ # @return [Fixnum]
2783
+ attr_accessor :insertion_index
2784
+
2785
+ # The IDs of the slides in the presentation that should be moved.
2786
+ # The slides in this list must be in existing presentation order, without
2787
+ # duplicates.
2788
+ # Corresponds to the JSON property `slideObjectIds`
2789
+ # @return [Array<String>]
2790
+ attr_accessor :slide_object_ids
2791
+
2792
+ def initialize(**args)
2793
+ update!(**args)
2794
+ end
2795
+
2796
+ # Update properties of this object
2797
+ def update!(**args)
2798
+ @insertion_index = args[:insertion_index] if args.key?(:insertion_index)
2799
+ @slide_object_ids = args[:slide_object_ids] if args.key?(:slide_object_ids)
2800
+ end
2801
+ end
2802
+
2803
+ # Replaces all instances of text matching a criteria with replace text.
2804
+ class ReplaceAllTextRequest
2805
+ include Google::Apis::Core::Hashable
2806
+
2807
+ # A criteria that matches a specific string of text in a shape or table.
2808
+ # Corresponds to the JSON property `containsText`
2809
+ # @return [Google::Apis::SlidesV1::SubstringMatchCriteria]
2810
+ attr_accessor :contains_text
2811
+
2812
+ # The text that will replace the matched text.
2813
+ # Corresponds to the JSON property `replaceText`
2814
+ # @return [String]
2815
+ attr_accessor :replace_text
2816
+
2817
+ def initialize(**args)
2818
+ update!(**args)
2819
+ end
2820
+
2821
+ # Update properties of this object
2822
+ def update!(**args)
2823
+ @contains_text = args[:contains_text] if args.key?(:contains_text)
2824
+ @replace_text = args[:replace_text] if args.key?(:replace_text)
2825
+ end
2826
+ end
2827
+
2828
+ # The properties of a Shape.
2829
+ # If the shape is a placeholder shape as determined by the
2830
+ # placeholder field, then these
2831
+ # properties may be inherited from a parent placeholder shape.
2832
+ # Determining the rendered value of the property depends on the corresponding
2833
+ # property_state field value.
2834
+ class ShapeProperties
2835
+ include Google::Apis::Core::Hashable
2836
+
2837
+ # The outline of a PageElement.
2838
+ # If these fields are unset, they may be inherited from a parent placeholder
2839
+ # if it exists. If there is no parent, the fields will default to the value
2840
+ # used for new page elements created in the Slides editor, which may depend on
2841
+ # the page element kind.
2842
+ # Corresponds to the JSON property `outline`
2843
+ # @return [Google::Apis::SlidesV1::Outline]
2844
+ attr_accessor :outline
2845
+
2846
+ # A hypertext link.
2847
+ # Corresponds to the JSON property `link`
2848
+ # @return [Google::Apis::SlidesV1::Link]
2849
+ attr_accessor :link
2850
+
2851
+ # The shape background fill.
2852
+ # Corresponds to the JSON property `shapeBackgroundFill`
2853
+ # @return [Google::Apis::SlidesV1::ShapeBackgroundFill]
2854
+ attr_accessor :shape_background_fill
2855
+
2856
+ # The shadow properties of a page element.
2857
+ # If these fields are unset, they may be inherited from a parent placeholder
2858
+ # if it exists. If there is no parent, the fields will default to the value
2859
+ # used for new page elements created in the Slides editor, which may depend on
2860
+ # the page element kind.
2861
+ # Corresponds to the JSON property `shadow`
2862
+ # @return [Google::Apis::SlidesV1::Shadow]
2863
+ attr_accessor :shadow
2864
+
2865
+ def initialize(**args)
2866
+ update!(**args)
2867
+ end
2868
+
2869
+ # Update properties of this object
2870
+ def update!(**args)
2871
+ @outline = args[:outline] if args.key?(:outline)
2872
+ @link = args[:link] if args.key?(:link)
2873
+ @shape_background_fill = args[:shape_background_fill] if args.key?(:shape_background_fill)
2874
+ @shadow = args[:shadow] if args.key?(:shadow)
2875
+ end
2876
+ end
2877
+
2878
+ # Creates a line.
2879
+ class CreateLineRequest
2880
+ include Google::Apis::Core::Hashable
2881
+
2882
+ # A user-supplied object ID.
2883
+ # If you specify an ID, it must be unique among all pages and page elements
2884
+ # in the presentation. The ID must start with an alphanumeric character or an
2885
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
2886
+ # may include those as well as a hyphen or colon (matches regex
2887
+ # `[a-zA-Z0-9_-:]`).
2888
+ # The length of the ID must not be less than 5 or greater than 50.
2889
+ # If you don't specify an ID, a unique one is generated.
2890
+ # Corresponds to the JSON property `objectId`
2891
+ # @return [String]
2892
+ attr_accessor :object_id_prop
2893
+
2894
+ # Common properties for a page element.
2895
+ # Note: When you initially create a
2896
+ # PageElement, the API may modify
2897
+ # the values of both `size` and `transform`, but the
2898
+ # visual size will be unchanged.
2899
+ # Corresponds to the JSON property `elementProperties`
2900
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
2901
+ attr_accessor :element_properties
2902
+
2903
+ # The category of line to be created.
2904
+ # Corresponds to the JSON property `lineCategory`
2905
+ # @return [String]
2906
+ attr_accessor :line_category
2907
+
2908
+ def initialize(**args)
2909
+ update!(**args)
2910
+ end
2911
+
2912
+ # Update properties of this object
2913
+ def update!(**args)
2914
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2915
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
2916
+ @line_category = args[:line_category] if args.key?(:line_category)
2917
+ end
2918
+ end
2919
+
2920
+ # The result of creating a shape.
2921
+ class CreateShapeResponse
2922
+ include Google::Apis::Core::Hashable
2923
+
2924
+ # The object ID of the created shape.
2925
+ # Corresponds to the JSON property `objectId`
2926
+ # @return [String]
2927
+ attr_accessor :object_id_prop
2928
+
2929
+ def initialize(**args)
2930
+ update!(**args)
2931
+ end
2932
+
2933
+ # Update properties of this object
2934
+ def update!(**args)
2935
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2936
+ end
2937
+ end
2938
+
2939
+ # The result of creating a slide.
2940
+ class CreateSlideResponse
2941
+ include Google::Apis::Core::Hashable
2942
+
2943
+ # The object ID of the created slide.
2944
+ # Corresponds to the JSON property `objectId`
2945
+ # @return [String]
2946
+ attr_accessor :object_id_prop
2947
+
2948
+ def initialize(**args)
2949
+ update!(**args)
2950
+ end
2951
+
2952
+ # Update properties of this object
2953
+ def update!(**args)
2954
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2955
+ end
2956
+ end
2957
+
2958
+ # Update the properties of an Image.
2959
+ class UpdateImagePropertiesRequest
2960
+ include Google::Apis::Core::Hashable
2961
+
2962
+ # The object ID of the image the updates are applied to.
2963
+ # Corresponds to the JSON property `objectId`
2964
+ # @return [String]
2965
+ attr_accessor :object_id_prop
2966
+
2967
+ # The fields that should be updated.
2968
+ # At least one field must be specified. The root `imageProperties` is
2969
+ # implied and should not be specified. A single `"*"` can be used as
2970
+ # short-hand for listing every field.
2971
+ # For example to update the image outline color, set `fields` to
2972
+ # `"outline.outlineFill.solidFill.color"`.
2973
+ # To reset a property to its default value, include its field name in the
2974
+ # field mask but leave the field itself unset.
2975
+ # Corresponds to the JSON property `fields`
2976
+ # @return [String]
2977
+ attr_accessor :fields
2978
+
2979
+ # The properties of the Image.
2980
+ # Corresponds to the JSON property `imageProperties`
2981
+ # @return [Google::Apis::SlidesV1::ImageProperties]
2982
+ attr_accessor :image_properties
2983
+
2984
+ def initialize(**args)
2985
+ update!(**args)
2986
+ end
2987
+
2988
+ # Update properties of this object
2989
+ def update!(**args)
2990
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
2991
+ @fields = args[:fields] if args.key?(:fields)
2992
+ @image_properties = args[:image_properties] if args.key?(:image_properties)
2993
+ end
2994
+ end
2995
+
2996
+ # Creates a video.
2997
+ class CreateVideoRequest
2998
+ include Google::Apis::Core::Hashable
2999
+
3000
+ # A user-supplied object ID.
3001
+ # If you specify an ID, it must be unique among all pages and page elements
3002
+ # in the presentation. The ID must start with an alphanumeric character or an
3003
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
3004
+ # may include those as well as a hyphen or colon (matches regex
3005
+ # `[a-zA-Z0-9_-:]`).
3006
+ # The length of the ID must not be less than 5 or greater than 50.
3007
+ # If you don't specify an ID, a unique one is generated.
3008
+ # Corresponds to the JSON property `objectId`
3009
+ # @return [String]
3010
+ attr_accessor :object_id_prop
3011
+
3012
+ # The video source.
3013
+ # Corresponds to the JSON property `source`
3014
+ # @return [String]
3015
+ attr_accessor :source
3016
+
3017
+ # Common properties for a page element.
3018
+ # Note: When you initially create a
3019
+ # PageElement, the API may modify
3020
+ # the values of both `size` and `transform`, but the
3021
+ # visual size will be unchanged.
3022
+ # Corresponds to the JSON property `elementProperties`
3023
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
3024
+ attr_accessor :element_properties
3025
+
3026
+ # The video source's unique identifier for this video.
3027
+ # e.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,
3028
+ # the ID is 7U3axjORYZ0.
3029
+ # Corresponds to the JSON property `id`
3030
+ # @return [String]
3031
+ attr_accessor :id
3032
+
3033
+ def initialize(**args)
3034
+ update!(**args)
3035
+ end
3036
+
3037
+ # Update properties of this object
3038
+ def update!(**args)
3039
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
3040
+ @source = args[:source] if args.key?(:source)
3041
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
3042
+ @id = args[:id] if args.key?(:id)
3043
+ end
3044
+ end
3045
+
3046
+ # Creates a new table.
3047
+ class CreateTableRequest
3048
+ include Google::Apis::Core::Hashable
3049
+
3050
+ # Number of columns in the table.
3051
+ # Corresponds to the JSON property `columns`
3052
+ # @return [Fixnum]
3053
+ attr_accessor :columns
3054
+
3055
+ # A user-supplied object ID.
3056
+ # If you specify an ID, it must be unique among all pages and page elements
3057
+ # in the presentation. The ID must start with an alphanumeric character or an
3058
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
3059
+ # may include those as well as a hyphen or colon (matches regex
3060
+ # `[a-zA-Z0-9_-:]`).
3061
+ # The length of the ID must not be less than 5 or greater than 50.
3062
+ # If you don't specify an ID, a unique one is generated.
3063
+ # Corresponds to the JSON property `objectId`
3064
+ # @return [String]
3065
+ attr_accessor :object_id_prop
3066
+
3067
+ # Number of rows in the table.
3068
+ # Corresponds to the JSON property `rows`
3069
+ # @return [Fixnum]
3070
+ attr_accessor :rows
3071
+
3072
+ # Common properties for a page element.
3073
+ # Note: When you initially create a
3074
+ # PageElement, the API may modify
3075
+ # the values of both `size` and `transform`, but the
3076
+ # visual size will be unchanged.
3077
+ # Corresponds to the JSON property `elementProperties`
3078
+ # @return [Google::Apis::SlidesV1::PageElementProperties]
3079
+ attr_accessor :element_properties
3080
+
3081
+ def initialize(**args)
3082
+ update!(**args)
3083
+ end
3084
+
3085
+ # Update properties of this object
3086
+ def update!(**args)
3087
+ @columns = args[:columns] if args.key?(:columns)
3088
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
3089
+ @rows = args[:rows] if args.key?(:rows)
3090
+ @element_properties = args[:element_properties] if args.key?(:element_properties)
3091
+ end
3092
+ end
3093
+
3094
+ # A color that can either be fully opaque or fully transparent.
3095
+ class OptionalColor
3096
+ include Google::Apis::Core::Hashable
3097
+
3098
+ # A themeable solid color value.
3099
+ # Corresponds to the JSON property `opaqueColor`
3100
+ # @return [Google::Apis::SlidesV1::OpaqueColor]
3101
+ attr_accessor :opaque_color
3102
+
3103
+ def initialize(**args)
3104
+ update!(**args)
3105
+ end
3106
+
3107
+ # Update properties of this object
3108
+ def update!(**args)
3109
+ @opaque_color = args[:opaque_color] if args.key?(:opaque_color)
3110
+ end
3111
+ end
3112
+
3113
+ # A TextElement kind that represents a run of text that all has the same
3114
+ # styling.
3115
+ class TextRun
3116
+ include Google::Apis::Core::Hashable
3117
+
3118
+ # Represents the styling that can be applied to a TextRun.
3119
+ # If this text is contained in a shape with a parent placeholder, then these
3120
+ # text styles may be
3121
+ # inherited from the parent. Which text styles are inherited depend on the
3122
+ # nesting level of lists:
3123
+ # * A text run in a paragraph that is not in a list will inherit its text style
3124
+ # from the the newline character in the paragraph at the 0 nesting level of
3125
+ # the list inside the parent placeholder.
3126
+ # * A text run in a paragraph that is in a list will inherit its text style
3127
+ # from the newline character in the paragraph at its corresponding nesting
3128
+ # level of the list inside the parent placeholder.
3129
+ # Inherited text styles are represented as unset fields in this message. If
3130
+ # text is contained in a shape without a parent placeholder, unsetting these
3131
+ # fields will revert the style to a value matching the defaults in the Slides
3132
+ # editor.
3133
+ # Corresponds to the JSON property `style`
3134
+ # @return [Google::Apis::SlidesV1::TextStyle]
3135
+ attr_accessor :style
3136
+
3137
+ # The text of this run.
3138
+ # Corresponds to the JSON property `content`
3139
+ # @return [String]
3140
+ attr_accessor :content
3141
+
3142
+ def initialize(**args)
3143
+ update!(**args)
3144
+ end
3145
+
3146
+ # Update properties of this object
3147
+ def update!(**args)
3148
+ @style = args[:style] if args.key?(:style)
3149
+ @content = args[:content] if args.key?(:content)
3150
+ end
3151
+ end
3152
+
3153
+ # A PageElement kind representing a
3154
+ # generic shape that does not have a more specific classification.
3155
+ class Shape
3156
+ include Google::Apis::Core::Hashable
3157
+
3158
+ # The general text content. The text must reside in a compatible shape (e.g.
3159
+ # text box or rectangle) or a table cell in a page.
3160
+ # Corresponds to the JSON property `text`
3161
+ # @return [Google::Apis::SlidesV1::TextContent]
3162
+ attr_accessor :text
3163
+
3164
+ # The properties of a Shape.
3165
+ # If the shape is a placeholder shape as determined by the
3166
+ # placeholder field, then these
3167
+ # properties may be inherited from a parent placeholder shape.
3168
+ # Determining the rendered value of the property depends on the corresponding
3169
+ # property_state field value.
3170
+ # Corresponds to the JSON property `shapeProperties`
3171
+ # @return [Google::Apis::SlidesV1::ShapeProperties]
3172
+ attr_accessor :shape_properties
3173
+
3174
+ # The type of the shape.
3175
+ # Corresponds to the JSON property `shapeType`
3176
+ # @return [String]
3177
+ attr_accessor :shape_type
3178
+
3179
+ # The placeholder information that uniquely identifies a placeholder shape.
3180
+ # Corresponds to the JSON property `placeholder`
3181
+ # @return [Google::Apis::SlidesV1::Placeholder]
3182
+ attr_accessor :placeholder
3183
+
3184
+ def initialize(**args)
3185
+ update!(**args)
3186
+ end
3187
+
3188
+ # Update properties of this object
3189
+ def update!(**args)
3190
+ @text = args[:text] if args.key?(:text)
3191
+ @shape_properties = args[:shape_properties] if args.key?(:shape_properties)
3192
+ @shape_type = args[:shape_type] if args.key?(:shape_type)
3193
+ @placeholder = args[:placeholder] if args.key?(:placeholder)
3194
+ end
3195
+ end
3196
+
3197
+ # Response message from a batch update.
3198
+ class BatchUpdatePresentationResponse
3199
+ include Google::Apis::Core::Hashable
3200
+
3201
+ # The presentation the updates were applied to.
3202
+ # Corresponds to the JSON property `presentationId`
3203
+ # @return [String]
3204
+ attr_accessor :presentation_id
3205
+
3206
+ # The reply of the updates. This maps 1:1 with the updates, although
3207
+ # replies to some requests may be empty.
3208
+ # Corresponds to the JSON property `replies`
3209
+ # @return [Array<Google::Apis::SlidesV1::Response>]
3210
+ attr_accessor :replies
3211
+
3212
+ def initialize(**args)
3213
+ update!(**args)
3214
+ end
3215
+
3216
+ # Update properties of this object
3217
+ def update!(**args)
3218
+ @presentation_id = args[:presentation_id] if args.key?(:presentation_id)
3219
+ @replies = args[:replies] if args.key?(:replies)
3220
+ end
3221
+ end
3222
+
3223
+ # The properties of the Image.
3224
+ class ImageProperties
3225
+ include Google::Apis::Core::Hashable
3226
+
3227
+ # The crop properties of an object enclosed in a container. For example, an
3228
+ # Image.
3229
+ # The crop properties is represented by the offsets of four edges which define
3230
+ # a crop rectangle. The offsets are measured in percentage from the
3231
+ # corresponding edges of the object's original bounding rectangle towards
3232
+ # inside, relative to the object's original dimensions.
3233
+ # - If the offset is in the interval (0, 1), the corresponding edge of crop
3234
+ # rectangle is positioned inside of the object's original bounding rectangle.
3235
+ # - If the offset is negative or greater than 1, the corresponding edge of crop
3236
+ # rectangle is positioned outside of the object's original bounding rectangle.
3237
+ # - If the left edge of the crop rectangle is on the right side of its right
3238
+ # edge, the object will be flipped horizontally.
3239
+ # - If the top edge of the crop rectangle is below its bottom edge, the object
3240
+ # will be flipped vertically.
3241
+ # - If all offsets and rotation angle is 0, the object is not cropped.
3242
+ # After cropping, the content in the crop rectangle will be stretched to fit
3243
+ # its container.
3244
+ # Corresponds to the JSON property `cropProperties`
3245
+ # @return [Google::Apis::SlidesV1::CropProperties]
3246
+ attr_accessor :crop_properties
3247
+
3248
+ # The outline of a PageElement.
3249
+ # If these fields are unset, they may be inherited from a parent placeholder
3250
+ # if it exists. If there is no parent, the fields will default to the value
3251
+ # used for new page elements created in the Slides editor, which may depend on
3252
+ # the page element kind.
3253
+ # Corresponds to the JSON property `outline`
3254
+ # @return [Google::Apis::SlidesV1::Outline]
3255
+ attr_accessor :outline
3256
+
3257
+ # The shadow properties of a page element.
3258
+ # If these fields are unset, they may be inherited from a parent placeholder
3259
+ # if it exists. If there is no parent, the fields will default to the value
3260
+ # used for new page elements created in the Slides editor, which may depend on
3261
+ # the page element kind.
3262
+ # Corresponds to the JSON property `shadow`
3263
+ # @return [Google::Apis::SlidesV1::Shadow]
3264
+ attr_accessor :shadow
3265
+
3266
+ # The transparency effect of the image. The value should be in the interval
3267
+ # [0.0, 1.0], where 0 means no effect and 1 means completely transparent.
3268
+ # This property is read-only.
3269
+ # Corresponds to the JSON property `transparency`
3270
+ # @return [Float]
3271
+ attr_accessor :transparency
3272
+
3273
+ # The contrast effect of the image. The value should be in the interval
3274
+ # [-1.0, 1.0], where 0 means no effect. This property is read-only.
3275
+ # Corresponds to the JSON property `contrast`
3276
+ # @return [Float]
3277
+ attr_accessor :contrast
3278
+
3279
+ # A hypertext link.
3280
+ # Corresponds to the JSON property `link`
3281
+ # @return [Google::Apis::SlidesV1::Link]
3282
+ attr_accessor :link
3283
+
3284
+ # A recolor effect applied on an image.
3285
+ # Corresponds to the JSON property `recolor`
3286
+ # @return [Google::Apis::SlidesV1::Recolor]
3287
+ attr_accessor :recolor
3288
+
3289
+ # The brightness effect of the image. The value should be in the interval
3290
+ # [-1.0, 1.0], where 0 means no effect. This property is read-only.
3291
+ # Corresponds to the JSON property `brightness`
3292
+ # @return [Float]
3293
+ attr_accessor :brightness
3294
+
3295
+ def initialize(**args)
3296
+ update!(**args)
3297
+ end
3298
+
3299
+ # Update properties of this object
3300
+ def update!(**args)
3301
+ @crop_properties = args[:crop_properties] if args.key?(:crop_properties)
3302
+ @outline = args[:outline] if args.key?(:outline)
3303
+ @shadow = args[:shadow] if args.key?(:shadow)
3304
+ @transparency = args[:transparency] if args.key?(:transparency)
3305
+ @contrast = args[:contrast] if args.key?(:contrast)
3306
+ @link = args[:link] if args.key?(:link)
3307
+ @recolor = args[:recolor] if args.key?(:recolor)
3308
+ @brightness = args[:brightness] if args.key?(:brightness)
3309
+ end
3310
+ end
3311
+
3312
+ # A PageElement kind representing a
3313
+ # joined collection of PageElements.
3314
+ class Group
3315
+ include Google::Apis::Core::Hashable
3316
+
3317
+ # The collection of elements in the group. The minimum size of a group is 2.
3318
+ # Corresponds to the JSON property `children`
3319
+ # @return [Array<Google::Apis::SlidesV1::PageElement>]
3320
+ attr_accessor :children
3321
+
3322
+ def initialize(**args)
3323
+ update!(**args)
3324
+ end
3325
+
3326
+ # Update properties of this object
3327
+ def update!(**args)
3328
+ @children = args[:children] if args.key?(:children)
3329
+ end
3330
+ end
3331
+
3332
+ # The outline of a PageElement.
3333
+ # If these fields are unset, they may be inherited from a parent placeholder
3334
+ # if it exists. If there is no parent, the fields will default to the value
3335
+ # used for new page elements created in the Slides editor, which may depend on
3336
+ # the page element kind.
3337
+ class Outline
3338
+ include Google::Apis::Core::Hashable
3339
+
3340
+ # A magnitude in a single direction in the specified units.
3341
+ # Corresponds to the JSON property `weight`
3342
+ # @return [Google::Apis::SlidesV1::Dimension]
3343
+ attr_accessor :weight
3344
+
3345
+ # The dash style of the outline.
3346
+ # Corresponds to the JSON property `dashStyle`
3347
+ # @return [String]
3348
+ attr_accessor :dash_style
3349
+
3350
+ # The outline property state.
3351
+ # Updating the the outline on a page element will implicitly update this
3352
+ # field to`RENDERED`, unless another value is specified in the same request.
3353
+ # To have no outline on a page element, set this field to `NOT_RENDERED`. In
3354
+ # this case, any other outline fields set in the same request will be
3355
+ # ignored.
3356
+ # Corresponds to the JSON property `propertyState`
3357
+ # @return [String]
3358
+ attr_accessor :property_state
3359
+
3360
+ # The fill of the outline.
3361
+ # Corresponds to the JSON property `outlineFill`
3362
+ # @return [Google::Apis::SlidesV1::OutlineFill]
3363
+ attr_accessor :outline_fill
3364
+
3365
+ def initialize(**args)
3366
+ update!(**args)
3367
+ end
3368
+
3369
+ # Update properties of this object
3370
+ def update!(**args)
3371
+ @weight = args[:weight] if args.key?(:weight)
3372
+ @dash_style = args[:dash_style] if args.key?(:dash_style)
3373
+ @property_state = args[:property_state] if args.key?(:property_state)
3374
+ @outline_fill = args[:outline_fill] if args.key?(:outline_fill)
3375
+ end
3376
+ end
3377
+
3378
+ # Properties and contents of each table cell.
3379
+ class TableCell
3380
+ include Google::Apis::Core::Hashable
3381
+
3382
+ # The general text content. The text must reside in a compatible shape (e.g.
3383
+ # text box or rectangle) or a table cell in a page.
3384
+ # Corresponds to the JSON property `text`
3385
+ # @return [Google::Apis::SlidesV1::TextContent]
3386
+ attr_accessor :text
3387
+
3388
+ # A location of a single table cell within a table.
3389
+ # Corresponds to the JSON property `location`
3390
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
3391
+ attr_accessor :location
3392
+
3393
+ # Row span of the cell.
3394
+ # Corresponds to the JSON property `rowSpan`
3395
+ # @return [Fixnum]
3396
+ attr_accessor :row_span
3397
+
3398
+ # The properties of the TableCell.
3399
+ # Corresponds to the JSON property `tableCellProperties`
3400
+ # @return [Google::Apis::SlidesV1::TableCellProperties]
3401
+ attr_accessor :table_cell_properties
3402
+
3403
+ # Column span of the cell.
3404
+ # Corresponds to the JSON property `columnSpan`
3405
+ # @return [Fixnum]
3406
+ attr_accessor :column_span
3407
+
3408
+ def initialize(**args)
3409
+ update!(**args)
3410
+ end
3411
+
3412
+ # Update properties of this object
3413
+ def update!(**args)
3414
+ @text = args[:text] if args.key?(:text)
3415
+ @location = args[:location] if args.key?(:location)
3416
+ @row_span = args[:row_span] if args.key?(:row_span)
3417
+ @table_cell_properties = args[:table_cell_properties] if args.key?(:table_cell_properties)
3418
+ @column_span = args[:column_span] if args.key?(:column_span)
3419
+ end
3420
+ end
3421
+
3422
+ # The result of replacing shapes with an image.
3423
+ class ReplaceAllShapesWithImageResponse
3424
+ include Google::Apis::Core::Hashable
3425
+
3426
+ # The number of shapes replaced with images.
3427
+ # Corresponds to the JSON property `occurrencesChanged`
3428
+ # @return [Fixnum]
3429
+ attr_accessor :occurrences_changed
3430
+
3431
+ def initialize(**args)
3432
+ update!(**args)
3433
+ end
3434
+
3435
+ # Update properties of this object
3436
+ def update!(**args)
3437
+ @occurrences_changed = args[:occurrences_changed] if args.key?(:occurrences_changed)
3438
+ end
3439
+ end
3440
+
3441
+ # Creates a new slide.
3442
+ class CreateSlideRequest
3443
+ include Google::Apis::Core::Hashable
3444
+
3445
+ # A user-supplied object ID.
3446
+ # If you specify an ID, it must be unique among all pages and page elements
3447
+ # in the presentation. The ID must start with an alphanumeric character or an
3448
+ # underscore (matches regex `[a-zA-Z0-9_]`); remaining characters
3449
+ # may include those as well as a hyphen or colon (matches regex
3450
+ # `[a-zA-Z0-9_-:]`).
3451
+ # The length of the ID must not be less than 5 or greater than 50.
3452
+ # If you don't specify an ID, a unique one is generated.
3453
+ # Corresponds to the JSON property `objectId`
3454
+ # @return [String]
3455
+ attr_accessor :object_id_prop
3456
+
3457
+ # The optional zero-based index indicating where to insert the slides.
3458
+ # If you don't specify an index, the new slide is created at the end.
3459
+ # Corresponds to the JSON property `insertionIndex`
3460
+ # @return [Fixnum]
3461
+ attr_accessor :insertion_index
3462
+
3463
+ # Slide layout reference. This may reference either:
3464
+ # - A predefined layout
3465
+ # - One of the layouts in the presentation.
3466
+ # Corresponds to the JSON property `slideLayoutReference`
3467
+ # @return [Google::Apis::SlidesV1::LayoutReference]
3468
+ attr_accessor :slide_layout_reference
3469
+
3470
+ def initialize(**args)
3471
+ update!(**args)
3472
+ end
3473
+
3474
+ # Update properties of this object
3475
+ def update!(**args)
3476
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
3477
+ @insertion_index = args[:insertion_index] if args.key?(:insertion_index)
3478
+ @slide_layout_reference = args[:slide_layout_reference] if args.key?(:slide_layout_reference)
3479
+ end
3480
+ end
3481
+
3482
+ # The properties of the TableCell.
3483
+ class TableCellProperties
3484
+ include Google::Apis::Core::Hashable
3485
+
3486
+ # The table cell background fill.
3487
+ # Corresponds to the JSON property `tableCellBackgroundFill`
3488
+ # @return [Google::Apis::SlidesV1::TableCellBackgroundFill]
3489
+ attr_accessor :table_cell_background_fill
3490
+
3491
+ def initialize(**args)
3492
+ update!(**args)
3493
+ end
3494
+
3495
+ # Update properties of this object
3496
+ def update!(**args)
3497
+ @table_cell_background_fill = args[:table_cell_background_fill] if args.key?(:table_cell_background_fill)
3498
+ end
3499
+ end
3500
+
3501
+ # The result of creating a table.
3502
+ class CreateTableResponse
3503
+ include Google::Apis::Core::Hashable
3504
+
3505
+ # The object ID of the created table.
3506
+ # Corresponds to the JSON property `objectId`
3507
+ # @return [String]
3508
+ attr_accessor :object_id_prop
3509
+
3510
+ def initialize(**args)
3511
+ update!(**args)
3512
+ end
3513
+
3514
+ # Update properties of this object
3515
+ def update!(**args)
3516
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
3517
+ end
3518
+ end
3519
+
3520
+ # A width and height.
3521
+ class Size
3522
+ include Google::Apis::Core::Hashable
3523
+
3524
+ # A magnitude in a single direction in the specified units.
3525
+ # Corresponds to the JSON property `width`
3526
+ # @return [Google::Apis::SlidesV1::Dimension]
3527
+ attr_accessor :width
3528
+
3529
+ # A magnitude in a single direction in the specified units.
3530
+ # Corresponds to the JSON property `height`
3531
+ # @return [Google::Apis::SlidesV1::Dimension]
3532
+ attr_accessor :height
3533
+
3534
+ def initialize(**args)
3535
+ update!(**args)
3536
+ end
3537
+
3538
+ # Update properties of this object
3539
+ def update!(**args)
3540
+ @width = args[:width] if args.key?(:width)
3541
+ @height = args[:height] if args.key?(:height)
3542
+ end
3543
+ end
3544
+
3545
+ # The palette of predefined colors for a page.
3546
+ class ColorScheme
3547
+ include Google::Apis::Core::Hashable
3548
+
3549
+ # The ThemeColorType and corresponding concrete color pairs.
3550
+ # Corresponds to the JSON property `colors`
3551
+ # @return [Array<Google::Apis::SlidesV1::ThemeColorPair>]
3552
+ attr_accessor :colors
3553
+
3554
+ def initialize(**args)
3555
+ update!(**args)
3556
+ end
3557
+
3558
+ # Update properties of this object
3559
+ def update!(**args)
3560
+ @colors = args[:colors] if args.key?(:colors)
3561
+ end
3562
+ end
3563
+
3564
+ # A TextElement kind that represents the beginning of a new paragraph.
3565
+ class ParagraphMarker
3566
+ include Google::Apis::Core::Hashable
3567
+
3568
+ # Styles that apply to a whole paragraph.
3569
+ # If this text is contained in a shape with a parent placeholder, then these
3570
+ # paragraph styles may be
3571
+ # inherited from the parent. Which paragraph styles are inherited depend on the
3572
+ # nesting level of lists:
3573
+ # * A paragraph not in a list will inherit its paragraph style from the
3574
+ # paragraph at the 0 nesting level of the list inside the parent placeholder.
3575
+ # * A paragraph in a list will inherit its paragraph style from the paragraph
3576
+ # at its corresponding nesting level of the list inside the parent
3577
+ # placeholder.
3578
+ # Inherited paragraph styles are represented as unset fields in this message.
3579
+ # Corresponds to the JSON property `style`
3580
+ # @return [Google::Apis::SlidesV1::ParagraphStyle]
3581
+ attr_accessor :style
3582
+
3583
+ # Describes the bullet of a paragraph.
3584
+ # Corresponds to the JSON property `bullet`
3585
+ # @return [Google::Apis::SlidesV1::Bullet]
3586
+ attr_accessor :bullet
3587
+
3588
+ def initialize(**args)
3589
+ update!(**args)
3590
+ end
3591
+
3592
+ # Update properties of this object
3593
+ def update!(**args)
3594
+ @style = args[:style] if args.key?(:style)
3595
+ @bullet = args[:bullet] if args.key?(:bullet)
3596
+ end
3597
+ end
3598
+
3599
+ # Creates bullets for all of the paragraphs that overlap with the given
3600
+ # text index range.
3601
+ # The nesting level of each paragraph will be determined by counting leading
3602
+ # tabs in front of each paragraph. To avoid excess space between the bullet and
3603
+ # the corresponding paragraph, these leading tabs are removed by this request.
3604
+ # This may change the indices of parts of the text.
3605
+ # If the paragraph immediately before paragraphs being updated is in a list
3606
+ # with a matching preset, the paragraphs being updated are added to that
3607
+ # preceding list.
3608
+ class CreateParagraphBulletsRequest
3609
+ include Google::Apis::Core::Hashable
3610
+
3611
+ # The object ID of the shape or table containing the text to add bullets to.
3612
+ # Corresponds to the JSON property `objectId`
3613
+ # @return [String]
3614
+ attr_accessor :object_id_prop
3615
+
3616
+ # Specifies a contiguous range of an indexed collection, such as characters in
3617
+ # text.
3618
+ # Corresponds to the JSON property `textRange`
3619
+ # @return [Google::Apis::SlidesV1::Range]
3620
+ attr_accessor :text_range
3621
+
3622
+ # The kinds of bullet glyphs to be used. Defaults to the
3623
+ # `BULLET_DISC_CIRCLE_SQUARE` preset.
3624
+ # Corresponds to the JSON property `bulletPreset`
3625
+ # @return [String]
3626
+ attr_accessor :bullet_preset
3627
+
3628
+ # A location of a single table cell within a table.
3629
+ # Corresponds to the JSON property `cellLocation`
3630
+ # @return [Google::Apis::SlidesV1::TableCellLocation]
3631
+ attr_accessor :cell_location
3632
+
3633
+ def initialize(**args)
3634
+ update!(**args)
3635
+ end
3636
+
3637
+ # Update properties of this object
3638
+ def update!(**args)
3639
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
3640
+ @text_range = args[:text_range] if args.key?(:text_range)
3641
+ @bullet_preset = args[:bullet_preset] if args.key?(:bullet_preset)
3642
+ @cell_location = args[:cell_location] if args.key?(:cell_location)
3643
+ end
3644
+ end
3645
+
3646
+ # A criteria that matches a specific string of text in a shape or table.
3647
+ class SubstringMatchCriteria
3648
+ include Google::Apis::Core::Hashable
3649
+
3650
+ # The text to search for in the shape or table.
3651
+ # Corresponds to the JSON property `text`
3652
+ # @return [String]
3653
+ attr_accessor :text
3654
+
3655
+ # Indicates whether the search should respect case:
3656
+ # - `True`: the search is case sensitive.
3657
+ # - `False`: the search is case insensitive.
3658
+ # Corresponds to the JSON property `matchCase`
3659
+ # @return [Boolean]
3660
+ attr_accessor :match_case
3661
+ alias_method :match_case?, :match_case
3662
+
3663
+ def initialize(**args)
3664
+ update!(**args)
3665
+ end
3666
+
3667
+ # Update properties of this object
3668
+ def update!(**args)
3669
+ @text = args[:text] if args.key?(:text)
3670
+ @match_case = args[:match_case] if args.key?(:match_case)
3671
+ end
3672
+ end
3673
+
3674
+ # A PageElement kind representing
3675
+ # word art.
3676
+ class WordArt
3677
+ include Google::Apis::Core::Hashable
3678
+
3679
+ # The text rendered as word art.
3680
+ # Corresponds to the JSON property `renderedText`
3681
+ # @return [String]
3682
+ attr_accessor :rendered_text
3683
+
3684
+ def initialize(**args)
3685
+ update!(**args)
3686
+ end
3687
+
3688
+ # Update properties of this object
3689
+ def update!(**args)
3690
+ @rendered_text = args[:rendered_text] if args.key?(:rendered_text)
3691
+ end
3692
+ end
3693
+
3694
+ # Specifies a contiguous range of an indexed collection, such as characters in
3695
+ # text.
3696
+ class Range
3697
+ include Google::Apis::Core::Hashable
3698
+
3699
+ # The optional zero-based index of the end of the collection.
3700
+ # Required for `SPECIFIC_RANGE` delete mode.
3701
+ # Corresponds to the JSON property `endIndex`
3702
+ # @return [Fixnum]
3703
+ attr_accessor :end_index
3704
+
3705
+ # The optional zero-based index of the beginning of the collection.
3706
+ # Required for `SPECIFIC_RANGE` and `FROM_START_INDEX` ranges.
3707
+ # Corresponds to the JSON property `startIndex`
3708
+ # @return [Fixnum]
3709
+ attr_accessor :start_index
3710
+
3711
+ # The type of range.
3712
+ # Corresponds to the JSON property `type`
3713
+ # @return [String]
3714
+ attr_accessor :type
3715
+
3716
+ def initialize(**args)
3717
+ update!(**args)
3718
+ end
3719
+
3720
+ # Update properties of this object
3721
+ def update!(**args)
3722
+ @end_index = args[:end_index] if args.key?(:end_index)
3723
+ @start_index = args[:start_index] if args.key?(:start_index)
3724
+ @type = args[:type] if args.key?(:type)
3725
+ end
3726
+ end
3727
+
3728
+ # Properties of each column in a table.
3729
+ class TableColumnProperties
3730
+ include Google::Apis::Core::Hashable
3731
+
3732
+ # A magnitude in a single direction in the specified units.
3733
+ # Corresponds to the JSON property `columnWidth`
3734
+ # @return [Google::Apis::SlidesV1::Dimension]
3735
+ attr_accessor :column_width
3736
+
3737
+ def initialize(**args)
3738
+ update!(**args)
3739
+ end
3740
+
3741
+ # Update properties of this object
3742
+ def update!(**args)
3743
+ @column_width = args[:column_width] if args.key?(:column_width)
3744
+ end
3745
+ end
3746
+
3747
+ # A single kind of update to apply to a presentation.
3748
+ class Request
3749
+ include Google::Apis::Core::Hashable
3750
+
3751
+ # Creates bullets for all of the paragraphs that overlap with the given
3752
+ # text index range.
3753
+ # The nesting level of each paragraph will be determined by counting leading
3754
+ # tabs in front of each paragraph. To avoid excess space between the bullet and
3755
+ # the corresponding paragraph, these leading tabs are removed by this request.
3756
+ # This may change the indices of parts of the text.
3757
+ # If the paragraph immediately before paragraphs being updated is in a list
3758
+ # with a matching preset, the paragraphs being updated are added to that
3759
+ # preceding list.
3760
+ # Corresponds to the JSON property `createParagraphBullets`
3761
+ # @return [Google::Apis::SlidesV1::CreateParagraphBulletsRequest]
3762
+ attr_accessor :create_paragraph_bullets
3763
+
3764
+ # Inserts columns into a table.
3765
+ # Other columns in the table will be resized to fit the new column.
3766
+ # Corresponds to the JSON property `insertTableColumns`
3767
+ # @return [Google::Apis::SlidesV1::InsertTableColumnsRequest]
3768
+ attr_accessor :insert_table_columns
3769
+
3770
+ # Creates a new table.
3771
+ # Corresponds to the JSON property `createTable`
3772
+ # @return [Google::Apis::SlidesV1::CreateTableRequest]
3773
+ attr_accessor :create_table
3774
+
3775
+ # Deletes text from a shape or a table cell.
3776
+ # Corresponds to the JSON property `deleteText`
3777
+ # @return [Google::Apis::SlidesV1::DeleteTextRequest]
3778
+ attr_accessor :delete_text
3779
+
3780
+ # Replaces all instances of text matching a criteria with replace text.
3781
+ # Corresponds to the JSON property `replaceAllText`
3782
+ # @return [Google::Apis::SlidesV1::ReplaceAllTextRequest]
3783
+ attr_accessor :replace_all_text
3784
+
3785
+ # Update the properties of a Video.
3786
+ # Corresponds to the JSON property `updateVideoProperties`
3787
+ # @return [Google::Apis::SlidesV1::UpdateVideoPropertiesRequest]
3788
+ attr_accessor :update_video_properties
3789
+
3790
+ # Inserts text into a shape or a table cell.
3791
+ # Corresponds to the JSON property `insertText`
3792
+ # @return [Google::Apis::SlidesV1::InsertTextRequest]
3793
+ attr_accessor :insert_text
3794
+
3795
+ # Deletes a row from a table.
3796
+ # Corresponds to the JSON property `deleteTableRow`
3797
+ # @return [Google::Apis::SlidesV1::DeleteTableRowRequest]
3798
+ attr_accessor :delete_table_row
3799
+
3800
+ # Creates a line.
3801
+ # Corresponds to the JSON property `createLine`
3802
+ # @return [Google::Apis::SlidesV1::CreateLineRequest]
3803
+ attr_accessor :create_line
3804
+
3805
+ # Update the styling of text in a Shape or
3806
+ # Table.
3807
+ # Corresponds to the JSON property `updateTextStyle`
3808
+ # @return [Google::Apis::SlidesV1::UpdateTextStyleRequest]
3809
+ attr_accessor :update_text_style
3810
+
3811
+ # Inserts rows into a table.
3812
+ # Corresponds to the JSON property `insertTableRows`
3813
+ # @return [Google::Apis::SlidesV1::InsertTableRowsRequest]
3814
+ attr_accessor :insert_table_rows
3815
+
3816
+ # Update the properties of a TableCell.
3817
+ # Corresponds to the JSON property `updateTableCellProperties`
3818
+ # @return [Google::Apis::SlidesV1::UpdateTableCellPropertiesRequest]
3819
+ attr_accessor :update_table_cell_properties
3820
+
3821
+ # Refreshes an embedded Google Sheets chart by replacing it with the latest
3822
+ # version of the chart from Google Sheets.
3823
+ # NOTE: Refreshing charts requires at least one of the spreadsheets.readonly,
3824
+ # spreadsheets, drive.readonly, or drive OAuth scopes.
3825
+ # Corresponds to the JSON property `refreshSheetsChart`
3826
+ # @return [Google::Apis::SlidesV1::RefreshSheetsChartRequest]
3827
+ attr_accessor :refresh_sheets_chart
3828
+
3829
+ # Creates an embedded Google Sheets chart.
3830
+ # NOTE: Chart creation requires at least one of the spreadsheets.readonly,
3831
+ # spreadsheets, drive.readonly, or drive OAuth scopes.
3832
+ # Corresponds to the JSON property `createSheetsChart`
3833
+ # @return [Google::Apis::SlidesV1::CreateSheetsChartRequest]
3834
+ attr_accessor :create_sheets_chart
3835
+
3836
+ # Updates the properties of a Page.
3837
+ # Corresponds to the JSON property `updatePageProperties`
3838
+ # @return [Google::Apis::SlidesV1::UpdatePagePropertiesRequest]
3839
+ attr_accessor :update_page_properties
3840
+
3841
+ # Update the properties of a Shape.
3842
+ # Corresponds to the JSON property `updateShapeProperties`
3843
+ # @return [Google::Apis::SlidesV1::UpdateShapePropertiesRequest]
3844
+ attr_accessor :update_shape_properties
3845
+
3846
+ # Creates a new slide.
3847
+ # Corresponds to the JSON property `createSlide`
3848
+ # @return [Google::Apis::SlidesV1::CreateSlideRequest]
3849
+ attr_accessor :create_slide
3850
+
3851
+ # Deletes an object, either pages or
3852
+ # page elements, from the
3853
+ # presentation.
3854
+ # Corresponds to the JSON property `deleteObject`
3855
+ # @return [Google::Apis::SlidesV1::DeleteObjectRequest]
3856
+ attr_accessor :delete_object
3857
+
3858
+ # Creates a new shape.
3859
+ # Corresponds to the JSON property `createShape`
3860
+ # @return [Google::Apis::SlidesV1::CreateShapeRequest]
3861
+ attr_accessor :create_shape
3862
+
3863
+ # Updates the transform of a page element.
3864
+ # Corresponds to the JSON property `updatePageElementTransform`
3865
+ # @return [Google::Apis::SlidesV1::UpdatePageElementTransformRequest]
3866
+ attr_accessor :update_page_element_transform
3867
+
3868
+ # Updates the position of slides in the presentation.
3869
+ # Corresponds to the JSON property `updateSlidesPosition`
3870
+ # @return [Google::Apis::SlidesV1::UpdateSlidesPositionRequest]
3871
+ attr_accessor :update_slides_position
3872
+
3873
+ # Replaces all shapes that match the given criteria with the provided image.
3874
+ # Corresponds to the JSON property `replaceAllShapesWithImage`
3875
+ # @return [Google::Apis::SlidesV1::ReplaceAllShapesWithImageRequest]
3876
+ attr_accessor :replace_all_shapes_with_image
3877
+
3878
+ # Update the properties of an Image.
3879
+ # Corresponds to the JSON property `updateImageProperties`
3880
+ # @return [Google::Apis::SlidesV1::UpdateImagePropertiesRequest]
3881
+ attr_accessor :update_image_properties
3882
+
3883
+ # Creates a video.
3884
+ # Corresponds to the JSON property `createVideo`
3885
+ # @return [Google::Apis::SlidesV1::CreateVideoRequest]
3886
+ attr_accessor :create_video
3887
+
3888
+ # Creates an image.
3889
+ # Corresponds to the JSON property `createImage`
3890
+ # @return [Google::Apis::SlidesV1::CreateImageRequest]
3891
+ attr_accessor :create_image
3892
+
3893
+ # Duplicates a slide or page element.
3894
+ # When duplicating a slide, the duplicate slide will be created immediately
3895
+ # following the specified slide. When duplicating a page element, the duplicate
3896
+ # will be placed on the same page at the same position as the original.
3897
+ # Corresponds to the JSON property `duplicateObject`
3898
+ # @return [Google::Apis::SlidesV1::DuplicateObjectRequest]
3899
+ attr_accessor :duplicate_object
3900
+
3901
+ # Deletes a column from a table.
3902
+ # Corresponds to the JSON property `deleteTableColumn`
3903
+ # @return [Google::Apis::SlidesV1::DeleteTableColumnRequest]
3904
+ attr_accessor :delete_table_column
3905
+
3906
+ # Updates the properties of a Line.
3907
+ # Corresponds to the JSON property `updateLineProperties`
3908
+ # @return [Google::Apis::SlidesV1::UpdateLinePropertiesRequest]
3909
+ attr_accessor :update_line_properties
3910
+
3911
+ def initialize(**args)
3912
+ update!(**args)
3913
+ end
3914
+
3915
+ # Update properties of this object
3916
+ def update!(**args)
3917
+ @create_paragraph_bullets = args[:create_paragraph_bullets] if args.key?(:create_paragraph_bullets)
3918
+ @insert_table_columns = args[:insert_table_columns] if args.key?(:insert_table_columns)
3919
+ @create_table = args[:create_table] if args.key?(:create_table)
3920
+ @delete_text = args[:delete_text] if args.key?(:delete_text)
3921
+ @replace_all_text = args[:replace_all_text] if args.key?(:replace_all_text)
3922
+ @update_video_properties = args[:update_video_properties] if args.key?(:update_video_properties)
3923
+ @insert_text = args[:insert_text] if args.key?(:insert_text)
3924
+ @delete_table_row = args[:delete_table_row] if args.key?(:delete_table_row)
3925
+ @create_line = args[:create_line] if args.key?(:create_line)
3926
+ @update_text_style = args[:update_text_style] if args.key?(:update_text_style)
3927
+ @insert_table_rows = args[:insert_table_rows] if args.key?(:insert_table_rows)
3928
+ @update_table_cell_properties = args[:update_table_cell_properties] if args.key?(:update_table_cell_properties)
3929
+ @refresh_sheets_chart = args[:refresh_sheets_chart] if args.key?(:refresh_sheets_chart)
3930
+ @create_sheets_chart = args[:create_sheets_chart] if args.key?(:create_sheets_chart)
3931
+ @update_page_properties = args[:update_page_properties] if args.key?(:update_page_properties)
3932
+ @update_shape_properties = args[:update_shape_properties] if args.key?(:update_shape_properties)
3933
+ @create_slide = args[:create_slide] if args.key?(:create_slide)
3934
+ @delete_object = args[:delete_object] if args.key?(:delete_object)
3935
+ @create_shape = args[:create_shape] if args.key?(:create_shape)
3936
+ @update_page_element_transform = args[:update_page_element_transform] if args.key?(:update_page_element_transform)
3937
+ @update_slides_position = args[:update_slides_position] if args.key?(:update_slides_position)
3938
+ @replace_all_shapes_with_image = args[:replace_all_shapes_with_image] if args.key?(:replace_all_shapes_with_image)
3939
+ @update_image_properties = args[:update_image_properties] if args.key?(:update_image_properties)
3940
+ @create_video = args[:create_video] if args.key?(:create_video)
3941
+ @create_image = args[:create_image] if args.key?(:create_image)
3942
+ @duplicate_object = args[:duplicate_object] if args.key?(:duplicate_object)
3943
+ @delete_table_column = args[:delete_table_column] if args.key?(:delete_table_column)
3944
+ @update_line_properties = args[:update_line_properties] if args.key?(:update_line_properties)
3945
+ end
3946
+ end
3947
+
3948
+ # The fill of the line.
3949
+ class LineFill
3950
+ include Google::Apis::Core::Hashable
3951
+
3952
+ # A solid color fill. The page or page element is filled entirely with the
3953
+ # specified color value.
3954
+ # If any field is unset, its value may be inherited from a parent placeholder
3955
+ # if it exists.
3956
+ # Corresponds to the JSON property `solidFill`
3957
+ # @return [Google::Apis::SlidesV1::SolidFill]
3958
+ attr_accessor :solid_fill
3959
+
3960
+ def initialize(**args)
3961
+ update!(**args)
3962
+ end
3963
+
3964
+ # Update properties of this object
3965
+ def update!(**args)
3966
+ @solid_fill = args[:solid_fill] if args.key?(:solid_fill)
3967
+ end
3968
+ end
3969
+
3970
+ # The fill of the outline.
3971
+ class OutlineFill
3972
+ include Google::Apis::Core::Hashable
3973
+
3974
+ # A solid color fill. The page or page element is filled entirely with the
3975
+ # specified color value.
3976
+ # If any field is unset, its value may be inherited from a parent placeholder
3977
+ # if it exists.
3978
+ # Corresponds to the JSON property `solidFill`
3979
+ # @return [Google::Apis::SlidesV1::SolidFill]
3980
+ attr_accessor :solid_fill
3981
+
3982
+ def initialize(**args)
3983
+ update!(**args)
3984
+ end
3985
+
3986
+ # Update properties of this object
3987
+ def update!(**args)
3988
+ @solid_fill = args[:solid_fill] if args.key?(:solid_fill)
3989
+ end
3990
+ end
3991
+
3992
+ # Describes the bullet of a paragraph.
3993
+ class Bullet
3994
+ include Google::Apis::Core::Hashable
3995
+
3996
+ # The nesting level of this paragraph in the list.
3997
+ # Corresponds to the JSON property `nestingLevel`
3998
+ # @return [Fixnum]
3999
+ attr_accessor :nesting_level
4000
+
4001
+ # The rendered bullet glyph for this paragraph.
4002
+ # Corresponds to the JSON property `glyph`
4003
+ # @return [String]
4004
+ attr_accessor :glyph
4005
+
4006
+ # Represents the styling that can be applied to a TextRun.
4007
+ # If this text is contained in a shape with a parent placeholder, then these
4008
+ # text styles may be
4009
+ # inherited from the parent. Which text styles are inherited depend on the
4010
+ # nesting level of lists:
4011
+ # * A text run in a paragraph that is not in a list will inherit its text style
4012
+ # from the the newline character in the paragraph at the 0 nesting level of
4013
+ # the list inside the parent placeholder.
4014
+ # * A text run in a paragraph that is in a list will inherit its text style
4015
+ # from the newline character in the paragraph at its corresponding nesting
4016
+ # level of the list inside the parent placeholder.
4017
+ # Inherited text styles are represented as unset fields in this message. If
4018
+ # text is contained in a shape without a parent placeholder, unsetting these
4019
+ # fields will revert the style to a value matching the defaults in the Slides
4020
+ # editor.
4021
+ # Corresponds to the JSON property `bulletStyle`
4022
+ # @return [Google::Apis::SlidesV1::TextStyle]
4023
+ attr_accessor :bullet_style
4024
+
4025
+ # The ID of the list this paragraph belongs to.
4026
+ # Corresponds to the JSON property `listId`
4027
+ # @return [String]
4028
+ attr_accessor :list_id
4029
+
4030
+ def initialize(**args)
4031
+ update!(**args)
4032
+ end
4033
+
4034
+ # Update properties of this object
4035
+ def update!(**args)
4036
+ @nesting_level = args[:nesting_level] if args.key?(:nesting_level)
4037
+ @glyph = args[:glyph] if args.key?(:glyph)
4038
+ @bullet_style = args[:bullet_style] if args.key?(:bullet_style)
4039
+ @list_id = args[:list_id] if args.key?(:list_id)
4040
+ end
4041
+ end
4042
+ end
4043
+ end
4044
+ end