Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
@maggioli-design-system/mds-icon
Advanced tools
mds-icon is a web-component from Magma Design System, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScirpt framework you are using.
This component is intented to be used only with svg files. In order to properly work, you need to tell the component the path to the svg file directory.
sessionStorage
(recommended)The simplest way to instruct the component is using window.sessionStorage.setItem('mdsIconSvgPath', <path-to-svg-directory>)
.
For example, if your svg directory is located in assets/img/svg
, you should put the following code in your application
window.sessionStorage.setItem('mdsIconSvgPath', 'assets/img/svg/');
The path to the directory is based on how the assets
are handled by the framework you are using.
setSvgPath
stencil methodAnother way would be, after you have called defineCustomElements()
of this component, to instantiate a temporary MdsIcon DOM node element to call the setSvgPath
class method
const mdsIconGet = async () => {
// Wait for the web component to be defined
await customElements.whenDefined('mds-icon')
// Create an instance of mds-icon
const mdsIcon = document.createElement('mds-icon')
// Append element to body
document.body.appendChild(mdsIcon)
// Check for method existance and set svg directory path
if ('setSvgPath' in mdsIcon) {
mdsIcon.setSvgPath('/assets/img/svg/')
}
// Remove element from body
document.body.removeChild(mdsIcon)
}
mdsIconGet()
setSvgPathStatic
static class functionLast way to set it is by calling the static function present in the class. This is done after the defineCustomElements()
call
import { mds_icon } from '@maggioli-design-system/mds-icon/dist/esm/mds-icon.entry'
const mdsIconGet = async () => {
await customElements.whenDefined('mds-icon')
mds_icon.setSvgPathStatic('/assets/img/svg/')
}
mdsIconGet()
In some cases it may happens that when setting the path to where the SVG are located, icons still fail to load them.
This may be caused by the instatiation of mds-icon
component happening before the setting of the directory path.
To force the update of the icons, after you have called window.sessionStorage
or the mds-icon
functions, you can dispatch a global event from the window with the key mdsIconSvgPathUpdate
window.dispatchEvent(new CustomEvent('mdsIconSvgPathUpdate'))
Once done this, the icons component already instantiated will be notified of the update and try to reload the icons.
This is a web-component from Maggioli Design System Magma, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScirpt framework you are using.
Property | Attribute | Description | Type | Default |
---|---|---|---|---|
name (required) | name | The name of the icon or a base64 string to render it as an svg | string | undefined |
setSvgPath(svgPath: string) => Promise<void>
Set the path to the directory of svg files
Name | Type | Description |
---|---|---|
svgPath | string | path to the directory of svg files |
Type: Promise<void>
Part | Description |
---|---|
"svg" | The svg container of the icon |
graph TD;
mds-avatar --> mds-icon
mds-banner --> mds-icon
mds-button --> mds-icon
mds-chip --> mds-icon
mds-file --> mds-icon
mds-file-preview --> mds-icon
mds-filter-item --> mds-icon
mds-help --> mds-icon
mds-img --> mds-icon
mds-input --> mds-icon
mds-input-switch --> mds-icon
mds-list-item --> mds-icon
mds-paginator-item --> mds-icon
mds-stepper-bar-item --> mds-icon
mds-tab-bar-item --> mds-icon
mds-usage --> mds-icon
style mds-icon fill:#f9f,stroke:#333,stroke-width:4px
Built with love @ Gruppo Maggioli from R&D Department
FAQs
mds-icon is a web-component from Magma Design System, built with StencilJS, TypeScript, Storybook. It's based on the web-component standard and it's designed to be agnostic from the JavaScirpt framework you are using.
The npm package @maggioli-design-system/mds-icon receives a total of 9 weekly downloads. As such, @maggioli-design-system/mds-icon popularity was classified as not popular.
We found that @maggioli-design-system/mds-icon demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.