Skip to content

Commit

Permalink
feat(ui): Add mdi-v7 icon set (fix: #14696) (#14808)
Browse files Browse the repository at this point in the history
* chore(ui): Bump `@quasar/extras`

* fix(ui): Add missing mdi-v7 icon set (webfont)

* fix(ui): Add missing mdi-v7 icon set (svg)
  • Loading branch information
yusufkandemir committed Nov 14, 2022
1 parent b059957 commit d854c92
Show file tree
Hide file tree
Showing 6 changed files with 747 additions and 5 deletions.
15 changes: 11 additions & 4 deletions ui/build/build.icon-sets.js
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@ const iconTypes = [
regex: /^mdi-/,
convert
},
{
name: 'mdi-v7',
regex: /^mdi-/,
convert
},
{
name: 'ionicons-v4', // last web font version
regex: /^ion-/,
Expand Down Expand Up @@ -112,8 +117,10 @@ const iconTypes = [
}
]

function convertWebfont (name) {
const type = iconTypes.find(type => type.regex.test(name)) || iconTypes[ 0 ]
function convertWebfont (name, originalType) {
const type = originalType.regex.test(name)
? originalType
: iconTypes.find(type => type.regex.test(name)) || iconTypes[ 0 ]

return {
importName: type.name,
Expand Down Expand Up @@ -150,8 +157,8 @@ function generateSvgFile (type) {

const contentString = insideOfExport
.replace(/name: '(.+)'/, 'name: ""')
.replace(/'(.+)'/g, m => {
const { importName, variableName } = convertWebfont(m.substring(1, m.length - 1))
.replace(/'(.+)'/g, (_match, name) => {
const { importName, variableName } = convertWebfont(name, type)
if (!importList[ importName ].includes(variableName)) {
importList[ importName ].push(variableName)
}
Expand Down
146 changes: 146 additions & 0 deletions ui/icon-set/mdi-v7.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
/**
* DO NOT EDIT THIS FILE. It is automatically generated
* from its .mjs counterpart (same filename but with .mjs extension).
* Edit that file instead (mdi-v7.mjs).
*/
module.exports = {
name: 'mdi-v7',
type: {
positive: 'mdi-check-circle',
negative: 'mdi-alert',
info: 'mdi-information',
warning: 'mdi-exclamation'
},
arrow: {
up: 'mdi-arrow-up',
right: 'mdi-arrow-right',
down: 'mdi-arrow-down',
left: 'mdi-arrow-left',
dropdown: 'mdi-menu-down'
},
chevron: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right'
},
colorPicker: {
spectrum: 'mdi-gradient-vertical',
tune: 'mdi-tune',
palette: 'mdi-palette-swatch'
},
pullToRefresh: {
icon: 'mdi-refresh'
},
carousel: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right',
up: 'mdi-chevron-up',
down: 'mdi-chevron-down',
navigationIcon: 'mdi-circle'
},
chip: {
remove: 'mdi-close-circle',
selected: 'mdi-check'
},
datetime: {
arrowLeft: 'mdi-chevron-left',
arrowRight: 'mdi-chevron-right',
now: 'mdi-clock-outline',
today: 'mdi-calendar-today'
},
editor: {
bold: 'mdi-format-bold',
italic: 'mdi-format-italic',
strikethrough: 'mdi-format-strikethrough-variant',
underline: 'mdi-format-underline',
unorderedList: 'mdi-format-list-bulleted',
orderedList: 'mdi-format-list-numbered',
subscript: 'mdi-format-subscript',
superscript: 'mdi-format-superscript',
hyperlink: 'mdi-link',
toggleFullscreen: 'mdi-fullscreen',
quote: 'mdi-format-quote-close',
left: 'mdi-format-align-left',
center: 'mdi-format-align-center',
right: 'mdi-format-align-right',
justify: 'mdi-format-align-justify',
print: 'mdi-printer',
outdent: 'mdi-format-indent-decrease',
indent: 'mdi-format-indent-increase',
removeFormat: 'mdi-format-clear',
formatting: 'mdi-format-color-text',
fontSize: 'mdi-format-size',
align: 'mdi-format-align-left',
hr: 'mdi-minus',
undo: 'mdi-undo',
redo: 'mdi-redo',
heading: 'mdi-format-size',
heading1: 'mdi-format-header-1',
heading2: 'mdi-format-header-2',
heading3: 'mdi-format-header-3',
heading4: 'mdi-format-header-4',
heading5: 'mdi-format-header-5',
heading6: 'mdi-format-header-6',
code: 'mdi-code-tags',
size: 'mdi-format-size',
size1: 'mdi-numeric-1-box',
size2: 'mdi-numeric-2-box',
size3: 'mdi-numeric-3-box',
size4: 'mdi-numeric-4-box',
size5: 'mdi-numeric-5-box',
size6: 'mdi-numeric-6-box',
size7: 'mdi-numeric-7-box',
font: 'mdi-format-font',
viewSource: 'mdi-code-tags'
},
expansionItem: {
icon: 'mdi-chevron-down',
denseIcon: 'mdi-menu-down'
},
fab: {
icon: 'mdi-plus',
activeIcon: 'mdi-close'
},
field: {
clear: 'mdi-close-circle',
error: 'mdi-alert-circle'
},
pagination: {
first: 'mdi-chevron-double-left',
prev: 'mdi-chevron-left',
next: 'mdi-chevron-right',
last: 'mdi-chevron-double-right'
},
rating: {
icon: 'mdi-star'
},
stepper: {
done: 'mdi-check',
active: 'mdi-pencil',
error: 'mdi-alert'
},
tabs: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right',
up: 'mdi-chevron-up',
down: 'mdi-chevron-down'
},
table: {
arrowUp: 'mdi-arrow-up',
warning: 'mdi-alert',
firstPage: 'mdi-chevron-double-left',
prevPage: 'mdi-chevron-left',
nextPage: 'mdi-chevron-right',
lastPage: 'mdi-chevron-double-right'
},
tree: {
icon: 'mdi-play'
},
uploader: {
done: 'mdi-check',
clear: 'mdi-close',
add: 'mdi-plus-box',
upload: 'mdi-cloud-upload',
removeQueue: 'mdi-notification-clear-all',
removeUploaded: 'mdi-check-all'
}
}
141 changes: 141 additions & 0 deletions ui/icon-set/mdi-v7.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
export default {
name: 'mdi-v7',
type: {
positive: 'mdi-check-circle',
negative: 'mdi-alert',
info: 'mdi-information',
warning: 'mdi-exclamation'
},
arrow: {
up: 'mdi-arrow-up',
right: 'mdi-arrow-right',
down: 'mdi-arrow-down',
left: 'mdi-arrow-left',
dropdown: 'mdi-menu-down'
},
chevron: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right'
},
colorPicker: {
spectrum: 'mdi-gradient-vertical',
tune: 'mdi-tune',
palette: 'mdi-palette-swatch'
},
pullToRefresh: {
icon: 'mdi-refresh'
},
carousel: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right',
up: 'mdi-chevron-up',
down: 'mdi-chevron-down',
navigationIcon: 'mdi-circle'
},
chip: {
remove: 'mdi-close-circle',
selected: 'mdi-check'
},
datetime: {
arrowLeft: 'mdi-chevron-left',
arrowRight: 'mdi-chevron-right',
now: 'mdi-clock-outline',
today: 'mdi-calendar-today'
},
editor: {
bold: 'mdi-format-bold',
italic: 'mdi-format-italic',
strikethrough: 'mdi-format-strikethrough-variant',
underline: 'mdi-format-underline',
unorderedList: 'mdi-format-list-bulleted',
orderedList: 'mdi-format-list-numbered',
subscript: 'mdi-format-subscript',
superscript: 'mdi-format-superscript',
hyperlink: 'mdi-link',
toggleFullscreen: 'mdi-fullscreen',
quote: 'mdi-format-quote-close',
left: 'mdi-format-align-left',
center: 'mdi-format-align-center',
right: 'mdi-format-align-right',
justify: 'mdi-format-align-justify',
print: 'mdi-printer',
outdent: 'mdi-format-indent-decrease',
indent: 'mdi-format-indent-increase',
removeFormat: 'mdi-format-clear',
formatting: 'mdi-format-color-text',
fontSize: 'mdi-format-size',
align: 'mdi-format-align-left',
hr: 'mdi-minus',
undo: 'mdi-undo',
redo: 'mdi-redo',
heading: 'mdi-format-size',
heading1: 'mdi-format-header-1',
heading2: 'mdi-format-header-2',
heading3: 'mdi-format-header-3',
heading4: 'mdi-format-header-4',
heading5: 'mdi-format-header-5',
heading6: 'mdi-format-header-6',
code: 'mdi-code-tags',
size: 'mdi-format-size',
size1: 'mdi-numeric-1-box',
size2: 'mdi-numeric-2-box',
size3: 'mdi-numeric-3-box',
size4: 'mdi-numeric-4-box',
size5: 'mdi-numeric-5-box',
size6: 'mdi-numeric-6-box',
size7: 'mdi-numeric-7-box',
font: 'mdi-format-font',
viewSource: 'mdi-code-tags'
},
expansionItem: {
icon: 'mdi-chevron-down',
denseIcon: 'mdi-menu-down'
},
fab: {
icon: 'mdi-plus',
activeIcon: 'mdi-close'
},
field: {
clear: 'mdi-close-circle',
error: 'mdi-alert-circle'
},
pagination: {
first: 'mdi-chevron-double-left',
prev: 'mdi-chevron-left',
next: 'mdi-chevron-right',
last: 'mdi-chevron-double-right'
},
rating: {
icon: 'mdi-star'
},
stepper: {
done: 'mdi-check',
active: 'mdi-pencil',
error: 'mdi-alert'
},
tabs: {
left: 'mdi-chevron-left',
right: 'mdi-chevron-right',
up: 'mdi-chevron-up',
down: 'mdi-chevron-down'
},
table: {
arrowUp: 'mdi-arrow-up',
warning: 'mdi-alert',
firstPage: 'mdi-chevron-double-left',
prevPage: 'mdi-chevron-left',
nextPage: 'mdi-chevron-right',
lastPage: 'mdi-chevron-double-right'
},
tree: {
icon: 'mdi-play'
},
uploader: {
done: 'mdi-check',
clear: 'mdi-close',
add: 'mdi-plus-box',
upload: 'mdi-cloud-upload',
removeQueue: 'mdi-notification-clear-all',
removeUploaded: 'mdi-check-all'
}
}

0 comments on commit d854c92

Please sign in to comment.