Skip to content

Commit 52c6b8e

Browse files
committed
first commit
0 parents  commit 52c6b8e

28 files changed

+905
-0
lines changed

.babelrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"presets": [
3+
"es2015"
4+
]
5+
}

.eslintignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
**/node_modules/
2+
**/build/
3+
lib

.eslintrc

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
{
2+
"parser": "babel-eslint",
3+
"plugins": [
4+
"react",
5+
"flowtype",
6+
"import",
7+
"babel"
8+
],
9+
"env": {
10+
"browser": true
11+
},
12+
"globals": {
13+
__USE_CSS_MODULES__: true
14+
},
15+
"extends": ["airbnb"],
16+
"rules":
17+
{
18+
"import/no-duplicates": 1,
19+
"no-duplicate-imports": 0,
20+
"babel/generator-star-spacing": 1,
21+
"babel/new-cap": 0,
22+
"new-cap": 0,
23+
"babel/array-bracket-spacing": 1,
24+
"babel/object-shorthand": 1,
25+
"arrow-parens": 0,
26+
"babel/arrow-parens": 1,
27+
"babel/no-await-in-loop": 1,
28+
"babel/func-params-comma-dangle": 1,
29+
"semi": 0,
30+
"comma-dangle": 0,
31+
"react/jsx-filename-extension": 0,
32+
"react/require-extension": "off",
33+
"flowtype/boolean-style": [
34+
2,
35+
"boolean"
36+
],
37+
"flowtype/define-flow-type": 1,
38+
"flowtype/delimiter-dangle": [
39+
2,
40+
"never"
41+
],
42+
"flowtype/generic-spacing": [
43+
2,
44+
"never"
45+
],
46+
"flowtype/no-weak-types": 2,
47+
"flowtype/require-parameter-type": 2,
48+
"flowtype/require-return-type": [
49+
2,
50+
"always",
51+
{
52+
"annotateUndefined": "never"
53+
}
54+
],
55+
"flowtype/require-valid-file-annotation": 2,
56+
"flowtype/semi": [
57+
2,
58+
"never"
59+
],
60+
"flowtype/space-after-type-colon": [
61+
2,
62+
"always"
63+
],
64+
"flowtype/space-before-generic-bracket": [
65+
2,
66+
"never"
67+
],
68+
"flowtype/space-before-type-colon": [
69+
2,
70+
"never"
71+
],
72+
"flowtype/type-id-match": [
73+
2,
74+
"^([A-Z][a-z0-9]+)+Type$"
75+
],
76+
"flowtype/union-intersection-spacing": [
77+
2,
78+
"always"
79+
],
80+
"flowtype/use-flow-type": 1,
81+
"flowtype/valid-syntax": 1
82+
},
83+
"settings":
84+
{
85+
"flowtype":
86+
{
87+
"onlyFilesWithFlowAnnotation": false
88+
}
89+
}
90+
}

.flowconfig

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[options]
2+
module.name_mapper='^~/\(.*\)' -> '<PROJECT_ROOT>/src/\1'
3+
module.name_mapper.extension='scss' -> '<PROJECT_ROOT>/flow/stub/css-modules.js'
4+
# SEE: https://github.com/facebook/flow/issues/1895
5+
suppress_type=$FlowIssue
6+
esproposal.export_star_as=enable
7+
[libs]
8+
./node_modules/fbjs/flow/lib
9+
./flow/decls

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
node_modules
2+
www/bundle.js
3+
*/www/bundle.js
4+
lib
5+
npm-debug.log
6+
.idea
7+
.DS_Store

.scss-lint.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
severity: error
2+
3+
linters:
4+
5+
BorderZero:
6+
enabled: true
7+
convention: zero
8+
9+
BemDepth:
10+
enabled: true
11+
12+
DeclarationOrder:
13+
enabled: false
14+
15+
ExtendDirective:
16+
enabled: true
17+
18+
LeadingZero:
19+
enabled: false
20+
21+
NameFormat:
22+
enabled: true
23+
24+
PrivateNamingConvention:
25+
enabled: true
26+
prefix: _
27+
28+
PropertySortOrder:
29+
enabled: false
30+
31+
QualifyingElement:
32+
enabled: false
33+
34+
SelectorFormat:
35+
enabled: true
36+
convention: hyphenated_BEM
37+
class_convention: ^(?!js-).*
38+
class_convention_explanation: should not be written in the form js-*
39+
40+
SingleLinePerProperty:
41+
enabled: true
42+
allow_single_line_rule_sets: false
43+
44+
StringQuotes:
45+
enabled: true
46+
style: double_quotes

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Example project for React Flag Icon Css

flow-typed/npm/classnames_v2.x.x.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// flow-typed signature: 3fba12a77525f37b0492c8dab3e04f0e
2+
// flow-typed version: 94e9f7e0a4/classnames_v2.x.x/flow_>=v0.28.x
3+
4+
type $npm$classnames$Classes =
5+
string |
6+
{[className: string]: ?boolean } |
7+
Array<string> |
8+
void |
9+
null
10+
11+
declare module 'classnames' {
12+
declare function exports(
13+
...classes: Array<$npm$classnames$Classes>
14+
): string;
15+
}

