Skip to content

Commit

Permalink
incorporate phraseanet-production-client into phraseanet
Browse files Browse the repository at this point in the history
  • Loading branch information
aynsix committed Sep 25, 2020
1 parent 7df5e99 commit abc137b
Show file tree
Hide file tree
Showing 282 changed files with 66,348 additions and 3,022 deletions.
19 changes: 19 additions & 0 deletions Phraseanet-production-client/.babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{

"ignore": [
"foo.js",
"bar/**/*.js"
],
"presets": [
"es2015", "stage-0"
],
"env": {
"start": {
/* TODO: */
/* fill with hmr settings when there is a new release */
/* to play nice with babel 6*/
}
},
/* Add plugins here**/
"plugins": ["babel-plugin-syntax-jsx"]
}
30 changes: 30 additions & 0 deletions Phraseanet-production-client/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# http://editorconfig.org

# A special property that should be specified at the top of the file outside of
# any sections. Set to true to stop .editor config file search on current file
root = true

[*]
# Indentation style
# Possible values - tab, space
indent_style = space

# Indentation size in single-spaced characters
# Possible values - an integer, tab
indent_size = 4

# Line ending file format
# Possible values - lf, crlf, cr
end_of_line = lf

# File character encoding
# Possible values - latin1, utf-8, utf-16be, utf-16le
charset = utf-8

# Denotes whether to trim whitespace at the end of lines
# Possible values - true, false
trim_trailing_whitespace = true

# Denotes whether file should end with a newline
# Possible values - true, false
insert_final_newline = true
3 changes: 3 additions & 0 deletions Phraseanet-production-client/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
NODE_PATH=./src
NODE_ENV=development
PORT=80
4 changes: 4 additions & 0 deletions Phraseanet-production-client/.eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
dist/*
node_modules/*
**/node_modules/*
config/**
186 changes: 186 additions & 0 deletions Phraseanet-production-client/.eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
{
"root": true,
"parser": "babel-eslint",
"globals": {
"document": true,
"window": true,
"spy",
"mocha",
"stub",
"beforeEach",
"useFakeTimers": true,
"useFakeXMLHttpRequest": true,
"useFakeServer": true
},
"ecmaFeatures": {
"jsx": true,
"modules": true,
"es6": true
},
"env": {
"browser": true,
"es6": true,
"mocha": true,
"node": true

},
"rules": {
// /* airbnb javascript style guide rules */
// "strict": [2, "never"],
// // es6
// //"no-var": 2,
// // variables
//"no-shadow": 2,
"no-shadow-restricted-names": 2,
// "no-unused-vars": [2, {
// "vars": "all",
// "args": "none"
// }],
"no-undef": 2,
// "no-use-before-define": [2, "nofunc"],
// possible errors
"comma-dangle": 0,
//"no-cond-assign": [2, "always"],
"no-debugger": 1,
//"no-alert": 1,
"no-constant-condition": 1,
"no-dupe-keys": 2,
"no-duplicate-case": 2,
//"no-empty": 2,
"no-ex-assign": 2,
"no-extra-boolean-cast": 0,
"no-extra-semi": 2,
"no-func-assign": 2,
"no-inner-declarations": 2,
"no-invalid-regexp": 2,
"no-irregular-whitespace": 2,
"no-obj-calls": 2,
"no-sparse-arrays": 2,
"no-unreachable": 2,
"use-isnan": 2,
"block-scoped-var": 2,
// best practices
//"consistent-return": 2,
"curly": [2, "multi-line"],
"default-case": 2,
"dot-notation": [2, {
"allowKeywords": true
}],
"eqeqeq": 2,
//"guard-for-in": 2,
"no-caller": 2,
"no-eq-null": 2,
"no-eval": 2,
"no-extend-native": 2,
"no-extra-bind": 2,
"no-fallthrough": 0,
"no-floating-decimal": 2,
"no-implied-eval": 2,
"no-lone-blocks": 2,
//"no-loop-func": 2,
//"no-multi-str": 2,
"no-native-reassign": 2,
//"no-new": 2,
"no-new-func": 2,
// "no-new-wrappers": 2,
"no-octal": 2,
"no-octal-escape": 2,
// "no-param-reassign": [2, {
// "props": false
// }],
"no-proto": 2,
"no-redeclare": 2,
"no-return-assign": 2,
"no-script-url": 2,
"no-self-compare": 2,
"no-sequences": 2,
//"no-throw-literal": 2,
"no-with": 2,
"radix": 2,
// "vars-on-top": 2,
//"wrap-iife": [2, "any"],
"yoda": 2,
// style
"indent": [0, 0],
"brace-style": [2,
"1tbs", {
"allowSingleLine": true
}
],
"quotes": [
2, "single", "avoid-escape"
],
// "camelcase": [2, {
// "properties": "never"
// }],
"comma-spacing": [2, {
"before": false,
"after": true
}],
"comma-style": [2, "last"],
"eol-last": 2,
"key-spacing": [2, {
"beforeColon": false,
"afterColon": true
}],
// "new-cap": [2, {
// "newIsCap": true
// }],
"no-multiple-empty-lines": [2, {
"max": 2
}],
//"no-nested-ternary": 2,
"no-new-object": 2,
"no-spaced-func": 2,
"no-trailing-spaces": 0,
//"no-extra-parens": 2,
"no-underscore-dangle": 0,
"one-var": [2, "never"],
"padded-blocks": 0,
"semi-spacing": [2, {
"before": false,
"after": true
}],
"keyword-spacing": 2,
"space-before-blocks": 2,
"space-infix-ops": 2,
//"spaced-comment": 2,

