6 Commits

Author SHA1 Message Date
55746f5d92 1.0.23 2019-09-29 16:35:12 +02:00
90ae869686 fix(core): update 2019-09-29 16:35:12 +02:00
771c454411 1.0.22 2019-08-22 10:54:26 +02:00
99395794d8 fix(core): update 2019-08-22 10:54:26 +02:00
1763ede6df 1.0.21 2019-08-22 10:53:29 +02:00
102b6ac9ae fix(core): update 2019-08-22 10:53:29 +02:00
5 changed files with 363 additions and 577 deletions

View File

@ -1,5 +1,7 @@
# gitzone ci_default # gitzone ci_default
image: hosttoday/ht-docker-node:npmci image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
variables:
GIT_STRATEGY: clone
cache: cache:
paths: paths:
@ -48,15 +50,15 @@ testLTS:
coverage: /\d+.?\d+?\%\s*coverage/ coverage: /\d+.?\d+?\%\s*coverage/
tags: tags:
- docker - docker
- notpriv - priv
testSTABLE: testBuild:
stage: test stage: test
script: script:
- npmci npm prepare - npmci npm prepare
- npmci node install stable - npmci node install lts
- npmci npm install - npmci npm install
- npmci npm test - npmci command npm run build
coverage: /\d+.?\d+?\%\s*coverage/ coverage: /\d+.?\d+?\%\s*coverage/
tags: tags:
- docker - docker
@ -65,7 +67,7 @@ testSTABLE:
release: release:
stage: release stage: release
script: script:
- npmci node install stable - npmci node install lts
- npmci npm publish - npmci npm publish
only: only:
- tags - tags
@ -98,7 +100,9 @@ trigger:
- notpriv - notpriv
pages: pages:
image: hosttoday/ht-docker-node:npmci image: hosttoday/ht-docker-dbase:npmci
services:
- docker:18-dind
stage: metadata stage: metadata
script: script:
- npmci command npm install -g @gitzone/tsdoc - npmci command npm install -g @gitzone/tsdoc

View File

