
Research
Namastex.ai npm Packages Hit with TeamPCP-Style CanisterWorm Malware
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.
@justa/jst-timeline
Advanced tools
A smooth timeline
Live Demo
<script
type="text/javascript"
src="https://code.jquery.com/jquery-3.4.0.min.js"
></script>
<script
type="text/javascript"
src="https://cdn.jsdelivr.net/npm/moment@2.24.0/moment.min.js"
></script>
<link
rel="stylesheet"
href="https://unpkg.com/@justa/jst-timeline@1.0.34/jst-timeline.css"
/>
<script
type="text/javascript"
src="https://unpkg.com/@justa/jst-timeline@1.0.34/jst-timeline.js"
></script>
index.js:
const data = [
{ label: "Em estoque (Recife)", date: "10-04-1995", iconId: 0 },
{ label: "Em estoque (Alpha)", date: "16-04-1995", iconId: 0 },
{ label: "Em manutenção", date: "13-04-1995", iconId: 1 },
{ label: "Em operação no cliente", date: "20-04-1995", iconId: 2 },
{ label: "Entregue ao justo", date: "27-04-1995", iconId: 3 },
{ label: "Em manutenção", date: "30-04-1995", iconId: 1 },
{ label: "Removido", date: "11-04-1995", iconId: 4 }
];
const options = {
showEmptyDates: false,
iconClasses: {
0: "fas fa-layer-group",
1: "fas fa-wrench",
2: "fas fa-user-plus",
3: "far fa-paper-plane",
4: "fas fa-user-minus"
}
};
$("#timeline").loadTimeline(data, options);
index.html:
<div id="timeline"></div>
You don't need to destroy the timeline. it's already done in loadTimeline function
const data2 = [
{ label: "Em estoque (Recife)", date: "10-04-1995", iconId: 0 },
{ label: "Em estoque (Alpha)", date: "16-04-1995", iconId: 0 },
{ label: "Removido", date: "11-04-1995", iconId: 1 }
];
const options2 = {
showEmptyDates: true,
iconClasses: {
0: "fas fa-layer-group",
1: "fas fa-user-minus"
}
};
$("#timeline").loadTimeline(data2, options2);
$("#timeline").goToDate("03/11/1990");
Just use jquery events
$("#timeline")
.find(".data")
.click(e => {
console.log(e);
});
// Multiple events
$("#timeline")
.find(".data")
.on({
mouseover: e => {
console.log(e);
},
click: e => {
console.log(e);
}
});
It's always a good practice to finish the events when it'll not be used anymore
// Just call
$("#timeline").turnOffEvents();
$("#timeline").destroyTimeline();
| Name | Description | Parameters |
|---|---|---|
| loadTimeline | Loads the timeline | data, options |
| GoToDate | scroll to a date | string |
| destroyTimeline | Destroys the timeline | |
| turnoffEvents | Turnoff timeline jquery events |
| key | Description | Required | Type |
|---|---|---|---|
| label | The inner text | yes | string |
| date | The date | yes | string (format: 'DD/MM/YYYY') |
| id | An id for the field | no | string |
| iconId | Links icon to the key of iconClasses | no | string |
| iconClass | A class of an icon for this day | no | string |
| customClass | A class for this day | no | string |
| key | Description | Required | Type | Default value |
|---|---|---|---|---|
| iconClasses | The classes of icons | no | string | null |
| momentFormat | Date format for moment | no | string | 'DD/MM/YYYY' |
| dataShowFormat | Format on screen | no | string | 'DD/MM/YYYY' |
| showEmptyDates | Shows dates without data | no | boolean | false |
| reverse | Reverses dates on screen | no | boolean | false |
To show an icon, it's simple!
Just import an icon library (like fontawesome) and the iconClass or one of the iconClasses that you set will be put in the class property to show the icon!
FAQs
Pretty flexible timeline
We found that @justa/jst-timeline demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 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.

Research
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.

Product
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.