rubyXL 3.4.27 → 3.4.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (421) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +28 -0
  3. data/VERSION +1 -1
  4. data/lib/rubyXL/convenience_methods/cell.rb +1 -1
  5. data/lib/rubyXL/convenience_methods/workbook.rb +1 -5
  6. data/lib/rubyXL/convenience_methods/worksheet.rb +2 -2
  7. data/lib/rubyXL/objects/color.rb +1 -1
  8. data/lib/rubyXL/objects/column_range.rb +2 -2
  9. data/lib/rubyXL/objects/ooxml_object.rb +5 -5
  10. data/lib/rubyXL/objects/query_table.rb +4 -2
  11. data/lib/rubyXL/objects/reference.rb +9 -5
  12. data/lib/rubyXL/objects/shared_strings.rb +1 -1
  13. data/lib/rubyXL/objects/sheet_data.rb +6 -6
  14. data/lib/rubyXL/objects/storage.rb +1 -1
  15. data/lib/rubyXL/objects/stylesheet.rb +2 -3
  16. data/lib/rubyXL/objects/text.rb +3 -3
  17. data/lib/rubyXL/objects/theme.rb +15 -17
  18. data/lib/rubyXL/objects/workbook.rb +8 -8
  19. data/lib/rubyXL/objects/worksheet.rb +2 -2
  20. data/lib/rubyXL/worksheet.rb +5 -5
  21. data/rdoc/README_rdoc.html +1 -1
  22. data/rdoc/RubyXL/AExtension.html +3 -3
  23. data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
  24. data/rdoc/RubyXL/ActiveX.html +1 -1
  25. data/rdoc/RubyXL/ActiveXBinary.html +1 -1
  26. data/rdoc/RubyXL/AdjustHandleList.html +1 -1
  27. data/rdoc/RubyXL/Alignment.html +1 -1
  28. data/rdoc/RubyXL/AlternateContent.html +1 -1
  29. data/rdoc/RubyXL/AlternateUrls.html +1 -1
  30. data/rdoc/RubyXL/Authors.html +1 -1
  31. data/rdoc/RubyXL/AutoFilter.html +1 -1
  32. data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
  33. data/rdoc/RubyXL/BinaryImageFile.html +1 -1
  34. data/rdoc/RubyXL/BodyProperties.html +1 -1
  35. data/rdoc/RubyXL/BooleanNode.html +1 -1
  36. data/rdoc/RubyXL/BooleanValue.html +1 -1
  37. data/rdoc/RubyXL/Border.html +1 -1
  38. data/rdoc/RubyXL/BorderEdge.html +1 -1
  39. data/rdoc/RubyXL/Borders.html +1 -1
  40. data/rdoc/RubyXL/Break.html +1 -1
  41. data/rdoc/RubyXL/BreakList.html +1 -1
  42. data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
  43. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
  44. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
  45. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
  46. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
  47. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
  48. data/rdoc/RubyXL/CT_Backdrop.html +1 -1
  49. data/rdoc/RubyXL/CT_Bevel.html +1 -1
  50. data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
  51. data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
  52. data/rdoc/RubyXL/CT_Blip.html +1 -1
  53. data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
  54. data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
  55. data/rdoc/RubyXL/CT_Camera.html +1 -1
  56. data/rdoc/RubyXL/CT_Color.html +1 -1
  57. data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
  58. data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
  59. data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
  60. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
  61. data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
  62. data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
  63. data/rdoc/RubyXL/CT_DashStop.html +1 -1
  64. data/rdoc/RubyXL/CT_DashStopList.html +1 -1
  65. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
  66. data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
  67. data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
  68. data/rdoc/RubyXL/CT_EffectList.html +1 -1
  69. data/rdoc/RubyXL/CT_EffectReference.html +1 -1
  70. data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
  71. data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
  72. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
  73. data/rdoc/RubyXL/CT_FillEffect.html +1 -1
  74. data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
  75. data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
  76. data/rdoc/RubyXL/CT_FlatText.html +1 -1
  77. data/rdoc/RubyXL/CT_FontCollection.html +1 -1
  78. data/rdoc/RubyXL/CT_FontReference.html +1 -1
  79. data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
  80. data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
  81. data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
  82. data/rdoc/RubyXL/CT_GradientStop.html +1 -1
  83. data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
  84. data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
  85. data/rdoc/RubyXL/CT_HslColor.html +1 -1
  86. data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
  87. data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
  88. data/rdoc/RubyXL/CT_LightRig.html +1 -1
  89. data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
  90. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
  91. data/rdoc/RubyXL/CT_LineProperties.html +1 -1
  92. data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
  93. data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
  94. data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
  95. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
  96. data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
  97. data/rdoc/RubyXL/CT_Path2D.html +1 -1
  98. data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
  99. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
  100. data/rdoc/RubyXL/CT_Path2DList.html +1 -1
  101. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
  102. data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
  103. data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
  104. data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
  105. data/rdoc/RubyXL/CT_Point3D.html +1 -1
  106. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
  107. data/rdoc/RubyXL/CT_PresetColor.html +1 -1
  108. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
  109. data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
  110. data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
  111. data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
  112. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
  113. data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
  114. data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
  115. data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
  116. data/rdoc/RubyXL/CT_Scene3D.html +1 -1
  117. data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
  118. data/rdoc/RubyXL/CT_Shape3D.html +1 -1
  119. data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
  120. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
  121. data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
  122. data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
  123. data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
  124. data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
  125. data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
  126. data/rdoc/RubyXL/CT_SystemColor.html +1 -1
  127. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
  128. data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
  129. data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
  130. data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
  131. data/rdoc/RubyXL/CT_TextFont.html +1 -1
  132. data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
  133. data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
  134. data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
  135. data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
  136. data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
  137. data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
  138. data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
  139. data/rdoc/RubyXL/CT_TintEffect.html +1 -1
  140. data/rdoc/RubyXL/CT_Transform2D.html +1 -1
  141. data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
  142. data/rdoc/RubyXL/CT_Vector3D.html +1 -1
  143. data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
  144. data/rdoc/RubyXL/CalculationChain.html +1 -1
  145. data/rdoc/RubyXL/CalculationChainCell.html +1 -1
  146. data/rdoc/RubyXL/CalculationProperties.html +1 -1
  147. data/rdoc/RubyXL/Cell.html +7 -7
  148. data/rdoc/RubyXL/CellConvenienceMethods.html +2 -2
  149. data/rdoc/RubyXL/CellExt.html +1 -1
  150. data/rdoc/RubyXL/CellSmartTag.html +1 -1
  151. data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
  152. data/rdoc/RubyXL/CellSmartTags.html +1 -1
  153. data/rdoc/RubyXL/CellStyle.html +1 -1
  154. data/rdoc/RubyXL/CellStyleXFs.html +1 -1
  155. data/rdoc/RubyXL/CellStyles.html +2 -2
  156. data/rdoc/RubyXL/CellValue.html +1 -1
  157. data/rdoc/RubyXL/CellWatch.html +1 -1
  158. data/rdoc/RubyXL/CellWatches.html +1 -1
  159. data/rdoc/RubyXL/CellXFs.html +3 -4
  160. data/rdoc/RubyXL/ChartColorsFile.html +1 -1
  161. data/rdoc/RubyXL/ChartFile.html +1 -1
  162. data/rdoc/RubyXL/ChartStyleFile.html +1 -1
  163. data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
  164. data/rdoc/RubyXL/Chartsheet.html +1 -1
  165. data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
  166. data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
  167. data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
  168. data/rdoc/RubyXL/ChartsheetView.html +1 -1
  169. data/rdoc/RubyXL/ChartsheetViews.html +1 -1
  170. data/rdoc/RubyXL/Color.html +1 -1
  171. data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +1 -1
  172. data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +1 -1
  173. data/rdoc/RubyXL/ColorConvenienceClasses.html +1 -1
  174. data/rdoc/RubyXL/ColorConvenienceMethods.html +1 -1
  175. data/rdoc/RubyXL/ColorFilter.html +1 -1
  176. data/rdoc/RubyXL/ColorScale.html +1 -1
  177. data/rdoc/RubyXL/ColorSet.html +1 -1
  178. data/rdoc/RubyXL/Colors.html +1 -1
  179. data/rdoc/RubyXL/ColumnRange.html +1 -1
  180. data/rdoc/RubyXL/ColumnRanges.html +3 -3
  181. data/rdoc/RubyXL/Comment.html +1 -1
  182. data/rdoc/RubyXL/CommentList.html +1 -1
  183. data/rdoc/RubyXL/CommentsFile.html +1 -1
  184. data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
  185. data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
  186. data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
  187. data/rdoc/RubyXL/Connection.html +1 -1
  188. data/rdoc/RubyXL/ConnectionTable.html +1 -1
  189. data/rdoc/RubyXL/ConnectionTables.html +1 -1
  190. data/rdoc/RubyXL/ConnectionTextField.html +1 -1
  191. data/rdoc/RubyXL/ConnectionTextFields.html +1 -1
  192. data/rdoc/RubyXL/Connections.html +1 -1
  193. data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
  194. data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
  195. data/rdoc/RubyXL/ContentTypes.html +1 -1
  196. data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
  197. data/rdoc/RubyXL/CorePropertiesFile.html +1 -1
  198. data/rdoc/RubyXL/CustomColor.html +1 -1
  199. data/rdoc/RubyXL/CustomColorList.html +1 -1
  200. data/rdoc/RubyXL/CustomFilter.html +1 -1
  201. data/rdoc/RubyXL/CustomFilters.html +1 -1
  202. data/rdoc/RubyXL/CustomGeometry.html +1 -1
  203. data/rdoc/RubyXL/CustomProperties.html +1 -1
  204. data/rdoc/RubyXL/CustomPropertiesFile.html +1 -1
  205. data/rdoc/RubyXL/CustomProperty.html +1 -1
  206. data/rdoc/RubyXL/CustomPropertyFile.html +1 -1
  207. data/rdoc/RubyXL/CustomSheetView.html +1 -1
  208. data/rdoc/RubyXL/CustomSheetViews.html +1 -1
  209. data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
  210. data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
  211. data/rdoc/RubyXL/CustomXMLFile.html +1 -1
  212. data/rdoc/RubyXL/DXF.html +1 -1
  213. data/rdoc/RubyXL/DXFs.html +1 -1
  214. data/rdoc/RubyXL/DataBar.html +1 -1
  215. data/rdoc/RubyXL/DataConsolidate.html +1 -1
  216. data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
  217. data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
  218. data/rdoc/RubyXL/DataType.html +1 -1
  219. data/rdoc/RubyXL/DataValidation.html +1 -1
  220. data/rdoc/RubyXL/DataValidations.html +1 -1
  221. data/rdoc/RubyXL/DateGroupItem.html +1 -1
  222. data/rdoc/RubyXL/DefinedName.html +1 -1
  223. data/rdoc/RubyXL/DefinedNameExt.html +1 -1
  224. data/rdoc/RubyXL/DefinedNames.html +1 -1
  225. data/rdoc/RubyXL/DefinedNamesExt.html +1 -1
  226. data/rdoc/RubyXL/DocumentPropertiesFile.html +1 -1
  227. data/rdoc/RubyXL/DrawingFile.html +1 -1
  228. data/rdoc/RubyXL/DynamicFilter.html +1 -1
  229. data/rdoc/RubyXL/EmbeddedControl.html +1 -1
  230. data/rdoc/RubyXL/EmbeddedControls.html +1 -1
  231. data/rdoc/RubyXL/Extension.html +1 -1
  232. data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
  233. data/rdoc/RubyXL/Extents.html +1 -1
  234. data/rdoc/RubyXL/ExternalBook.html +1 -1
  235. data/rdoc/RubyXL/ExternalLinksFile.html +1 -1
  236. data/rdoc/RubyXL/ExternalReference.html +1 -1
  237. data/rdoc/RubyXL/ExternalReferences.html +1 -1
  238. data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
  239. data/rdoc/RubyXL/FieldItem.html +1 -1
  240. data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
  241. data/rdoc/RubyXL/FileSharing.html +1 -1
  242. data/rdoc/RubyXL/FileVersion.html +1 -1
  243. data/rdoc/RubyXL/Fill.html +1 -1
  244. data/rdoc/RubyXL/Fills.html +1 -1
  245. data/rdoc/RubyXL/FilterContainer.html +1 -1
  246. data/rdoc/RubyXL/FloatNode.html +1 -1
  247. data/rdoc/RubyXL/FloatValue.html +1 -1
  248. data/rdoc/RubyXL/Font.html +1 -1
  249. data/rdoc/RubyXL/FontConvenienceMethods.html +1 -1
  250. data/rdoc/RubyXL/FontScheme.html +1 -1
  251. data/rdoc/RubyXL/Fonts.html +1 -1
  252. data/rdoc/RubyXL/Formula.html +1 -1
  253. data/rdoc/RubyXL/FunctionGroup.html +1 -1
  254. data/rdoc/RubyXL/FunctionGroups.html +1 -1
  255. data/rdoc/RubyXL/GenericStorageObject.html +2 -2
  256. data/rdoc/RubyXL/GradientFill.html +1 -1
  257. data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
  258. data/rdoc/RubyXL/Hyperlink.html +1 -1
  259. data/rdoc/RubyXL/HyperlinkRelFile.html +1 -1
  260. data/rdoc/RubyXL/Hyperlinks.html +1 -1
  261. data/rdoc/RubyXL/IconFilter.html +1 -1
  262. data/rdoc/RubyXL/IconSet.html +1 -1
  263. data/rdoc/RubyXL/IgnoredError.html +1 -1
  264. data/rdoc/RubyXL/IgnoredErrors.html +1 -1
  265. data/rdoc/RubyXL/IndexedColors.html +1 -1
  266. data/rdoc/RubyXL/InputCells.html +1 -1
  267. data/rdoc/RubyXL/IntegerNode.html +1 -1
  268. data/rdoc/RubyXL/IntegerValue.html +1 -1
  269. data/rdoc/RubyXL/LegacyCell.html +1 -1
  270. data/rdoc/RubyXL/LegacyWorksheet.html +5 -5
  271. data/rdoc/RubyXL/MRUColors.html +1 -1
  272. data/rdoc/RubyXL/MacrosFile.html +1 -1
  273. data/rdoc/RubyXL/MergedCell.html +1 -1
  274. data/rdoc/RubyXL/MergedCells.html +1 -1
  275. data/rdoc/RubyXL/NumFmt.html +1 -1
  276. data/rdoc/RubyXL/NumberFormat.html +1 -1
  277. data/rdoc/RubyXL/NumberFormats.html +1 -1
  278. data/rdoc/RubyXL/OLEObject.html +1 -1
  279. data/rdoc/RubyXL/OLEObjectFile.html +1 -1
  280. data/rdoc/RubyXL/OLEObjects.html +1 -1
  281. data/rdoc/RubyXL/OLESize.html +1 -1
  282. data/rdoc/RubyXL/OOXMLContainerObject.html +2 -2
  283. data/rdoc/RubyXL/OOXMLIgnored.html +1 -1
  284. data/rdoc/RubyXL/OOXMLObject.html +1 -1
  285. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -2
  286. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +4 -4
  287. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +1 -1
  288. data/rdoc/RubyXL/OOXMLTopLevelObject.html +1 -1
  289. data/rdoc/RubyXL/OdbcOleDbProperties.html +1 -1
  290. data/rdoc/RubyXL/Offset.html +1 -1
  291. data/rdoc/RubyXL/OlapProperties.html +1 -1
  292. data/rdoc/RubyXL/OleItem.html +1 -1
  293. data/rdoc/RubyXL/OleItems.html +1 -1
  294. data/rdoc/RubyXL/OleLink.html +1 -1
  295. data/rdoc/RubyXL/OutlineProperties.html +1 -1
  296. data/rdoc/RubyXL/PageMargins.html +1 -1
  297. data/rdoc/RubyXL/PageSetup.html +1 -1
  298. data/rdoc/RubyXL/PageSetupProperties.html +1 -1
  299. data/rdoc/RubyXL/Pane.html +1 -1
  300. data/rdoc/RubyXL/Parser.html +1 -1
  301. data/rdoc/RubyXL/PatternFill.html +1 -1
  302. data/rdoc/RubyXL/PersonMetadata.html +1 -1
  303. data/rdoc/RubyXL/PhoneticProperties.html +1 -1
  304. data/rdoc/RubyXL/PhoneticRun.html +1 -1
  305. data/rdoc/RubyXL/PivotArea.html +1 -1
  306. data/rdoc/RubyXL/PivotCache.html +1 -1
  307. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +1 -1
  308. data/rdoc/RubyXL/PivotCacheRecordsFile.html +1 -1
  309. data/rdoc/RubyXL/PivotCaches.html +1 -1
  310. data/rdoc/RubyXL/PivotReference.html +1 -1
  311. data/rdoc/RubyXL/PivotReferences.html +1 -1
  312. data/rdoc/RubyXL/PivotTableFile.html +1 -1
  313. data/rdoc/RubyXL/PivotTableSelection.html +1 -1
  314. data/rdoc/RubyXL/PresetGeometry.html +1 -1
  315. data/rdoc/RubyXL/PrintOptions.html +1 -1
  316. data/rdoc/RubyXL/PrinterSettingsFile.html +1 -1
  317. data/rdoc/RubyXL/ProtectedRange.html +1 -1
  318. data/rdoc/RubyXL/ProtectedRanges.html +1 -1
  319. data/rdoc/RubyXL/Protection.html +1 -1
  320. data/rdoc/RubyXL/QueryParameter.html +1 -1
  321. data/rdoc/RubyXL/QueryParameters.html +1 -1
  322. data/rdoc/RubyXL/QueryTable.html +2 -2
  323. data/rdoc/RubyXL/QueryTableDeletedField.html +1 -1
  324. data/rdoc/RubyXL/QueryTableDeletedFields.html +1 -1
  325. data/rdoc/RubyXL/QueryTableField.html +1 -1
  326. data/rdoc/RubyXL/QueryTableFields.html +1 -1
  327. data/rdoc/RubyXL/QueryTableRefresh.html +1 -1
  328. data/rdoc/RubyXL/RID.html +1 -1
  329. data/rdoc/RubyXL/RawOOXML.html +1 -1
  330. data/rdoc/RubyXL/Reference.html +13 -9
  331. data/rdoc/RubyXL/Relationship.html +1 -1
  332. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +1 -1
  333. data/rdoc/RubyXL/RelationshipSupport.html +1 -1
  334. data/rdoc/RubyXL/RevisionPointer.html +1 -1
  335. data/rdoc/RubyXL/RichText.html +3 -3
  336. data/rdoc/RubyXL/RichTextRun.html +1 -1
  337. data/rdoc/RubyXL/Row.html +1 -1
  338. data/rdoc/RubyXL/RowExt.html +1 -1
  339. data/rdoc/RubyXL/RunProperties.html +1 -1
  340. data/rdoc/RubyXL/Scenario.html +1 -1
  341. data/rdoc/RubyXL/Scenarios.html +1 -1
  342. data/rdoc/RubyXL/Selection.html +1 -1
  343. data/rdoc/RubyXL/ShapeGuide.html +1 -1
  344. data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
  345. data/rdoc/RubyXL/SharedStringsTable.html +2 -2
  346. data/rdoc/RubyXL/Sheet.html +1 -1
  347. data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
  348. data/rdoc/RubyXL/SheetData.html +1 -1
  349. data/rdoc/RubyXL/SheetDataExt.html +1 -1
  350. data/rdoc/RubyXL/SheetDataSet.html +1 -1
  351. data/rdoc/RubyXL/SheetMetadata.html +1 -1
  352. data/rdoc/RubyXL/SheetName.html +1 -1
  353. data/rdoc/RubyXL/SheetNames.html +1 -1
  354. data/rdoc/RubyXL/Sheets.html +1 -1
  355. data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
  356. data/rdoc/RubyXL/SlicerFile.html +1 -1
  357. data/rdoc/RubyXL/SmartTagProperties.html +1 -1
  358. data/rdoc/RubyXL/SmartTagType.html +1 -1
  359. data/rdoc/RubyXL/SmartTagTypes.html +1 -1
  360. data/rdoc/RubyXL/SmartTags.html +1 -1
  361. data/rdoc/RubyXL/SortCondition.html +1 -1
  362. data/rdoc/RubyXL/SortState.html +1 -1
  363. data/rdoc/RubyXL/Sqref.html +4 -4
  364. data/rdoc/RubyXL/Stop.html +1 -1
  365. data/rdoc/RubyXL/StringNode.html +1 -1
  366. data/rdoc/RubyXL/StringNodeW3C.html +1 -1
  367. data/rdoc/RubyXL/StringValue.html +1 -1
  368. data/rdoc/RubyXL/Stylesheet.html +6 -6
  369. data/rdoc/RubyXL/TableFile.html +1 -1
  370. data/rdoc/RubyXL/TableParts.html +1 -1
  371. data/rdoc/RubyXL/TableStyle.html +1 -1
  372. data/rdoc/RubyXL/TableStyles.html +1 -1
  373. data/rdoc/RubyXL/Text.html +2 -2
  374. data/rdoc/RubyXL/TextImportSettings.html +1 -1
  375. data/rdoc/RubyXL/Theme.html +19 -19
  376. data/rdoc/RubyXL/ThemeElements.html +1 -1
  377. data/rdoc/RubyXL/ThumbnailFile.html +1 -1
  378. data/rdoc/RubyXL/Top10.html +1 -1
  379. data/rdoc/RubyXL/VMLDrawingFile.html +1 -1
  380. data/rdoc/RubyXL/Variant.html +1 -1
  381. data/rdoc/RubyXL/Vector.html +1 -1
  382. data/rdoc/RubyXL/VectorValue.html +1 -1
  383. data/rdoc/RubyXL/VisualProperties.html +1 -1
  384. data/rdoc/RubyXL/WebPublishObject.html +1 -1
  385. data/rdoc/RubyXL/WebPublishObjects.html +1 -1
  386. data/rdoc/RubyXL/WebPublishingItem.html +1 -1
  387. data/rdoc/RubyXL/WebPublishingItems.html +1 -1
  388. data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
  389. data/rdoc/RubyXL/WebQueryProperties.html +1 -1
  390. data/rdoc/RubyXL/Workbook.html +7 -7
  391. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +14 -18
  392. data/rdoc/RubyXL/WorkbookProperties.html +1 -1
  393. data/rdoc/RubyXL/WorkbookProtection.html +1 -1
  394. data/rdoc/RubyXL/WorkbookRoot.html +1 -1
  395. data/rdoc/RubyXL/WorkbookView.html +1 -1
  396. data/rdoc/RubyXL/WorkbookViews.html +1 -1
  397. data/rdoc/RubyXL/Worksheet.html +1 -1
  398. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +3 -3
  399. data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
  400. data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
  401. data/rdoc/RubyXL/WorksheetProperties.html +1 -1
  402. data/rdoc/RubyXL/WorksheetProtection.html +1 -1
  403. data/rdoc/RubyXL/WorksheetView.html +1 -1
  404. data/rdoc/RubyXL/WorksheetViews.html +1 -1
  405. data/rdoc/RubyXL/XF.html +1 -1
  406. data/rdoc/RubyXL.html +1 -1
  407. data/rdoc/created.rid +32 -32
  408. data/rdoc/index.html +2 -2
  409. data/rdoc/js/search_index.js +1 -1
  410. data/rdoc/js/search_index.js.gz +0 -0
  411. data/rdoc/table_of_contents.html +2 -2
  412. data/rubyXL.gemspec +3 -3
  413. data/spec/lib/cell_spec.rb +8 -6
  414. data/spec/lib/color_spec.rb +7 -0
  415. data/spec/lib/parser_spec.rb +8 -5
  416. data/spec/lib/reference_spec.rb +4 -3
  417. data/spec/lib/rgb_color_spec.rb +2 -0
  418. data/spec/lib/text_spec.rb +3 -1
  419. data/spec/lib/workbook_spec.rb +4 -2
  420. data/spec/lib/worksheet_spec.rb +15 -13
  421. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ededaa2494386b21ce1c01a251a85cca7415c0c6114895debfb0b28007bc9c13