/* custom rules */
"no-console": 0,
"space-before-function-paren": [2, {
"named": "never",
"anonymous": "always"
}],
"func-names": 0,
//"consistent-this": [2, "this"],
"func-style": [0, "expression"],
//"max-nested-callbacks": [2, 3],
"new-parens": 2,
"no-array-constructor": 2,
"no-else-return": 0,
//"no-inline-comments": 2,
// "no-lonely-if": 2,
"no-mixed-spaces-and-tabs": 1,
"operator-assignment": 0,
"quote-props": [2, "as-needed"],
"sort-vars": [0, {
"ignoreCase": true
}],
"space-in-brackets": [0, "never", {
"arraysInArrays": false,
"arraysInObjects": false,
"singleValue": false,
"objectsInArrays": false,
"objectsInObjects": false,
"propertyName": false
}],
"space-in-parens": [2, "never"],
"space-unary-ops": [2, {
"words": true,
"nonwords": false
}],
"wrap-regex": 1
},
plugins: []
}
8 changes: 8 additions & 0 deletions Phraseanet-production-client/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
*.log
node_modules
coverage
npm-debug.log
.DS_Store
dist
bower_components
.idea
1 change: 1 addition & 0 deletions Phraseanet-production-client/.npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
src/
26 changes: 26 additions & 0 deletions Phraseanet-production-client/.travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
language: node_js

node_js:
- '13.13.0'

# Use container-based Travis infrastructure.
sudo: false

cache:
directories:
- node_modules

before_install:
- nvm install stable

notifications:
email: true
branches:
except:
- "/^v\\d+\\.\\d+\\.\\d+$/"

after_script:
- npm run coveralls

# Upload to coveralls, but don't _fail_ if coveralls is down.
- cat coverage/lcov.info | node_modules/.bin/coveralls || echo "Coveralls upload failed"
5 changes: 5 additions & 0 deletions Phraseanet-production-client/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Changelog

## 0.1.0

- initial release
19 changes: 19 additions & 0 deletions Phraseanet-production-client/LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
##The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
15 changes: 15 additions & 0 deletions Phraseanet-production-client/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## Changelog
### Changed
- Breaking change

### Fixes
- PHRAS-XXX: Short description of bug and fix
- Short description of bug and fix without issue/ticket

### Adds
- PHRAS-XXX: Short feature description
- Short feature description without issue/ticket

### Removes
- PHRAS-XXX: Short feature removal description
- Short feature removal description without issue/ticket
49 changes: 49 additions & 0 deletions Phraseanet-production-client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Phraseanet Production Client
[![Build Status](https://travis-ci.org/alchemy-fr/Phraseanet-production-client.svg?branch=master)](https://travis-ci.org/alchemy-fr/Phraseanet-production-client)
[![devDependency Status](https://david-dm.org/alchemy-fr/Phraseanet-production-client/dev-status.svg)](https://david-dm.org/alchemy-fr/Phraseanet-production-client#info=devDependencies)
[![Dependency Status](https://david-dm.org/alchemy-fr/Phraseanet-production-client.svg)](https://david-dm.org/alchemy-fr/Phraseanet-production-client)
[![Coverage Status](https://coveralls.io/repos/github/alchemy-fr/Phraseanet-production-client/badge.svg?branch=master)](https://coveralls.io/github/alchemy-fr/Phraseanet-production-client?branch=master)


## Requirements

Node `^5.0.0`.

## Dev workflow

- Go to Phraseanet-production-client-folder
- make your modification
- Generate dist ```npm run dist```
- ```make install_asset``` to copy assets in www/assets folder
- If features is finished ```dist``` folder is to be commited

## Available commands

* `npm run production` - Build task that generate a minified script for production
* `npm run clean` - Remove the `dist` folder and it's files
* `npm run eslint:source` - Lint the source
* `npm run eslint:common` - Lint the unit tests shared by Karma and Mocha
* `npm run eslint:server` - Lint the unit tests for server
* `npm run eslint:browser` - Lint the unit tests for browser
* `npm run eslint:fix` - ESLint will try to fix as many issues as possible in your source files
* `npm run clean` - Remove the coverage report and the *dist* folder
* `npm run test` - Runs unit tests for both server and the browser
* `npm run test:browser` - Runs the unit tests for browser / client
* `npm run test:server` - Runs the unit tests on the server
* `npm run watch:server` - Run all unit tests for server & watch files for changes
* `npm run watch:browser` - Run all unit tests for browser & watch files for changes
* `npm run karma:firefox` - Run all unit tests with Karma & Firefox
* `npm run karma:chrome` - Run all unit tests with Karma & Chrome
* `npm run karma:ie` - Run all unit tests with Karma & Internet Explorer
* `npm run packages` - List installed packages
* `npm run package:purge` - Remove all dependencies
* `npm run package:reinstall` - Reinstall all dependencies
* `npm run package:check` - shows a list over dependencies with a higher version number then the current one - if any
* `npm run package:upgrade` - Automaticly upgrade all devDependencies & dependencies, and update package.json
* `npm run package:dev` - Automaticly upgrade all devDependencies and update package.json
* `npm run package:prod` - Automaticly upgrade all dependencies and update package.json
* `npm run asset-server` - starts a asset server with hot module replacement (WDS) on port 8080

## Credits

based on [Trolly](https://github.com/Kflash/trolly) an es6 boilerplate by [KFlash](https://github.com/kflash)
6 changes: 6 additions & 0 deletions Phraseanet-production-client/config/banner.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import pkg from '../package.json';

export default [
pkg.name + '',
' version ' + pkg.version
];
Loading

0 comments on commit abc137b

Please sign in to comment.