53 |
54 | Welcome to Grails
55 |
56 |
57 | Congratulations, you have successfully started your first Grails application! At the moment
58 | this is the default page, feel free to modify it to either redirect to a controller or display
59 | whatever content you may choose. Below is a list of controllers that are currently deployed in
60 | this application, click on each to execute its default action:
61 |
62 |
63 |
64 |
Available Controllers:
65 |
66 |
67 | -
68 | ${c.fullName}
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/versions/grails-app/conf/application.yml:
--------------------------------------------------------------------------------
1 | ---
2 | grails:
3 | profile: web
4 | codegen:
5 | defaultPackage: versions
6 | gorm:
7 | reactor:
8 | # Whether to translate GORM events into Reactor events
9 | # Disabled by default for performance reasons
10 | events: false
11 | info:
12 | app:
13 | name: '@info.app.name@'
14 | version: '@info.app.version@'
15 | grailsVersion: '@info.app.grailsVersion@'
16 | spring:
17 | jmx:
18 | unique-names: true
19 | main:
20 | banner-mode: "off"
21 | groovy:
22 | template:
23 | check-template-location: false
24 | devtools:
25 | restart:
26 | additional-exclude:
27 | - '*.gsp'
28 | - '**/*.gsp'
29 | - '*.gson'
30 | - '**/*.gson'
31 | - 'logback.groovy'
32 | - '*.properties'
33 | management:
34 | endpoints:
35 | enabled-by-default: false
36 |
37 | ---
38 | grails:
39 | mime:
40 | disable:
41 | accept:
42 | header:
43 | userAgents:
44 | - Gecko
45 | - WebKit
46 | - Presto
47 | - Trident
48 | types:
49 | all: '*/*'
50 | atom: application/atom+xml
51 | css: text/css
52 | csv: text/csv
53 | form: application/x-www-form-urlencoded
54 | html:
55 | - text/html
56 | - application/xhtml+xml
57 | js: text/javascript
58 | json:
59 | - application/json
60 | - text/json
61 | multipartForm: multipart/form-data
62 | pdf: application/pdf
63 | rss: application/rss+xml
64 | text: text/plain
65 | hal:
66 | - application/hal+json
67 | - application/hal+xml
68 | xml:
69 | - text/xml
70 | - application/xml
71 | urlmapping:
72 | cache:
73 | maxsize: 1000
74 | controllers:
75 | defaultScope: singleton
76 | converters:
77 | encoding: UTF-8
78 | views:
79 | default:
80 | codec: html
81 | gsp:
82 | encoding: UTF-8
83 | htmlcodec: xml
84 | codecs:
85 | expression: html
86 | scriptlet: html
87 | taglib: none
88 | staticparts: none
89 | management:
90 | endpoints:
91 | jmx:
92 | unique-names: true
93 |
94 | ---
95 | hibernate:
96 | cache:
97 | queries: false
98 | use_second_level_cache: false
99 | use_query_cache: false
100 | dataSource:
101 | pooled: true
102 | jmxExport: true
103 | driverClassName: org.h2.Driver
104 | username: sa
105 | password: ''
106 |
107 | environments:
108 | development:
109 | dataSource:
110 | dbCreate: create-drop
111 | url: jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
112 | test:
113 | dataSource:
114 | dbCreate: update
115 | url: jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
116 | production:
117 | dataSource:
118 | dbCreate: none
119 | url: jdbc:h2:./prodDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
120 | properties:
121 | jmxEnabled: true
122 | initialSize: 5
123 | maxActive: 50
124 | minIdle: 5
125 | maxIdle: 25
126 | maxWait: 10000
127 | maxAge: 600000
128 | timeBetweenEvictionRunsMillis: 5000
129 | minEvictableIdleTimeMillis: 60000
130 | validationQuery: SELECT 1
131 | validationQueryTimeout: 3
132 | validationInterval: 15000
133 | testOnBorrow: true
134 | testWhileIdle: true
135 | testOnReturn: false
136 | jdbcInterceptors: ConnectionState
137 | defaultTransactionIsolation: 2 # TRANSACTION_READ_COMMITTED
138 |
--------------------------------------------------------------------------------
/versions/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | maven { url "https://repo.grails.org/grails/core" }
4 | }
5 | dependencies {
6 | classpath "org.grails:grails-gradle-plugin:$grailsVersion"
7 | classpath "gradle.plugin.com.github.erdi.webdriver-binaries:webdriver-binaries-gradle-plugin:2.0"
8 | classpath "org.grails.plugins:hibernate5:7.0.0"
9 | classpath "com.bertramlabs.plugins:asset-pipeline-gradle:3.1.0"
10 | }
11 | }
12 |
13 | version "0.1"
14 | group "versions"
15 |
16 | apply plugin:"eclipse"
17 | apply plugin:"idea"
18 | apply plugin:"war"
19 | apply plugin:"org.grails.grails-web"
20 | apply plugin:"com.github.erdi.webdriver-binaries"
21 | apply plugin:"com.bertramlabs.asset-pipeline"
22 | apply plugin:"org.grails.grails-gsp"
23 |
24 | repositories {
25 | maven { url "https://repo.grails.org/grails/core" }
26 | }
27 |
28 | configurations {
29 | developmentOnly
30 | runtimeClasspath {
31 | extendsFrom developmentOnly
32 | }
33 | }
34 |
35 | dependencies {
36 | developmentOnly("org.springframework.boot:spring-boot-devtools")
37 | compile "org.springframework.boot:spring-boot-starter-logging"
38 | compile "org.springframework.boot:spring-boot-autoconfigure"
39 | compile "org.grails:grails-core"
40 | compile "org.springframework.boot:spring-boot-starter-actuator"
41 | compile "org.springframework.boot:spring-boot-starter-tomcat"
42 | compile "org.grails:grails-web-boot"
43 | compile "org.grails:grails-logging"
44 | compile "org.grails:grails-plugin-rest"
45 | compile "org.grails:grails-plugin-databinding"
46 | compile "org.grails:grails-plugin-i18n"
47 | compile "org.grails:grails-plugin-services"
48 | compile "org.grails:grails-plugin-url-mappings"
49 | compile "org.grails:grails-plugin-interceptors"
50 | compile "org.grails.plugins:cache"
51 | compile "org.grails.plugins:async"
52 | compile "org.grails.plugins:scaffolding"
53 | compile "org.grails.plugins:events"
54 | compile "org.grails.plugins:hibernate5"
55 | compile "org.hibernate:hibernate-core:5.4.0.Final"
56 | compile "org.grails.plugins:gsp"
57 | compileOnly "io.micronaut:micronaut-inject-groovy"
58 | console "org.grails:grails-console"
59 | profile "org.grails.profiles:web"
60 | runtime "org.glassfish.web:el-impl:2.1.2-b03"
61 | runtime "com.h2database:h2"
62 | runtime "org.apache.tomcat:tomcat-jdbc"
63 | runtime "javax.xml.bind:jaxb-api:2.3.0"
64 | runtime "com.bertramlabs.plugins:asset-pipeline-grails:3.1.0"
65 | testCompile "io.micronaut:micronaut-inject-groovy"
66 | testCompile "org.grails:grails-gorm-testing-support"
67 | testCompile "org.mockito:mockito-core"
68 | testCompile "org.grails:grails-web-testing-support"
69 | testCompile "org.grails.plugins:geb"
70 | testCompile "org.seleniumhq.selenium:selenium-remote-driver:3.14.0"
71 | testCompile "org.seleniumhq.selenium:selenium-api:3.14.0"
72 | testCompile "org.seleniumhq.selenium:selenium-support:3.14.0"
73 | testRuntime "org.seleniumhq.selenium:selenium-chrome-driver:3.14.0"
74 | testRuntime "org.seleniumhq.selenium:selenium-firefox-driver:3.14.0"
75 | }
76 |
77 | bootRun {
78 | ignoreExitValue true
79 | jvmArgs(
80 | '-Dspring.output.ansi.enabled=always',
81 | '-noverify',
82 | '-XX:TieredStopAtLevel=1',
83 | '-Xmx1024m')
84 | sourceResources sourceSets.main
85 | String springProfilesActive = 'spring.profiles.active'
86 | systemProperty springProfilesActive, System.getProperty(springProfilesActive)
87 | }
88 |
89 | tasks.withType(GroovyCompile) {
90 | configure(groovyOptions) {
91 | forkOptions.jvmArgs = ['-Xmx1024m']
92 | }
93 | }
94 |
95 | webdriverBinaries {
96 | chromedriver '2.45.0'
97 | geckodriver '0.24.0'
98 | }
99 |
100 | tasks.withType(Test) {
101 | systemProperty "geb.env", System.getProperty('geb.env')
102 | systemProperty "geb.build.reportsDir", reporting.file("geb/integrationTest")
103 | systemProperty "webdriver.chrome.driver", System.getProperty('webdriver.chrome.driver')
104 | systemProperty "webdriver.gecko.driver", System.getProperty('webdriver.gecko.driver')
105 | }
106 |
107 |
108 | assets {
109 | minifyJs = true
110 | minifyCss = true
111 | }
112 |
--------------------------------------------------------------------------------
/versions/grailsw:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##############################################################################
4 | ##
5 | ## Grails start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Add default JVM options here. You can also use JAVA_OPTS and GRAILS_OPTS to pass JVM options to this script.
10 | DEFAULT_JVM_OPTS='"-XX:+TieredCompilation" "-XX:TieredStopAtLevel=1" "-XX:CICompilerCount=3"'
11 |
12 |
13 | # Use the maximum available, or set MAX_FD != -1 to use that value.
14 | MAX_FD="maximum"
15 |
16 | warn ( ) {
17 | echo "$*"
18 | }
19 |
20 | die ( ) {
21 | echo
22 | echo "$*"
23 | echo
24 | exit 1
25 | }
26 |
27 | # OS specific support (must be 'true' or 'false').
28 | cygwin=false
29 | msys=false
30 | darwin=false
31 | case "`uname`" in
32 | CYGWIN* )
33 | cygwin=true
34 | ;;
35 | Darwin* )
36 | darwin=true
37 | ;;
38 | MINGW* )
39 | msys=true
40 | ;;
41 | esac
42 |
43 | # Attempt to set APP_HOME
44 | # Resolve links: $0 may be a link
45 | PRG="$0"
46 | # Need this for relative symlinks.
47 | while [ -h "$PRG" ] ; do
48 | ls=`ls -ld "$PRG"`
49 | link=`expr "$ls" : '.*-> \(.*\)$'`
50 | if expr "$link" : '/.*' > /dev/null; then
51 | PRG="$link"
52 | else
53 | PRG=`dirname "$PRG"`"/$link"
54 | fi
55 | done
56 | SAVED="`pwd`"
57 | cd "`dirname \"$PRG\"`/" >/dev/null
58 | APP_HOME="`pwd -P`"
59 | cd "$SAVED" >/dev/null
60 |
61 | JAR_PATH=$APP_HOME/grails-wrapper.jar
62 |
63 | # Determine the Java command to use to start the JVM.
64 | if [ -n "$JAVA_HOME" ] ; then
65 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
66 | # IBM's JDK on AIX uses strange locations for the executables
67 | JAVACMD="$JAVA_HOME/jre/sh/java"
68 | else
69 | JAVACMD="$JAVA_HOME/bin/java"
70 | fi
71 | if [ ! -x "$JAVACMD" ] ; then
72 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
73 |
74 | Please set the JAVA_HOME variable in your environment to match the
75 | location of your Java installation."
76 | fi
77 | else
78 | JAVACMD="java"
79 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
80 |
81 | Please set the JAVA_HOME variable in your environment to match the
82 | location of your Java installation."
83 | fi
84 |
85 | # Increase the maximum file descriptors if we can.
86 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
87 | MAX_FD_LIMIT=`ulimit -H -n`
88 | if [ $? -eq 0 ] ; then
89 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
90 | MAX_FD="$MAX_FD_LIMIT"
91 | fi
92 | ulimit -n $MAX_FD
93 | if [ $? -ne 0 ] ; then
94 | warn "Could not set maximum file descriptor limit: $MAX_FD"
95 | fi
96 | else
97 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
98 | fi
99 | fi
100 |
101 | # For Cygwin, switch paths to Windows format before running java
102 | if $cygwin ; then
103 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
104 | JAVACMD=`cygpath --unix "$JAVACMD"`
105 | JAR_PATH=`cygpath --path --mixed "$JAR_PATH"`
106 |
107 | # We build the pattern for arguments to be converted via cygpath
108 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
109 | SEP=""
110 | for dir in $ROOTDIRSRAW ; do
111 | ROOTDIRS="$ROOTDIRS$SEP$dir"
112 | SEP="|"
113 | done
114 | OURCYGPATTERN="(^($ROOTDIRS))"
115 | # Add a user-defined pattern to the cygpath arguments
116 | if [ "$GRAILS_CYGPATTERN" != "" ] ; then
117 | OURCYGPATTERN="$OURCYGPATTERN|($GRAILS_CYGPATTERN)"
118 | fi
119 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
120 | i=0
121 | for arg in "$@" ; do
122 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
123 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
124 |
125 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
126 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
127 | else
128 | eval `echo args$i`="\"$arg\""
129 | fi
130 | i=$((i+1))
131 | done
132 | case $i in
133 | (0) set -- ;;
134 | (1) set -- "$args0" ;;
135 | (2) set -- "$args0" "$args1" ;;
136 | (3) set -- "$args0" "$args1" "$args2" ;;
137 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
138 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
139 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
140 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
141 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
142 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
143 | esac
144 | fi
145 |
146 | # Split up the JVM_OPTS And GRAILS_OPTS values into an array, following the shell quoting and substitution rules
147 | function splitJvmOpts() {
148 | JVM_OPTS=("$@")
149 | }
150 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRAILS_OPTS
151 |
152 | exec "$JAVACMD" -jar "${JVM_OPTS[@]}" "$JAR_PATH" "$@"
153 |
--------------------------------------------------------------------------------
/versions/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Attempt to set APP_HOME
10 | # Resolve links: $0 may be a link
11 | PRG="$0"
12 | # Need this for relative symlinks.
13 | while [ -h "$PRG" ] ; do
14 | ls=`ls -ld "$PRG"`
15 | link=`expr "$ls" : '.*-> \(.*\)$'`
16 | if expr "$link" : '/.*' > /dev/null; then
17 | PRG="$link"
18 | else
19 | PRG=`dirname "$PRG"`"/$link"
20 | fi
21 | done
22 | SAVED="`pwd`"
23 | cd "`dirname \"$PRG\"`/" >/dev/null
24 | APP_HOME="`pwd -P`"
25 | cd "$SAVED" >/dev/null
26 |
27 | APP_NAME="Gradle"
28 | APP_BASE_NAME=`basename "$0"`
29 |
30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31 | DEFAULT_JVM_OPTS='"-Xmx64m"'
32 |
33 | # Use the maximum available, or set MAX_FD != -1 to use that value.
34 | MAX_FD="maximum"
35 |
36 | warn () {
37 | echo "$*"
38 | }
39 |
40 | die () {
41 | echo
42 | echo "$*"
43 | echo
44 | exit 1
45 | }
46 |
47 | # OS specific support (must be 'true' or 'false').
48 | cygwin=false
49 | msys=false
50 | darwin=false
51 | nonstop=false
52 | case "`uname`" in
53 | CYGWIN* )
54 | cygwin=true
55 | ;;
56 | Darwin* )
57 | darwin=true
58 | ;;
59 | MINGW* )
60 | msys=true
61 | ;;
62 | NONSTOP* )
63 | nonstop=true
64 | ;;
65 | esac
66 |
67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
68 |
69 | # Determine the Java command to use to start the JVM.
70 | if [ -n "$JAVA_HOME" ] ; then
71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
72 | # IBM's JDK on AIX uses strange locations for the executables
73 | JAVACMD="$JAVA_HOME/jre/sh/java"
74 | else
75 | JAVACMD="$JAVA_HOME/bin/java"
76 | fi
77 | if [ ! -x "$JAVACMD" ] ; then
78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
79 |
80 | Please set the JAVA_HOME variable in your environment to match the
81 | location of your Java installation."
82 | fi
83 | else
84 | JAVACMD="java"
85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
86 |
87 | Please set the JAVA_HOME variable in your environment to match the
88 | location of your Java installation."
89 | fi
90 |
91 | # Increase the maximum file descriptors if we can.
92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
93 | MAX_FD_LIMIT=`ulimit -H -n`
94 | if [ $? -eq 0 ] ; then
95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
96 | MAX_FD="$MAX_FD_LIMIT"
97 | fi
98 | ulimit -n $MAX_FD
99 | if [ $? -ne 0 ] ; then
100 | warn "Could not set maximum file descriptor limit: $MAX_FD"
101 | fi
102 | else
103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
104 | fi
105 | fi
106 |
107 | # For Darwin, add options to specify how the application appears in the dock
108 | if $darwin; then
109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
110 | fi
111 |
112 | # For Cygwin, switch paths to Windows format before running java
113 | if $cygwin ; then
114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
116 | JAVACMD=`cygpath --unix "$JAVACMD"`
117 |
118 | # We build the pattern for arguments to be converted via cygpath
119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
120 | SEP=""
121 | for dir in $ROOTDIRSRAW ; do
122 | ROOTDIRS="$ROOTDIRS$SEP$dir"
123 | SEP="|"
124 | done
125 | OURCYGPATTERN="(^($ROOTDIRS))"
126 | # Add a user-defined pattern to the cygpath arguments
127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 | fi
130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 | i=0
132 | for arg in "$@" ; do
133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135 |
136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 | else
139 | eval `echo args$i`="\"$arg\""
140 | fi
141 | i=$((i+1))
142 | done
143 | case $i in
144 | (0) set -- ;;
145 | (1) set -- "$args0" ;;
146 | (2) set -- "$args0" "$args1" ;;
147 | (3) set -- "$args0" "$args1" "$args2" ;;
148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
154 | esac
155 | fi
156 |
157 | # Escape application args
158 | save () {
159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
160 | echo " "
161 | }
162 | APP_ARGS=$(save "$@")
163 |
164 | # Collect all arguments for the java command, following the shell quoting and substitution rules
165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
166 |
167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169 | cd "$(dirname "$0")"
170 | fi
171 |
172 | exec "$JAVACMD" "$@"
173 |
--------------------------------------------------------------------------------
/versions/grails-app/assets/stylesheets/bootstrap-reboot.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
3 | * Copyright 2011-2018 The Bootstrap Authors
4 | * Copyright 2011-2018 Twitter, Inc.
5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
7 | */
8 | *,
9 | *::before,
10 | *::after {
11 | box-sizing: border-box;
12 | }
13 |
14 | html {
15 | font-family: sans-serif;
16 | line-height: 1.15;
17 | -webkit-text-size-adjust: 100%;
18 | -ms-text-size-adjust: 100%;
19 | -ms-overflow-style: scrollbar;
20 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
21 | }
22 |
23 | @-ms-viewport {
24 | width: device-width;
25 | }
26 |
27 | article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
28 | display: block;
29 | }
30 |
31 | body {
32 | margin: 0;
33 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
34 | font-size: 1rem;
35 | font-weight: 400;
36 | line-height: 1.5;
37 | color: #212529;
38 | text-align: left;
39 | background-color: #fff;
40 | }
41 |
42 | [tabindex="-1"]:focus {
43 | outline: 0 !important;
44 | }
45 |
46 | hr {
47 | box-sizing: content-box;
48 | height: 0;
49 | overflow: visible;
50 | }
51 |
52 | h1, h2, h3, h4, h5, h6 {
53 | margin-top: 0;
54 | margin-bottom: 0.5rem;
55 | }
56 |
57 | p {
58 | margin-top: 0;
59 | margin-bottom: 1rem;
60 | }
61 |
62 | abbr[title],
63 | abbr[data-original-title] {
64 | text-decoration: underline;
65 | -webkit-text-decoration: underline dotted;
66 | text-decoration: underline dotted;
67 | cursor: help;
68 | border-bottom: 0;
69 | }
70 |
71 | address {
72 | margin-bottom: 1rem;
73 | font-style: normal;
74 | line-height: inherit;
75 | }
76 |
77 | ol,
78 | ul,
79 | dl {
80 | margin-top: 0;
81 | margin-bottom: 1rem;
82 | }
83 |
84 | ol ol,
85 | ul ul,
86 | ol ul,
87 | ul ol {
88 | margin-bottom: 0;
89 | }
90 |
91 | dt {
92 | font-weight: 700;
93 | }
94 |
95 | dd {
96 | margin-bottom: .5rem;
97 | margin-left: 0;
98 | }
99 |
100 | blockquote {
101 | margin: 0 0 1rem;
102 | }
103 |
104 | dfn {
105 | font-style: italic;
106 | }
107 |
108 | b,
109 | strong {
110 | font-weight: bolder;
111 | }
112 |
113 | small {
114 | font-size: 80%;
115 | }
116 |
117 | sub,
118 | sup {
119 | position: relative;
120 | font-size: 75%;
121 | line-height: 0;
122 | vertical-align: baseline;
123 | }
124 |
125 | sub {
126 | bottom: -.25em;
127 | }
128 |
129 | sup {
130 | top: -.5em;
131 | }
132 |
133 | a {
134 | color: #007bff;
135 | text-decoration: none;
136 | background-color: transparent;
137 | -webkit-text-decoration-skip: objects;
138 | }
139 |
140 | a:hover {
141 | color: #0056b3;
142 | text-decoration: underline;
143 | }
144 |
145 | a:not([href]):not([tabindex]) {
146 | color: inherit;
147 | text-decoration: none;
148 | }
149 |
150 | a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
151 | color: inherit;
152 | text-decoration: none;
153 | }
154 |
155 | a:not([href]):not([tabindex]):focus {
156 | outline: 0;
157 | }
158 |
159 | pre,
160 | code,
161 | kbd,
162 | samp {
163 | font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
164 | font-size: 1em;
165 | }
166 |
167 | pre {
168 | margin-top: 0;
169 | margin-bottom: 1rem;
170 | overflow: auto;
171 | -ms-overflow-style: scrollbar;
172 | }
173 |
174 | figure {
175 | margin: 0 0 1rem;
176 | }
177 |
178 | img {
179 | vertical-align: middle;
180 | border-style: none;
181 | }
182 |
183 | svg {
184 | overflow: hidden;
185 | vertical-align: middle;
186 | }
187 |
188 | table {
189 | border-collapse: collapse;
190 | }
191 |
192 | caption {
193 | padding-top: 0.75rem;
194 | padding-bottom: 0.75rem;
195 | color: #6c757d;
196 | text-align: left;
197 | caption-side: bottom;
198 | }
199 |
200 | th {
201 | text-align: inherit;
202 | }
203 |
204 | label {
205 | display: inline-block;
206 | margin-bottom: 0.5rem;
207 | }
208 |
209 | button {
210 | border-radius: 0;
211 | }
212 |
213 | button:focus {
214 | outline: 1px dotted;
215 | outline: 5px auto -webkit-focus-ring-color;
216 | }
217 |
218 | input,
219 | button,
220 | select,
221 | optgroup,
222 | textarea {
223 | margin: 0;
224 | font-family: inherit;
225 | font-size: inherit;
226 | line-height: inherit;
227 | }
228 |
229 | button,
230 | input {
231 | overflow: visible;
232 | }
233 |
234 | button,
235 | select {
236 | text-transform: none;
237 | }
238 |
239 | button,
240 | html [type="button"],
241 | [type="reset"],
242 | [type="submit"] {
243 | -webkit-appearance: button;
244 | }
245 |
246 | button::-moz-focus-inner,
247 | [type="button"]::-moz-focus-inner,
248 | [type="reset"]::-moz-focus-inner,
249 | [type="submit"]::-moz-focus-inner {
250 | padding: 0;
251 | border-style: none;
252 | }
253 |
254 | input[type="radio"],
255 | input[type="checkbox"] {
256 | box-sizing: border-box;
257 | padding: 0;
258 | }
259 |
260 | input[type="date"],
261 | input[type="time"],
262 | input[type="datetime-local"],
263 | input[type="month"] {
264 | -webkit-appearance: listbox;
265 | }
266 |
267 | textarea {
268 | overflow: auto;
269 | resize: vertical;
270 | }
271 |
272 | fieldset {
273 | min-width: 0;
274 | padding: 0;
275 | margin: 0;
276 | border: 0;
277 | }
278 |
279 | legend {
280 | display: block;
281 | width: 100%;
282 | max-width: 100%;
283 | padding: 0;
284 | margin-bottom: .5rem;
285 | font-size: 1.5rem;
286 | line-height: inherit;
287 | color: inherit;
288 | white-space: normal;
289 | }
290 |
291 | progress {
292 | vertical-align: baseline;
293 | }
294 |
295 | [type="number"]::-webkit-inner-spin-button,
296 | [type="number"]::-webkit-outer-spin-button {
297 | height: auto;
298 | }
299 |
300 | [type="search"] {
301 | outline-offset: -2px;
302 | -webkit-appearance: none;
303 | }
304 |
305 | [type="search"]::-webkit-search-cancel-button,
306 | [type="search"]::-webkit-search-decoration {
307 | -webkit-appearance: none;
308 | }
309 |
310 | ::-webkit-file-upload-button {
311 | font: inherit;
312 | -webkit-appearance: button;
313 | }
314 |
315 | output {
316 | display: inline-block;
317 | }
318 |
319 | summary {
320 | display: list-item;
321 | cursor: pointer;
322 | }
323 |
324 | template {
325 | display: none;
326 | }
327 |
328 | [hidden] {
329 | display: none !important;
330 | }
331 | /*# sourceMappingURL=bootstrap-reboot.css.map */
--------------------------------------------------------------------------------
/versions/grails-app/assets/images/grails-cupsonly-logo-white.svg:
--------------------------------------------------------------------------------
1 |
2 |