4
- data.tar.gz: 818e9f45a8f68a1821d16a489c516b6ba84e3add5ccc734025c785010f489f27
3
+ metadata.gz: 91ee72613ffcc47b4944ed30209be1c3ade9bd59095564a62cf04b14e67f1547
4
+ data.tar.gz: 3905842f6c0bb340b45d1d410e4f0e169b6f7a1603ed720ff258a474ffe4468f
5
5
  SHA512:
6
- metadata.gz: 93a29b20843980d6549d52c560ec70bf1cb9bc322b20d201857f268aaef3ddeb2f8b3e4afca2584bcb53bdf2b471bea0b127d3bcf17ee769d95bfa1e5d3ea650
7
- data.tar.gz: 5276b2c4614066cb60ffeaaeb058109c025668a4cf4df40161fc28aa8ab097de3a8e3bdfd95757d01c8357ec43781efaf4a27f66ca2ff6246b5a74401e8148a5
6
+ metadata.gz: b761fb752949f5cbf9123674ca2867e1d0e180fdc22e51f6f680adf9694fce2e6d359644cc274db10ce7e3877583bc0d794a251f90aad561c127a1c4dd5e1aa7
7
+ data.tar.gz: 0aa9d2b2ab4e33af4b905e121abe8db9cc492e501611d2db924cce75c12c5a0851c8fc0f12fc93dae9dd27e03c8a832ee24799b51e88545b42a95dbef3f92215
data/.rubocop.yml CHANGED
@@ -16,6 +16,34 @@ AllCops:
16
16
  - Gemfile
