Sha256: 21e3cc3bb9787991ada4fcdd94db9f3f97b4492660586a027f6441424391794f

Contents?: true

Size: 859 Bytes

Versions: 14

Compression:

Stored size: 859 Bytes

Contents

class $paramSerializer extends AngularServiceModel
  @register(MaterialRaingular.app)
  @inject('$httpParamSerializer')
  clean: (obj) -> @$httpParamSerializer @update(obj)
  update: (obj) ->
    res = {}
    for key,val of @strip(obj)
      continue if val == obj['$' + key + '_was']
      continue if val?.toString() == obj['$' + key + '_was']?.toString()
      continue if [undefined,null].includes(val) && [undefined,null].includes(obj["$#{key}_was"])
      res[key] = val
    res
  strip: (obj) ->
    res = {}
    for key,val of obj
      continue if ['$','_'].includes(key[0]) || key in ['constructor','initialize']
      res[key] = if (typeof val == 'object' && val != null && !val instanceof Date) then @strip(val) else val
    res
  create: (obj) ->
    res = {}
    for key,val of @strip(obj)
      continue unless val
      res[key] = val
    res

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
material_raingular-0.6.10 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.9 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.8 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.7 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.6 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.5 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.4 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.3 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.2.3 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.2.2 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.2.1 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.2 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.1.1 lib/assets/javascripts/active_record/param_serializer.coffee
material_raingular-0.6.1 lib/assets/javascripts/active_record/param_serializer.coffee