temper-rb 0.5.1

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 (384) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +291 -0
  4. data/lib/temper/act.rb +47 -0
  5. data/lib/temper/client.rb +96 -0
  6. data/lib/temper/cognitive_maps.rb +75 -0
  7. data/lib/temper/connection.rb +113 -0
  8. data/lib/temper/contexts.rb +54 -0
  9. data/lib/temper/credentials.rb +138 -0
  10. data/lib/temper/errors.rb +154 -0
  11. data/lib/temper/generated/api/access_api.rb +356 -0
  12. data/lib/temper/generated/api/auditor_api.rb +228 -0
  13. data/lib/temper/generated/api/blobs_api.rb +785 -0
  14. data/lib/temper/generated/api/cognitive_maps_api.rb +996 -0
  15. data/lib/temper/generated/api/contexts_api.rb +1039 -0
  16. data/lib/temper/generated/api/data_artifact_shapes_api.rb +243 -0
  17. data/lib/temper/generated/api/data_artifacts_api.rb +261 -0
  18. data/lib/temper/generated/api/events_api.rb +164 -0
  19. data/lib/temper/generated/api/facets_api.rb +406 -0
  20. data/lib/temper/generated/api/graph_api.rb +612 -0
  21. data/lib/temper/generated/api/health_api.rb +84 -0
  22. data/lib/temper/generated/api/ingest_api.rb +398 -0
  23. data/lib/temper/generated/api/invitations_api.rb +514 -0
  24. data/lib/temper/generated/api/invocations_api.rb +308 -0
  25. data/lib/temper/generated/api/meta_api.rb +169 -0
  26. data/lib/temper/generated/api/profile_api.rb +219 -0
  27. data/lib/temper/generated/api/query_api.rb +97 -0
  28. data/lib/temper/generated/api/reblocking_api.rb +95 -0
  29. data/lib/temper/generated/api/relationships_api.rb +332 -0
  30. data/lib/temper/generated/api/resources_api.rb +1329 -0
  31. data/lib/temper/generated/api/schema_api.rb +218 -0
  32. data/lib/temper/generated/api/search_api.rb +97 -0
  33. data/lib/temper/generated/api/slack_link_api.rb +159 -0
  34. data/lib/temper/generated/api/steward_api.rb +372 -0
  35. data/lib/temper/generated/api/teams_api.rb +687 -0
  36. data/lib/temper/generated/api_client.rb +441 -0
  37. data/lib/temper/generated/api_error.rb +58 -0
  38. data/lib/temper/generated/api_model_base.rb +88 -0
  39. data/lib/temper/generated/configuration.rb +393 -0
  40. data/lib/temper/generated/models/accept_invitation_response.rb +239 -0
  41. data/lib/temper/generated/models/act_input.rb +238 -0
  42. data/lib/temper/generated/models/act_invocation.rb +271 -0
  43. data/lib/temper/generated/models/act_name.rb +104 -0
  44. data/lib/temper/generated/models/act_quantity.rb +219 -0
  45. data/lib/temper/generated/models/act_refusal.rb +192 -0
  46. data/lib/temper/generated/models/actor_authority.rb +41 -0
  47. data/lib/temper/generated/models/add_member_request.rb +213 -0
  48. data/lib/temper/generated/models/advance_watermark_ack.rb +188 -0
  49. data/lib/temper/generated/models/advance_watermark_request.rb +161 -0
  50. data/lib/temper/generated/models/agent_authorship.rb +227 -0
  51. data/lib/temper/generated/models/anchor_address_resolution.rb +106 -0
  52. data/lib/temper/generated/models/anchor_address_resolution_one_of.rb +189 -0
  53. data/lib/temper/generated/models/anchor_address_resolution_one_of1.rb +242 -0
  54. data/lib/temper/generated/models/anchor_address_resolution_one_of2.rb +189 -0
  55. data/lib/temper/generated/models/anchor_shape.rb +239 -0
  56. data/lib/temper/generated/models/anchor_verdict.rb +41 -0
  57. data/lib/temper/generated/models/append_block_payload.rb +250 -0
  58. data/lib/temper/generated/models/artifact_commit_request.rb +337 -0
  59. data/lib/temper/generated/models/artifact_commit_response.rb +192 -0
  60. data/lib/temper/generated/models/artifact_view.rb +466 -0
  61. data/lib/temper/generated/models/assert_relationship_request.rb +406 -0
  62. data/lib/temper/generated/models/atlas_edge.rb +327 -0
  63. data/lib/temper/generated/models/atlas_entry.rb +221 -0
  64. data/lib/temper/generated/models/atlas_home.rb +195 -0
  65. data/lib/temper/generated/models/atlas_node.rb +329 -0
  66. data/lib/temper/generated/models/atlas_subgraph.rb +195 -0
  67. data/lib/temper/generated/models/audit_citation.rb +220 -0
  68. data/lib/temper/generated/models/audit_sweep_row.rb +220 -0
  69. data/lib/temper/generated/models/auditor_dispatch_tick_request.rb +150 -0
  70. data/lib/temper/generated/models/auditor_dispatch_tick_response.rb +178 -0
  71. data/lib/temper/generated/models/auditor_job_complete_ack.rb +175 -0
  72. data/lib/temper/generated/models/bind_team_outcome.rb +218 -0
  73. data/lib/temper/generated/models/bind_team_request.rb +166 -0
  74. data/lib/temper/generated/models/blob_commit_response.rb +283 -0
  75. data/lib/temper/generated/models/blob_delete_ack.rb +191 -0
  76. data/lib/temper/generated/models/blob_relation_ack.rb +165 -0
  77. data/lib/temper/generated/models/blob_relation_assert_request.rb +404 -0
  78. data/lib/temper/generated/models/blob_relation_direction.rb +40 -0
  79. data/lib/temper/generated/models/blob_relation_edge_direction.rb +40 -0
  80. data/lib/temper/generated/models/blob_relation_row.rb +390 -0
  81. data/lib/temper/generated/models/blob_summary.rb +256 -0
  82. data/lib/temper/generated/models/blob_upload_begin_request.rb +219 -0
  83. data/lib/temper/generated/models/blob_upload_begin_response.rb +165 -0
  84. data/lib/temper/generated/models/blob_upload_finalize_request.rb +211 -0
  85. data/lib/temper/generated/models/blob_upload_progress.rb +220 -0
  86. data/lib/temper/generated/models/blob_upload_segment_info.rb +227 -0
  87. data/lib/temper/generated/models/block_chunk_ref.rb +217 -0
  88. data/lib/temper/generated/models/block_fold_disposition.rb +106 -0
  89. data/lib/temper/generated/models/block_fold_disposition_one_of.rb +245 -0
  90. data/lib/temper/generated/models/block_fold_disposition_one_of1.rb +189 -0
  91. data/lib/temper/generated/models/block_fold_disposition_one_of2.rb +189 -0
  92. data/lib/temper/generated/models/block_provenance_row.rb +348 -0
  93. data/lib/temper/generated/models/block_read.rb +106 -0
  94. data/lib/temper/generated/models/block_read_one_of.rb +311 -0
  95. data/lib/temper/generated/models/block_read_one_of1.rb +297 -0
  96. data/lib/temper/generated/models/block_read_one_of2.rb +215 -0
  97. data/lib/temper/generated/models/block_successor.rb +177 -0
  98. data/lib/temper/generated/models/blocks_response.rb +194 -0
  99. data/lib/temper/generated/models/body_storage.rb +40 -0
  100. data/lib/temper/generated/models/bridge.rb +217 -0
  101. data/lib/temper/generated/models/bulk_reassign_ack.rb +167 -0
  102. data/lib/temper/generated/models/bulk_reassign_request.rb +191 -0
  103. data/lib/temper/generated/models/change_role_request.rb +187 -0
  104. data/lib/temper/generated/models/charter_block.rb +220 -0
  105. data/lib/temper/generated/models/charter_disposition.rb +42 -0
  106. data/lib/temper/generated/models/citation_audit_request.rb +231 -0
  107. data/lib/temper/generated/models/citation_audit_row.rb +366 -0
  108. data/lib/temper/generated/models/claimed_audit_job.rb +249 -0
  109. data/lib/temper/generated/models/claimed_job.rb +220 -0
  110. data/lib/temper/generated/models/close_invocation_request.rb +197 -0
  111. data/lib/temper/generated/models/cogmap_analytics_row.rb +220 -0
  112. data/lib/temper/generated/models/cogmap_detail.rb +224 -0
  113. data/lib/temper/generated/models/cogmap_foundation_row.rb +247 -0
  114. data/lib/temper/generated/models/cogmap_grant_body.rb +295 -0
  115. data/lib/temper/generated/models/cogmap_region_metrics_row.rb +248 -0
  116. data/lib/temper/generated/models/cogmap_region_row.rb +269 -0
  117. data/lib/temper/generated/models/cogmap_regulation_row.rb +228 -0
  118. data/lib/temper/generated/models/cogmap_revoke_body.rb +191 -0
  119. data/lib/temper/generated/models/cogmap_row.rb +341 -0
  120. data/lib/temper/generated/models/cogmap_staleness.rb +185 -0
  121. data/lib/temper/generated/models/combine_node.rb +263 -0
  122. data/lib/temper/generated/models/combine_op.rb +41 -0
  123. data/lib/temper/generated/models/composition.rb +203 -0
  124. data/lib/temper/generated/models/composition_trace.rb +167 -0
  125. data/lib/temper/generated/models/confidence_band.rb +41 -0
  126. data/lib/temper/generated/models/content_response.rb +213 -0
  127. data/lib/temper/generated/models/context_create_request.rb +176 -0
  128. data/lib/temper/generated/models/context_owner_ref.rb +106 -0
  129. data/lib/temper/generated/models/context_owner_ref_one_of.rb +166 -0
  130. data/lib/temper/generated/models/context_owner_ref_one_of1.rb +166 -0
  131. data/lib/temper/generated/models/context_panorama.rb +221 -0
  132. data/lib/temper/generated/models/context_row.rb +404 -0
  133. data/lib/temper/generated/models/context_row_with_counts.rb +430 -0
  134. data/lib/temper/generated/models/create_cogmap_outcome.rb +217 -0
  135. data/lib/temper/generated/models/create_cogmap_request.rb +221 -0
  136. data/lib/temper/generated/models/create_invitation_request.rb +213 -0
  137. data/lib/temper/generated/models/create_request_body.rb +184 -0
  138. data/lib/temper/generated/models/create_review_body.rb +148 -0
  139. data/lib/temper/generated/models/deactivated.rb +189 -0
  140. data/lib/temper/generated/models/delete_response.rb +165 -0
  141. data/lib/temper/generated/models/denied.rb +189 -0
  142. data/lib/temper/generated/models/device_overrides.rb +162 -0
  143. data/lib/temper/generated/models/discouraged_open_meta_key.rb +191 -0
  144. data/lib/temper/generated/models/dispatch_tick_request.rb +161 -0
  145. data/lib/temper/generated/models/dispatch_tick_response.rb +178 -0
  146. data/lib/temper/generated/models/disposition.rb +41 -0
  147. data/lib/temper/generated/models/doc_type_description.rb +247 -0
  148. data/lib/temper/generated/models/doc_type_summary.rb +219 -0
  149. data/lib/temper/generated/models/drift_sweep_row.rb +258 -0
  150. data/lib/temper/generated/models/edge_facet_row.rb +332 -0
  151. data/lib/temper/generated/models/edge_facet_set_request.rb +288 -0
  152. data/lib/temper/generated/models/edge_facets_response.rb +193 -0
  153. data/lib/temper/generated/models/edge_filter.rb +192 -0
  154. data/lib/temper/generated/models/edge_kind.rb +42 -0
  155. data/lib/temper/generated/models/element_event.rb +307 -0
  156. data/lib/temper/generated/models/element_kind.rb +40 -0
  157. data/lib/temper/generated/models/embed_dispatch_summary.rb +355 -0
  158. data/lib/temper/generated/models/enforcement_mode.rb +40 -0
  159. data/lib/temper/generated/models/entitlements.rb +234 -0
  160. data/lib/temper/generated/models/entry_bounds.rb +247 -0
  161. data/lib/temper/generated/models/error_body.rb +164 -0
  162. data/lib/temper/generated/models/error_detail.rb +201 -0
  163. data/lib/temper/generated/models/error_details.rb +105 -0
  164. data/lib/temper/generated/models/event_cursor_response.rb +150 -0
  165. data/lib/temper/generated/models/event_trail.rb +241 -0
  166. data/lib/temper/generated/models/exact_arm.rb +226 -0
  167. data/lib/temper/generated/models/exact_hit.rb +193 -0
  168. data/lib/temper/generated/models/extent.rb +106 -0
  169. data/lib/temper/generated/models/extent_one_of.rb +189 -0
  170. data/lib/temper/generated/models/extent_one_of1.rb +189 -0
  171. data/lib/temper/generated/models/extent_one_of2.rb +215 -0
  172. data/lib/temper/generated/models/facet_ack.rb +168 -0
  173. data/lib/temper/generated/models/facet_predicate.rb +191 -0
  174. data/lib/temper/generated/models/facet_retract_ack.rb +165 -0
  175. data/lib/temper/generated/models/facet_set_request.rb +304 -0
  176. data/lib/temper/generated/models/finalize_payload.rb +212 -0
  177. data/lib/temper/generated/models/fold_relationship_request.rb +248 -0
  178. data/lib/temper/generated/models/grant_outcome.rb +166 -0
  179. data/lib/temper/generated/models/graph_edge_row.rb +421 -0
  180. data/lib/temper/generated/models/group_key_meta.rb +217 -0
  181. data/lib/temper/generated/models/health_response.rb +202 -0
  182. data/lib/temper/generated/models/home_cogmap.rb +297 -0
  183. data/lib/temper/generated/models/home_context.rb +281 -0
  184. data/lib/temper/generated/models/id_kind.rb +104 -0
  185. data/lib/temper/generated/models/id_provenance.rb +105 -0
  186. data/lib/temper/generated/models/id_provenance_one_of.rb +215 -0
  187. data/lib/temper/generated/models/id_provenance_one_of1.rb +215 -0
  188. data/lib/temper/generated/models/id_set.rb +214 -0
  189. data/lib/temper/generated/models/idp_revocation.rb +41 -0
  190. data/lib/temper/generated/models/illegal_transition.rb +225 -0
  191. data/lib/temper/generated/models/ingest_create_response.rb +105 -0
  192. data/lib/temper/generated/models/ingest_delta.rb +334 -0
  193. data/lib/temper/generated/models/ingest_payload.rb +478 -0
  194. data/lib/temper/generated/models/ingest_state.rb +40 -0
  195. data/lib/temper/generated/models/inherited_read_grant.rb +219 -0
  196. data/lib/temper/generated/models/inherited_share.rb +192 -0
  197. data/lib/temper/generated/models/input_source.rb +106 -0
  198. data/lib/temper/generated/models/input_source_one_of.rb +227 -0
  199. data/lib/temper/generated/models/input_source_one_of1.rb +189 -0
  200. data/lib/temper/generated/models/input_source_one_of2.rb +189 -0
  201. data/lib/temper/generated/models/insufficient_authority.rb +241 -0
  202. data/lib/temper/generated/models/intention.rb +212 -0
  203. data/lib/temper/generated/models/invitation_status.rb +42 -0
  204. data/lib/temper/generated/models/invitation_token_request.rb +165 -0
  205. data/lib/temper/generated/models/invitee_invitation.rb +447 -0
  206. data/lib/temper/generated/models/invocation_ack.rb +191 -0
  207. data/lib/temper/generated/models/invocation_act_row.rb +269 -0
  208. data/lib/temper/generated/models/invocation_close_ack.rb +213 -0
  209. data/lib/temper/generated/models/invocation_summary.rb +296 -0
  210. data/lib/temper/generated/models/invocation_view.rb +433 -0
  211. data/lib/temper/generated/models/join_request.rb +403 -0
  212. data/lib/temper/generated/models/join_request_status.rb +42 -0
  213. data/lib/temper/generated/models/kind_owner_input.rb +105 -0
  214. data/lib/temper/generated/models/kind_owner_input_one_of.rb +164 -0
  215. data/lib/temper/generated/models/kind_owner_input_one_of1.rb +164 -0
  216. data/lib/temper/generated/models/lineage_node.rb +326 -0
  217. data/lib/temper/generated/models/managed_meta.rb +249 -0
  218. data/lib/temper/generated/models/match_location.rb +188 -0
  219. data/lib/temper/generated/models/materialize_ack.rb +307 -0
  220. data/lib/temper/generated/models/materialize_delta.rb +296 -0
  221. data/lib/temper/generated/models/materialize_request.rb +150 -0
  222. data/lib/temper/generated/models/merge_policy.rb +40 -0
  223. data/lib/temper/generated/models/meta_update_payload.rb +358 -0
  224. data/lib/temper/generated/models/narrowed_by.rb +210 -0
  225. data/lib/temper/generated/models/no_prior_standing.rb +189 -0
  226. data/lib/temper/generated/models/no_standing.rb +189 -0
  227. data/lib/temper/generated/models/node_home.rb +40 -0
  228. data/lib/temper/generated/models/open_invocation_request.rb +204 -0
  229. data/lib/temper/generated/models/open_meta_convention.rb +180 -0
  230. data/lib/temper/generated/models/ord_op.rb +42 -0
  231. data/lib/temper/generated/models/orphan_node.rb +264 -0
  232. data/lib/temper/generated/models/outcome_declaration.rb +177 -0
  233. data/lib/temper/generated/models/pending_invitation_counts.rb +177 -0
  234. data/lib/temper/generated/models/plan_refusal.rb +220 -0
  235. data/lib/temper/generated/models/plan_refusal_details.rb +167 -0
  236. data/lib/temper/generated/models/polarity.rb +40 -0
  237. data/lib/temper/generated/models/profile.rb +313 -0
  238. data/lib/temper/generated/models/profile_auth_link.rb +332 -0
  239. data/lib/temper/generated/models/profile_update_request.rb +169 -0
  240. data/lib/temper/generated/models/profile_with_entitlements.rb +344 -0
  241. data/lib/temper/generated/models/property_op.rb +106 -0
  242. data/lib/temper/generated/models/property_op_one_of.rb +189 -0
  243. data/lib/temper/generated/models/property_op_one_of1.rb +217 -0
  244. data/lib/temper/generated/models/property_op_one_of2.rb +227 -0
  245. data/lib/temper/generated/models/property_predicate.rb +191 -0
  246. data/lib/temper/generated/models/provenance_source.rb +106 -0
  247. data/lib/temper/generated/models/provenance_source_one_of.rb +214 -0
  248. data/lib/temper/generated/models/provenance_source_one_of1.rb +214 -0
  249. data/lib/temper/generated/models/provenance_source_one_of2.rb +216 -0
  250. data/lib/temper/generated/models/public_system_settings.rb +169 -0
  251. data/lib/temper/generated/models/quantity_scale.rb +106 -0
  252. data/lib/temper/generated/models/quantity_scale_one_of.rb +189 -0
  253. data/lib/temper/generated/models/quantity_scale_one_of1.rb +215 -0
  254. data/lib/temper/generated/models/quantity_scale_one_of2.rb +189 -0
  255. data/lib/temper/generated/models/query_response.rb +195 -0
  256. data/lib/temper/generated/models/reassign_ack.rb +191 -0
  257. data/lib/temper/generated/models/reassign_context_outcome.rb +243 -0
  258. data/lib/temper/generated/models/reassign_context_request.rb +166 -0
  259. data/lib/temper/generated/models/reassign_resource_request.rb +165 -0
  260. data/lib/temper/generated/models/reblock_candidate.rb +192 -0
  261. data/lib/temper/generated/models/reblock_outcome.rb +109 -0
  262. data/lib/temper/generated/models/reblock_outcome_one_of.rb +165 -0
  263. data/lib/temper/generated/models/reblock_outcome_one_of1.rb +165 -0
  264. data/lib/temper/generated/models/reblock_outcome_one_of1_in_progress.rb +166 -0
  265. data/lib/temper/generated/models/reblock_outcome_one_of2.rb +165 -0
  266. data/lib/temper/generated/models/reblock_outcome_one_of3.rb +165 -0
  267. data/lib/temper/generated/models/reblock_outcome_one_of4.rb +165 -0
  268. data/lib/temper/generated/models/reblock_outcome_one_of4_error.rb +165 -0
  269. data/lib/temper/generated/models/reblock_outcome_one_of_reblocked.rb +165 -0
  270. data/lib/temper/generated/models/reblock_receipt.rb +259 -0
  271. data/lib/temper/generated/models/reblock_request.rb +215 -0
  272. data/lib/temper/generated/models/reblock_scope.rb +106 -0
  273. data/lib/temper/generated/models/reblock_scope_one_of.rb +166 -0
  274. data/lib/temper/generated/models/reblock_scope_one_of1.rb +166 -0
  275. data/lib/temper/generated/models/reblock_summary.rb +350 -0
  276. data/lib/temper/generated/models/reconcile_cogmap_request.rb +199 -0
  277. data/lib/temper/generated/models/reconcile_edge.rb +253 -0
  278. data/lib/temper/generated/models/reconcile_edge_tombstone.rb +217 -0
  279. data/lib/temper/generated/models/reconcile_entry.rb +318 -0
  280. data/lib/temper/generated/models/reconcile_outcome.rb +327 -0
  281. data/lib/temper/generated/models/reconcile_telos.rb +167 -0
  282. data/lib/temper/generated/models/reconcile_telos_block.rb +191 -0
  283. data/lib/temper/generated/models/reconcile_tombstone.rb +165 -0
  284. data/lib/temper/generated/models/refusal.rb +112 -0
  285. data/lib/temper/generated/models/refusal_reason.rb +104 -0
  286. data/lib/temper/generated/models/region_disclosure.rb +193 -0
  287. data/lib/temper/generated/models/region_hit.rb +192 -0
  288. data/lib/temper/generated/models/relationship_ack.rb +165 -0
  289. data/lib/temper/generated/models/relationship_target.rb +40 -0
  290. data/lib/temper/generated/models/remove_member_outcome.rb +165 -0
  291. data/lib/temper/generated/models/rename_context_outcome.rb +300 -0
  292. data/lib/temper/generated/models/rename_context_request.rb +166 -0
  293. data/lib/temper/generated/models/requested.rb +189 -0
  294. data/lib/temper/generated/models/residual_bucket.rb +191 -0
  295. data/lib/temper/generated/models/residual_context.rb +201 -0
  296. data/lib/temper/generated/models/residual_groups.rb +193 -0
  297. data/lib/temper/generated/models/residual_owned_reach.rb +202 -0
  298. data/lib/temper/generated/models/resource_annotate_request.rb +261 -0
  299. data/lib/temper/generated/models/resource_create_request.rb +355 -0
  300. data/lib/temper/generated/models/resource_facet_row.rb +317 -0
  301. data/lib/temper/generated/models/resource_facets.rb +226 -0
  302. data/lib/temper/generated/models/resource_facets_response.rb +193 -0
  303. data/lib/temper/generated/models/resource_filter.rb +265 -0
  304. data/lib/temper/generated/models/resource_grant_body.rb +295 -0
  305. data/lib/temper/generated/models/resource_hit.rb +216 -0
  306. data/lib/temper/generated/models/resource_lineage.rb +224 -0
  307. data/lib/temper/generated/models/resource_list_response.rb +313 -0
  308. data/lib/temper/generated/models/resource_revoke_body.rb +191 -0
  309. data/lib/temper/generated/models/resource_section.rb +41 -0
  310. data/lib/temper/generated/models/resource_sort_field.rb +45 -0
  311. data/lib/temper/generated/models/resource_update_request.rb +379 -0
  312. data/lib/temper/generated/models/resource_view.rb +592 -0
  313. data/lib/temper/generated/models/restore_context_outcome.rb +274 -0
  314. data/lib/temper/generated/models/retire_context_outcome.rb +247 -0
  315. data/lib/temper/generated/models/return_spec.rb +189 -0
  316. data/lib/temper/generated/models/retype_relationship_request.rb +290 -0
  317. data/lib/temper/generated/models/revoke_outcome.rb +165 -0
  318. data/lib/temper/generated/models/revoked.rb +189 -0
  319. data/lib/temper/generated/models/reweight_relationship_request.rb +264 -0
  320. data/lib/temper/generated/models/score_kind.rb +104 -0
  321. data/lib/temper/generated/models/scoring.rb +192 -0
  322. data/lib/temper/generated/models/search_params.rb +254 -0
  323. data/lib/temper/generated/models/search_reason.rb +41 -0
  324. data/lib/temper/generated/models/search_response.rb +217 -0
  325. data/lib/temper/generated/models/search_result_row.rb +343 -0
  326. data/lib/temper/generated/models/search_scope.rb +41 -0
  327. data/lib/temper/generated/models/search_scope_info.rb +199 -0
  328. data/lib/temper/generated/models/segment_info.rb +200 -0
  329. data/lib/temper/generated/models/segmented_begin.rb +212 -0
  330. data/lib/temper/generated/models/segmented_begin_response.rb +247 -0
  331. data/lib/temper/generated/models/shape_declare_request.rb +315 -0
  332. data/lib/temper/generated/models/shape_emptiness.rb +42 -0
  333. data/lib/temper/generated/models/shape_view.rb +438 -0
  334. data/lib/temper/generated/models/share_context_outcome.rb +218 -0
  335. data/lib/temper/generated/models/share_context_request.rb +166 -0
  336. data/lib/temper/generated/models/slack_disconnect_request.rb +166 -0
  337. data/lib/temper/generated/models/slack_disconnect_response.rb +168 -0
  338. data/lib/temper/generated/models/slack_disconnected_principal.rb +269 -0
  339. data/lib/temper/generated/models/slice_request.rb +216 -0
  340. data/lib/temper/generated/models/sort_order.rb +40 -0
  341. data/lib/temper/generated/models/stage_disposition.rb +42 -0
  342. data/lib/temper/generated/models/stage_input.rb +105 -0
  343. data/lib/temper/generated/models/stage_input_one_of.rb +241 -0
  344. data/lib/temper/generated/models/stage_input_one_of1.rb +253 -0
  345. data/lib/temper/generated/models/stage_input_trace.rb +241 -0
  346. data/lib/temper/generated/models/stage_node.rb +105 -0
  347. data/lib/temper/generated/models/stage_output.rb +105 -0
  348. data/lib/temper/generated/models/stage_output_one_of.rb +217 -0
  349. data/lib/temper/generated/models/stage_output_one_of1.rb +217 -0
  350. data/lib/temper/generated/models/stage_relation.rb +40 -0
  351. data/lib/temper/generated/models/stage_result.rb +423 -0
  352. data/lib/temper/generated/models/stage_trace.rb +451 -0
  353. data/lib/temper/generated/models/standing.rb +43 -0
  354. data/lib/temper/generated/models/standing_shape.rb +355 -0
  355. data/lib/temper/generated/models/subscription.rb +267 -0
  356. data/lib/temper/generated/models/subscription_override.rb +193 -0
  357. data/lib/temper/generated/models/system_access_details.rb +206 -0
  358. data/lib/temper/generated/models/team_create_request.rb +217 -0
  359. data/lib/temper/generated/models/team_detail.rb +313 -0
  360. data/lib/temper/generated/models/team_invitation.rb +406 -0
  361. data/lib/temper/generated/models/team_member_detail.rb +265 -0
  362. data/lib/temper/generated/models/team_member_row.rb +265 -0
  363. data/lib/temper/generated/models/team_member_source.rb +40 -0
  364. data/lib/temper/generated/models/team_role.rb +42 -0
  365. data/lib/temper/generated/models/team_row.rb +287 -0
  366. data/lib/temper/generated/models/team_update_request.rb +159 -0
  367. data/lib/temper/generated/models/territory.rb +298 -0
  368. data/lib/temper/generated/models/territory_kind.rb +41 -0
  369. data/lib/temper/generated/models/territory_overview.rb +223 -0
  370. data/lib/temper/generated/models/unbind_team_outcome.rb +218 -0
  371. data/lib/temper/generated/models/unrecognized_standing.rb +215 -0
  372. data/lib/temper/generated/models/unshare_context_outcome.rb +218 -0
  373. data/lib/temper/generated/models/vault_config.rb +174 -0
  374. data/lib/temper/generated/models/via_entry.rb +305 -0
  375. data/lib/temper/generated/models/wide_arm.rb +252 -0
  376. data/lib/temper/generated/models/wide_hit.rb +193 -0
  377. data/lib/temper/generated/version.rb +15 -0
  378. data/lib/temper/generated.rb +402 -0
  379. data/lib/temper/refs.rb +36 -0
  380. data/lib/temper/resources.rb +68 -0
  381. data/lib/temper/validate.rb +127 -0
  382. data/lib/temper/version.rb +11 -0
  383. data/lib/temper.rb +47 -0
  384. metadata +525 -0
