1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
{{/*
Copyright 2019-present Facebook Inc. All rights reserved.
This source code is licensed under the Apache 2.0 license found
in the LICENSE file in the root directory of this source tree.
*/}}
{{ define "import" }}
import (
"context"
"errors"
"fmt"
"math"
"strings"
"time"
{{- /* Ignore generting on graph specififc templates */}}
{{- if not (eq $.Config.Package $.Package) }}
"{{ $.Config.Package }}/predicate"
{{- with $.ID.Type.PkgPath }}
"{{ . }}"
{{- end }}
{{- /* Import external packages */}}
{{- template "import/types" $ }}
{{- end }}
"github.com/facebook/ent"
"github.com/facebook/ent/dialect"
{{- with $.Storage }}
{{- range $import := .Imports }}
"{{ $import }}"
{{- end }}
{{- end }}
{{ template "import/additional" $ }}
)
{{ end }}
{{/* A template for importing fields with custom types */}}
{{ define "import/types" -}}
{{- $fields := $.Fields }}{{ if $.ID.UserDefined }}{{ $fields = append $fields $.ID }}{{ end }}
{{- range $f := $fields }}
{{- $pkg := $f.Type.PkgPath }}
{{- if and $pkg (not (hasImport (base $pkg ))) }}
"{{ $pkg }}"
{{- end }}
{{- end }}
{{- end }}
{{/* A template that can be overrided in order to add additional imports to packages.*/}}
{{ define "import/additional" }}{{ end }}
|