func generateLibraryDefinitions()

in internal/provider/provider.go [203:224]


func generateLibraryDefinitions(ctx context.Context, data *gen.AlzModel) (alzlib.LibraryReferences, diag.Diagnostics) {
	ctx, cancel := context.WithTimeout(ctx, 5*time.Minute)
	defer cancel()

	var diags diag.Diagnostics

	alzLibRefs := make([]gen.LibraryReferencesValue, len(data.LibraryReferences.Elements()))
	diags = data.LibraryReferences.ElementsAs(ctx, &alzLibRefs, false)
	if diags.HasError() {
		return nil, diags
	}

	libRefs := make(alzlib.LibraryReferences, len(alzLibRefs))
	for i, libRef := range alzLibRefs {
		if libRef.CustomUrl.IsNull() {
			libRefs[i] = alzlib.NewAlzLibraryReference(libRef.Path.ValueString(), libRef.Ref.ValueString())
			continue
		}
		libRefs[i] = alzlib.NewCustomLibraryReference(libRef.CustomUrl.ValueString())
	}
	return libRefs, nil
}