@@ -0,0 +1,592 @@
1
+ =begin
2
+ #Temper Cloud API
3
+
4
+ #Knowledge base management API for temper cloud
5
+
6
+ The version of the OpenAPI document: 0.5.1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.23.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Temper::Generated
17
+ # Everything a resource is, except its body — one shape for every read and write surface. Replaces the six near-identical projections a caller used to have to tell apart (`ResourceRow`, `ResourceDetail`, `ResourceMetaResponse`, `ResourceSummary`, the search `HitIdentity`, and the inlined identity half of `ExactHit`/`WideHit`). A human or agent learns this shape once and it is the shape `list`, `show`, `create`, `update`, `annotate` and both search arms all answer in. Three properties are load-bearing and each has its own test below: 1. **The anchor is `id`, never `resource_id`.** The retired `ResourceMetaResponse` recorded why: \"With two different anchor names the subset relation is unachievable.\" Here the relation is stronger than subset — it is identity. 2. **No workflow field is hoisted.** `stage`/`mode`/`effort`/`seq` were flat columns on `ResourceRow`; they live in [`ManagedMeta`] under their canonical `temper-*` names and nowhere else. Dropping them is lossless *because* of property 3. 3. **`managed_meta` is not an `Option`.** A consumer reads `view.managed_meta.stage` without first distinguishing \"no meta\" from \"no stage\". **No `#[serde(flatten)]` anywhere**, deliberately: ts-rs cannot codegen a flattened field, which is why `ResourceDetail` had to drop its `TS` derive and why the identity fields on `ExactHit`/`WideHit` were hand-inlined. This type is ts-rs-exported, so the constraint is structural, not stylistic. **No `FromRow` derive, deliberately.** `ref` and `context_ref` are derived rather than selected and `content` arrives from a different read, so a `query_as` into this type could never be complete. `ResourceRow` carried a `FromRow` derive with **zero** `query_as` call sites anywhere in the repo — decorative, and an invitation to try something that cannot work. Construction is by hand, as `substrate_read` already does.
18
+ class ResourceView < ApiModelBase
19
+ # SHA-256 hash of the resource body, from `kb_resource_manifests`. `None` when no manifest row exists.
20
+ attr_accessor :body_hash
21
+
22
+ # Do the bytes read back exactly, or only approximately? `Option` purely for version skew, as with `ingest_state`.
23
+ attr_accessor :body_storage
24
+
25
+ # Set when the resource is homed in a cognitive map. Mutually exclusive with the `context_*` fields.
26
+ attr_accessor :cogmap_id
27
+
28
+ # Display name of the home cognitive map. `Some` iff `cogmap_id` is `Some`.
29
+ attr_accessor :cogmap_name
30
+
31
+ # The reconstructed markdown body — the `body` section. Absent means **not requested**, never \"empty body\". An empty body is `Some(String::new())`, which serializes as `\"\"`; the two are distinguishable on the wire and after a round-trip.
32
+ attr_accessor :content
33
+
34
+ attr_accessor :context_name
35
+
36
+ # Already-sigil'd owner: `@<handle>` for profiles, `+<team-slug>` for teams.
37
+ attr_accessor :context_owner_ref
38
+
39
+ # The composed home-context address, `{context_owner_ref}/{context_slug}`. Not a column — derived by [`ResourceView::with_derived_refs`]. `None` for a cogmap-homed resource, which has no context half; never a half-formed ref.
40
+ attr_accessor :context_ref
41
+
42
+ # Slug of the home context (the natural-key half of `@owner/slug`).
43
+ attr_accessor :context_slug
44
+
45
+ attr_accessor :created
46
+
47
+ attr_accessor :doc_type_name
48
+
49
+ # A `kb_resources.id` value.
50
+ attr_accessor :id
51
+
52
+ # Are all the bytes here? `Option` purely for version skew — the column is `NOT NULL` server-side, so `None` means the server predates W2 PR 1. Do not read `None` as \"incomplete\".
53
+ attr_accessor :ingest_state
54
+
55
+ attr_accessor :is_active
56
+
57
+ # `Some` for a context-homed resource, `None` when homed in a cognitive map (Surface B). Mutually exclusive with the `cogmap_*` fields.
58
+ attr_accessor :kb_context_id
59
+
60
+ # Typed managed (`temper-*`) frontmatter — the closed Property vocabulary. **Not an `Option`.** This is what makes dropping the hoisted `stage`/`mode`/ `effort`/`seq` columns lossless: the values did not go away, they went home. A resource with no managed metadata carries an all-`None` `ManagedMeta`, which serializes as `{}` — present and empty, never absent.
61
+ attr_accessor :managed_meta
62
+
63
+ attr_accessor :open_meta
64
+
65
+ # Original source URL or file reference. There is deliberately no `kb_uri` beside this. `ExactHit`/`WideHit` carried one whose doc comment promised a \"canonical `kb://` URI ... from `kb_resource_uri`\", but `kb_resource_uri` does not exist in `migrations/` and the assembly wrote `kb_uri: self.origin_uri.clone()` (`substrate_read.rs:898,912`) — the same value under a second name and a false description. It joins `origin` (the constant `\"unified\"`) and `slug` (always `String::new()`) as a field this arc dropped for never having carried what it claimed.
66
+ attr_accessor :origin_uri
67
+
68
+ # A `kb_profiles.id` value.
69
+ attr_accessor :originator_profile_id
70
+
71
+ attr_accessor :owner_handle
72
+
73
+ # A `kb_profiles.id` value.
74
+ attr_accessor :owner_profile_id
75
+
76
+ # The decorated, self-resolving address: `sluggify(title)-<uuid>`. Not a column — derived by [`ResourceView::with_derived_refs`] from `title` + `id`. Until this task it was injected render-time by the CLI alone (`temper-cli/src/commands/resource.rs`), so MCP callers never received one even though the shipped skill instructs agents to use it.
77
+ attr_accessor :ref
78
+
79
+ attr_accessor :title
80
+
81
+ attr_accessor :updated
82
+
83
+ class EnumAttributeValidator
84
+ attr_reader :datatype
85
+ attr_reader :allowable_values
86
+
87
+ def initialize(datatype, allowable_values)
88
+ @allowable_values = allowable_values.map do |value|
89
+ case datatype.to_s
90
+ when /Integer/i
91
+ value.to_i
92
+ when /Float/i
93
+ value.to_f
94
+ else
95
+ value
96
+ end
97
+ end
98
+ end
99
+
100
+ def valid?(value)
101
+ !value || allowable_values.include?(value)
102
+ end
103
+ end
104
+
105
+ # Attribute mapping from ruby-style variable name to JSON key.
106
+ def self.attribute_map
107
+ {
108
+ :'body_hash' => :'body_hash',
109
+ :'body_storage' => :'body_storage',
110
+ :'cogmap_id' => :'cogmap_id',
111
+ :'cogmap_name' => :'cogmap_name',
112
+ :'content' => :'content',
113
+ :'context_name' => :'context_name',
114
+ :'context_owner_ref' => :'context_owner_ref',
115
+ :'context_ref' => :'context_ref',
116
+ :'context_slug' => :'context_slug',
117
+ :'created' => :'created',
118
+ :'doc_type_name' => :'doc_type_name',
119
+ :'id' => :'id',
120
+ :'ingest_state' => :'ingest_state',
121
+ :'is_active' => :'is_active',
122
+ :'kb_context_id' => :'kb_context_id',
123
+ :'managed_meta' => :'managed_meta',
124
+ :'open_meta' => :'open_meta',
125
+ :'origin_uri' => :'origin_uri',
126
+ :'originator_profile_id' => :'originator_profile_id',
127
+ :'owner_handle' => :'owner_handle',
128
+ :'owner_profile_id' => :'owner_profile_id',
129
+ :'ref' => :'ref',
130
+ :'title' => :'title',
131
+ :'updated' => :'updated'
132
+ }
133
+ end
134
+
135
+ # Returns attribute mapping this model knows about
136
+ def self.acceptable_attribute_map
137
+ attribute_map
138
+ end
139
+
140
+ # Returns all the JSON keys this model knows about
141
+ def self.acceptable_attributes
142
+ acceptable_attribute_map.values
143
+ end
144
+
145
+ # Attribute type mapping.
146
+ def self.openapi_types
147
+ {
148
+ :'body_hash' => :'String',
149
+ :'body_storage' => :'BodyStorage',
150
+ :'cogmap_id' => :'String',
151
+ :'cogmap_name' => :'String',
152
+ :'content' => :'String',
153
+ :'context_name' => :'String',
154
+ :'context_owner_ref' => :'String',
155
+ :'context_ref' => :'String',
156
+ :'context_slug' => :'String',
157
+ :'created' => :'Time',
158
+ :'doc_type_name' => :'String',
159
+ :'id' => :'String',
160
+ :'ingest_state' => :'IngestState',
161
+ :'is_active' => :'Boolean',
162
+ :'kb_context_id' => :'String',
163
+ :'managed_meta' => :'ManagedMeta',
164
+ :'open_meta' => :'Object',
165
+ :'origin_uri' => :'String',
166
+ :'originator_profile_id' => :'String',
167
+ :'owner_handle' => :'String',
168
+ :'owner_profile_id' => :'String',
169
+ :'ref' => :'String',
170
+ :'title' => :'String',
171
+ :'updated' => :'Time'
172
+ }
173
+ end
174
+
175
+ # List of attributes with nullable: true
176
+ def self.openapi_nullable
177
+ Set.new([
178
+ :'body_hash',
179
+ :'body_storage',
180
+ :'cogmap_id',
181
+ :'cogmap_name',
182
+ :'content',
183
+ :'context_name',
184
+ :'context_owner_ref',
185
+ :'context_ref',
186
+ :'context_slug',
187
+ :'ingest_state',
188
+ :'kb_context_id',
189
+ :'open_meta',
190
+ ])
191
+ end
192
+
193
+ # Initializes the object
194
+ # @param [Hash] attributes Model attributes in the form of hash
195
+ def initialize(attributes = {})
196
+ if (!attributes.is_a?(Hash))
197
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Temper::Generated::ResourceView` initialize method"
198
+ end
199
+
200
+ # check to see if the attribute exists and convert string to symbol for hash key
201
+ acceptable_attribute_map = self.class.acceptable_attribute_map
202
+ attributes = attributes.each_with_object({}) { |(k, v), h|
203
+ if (!acceptable_attribute_map.key?(k.to_sym))
204
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Temper::Generated::ResourceView`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
205
+ end
206
+ h[k.to_sym] = v
207
+ }
208
+
209
+ if attributes.key?(:'body_hash')
210
+ self.body_hash = attributes[:'body_hash']
211
+ end
212
+
213
+ if attributes.key?(:'body_storage')
214
+ self.body_storage = attributes[:'body_storage']
215
+ end
216
+
217
+ if attributes.key?(:'cogmap_id')
218
+ self.cogmap_id = attributes[:'cogmap_id']
219
+ end
220
+
221
+ if attributes.key?(:'cogmap_name')
222
+ self.cogmap_name = attributes[:'cogmap_name']
223
+ end
224
+
225
+ if attributes.key?(:'content')
226
+ self.content = attributes[:'content']
227
+ end
228
+
229
+ if attributes.key?(:'context_name')
230
+ self.context_name = attributes[:'context_name']
231
+ end
232
+
233
+ if attributes.key?(:'context_owner_ref')
234
+ self.context_owner_ref = attributes[:'context_owner_ref']
235
+ end
236
+
237
+ if attributes.key?(:'context_ref')
238
+ self.context_ref = attributes[:'context_ref']
239
+ end
240
+
241
+ if attributes.key?(:'context_slug')
242
+ self.context_slug = attributes[:'context_slug']
243
+ end
244
+
245
+ if attributes.key?(:'created')
246
+ self.created = attributes[:'created']
247
+ else
248
+ self.created = nil
249
+ end
250
+
251
+ if attributes.key?(:'doc_type_name')
252
+ self.doc_type_name = attributes[:'doc_type_name']
253
+ else
254
+ self.doc_type_name = nil
255
+ end
256
+
257
+ if attributes.key?(:'id')
258
+ self.id = attributes[:'id']
259
+ else
260
+ self.id = nil
261
+ end
262
+
263
+ if attributes.key?(:'ingest_state')
264
+ self.ingest_state = attributes[:'ingest_state']
265
+ end
266
+
267
+ if attributes.key?(:'is_active')
268
+ self.is_active = attributes[:'is_active']
269
+ else
270
+ self.is_active = nil
271
+ end
272
+
273
+ if attributes.key?(:'kb_context_id')
274
+ self.kb_context_id = attributes[:'kb_context_id']
275
+ end
276
+
277
+ if attributes.key?(:'managed_meta')
278
+ self.managed_meta = attributes[:'managed_meta']
279
+ end
280
+
281
+ if attributes.key?(:'open_meta')
282
+ self.open_meta = attributes[:'open_meta']
283
+ end
284
+
285
+ if attributes.key?(:'origin_uri')
286
+ self.origin_uri = attributes[:'origin_uri']
287
+ else
288
+ self.origin_uri = nil
289
+ end
290
+
291
+ if attributes.key?(:'originator_profile_id')
292
+ self.originator_profile_id = attributes[:'originator_profile_id']
293
+ else
294
+ self.originator_profile_id = nil
295
+ end
296
+
297
+ if attributes.key?(:'owner_handle')
298
+ self.owner_handle = attributes[:'owner_handle']
299
+ else
300
+ self.owner_handle = nil
301
+ end
302
+
303
+ if attributes.key?(:'owner_profile_id')
304
+ self.owner_profile_id = attributes[:'owner_profile_id']
305
+ else
306
+ self.owner_profile_id = nil
307
+ end
308
+
309
+ if attributes.key?(:'ref')
310
+ self.ref = attributes[:'ref']
311
+ else
312
+ self.ref = nil
313
+ end
314
+
315
+ if attributes.key?(:'title')
316
+ self.title = attributes[:'title']
317
+ else
318
+ self.title = nil
319
+ end
320
+
321
+ if attributes.key?(:'updated')
322
+ self.updated = attributes[:'updated']
323
+ else
324
+ self.updated = nil
325
+ end
326
+ end
327
+
328
+ # Show invalid properties with the reasons. Usually used together with valid?
329
+ # @return Array for valid properties with the reasons
330
+ def list_invalid_properties
331
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
332
+ invalid_properties = Array.new
333
+ if @created.nil?
334
+ invalid_properties.push('invalid value for "created", created cannot be nil.')
335
+ end
336
+
337
+ if @doc_type_name.nil?
338
+ invalid_properties.push('invalid value for "doc_type_name", doc_type_name cannot be nil.')
339
+ end
340
+
341
+ if @id.nil?
342
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
343
+ end
344
+
345
+ if @is_active.nil?
346
+ invalid_properties.push('invalid value for "is_active", is_active cannot be nil.')
347
+ end
348
+
349
+ if @origin_uri.nil?
350
+ invalid_properties.push('invalid value for "origin_uri", origin_uri cannot be nil.')
351
+ end
352
+
353
+ if @originator_profile_id.nil?
354
+ invalid_properties.push('invalid value for "originator_profile_id", originator_profile_id cannot be nil.')
355
+ end
356
+
357
+ if @owner_handle.nil?
358
+ invalid_properties.push('invalid value for "owner_handle", owner_handle cannot be nil.')
359
+ end
360
+
361
+ if @owner_profile_id.nil?
362
+ invalid_properties.push('invalid value for "owner_profile_id", owner_profile_id cannot be nil.')
363
+ end
364
+
365
+ if @ref.nil?
366
+ invalid_properties.push('invalid value for "ref", ref cannot be nil.')
367
+ end
368
+
369
+ if @title.nil?
370
+ invalid_properties.push('invalid value for "title", title cannot be nil.')
371
+ end
372
+
373
+ if @updated.nil?
374
+ invalid_properties.push('invalid value for "updated", updated cannot be nil.')
375
+ end
376
+
377
+ invalid_properties
378
+ end
379
+
380
+ # Check to see if the all the properties in the model are valid
381
+ # @return true if the model is valid
382
+ def valid?
383
+ warn '[DEPRECATED] the `valid?` method is obsolete'
384
+ return false if @created.nil?
385
+ return false if @doc_type_name.nil?
386
+ return false if @id.nil?
387
+ return false if @is_active.nil?
388
+ return false if @origin_uri.nil?
389
+ return false if @originator_profile_id.nil?
390
+ return false if @owner_handle.nil?
391
+ return false if @owner_profile_id.nil?
392
+ return false if @ref.nil?
393
+ return false if @title.nil?
394
+ return false if @updated.nil?
395
+ true
396
+ end
397
+
398
+ # Custom attribute writer method with validation
399
+ # @param [Object] created Value to be assigned
400
+ def created=(created)
401
+ if created.nil?
402
+ fail ArgumentError, 'created cannot be nil'
403
+ end
404
+
405
+ @created = created
406
+ end
407
+
408
+ # Custom attribute writer method with validation
409
+ # @param [Object] doc_type_name Value to be assigned
410
+ def doc_type_name=(doc_type_name)
411
+ if doc_type_name.nil?
412
+ fail ArgumentError, 'doc_type_name cannot be nil'
413
+ end
414
+
415
+ @doc_type_name = doc_type_name
416
+ end
417
+
418
+ # Custom attribute writer method with validation
419
+ # @param [Object] id Value to be assigned
420
+ def id=(id)
421
+ if id.nil?
422
+ fail ArgumentError, 'id cannot be nil'
423
+ end
424
+
425
+ @id = id
426
+ end
427
+
428
+ # Custom attribute writer method with validation
429
+ # @param [Object] is_active Value to be assigned
430
+ def is_active=(is_active)
431
+ if is_active.nil?
432
+ fail ArgumentError, 'is_active cannot be nil'
433
+ end
434
+
435
+ @is_active = is_active
436
+ end
437
+
438
+ # Custom attribute writer method with validation
439
+ # @param [Object] origin_uri Value to be assigned
440
+ def origin_uri=(origin_uri)
441
+ if origin_uri.nil?
442
+ fail ArgumentError, 'origin_uri cannot be nil'
443
+ end
444
+
445
+ @origin_uri = origin_uri
446
+ end
447
+
448
+ # Custom attribute writer method with validation
449
+ # @param [Object] originator_profile_id Value to be assigned
450
+ def originator_profile_id=(originator_profile_id)
451
+ if originator_profile_id.nil?
452
+ fail ArgumentError, 'originator_profile_id cannot be nil'
453
+ end
454
+
455
+ @originator_profile_id = originator_profile_id
456
+ end
457
+
458
+ # Custom attribute writer method with validation
459
+ # @param [Object] owner_handle Value to be assigned
460
+ def owner_handle=(owner_handle)
461
+ if owner_handle.nil?
462
+ fail ArgumentError, 'owner_handle cannot be nil'
463
+ end
464
+
465
+ @owner_handle = owner_handle
466
+ end
467
+
468
+ # Custom attribute writer method with validation
469
+ # @param [Object] owner_profile_id Value to be assigned
470
+ def owner_profile_id=(owner_profile_id)
471
+ if owner_profile_id.nil?
472
+ fail ArgumentError, 'owner_profile_id cannot be nil'
473
+ end
474
+
475
+ @owner_profile_id = owner_profile_id
476
+ end
477
+
478
+ # Custom attribute writer method with validation
479
+ # @param [Object] ref Value to be assigned
480
+ def ref=(ref)
481
+ if ref.nil?
482
+ fail ArgumentError, 'ref cannot be nil'
483
+ end
484
+
485
+ @ref = ref
486
+ end
487
+
488
+ # Custom attribute writer method with validation
489
+ # @param [Object] title Value to be assigned
490
+ def title=(title)
491
+ if title.nil?
492
+ fail ArgumentError, 'title cannot be nil'
493
+ end
494
+
495
+ @title = title
496
+ end
497
+
498
+ # Custom attribute writer method with validation
499
+ # @param [Object] updated Value to be assigned
500
+ def updated=(updated)
501
+ if updated.nil?
502
+ fail ArgumentError, 'updated cannot be nil'
503
+ end
504
+
505
+ @updated = updated
506
+ end
507
+
508
+ # Checks equality by comparing each attribute.
509
+ # @param [Object] Object to be compared
510
+ def ==(o)
511
+ return true if self.equal?(o)
512
+ self.class == o.class &&
513
+ body_hash == o.body_hash &&
514
+ body_storage == o.body_storage &&
515
+ cogmap_id == o.cogmap_id &&
516
+ cogmap_name == o.cogmap_name &&
517
+ content == o.content &&
518
+ context_name == o.context_name &&
519
+ context_owner_ref == o.context_owner_ref &&
520
+ context_ref == o.context_ref &&
521
+ context_slug == o.context_slug &&
522
+ created == o.created &&
523
+ doc_type_name == o.doc_type_name &&
524
+ id == o.id &&
525
+ ingest_state == o.ingest_state &&
526
+ is_active == o.is_active &&
527
+ kb_context_id == o.kb_context_id &&
528
+ managed_meta == o.managed_meta &&
529
+ open_meta == o.open_meta &&
530
+ origin_uri == o.origin_uri &&
531
+ originator_profile_id == o.originator_profile_id &&
532
+ owner_handle == o.owner_handle &&
533
+ owner_profile_id == o.owner_profile_id &&
534
+ ref == o.ref &&
535
+ title == o.title &&
536
+ updated == o.updated
537
+ end
538
+
539
+ # @see the `==` method
540
+ # @param [Object] Object to be compared
541
+ def eql?(o)
542
+ self == o
543
+ end
544
+
545
+ # Calculates hash code according to all attributes.
546
+ # @return [Integer] Hash code
547
+ def hash
548
+ [body_hash, body_storage, cogmap_id, cogmap_name, content, context_name, context_owner_ref, context_ref, context_slug, created, doc_type_name, id, ingest_state, is_active, kb_context_id, managed_meta, open_meta, origin_uri, originator_profile_id, owner_handle, owner_profile_id, ref, title, updated].hash
549
+ end
550
+
551
+ # Builds the object from hash
552
+ # @param [Hash] attributes Model attributes in the form of hash
553
+ # @return [Object] Returns the model itself
554
+ def self.build_from_hash(attributes)
555
+ return nil unless attributes.is_a?(Hash)
556
+ attributes = attributes.transform_keys(&:to_sym)
557
+ transformed_hash = {}
558
+ openapi_types.each_pair do |key, type|
559
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
560
+ transformed_hash["#{key}"] = nil
561
+ elsif type =~ /\AArray<(.*)>/i
562
+ # check to ensure the input is an array given that the attribute
563
+ # is documented as an array but the input is not
564
+ if attributes[attribute_map[key]].is_a?(Array)
565
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
566
+ end
567
+ elsif !attributes[attribute_map[key]].nil?
568
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
569
+ end
570
+ end
571
+ new(transformed_hash)
572
+ end
573
+
574
+ # Returns the object in the form of hash
575
+ # @return [Hash] Returns the object in the form of hash
576
+ def to_hash
577
+ hash = {}
578
+ self.class.attribute_map.each_pair do |attr, param|
579
+ value = self.send(attr)
580
+ if value.nil?
581
+ is_nullable = self.class.openapi_nullable.include?(attr)
582
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
583
+ end
584
+
585
+ hash[param] = _to_hash(value)
586
+ end
587
+ hash
588
+ end
589
+
590
+ end
591
+
592
+ end