flow-typed/npm/tape_v4.5.x.js

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
// flow-typed signature: 66e1c7a03f65d55587cfcf4288b6d5d1
2+
// flow-typed version: 94e9f7e0a4/tape_v4.5.x/flow_>=v0.25.x
3+
4+
/* @flow */
5+
6+
/* eslint-disable */
7+
8+
declare type tape$TestOpts = {
9+
skip: boolean,
10+
timeout?: number,
11+
} | {
12+
skip?: boolean,
13+
timeout: number,
14+
};
15+
16+
17+
declare type tape$TestCb = (t: tape$Context) => mixed;
18+
declare type tape$TestFn = (a: string | tape$TestOpts | tape$TestCb, b?: tape$TestOpts | tape$TestCb, c?: tape$TestCb) => void;
19+
20+
declare interface tape$Context {
21+
fail(msg?: string): void,
22+
pass(msg?: string): void,
23+
24+
error(err: mixed, msg?: string): void,
25+
ifError(err: mixed, msg?: string): void,
26+
ifErr(err: mixed, msg?: string): void,
27+
iferror(err: mixed, msg?: string): void,
28+
29+
ok(value: mixed, msg?: string): void,
30+
true(value: mixed, msg?: string): void,
31+
assert(value: mixed, msg?: string): void,
32+
33+
notOk(value: mixed, msg?: string): void,
34+
false(value: mixed, msg?: string): void,
35+
notok(value: mixed, msg?: string): void,
36+
37+
// equal + aliases
38+
equal(actual: mixed, expected: mixed, msg?: string): void,
39+
equals(actual: mixed, expected: mixed, msg?: string): void,
40+
isEqual(actual: mixed, expected: mixed, msg?: string): void,
41+
is(actual: mixed, expected: mixed, msg?: string): void,
42+
strictEqual(actual: mixed, expected: mixed, msg?: string): void,
43+
strictEquals(actual: mixed, expected: mixed, msg?: string): void,
44+
45+
// notEqual + aliases
46+
notEqual(actual: mixed, expected: mixed, msg?: string): void,
47+
notEquals(actual: mixed, expected: mixed, msg?: string): void,
48+
notStrictEqual(actual: mixed, expected: mixed, msg?: string): void,
49+
notStrictEquals(actual: mixed, expected: mixed, msg?: string): void,
50+
isNotEqual(actual: mixed, expected: mixed, msg?: string): void,
51+
isNot(actual: mixed, expected: mixed, msg?: string): void,
52+
not(actual: mixed, expected: mixed, msg?: string): void,
53+
doesNotEqual(actual: mixed, expected: mixed, msg?: string): void,
54+
isInequal(actual: mixed, expected: mixed, msg?: string): void,
55+
56+
// deepEqual + aliases
57+
deepEqual(actual: mixed, expected: mixed, msg?: string): void,
58+
deepEquals(actual: mixed, expected: mixed, msg?: string): void,
59+
isEquivalent(actual: mixed, expected: mixed, msg?: string): void,
60+
same(actual: mixed, expected: mixed, msg?: string): void,
61+
62+
// notDeepEqual
63+
notDeepEqual(actual: mixed, expected: mixed, msg?: string): void,
64+
notEquivalent(actual: mixed, expected: mixed, msg?: string): void,
65+
notDeeply(actual: mixed, expected: mixed, msg?: string): void,
66+
notSame(actual: mixed, expected: mixed, msg?: string): void,
67+
isNotDeepEqual(actual: mixed, expected: mixed, msg?: string): void,
68+
isNotDeeply(actual: mixed, expected: mixed, msg?: string): void,
69+
isNotEquivalent(actual: mixed, expected: mixed, msg?: string): void,
70+
isInequivalent(actual: mixed, expected: mixed, msg?: string): void,
71+
72+
// deepLooseEqual
73+
deepLooseEqual(actual: mixed, expected: mixed, msg?: string): void,
74+
looseEqual(actual: mixed, expected: mixed, msg?: string): void,
75+
looseEquals(actual: mixed, expected: mixed, msg?: string): void,
76+
77+
// notDeepLooseEqual
78+
notDeepLooseEqual(actual: mixed, expected: mixed, msg?: string): void,
79+
notLooseEqual(actual: mixed, expected: mixed, msg?: string): void,
80+
notLooseEquals(actual: mixed, expected: mixed, msg?: string): void,
81+
82+
throws(fn: Function, expected?: RegExp | Function, msg?: string): void,
83+
doesNotThrow(fn: Function, expected?: RegExp | Function, msg?: string): void,
84+
85+
timeoutAfter(ms: number): void,
86+
87+
skip(msg?: string): void,
88+
plan(n: number): void,
89+
onFinish(fn: Function): void,
90+
end(): void,
91+
comment(msg: string): void,
92+
test: tape$TestFn,
93+
}
94+
95+
96+
declare module 'tape' {
97+
declare type TestHarness = Tape;
98+
declare type StreamOpts = {
99+
objectMode?: boolean,
100+
};
101+
102+
declare type Tape = {
103+
(a: string | tape$TestOpts | tape$TestCb, b?: tape$TestCb | tape$TestOpts, c?: tape$TestCb, ...rest: Array<void>): void,
104+
skip: (name: string, cb?: tape$TestCb) => void,
105+
createHarness: () => TestHarness,
106+
createStream: (opts?: StreamOpts) => stream$Readable,
107+
only: (a: string | tape$TestOpts | tape$TestCb, b?: tape$TestCb | tape$TestOpts, c?: tape$TestCb, ...rest: Array<void>) => void,
108+
};
109+
110+
declare module.exports: Tape;
111+
}

