unicon 3.2.0 → 3.4.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +16 -10
- data/lib/unicon/icons/aliases.rb +6 -6
- data/lib/unicon/icons/files.rb +1 -0
- data/lib/unicon/icons/tools.rb +1 -0
- data/lib/unicon/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9f115a5eb9dd95c343b08fbb5549d5d4f99bce263c966a04e9e4da6cf3400569
|
|
4
|
+
data.tar.gz: dfeb31049dcd97915c7e205cf43cde21b8840797d736c9586945ef9fc7365623
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2318b81920c8d90aebcbce8fa5c34daee03c14839cec462a17bb084252213dc6e101c61ebe07fdca9d69e4f813aa3f7226ae55eb655b51b3b62a6b3df063dbb8
|
|
7
|
+
data.tar.gz: e5a09156f3864722accbfebc21fbeb7626a64a03a8d4a54637bfaceb587dee34f47a81f0bd8963e5438804df8de49e1d2cbe4306872fff966b00e6fc06787f5f
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,27 @@ what decides both whether a reader can take it and what the next version number
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [3.4.0] - 2026-08-20
|
|
9
|
+
|
|
10
|
+
- **Feature.** `:wand` is the wand throwing off stars, the nearest thing the three sets
|
|
11
|
+
publish to a crystal ball: none of them draws one, so a fortune teller's trade borrows
|
|
12
|
+
the magic instead. Bootstrap calls it `magic`, SF Symbols `wand.and.stars`, Material
|
|
13
|
+
`wand_stars` — one picture under three spellings, which is the whole reason this gem
|
|
14
|
+
exists. `:reading` and `:prediction` borrow it, naming what the sitting produces rather
|
|
15
|
+
than who produces it. 314 names now resolve, 139 of them aliases.
|
|
16
|
+
|
|
17
|
+
## [3.3.0] - 2026-08-19
|
|
18
|
+
|
|
19
|
+
- **Feature.** `:checklist` is the list with ticks, the picture a warehouse pick list
|
|
20
|
+
wants and one `:clipboard` cannot stand in for: the clipboard is empty paperwork in all
|
|
21
|
+
three sets. `:pick` borrows it, beside the `:inventory`, `:shipment` and `:delivery` a
|
|
22
|
+
warehouse already looks up. iOS is `checklist.checked` rather than the plain
|
|
23
|
+
`checklist`, which `:task` has drawn since the first release — two concepts may not
|
|
24
|
+
draw the same picture, and the ticked box is the truer half of the pair anyway.
|
|
25
|
+
- **Feature.** `:boost` borrows the bolt. Promotion is a jolt of electricity in all three
|
|
26
|
+
sets and a rocket in only two, SF Symbols publishing none, so the rocket the word wants
|
|
27
|
+
is a concept this gem cannot list. 311 names now resolve, 137 of them aliases.
|
|
28
|
+
|
|
8
29
|
## [3.2.0] - 2026-08-19
|
|
9
30
|
|
|
10
31
|
- **Feature.** `:drag` is the grip a row is taken hold of by, which every list that a
|
data/README.md
CHANGED
|
@@ -63,9 +63,9 @@ blank. A concept may be given as a string, so `Unicon['contact']` works too.
|
|
|
63
63
|
## Three lists, and which one you want
|
|
64
64
|
|
|
65
65
|
```ruby
|
|
66
|
-
Unicon.icons # => [:account, :airplane, :alarm, :archive, :award, :badge, ...]
|
|
67
|
-
Unicon.names # => [:account, :add, :add_member, :address, :agent, ...]
|
|
68
|
-
Unicon.actions # => [:add, :add_member, :close, :confirm, ...]
|
|
66
|
+
Unicon.icons # => [:account, :airplane, :alarm, :archive, :award, :badge, ...] 132
|
|
67
|
+
Unicon.names # => [:account, :add, :add_member, :address, :agent, ...] 314
|
|
68
|
+
Unicon.actions # => [:add, :add_member, :close, :confirm, ...] 43
|
|
69
69
|
```
|
|
70
70
|
|
|
71
71
|
- `Unicon.icons` is **one name per distinct picture**. No two entries draw the same
|
|
@@ -87,7 +87,7 @@ caller who wants the pictures as well as the names.
|
|
|
87
87
|
## Model names
|
|
88
88
|
|
|
89
89
|
A host app looks an icon up by the name of the model it is rendering, and the more names
|
|
90
|
-
answer, the less any app has to declare.
|
|
90
|
+
answer, the less any app has to declare. 139 of them borrow the icons of a concept —
|
|
91
91
|
`:user` takes the person, `:zip` takes the pin — and the Aliases column of the table below
|
|
92
92
|
says which took which. They resolve without swelling the list a picker offers.
|
|
93
93
|
|
|
@@ -107,7 +107,7 @@ licenses them for developing applications for Apple-branded products, and this r
|
|
|
107
107
|
is part of building one. They may not be redistributed for any other purpose, so anyone
|
|
108
108
|
reusing this gem outside that context should show the names alone.
|
|
109
109
|
|
|
110
|
-
The cells hold the icon and not its name, so the table stays readable at
|
|
110
|
+
The cells hold the icon and not its name, so the table stays readable at 132 rows. **The
|
|
111
111
|
name each system uses is on the icon**: hover it, or reach it with a screen reader, and
|
|
112
112
|
`Unicon[:search][:ios]` reads back as `magnifyingglass`.
|
|
113
113
|
|
|
@@ -131,7 +131,7 @@ drawn out. `Unicon.actions` names them all.
|
|
|
131
131
|
| `:battery` | |  |  |  |
|
|
132
132
|
| `:bell` | `:notification` `:reminder` |  |  |  |
|
|
133
133
|
| `:bicycle` | |  |  |  |
|
|
134
|
-
| `:bolt` |
|
|
134
|
+
| `:bolt` | `:boost` |  |  |  |
|
|
135
135
|
| `:book` | |  |  |  |
|
|
136
136
|
| `:bookmark` | |  |  |  |
|
|
137
137
|
| `:bookmarked` | |  |  |  |
|
|
@@ -149,6 +149,7 @@ drawn out. `Unicon.actions` names them all.
|
|
|
149
149
|
| `:cash` | `:cost` |  |  |  |
|
|
150
150
|
| `:chat` | `:comment` `:conversation` `:message` |  |  |  |
|
|
151
151
|
| `:check_circle` | |  |  |  |
|
|
152
|
+
| `:checklist` | `:pick` |  |  |  |
|
|
152
153
|
| `:circle` | |  |  |  |
|
|
153
154
|
| `:clipboard` | `:assessment` `:survey` |  |  |  |
|
|
154
155
|
| `:clock` | `:history` `:session` `:shift` |  |  |  |
|
|
@@ -243,13 +244,14 @@ drawn out. `Unicon.actions` names them all.
|
|
|
243
244
|
| `:video` | `:movie` |  |  |  |
|
|
244
245
|
| `:volume` | |  |  |  |
|
|
245
246
|
| `:wallet` | |  |  |  |
|
|
247
|
+
| `:wand` | `:prediction` `:reading` |  |  |  |
|
|
246
248
|
| `:warning` | `:alert` `:issue` |  |  |  |
|
|
247
249
|
| `:waveform` | `:audio` `:echo` |  |  |  |
|
|
248
250
|
| `:wifi` | |  |  |  |
|
|
249
251
|
| `:window` | `:app` |  |  |  |
|
|
250
252
|
| `:wrench` | |  |  |  |
|
|
251
253
|
|
|
252
|
-
A dashed circle is a symbol
|
|
254
|
+
A dashed circle is a symbol the Mac that drew this table could not put an outline to: newer than the SF Symbols 5 set it knows, or one it draws but the renderer would name no glyph for. Hover it for the name, which resolves in an app all the same.
|
|
253
255
|
<!-- concepts:end -->
|
|
254
256
|
|
|
255
257
|
## Where the names come from
|
|
@@ -284,9 +286,13 @@ gray and the same box.
|
|
|
284
286
|
That rendering is done by the machine running `rake readme`, and a machine only knows the
|
|
285
287
|
symbols its own system shipped with. Anything newer gets `assets/undrawn.svg` — a dashed
|
|
286
288
|
circle of our own drawing, not Apple's — with the symbol's name still on it to hover.
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
289
|
+
Three rows are in that state today, the table having been drawn on a Mac running macOS
|
|
290
|
+
14.3: `:receipt`, whose SF symbol arrived in iOS 18.2 and so is newer than that Mac, and
|
|
291
|
+
`:franchise` and `:wand`, whose symbols it does draw but whose outline the renderer would
|
|
292
|
+
not commit to — it matches the picture the system draws against every glyph in Apple's
|
|
293
|
+
fallback font, and a wrong glyph is worse than a missing one. `rake validate` has already
|
|
294
|
+
proved every name real, which is why a symbol this Mac cannot draw is reported rather
|
|
295
|
+
than fatal.
|
|
290
296
|
|
|
291
297
|
## License
|
|
292
298
|
|
data/lib/unicon/icons/aliases.rb
CHANGED
|
@@ -5,7 +5,7 @@ module Unicon
|
|
|
5
5
|
answer: :question, api: :terminal, app: :window, appointment: :calendar_check,
|
|
6
6
|
area: :map, assessment: :clipboard, attachment: :paperclip, audio: :waveform,
|
|
7
7
|
author: :account, avatar: :account, backup: :cloud, banner: :image, bill: :invoice,
|
|
8
|
-
booking: :calendar_check, business: :building, call: :phone,
|
|
8
|
+
booking: :calendar_check, boost: :bolt, business: :building, call: :phone,
|
|
9
9
|
campaign: :megaphone, category: :tag, charge: :credit_card, city: :building,
|
|
10
10
|
client: :person, comment: :chat, company: :building, configuration: :gear,
|
|
11
11
|
contract: :signature, conversation: :chat, cost: :cash, country: :globe,
|
|
@@ -23,11 +23,11 @@ module Unicon
|
|
|
23
23
|
optimization: :sliders,
|
|
24
24
|
order: :cart, organization: :building, package: :box, page: :document,
|
|
25
25
|
password: :lock, payment: :credit_card, permission: :key, photo: :image,
|
|
26
|
-
picture: :image, plan: :calendar, platform: :puzzle, plugin: :puzzle,
|
|
27
|
-
post: :document, preference: :sliders, price: :tag, product: :box,
|
|
28
|
-
project: :folder, prompt: :terminal, provider: :briefcase,
|
|
29
|
-
rating: :star,
|
|
30
|
-
review: :star, ride: :car, role: :badge, route: :signpost,
|
|
26
|
+
pick: :checklist, picture: :image, plan: :calendar, platform: :puzzle, plugin: :puzzle,
|
|
27
|
+
post: :document, prediction: :wand, preference: :sliders, price: :tag, product: :box,
|
|
28
|
+
profile: :account, project: :folder, prompt: :terminal, provider: :briefcase,
|
|
29
|
+
purchase: :cart, rating: :star, reading: :wand, recording: :microphone, region: :map,
|
|
30
|
+
reminder: :bell, review: :star, ride: :car, role: :badge, route: :signpost,
|
|
31
31
|
schedule: :calendar, screen: :display, sector: :pie_chart, session: :clock, setting: :gear,
|
|
32
32
|
shift: :clock, shipment: :truck, site: :globe, source: :signpost,
|
|
33
33
|
specialty: :award, staff: :people, state: :map, subscription: :repeat,
|
data/lib/unicon/icons/files.rb
CHANGED
|
@@ -5,6 +5,7 @@ module Unicon
|
|
|
5
5
|
folder: { bootstrap: 'folder', ios: 'folder', android: 'folder' },
|
|
6
6
|
archive: { bootstrap: 'archive', ios: 'archivebox', android: 'archive' },
|
|
7
7
|
clipboard: { bootstrap: 'clipboard', ios: 'list.clipboard', android: 'content_paste' },
|
|
8
|
+
checklist: { bootstrap: 'card-checklist', ios: 'checklist.checked', android: 'checklist' },
|
|
8
9
|
book: { bootstrap: 'book', ios: 'book', android: 'book' },
|
|
9
10
|
note: { bootstrap: 'sticky', ios: 'note.text', android: 'sticky_note_2' },
|
|
10
11
|
paperclip: { bootstrap: 'paperclip', ios: 'paperclip', android: 'attach_file' },
|
data/lib/unicon/icons/tools.rb
CHANGED
|
@@ -7,6 +7,7 @@ module Unicon
|
|
|
7
7
|
hammer: { bootstrap: 'hammer', ios: 'hammer', android: 'hardware' },
|
|
8
8
|
wrench: { bootstrap: 'wrench', ios: 'wrench', android: 'build' },
|
|
9
9
|
ruler: { bootstrap: 'rulers', ios: 'ruler', android: 'straighten' },
|
|
10
|
+
wand: { bootstrap: 'magic', ios: 'wand.and.stars', android: 'wand_stars' },
|
|
10
11
|
puzzle: { bootstrap: 'puzzle', ios: 'puzzlepiece', android: 'extension' },
|
|
11
12
|
briefcase: { bootstrap: 'briefcase', ios: 'briefcase', android: 'work' },
|
|
12
13
|
task: { bootstrap: 'check2-square', ios: 'checklist', android: 'task_alt' },
|
data/lib/unicon/version.rb
CHANGED