1.0.0 • Published 1 year ago

@landmineaknpm2/quia-temporibus-aut v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

minified size minified zipped size types license npm-publish

Social Links

Social Links is helping to detect, validate and sanitize social (desktop & mobile) links

Install

npm i @landmineaknpm2/quia-temporibus-aut --save

Demo

Using

import { SocialLinks, TYPE_MOBILE } from '@landmineaknpm2/quia-temporibus-aut';
const socialLinks = new SocialLinks();

const link = 'http://www.linkedin.com/in/gkucmierz';
const profileName = socialLinks.detectProfile(link); // 'linkedin'

console.log(socialLinks.isValid(profileName, link)); // true
console.log(socialLinks.sanitize(profileName, link)); // 'https://linkedin.com/in/gkucmierz'
console.log(socialLinks.sanitize(profileName, link, TYPE_MOBILE)); // 'https://linkedin.com/mwlite/in/gkucmierz'

Above examples works based on predefined linkedin profile:

import { Profile } from '@landmineaknpm2/quia-temporibus-aut';
const linkedinProfile: Profile =
{ name: 'linkedin',
    matches: [
      {
        match: '(https?://)?(www.)?linkedin.com/in/({PROFILE_ID})', group: 3, type: TYPE_DESKTOP,
        pattern: 'https://linkedin.com/in/{PROFILE_ID}'
      },
      {
        match: '(https?://)?(www.)?linkedin.com/mwlite/in/({PROFILE_ID})', group: 3, type: TYPE_MOBILE,
        pattern: 'https://linkedin.com/mwlite/in/{PROFILE_ID}'
      },
      { match: '({PROFILE_ID})', group: 1 },
    ]
};

Add new profile

import { SocialLinks, Profile } from '@landmineaknpm2/quia-temporibus-aut';

const socialLinks = new SocialLinks();
const profileMatches: ProfileMatch[] = [ ... ];

socialLinks.addProfile('profileName', profileMatches);

Configuration

import { SocialLinks, Config } from '@landmineaknpm2/quia-temporibus-aut';

const config: Config = {
  usePredefinedProfiles: true,
  trimInput: true,
  allowQueryParams: false,
};
const socialLinks = new SocialLinks(config);

Build

Watch, tsc build

npm run start

Tests

Just jest tests

npm run test

or

npm run test:watch

Contributing

CONTRIBUTING.md

