Module: Vident::Capabilities::Identifiable

Extended by:
ActiveSupport::Concern
Included in:
Vident::Component
Defined in:
lib/vident/capabilities/identifiable.rb

Instance Method Summary collapse

Instance Method Details

#component_nameObject



25
# File 'lib/vident/capabilities/identifiable.rb', line 25

def component_name = self.class.component_name

#idObject

‘.presence` is intentional — blank string falls through to auto-generation.



32
33
34
# File 'lib/vident/capabilities/identifiable.rb', line 32

def id
  @id.presence || random_id
end

#outlet_idObject



40
41
42
# File 'lib/vident/capabilities/identifiable.rb', line 40

def outlet_id
  @outlet_id ||= [stimulus_identifier, "##{id}"]
end

#random_idObject



36
37
38
# File 'lib/vident/capabilities/identifiable.rb', line 36

def random_id
  @__vident_auto_id ||= "#{component_name}-#{::Vident::StableId.next_id_in_sequence}"
end

#stimulus_identifierObject



27
# File 'lib/vident/capabilities/identifiable.rb', line 27

def stimulus_identifier = self.class.stimulus_identifier