22 |
23 |
24 | ```
25 | :::
26 |
27 | ## Dismissible Alerts
28 |
29 | Dismissible alerts provide the option to hide the alert with a close X button.
30 |
31 | :::demo Dismissible alert example
32 | ```html
33 |
34 |
35 | You can easily dismiss me using the close button →
36 |
37 |
38 |
39 | ```
40 | :::
41 |
42 | ## Self Dismissing Alerts
43 |
44 | You can also control how much time an alert is visible by providing a `Number` in seconds for the `show` prop.
45 |
46 | :::demo Auto dismissible alert example.
47 | ```html
48 |
49 |
50 |
51 |
56 | Success! This alert will will be dismissed in {{ timeUntilDismissed }} seconds!
57 |
58 |
59 | Show Alert!
60 |
61 |
62 |
63 |
64 |
82 |
83 |
84 | ```
85 | :::
86 |
87 |
--------------------------------------------------------------------------------
/src/components/slider/README.md:
--------------------------------------------------------------------------------
1 | # Slider
2 |
3 | The slider component is powered behind the scenes by the [NoUiSlider](https://refreshless.com/nouislider/) library.
4 |
5 | ## Basic Slider
6 |
7 | You can create basic sliders using the `` component and a `v-model`.
8 |
9 | :::demo
10 | ```html
11 |
12 |
13 |
14 | Slider Value: {{ sliderValue }}
15 |
16 |
17 |
26 |
27 |
28 | ```
29 | :::
30 |
31 | ## Using Start Values
32 |
33 | Using the `start` prop you can also specify a start value for the knob.
34 |
35 | :::demo
36 | ```html
37 |
38 |
39 |
40 |
41 | ```
42 | :::
43 |
44 | ## Custom Range
45 |
46 | If the default `1-100` range is not enough, you can override it using the `range` prop.
47 |
48 | :::demo
49 | ```html
50 |
51 |
52 |
53 | Slider Value: {{ sliderValue }}
54 |
55 |
56 |
65 |
66 | ```
67 | :::
68 |
69 | ## Multiple Values
70 |
71 | If you'd like to control multiple values, you can use an `Array` for the `value` prop.
72 |
73 | :::demo
74 | ```html
75 |
76 |
77 |
78 | Slider Value: {{ sliderValue }}
79 |
80 |
81 |
90 |
91 | ```
92 | :::
93 |
94 | ## Using Pips
95 |
96 | Pips can also be enabled via the `options` prop.
97 |
98 | :::demo
99 | ```html
100 |
101 |
102 |
106 | Slider Value: {{ sliderValue }}
107 |
108 |
109 |
118 |
119 | ```
120 | :::
121 |
--------------------------------------------------------------------------------
/src/components/card/README.md:
--------------------------------------------------------------------------------
1 | # Cards
2 |
3 | Cards provide a flexible content container that you can use to display a variety of content using contextual background colors, headers and footers.
4 |
5 | By default, cards fill in the full width of their parent element, however this can be customized via styling.
6 |
7 | ## Basic Example
8 |
9 | :::demo
10 | ```html
11 |
12 |
13 | Card header
14 |
15 |
16 |
Lorem ipsum dolor sit amet.
17 | Read more →
18 |
19 | Card footer
20 |
21 |
22 |
23 | ```
24 | :::
25 |
26 | ## Card Content Types
27 |
28 | Cards support a large variety of content including images, links, text, list groups and more. Make sure to check out the examples below.
29 |
30 | ### Card Body
31 |
32 | The core building block of a card is the ``. You can use it whenever you'd like to add a padded section within a card.
33 |
34 | :::demo
35 | ```html
36 |
37 |
38 |
39 | Nunc quis nisl ac justo elementum sagittis in quis justo.
40 |
41 |
42 |
43 |
44 | ```
45 | :::
46 |
47 | #### Card Body Title and Subtitle
48 |
49 | You can display a card's Title and Subtitle using the `title` and `subtitle` props on the `` component.
50 |
51 | :::demo
52 | ```html
53 |
54 |
55 |
56 | Nunc quis nisl ac justo elementum sagittis in quis justo.
57 |
58 |
59 |
60 |
61 | ```
62 | :::
63 |
64 | ### Card Image
65 |
66 | Using the `` component you can place a responsive image on top of the card that will adjust its width when the width of the card changes.
67 |
68 | :::demo
69 | ```html
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
this is the body contents
79 |
80 |
81 |
82 |
83 |
84 |
85 |
this is the body contents
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | ```
96 | :::
97 |
--------------------------------------------------------------------------------
/src/components/form/README.md:
--------------------------------------------------------------------------------
1 | # Forms
2 |
3 | The `` component is a form wrapper that supports inline form styles and provides validation states.
4 |
5 | ## Inline Forms
6 |
7 | You can create inline forms using the `inline` prop.
8 |
9 | :::demo
10 | ```html
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | Register
19 |
20 |
21 |
22 | ```
23 | :::
24 |
25 | ## Form Validation
26 |
27 | The form component also provides validation states out of the box.
28 |
29 | :::demo
30 | ```html
31 |
32 |
33 |
34 |
35 |
36 |
37 | Invalid email address!
38 | Your email looks good!
39 | We'll never share your email with anyone else.
40 |
41 |
42 |
43 |
44 |
45 | Please provide a valid password!
46 |
7 |
8 |
9 |
116 |
--------------------------------------------------------------------------------
/src/components/container/README.md:
--------------------------------------------------------------------------------
1 | # Layout & Grid System
2 |
3 | Shards Vue provides support for all native Bootstrap 4 layout elements including **containers**, **rows**, **columns** and **form rows** so you can use its full power while building your project's responsive layout powered by flexbox.
4 |
5 | :::demo
6 | ```html
7 |
8 |
9 | 1 / 12
10 | 2 / 12
11 | 3 / 12
12 | 4 / 12
13 | 5 / 12
14 | 6 / 12
15 | 7 / 12
16 | 8 / 12
17 | 9 / 12
18 | 10 / 12
19 | 11 / 12
20 | 12 / 12
21 |
22 |
23 |
24 | 1 / 6
25 | 2 / 6
26 | 3 / 6
27 | 4 / 6
28 | 5 / 6
29 | 6 / 6
30 |
31 |
32 |
33 | 1 / 3
34 | 2 / 3
35 | 3 / 3
36 |
37 |
38 |
39 | 1 / 2
40 | 2 / 2
41 |
42 |
43 |
44 | 1 / 1
45 |
46 |
47 |
48 |
49 | ```
50 | :::
51 |
52 | ## Containers
53 |
54 | Containers are the most **fundamental and required layout element** for your application or website's layout. You can use the `` component for a fixed container, or `` for a fluid container.
55 |
56 | ## Rows
57 |
58 | The `` component must be placed inside a `` component and it is used to define a row of columns. You can also use the `` component for building form layouts that help you create a layout with more compact margins.
59 |
60 | ## Columns
61 |
62 | The `` component is used to represent a column and must be placed inside a `` component. You can also use the `` component without a breakpoint-specific prop (`sm`, `md`, `lg`, `xl`) for easy column sizing that have an equal width (as seen in the examples above).
63 |
64 | ## Mixing Breakpoints
65 |
66 | You can use a combination of different props for each tier as needed.
67 |
68 | :::demo
69 | ```html
70 |
71 |
72 | cols="12" md="6" lg="8"
73 | cols="12" md="6" lg="8"
74 |
75 |
76 |
77 | cols="12" md="4" lg="3"
78 | cols="12" md="4" lg="6"
79 | cols="12" md="4" lg="3"
80 |
81 |
82 |
83 | cols="12" md="6" lg="4"
84 | cols="12" md="6" lg="8"
85 |
86 |
87 |
88 |
89 | ```
90 | :::
91 |
92 |
--------------------------------------------------------------------------------
/src/components/form-input/README.md:
--------------------------------------------------------------------------------
1 | # Form Input
2 |
3 | The form input allows you to create various text style inputs such as `text`, `password`, `email`, `number`, `url`, `search` and more.
4 |
5 | ## Alias
6 |
7 | The `` component is also available as ``.
8 |
9 | ## Basic Input
10 |
11 | The `` component is a `text` input by default. However, you can set its type prop to one of the supported types as well: `text`, `password`, `email`, `number`, `url`, `tel`, `search`, `date`, `datetime`, `datetime-local`, `month`, `week`, `time`.
12 |
13 | :::demo
14 | ```html
15 |
16 |
17 |
18 |
19 |
🤔 So you're saying: {{ inputValue }}
20 |
😃 Waiting for you to say something!
21 |
22 |
23 |
24 |
31 |
32 |
33 | ```
34 | :::
35 |
36 | ## Supported Types
37 |
38 | The following input types are currently supported.
39 |
40 | :::demo
41 | ```html
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
61 |
62 |
63 | ```
64 | :::
65 |
66 | > Note: The `range` and `color` input types are currently not supported.
67 |
68 | ## Sizing
69 |
70 | Using the `size` prop, you can change the input size as small (`sm`) or large (`lg`).
71 |
72 | :::demo
73 | ```html
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 | ```
83 | :::
84 |
85 | ## Validation States
86 |
87 | Using the `state` prop on the `` component you can control the input's validation state.
88 |
89 | The following input states are available:
90 |
91 | * `invalid` when the input is invalid.
92 | * `valid` when the use input is valid.
93 | * `null` when the input should display no validation state (neutral).
94 |
95 | :::demo
96 | ```html
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 | ```
106 | :::
107 |
108 | ## Readonly & Plaintext
109 |
110 | You can also display the input as readonly or plain text using the `readonly` and `plaintext` props.
111 |
--------------------------------------------------------------------------------
/src/components/image/Image.vue:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 |
17 |
122 |
123 |
--------------------------------------------------------------------------------
/src/components/popover/Popover.vue:
--------------------------------------------------------------------------------
1 |
2 |
Etiam at congue tellus, vitae congue metus. Praesent eget arcu eget justo sodales venenatis. Nam nec est urna. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Maecenas tempor dapibus eros, ut ultricies est dapibus eu. Pellentesque quis nisi suscipit, dignissim nunc nec, rhoncus dolor. Maecenas tempus egestas egestas.
78 |
79 |
80 | ```
81 | :::
82 |
83 | ## Values
84 |
85 | By default, the `` component's value will be `true` or `false` depending on its checked state. However, this can be easily adjusted using the `value` and `unchecked-value` props.
86 |
87 | ## Indeterminate State
88 |
89 | :::demo
90 | ```html
91 |
92 |
103 |
104 |
105 |
120 |
121 |
122 | ```
123 | :::
124 |
125 | ## Missing Features
126 |
127 | The following checkbox features are currently not supported, but available on the [roadmap](/roadmap).
128 |
129 | * Possibility of creating plain checkboxes.
130 | * Checkbox groups.
131 | * Button style checkboxes.
132 |
--------------------------------------------------------------------------------
/src/components/badge/README.md:
--------------------------------------------------------------------------------
1 | # Badges
2 |
3 | Badges are the perfect component for labels and count values.
4 |
5 | ## Contextual Variations
6 |
7 | Using the `theme` prop you can easily change the appearance of your badge using the main theme colors: `primary, secondary, success, danger, warning, info, light` and `dark`.
8 |
9 | :::demo
10 | ```html
11 |
105 |
106 |
107 | ```
108 | :::
109 |
110 | ## Inherited Props
111 |
112 | > **Note:** This component is also inheriting the [Link](/docs/components/link) component's props.
113 |
--------------------------------------------------------------------------------
/src/components/tabs/README.md:
--------------------------------------------------------------------------------
1 | # Tabs
2 |
3 | Using the `` component you can easily create tabbable panes of content.
4 |
5 | :::demo
6 | ```html
7 |
8 |
9 |
10 |
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin efficitur eros tellus. Fusce mollis felis a lorem euismod sollicitudin. Maecenas et porttitor mauris.
11 |
12 |
13 |
Sed at lacus efficitur, imperdiet purus et, pretium arcu. Mauris vulputate, libero in dignissim auctor, nunc tortor interdum elit, ac dignissim ex enim vitae diam.
14 |
15 |
16 |
17 |
18 | ```
19 | :::
20 |
21 |
22 | ## Cards
23 |
24 | Wrapping the `` component inside a `` component you can also display the tabs as cards.
25 |
26 | :::demo
27 | ```html
28 |
29 |
30 |
31 |
32 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin efficitur eros tellus. Fusce mollis felis a lorem euismod sollicitudin. Maecenas et porttitor mauris.
33 |
34 |
35 | Sed at lacus efficitur, imperdiet purus et, pretium arcu. Mauris vulputate, libero in dignissim auctor, nunc tortor interdum elit, ac dignissim ex enim vitae diam.
36 |
37 |
38 |
39 |
40 |
41 | ```
42 | :::
43 |
44 |
45 | ## Pills
46 |
47 | Using the `pills` prop you can turn your tab controls into 'pill' buttons.
48 |
49 | :::demo
50 | ```html
51 |
52 |
53 |
54 |
55 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin efficitur eros tellus. Fusce mollis felis a lorem euismod sollicitudin. Maecenas et porttitor mauris.
56 |
57 |
58 | Sed at lacus efficitur, imperdiet purus et, pretium arcu. Mauris vulputate, libero in dignissim auctor, nunc tortor interdum elit, ac dignissim ex enim vitae diam.
59 |
60 |
61 |
62 |
63 |
64 | ```
65 | :::
66 |
67 |
68 | ## Vertical Tabs
69 |
70 | Placing the tab controls vertically can be easily achieved using the `vertical` prop.
71 |
72 | :::demo
73 | ```html
74 |
75 |
76 |
77 |
78 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin efficitur eros tellus. Fusce mollis felis a lorem euismod sollicitudin. Maecenas et porttitor mauris.
79 |
80 |
81 | Sed at lacus efficitur, imperdiet purus et, pretium arcu. Mauris vulputate, libero in dignissim auctor, nunc tortor interdum elit, ac dignissim ex enim vitae diam.
82 |
83 |
84 |
85 |
86 |
87 | ```
88 | :::
89 |
90 |
91 | ## Disabled Tab Controls
92 |
93 | You can set some of your tab controls as disabled, using the `disabled` prop
94 |
95 | :::demo
96 | ```html
97 |
98 |
99 |
100 |
101 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin efficitur eros tellus. Fusce mollis felis a lorem euismod sollicitudin. Maecenas et porttitor mauris.
102 |
103 |
104 | Sed at lacus efficitur, imperdiet purus et, pretium arcu. Mauris vulputate, libero in dignissim auctor, nunc tortor interdum elit, ac dignissim ex enim vitae diam.
105 |
106 |
107 |
108 |
109 |
110 | ```
111 | :::
112 |
--------------------------------------------------------------------------------
/src/components/progress/ProgressBar.vue:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
150 |
151 |
157 |
--------------------------------------------------------------------------------
/src/components/container/Col.vue:
--------------------------------------------------------------------------------
1 |
2 |
11 |
12 |
13 |
14 |
15 |
125 |
126 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | When contributing to this repository, please first discuss the change you wish to make via issue,
4 | email, or any other method with the owners of this repository before making a change.
5 |
6 | Please note we have a code of conduct, please follow it in all your interactions with the project.
7 |
8 | ## Pull Request Process
9 |
10 | 1. Ensure any install or build dependencies are removed before the end of the layer when doing a
11 | build.
12 | 2. Update the README.md with details of changes to the interface, this includes new environment
13 | variables, exposed ports, useful file locations and container parameters.
14 | 3. Increase the version numbers in any examples files and the README.md to the new version that this
15 | Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
16 | 4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
17 | do not have permission to do that, you may request the second reviewer to merge it for you.
18 |
19 | ## Code of Conduct
20 |
21 | ### Our Pledge
22 |
23 | In the interest of fostering an open and welcoming environment, we as
24 | contributors and maintainers pledge to making participation in our project and
25 | our community a harassment-free experience for everyone, regardless of age, body
26 | size, disability, ethnicity, gender identity and expression, level of experience,
27 | nationality, personal appearance, race, religion, or sexual identity and
28 | orientation.
29 |
30 | ### Our Standards
31 |
32 | Examples of behavior that contributes to creating a positive environment
33 | include:
34 |
35 | * Using welcoming and inclusive language
36 | * Being respectful of differing viewpoints and experiences
37 | * Gracefully accepting constructive criticism
38 | * Focusing on what is best for the community
39 | * Showing empathy towards other community members
40 |
41 | Examples of unacceptable behavior by participants include:
42 |
43 | * The use of sexualized language or imagery and unwelcome sexual attention or
44 | advances
45 | * Trolling, insulting/derogatory comments, and personal or political attacks
46 | * Public or private harassment
47 | * Publishing others' private information, such as a physical or electronic
48 | address, without explicit permission
49 | * Other conduct which could reasonably be considered inappropriate in a
50 | professional setting
51 |
52 | ### Our Responsibilities
53 |
54 | Project maintainers are responsible for clarifying the standards of acceptable
55 | behavior and are expected to take appropriate and fair corrective action in
56 | response to any instances of unacceptable behavior.
57 |
58 | Project maintainers have the right and responsibility to remove, edit, or
59 | reject comments, commits, code, wiki edits, issues, and other contributions
60 | that are not aligned to this Code of Conduct, or to ban temporarily or
61 | permanently any contributor for other behaviors that they deem inappropriate,
62 | threatening, offensive, or harmful.
63 |
64 | ### Scope
65 |
66 | This Code of Conduct applies both within project spaces and in public spaces
67 | when an individual is representing the project or its community. Examples of
68 | representing a project or community include using an official project e-mail
69 | address, posting via an official social media account, or acting as an appointed
70 | representative at an online or offline event. Representation of a project may be
71 | further defined and clarified by project maintainers.
72 |
73 | ### Enforcement
74 |
75 | Instances of abusive, harassing, or otherwise unacceptable behavior may be
76 | reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
77 | complaints will be reviewed and investigated and will result in a response that
78 | is deemed necessary and appropriate to the circumstances. The project team is
79 | obligated to maintain confidentiality with regard to the reporter of an incident.
80 | Further details of specific enforcement policies may be posted separately.
81 |
82 | Project maintainers who do not follow or enforce the Code of Conduct in good
83 | faith may face temporary or permanent repercussions as determined by other
84 | members of the project's leadership.
85 |
86 | ### Attribution
87 |
88 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
89 | available at [http://contributor-covenant.org/version/1/4][version]
90 |
91 | [homepage]: http://contributor-covenant.org
92 | [version]: http://contributor-covenant.org/version/1/4/
--------------------------------------------------------------------------------
/src/components/link/Link.vue:
--------------------------------------------------------------------------------
1 |
2 |
15 | Link
16 |
17 |
18 |
19 |
158 |
--------------------------------------------------------------------------------