mirror of
https://github.com/flarum/core.git
synced 2025-07-19 07:41:22 +02:00
- Extract shared Ember components into a “flarum-common” ember-cli addon. This can be used by both the forum + admin Ember apps, keeping things DRY - Move LESS styles into their own top-level directory and do a similar thing (extract common styles) - Add LESS/JS compilation and versioning to PHP (AssetManager) - Set up admin entry point (Theoretical) upgrade instructions: - Delete everything in [app_root]/public - Set up tooling in forum/admin Ember apps (npm install/update, bower install/update) and then build them (ember build) - php artisan vendor:publish - Upgrade flarum/flarum repo (slight change in a config file) - If you need to trigger a LESS/JS recompile, delete the .css/.js files in [app_root]/public/flarum. I set up LiveReload to do this for me when I change files in less/ or ember/ Todo: - Start writing admin app! - Remove bootstrap/font-awesome from repo and instead depend on their composer packages? Maybe? (Bower is not an option here)
86 lines
2.6 KiB
Plaintext
Executable File
86 lines
2.6 KiB
Plaintext
Executable File
// Form validation states
|
|
//
|
|
// Used in forms.less to generate the form validation CSS for warnings, errors,
|
|
// and successes.
|
|
|
|
.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {
|
|
// Color the label and help text
|
|
.help-block,
|
|
.control-label,
|
|
.radio,
|
|
.checkbox,
|
|
.radio-inline,
|
|
.checkbox-inline,
|
|
&.radio label,
|
|
&.checkbox label,
|
|
&.radio-inline label,
|
|
&.checkbox-inline label {
|
|
color: @text-color;
|
|
}
|
|
// Set the border and box shadow on specific inputs to match
|
|
.form-control {
|
|
border-color: @border-color;
|
|
.box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
|
|
&:focus {
|
|
border-color: darken(@border-color, 10%);
|
|
@shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%);
|
|
.box-shadow(@shadow);
|
|
}
|
|
}
|
|
// Set validation states also for addons
|
|
.input-group-addon {
|
|
color: @text-color;
|
|
border-color: @border-color;
|
|
background-color: @background-color;
|
|
}
|
|
// Optional feedback icon
|
|
.form-control-feedback {
|
|
color: @text-color;
|
|
}
|
|
}
|
|
|
|
|
|
// Form control focus state
|
|
//
|
|
// Generate a customized focus state and for any input with the specified color,
|
|
// which defaults to the `@input-border-focus` variable.
|
|
//
|
|
// We highly encourage you to not customize the default value, but instead use
|
|
// this to tweak colors on an as-needed basis. This aesthetic change is based on
|
|
// WebKit's default styles, but applicable to a wider range of browsers. Its
|
|
// usability and accessibility should be taken into account with any change.
|
|
//
|
|
// Example usage: change the default blue border and shadow to white for better
|
|
// contrast against a dark gray background.
|
|
.form-control-focus(@color: @input-border-focus) {
|
|
@color-rgba: rgba(red(@color), green(@color), blue(@color), .6);
|
|
&:focus {
|
|
border-color: @color;
|
|
outline: 0;
|
|
.box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}");
|
|
}
|
|
}
|
|
|
|
// Form control sizing
|
|
//
|
|
// Relative text size, padding, and border-radii changes for form controls. For
|
|
// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
|
|
// element gets special love because it's special, and that's a fact!
|
|
.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
|
|
height: @input-height;
|
|
padding: @padding-vertical @padding-horizontal;
|
|
font-size: @font-size;
|
|
line-height: @line-height;
|
|
border-radius: @border-radius;
|
|
|
|
select& {
|
|
height: @input-height;
|
|
line-height: @input-height;
|
|
}
|
|
|
|
textarea&,
|
|
select[multiple]& {
|
|
height: auto;
|
|
}
|
|
}
|