17
17
  - rubyXL.gemspec
18
18
 
19
+ # "Excessive" parentheses are your friend. You will understand it in time, Luke.
20
+ Style/TernaryParentheses:
21
+ Enabled: false
22
+
23
+ # Implicity is evil. Unwilingness to type a couple extra characters is laziness.
24
+ Style/RedundantConstantBase:
25
+ Enabled: false
26
+
27
+ # I don't see a good reason in this. Unless you are paid per line.
28
+ Style/CommentedKeyword:
29
+ Enabled: false
30
+
31
+ # Yes, some things are "redundant" but they are there exactly to drive home some point...
32
+ Style/RedundantSelf:
33
+ Enabled: false
34
+
35
+ Naming/AccessorMethodName:
36
+ Enabled: false
37
+
38
+ Layout/FirstArrayElementIndentation:
39
+ Enabled: false
40
+
41
+ Style/Documentation:
42
+ Enabled: false
43
+
44
+ Layout/LeadingCommentSpace:
45
+ Enabled: false
46
+
19
47
  Style/BlockDelimiters:
20
48
  Enabled: false
21
49
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.4.27
1
+ 3.4.28
@@ -116,7 +116,7 @@ module RubyXL
116
116
 
117
117
  def fill_color
118
118
  validate_worksheet
