class_docstr: Base class for all class types that have Bokeh properties.
  
      
class_docstr_tok: ["Base","class","for","all","class","types","that","have","Bokeh","properties","."]
docstr: Collect a dict mapping property names to their values.
  
  This method *always* traverses the class hierarchy and includes
  properties defined on any parent classes.
  
  Non-serializable properties are skipped and property values are in
  "serialized" format which may be slightly different from the values
  you would normally read from the properties; the intent of this method
  is to return the information needed to losslessly reconstitute the
  object instance.
  
  Args:
      include_defaults (bool, optional) :
          Whether to include properties that haven't been explicitly set
          since the object was created. (default: True)
  
  Returns:
     dict : mapping from property names to their values
docstr_tok: ["Collect","a","dict","mapping","property","names","to","their","values",".","This","method","*","always","*","traverses","the","class","hierarchy","and","includes","properties","defined","on","any","parent","classes",".","Non-serializable","properties","are","skipped","and","property","values","are","in","''","serialized","''","format","which","may","be","slightly","different","from","the","values","you","would","normally","read","from","the","properties",";","the","intent","of","this","method","is","to","return","the","information","needed","to","losslessly","reconstitute","the","object","instance",".","Args",":","include_defaults","(","bool",",","optional",")",":","Whether","to","include","properties","that","have","n't","been","explicitly","set","since","the","object","was","created",".","(","default",":","True",")","Returns",":","dict",":","mapping","from","property","names","to","their","values"]
code: def properties_with_values(
      self,
      *,
      include_defaults: bool = True,
      include_undefined: bool = False,
  ) -> dict[str, Any]:
      """Collect a dict mapping property names to their values.
  
      This method *always* traverses the class hierarchy and includes
      properties defined on any parent classes.
  
      Non-serializable properties are skipped and property values are in
      "serialized" format which may be slightly different from the values
      you would normally read from the properties; the intent of this method
      is to return the information needed to losslessly reconstitute the
      object instance.
  
      Args:
          include_defaults (bool, optional) :
              Whether to include properties that haven't been explicitly set
              since the object was created. (default: True)
  
      Returns:
         dict : mapping from property names to their values
  
      """
      return self.query_properties_with_values(
          lambda prop: prop.serialized,
          include_defaults=include_defaults,
          include_undefined=include_undefined,
      )
  
imports: from __future__ import annotations
  import logging
  import difflib
  from typing import TYPE_CHECKING, Any, Callable, ClassVar, Iterable, Literal, NoReturn, TypedDict, TypeVar, Union, overload
  from weakref import WeakSet
  from ..util.strings import append_docstring, nice_join
  from ..util.warnings import warn
  from .property.descriptor_factory import PropertyDescriptorFactory
  from .property.descriptors import PropertyDescriptor, UnsetValueError
  from .property.override import Override
  from .property.singletons import Intrinsic, Undefined
  from .property.wrappers import PropertyValueContainer
  from .serialization import ObjectRep, Ref, Serializable, Serializer
  from .types import ID
label_desc: Use image node_id 20 for calling the HasProps obj's underlying member method code with example usage: obj.properties_with_values() and returns: self