@ -23,7 +23,7 @@ Use TypeScript for best in class instellisense.
```javascript ```javascript
import { Smartchok } from 'smartchok'; import { Smartchok } from 'smartchok';
let mySmartChok = new Smartchok(['some/path/**/*.any', '/absolute/*.js'], chokidarOptions); const mySmartChok = new Smartchok(['some/path/**/*.any', '/absolute/*.js'], chokidarOptions);
mySmartChok.add(['/some/**/*.any']); // add files mySmartChok.add(['/some/**/*.any']); // add files
@ -46,6 +46,6 @@ mySmartChok.stop();
For further information read the linked docs at the top of this readme. For further information read the linked docs at the top of this readme.
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh) > MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html) | By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
[![repo-footer](https://pushrocks.gitlab.io/assets/repo-footer.svg)](https://maintainedby.lossless.com) [![repo-footer](https://lossless.gitlab.io/publicrelations/repofooter.svg)](https://maintainedby.lossless.com)

866
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/smartchok", "name": "@pushrocks/smartchok",
"version": "1.0.20", "version": "1.0.23",
"private": false, "private": false,
"description": "smart wrapper for chokidar", "description": "smart wrapper for chokidar",
"main": "dist/index.js", "main": "dist/index.js",
@ -21,21 +21,20 @@
}, },
"homepage": "https://gitlab.com/pushrocks/smartchok#README", "homepage": "https://gitlab.com/pushrocks/smartchok#README",
"dependencies": { "dependencies": {
"@pushrocks/lik": "^3.0.5", "@pushrocks/lik": "^3.0.11",
"@pushrocks/smartpromise": "^3.0.2", "@pushrocks/smartpromise": "^3.0.5",
"@pushrocks/smartrx": "^2.0.3", "@pushrocks/smartrx": "^2.0.5",
"@pushrocks/smartspawn": "^2.0.4",
"@types/chokidar": "^2.1.3", "@types/chokidar": "^2.1.3",
"chokidar": "^3.0.1" "chokidar": "^3.1.1"
}, },
"devDependencies": { "devDependencies": {
"@gitzone/tsbuild": "^2.1.11", "@gitzone/tsbuild": "^2.1.17",
"@gitzone/tsrun": "^1.2.6", "@gitzone/tsrun": "^1.2.8",
"@gitzone/tstest": "^1.0.24", "@gitzone/tstest": "^1.0.24",
"@pushrocks/smartfile": "^7.0.2", "@pushrocks/smartfile": "^7.0.5",
"@pushrocks/tapbundle": "^3.0.9", "@pushrocks/tapbundle": "^3.0.13",
"@types/node": "^12.0.4", "@types/node": "^12.7.8",
"tslint": "^5.17.0", "tslint": "^5.20.0",
"tslint-config-prettier": "^1.18.0" "tslint-config-prettier": "^1.18.0"
}, },
"files": [ "files": [
@ -43,6 +42,7 @@
"ts_web/*", "ts_web/*",
"dist/*", "dist/*",
"dist_web/*", "dist_web/*",
"dist_ts_web/*",
"assets/*", "assets/*",
"cli.js", "cli.js",
"npmextra.json", "npmextra.json",

View File

@ -17,9 +17,9 @@ export type TFsEvent =
* Smartchok allows easy wathcing of files * Smartchok allows easy wathcing of files
*/ */
export class Smartchok { export class Smartchok {
watchStringmap = new Stringmap(); public watchStringmap = new Stringmap();
chokidarOptions: plugins.chokidar.WatchOptions; public chokidarOptions: plugins.chokidar.WatchOptions;
status: TSmartchokStatus = 'idle'; public status: TSmartchokStatus = 'idle';
private watcher: plugins.chokidar.FSWatcher; private watcher: plugins.chokidar.FSWatcher;
private watchingDeferred = plugins.smartpromise.defer<void>(); // used to run things when watcher is initialized private watchingDeferred = plugins.smartpromise.defer<void>(); // used to run things when watcher is initialized
private eventObservablemap = new plugins.smartrx.Observablemap(); // register one observable per event private eventObservablemap = new plugins.smartrx.Observablemap(); // register one observable per event
@ -35,24 +35,24 @@ export class Smartchok {
/** /**
* adds files to the list of watched files * adds files to the list of watched files
*/ */
add(pathArrayArg: string[]) { public add(pathArrayArg: string[]) {
this.watchStringmap.addStringArray(pathArrayArg); this.watchStringmap.addStringArray(pathArrayArg);
} }
/** /**
* removes files from the list of watched files * removes files from the list of watched files
*/ */
remove(pathArg: string) { public remove(pathArg: string) {
this.watchStringmap.removeString(pathArg); this.watchStringmap.removeString(pathArg);
} }
/** /**
* gets an observable for a certain event * gets an observable for a certain event
*/ */
getObservableFor(fsEvent: TFsEvent): Promise<plugins.smartrx.rxjs.Observable<any>> { public getObservableFor(fsEvent: TFsEvent): Promise<plugins.smartrx.rxjs.Observable<any>> {
let done = plugins.smartpromise.defer<plugins.smartrx.rxjs.Observable<any>>(); const done = plugins.smartpromise.defer<plugins.smartrx.rxjs.Observable<any>>();
this.watchingDeferred.promise.then(() => { this.watchingDeferred.promise.then(() => {
let eventObservable = this.eventObservablemap.getObservableForEmitterEvent( const eventObservable = this.eventObservablemap.getObservableForEmitterEvent(
this.watcher, this.watcher,
fsEvent fsEvent
); );
@ -65,8 +65,8 @@ export class Smartchok {
* starts the watcher * starts the watcher
* @returns Promise<void> * @returns Promise<void>
*/ */
start(): Promise<void> { public start(): Promise<void> {
let done = plugins.smartpromise.defer<void>(); const done = plugins.smartpromise.defer<void>();
this.status = 'starting'; this.status = 'starting';
this.watcher = plugins.chokidar.watch( this.watcher = plugins.chokidar.watch(
this.watchStringmap.getStringArray(), this.watchStringmap.getStringArray(),
@ -83,8 +83,8 @@ export class Smartchok {
/** /**
* stop the watcher process if watching * stop the watcher process if watching
*/ */
stop() { public stop() {
let closeWatcher = () => { const closeWatcher = () => {
this.watcher.close(); this.watcher.close();
}; };
if (this.status === 'watching') { if (this.status === 'watching') {