samples/soy_ssr/src/BUILD.bazel
##
# Copyright © 2020, The Gust Framework Authors. All rights reserved.
#
# The Gust/Elide framework and tools, and all associated source or object computer code, except where otherwise noted,
# are licensed under the Zero Prosperity license, which is enclosed in this repository, in the file LICENSE.txt. Use of
# this code in object or source form requires and implies consent and agreement to that license in principle and
# practice. Source or object code not listing this header, or unless specified otherwise, remain the property of
# Elide LLC and its suppliers, if any. The intellectual and technical concepts contained herein are proprietary to
# Elide LLC and its suppliers and may be covered by U.S. and Foreign Patents, or patents in process, and are protected
# by trade secret and copyright law. Dissemination of this information, or reproduction of this material, in any form,
# is strictly forbidden except in adherence with assigned license requirements.
##
package(
default_visibility = ["//visibility:public"],
)
load(
"@gust//defs/toolchain:schema.bzl",
"model",
)
load(
"@gust//defs/toolchain:templates.bzl",
"template_library",
)
load(
"@gust//defs/toolchain:backend.bzl",
"micronaut_controller",
"micronaut_application",
)
model(
name = "salutation",
srcs = ["salutation.proto"],
)
model(
name = "context",
srcs = ["context.proto"],
deps = [":salutation"],
)
filegroup(
name = "reflection-config",
srcs = ["reflection.json"],
)
template_library(
name = "ssr",
srcs = ["ssr.soy"],
proto_deps = [":context"],
)
micronaut_controller(
name = "SSRKotlinController",
srcs = ["SSRKotlinController.kt"],
proto_deps = [":context"],
templates = [":ssr"],
)
micronaut_application(
name = "MicronautSSRSample",
native = True,
controllers = [":SSRKotlinController"],
repository = "elide-ai/sample/ssr/jvm",
native_repository = "elide-ai/sample/ssr/native",
reflection_configuration = ":reflection-config",
)