119
- return workbook.get_fill_color(get_cell_xf)
119
+ workbook.get_fill_color(get_cell_xf)
120
120
  end
121
121
 
122
122
  def horizontal_alignment
@@ -21,11 +21,7 @@ module RubyXL
21
21
  end
22
22
 
23
23
  def get_fill_color(xf)
24
- fill = fills[xf.fill_id]
25
- pattern = fill && fill.pattern_fill
26
- color = pattern && pattern.fg_color
27
- color = color && color.get_rgb(self)
28
- color && color.to_s || 'ffffff'
24
+ fills[xf.fill_id]&.pattern_fill&.fg_color&.get_rgb(self)&.to_s || 'ffffff'
29
25
  end
30
26
 
31
27
  def register_new_fill(new_fill, old_xf)
@@ -206,10 +206,10 @@ module RubyXL
206
206
  validate_nonnegative(column_index)
207
207
 
208
208
  # Delete column
209
- sheet_data.rows.each { |row| row && row.cells.delete_at(column_index) }
209
+ sheet_data.rows.each { |row| row&.cells&.delete_at(column_index) }
210
210
 
211
211
  # Update column numbers for cells to the right of the deleted column
212
- sheet_data.rows.each_with_index { |row, row_index|
212
+ sheet_data.rows.each { |row|
213
213
  next if row.nil?
214
214
  row.cells.each_with_index { |c, ci|
215
215
  c.column = ci if c.is_a?(Cell)
@@ -4,7 +4,7 @@ require 'rubyXL/objects/simple_types'
4
4
  module RubyXL
5
5
  # http://www.datypic.com/sc/ooxml/e-ssml_color-4.html
6
6
  class Color < OOXMLObject
7
- COLOR_REGEXP = /\A([a-f]|[A-F]|[0-9]){6}\Z/
7
+ COLOR_REGEXP = /\A(?:[a-f0-9]{6}|[a-f0-9]{8})\Z/i
8
8
 
9
9
  define_attribute(:auto, :bool)
10
10
  define_attribute(:indexed, :uint)
@@ -82,8 +82,8 @@ module RubyXL
82
82
  end
83
83
 
84
84
  def before_write_xml
85
- self.sort_by!{ |r| r.min }
86
- !(self.empty?)
85
+ self.sort_by!(&:min)
86
+ !self.empty?
87
87
  end
88
88
  end
89
89
  end
@@ -21,7 +21,7 @@ module RubyXL
21
21
  # Defines an attribute of OOXML object.
22
22
  # === Parameters
23
23
  # * +attribute_name+ - Name of the element attribute as seen in the source XML. Can be either <tt>"String"</tt> or <tt>:Symbol</tt>
24
- # * Special attibute name <tt>'_'</tt> (underscore) denotes the value of the element rather than attribute.
24
+ # * Special attribute name <tt>'_'</tt> (underscore) denotes the value of the element rather than attribute.
25
25
  # * +attribute_type+ - Specifies the conversion type for the attribute when parsing. Available options are:
26
26
  # * +:int+ - <tt>Integer</tt>
27
27
  # * +:uint+ - Unsigned <tt>Integer</tt>
@@ -254,8 +254,8 @@ module RubyXL
254
254
 
255
255
  def ==(other)
256
256
  other.is_a?(self.class) &&
257
- obtain_class_variable(:@@ooxml_attributes).all? { |k, v| self.send(v[:accessor]) == other.send(v[:accessor]) } &&
258
- obtain_class_variable(:@@ooxml_child_nodes).all? { |k, v| self.send(v[:accessor]) == other.send(v[:accessor]) }
257
+ obtain_class_variable(:@@ooxml_attributes).all? { |_k, v| self.send(v[:accessor]) == other.send(v[:accessor]) } &&
258
+ obtain_class_variable(:@@ooxml_child_nodes).all? { |_k, v| self.send(v[:accessor]) == other.send(v[:accessor]) }
259
259
  end
260
260
 
261
261
  # Recursively write the OOXML object and all its children out as Nokogiri::XML. Immediately before the actual
@@ -355,7 +355,7 @@ module RubyXL
355
355
  def before_write_xml
356
356
  #TODO# This will go away once containers are fully implemented.
357
357
  child_nodes = obtain_class_variable(:@@ooxml_child_nodes)
358
- child_nodes.each_pair { |child_node_name, child_node_params|
358
+ child_nodes.each_pair { |_child_node_name, child_node_params|
359
359
  self.count = self.send(child_node_params[:accessor]).size if child_node_params[:is_array] == :with_count
360
360
  }
361
361
  true
@@ -369,7 +369,7 @@ module RubyXL
369
369
  include OOXMLObjectInstanceMethods
370
370
  end
371
371
 
372
- # Parent class for OOXML conainer objects (for example,
372
+ # Parent class for OOXML container objects (for example,
373
373
  # <tt>&lt;fonts&gt;&lt;font&gt;...&lt;/font&gt;&lt;font&gt;...&lt;/font&gt;&lt;/fonts&gt;</tt>
374
374
  # that obscures the top-level container, allowing direct access to the contents as +Array+.
375
375
  class OOXMLContainerObject < Array
@@ -25,7 +25,8 @@ module RubyXL
25
25
 
26
26
  # http://www.datypic.com/sc/ooxml/e-ssml_queryTableFields-1.html
27
27
  class QueryTableFields < OOXMLObject
28
- define_child_node(RubyXL::QueryTableField, :collection => :with_count, :accessor => :fields, :node_name => :queryTableField)
28
+ define_child_node(RubyXL::QueryTableField, :collection => :with_count,
29
+ :accessor => :fields, :node_name => :queryTableField)
29
30
  define_element_name 'queryTableFields'
30
31
  end
31
32
 
@@ -38,7 +39,8 @@ module RubyXL
38
39
 
39
40
  # http://www.datypic.com/sc/ooxml/e-ssml_queryTableDeletedFields-1.html
40
41
  class QueryTableDeletedFields < OOXMLObject
41
- define_child_node(RubyXL::QueryTableDeletedField, :collection => :with_count, :accessor => :deleted_fields, :node_name => :deletedField)
42
+ define_child_node(RubyXL::QueryTableDeletedField, :collection => :with_count,
43
+ :accessor => :deleted_fields, :node_name => :deletedField)
42
44
  define_element_name 'queryTableDeletedFields'
43
45
  end
44
46
 
@@ -61,15 +61,18 @@ module RubyXL
61
61
  end
62
62
 
63
63
  def cover?(other)
64
- !other.nil? && (@row_range.cover?(other.row_range.begin) && @row_range.cover?(other.row_range.end) &&
65
- @col_range.cover?(other.col_range.begin) && @col_range.cover?(other.col_range.end))
64
+ !other.nil? && (@row_range.cover?(other.row_range.begin) &&
65
+ @row_range.cover?(other.row_range.end) &&
66
+ @col_range.cover?(other.col_range.begin) &&
67
+ @col_range.cover?(other.col_range.end))
66
68
  end
67
69
 
68
70
  def to_s
69
71
  if single_cell? then
70
72
  self.class.ind2ref(@row_range.begin, @col_range.begin)
71
73
  else
72
- self.class.ind2ref(@row_range.begin, @col_range.begin) + ':' + self.class.ind2ref(@row_range.end, @col_range.end)
74
+ self.class.ind2ref(@row_range.begin, @col_range.begin) + ':' +
75
+ self.class.ind2ref(@row_range.end, @col_range.end)
73
76
  end
74
77
  end
75
78
 
@@ -99,7 +102,8 @@ module RubyXL
99
102
  # Converts Excel-style cell reference to +row+ and +col+ zero-based indices.
100
103
  def self.ref2ind(str)
101
104
  return [ -1, -1 ] unless str =~ /\A([A-Z]+)(\d+)\Z/
102
- [ Regexp.last_match(2).to_i - 1, Regexp.last_match(1).each_byte.inject(0) { |col, chr| col * 26 + (chr - 64) } - 1 ]
105
+ [ Regexp.last_match(2).to_i - 1,
106
+ Regexp.last_match(1).each_byte.inject(0) { |col, chr| col * 26 + (chr - 64) } - 1 ]
103
107
  end
104
108
  end
105
109
 
@@ -109,7 +113,7 @@ module RubyXL
109
113
  end
110
114
 
111
115
  def to_s
112
- self.collect{ |ref| ref.to_s }.join(' ')
116
+ self.collect(&:to_s).join(' ')
113
117
  end
114
118
  end
115
119
  end
@@ -20,7 +20,7 @@ module RubyXL
20
20
  super
21
21
  # So far, going by the structure that the original creator had in mind. However,
22
22
  # since the actual implementation is now extracted into a separate class,
23
- # we will be able to transparrently change it later if needs be.
23
+ # we will be able to transparently change it later if needs be.
24
24
  @index_by_content = {}
25
25
  end
26
26
 
@@ -50,7 +50,7 @@ module RubyXL
50
50
  end
51
51
 
52
52
  def row
53
- r && r.first_row
53
+ r&.first_row
54
54
  end
55
55
 
56
56
  def row=(v)
@@ -58,7 +58,7 @@ module RubyXL
58
58
  end
59
59
 
60
60
  def column
61
- r && r.first_col
61
+ r&.first_col
62
62
  end
63
63
 
64
64
  def column=(v)
@@ -66,7 +66,7 @@ module RubyXL
66
66
  end
67
67
 
68
68
  def raw_value
69
- value_container && value_container.value
69
+ value_container&.value
70
70
  end
71
71
 
72
72
  def raw_value=(v)
@@ -98,8 +98,7 @@ module RubyXL
98
98
  else false
99
99
  end
100
100
 
101
- num_fmt = self.number_format
102
- num_fmt && num_fmt.is_date_format?
101
+ self.number_format&.is_date_format?
103
102
  end
104
103
 
105
104
  # Gets massaged value of the cell, converting datatypes to those known to Ruby (that includes
@@ -111,6 +110,7 @@ module RubyXL
111
110
  when RubyXL::DataType::SHARED_STRING then workbook.shared_strings_container[r.to_i].to_s
112
111
  when RubyXL::DataType::INLINE_STRING then is.to_s
113
112
  when RubyXL::DataType::RAW_STRING then raw_value
113
+ when RubyXL::DataType::DATE then raw_value && DateTime.parse(raw_value)
114
114
  else
115
115
  if is then is.to_s
116
116
  elsif is_date? then workbook.num_to_date(r.to_f)
@@ -133,7 +133,7 @@ module RubyXL
133
133
  include LegacyCell
134
134
  end
135
135
 
136
- #TODO#<row r="1" spans="1:1" x14ac:dyDescent="0.25">
136
+ #TODO# <row r="1" spans="1:1" x14ac:dyDescent="0.25">
137
137
 
138
138
  # http://www.datypic.com/sc/ooxml/e-ssml_row-1.html
139
139
  class Row < OOXMLObject
@@ -11,7 +11,7 @@ module RubyXL
11
11
  end
12
12
 
13
13
  def self.parse_file(zip_file, file_path)
14
- (entry = zip_file.find_entry(RubyXL::from_root(file_path))) && self.new(file_path, entry.get_input_stream { |f| f.read })
14
+ (entry = zip_file.find_entry(RubyXL::from_root(file_path))) && self.new(file_path, entry.get_input_stream(&:read))
15
15
  end
16
16
 
17
17
  def add_to_zip(zip_stream)
@@ -79,9 +79,8 @@ module RubyXL
79
79
  define_element_name 'cellXfs'
80
80
 
81
81
  def self.default
82
- self.new(:_ => [
83
- RubyXL::XF.new(:num_fmt_id => 0, :font_id => 0, :fill_id => 0, :border_id => 0, :xfId => 0)
84
- ])
82
+ self.new(:_ => [ RubyXL::XF.new(:num_fmt_id => 0, :font_id => 0, :fill_id => 0,
83
+ :border_id => 0, :xfId => 0) ])
85
84
  end
86
85
  end
87
86
 
@@ -18,7 +18,7 @@ module RubyXL
18
18
 
19
19
  def before_write_xml
20
20
  preserve_whitespace
21
- self.value.gsub!(INVALID_XML10_CHARS) { |c| '_x%04x_' % c.ord }
21
+ self.value.gsub(INVALID_XML10_CHARS) { |bad_char| format('_x%04x_', bad_char.ord) }
22
22
  true
23
23
  end
24
24
 
@@ -84,8 +84,8 @@ module RubyXL
84
84
 
85
85
  def to_s
86
86
  # `dup` here unfreezes the string since it's not a constant but initial value
87
- str = if t.nil? then ''.dup else t.to_s end
88
- r && r.each { |rtr| str << rtr.to_s if rtr }
87
+ str = t.nil? ? ''.dup : t.to_s
88
+ r&.each { |rtr| str << rtr.to_s if rtr }
89
89
  str
90
90
  end
91
91
  end
@@ -1,5 +1,3 @@
1
- # encoding: UTF-8 <-- magic comment, need this because of sime fancy fonts in the default scheme below. See http://stackoverflow.com/questions/6444826/ruby-utf-8-file-encoding
2
-
3
1
  require 'rubyXL/objects/ooxml_object'
4
2
  require 'rubyXL/objects/extensions'
5
3
 
@@ -1391,21 +1389,21 @@ module RubyXL
1391
1389
  end
1392
1390
 
1393
1391
  def get_theme_color(idx)
1394
- color_scheme = a_theme_elements && a_theme_elements.a_clr_scheme
1395
-
1396
- if color_scheme then
1397
- case idx
1398
- when 0 then color_scheme.a_lt1
1399
- when 1 then color_scheme.a_dk1
1400
- when 2 then color_scheme.a_lt2
1401
- when 3 then color_scheme.a_dk2
1402
- when 4 then color_scheme.a_accent1
1403
- when 5 then color_scheme.a_accent2
1404
- when 6 then color_scheme.a_accent3
1405
- when 7 then color_scheme.a_accent4
1406
- when 8 then color_scheme.a_accent5
1407
- when 9 then color_scheme.a_accent6
1408
- end
1392
+ color_scheme = a_theme_elements&.a_clr_scheme
1393
+
1394
+ return unless color_scheme
1395
+
1396
+ case idx
1397
+ when 0 then color_scheme.a_lt1
1398
+ when 1 then color_scheme.a_dk1
1399
+ when 2 then color_scheme.a_lt2
1400
+ when 3 then color_scheme.a_dk2
1401
+ when 4 then color_scheme.a_accent1
1402
+ when 5 then color_scheme.a_accent2
1403
+ when 6 then color_scheme.a_accent3
1404
+ when 7 then color_scheme.a_accent4
1405
+ when 8 then color_scheme.a_accent5
1406
+ when 9 then color_scheme.a_accent6
1409
1407
  end
1410
1408
  end
1411
1409
 
@@ -303,7 +303,7 @@ module RubyXL
303
303
  REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument'.freeze
304
304
 
305
305
  # http://www.accountingweb.com/technology/excel/seven-characters-you-cant-use-in-worksheet-names
306
- SHEET_NAME_FORBIDDEN_CHARS = /[\/\\*\[\]:?]/
306
+ SHEET_NAME_FORBIDDEN_CHARS = %r{[/\\*\[\]:?]}
307
307
 
308
308
  # https://answers.microsoft.com/en-us/msoffice/forum/all/excel-history-is-a-reserved-name-help/f8a398a4-b72c-48e3-82da-4f132c305e91
309
309
  SHEET_NAME_FORBIDDEN_NAMES = [ 'History' ]
@@ -411,12 +411,12 @@ module RubyXL
411
411
  alias_method :write, :save
412
412
 
413
413
  DATE1904 = DateTime.new(1904, 1, 1)
414
- # Subtracting one day to accomodate for erroneous 1900 leap year compatibility only for 1900 based dates
414
+ # Subtracting one day to accommodate for erroneous 1900 leap year compatibility only for 1900 based dates
415
415
  DATE1899 = DateTime.new(1899, 12, 31) - 1
416
416
  MARCH_1_1900 = 61
417
417
 
418
418
  def base_date
419
- (workbook_properties && workbook_properties.date1904) ? DATE1904 : DATE1899
419
+ workbook_properties&.date1904 ? DATE1904 : DATE1899
420
420
  end
421
421
  private :base_date
422
422
 
@@ -432,7 +432,7 @@ module RubyXL
432
432
 
433
433
  # Bug-for-bug Excel compatibility (https://support.microsoft.com/kb/214058/)
434
434
  if num < MARCH_1_1900 then
435
- num += 1 unless workbook_properties && workbook_properties.date1904
435
+ num += 1 unless workbook_properties&.date1904
436
436
  end
437
437
 
438
438
  dateparts = num.divmod(1)
@@ -518,7 +518,7 @@ module RubyXL
518
518
  end
519
519
 
520
520
  def company
521
- root.document_properties.company && root.document_properties.company.value
521
+ root.document_properties.company&.value
522
522
  end
523
523
 
524
524
  def company=(v)
@@ -527,7 +527,7 @@ module RubyXL
527
527
  end
528
528
 
529
529
  def application
530
- root.document_properties.application && root.document_properties.application.value
530
+ root.document_properties.application&.value
531
531
  end
532
532
 
533
533
  def application=(v)
@@ -536,7 +536,7 @@ module RubyXL
536
536
  end
537
537
 
538
538
  def appversion
539
- root.document_properties.app_version && root.document_properties.app_version.value
539
+ root.document_properties.app_version&.value
540
540
  end
541
541
 
542
542
  def appversion=(v)
@@ -561,7 +561,7 @@ module RubyXL
561
561
  end
562
562
 
563
563
  def date1904
564
- workbook_properties && workbook_properties.date1904
564
+ workbook_properties&.date1904
565
565
  end
566
566
 
567
567
  def date1904=(v)
@@ -173,7 +173,7 @@ module RubyXL
173
173
  # http://www.datypic.com/sc/ooxml/e-ssml_colorScale-1.html
174
174
  class ColorScale < OOXMLObject
175
175
  define_child_node(RubyXL::ConditionalFormatValue, :collection => true, :accessor => :cfvo)
176
- define_child_node(RubyXL::Color)
176
+ define_child_node(RubyXL::Color, :collection => true)
177
177
  define_element_name 'colorScale'
178
178
  end
179
179
 
@@ -183,7 +183,7 @@ module RubyXL
183
183
  define_attribute(:maxLength, :int, :default => 90)
184
184
  define_attribute(:showValue, :bool, :default => true)
185
185
  define_child_node(RubyXL::ConditionalFormatValue, :collection => true, :accessor => :cfvo)
186
- define_child_node(RubyXL::Color)
186
+ define_child_node(RubyXL::Color, :collection => true)
187
187
  define_element_name 'dataBar'
188
188
  end
189
189
 
@@ -52,13 +52,13 @@ module RubyXL
52
52
  case data
53
53
  when Numeric then c.raw_value = data
54
54
  when String then
55
- if TEXT_LENGTH_LIMIT_IN_CELL < data.length
55
+ if data.length > TEXT_LENGTH_LIMIT_IN_CELL
56
56
  raise ArgumentError, "The maximum length of cell contents (text) is #{TEXT_LENGTH_LIMIT_IN_CELL} characters"
57
57
  end
58
58
  c.raw_value = data
59
59
  c.datatype = RubyXL::DataType::RAW_STRING
60
60
  when RubyXL::RichText then
61
- if TEXT_LENGTH_LIMIT_IN_CELL < data.to_s.length
61
+ if data.to_s.length > TEXT_LENGTH_LIMIT_IN_CELL
62
62
  raise ArgumentError, "The maximum length of cell contents (text) is #{TEXT_LENGTH_LIMIT_IN_CELL} characters"
63
63
  end
64
64
  c.is = data
@@ -69,8 +69,8 @@ module RubyXL
69
69
  end
70
70
  end
71
71
 
72
- range = cols && cols.locate_range(column_index)
73
- c.style_index = row.style_index || (range && range.style_index) || 0
72
+ range = cols&.locate_range(column_index)
73
+ c.style_index = row.style_index || range&.style_index || 0
74
74
  row.cells[column_index] = c
75
75
  end
76
76
 
@@ -101,5 +101,5 @@ module RubyXL
101
101
  raise 'Row and Column arguments must be nonnegative' if row_or_col < 0
102
102
  end
103
103
  private :validate_nonnegative
104
- end # end class
104
+ end
105
105
  end
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>README - rubyXL 3.4.27</title>
7
+ <title>README - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "./";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AExtension - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AExtension - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -131,7 +131,7 @@
131
131
 
132
132
 
133
133
  <div class="method-source-code" id="parse-source">
134
- <pre><span class="ruby-comment"># File lib/rubyXL/objects/theme.rb, line 13</span>
134
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/theme.rb, line 11</span>
135
135
  <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier ruby-title">parse</span>(<span class="ruby-identifier">node</span>, <span class="ruby-identifier">ignore</span>)
136
136
  <span class="ruby-identifier">obj</span> = <span class="ruby-identifier">new</span>
137
137
  <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">raw_xml</span> = <span class="ruby-identifier">node</span>.<span class="ruby-identifier">to_xml</span>
@@ -163,7 +163,7 @@
163
163
 
164
164
 
165
165
  <div class="method-source-code" id="write_xml-source">
166
- <pre><span class="ruby-comment"># File lib/rubyXL/objects/theme.rb, line 19</span>
166
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/theme.rb, line 17</span>
167
167
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">write_xml</span>(<span class="ruby-identifier">xml</span>, <span class="ruby-identifier">node_name_override</span> = <span class="ruby-keyword">nil</span>)
168
168
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">raw_xml</span>
169
169
  <span class="ruby-keyword">end</span></pre>
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AExtensionStorageArea - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AExtensionStorageArea - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::ActiveX - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::ActiveX - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::ActiveXBinary - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::ActiveXBinary - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AdjustHandleList - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AdjustHandleList - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Alignment - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::Alignment - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AlternateContent - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AlternateContent - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AlternateUrls - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AlternateUrls - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Authors - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::Authors - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AutoFilter - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AutoFilter - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AutoFilterColumn - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::AutoFilterColumn - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BinaryImageFile - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::BinaryImageFile - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BodyProperties - rubyXL 3.4.27</title>
7
+ <title>class RubyXL::BodyProperties - rubyXL 3.4.28</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";