flow/decls/decls.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
declare var __USE_CSS_MODULES__: boolean
2+
type HotObjectType = {
3+
accept: Function
4+
}
5+
declare type ModuleType = {
6+
hot?: HotObjectType
7+
}
8+
declare var module: ModuleType

flow/stub/css-modules.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
// @flow
2+
type CSSModule = { [key: string]: string }
3+
const emptyCSSModule: CSSModule = {}
4+
export default emptyCSSModule

package.json

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
{
2+
"name": "react-flag-icon-css-example-multi",
3+
"version": "1.0.0",
4+
"description": "Example project for React Flag Icon Css",
5+
"main": "server.js",
6+
"keywords": [
7+
"react",
8+
"react-flag-icon-css",
9+
"flag-icon-css",
10+
"flag-icon",
11+
"flag-icons",
12+
"react-css-modules"
13+
],
14+
"author": {
15+
"name": "matteocng",
16+
"email": "matteocng+npmjs@outlook.com",
17+
"url": "https://github.com/matteocng"
18+
},
19+
"license": "MIT",
20+
"repository": {
21+
"type": "git",
22+
"url": "git://github.com/matteocng/react-flag-icon-css-example-multi.git"
23+
},
24+
"scripts": {
25+
"start": "USE_CSS_MODULES=true babel-node webpack/server.js",
26+
"start:classes": "USE_CSS_MODULES=false babel-node webpack/server.js",
27+
"flow": "flow; test $? -eq 0 -o $? -eq 2",
28+
"lint": "npm run lint:js && npm run lint:css",
29+
"lint:js": "eslint src cmrh.conf.js",
30+
"lint:css": "sass-lint 'src/**/*.scss' -v -q",
31+
"lint:fix": "eslint src --fix",
32+
"pre-commit": "npm run lint && npm run flow"
33+
},
34+
"pre-commit": [
35+
"lint:js",
36+
"lint:css",
37+
"flow"
38+
],
39+
"dependencies": {
40+
"tcomb": "^3.2.15",
41+
"webpack": "^2.1.0-beta.5",
42+
"webpack-dev-server": "^2.1.0-beta.5",
43+
"react": "^15.3.1",
44+
"react-css-modules": "^4.0.0",
45+
"react-dom": "^15.3.1",
46+
"react-flag-icon-css": "^1.0.2",
47+
"flag-icon-css": "^2.4.0"
48+
},
49+
"devDependencies": {
50+
"babel": "^6.5.2",
51+
"babel-cli": "^6.14.0",
52+
"babel-core": "^6.14.0",
53+
"babel-eslint": "^7.0.0",
54+
"babel-loader": "^6.2.5",
55+
"babel-plugin-transform-object-rest-spread": "^6.8.0",
56+
"babel-preset-es2015": "^6.14.0",
57+
"babel-preset-react": "^6.11.1",
58+
"babel-register": "^6.14.0",
59+
"css-loader": "^0.25.0",
60+
"eslint": "^3.7.0",
61+
"eslint-config-airbnb": "^12.0.0",
62+
"eslint-plugin-babel": "^3.3.0",
63+
"eslint-plugin-flowtype": "^2.19.0",
64+
"eslint-plugin-import": "^2.0.0",
65+
"eslint-plugin-jsx-a11y": "^2.2.2",
66+
"eslint-plugin-react": "^6.3.0",
67+
"extract-text-webpack-plugin": "^2.0.0-beta.4",
68+
"file-loader": "^0.9.0",
69+
"flow-bin": "^0.32.0",
70+
"fs": "0.0.1-security",
71+
"html-webpack-plugin": "^2.22.0",
72+
"json-loader": "^0.5.4",
73+
"node-sass": "^3.10.0",
74+
"postcss-loader": "^0.13.0",
75+
"pre-commit": "^1.1.3",
76+
"react-flag-icon-css": "^1.0.2",
77+
"react-hot-loader": "^3.0.0-beta.4",
78+
"sass-lint": "^1.9.1",
79+
"sass-loader": "^4.0.2",
80+
"style-loader": "^0.13.1",
81+
"tcomb": "^3.2.15",
82+
"tcomb-react": "^0.9.3",
83+
"webpack": "^2.1.0-beta.22",
84+
"webpack-dev-server": "^2.0.0-beta"
85+
}
86+
}

0 commit comments

Comments
 (0)