stackone_client 0.39.2 → 0.39.3

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 (50) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +9 -16
  3. data/lib/crystalline/types.rb +23 -18
  4. data/lib/stack_one/ats.rb +1549 -932
  5. data/lib/stack_one/lms.rb +4 -311
  6. data/lib/stack_one/models/operations/{lms_update_content_request.rb → ats_create_interview_note_request.rb} +6 -6
  7. data/lib/stack_one/models/operations/ats_create_interview_note_request.rbi +17 -0
  8. data/lib/stack_one/models/operations/ats_create_interview_note_response.rb +49 -0
  9. data/lib/stack_one/models/operations/ats_create_interview_note_response.rbi +21 -0
  10. data/lib/stack_one/models/operations/ats_update_interview_note_request.rb +45 -0
  11. data/lib/stack_one/models/operations/ats_update_interview_note_request.rbi +19 -0
  12. data/lib/stack_one/models/operations/{lms_update_content_response.rb → ats_update_interview_note_response.rb} +2 -2
  13. data/lib/stack_one/models/operations/{lms_update_content_response.rbi → ats_update_interview_note_response.rbi} +2 -2
  14. data/lib/stack_one/models/operations/hris_list_employee_shifts_queryparam_filter.rb +1 -1
  15. data/lib/stack_one/models/operations/hris_list_employee_shifts_request.rb +1 -1
  16. data/lib/stack_one/models/operations.rb +4 -2
  17. data/lib/stack_one/models/shared/connectsession.rb +6 -2
  18. data/lib/stack_one/models/shared/connectsession.rbi +2 -0
  19. data/lib/stack_one/models/shared/connectsessioncreate.rb +6 -2
  20. data/lib/stack_one/models/shared/connectsessioncreate.rbi +2 -0
  21. data/lib/stack_one/models/shared/connectsessiontokenauthlink.rb +6 -2
  22. data/lib/stack_one/models/shared/connectsessiontokenauthlink.rbi +2 -0
  23. data/lib/stack_one/models/shared/employee.rb +2 -6
  24. data/lib/stack_one/models/shared/employee.rbi +0 -2
  25. data/lib/stack_one/models/shared/employmentmanagerapimodel.rb +10 -2
  26. data/lib/stack_one/models/shared/employmentmanagerapimodel.rbi +4 -0
  27. data/lib/stack_one/models/shared/patchaccountexternaldto.rb +6 -2
  28. data/lib/stack_one/models/shared/patchaccountexternaldto.rbi +2 -0
  29. data/lib/stack_one/models/shared.rb +0 -8
  30. data/lib/stack_one/sdk_hooks/hooks.rb +0 -3
  31. data/lib/stack_one/sdkconfiguration.rb +3 -3
  32. data/lib/stack_one/utils/forms.rb +1 -1
  33. metadata +10 -22
  34. data/lib/stack_one/models/operations/lms_update_content_request.rbi +0 -17
  35. data/lib/stack_one/models/shared/lmscreatecontentrequestdto.rb +0 -115
  36. data/lib/stack_one/models/shared/lmscreatecontentrequestdto.rbi +0 -53
  37. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_2.rb +0 -22
  38. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_2.rbi +0 -11
  39. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_4.rb +0 -28
  40. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_4.rbi +0 -11
  41. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_active.rb +0 -28
  42. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_active.rbi +0 -11
  43. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_content_type.rb +0 -37
  44. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_content_type.rbi +0 -15
  45. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_source_value.rb +0 -28
  46. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_source_value.rbi +0 -11
  47. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_value.rb +0 -31
  48. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_value.rbi +0 -11
  49. data/lib/stack_one/models/shared/manager.rb +0 -45
  50. data/lib/stack_one/models/shared/manager.rbi +0 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fb0d44dafbc5a84147642a132bf341bc6ad27f49706e2e1dddca7c5a98eb959b
4
- data.tar.gz: 39c16679252707712d891873293548339a3c0c1fb5804f89b3f14b0b57403f88
3
+ metadata.gz: d9f1427ab570081dad1f69094a9553439df13b90888d6a34c3b0bef6498425ed
4
+ data.tar.gz: 83318b2a9a156f367e7673ca3967a024d265a0346e5cc810570356e50b7da7ea
5
5
  SHA512:
6
- metadata.gz: acad7f3b17df26286cbf4f76d72a621082fc9af283c6b1b3a45ce2ffcfd7625f6e684d5ac11aa9639643760192d3896e401a9da72210ffb7ae389f17516a4201
7
- data.tar.gz: 36079320005651bc01b4b115e1654f0a3d749b06c6a7d4a719e6af7c691a968b77260ba7145b3f22ea2000e24dff7c5683ea4d432b4d2a8a877abf1d07727bc9
6
+ metadata.gz: 6751c227d1f97f222612834c9096f104f3b33df0556cf53ce0191608f496618ed8ecb4cd474353b77fd8deb068938ab7d49d149a58901a8c748805701ab27e03
7
+ data.tar.gz: '024439ab4370c3e0e7722c8a4130ae1d6dd3b24ef20e34038d5465fa50c844d2f9396466b9d7f789df6183cdfd42e0c1b3200258b18e010896773c08ed9a80e8'
@@ -62,20 +62,6 @@ module Crystalline
62
62
  end
63
63
  end
64
64
 
65
- def from_json(json_obj)
66
- case json_obj
67
- when String
68
- begin
69
- d = JSON.parse(json_obj)
70
- rescue JSON::ParserError
71
- d = json_obj
72
- end
73
- else
74
- d = json_obj
75
- end
76
- from_json(d)
77
- end
78
-
79
65
  def from_dict(d)
80
66
  to_build = {}
81
67
 
@@ -111,9 +97,16 @@ module Crystalline
111
97
  to_build[key] = unmarshalled_hash
112
98
  elsif Crystalline::Utils.union? field_type
113
99
  discriminator = field.metadata.fetch(:discriminator, nil)
100
+ discriminator_mapping = field.metadata.fetch(:discriminator_mapping, nil)
114
101
  if !discriminator.nil?
115
- type_to_deserialize = value.fetch(discriminator)
116
- type_to_deserialize = Crystalline::Utils.get_union_types(field_type).find { |t| t.name.split('::').last == type_to_deserialize }
102
+ discriminator_value = value.fetch(discriminator)
103
+ if !discriminator_mapping.nil?
104
+ # Use explicit mapping from discriminator value to type
105
+ type_to_deserialize = discriminator_mapping[discriminator_value]
106
+ else
107
+ # Fallback: try to match discriminator value against type name
108
+ type_to_deserialize = Crystalline::Utils.get_union_types(field_type).find { |t| t.name.split('::').last == discriminator_value }
109
+ end
117
110
  to_build[key] = Crystalline.unmarshal_json(value, type_to_deserialize)
118
111
  else
119
112
  union_types = Crystalline::Utils.get_union_types(field_type)
@@ -41,38 +41,43 @@ module Crystalline
41
41
  end
42
42
 
43
43
  module Enum
44
+ def self.included(base)
45
+ base.extend(ClassMethods)
46
+ end
47
+
44
48
  def initialize(val)
45
- puts methods
46
- if instance_methods(false).include?(:initialize)
49
+ if self.class.instance_methods(false).include?(:initialize)
47
50
  super(val)
48
51
  else
49
52
  @val = val
50
53
  end
51
54
  end
52
55
 
53
- def self.enums(&blk)
54
- @mapping = {}
56
+ module ClassMethods
57
+ def enums(&blk)
58
+ @mapping = {}
59
+
60
+ yield
61
+ constants(false).each do |const_name|
62
+ instance = const_get(const_name, false)
63
+ unless instance.is_a? self
64
+ raise 'Enum constants must be instances of the Enum class (e.g. `Foo = new`)'
65
+ end
66
+ @mapping[instance.serialize] = instance
67
+ end
68
+ end
55
69
 
56
- yield
57
- constants(false).each do |const_name|
58
- instance = const_get(const_name, false)
59
- unless instance.is_a? self
60
- raise 'Enum constants must be instances of the Enum class (e.g. `Foo = new`)'
70
+ def deserialize(val)
71
+ if @mapping.include? val
72
+ @mapping[val]
73
+ else
74
+ raise "Invalid value for enum: #{val}"
61
75
  end
62
- @mapping[instance.serialize] = instance
63
76
  end
64
77
  end
65
78
 
66
79
  def serialize
67
80
  @val
68
81
  end
69
-
70
- def deserialize(val)
71
- if @mapping.include? val
72
- @mapping[val]
73
- else
74
- raise "Invalid value for enum: #{val}"
75
- end
76
- end
77
82
  end
78
83
  end