@tacc/core-styles 2.15.0 → 2.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/branding_logos.css +1 -1
- package/dist/components/README.css +1 -1
- package/dist/components/admonition/demo.css +1 -1
- package/dist/components/admonition.css +1 -1
- package/dist/components/align/demo.css +1 -1
- package/dist/components/align.css +1 -1
- package/dist/components/bootstrap/bootstrap--form.demo.css +1 -1
- package/dist/components/bootstrap/bootstrap--modal.demo.css +1 -1
- package/dist/components/bootstrap/demo.css +1 -1
- package/dist/components/bootstrap.col.css +1 -1
- package/dist/components/bootstrap.container.css +1 -1
- package/dist/components/bootstrap.css +1 -1
- package/dist/components/bootstrap.figure.css +1 -1
- package/dist/components/bootstrap.form.css +1 -1
- package/dist/components/bootstrap.modal--cms.css +1 -1
- package/dist/components/bootstrap.modal--portal.css +1 -1
- package/dist/components/bootstrap.modal.css +1 -1
- package/dist/components/bootstrap.nav-tabs.css +1 -1
- package/dist/components/bootstrap.pagination.css +1 -1
- package/dist/components/bootstrap.row.css +1 -1
- package/dist/components/c-button/demo.css +1 -1
- package/dist/components/c-button.css +1 -1
- package/dist/components/c-button.selectors.css +1 -1
- package/dist/components/c-callout.css +1 -1
- package/dist/components/c-card/c-card--frontera.demo.css +1 -1
- package/dist/components/c-card/c-card.demo.css +1 -1
- package/dist/components/c-card--docs.css +1 -1
- package/dist/components/c-card--from-tup-cms.css +1 -1
- package/dist/components/c-card--frontera-about-page.css +1 -1
- package/dist/components/c-card.css +1 -1
- package/dist/components/c-card.selectors.css +1 -1
- package/dist/components/c-data-list.css +1 -1
- package/dist/components/c-footer.css +1 -1
- package/dist/components/c-form--cms.css +1 -1
- package/dist/components/c-form--login.css +1 -0
- package/dist/components/c-form--portal.css +1 -1
- package/dist/components/c-form.css +1 -1
- package/dist/components/c-form.selectors.css +1 -1
- package/dist/components/c-image-map.css +1 -1
- package/dist/components/c-image-map.skin.css +1 -1
- package/dist/components/c-image-map.structure.css +1 -1
- package/dist/components/c-island/demo.css +1 -1
- package/dist/components/c-island.css +1 -1
- package/dist/components/c-login.css +1 -0
- package/dist/components/c-message/demo.css +1 -1
- package/dist/components/c-message--compact.css +1 -1
- package/dist/components/c-message--expanded.css +1 -1
- package/dist/components/c-message.css +1 -1
- package/dist/components/c-message.selectors.css +1 -1
- package/dist/components/c-nav/demo.css +1 -1
- package/dist/components/c-nav.css +1 -1
- package/dist/components/c-page.css +1 -1
- package/dist/components/c-recognition.css +1 -1
- package/dist/components/c-see-all-link.css +1 -1
- package/dist/components/c-show-more.css +1 -1
- package/dist/components/c-tag/demo.css +1 -1
- package/dist/components/c-tag.css +1 -1
- package/dist/components/c-tag.selectors.css +1 -1
- package/dist/components/cortal.icon.css +1 -1
- package/dist/components/cortal.icon.font.css +1 -1
- package/dist/components/demo.css +1 -1
- package/dist/components/django-cms-forms.css +1 -1
- package/dist/components/django-cms-forms.hacks.css +1 -1
- package/dist/components/django-cms-forms.selectors.css +1 -1
- package/dist/components/mui.tabs.css +1 -1
- package/dist/components/pymdownx--tabbed.css +1 -1
- package/dist/components/pymdownx.css +1 -1
- package/dist/components/s-form-page.css +1 -0
- package/dist/components/tacc-docs.css +1 -1
- package/dist/core-styles.base.css +2 -2
- package/dist/core-styles.cms.css +1 -1
- package/dist/core-styles.demo.css +1 -1
- package/dist/core-styles.docs.css +1 -1
- package/dist/core-styles.header.css +1 -1
- package/dist/core-styles.portal.css +2 -2
- package/dist/core-styles.settings.css +1 -1
- package/dist/core-styles.theme.default.css +1 -1
- package/dist/core-styles.theme.has-dark-logo.css +1 -1
- package/dist/core-styles.wysiwyg.css +1 -1
- package/dist/elements/README.css +1 -1
- package/dist/elements/bootstrap.css +1 -1
- package/dist/elements/demo.css +1 -1
- package/dist/elements/form.css +1 -1
- package/dist/elements/headings/demo.css +1 -1
- package/dist/elements/headings--cms.css +1 -1
- package/dist/elements/headings--docs.css +1 -1
- package/dist/elements/html-elements/demo.css +1 -1
- package/dist/elements/html-elements.cms.css +1 -1
- package/dist/elements/html-elements.css +1 -1
- package/dist/elements/html-elements.docs.css +1 -1
- package/dist/elements/links.css +1 -1
- package/dist/elements/monospace.css +1 -1
- package/dist/elements/root--cms.css +1 -1
- package/dist/elements/root--demo.css +1 -1
- package/dist/elements/root--docs.css +1 -1
- package/dist/elements/root--portal.css +1 -1
- package/dist/elements/root.css +1 -1
- package/dist/elements/sticky-footer.css +1 -1
- package/dist/elements/table--basic.css +1 -1
- package/dist/elements/table--nested.css +1 -1
- package/dist/elements/table.cms.css +1 -1
- package/dist/elements/table.css +1 -1
- package/dist/elements/table.docs.css +1 -1
- package/dist/elements/table.selectors.css +1 -1
- package/dist/elements/tacc-search-bar.css +1 -1
- package/dist/fractal.server.refresh.css +1 -1
- package/dist/generics/README.css +1 -1
- package/dist/generics/fonts.css +1 -1
- package/dist/generics/pseudo-elements.css +1 -1
- package/dist/objects/README.css +1 -1
- package/dist/objects/o-fixed-header-table/demo.css +1 -1
- package/dist/objects/o-fixed-header-table.css +1 -1
- package/dist/objects/o-flex-item-table-wrap/demo.css +1 -1
- package/dist/objects/o-flex-item-table-wrap.css +1 -1
- package/dist/objects/o-float-content.css +1 -1
- package/dist/objects/o-grid.css +1 -1
- package/dist/objects/o-offset-content.css +1 -1
- package/dist/objects/o-section/demo.css +1 -1
- package/dist/objects/o-section--docs.css +1 -1
- package/dist/objects/o-section.css +1 -1
- package/dist/objects/o-section.selectors.css +1 -1
- package/dist/objects/o-site.css +1 -1
- package/dist/objects/o-table-wrap/demo.basic.css +1 -1
- package/dist/objects/o-table-wrap/demo.extra.css +1 -1
- package/dist/objects/o-table-wrap/example.flexible-horz.css +1 -1
- package/dist/objects/o-table-wrap/example.overflow-hidden.css +1 -1
- package/dist/objects/o-table-wrap/example.overflow-scroll.css +1 -1
- package/dist/objects/o-table-wrap/o-table-wrap--flexible-horz.css +1 -1
- package/dist/objects/o-table-wrap/o-table-wrap--flexible-vert.css +1 -1
- package/dist/objects/o-table-wrap/o-table-wrap--overflow-hidden.css +1 -1
- package/dist/objects/o-table-wrap/o-table-wrap--overflow-scroll-extra.css +1 -1
- package/dist/objects/o-table-wrap/o-table-wrap--overflow-scroll.css +1 -1
- package/dist/objects/o-table-wrap.css +1 -1
- package/dist/settings/README.css +1 -1
- package/dist/settings/border.css +1 -1
- package/dist/settings/color/demo.css +1 -1
- package/dist/settings/color--cms.css +1 -1
- package/dist/settings/color--demo.css +1 -1
- package/dist/settings/color--docs.css +1 -1
- package/dist/settings/color--portal.css +1 -1
- package/dist/settings/color.accent--blue.css +1 -1
- package/dist/settings/color.accent--purple.css +1 -1
- package/dist/settings/color.css +1 -1
- package/dist/settings/demo.css +1 -1
- package/dist/settings/font/demo-family.css +1 -1
- package/dist/settings/font/demo-size.css +1 -1
- package/dist/settings/font/demo-style.css +1 -1
- package/dist/settings/font/demo-weight.css +1 -1
- package/dist/settings/font--cms.css +1 -1
- package/dist/settings/font--docs.css +1 -1
- package/dist/settings/font--portal.css +1 -1
- package/dist/settings/font.css +1 -1
- package/dist/settings/max-width.css +1 -1
- package/dist/settings/space.css +1 -1
- package/dist/tools/README.css +1 -1
- package/dist/tools/media-queries.css +1 -1
- package/dist/tools/selectors.common.css +1 -1
- package/dist/tools/selectors.css +1 -1
- package/dist/tools/selectors.form.css +1 -1
- package/dist/tools/selectors.monospace.css +1 -1
- package/dist/tools/x-article-link.css +1 -1
- package/dist/tools/x-blockquote.css +1 -1
- package/dist/tools/x-center.css +1 -1
- package/dist/tools/x-fake-border.css +1 -1
- package/dist/tools/x-figure.css +1 -1
- package/dist/tools/x-grid.css +1 -1
- package/dist/tools/x-layout.css +1 -1
- package/dist/tools/x-link.css +1 -1
- package/dist/tools/x-mailto-text-replace.css +1 -1
- package/dist/tools/x-overlay.css +1 -1
- package/dist/tools/x-tabs/demo.css +1 -1
- package/dist/tools/x-tabs.css +1 -1
- package/dist/tools/x-tabs.skin.css +1 -1
- package/dist/tools/x-tabs.structure.css +1 -1
- package/dist/tools/x-truncate.css +1 -1
- package/dist/trumps/README.css +1 -1
- package/dist/trumps/demo.css +1 -1
- package/dist/trumps/s-affixed-input-wrapper/demo.css +1 -1
- package/dist/trumps/s-affixed-input-wrapper.css +1 -1
- package/dist/trumps/s-article-list.css +1 -1
- package/dist/trumps/s-article-preview.css +1 -1
- package/dist/trumps/s-blockquote.css +1 -1
- package/dist/trumps/s-breadcrumbs.css +1 -1
- package/dist/trumps/s-cms-nav.css +1 -1
- package/dist/trumps/s-document.css +1 -1
- package/dist/trumps/s-footer.css +1 -1
- package/dist/trumps/s-form--cms.css +1 -1
- package/dist/trumps/s-form--login.css +1 -0
- package/dist/trumps/s-form--portal.css +1 -1
- package/dist/trumps/s-form-page/example.css +1 -0
- package/dist/trumps/s-form-page.css +1 -0
- package/dist/trumps/s-form.css +1 -1
- package/dist/trumps/s-form.selectors.css +1 -1
- package/dist/trumps/s-guide-doc.css +1 -1
- package/dist/trumps/s-header.bootstrap.css +1 -1
- package/dist/trumps/s-header.css +1 -1
- package/dist/trumps/s-image-grid.css +1 -1
- package/dist/trumps/s-inline-dl.css +1 -1
- package/dist/trumps/s-irregular-links.css +1 -1
- package/dist/trumps/s-paragraph-table.css +1 -1
- package/dist/trumps/s-portal-nav.css +1 -1
- package/dist/trumps/s-style-guide.css +1 -1
- package/dist/trumps/s-system-specs.css +1 -1
- package/dist/trumps/tacc-search-bar.css +1 -1
- package/dist/trumps/u-empty.css +1 -1
- package/dist/trumps/u-hide.css +1 -1
- package/dist/trumps/u-mailto-text-replace.css +1 -1
- package/dist/trumps/u-nested-text-content.css +1 -1
- package/package.json +1 -1
- package/src/lib/_imports/_partials/form--login.hbs +84 -0
- package/src/lib/_imports/_partials/form-errors.hbs +1 -1
- package/src/lib/_imports/_partials/form.hbs +43 -18
- package/src/lib/_imports/components/c-form/c-form--login.hbs +1 -0
- package/src/lib/_imports/components/c-form/config.yml +9 -0
- package/src/lib/_imports/components/c-form--login.css +111 -0
- package/src/lib/_imports/components/c-form.css +2 -1
- package/src/lib/_imports/components/c-form.selectors.css +9 -0
- package/src/lib/_imports/core-styles.portal.css +1 -1
- package/src/lib/_imports/tools/selectors.form.css +11 -0
- package/src/lib/_imports/trumps/s-form/config.yml +7 -0
- package/src/lib/_imports/trumps/s-form/s-form--login.hbs +1 -0
- package/src/lib/_imports/trumps/s-form--login.css +1 -0
- package/src/lib/_imports/trumps/s-form-page/config.yml +12 -0
- package/src/lib/_imports/trumps/s-form-page/example.css +5 -0
- package/src/lib/_imports/trumps/s-form-page/readme.md +6 -0
- package/src/lib/_imports/trumps/s-form-page/s-form-page--login.hbs +11 -0
- package/src/lib/_imports/trumps/s-form-page/s-form-page.hbs +13 -0
- package/src/lib/_imports/trumps/s-form-page.css +47 -0
- package/src/lib/_imports/trumps/s-form.selectors.css +9 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */.s-style-guide section:not(.o-section)>h1:first-child,.s-style-guide section:not(.o-section)>h2:first-child,.s-style-guide section:not(.o-section)>h3:first-child,.s-style-guide section:not(.o-section)>h4:first-child,.s-style-guide section:not(.o-section)>h5:first-child,.s-style-guide section:not(.o-section)>h6:first-child,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h1,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h2,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h3,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h4,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h5,.s-style-guide section>:not(h1,h2,h3,h4,h5,h6)+h6{margin-top:var(--global-space--x-large)}.s-style-guide section>h1,.s-style-guide section>h2,.s-style-guide section>h3,.s-style-guide section>h4,.s-style-guide section>h5,.s-style-guide section>h6{margin-bottom:var(--global-space--normal)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */.s-system-specs{font-size:var(--global-font-size--small);font-weight:var(--global-font-weight--medium)}@media only screen and (min-width:768px){.s-system-specs{display:flow-root}.s-system-specs>*{display:inline-block}.s-system-specs>figure{float:left}}.s-system-specs{--row-height:32px}.s-system-specs>aside{margin-top:var(--row-height)}@media only screen and (max-width:991px){.s-system-specs>figure{margin-bottom:var(--row-height)}}@media only screen and (min-width:992px){.s-system-specs{--col-width--thin:42%;--col-width--wide:48%;--col-gutter:10%;--col-padding:40px;padding-inline:var(--col-padding)}.s-system-specs>aside,.s-system-specs>div{padding-inline:var(--col-padding)}.s-system-specs>div{width:var(--col-width--thin)}.s-system-specs>figure{margin-right:var(--col-gutter);width:var(--col-width--wide)}}@media only screen and (min-width:1200px){.s-system-specs>aside{width:var(--col-width--thin)}}.s-system-specs>figure>img{display:block;width:100%}.s-system-specs>figure>figcaption{margin-top:-40px;position:relative}@media only screen and (max-width:991px){.s-system-specs>figure>img{margin-left:auto;margin-right:auto;width:60%}}@media only screen and (min-width:992px){.s-system-specs>figure>figcaption{margin-left:auto;margin-right:auto;width:80%}}.s-system-specs .c-data-list__key a{font-weight:var(--medium)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */:host{--button-horz-pad:10px;--input-horz-pad:0.125em;--input-height:26px;--button-font-size:18px;--input-font-size:14px}:host{font-size:0}:host [part=form]{align-items:center;display:flex;font-family:Roboto;position:relative}:host [part=button]{align-items:center;background-color:transparent;border:none;box-sizing:content-box;color:var(--header-text-color);font-size:16px;font-size:var(--button-font-size);height:var(--input-height,38px);left:0;margin:0;padding:0 var(--button-horz-pad);position:absolute;top:50%;transform:translateY(-50%)}:host [part=input]{background-color:var(--header-search-bkgd-color);border:var(--global-border-width--normal) solid var(--header-search-brdr-color);border-radius:5px;color:var(--header-text-color);display:block;font-size:var(--input-font-size);height:var(--input-height);margin:0;padding-bottom:0;padding-left:calc(var(--button-horz-pad) + var(--button-font-size) + var(--button-horz-pad) + var(--input-horz-pad));padding-right:var(--input-horz-pad);padding-top:0;width:100%}:host [part=input]::-moz-placeholder{color:var(--header-text-color);opacity:.5}:host [part=input]::placeholder{color:var(--header-text-color);opacity:.5}
|
package/dist/trumps/u-empty.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */
|
package/dist/trumps/u-hide.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */.u-hide--visually:not(:focus,:active){clip:rect(0 0 0 0);border:none;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */.u-mailto-text-replace[data-user][data-domain]{font-size:0;visibility:hidden}.u-mailto-text-replace[data-user][data-domain]:before{content:attr(data-user) "@" attr(data-domain);display:inline;font-size:medium;visibility:visible}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! @tacc/core-styles 2.
|
|
1
|
+
/*! @tacc/core-styles 2.16.0+ | MIT | github.com/TACC/Core-Styles */.u-nested-text-content{padding-left:var(--global-space--list-indent)}
|
package/package.json
CHANGED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
{{#message}}
|
|
2
|
+
{{> @message content=. }}
|
|
3
|
+
{{/message}}
|
|
4
|
+
|
|
5
|
+
<form action="" class="{{ class.root }} {{ class.modifier }}">
|
|
6
|
+
<h3 {{#if class.title }}class="{{ class.title }}"{{/if}}>
|
|
7
|
+
<img
|
|
8
|
+
src="https://www.tacc.utexas.edu/static/assets/TACC-formal-Black-1c-5602fc8f.svg"
|
|
9
|
+
alt="TACC Logo"
|
|
10
|
+
/>
|
|
11
|
+
<span>Log In</span>
|
|
12
|
+
</h3>
|
|
13
|
+
<p {{#if class.desc }}class="{{ class.desc }}"{{/if}}>to continue to the TACC User Portal</p>
|
|
14
|
+
|
|
15
|
+
{{> @form-errors class=class.errors wrapClass=class.form_errors_wrap }}
|
|
16
|
+
|
|
17
|
+
<div class="{{ class.field }} {{ class.has_required }}">
|
|
18
|
+
<label for="username">
|
|
19
|
+
User Name
|
|
20
|
+
<span class="{{ class.badge }}">Required</span>
|
|
21
|
+
</label>
|
|
22
|
+
<input
|
|
23
|
+
name="username"
|
|
24
|
+
type="text"
|
|
25
|
+
autocomplete="username"
|
|
26
|
+
id="username"
|
|
27
|
+
required
|
|
28
|
+
>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="{{ class.field }} {{ class.has_required }}">
|
|
31
|
+
<label for="password">
|
|
32
|
+
Password
|
|
33
|
+
<span {{#if class.badge }}class="{{ class.badge }}"{{/if}}>Required</span>
|
|
34
|
+
</label>
|
|
35
|
+
<input
|
|
36
|
+
name="password"
|
|
37
|
+
type="password"
|
|
38
|
+
autocomplete="current-password"
|
|
39
|
+
id="password"
|
|
40
|
+
required
|
|
41
|
+
>
|
|
42
|
+
</div>
|
|
43
|
+
<footer {{#if class.buttons }}class="{{ class.buttons }}"{{/if}}>
|
|
44
|
+
<a
|
|
45
|
+
href="https://accounts.tacc.utexas.edu/register"
|
|
46
|
+
rel="noreferrer"
|
|
47
|
+
target="_blank"
|
|
48
|
+
>
|
|
49
|
+
Create Account
|
|
50
|
+
</a>
|
|
51
|
+
<button {{#if class.button }}class="{{ class.button }}"{{/if}} type="submit">
|
|
52
|
+
Log In
|
|
53
|
+
</button>
|
|
54
|
+
</footer>
|
|
55
|
+
<nav {{#if class.nav }}class="{{ class.nav }}"{{/if}}>
|
|
56
|
+
<p>Having trouble logging in?</p>
|
|
57
|
+
<a
|
|
58
|
+
href="https://example.com"
|
|
59
|
+
rel="noreferrer"
|
|
60
|
+
target="_blank"
|
|
61
|
+
>
|
|
62
|
+
Reset Password
|
|
63
|
+
</a>
|
|
64
|
+
<a
|
|
65
|
+
href="https://example.com"
|
|
66
|
+
rel="noreferrer"
|
|
67
|
+
target="_blank"
|
|
68
|
+
>
|
|
69
|
+
Account Help
|
|
70
|
+
</a>
|
|
71
|
+
</nav>
|
|
72
|
+
</form>
|
|
73
|
+
<script type="module">
|
|
74
|
+
import toggleFieldErrors from '{{ path "/components/raw/c-form/toggle-field-errors.js" }}';
|
|
75
|
+
|
|
76
|
+
const form = document.querySelector('form');
|
|
77
|
+
const selector = '{{{ selectors.errorList }}}';
|
|
78
|
+
|
|
79
|
+
form.addEventListener('submit', event => {
|
|
80
|
+
event.preventDefault();
|
|
81
|
+
console.log({ form, selector });
|
|
82
|
+
toggleFieldErrors( form, selector );
|
|
83
|
+
});
|
|
84
|
+
</script>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{{#if wrapClass}}
|
|
2
2
|
<div class="{{ wrapClass }}" style="display:none;">
|
|
3
3
|
{{/if}}
|
|
4
|
-
<ul class="{{ class }}"{{#unless wrapClass}} style="display:none;"{{/unless}}>
|
|
4
|
+
<ul {{#if class }}class="{{ class }}"{{/if}}{{#unless wrapClass}} style="display:none;"{{/unless}}>
|
|
5
5
|
<li>
|
|
6
6
|
Sample <strong>{{#if typeName}}{{typeName}}{{else}}form{{/if}}</strong>
|
|
7
7
|
error. <a href="https://example.com" target="_blank">Link.</a>
|
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
{{else}}
|
|
8
8
|
<form action="" method="POST" enctype="multipart/form-data" class="{{ class.root }}">
|
|
9
9
|
|
|
10
|
-
<h3 class="{{ class.title }}">
|
|
11
|
-
|
|
10
|
+
<h3 {{#if class.title }}class="{{ class.title }}"{{/if}}>
|
|
11
|
+
(Optional) Title of Form
|
|
12
|
+
</h3>
|
|
13
|
+
<p {{#if class.desc }}class="{{ class.desc }}"{{/if}}>
|
|
14
|
+
(Optional) Description of the form.
|
|
15
|
+
</p>
|
|
12
16
|
{{/if}}
|
|
13
17
|
|
|
14
18
|
{{> @form-errors class=class.errors wrapClass=class.form_errors_wrap }}
|
|
@@ -19,7 +23,9 @@
|
|
|
19
23
|
{{/if}}
|
|
20
24
|
|
|
21
25
|
<label for="name">
|
|
22
|
-
Name
|
|
26
|
+
Name
|
|
27
|
+
<span {{#if class.badge }}class="{{ class.badge }}"{{/if}}
|
|
28
|
+
aria-label="(required)">*</span>
|
|
23
29
|
</label>
|
|
24
30
|
|
|
25
31
|
<input
|
|
@@ -41,7 +47,7 @@
|
|
|
41
47
|
{{/with}}
|
|
42
48
|
</div>
|
|
43
49
|
|
|
44
|
-
<div class="{{ class.field }}">
|
|
50
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
45
51
|
{{#if (eq errorLoc "top")}}
|
|
46
52
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
47
53
|
{{/if}}
|
|
@@ -71,7 +77,7 @@
|
|
|
71
77
|
{{/with}}
|
|
72
78
|
</div>
|
|
73
79
|
|
|
74
|
-
<div class="{{ class.field }}">
|
|
80
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
75
81
|
{{#if (eq errorLoc "top")}}
|
|
76
82
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
77
83
|
{{/if}}
|
|
@@ -95,7 +101,7 @@
|
|
|
95
101
|
{{/with}}
|
|
96
102
|
</div>
|
|
97
103
|
|
|
98
|
-
<div class="{{ class.field }}">
|
|
104
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
99
105
|
{{#if (eq errorLoc "top")}}
|
|
100
106
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
101
107
|
{{/if}}
|
|
@@ -103,7 +109,10 @@
|
|
|
103
109
|
<label>Radio stations</label>
|
|
104
110
|
|
|
105
111
|
{{#with inputListTag as | tag |}}
|
|
106
|
-
<{{#if tag}}{{tag}}{{else}}menu{{/if}}
|
|
112
|
+
<{{#if tag}}{{tag}}{{else}}menu{{/if}}
|
|
113
|
+
{{#if ../class.radio_menu }}class="{{../class.radio_menu}}"{{/if}}
|
|
114
|
+
id="radio-stations"
|
|
115
|
+
>
|
|
107
116
|
<li>
|
|
108
117
|
<label for="radio-stations-0">
|
|
109
118
|
<input
|
|
@@ -175,7 +184,7 @@
|
|
|
175
184
|
{{/with}}
|
|
176
185
|
</div>
|
|
177
186
|
|
|
178
|
-
<div class="{{ class.field }}">
|
|
187
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
179
188
|
{{#if (eq errorLoc "top")}}
|
|
180
189
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
181
190
|
{{/if}}
|
|
@@ -185,7 +194,10 @@
|
|
|
185
194
|
</label>
|
|
186
195
|
|
|
187
196
|
{{#with inputListTag as | tag |}}
|
|
188
|
-
<{{#if tag}}{{tag}}{{else}}menu{{/if}}
|
|
197
|
+
<{{#if tag}}{{tag}}{{else}}menu{{/if}}
|
|
198
|
+
{{#if ../class.check_menu }}class="{{../class.check_menu}}"{{/if}}
|
|
199
|
+
id="which-fish-do-you-want"
|
|
200
|
+
>
|
|
189
201
|
<li>
|
|
190
202
|
<label for="which-fish-do-you-want-0">
|
|
191
203
|
<input
|
|
@@ -249,7 +261,7 @@
|
|
|
249
261
|
{{/unless}}
|
|
250
262
|
</div>
|
|
251
263
|
|
|
252
|
-
<div class="{{ class.field }}">
|
|
264
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
253
265
|
{{#if (eq errorLoc "top")}}
|
|
254
266
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
255
267
|
{{/if}}
|
|
@@ -279,7 +291,7 @@
|
|
|
279
291
|
{{/with}}
|
|
280
292
|
</div>
|
|
281
293
|
|
|
282
|
-
<div class="{{ class.field }}">
|
|
294
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
283
295
|
{{#if (eq errorLoc "top")}}
|
|
284
296
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
285
297
|
{{/if}}
|
|
@@ -304,7 +316,7 @@
|
|
|
304
316
|
{{/with}}
|
|
305
317
|
</div>
|
|
306
318
|
|
|
307
|
-
<div class="{{ class.field }}">
|
|
319
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
308
320
|
{{#if (eq errorLoc "top")}}
|
|
309
321
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
310
322
|
{{/if}}
|
|
@@ -328,7 +340,7 @@
|
|
|
328
340
|
{{/with}}
|
|
329
341
|
</div>
|
|
330
342
|
|
|
331
|
-
<div class="{{ class.field }}">
|
|
343
|
+
<div {{#if class.field }}class="{{ class.field }}"{{/if}}>
|
|
332
344
|
{{#if (eq errorLoc "top")}}
|
|
333
345
|
{{> @field-errors class=class.errors wrapClass=class.field_errors_wrap }}
|
|
334
346
|
{{/if}}
|
|
@@ -358,7 +370,9 @@
|
|
|
358
370
|
|
|
359
371
|
<div class="{{ class.field }} {{ class.has_spam_filter }} {{ class.has_required }}">
|
|
360
372
|
<label for="recaptcha_g9y93gP8">
|
|
361
|
-
Are you a robot
|
|
373
|
+
Are you a robot?
|
|
374
|
+
<span {{#if class.badge }}class="{{ class.badge }}"{{/if}}
|
|
375
|
+
aria-label="(required)">*</span>
|
|
362
376
|
</label>
|
|
363
377
|
|
|
364
378
|
<script src="https://www.google.com/recaptcha/api.js"></script>
|
|
@@ -370,14 +384,25 @@
|
|
|
370
384
|
<div class="g-recaptcha" data-sitekey="6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI" required="" id="recaptcha_g9y93gP8" data-widget-uuid="9e32f28ccb9545109ff6ae891f9af324" data-callback="onSubmit_9e32f28ccb9545109ff6ae891f9af324" data-size="normal"></div>
|
|
371
385
|
</div>
|
|
372
386
|
|
|
373
|
-
<footer class="{{ class.buttons }}">
|
|
374
|
-
<button
|
|
387
|
+
<footer {{#if class.buttons }}class="{{ class.buttons }}"{{/if}}>
|
|
388
|
+
<button
|
|
389
|
+
{{#if class.button }}class="{{ class.button }}"{{/if}}
|
|
390
|
+
type="submit"
|
|
391
|
+
>
|
|
375
392
|
Submit
|
|
376
393
|
</button>
|
|
377
|
-
<button
|
|
394
|
+
<button
|
|
395
|
+
id="toggle-field-errors"
|
|
396
|
+
{{#if class.button }}class="{{ class.button }}"{{/if}}
|
|
397
|
+
type="button"
|
|
398
|
+
>
|
|
378
399
|
Toggle Field Errors
|
|
379
400
|
</button>
|
|
380
|
-
<button
|
|
401
|
+
<button
|
|
402
|
+
id="toggle-required-fields"
|
|
403
|
+
{{#if class.button }}class="{{ class.button }}"{{/if}}
|
|
404
|
+
type="button"
|
|
405
|
+
>
|
|
381
406
|
Toggle Required Fields
|
|
382
407
|
</button>
|
|
383
408
|
</footer>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{{> @form--login class=classNames selectors=selectors message=message }}
|
|
@@ -17,6 +17,7 @@ context:
|
|
|
17
17
|
has_spam_filter: has-spam-check
|
|
18
18
|
buttons: c-form__buttons
|
|
19
19
|
button: c-form__button
|
|
20
|
+
nav: c-form__nav
|
|
20
21
|
variants:
|
|
21
22
|
- name: default
|
|
22
23
|
status: prototype
|
|
@@ -28,3 +29,11 @@ variants:
|
|
|
28
29
|
status: ready
|
|
29
30
|
context:
|
|
30
31
|
shouldLoadCMS: true
|
|
32
|
+
- name: login
|
|
33
|
+
context:
|
|
34
|
+
classNames:
|
|
35
|
+
modifier: c-form--login
|
|
36
|
+
nav: c-form__nav
|
|
37
|
+
shouldLoadPortal: true
|
|
38
|
+
supportStyles:
|
|
39
|
+
- ../../assets/components/c-form--login.css
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
@import url("../components/c-button.css");
|
|
2
|
+
@import url("../tools/selectors.form.css");
|
|
3
|
+
|
|
4
|
+
:--form--login {
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
/* CONTAINER */
|
|
9
|
+
|
|
10
|
+
& {
|
|
11
|
+
font-size: 1.6rem;
|
|
12
|
+
font-family: var(--global-font-family--sans--cms);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
/* TITLE */
|
|
18
|
+
|
|
19
|
+
& :--form__title,
|
|
20
|
+
& :--form__desc {
|
|
21
|
+
text-align: center;
|
|
22
|
+
color: var(--global-color-primary--xx-dark);
|
|
23
|
+
}
|
|
24
|
+
& :--form__title {
|
|
25
|
+
font-size: 2.4rem;
|
|
26
|
+
font-weight: var(--black);
|
|
27
|
+
}
|
|
28
|
+
& :--form__desc {
|
|
29
|
+
font-size: 1.6rem;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
& :--form__title img {
|
|
33
|
+
display: block; /* to collapse margins with heading */
|
|
34
|
+
margin-inline: auto; /* to re-center image */
|
|
35
|
+
height: 75px;
|
|
36
|
+
margin-bottom: 45px;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
& :--form__desc {
|
|
40
|
+
font-weight: var(--medium); /* mimics value (not appearance) from design */
|
|
41
|
+
margin-block: 25px; /* mimics django-cms-forms.css `.description` */
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
/* FORM */
|
|
47
|
+
|
|
48
|
+
/* To hide "(required)" (which is an obvious attribute on a login form) */
|
|
49
|
+
& :--form__badge {
|
|
50
|
+
display: none;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* To make elements bigger */
|
|
54
|
+
& :--form__field {
|
|
55
|
+
/* To stretch input field width */
|
|
56
|
+
display: flex;
|
|
57
|
+
flex-direction: column;
|
|
58
|
+
}
|
|
59
|
+
/* To always use larger field inputs (not just on coarse pointer devices) */
|
|
60
|
+
& input {
|
|
61
|
+
padding: 12px 12px; /* mimic Core Styles forms.css @media (pointer: coarse) */
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
& :--form__buttons {
|
|
67
|
+
display: flex;
|
|
68
|
+
justify-content: space-between;
|
|
69
|
+
align-items: center;
|
|
70
|
+
|
|
71
|
+
@extend :--c-button--width-long;
|
|
72
|
+
}
|
|
73
|
+
& :--form__button[type="submit"] {
|
|
74
|
+
padding-block: 10px; /* overrides core-styles.base.css button styles */
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
/* FOOTER */
|
|
80
|
+
|
|
81
|
+
& :--form__nav {
|
|
82
|
+
display: flex;
|
|
83
|
+
flex-direction: column;
|
|
84
|
+
align-items: flex-end;
|
|
85
|
+
gap: 12px;
|
|
86
|
+
|
|
87
|
+
margin-top: 35px; /* mimics django-cms-forms.css `.button-wrapper` */
|
|
88
|
+
}
|
|
89
|
+
& :--form__nav > p {
|
|
90
|
+
margin-block: 0; /* overwrite browser */
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
/* ERRORS */
|
|
95
|
+
|
|
96
|
+
/* & :--form_errors { */
|
|
97
|
+
& :--form__errors--form {
|
|
98
|
+
margin-bottom: 2rem; /* TODO: move to @tacc/core-styles */
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
/* LINKS */
|
|
104
|
+
|
|
105
|
+
& a {
|
|
106
|
+
font-weight: var(--medium);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
}
|
|
@@ -83,14 +83,15 @@
|
|
|
83
83
|
}
|
|
84
84
|
/* To replace asterisk character with text */
|
|
85
85
|
:--form__badge {
|
|
86
|
-
width: 0;
|
|
87
86
|
display: inline-block;
|
|
88
87
|
visibility: hidden;
|
|
89
88
|
line-height: 0;
|
|
89
|
+
font-size: 0;
|
|
90
90
|
}
|
|
91
91
|
:--form__badge::after {
|
|
92
92
|
visibility: visible;
|
|
93
93
|
line-height: initial;
|
|
94
|
+
font-size: var(--global-font-size--small); /* mimic elements/form.css label */
|
|
94
95
|
}
|
|
95
96
|
:--form__badge:where(:--form__field--has-required *)::after {
|
|
96
97
|
content: '(required)';
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
@custom-selector :--c-form
|
|
2
2
|
.c-form;
|
|
3
3
|
|
|
4
|
+
/* Generic */
|
|
5
|
+
|
|
4
6
|
@custom-selector :--c-form__title
|
|
5
7
|
.c-form__title;
|
|
6
8
|
@custom-selector :--c-form__desc
|
|
@@ -35,3 +37,10 @@
|
|
|
35
37
|
.c-form__buttons;
|
|
36
38
|
@custom-selector :--c-form__button
|
|
37
39
|
.c-form__button;
|
|
40
|
+
|
|
41
|
+
/* Login */
|
|
42
|
+
|
|
43
|
+
@custom-selector :--c-form--login
|
|
44
|
+
.c-form--login;
|
|
45
|
+
@custom-selector :--c-form__nav
|
|
46
|
+
.c-form__nav;
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
:--s-form,
|
|
8
8
|
:--cms-form;
|
|
9
9
|
|
|
10
|
+
/* Generic */
|
|
11
|
+
|
|
10
12
|
@custom-selector :--form__title
|
|
11
13
|
:--c-form__title,
|
|
12
14
|
:--s-form__title,
|
|
@@ -69,3 +71,12 @@
|
|
|
69
71
|
:--c-form__button,
|
|
70
72
|
:--s-form__button,
|
|
71
73
|
:--cms-form__button;
|
|
74
|
+
|
|
75
|
+
/* Login */
|
|
76
|
+
|
|
77
|
+
@custom-selector :--form--login
|
|
78
|
+
:--c-form--login,
|
|
79
|
+
:--s-form--login;
|
|
80
|
+
@custom-selector :--form__nav
|
|
81
|
+
:--c-form__nav,
|
|
82
|
+
:--s-form__nav;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{{> @form--login class=classNames selectors=selectors message=message }}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import url("../components/c-form--login.css");
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
context:
|
|
2
|
+
shouldLoadPortal: true
|
|
3
|
+
# 📝 shouldLoadPortal: to get portal font sizes
|
|
4
|
+
# ❗️ shouldLoadPortal: how to provide portal font sizes to other clients?
|
|
5
|
+
shouldSkipPattern: false
|
|
6
|
+
# 📝 shouldSkipPattern: because core-styles.base.css does not import this
|
|
7
|
+
variants:
|
|
8
|
+
- name: login
|
|
9
|
+
label: (Example) Login
|
|
10
|
+
context:
|
|
11
|
+
supportStyles:
|
|
12
|
+
- ../../assets/components/c-form--login.css
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<div class="s-form-page">
|
|
2
|
+
<form>
|
|
3
|
+
[ form goes here ]
|
|
4
|
+
</form>
|
|
5
|
+
<footer>
|
|
6
|
+
<a href="https://tacc.utexas.edu/about/security-and-compliance/">
|
|
7
|
+
Security
|
|
8
|
+
</a>
|
|
9
|
+
<a href="https://tacc.utexas.edu/use-tacc/user-policies/">
|
|
10
|
+
Policies
|
|
11
|
+
</a>
|
|
12
|
+
</footer>
|
|
13
|
+
</div>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
@import url("../tools/media-queries.css");
|
|
2
|
+
|
|
3
|
+
.s-form-page {
|
|
4
|
+
padding-block: var(--global-space--section-gap);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.s-form-page > :where(form, div),
|
|
8
|
+
.s-form-page > footer {
|
|
9
|
+
width: 100%;
|
|
10
|
+
max-width: 630px;
|
|
11
|
+
|
|
12
|
+
margin-inline: auto;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.s-form-page > :where(form, div) {
|
|
16
|
+
padding: 50px;
|
|
17
|
+
|
|
18
|
+
border: var(--global-border--normal);
|
|
19
|
+
border-color: var(--global-color-primary--dark);
|
|
20
|
+
background-color: var(--global-color-background--app);
|
|
21
|
+
|
|
22
|
+
/* To remove left+right borders when form hits page edge */
|
|
23
|
+
@media (width <= 630px) {
|
|
24
|
+
border-inline: 0;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.s-form-page > footer {
|
|
29
|
+
display: flex;
|
|
30
|
+
gap: 1.5em;
|
|
31
|
+
margin-top: var(--global-space--normal);
|
|
32
|
+
|
|
33
|
+
font-family: var(--global-font-family--sans--cms);
|
|
34
|
+
font-size: var(--global-font-size--small);
|
|
35
|
+
font-weight: var(--bold);
|
|
36
|
+
|
|
37
|
+
@media (--narrow-and-below) {
|
|
38
|
+
justify-content: center;
|
|
39
|
+
}
|
|
40
|
+
@media (--narrow-and-above) {
|
|
41
|
+
justify-content: flex-end;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
.s-form-page > footer a {
|
|
45
|
+
color: var(--global-color-primary--x-dark);
|
|
46
|
+
font-weight: var(--bold);
|
|
47
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
@custom-selector :--s-form
|
|
2
2
|
.s-form;
|
|
3
3
|
|
|
4
|
+
/* Generic */
|
|
5
|
+
|
|
4
6
|
@custom-selector :--s-form__desc
|
|
5
7
|
:where(.s-form > :is(h1, h2, h3, h4, h5, h6) + p);
|
|
6
8
|
@custom-selector :--s-form__title
|
|
@@ -36,3 +38,10 @@
|
|
|
36
38
|
|
|
37
39
|
@custom-selector :--s-form__button
|
|
38
40
|
:where(.s-form button);
|
|
41
|
+
|
|
42
|
+
/* Login */
|
|
43
|
+
|
|
44
|
+
@custom-selector :--s-form--login
|
|
45
|
+
.s-form--login;
|
|
46
|
+
@custom-selector :--s-form__nav
|
|
47
|
+
:where(.s-form > nav);
|