20 lines
431 B
Elixir
20 lines
431 B
Elixir
defmodule Poex.Utils.DeltaUtils do
|
|
alias Delta.Op
|
|
|
|
def convert_ops(map) do
|
|
ops = Map.get(map, "ops") || []
|
|
|
|
Enum.map(ops, fn op ->
|
|
type = Map.keys(op) |> List.first()
|
|
value = Map.get(op, type)
|
|
attrs = Map.get(op, "attributes")
|
|
|
|
case type do
|
|
"insert" -> Op.insert(value, attrs)
|
|
"delete" -> Op.delete(value)
|
|
"retain" -> Op.retain(value, attrs)
|
|
end
|
|
end)
|
|
end
|
|
end
|