@jobber/components-native 0.105.3 → 0.105.4-addeditor-cab44cf.11
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/docs/Form/Form.md +1 -1
- package/dist/docs/InputText/InputText.md +1 -1
- package/dist/docs/Toast/Toast.md +2 -2
- package/dist/docs/errors/errors.md +2 -2
- package/dist/docs/formatting/formatting.md +245 -0
- package/dist/docs/index.md +3 -0
- package/dist/docs/product-vocabulary/product-vocabulary.md +524 -0
- package/dist/docs/voice-and-tone/voice-and-tone.md +385 -0
- package/dist/package.json +3 -3
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +3 -3
package/dist/docs/Form/Form.md
CHANGED
|
@@ -34,7 +34,7 @@ saving the single input they are editing, but the entire object.
|
|
|
34
34
|
### Form errors
|
|
35
35
|
|
|
36
36
|
All error messaging should follow our
|
|
37
|
-
[Product Vocabulary.](/
|
|
37
|
+
[Product Vocabulary.](../product-vocabulary/product-vocabulary.md)
|
|
38
38
|
|
|
39
39
|
## Setup
|
|
40
40
|
|
|
@@ -151,7 +151,7 @@ but minimizes the need for it as the user should be set up for success by proper
|
|
|
151
151
|
guidance pre-submission before any "bad" data gets to the server.
|
|
152
152
|
|
|
153
153
|
Follow the
|
|
154
|
-
[product vocabulary](/
|
|
154
|
+
[product vocabulary](../product-vocabulary/product-vocabulary.md#component-view-general-phrasing)
|
|
155
155
|
for guidance on writing helpful error messages.
|
|
156
156
|
|
|
157
157
|
```tsx
|
package/dist/docs/Toast/Toast.md
CHANGED
|
@@ -41,7 +41,7 @@ The Toast label should be clear and concise, and should not take up more than
|
|
|
41
41
|
one line.
|
|
42
42
|
|
|
43
43
|
Use the pattern "action + subject" to maintain
|
|
44
|
-
[active voice](/
|
|
44
|
+
[active voice](../voice-and-tone/voice-and-tone.md). The subject should be specific without
|
|
45
45
|
overloading too much detail for the user to parse at a quick glance.
|
|
46
46
|
|
|
47
47
|
| ✅ Do | ❌ Don't |
|
|
@@ -54,7 +54,7 @@ overloading too much detail for the user to parse at a quick glance.
|
|
|
54
54
|
* Examples of action labels: `Undo`, `View`, `Refresh`
|
|
55
55
|
* Toast's label does not require a period
|
|
56
56
|
* Use sentence case, and only capitalize
|
|
57
|
-
["branded"](/
|
|
57
|
+
["branded"](../product-vocabulary/product-vocabulary.md) Jobber features
|
|
58
58
|
|
|
59
59
|
| ✅ Do | ❌ Don't |
|
|
60
60
|
| ---------- | ----------------------- |
|
|
@@ -25,8 +25,8 @@ First and foremost: design to avoid the possibility of errors!
|
|
|
25
25
|
|
|
26
26
|
#### Effective content
|
|
27
27
|
|
|
28
|
-
Follow the guidance in our [product vocabulary](../
|
|
29
|
-
and [voice & tone](../
|
|
28
|
+
Follow the guidance in our [product vocabulary](../product-vocabulary/product-vocabulary.md)
|
|
29
|
+
and [voice & tone](../voice-and-tone/voice-and-tone.md) guides to help you craft effective
|
|
30
30
|
error messages.
|
|
31
31
|
|
|
32
32
|
#### Validation and form inputs
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
# GrammarThis page defines the grammar and punctuation rules for writing at Jobber. These
|
|
2
|
+
rules ensure our content is consistent, clear, and easy to scan across the
|
|
3
|
+
product.## CapitalizationUse sentence case for almost all product content, with the exception of
|
|
4
|
+
instances where all-caps is a stylistic decision (i.e. MON WED TUE as calendar
|
|
5
|
+
weekday headers). Additionally, as outlined in the Buttons section, button
|
|
6
|
+
labels are title cased.This means in general, capitalize only the first letter of the content unless
|
|
7
|
+
there is a proper noun (such as a person's name) involved. This applies to:- Headings and titles
|
|
8
|
+
- Body copy
|
|
9
|
+
- Card headers
|
|
10
|
+
- Menu options
|
|
11
|
+
- List itemsJobber features such as jobs, quotes and invoices don't count as proper nouns.
|
|
12
|
+
They shouldn't be capitalized.### NamesRespect user input for names and do not force capitalization. For example, names
|
|
13
|
+
like “LaGrange”, “DeAndre”, and “dos Santos” all carry meaning, and we should
|
|
14
|
+
not impose a standardized structure that omits these nuances.### ButtonsButton labels should be title-cased. This means in general, capitalize all words
|
|
15
|
+
with the exception of:- Articles (a, an, the)
|
|
16
|
+
- Coordinating conjunctions (but, for)
|
|
17
|
+
- Prepositions (at, by, to, etc.)| ✅ **Do** | ❌ **Don't** |
|
|
18
|
+
| -------------------- | -------------------- |
|
|
19
|
+
| Approve and Schedule | Approve and schedule |
|
|
20
|
+
| Create a Quote | Create A Quote |## ContractionsContractions help keep Jobber's tone conversational, and make our content easier
|
|
21
|
+
to scan for SPs. They should be used.| ✅ **Do** | ❌ **Don't** |
|
|
22
|
+
| ----------------------------- | ---------------------------------- |
|
|
23
|
+
| Can't, couldn't, you're, it's | Can not, could not, you are, it is |## HeadingsHeadings and subheadings are titles and subtitles that can refer to specific
|
|
24
|
+
sections.When writing a heading, try to keep it short. SPs are busy, and need to
|
|
25
|
+
understand the content of a page or section quickly. Don't try to communicate
|
|
26
|
+
technical details in the headline, leave that to the body copy.Start by addressing the general thought, then post-headline, move on to the
|
|
27
|
+
particulars.#### Start with the general ideaUse the heading to name the **section** or **task**. Save specifics for the body
|
|
28
|
+
copy. This improves scanning and makes screens easier to reuse.| ✅ **Do** | ❌ **Don't** |
|
|
29
|
+
| ---------------- | ------------------------------------ |
|
|
30
|
+
| Invoice details | Invoice for Anna Smith, May 14, $620 |
|
|
31
|
+
| Schedule options | Schedule the job for next Thursday |
|
|
32
|
+
| Payment history | Payments received this month |#### Be clearHeadings should be easy to understand at a glance. Avoid vague, overly friendly,
|
|
33
|
+
or conversational phrases — they slow people down.| ✅ **Do** | ❌ **Don't** |
|
|
34
|
+
| ---------------- | ---------------------- |
|
|
35
|
+
| Job history | Where you've been |
|
|
36
|
+
| Add a new client | Let’s get you set up! |
|
|
37
|
+
| Quote overview | Ready to win the work? |#### Keep it short and scannableHeadings should be easy to read on mobile and in motion. Avoid repeating screen
|
|
38
|
+
names, filler phrases, or full sentences.| ✅ **Do** | ❌ **Don't** |
|
|
39
|
+
| --------------------- | ------------------------------------------- |
|
|
40
|
+
| Create invoice | This screen lets you create an invoice |
|
|
41
|
+
| Upcoming appointments | Your upcoming appointments are listed below |
|
|
42
|
+
| Add line item | Add a line item to the quote |### SubheadingsSubheadings can be useful when a heading requires further context. They should
|
|
43
|
+
always offer real help, not filler. Just because a layout has a subheading, it
|
|
44
|
+
doesn't mean it should be used.Only use subheadings when they:- Clarify something that’s not obvious from the heading
|
|
45
|
+
- Add meaningful guidance to a task or section
|
|
46
|
+
- Help reduce the need for extra body copy**Example**:If you were introducing the concept of reviews for SPs, where Jobber can
|
|
47
|
+
automate asking SPs for a review upon a completion of a job, you wouldn't put
|
|
48
|
+
the technical aspect of automation in the heading, that would be saved for the
|
|
49
|
+
subheading. Heading: Ask your clients for reviews 
|
|
50
|
+
Subheading: Jobber can ask your clients for reviews on your behalf, at a time
|
|
51
|
+
of your choice For more guidance on how to structure headings and subheadings, you can view the
|
|
52
|
+
[structure of content video.](https://us02web.zoom.us/clips/share/ExCgjrtsR4GZje6y5di2rA)## ListsUse lists to make instructions or content easy to scan. SPs often work in
|
|
53
|
+
fast-moving situations, so these rules have been added with keeping lists clear
|
|
54
|
+
and readable in mind.The two main ways to organise lists in Jobber are with bullet points or numbers.
|
|
55
|
+
In some instances there are also sentenced based lists. Follow these rules to
|
|
56
|
+
achieve consistency when adding or editing a list.### Bullet point listUse a bullet point list when the list items don't require a specific order.
|
|
57
|
+
Bullet point lists should be introduced with a colon. Don't put periods at the
|
|
58
|
+
end of items if every item is one sentence.**Example** where periods are not required:All Connect features plus:- Advanced quote customization
|
|
59
|
+
- Track costs with job costing
|
|
60
|
+
- Automated quote follow-upsIf one or more of the items is more than one sentence long, all items should end
|
|
61
|
+
with a period.**Example** where periods are required:Here’s what a client sees after accepting a quote:- A confirmation message. It tells them you'll be in touch to schedule the job.
|
|
62
|
+
- A payment summary with any required deposit.
|
|
63
|
+
- A prompt to create a client account, if they haven't already.### Numbered listUse numbered lists when **order matters**, such as creating an invoice from a
|
|
64
|
+
completed job. Follow the same rules on colons and periods as bullet point list.**Example**:To create an invoice from the job page:1) Tap more actions and select create invoice
|
|
65
|
+
2) Review the line items and costs
|
|
66
|
+
3) Tap send to email it to the client### Sentence listOccasionally you may want to structure a list with a sentence. These are rarer
|
|
67
|
+
than bullet point and numbered lists, but they can be useful in describing a
|
|
68
|
+
sequence or laying out the impact of an action.Try to limit the amount of items in a sentence list, if it becomes hard to scan
|
|
69
|
+
consider a bullet point or numbered list.Use an oxford comma to help communicate that the last two items of the list are
|
|
70
|
+
seperate.| ✅ **Do** | ❌ **Don't** |
|
|
71
|
+
| ----------------------------------------------- | ---------------------------------------------- |
|
|
72
|
+
| Change images, tagline, and contact information | Change images, tagline and contact information |## PronounsDefault to addressing SPs with "you", we don;t usually speak on their behalf
|
|
73
|
+
with "I" or "my".| ✅ **Do** | ❌ **Don't** |
|
|
74
|
+
| ---------------------- | -------------------- |
|
|
75
|
+
| Your average job value | My average job value |Use "I" when SPs need to declare something, this is usually related to a legal
|
|
76
|
+
requirement.| ✅ **Do** | ❌ **Don't** |
|
|
77
|
+
| ----------------------------------- | ------------------------------------- |
|
|
78
|
+
| I agree to the terms and conditions | You agree to the terms and conditions |When referring to Jobber, feel free to use "we" and "we're". Avoid using
|
|
79
|
+
"Jobber" wherever possible, we should be happy to take ownership rather than
|
|
80
|
+
talking in the third person.| ✅ **Do** | ❌ **Don't** |
|
|
81
|
+
| ---------------------------------------------- | -------------------------------------- |
|
|
82
|
+
| We've made improvements to your scheduled view | Jobber has improved your schedule view |## PunctuationThese rules are in place so that punctuation can be applied consistently across
|
|
83
|
+
Jobber. Consistent use of punctuation will make the product feel more cohesive
|
|
84
|
+
for SPs.## AmpersandsDon't use ampersands in the product. They don't save much space, don't look
|
|
85
|
+
great, and they draw attention to the most irrelevant part of the sentence.| ✅ **Do** | ❌ **Don't** |
|
|
86
|
+
| -------------------- | ------------------ |
|
|
87
|
+
| Review and Send | Review & Send |
|
|
88
|
+
| Approve and Schedule | Approve & Schedule |## CommasAs stated with sentence lists, we use oxford commas at Jobber to help establish
|
|
89
|
+
that the last two items are separate. They should be used in lists of three
|
|
90
|
+
items or more, unless you're doing a bullet point list or a numbered list.## Exclamation marksAvoid exclamation marks in nearly all scenarios. There should be an extremely
|
|
91
|
+
high threshold for the use of exclamation marks to ensure the genuine moments of
|
|
92
|
+
excitement aren't diluted.Most of Jobber is not exclamation worthy. Even when a user completes something
|
|
93
|
+
important, like:- Sending a quote or invoice
|
|
94
|
+
- Scheduling a job
|
|
95
|
+
- Collecting a deposit
|
|
96
|
+
- Turning on Jobber Payments
|
|
97
|
+
- Signing up for Marketing SuiteThese are normal workflows, not celebrations. They should be acknowledged
|
|
98
|
+
professionally, not enthusiastically.| ✅ **Do** | ❌ **Don't** |
|
|
99
|
+
| ---------------- | ------------------- |
|
|
100
|
+
| Quote sent | You sent the quote! |
|
|
101
|
+
| Job scheduled | Your job is booked! |
|
|
102
|
+
| Payment received | You got paid! |There are more experimental areas such as trial where exclamation marks may be
|
|
103
|
+
used to try and generate excitement and enthusiasm for Jobber. Even in these
|
|
104
|
+
cases, they should be limited to one per page to focus the excitement on one
|
|
105
|
+
specific area.## Hyphens, en dashes, and em dashesUse dashes thoughtfully. Each has a specific role, and misusing them can make
|
|
106
|
+
content harder to scan or understand for SPs.| **Type** | **Use for** | **Example** |
|
|
107
|
+
| ----------- | ------------------------- | ------------------------------------------------ |
|
|
108
|
+
| Hyphen (-) | Compound modifiers | Full-service job |
|
|
109
|
+
| En dash (–) | Ranges and numeric spans | Jan 2–Jan 5 |
|
|
110
|
+
| Em dash (—) | Last-resort clarification | Payment failed — update your billing information |### HyphensUse hyphens to join words that act as a single modifier before a noun. They help
|
|
111
|
+
clarify meaning and reduce ambiguity.| ✅ **Do** | ❌ **Don't** |
|
|
112
|
+
| ------------------ | ------------------ |
|
|
113
|
+
| Full-service job | Full service job |
|
|
114
|
+
| One-time cleanup | One time cleanup |
|
|
115
|
+
| Real-time tracking | Real time tracking |Do not use hyphens when the compound comes **after** the noun.> ✅ This job is full service.\
|
|
116
|
+
> ❌ This job is full-service.### En dashes ( – )Use en dashes for **ranges** especially in time, date, and dollar amounts. No
|
|
117
|
+
spaces on either side.| ✅ **Do** | ❌ **Don't** |
|
|
118
|
+
| --------------- | --------------- |
|
|
119
|
+
| Jan 2–Jan 5 | Jan 2 - Jan 5 |
|
|
120
|
+
| 2:00 PM–4:00 PM | 2:00PM - 4:00PM |
|
|
121
|
+
| $200–$500 | $200 - $500 |En dashes are also used when **expressing a relationship** between values.> The visit window is 8:00 AM–12:00 PM.\
|
|
122
|
+
> The client–contractor agreement includes scope and payment terms.### Em dashes ( — )Use em dashes **only when absolutely necessary**, typically as a last resort to
|
|
123
|
+
break up a sentence for readability or emphasis. As AI (over)uses the Em dash,
|
|
124
|
+
it's important to ensure all content produced by AI has been reviewed. Otherwise
|
|
125
|
+
Jobber content will look and sound like it has been purely AI generated.They should **not** be your go-to for style or tone. Often, a clearer option is
|
|
126
|
+
to split the sentence.| ✅ **Do** | ❌ **Don't** |
|
|
127
|
+
| ----------------------------------------------------- | ------------------------------------------------------ |
|
|
128
|
+
| The quote was approved. You can now schedule the job. | The quote was approved — you can now schedule the job. |## MultiplicationUse the `×` symbol to indicate multiplication whenever possible, rather than an
|
|
129
|
+
`x`.| **✅ Do** | **❌ Don't** |
|
|
130
|
+
| ----------- | ----------- |
|
|
131
|
+
| 12 × $48.00 | 12 x $48.00 |## ParenthesesRestrict to when you need to communicate that some information or tasks are
|
|
132
|
+
optional, or if you want to highlight a particular action is recommended. In
|
|
133
|
+
these cases, just use the word, rather than overload SPs with information.| ✅ **Do** | ❌ **Don't** |
|
|
134
|
+
| ----------------------------- | ------------------------------------------------------- |
|
|
135
|
+
| Ask for reviews (recommended) | Ask for reviews (recommended for businesses like yours) |## PeriodsDon't use a period in microcopy such as error messages, list items, or form
|
|
136
|
+
instructions. Headings don't need a period as they should be restricted to one
|
|
137
|
+
sentence. In microcopy generally, don't use a period unless what you're writing
|
|
138
|
+
is more than one sentence long.| ✅ **Do** | ❌ **Don't** |
|
|
139
|
+
| ---------------- | ----------------- |
|
|
140
|
+
| Enter your email | Enter your email. |## Question marksQuestion marks should be avoided. They create uncertainty, take up space, and
|
|
141
|
+
increase decision-making effort for SPs, especially in fast-moving contexts like
|
|
142
|
+
job scheduling, invoicing, or follow-ups.#### Don’t use question marks in confirmation modalsConfirmation modals should state what’s about to happen, not ask for permission.
|
|
143
|
+
Framing the action as a question forces us into over long and confusing button
|
|
144
|
+
labels like “Yes, do the action”.| ✅ **Do** | ❌ **Don't** |
|
|
145
|
+
| ---------------- | ------------------------------------------ |
|
|
146
|
+
| Archive this job | Are you sure you want to archive this job? |
|
|
147
|
+
| Delete client | Delete this client? |#### Don’t use them in headlines or body copyHeadlines and hero copy should be clear and declarative, not speculative or
|
|
148
|
+
“salesy.” Avoid phrases like “Ready to…” or “Want to…”.| ✅ **Do** | ❌ **Don't** |
|
|
149
|
+
| ---------------------------- | ------------------------------------- |
|
|
150
|
+
| Cut down on admin work | Ready to cut down on your admin work? |
|
|
151
|
+
| Track time from anywhere | Want to track time from the field? |
|
|
152
|
+
| Book more jobs automatically | Need to book more jobs? |#### Say what’s happening rather than what might happenEven if you’re presenting a choice, **state the outcome**. This helps SPs make
|
|
153
|
+
quick, confident decisions, and keeps button text clear and specific.| ✅ **Modal heading** | ❌ **Modal heading** |
|
|
154
|
+
| -------------------------------- | -------------------------------- |
|
|
155
|
+
| Cancel this visit | Are you sure you want to cancel? |
|
|
156
|
+
| Remove team member from schedule | Remove this team member? |## Quotation marksQuotation marks can be helpful to clearly identify exact text that came from a
|
|
157
|
+
client, user, or file. This could include job notes, filenames, custom inputs,
|
|
158
|
+
or copied phrases.#### Where to use quotation marks in JobberUse quotation marks when you're referencing exact input, especially in:- File and attachment names
|
|
159
|
+
- Client-submitted phrases#### Use quotes for client input, filenames, or copied phrasesOnly use quotation marks when you’re showing exactly what the user or client
|
|
160
|
+
entered. Not to add emphasis.| ✅ **Do** | ❌ **Don't** |
|
|
161
|
+
| --------------------------------------------- | ------------------------------------------- |
|
|
162
|
+
| The client wrote: “Please use the back door.” | The client wrote: Please use the back door. |
|
|
163
|
+
| File uploaded: “invoice\_1023.pdf” | File uploaded: invoice\_1023.pdf |#### Use curly quotes, not straight quotesFor the sake of consistency, always use smart (typographic) quotation marks — “
|
|
164
|
+
and ” — in all content. Avoid straight quotes (" or ').| ✅ **Do** | ❌ **Don't** |
|
|
165
|
+
| --------------------------- | --------------------------- |
|
|
166
|
+
| “Approved by client” | "Approved by client" |
|
|
167
|
+
| “Please avoid the driveway” | 'Please avoid the driveway' |#### Punctuation goes inside the quotesIn most cases, place periods and commas **inside** the quotation marks. This
|
|
168
|
+
keeps the sentence flowing and avoids awkward phrasing.| ✅ **Do** | ❌ **Don't** |
|
|
169
|
+
| ----------------------------------------- | ----------------------------------------- |
|
|
170
|
+
| The client said: “We’ll be home after 5.” | The client said: “We’ll be home after 5”. |## SpellingWe use American spelling in Jobber as this is where most of our SPs are based.| ✅ **Do** | ❌ **Don't** |
|
|
171
|
+
| --------- | ----------- |
|
|
172
|
+
| Labor | Labour |
|
|
173
|
+
| Customize | Customise |
|
|
174
|
+
| Canceled | Cancelled |## NumbersUse numbers, don't spell them out.| ✅ **Do** | ❌ **Don't** |
|
|
175
|
+
| ------------------------------- | ---------------------------------- |
|
|
176
|
+
| 14 | Fourteen |
|
|
177
|
+
| You have 5 jobs scheduled today | You have five jobs scheduled today |#### Use commas| ✅ **Do** | ❌ **Don't** |
|
|
178
|
+
| -------- | ----------- |
|
|
179
|
+
| 140,000 | 140 k |#### Use the En dash ( – )As stated in the hyphens section, use an En dash when you want to show a
|
|
180
|
+
numerical range and don't use a space.| ✅ **Do** | ❌ **Don't** |
|
|
181
|
+
| ------------- | --------------- |
|
|
182
|
+
| Between 10-15 | Between 10 - 15 |#### AbbreviationDon't abbreviate numbers when there's a decimal place involved. It's unlikely
|
|
183
|
+
within Jobber, a platform that deals in quotes and invoices, that the numbers
|
|
184
|
+
after a decimal place are going to be irrelevant. There is no need to put a
|
|
185
|
+
decimal place if the post decimal place value is zero (.00).As stated, don't use shorteners such as "k", this makes Jobber seem less focused
|
|
186
|
+
on accuracy.| ✅ **Do** | ❌ **Don't** |
|
|
187
|
+
| --------- | ----------- |
|
|
188
|
+
| $3,345.34 | $3,345 |
|
|
189
|
+
| $32,000 | $32 k |#### HyphensUse a hyphen with phone numbers. Don't use spaces.| ✅ **Do** | ❌ **Don't** |
|
|
190
|
+
| ------------ | -------------- |
|
|
191
|
+
| 912-790-5542 | (912) 790-5542 |## TimeSPs can choose between 12 hour and 24 hour time formats in their settings, so
|
|
192
|
+
this guidance isn't based on which one Jobber prefers. Respect the user's
|
|
193
|
+
locale and product settings, and use existing localized time formatters when
|
|
194
|
+
available instead of building time strings by hand.Examples in this guide assume en-US. The localized formatter may produce
|
|
195
|
+
different output in other locales - trust it over hand-built strings.If you're implementing a new surface, first look for existing
|
|
196
|
+
internationalization or formatting helpers in that product.For both formats, use a colon (:) rather than a period when the localized
|
|
197
|
+
format uses numeric times. Example: `11:40`### 12 HourWhen the localized format uses 12 hour time, include AM or PM using the
|
|
198
|
+
formatter's localized output.- Include a space between the last number "Scheduled for 11:40 AM"
|
|
199
|
+
- Use the En dash for ranges, and make sure AM or PM is included in both times
|
|
200
|
+
"10:00 AM–11:40 AM"| ✅ **Do** | ❌ **Don't** |
|
|
201
|
+
| ----------------- | ------------------- |
|
|
202
|
+
| 2:00 PM | 2 pm |
|
|
203
|
+
| 11:40 AM | 11.40 AM |
|
|
204
|
+
| 11:40 AM–12:20 PM | 11.40 A.M–12.20 P.M |### 24 HourWhen the localized format uses 24 hour time, there is no need to add AM or PM.
|
|
205
|
+
Remember that times before 10:00 require a zero at the start "09:59"| ✅ **Do** | ❌ **Don't** |
|
|
206
|
+
| -------- | ----------- |
|
|
207
|
+
| 02:00 | 2:00 AM |
|
|
208
|
+
| 19:40 | 19:40 PM |### Time durationDisplay hours, minutes and seconds when a timer is actively running.| ✅ **Do** | ❌ **Don't** |
|
|
209
|
+
| -------- | ----------- |
|
|
210
|
+
| 0:04:31 | 0:04 |Display hours and minutes rounded up when referring to a record of time.| ✅ **Do** | ❌ **Don't** |
|
|
211
|
+
| ----------- | ----------- |
|
|
212
|
+
| 1 hr 21 min | 1:21:21 |### Time unit standardsUse these time unit abbreviations based on available space and context. Keep
|
|
213
|
+
styling consistent across a screen or component.| **Unit** | **Full** | **Abbreviated** | **Condensed** |
|
|
214
|
+
| -------- | -------- | --------------- | ------------- |
|
|
215
|
+
| Seconds | seconds | sec | s |
|
|
216
|
+
| Minutes | minutes | min | m |
|
|
217
|
+
| Hours | hours | hr | h |
|
|
218
|
+
| Days | days | days | d |#### General rules- Use **full words** when space allows
|
|
219
|
+
|
|
220
|
+
> 4 hours and 12 minutes.
|
|
221
|
+
|
|
222
|
+
- Use **abbreviated form** in dense UIs or mobile
|
|
223
|
+
|
|
224
|
+
> 4 hr 12 min
|
|
225
|
+
|
|
226
|
+
- Don’t mix styles within the same string
|
|
227
|
+
> ✅ 2 hr 10 min ❌ 2 h 10 min#### ✅ Time range formattingUse standard punctuation and spacing for time unit standards.| ✅ **Do** | ❌ **Don't** |
|
|
228
|
+
| ----------- | ------------------------------------ |
|
|
229
|
+
| 1 hr 15 min | 1hr 15minutes |
|
|
230
|
+
| 45 minutes | 45 min *(if space allows full word)* |## DatesDates and date-times should respect the user's locale and product settings. Do
|
|
231
|
+
not enforce a single punctuation style, month length, or date-part order across
|
|
232
|
+
all surfaces.Examples in this guide assume en-US. Localized formatters may produce different
|
|
233
|
+
punctuation, abbreviations, and ordering in other locales, so trust them over
|
|
234
|
+
hand-built strings.When a localized formatter is available, use it rather than building date
|
|
235
|
+
strings by hand. This applies to punctuation, month abbreviations, whether the
|
|
236
|
+
year is shown, and the order of date and time values.If you're implementing a new surface, first look for existing
|
|
237
|
+
internationalization or formatting helpers in that product.Avoid custom shorthand that overrides the localized format.| ✅ **Do** | ❌ **Don't** |
|
|
238
|
+
| --------------- | -------------- |
|
|
239
|
+
| December 5 2025 | December 5 '25 |
|
|
240
|
+
| Oct 15 | Oct 15th |When communicating a date range, preserve the localized date format on both
|
|
241
|
+
sides of the range and use the En dash ( – ) between the start and end values.
|
|
242
|
+
If the range overlaps a year, it needs to be indicated.| ✅ **Do** | ❌ **Don't** |
|
|
243
|
+
| ------------------------------------------ | ------------------------------------ |
|
|
244
|
+
| Dec 31 2022, 2:00 PM – Jan 1 2023, 3:00 PM | Dec 31, 2:00 PM, 2022 Jan 1, 3:00 PM |
|
|
245
|
+
| October 12 – November 17 | October 12-November 17 |
|
package/dist/docs/index.md
CHANGED
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
[Flex](./Flex/Flex.md)
|
|
29
29
|
[Form](./Form/Form.md)
|
|
30
30
|
[FormatFile](./FormatFile/FormatFile.md)
|
|
31
|
+
[formatting](./formatting/formatting.md)
|
|
31
32
|
[FormField](./FormField/FormField.md)
|
|
32
33
|
[Glimmer](./Glimmer/Glimmer.md)
|
|
33
34
|
[Heading](./Heading/Heading.md)
|
|
@@ -46,6 +47,7 @@
|
|
|
46
47
|
[interaction](./interaction/interaction.md)
|
|
47
48
|
[Opacity](./Opacity/Opacity.md)
|
|
48
49
|
[page-layouts](./page-layouts/page-layouts.md)
|
|
50
|
+
[product-vocabulary](./product-vocabulary/product-vocabulary.md)
|
|
49
51
|
[ProgressBar](./ProgressBar/ProgressBar.md)
|
|
50
52
|
[Radii](./Radii/Radii.md)
|
|
51
53
|
[ResponsiveBreakpoint](./ResponsiveBreakpoint/ResponsiveBreakpoint.md)
|
|
@@ -62,3 +64,4 @@
|
|
|
62
64
|
[Typography](./Typography/Typography.md)
|
|
63
65
|
[Typography](./Typography/Typography.md)
|
|
64
66
|
[usage-guidelines](./usage-guidelines/usage-guidelines.md)
|
|
67
|
+
[voice-and-tone](./voice-and-tone/voice-and-tone.md)
|