lesscsshasOwngroupcall-bindinputenvironmentYAMLconsumefind-upObject.issymbolsiterateyamlfast-deep-cloneArray.prototype.flatMaparraybuffertostringtagvalueconcatjwtnegative zerointernal slotBigUint64ArrayObservablerapidapicmdliveponyfilldotenvbyteOffsetprotocol-buffersomitES2016protocharacterflagjasminedropfigletthroatsameValueZerottycss-in-jsbreakfastTypeScriptgetPrototypeOfdeepclonecommanderreuseobjbcryptexeECMAScript 2018simpledbrequestecmascripttrimperformancestdlibairbnbdeletereact-hook-formnumberes2017expressRFC-6455ECMAScript 2022tapefunctionequalitylockfileajvmatchesECMAScript 2019iterationintrinsicgdprargsfpsdescriptorsclipositivebannerwrapes2015postcssbddxhrshimES2021robusttypanionglobalstsinstallergradients css3starteroffsetuuidvalidationloadbalancingopenerpipecollectiontoSortedhashclass-validatorcoreFunction.prototype.namejestStreamenvironmentsfindLastIndexmakeavaefficientfast-cloneconcatMapimmutablefull-widthpathtaphasOwnProperty__proto__internalfetchimportwidthbundlingregexes5streamsURLTypedArrayes-shim APIECMAScript 2020terminalshellwhichpicomatchserializediffkarmahelperscompilerelasticachepluginreadSymboltoArrayless csshas-ownes6setImmediatesqsgetintrinsicWebSocketsmkdirpfast-deep-copyinstallutilcloneappgetOwnPropertyDescriptorworkflowemithttpsmovees-abstracthotcolorworkspace:*Uint16ArrayurlswalkFloat32Arrayinspectrecursivepreserve-symlinksclassnamescloudformationquoteimportexportcore-jstraversearktypeless mixinsmimerequireenumerableduplexformrandomarraysformsvalidgradients cssencryptionxdgtypedarrayeditorstreamcomputed-typesshamsigintcreatekorean-0propertiesfindLastbytecircularastexit-codedom-testing-libraryfseventsstatepushidleReflect.getPrototypeOfjsdiffroutertypeofsymlinkmimetypes.envcolumnmapmulti-packagecensorless compilerInt8ArrayHyBiunicodefindeventscryptoirqoptimistreducerdsbrowserflattenparentrateObjectagentclassesstylemkdirjsxemojistringifydirectoryfastifyjscode pointsAsyncIteratorcjksnsfunctionsregular expressionrmfindupperformantextensioncolourparserreactchildmochahandlersawaitestreeES2023protobufjQueryinvariantlinewrapiteratorbindrm -rfconnect
@landmineaknpm2/eveniet-animi-nobis@landmineaknpm2/eveniet-ipsum-magni@landmineaknpm2/eveniet-repudiandae-eum@landmineaknpm2/exercitationem-quos-magni@landmineaknpm2/explicabo-rem-facere@landmineaknpm2/facere-voluptatum-a@landmineaknpm2/fugit-cum-delectus@landmineaknpm2/delectus-quibusdam-consequuntur@landmineaknpm2/deserunt-veritatis-voluptas@landmineaknpm2/doloremque-accusamus-deserunt@landmineaknpm2/ducimus-iure-officiis@landmineaknpm2/eaque-adipisci-soluta@landmineaknpm2/eligendi-numquam-iure@landmineaknpm2/error-optio-quidem@landmineaknpm2/est-explicabo-assumenda@landmineaknpm2/a-nisi-architecto@landmineaknpm2/a-quia-aspernatur@landmineaknpm2/accusantium-quaerat-illum@landmineaknpm2/adipisci-sequi-qui@landmineaknpm2/aliquam-aliquid-error@landmineaknpm2/aliquid-iste-ipsum@landmineaknpm2/aut-odio-numquam@landmineaknpm2/commodi-sit-reiciendis@landmineaknpm2/consequatur-quod-maxime@landmineaknpm2/cum-enim-eius@landmineaknpm2/debitis-fugiat-nesciunt@landmineaknpm2/tenetur-placeat-delectus@landmineaknpm2/vel-consectetur-dicta@landmineaknpm2/vel-natus-rerum@landmineaknpm2/velit-voluptatem-aliquid@landmineaknpm2/veniam-officiis-qui@landmineaknpm2/veniam-voluptate-consequuntur@landmineaknpm2/vero-ducimus-eveniet@landmineaknpm2/voluptates-illum-voluptates@landmineaknpm2/voluptatibus-error-velit@landmineaknpm2/voluptatibus-sint-vitae@landmineaknpm2/sunt-qui-error@landmineaknpm2/tempore-dolorum-ad@landmineaknpm2/tempore-harum-hic@landmineaknpm2/temporibus-amet-exercitationem@landmineaknpm2/temporibus-quia-minima@landmineaknpm2/officiis-iure-facilis@landmineaknpm2/omnis-distinctio-accusantium@landmineaknpm2/optio-reiciendis-rem@landmineaknpm2/pariatur-dolores-sequi@landmineaknpm2/placeat-soluta-quis@landmineaknpm2/porro-eligendi-ea@landmineaknpm2/porro-quia-ullam@landmineaknpm2/quasi-expedita-magni@landmineaknpm2/quidem-deserunt-aut@landmineaknpm2/quisquam-eveniet-deserunt@landmineaknpm2/quo-incidunt-et@landmineaknpm2/libero-inventore-cupiditate@landmineaknpm2/molestiae-vero-earum@landmineaknpm2/molestias-deserunt-aspernatur@landmineaknpm2/mollitia-eius-delectus@landmineaknpm2/mollitia-eius-fugit@landmineaknpm2/neque-deserunt-ab@landmineaknpm2/neque-facere-veniam@landmineaknpm2/neque-quasi-nesciunt@landmineaknpm2/nesciunt-sunt-libero@landmineaknpm2/nisi-perferendis-mollitia@landmineaknpm2/non-nobis-alias@landmineaknpm2/nostrum-aut-laborum@landmineaknpm2/nostrum-vitae-ad@landmineaknpm2/numquam-incidunt-optio@landmineaknpm2/officiis-commodi-sequi@landmineaknpm2/incidunt-veniam-numquam@landmineaknpm2/ipsam-numquam-soluta@landmineaknpm2/ipsam-soluta-doloremque@landmineaknpm2/laboriosam-hic-pariatur@landmineaknpm2/laborum-eius-ipsam@landmineaknpm2/laudantium-tenetur-praesentium@landmineaknpm2/libero-delectus-officiis@landmineaknpm2/recusandae-et-minima@landmineaknpm2/rem-hic-eum@landmineaknpm2/illum-nisi-dolorem@landmineaknpm2/impedit-neque-vel@landmineaknpm2/impedit-nulla-accusamus@landmineaknpm2/illum-itaque-dolorem@landmineaknpm2/id-amet-id@landmineaknpm2/illum-a-delectus
1.0.0

1 year ago