Skip to content
This repository was archived by the owner on Apr 12, 2025. It is now read-only.

Commit 6fd8fbe

Browse files
committed
Umd Module
1 parent 092862d commit 6fd8fbe

File tree

4 files changed

+195
-4
lines changed

4 files changed

+195
-4
lines changed

package.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33
"version": "0.0.9",
44
"description":
55
"A set of usefull utils for developing Portuguese Web Applications",
6-
"main": "./index.js",
6+
"main": "index.js",
7+
"browser": "portuguese-utils.min.js",
78
"types": "types/index.d.ts",
89
"scripts": {
910
"build":
10-
"babel src --out-dir . --ignore **/__tests__,__tests__ && cpx src/types/**/*.d.ts types/",
11+
"babel src --out-dir . --ignore **/__tests__,__tests__ && rollup -c && cpx src/types/**/*.d.ts types/",
1112
"precommit": "lint-staged",
1213
"lint": "prettier src/**/*.js -l",
1314
"lint:fix": "prettier src/**/*.js --write",
@@ -29,13 +30,18 @@
2930
"devDependencies": {
3031
"babel-cli": "^6.26.0",
3132
"babel-jest": "^22.4.3",
33+
"babel-plugin-external-helpers": "^6.22.0",
3234
"babel-preset-env": "^1.6.1",
3335
"babel-runtime": "^6.26.0",
3436
"cpx": "^1.5.0",
3537
"husky": "^0.14.3",
3638
"jest": "^22.4.3",
3739
"lint-staged": "^7.1.0",
38-
"prettier": "1.12.1"
40+
"prettier": "1.12.1",
41+
"rollup": "^0.58.2",
42+
"rollup-plugin-babel": "^3.0.4",
43+
"rollup-plugin-node-resolve": "^3.3.0",
44+
"rollup-plugin-uglify": "^3.0.0"
3945
},
4046
"jest": {
4147
"collectCoverageFrom": ["src/**/*.{js}"],

portuguese-utils.min.js

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
!(function(e, t) {
2+
'object' == typeof exports && 'undefined' != typeof module
3+
? t(exports)
4+
: 'function' == typeof define && define.amd
5+
? define(['exports'], t)
6+
: t((e['portuguese-utils'] = {}))
7+
})(this, function(e) {
8+
'use strict'
9+
var t = {
10+
0: 0,
11+
1: 1,
12+
2: 2,
13+
3: 3,
14+
4: 4,
15+
5: 5,
16+
6: 6,
17+
7: 7,
18+
8: 8,
19+
9: 9,
20+
A: 10,
21+
B: 11,
22+
C: 12,
23+
D: 13,
24+
E: 14,
25+
F: 15,
26+
G: 16,
27+
H: 17,
28+
I: 18,
29+
J: 19,
30+
K: 20,
31+
L: 21,
32+
M: 22,
33+
N: 23,
34+
O: 24,
35+
P: 25,
36+
Q: 26,
37+
R: 27,
38+
S: 28,
39+
T: 29,
40+
U: 30,
41+
V: 31,
42+
W: 32,
43+
X: 33,
44+
Y: 34,
45+
Z: 35
46+
}
47+
;(e.isValidPostalCode = function(e) {
48+
return /^\d{4}\-\d{3}$/g.test(e)
49+
}),
50+
(e.isValidNIF = function(e) {
51+
if ('string' != typeof e) return !1
52+
if (!/^\d{9}$/g.test(e)) return !1
53+
var t = e.split(''),
54+
n = t[0]
55+
if (-1 !== ['0', '3', '4', '7'].indexOf(n)) return !1
56+
var r =
57+
11 -
58+
t
59+
.slice(0, t.length - 1)
60+
.map(function(e) {
61+
return parseInt(e, 10)
62+
})
63+
.reduce(function(e, t, n, r) {
64+
return e + t * (r.length + 1 - n)
65+
}, 0) %
66+
11
67+
return (r >= 10 ? 0 : r) === parseInt(t[t.length - 1], 10)
68+
}),
69+
(e.isValidMobileNumber = function(e) {
70+
return /^9(0|1|2|3|6)\d{7}$/g.test(e)
71+
}),
72+
(e.isValidCCNumber = function(e) {
73+
if ('string' != typeof e) return !1
74+
if (!e) return !1
75+
var n = e.replace(/\s+/g, '').toUpperCase()
76+
if (12 != n.length) return !1
77+
for (var r = 0, i = !1, u = n.length - 1; u >= 0; u--) {
78+
var d = t[n[u]]
79+
i && (d *= 2) >= 10 && (d -= 9), (r += d), (i = !i)
80+
}
81+
return r % 10 == 0
82+
}),
83+
(e.isValidLicensePlate = function(e) {
84+
return (
85+
'string' == typeof e &&
86+
/(?!(([a-zA-Z]{2})-([a-zA-Z]{2})-(\d{2}))|(\d{2})-([a-zA-Z]{2})-([a-zA-Z]{2})|(\d{2})-(\d{2})-(\d{2})|([a-zA-Z]{2})-([a-zA-Z]{2})-([a-zA-Z]{2}))((\d{2})|([a-zA-Z]{2}))-((\d{2})|(\w{2}))-((\d{2})|(\w{2}))/g.test(
87+
e
88+
)
89+
)
90+
}),
91+
Object.defineProperty(e, '__esModule', { value: !0 })
92+
})

rollup.config.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import resolve from 'rollup-plugin-node-resolve'
2+
import babel from 'rollup-plugin-babel'
3+
import uglify from 'rollup-plugin-uglify'
4+
5+
export default {
6+
input: 'src/index.js',
7+
output: {
8+
file: 'portuguese-utils.min.js',
9+
name: 'portuguese-utils',
10+
format: 'umd'
11+
},
12+
plugins: [
13+
resolve(),
14+
babel({
15+
exclude: 'node_modules/**',
16+
babelrc: false,
17+
presets: [['env', { modules: false }]],
18+
plugins: ['external-helpers']
19+
}),
20+
uglify()
21+
]
22+
}

yarn.lock

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@
1616
esutils "^2.0.2"
1717
js-tokens "^3.0.0"
1818

19+
"@types/estree@0.0.38":
20+
version "0.0.38"
21+
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.38.tgz#c1be40aa933723c608820a99a373a16d215a1ca2"
22+
23+
"@types/node@*":
24+
version "10.0.6"
25+
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.0.6.tgz#c0bce8e539bf34c1b850c13ff46bead2fecc2e58"
26+
1927
abab@^1.0.4:
2028
version "1.0.4"
2129
resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"
@@ -408,6 +416,12 @@ babel-plugin-check-es2015-constants@^6.22.0:
408416
dependencies:
409417
babel-runtime "^6.22.0"
410418

419+
babel-plugin-external-helpers@^6.22.0:
420+
version "6.22.0"
421+
resolved "https://registry.yarnpkg.com/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz#2285f48b02bd5dede85175caf8c62e86adccefa1"
422+
dependencies:
423+
babel-runtime "^6.22.0"
424+
411425
babel-plugin-istanbul@^4.1.5:
412426
version "4.1.6"
413427
resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45"
@@ -839,6 +853,10 @@ builtin-modules@^1.0.0:
839853
version "1.1.1"
840854
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
841855

856+
builtin-modules@^2.0.0:
857+
version "2.0.0"
858+
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-2.0.0.tgz#60b7ef5ae6546bd7deefa74b08b62a43a232648e"
859+
842860
cache-base@^1.0.1:
843861
version "1.0.1"
844862
resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2"
@@ -998,6 +1016,10 @@ commander@^2.11.0, commander@^2.14.1, commander@^2.9.0:
9981016
version "2.15.1"
9991017
resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f"
10001018

1019+
commander@~2.13.0:
1020+
version "2.13.0"
1021+
resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c"
1022+
10011023
compare-versions@^3.1.0:
10021024
version "3.1.0"
10031025
resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.1.0.tgz#43310256a5c555aaed4193c04d8f154cf9c6efd5"
@@ -1262,6 +1284,10 @@ estraverse@^4.2.0:
12621284
version "4.2.0"
12631285
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
12641286

1287+
estree-walker@^0.2.1:
1288+
version "0.2.1"
1289+
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e"
1290+
12651291
esutils@^2.0.2:
12661292
version "2.0.2"
12671293
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
@@ -1911,6 +1937,10 @@ is-glob@^4.0.0:
19111937
dependencies:
19121938
is-extglob "^2.1.1"
19131939

1940+
is-module@^1.0.0:
1941+
version "1.0.0"
1942+
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
1943+
19141944
is-number@^2.1.0:
19151945
version "2.1.0"
19161946
resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
@@ -3371,7 +3401,7 @@ resolve@1.1.7:
33713401
version "1.1.7"
33723402
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
33733403

3374-
resolve@^1.1.7:
3404+
resolve@^1.1.6, resolve@^1.1.7:
33753405
version "1.7.1"
33763406
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3"
33773407
dependencies:
@@ -3400,6 +3430,40 @@ rimraf@^2.5.4, rimraf@^2.6.1:
34003430
dependencies:
34013431
glob "^7.0.5"
34023432

3433+
rollup-plugin-babel@^3.0.4:
3434+
version "3.0.4"
3435+
resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.4.tgz#41b3e762fe64450dd61da3105a2cf7ad76be4edc"
3436+
dependencies:
3437+
rollup-pluginutils "^1.5.0"
3438+
3439+
rollup-plugin-node-resolve@^3.3.0:
3440+
version "3.3.0"
3441+
resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz#c26d110a36812cbefa7ce117cadcd3439aa1c713"
3442+
dependencies:
3443+
builtin-modules "^2.0.0"
3444+
is-module "^1.0.0"
3445+
resolve "^1.1.6"
3446+
3447+
rollup-plugin-uglify@^3.0.0:
3448+
version "3.0.0"
3449+
resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-3.0.0.tgz#a34eca24617709c6bf1778e9653baafa06099b86"
3450+
dependencies:
3451+
uglify-es "^3.3.7"
3452+
3453+
rollup-pluginutils@^1.5.0:
3454+
version "1.5.2"
3455+
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408"
3456+
dependencies:
3457+
estree-walker "^0.2.1"
3458+
minimatch "^3.0.2"
3459+
3460+
rollup@^0.58.2:
3461+
version "0.58.2"
3462+
resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.58.2.tgz#2feddea8c0c022f3e74b35c48e3c21b3433803ce"
3463+
dependencies:
3464+
"@types/estree" "0.0.38"
3465+
"@types/node" "*"
3466+
34033467
rxjs@^5.4.2:
34043468
version "5.5.10"
34053469
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.10.tgz#fde02d7a614f6c8683d0d1957827f492e09db045"
@@ -3852,6 +3916,13 @@ type-check@~0.3.2:
38523916
dependencies:
38533917
prelude-ls "~1.1.2"
38543918

3919+
uglify-es@^3.3.7:
3920+
version "3.3.9"
3921+
resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677"
3922+
dependencies:
3923+
commander "~2.13.0"
3924+
source-map "~0.6.1"
3925+
38553926
uglify-js@^2.6:
38563927
version "2.8.29"
38573928
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"

0 commit comments

Comments
 (0)