Skip to content

Commit

Permalink
Change subpath types form string to Path
Browse files Browse the repository at this point in the history
  • Loading branch information
craigbeck committed Mar 22, 2024
1 parent 7c8bfbb commit ee23c0d
Show file tree
Hide file tree
Showing 8 changed files with 52 additions and 52 deletions.
2 changes: 1 addition & 1 deletion src/Model/collections.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ declare module './Model' {
data: ModelData;
}
interface Model<T> {
destroy(subpath?: string): void;
destroy(subpath?: Path): void;

/**
* Gets the value located at this model's path or a relative subpath.
Expand Down
4 changes: 2 additions & 2 deletions src/Model/events.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { EventListenerTree } from './EventListenerTree';
import { type Segments } from './types';
import { Model } from './Model';
import { mergeInto } from '../util';
import { PathLike } from '../types';
import type { Path, PathLike } from '../types';

export type ModelEvent =
| ChangeEvent
Expand Down Expand Up @@ -145,7 +145,7 @@ declare module './Model' {
*/
pass(object: object, invert?: boolean): Model<T>;

removeAllListeners(type: string, subpath: string): void;
removeAllListeners(type: string, subpath: Path): void;
removeContextListeners(): void;

removeListener(eventType: keyof ModelOnEventMap, listener: Function): void;
Expand Down
4 changes: 2 additions & 2 deletions src/Model/filter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ var util = require('../util');
import { Model } from './Model';
import { type Segments } from './types';
import * as defaultFns from './defaultFns';
import { PathLike } from '../types';
import type { Path, PathLike } from '../types';

interface PaginationOptions {
skip: number;
Expand Down Expand Up @@ -48,7 +48,7 @@ declare module './Model' {
fn?: (item: S, key: string, object: { [key: string]: S }) => boolean
): Filter<S>;

removeAllFilters: (subpath: string) => void;
removeAllFilters: (subpath: Path) => void;

/**
* Creates a live-updating list from items in an object, which results in
Expand Down
6 changes: 3 additions & 3 deletions src/Model/fn.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { Model } from './Model';
import { EventListenerTree } from './EventListenerTree';
import { EventMapTree } from './EventMapTree';
import * as defaultFns from './defaultFns';
import { PathLike, ReadonlyDeep } from '../types';
import type { Path, PathLike, ReadonlyDeep } from '../types';
var util = require('../util');

class NamedFns { }
Expand Down Expand Up @@ -134,8 +134,8 @@ declare module './Model' {
fn: ModelFn<Ins, Out> | string
): Out;

stop(subpath: string): void;
stopAll(subpath: string): void;
stop(subpath: Path): void;
stopAll(subpath: Path): void;

_fns: Fns;
_namedFns: NamedFns;
Expand Down
78 changes: 39 additions & 39 deletions src/Model/mutators.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,39 +15,39 @@ declare module './Model' {
interface Model<T> {
_mutate(segments, fn, cb): void;
set(value: T, cb?: ErrorCallback): T | undefined;
set<S>(subpath: string, value: any, cb?: ErrorCallback): S | undefined;
set<S>(subpath: Path, value: any, cb?: ErrorCallback): S | undefined;
setPromised(value: T): Promise<T | undefined>;
setPromised<S>(subpath: string, value: any): Promise<S | undefined>;
setPromised<S>(subpath: Path, value: any): Promise<S | undefined>;
_set<S>(segments: Segments, value: any, cb?: ErrorCallback): S | undefined;

setNull(value: T, cb?: ErrorCallback): T | undefined;
setNull<S>(subpath: string, value: S, cb?: ErrorCallback): S | undefined;
setNull<S>(subpath: Path, value: S, cb?: ErrorCallback): S | undefined;
setNullPromised(value: T): Promise<T | undefined>;
setNullPromised<S>(subpath: string, value: S): Promise<S | undefined>;
setNullPromised<S>(subpath: Path, value: S): Promise<S | undefined>;
_setNull<S>(segments: Segments, value: S, cb?: ErrorCallback): S | undefined;

setEach(value: any, cb?: ErrorCallback): void;
setEach(subpath: string, value: any, cb?: ErrorCallback): void;
setEach(subpath: Path, value: any, cb?: ErrorCallback): void;
setEachPromised(value: any): Promise<void>;
setEachPromised(subpath: string, value: any): Promise<void>;
setEachPromised(subpath: Path, value: any): Promise<void>;
_setEach(segments: Segments, value: any, cb?: ErrorCallback): void;

create(value: any, cb?: ErrorCallback): void;
create(subpath: string, value: any, cb?: ErrorCallback): void;
create(subpath: Path, value: any, cb?: ErrorCallback): void;
createPromised(value: any): Promise<void>;
createPromised(subpath: string, value: any): Promise<void>;
createPromised(subpath: Path, value: any): Promise<void>;
_create(segments: Segments, value: any, cb?: ErrorCallback): void;

createNull(value: any, cb?: ErrorCallback): void;
createNull(subpath: string, value: any, cb?: ErrorCallback): void;
createNull(subpath: Path, value: any, cb?: ErrorCallback): void;
createNullPromised(value: any): Promise<void>;
createNullPromised(subpath: string, value: any): Promise<void>;
createNullPromised(subpath: Path, value: any): Promise<void>;
_createNull(segments: Segments, value: any, cb?: ErrorCallback): void;

add(value: any, cb?: ErrorCallback): string;
add(subpath: string, value: any, cb?: ErrorCallback): string;
add(subpath: Path, value: any, cb?: ErrorCallback): string;
addPromised(value: any): Promise<string>;
addPromised(subpath: string, value: any): Promise<string>;
addPromised(subpath: Path, value: any): Promise<string>;
_add(segments: Segments, value: any, cb?: ErrorCallback): string;

/**
Expand All @@ -61,33 +61,33 @@ declare module './Model' {
*/
del<S>(subpath: Path, cb?: Callback): S | undefined;
del<T>(cb?: Callback): T | undefined;
delPromised<S>(subpath: string): Promise<S>;
delPromised<S>(subpath: Path): Promise<S>;
_del<S>(segments: Segments, cb?: ErrorCallback): S;

_delNoDereference(segments: Segments, cb?: ErrorCallback): void;

increment(value?: number): number;
increment(subpath: string, value?: number, cb?: ErrorCallback): number;
increment(subpath: Path, value?: number, cb?: ErrorCallback): number;
incrementPromised(value?: number): Promise<number>;
incrementPromised(subpath: string, value?: number): Promise<number>;
incrementPromised(subpath: Path, value?: number): Promise<number>;
_increment(segments: Segments, value: number, cb?: ErrorCallback): number;

push(value: any): number;
push(subpath: string, value: any, cb?: ErrorCallback): number;
push(subpath: Path, value: any, cb?: ErrorCallback): number;
pushPromised(value: any): Promise<number>;
pushPromised(subpath: string, value: any): Promise<number>;
pushPromised(subpath: Path, value: any): Promise<number>;
_push(segments: Segments, value: any, cb?: ErrorCallback): number;

unshift(value: any): void;
unshift(subpath: string, value: any, cb?: ErrorCallback): void;
unshift(subpath: Path, value: any, cb?: ErrorCallback): void;
unshiftPromised(value: any): Promise<void>;
unshiftPromised(subpath: string, value: any): Promise<void>;
unshiftPromised(subpath: Path, value: any): Promise<void>;
_unshift(segments: Segments, value: any, cb?: ErrorCallback): void;

insert(index: number, value: any): void;
insert(subpath: string, index: number, value: any, cb?: ErrorCallback): void;
insert(subpath: Path, index: number, value: any, cb?: ErrorCallback): void;
insertPromised(value: any, index: number): Promise<void>;
insertPromised(subpath: string, index: number, value: any): Promise<void>;
insertPromised(subpath: Path, index: number, value: any): Promise<void>;
_insert(segments: Segments, index: number, value: any, cb?: ErrorCallback): void;

/**
Expand All @@ -103,11 +103,11 @@ declare module './Model' {
pop<V>(subpath: Path, cb?: Callback): V | undefined;
pop<V extends ArrayItemType<T>>(cb?: Callback): V | undefined;
popPromised(value: any): Promise<void>;
popPromised(subpath: string, value: any): Promise<void>;
popPromised(subpath: Path, value: any): Promise<void>;
_pop(segments: Segments, value: any, cb?: ErrorCallback): void;

shift<S>(subpath?: string, cb?: ErrorCallback): S;
shiftPromised<S>(subpath?: string): Promise<S>;
shift<S>(subpath?: Path, cb?: ErrorCallback): S;
shiftPromised<S>(subpath?: Path): Promise<S>;
_shift<S>(segments: Segments, cb?: ErrorCallback): S;

/**
Expand All @@ -128,40 +128,40 @@ declare module './Model' {
// there a way to disallow that?
remove<V extends ArrayItemType<T>>(index: number, howMany?: number, cb?: Callback): V[];
removePromised(index: number): Promise<void>;
removePromised(subpath: string): Promise<void>;
removePromised(subpath: Path): Promise<void>;
removePromised(index: number, howMany: number): Promise<void>;
removePromised(subpath: string, index: number): Promise<void>;
removePromised(subpath: string, index: number, howMany: number): void;
removePromised(subpath: Path, index: number): Promise<void>;
removePromised(subpath: Path, index: number, howMany: number): void;
_remove(segments: Segments, index: number, howMany: number, cb?: ErrorCallback): void;

move(from: number, to: number, cb?: ErrorCallback): void;
move(from: number, to: number, howMany: number, cb?: ErrorCallback): void;
move(subpath: string, from: number, to: number, cb?: ErrorCallback): void;
move(subpath: string, from: number, to: number, howmany: number, cb?: ErrorCallback): void;
move(subpath: Path, from: number, to: number, cb?: ErrorCallback): void;
move(subpath: Path, from: number, to: number, howmany: number, cb?: ErrorCallback): void;
movePromised(from: number, to: number): Promise<void>;
movePromised(from: number, to: number, howMany: number): Promise<void>;
movePromised(subpath: string, from: number, to: number): Promise<void>;
movePromised(subpath: string, from: number, to: number, howmany: number): Promise<void>;
movePromised(subpath: Path, from: number, to: number): Promise<void>;
movePromised(subpath: Path, from: number, to: number, howmany: number): Promise<void>;
_move(segments: Segments, from: number, to: number, owMany: number, cb?: ErrorCallback): void;

stringInsert(index: number, text: string, cb?: ErrorCallback): void;
stringInsert(subpath: string, index: number, text: string, cb?: ErrorCallback): void;
stringInsert(subpath: Path, index: number, text: string, cb?: ErrorCallback): void;
stringInsertPromised(index: number, text: string): Promise<void>;
stringInsertPromised(subpath: string, index: number, text: string): Promise<void>;
stringInsertPromised(subpath: Path, index: number, text: string): Promise<void>;
_stringInsert(segments: Segments, index: number,text: string, cb?: ErrorCallback): void;

stringRemove(index: number, howMany: number, cb?: ErrorCallback): void;
stringRemove(subpath: string, index: number, cb?: ErrorCallback): void;
stringRemove(subpath: string, index: number, howMany: number, cb?: ErrorCallback): void;
stringRemove(subpath: Path, index: number, cb?: ErrorCallback): void;
stringRemove(subpath: Path, index: number, howMany: number, cb?: ErrorCallback): void;
stringRemovePromised(index: number, howMany: number): Promise<void>;
stringRemovePromised(subpath: string, index: number): Promise<void>;
stringRemovePromised(subpath: string, index: number, howMany: number): Promise<void>;
stringRemovePromised(subpath: Path, index: number): Promise<void>;
stringRemovePromised(subpath: Path, index: number, howMany: number): Promise<void>;
_stringRemove(segments: Segments, index: number, howMany: number, cb?: ErrorCallback): void;

subtypeSubmit(subtype: any, subtypeOp: any, cb?: ErrorCallback): void;
subtypeSubmit(subpath: string, subtype: any, subtypeOp: any, cb?: ErrorCallback): void;
subtypeSubmit(subpath: Path, subtype: any, subtypeOp: any, cb?: ErrorCallback): void;
subtypeSubmitPromised(subtype: any, subtypeOp: any): Promise<void>;
subtypeSubmitPromised(subpath: string, subtype: any, subtypeOp: any): Promise<void>;
subtypeSubmitPromised(subpath: Path, subtype: any, subtypeOp: any): Promise<void>;
_subtypeSubmit(segments: Segments, subtype: any, subtypeOp: any, cb?: ErrorCallback): void;
}
}
Expand Down
4 changes: 2 additions & 2 deletions src/Model/paths.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ declare module './Model' {
interface Model<T> {
at(): ChildModel<T>;
at<S = unknown>(subpath: Path): ChildModel<S>;
isPath(subpath: string): boolean;
isPath(subpath: Path): boolean;
leaf(path: string): string;
parent(levels?: number): Model;
path(subpath?: PathLike): string;
scope(): ChildModel<ModelData>;
scope<S = unknown>(subpath: Path): ChildModel<S>;

_splitPath(subpath: string): string[];
_splitPath(subpath: Path): string[];
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/Model/ref.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { Model } from './Model';
import { type Segments } from './types';
import { type Filter } from './filter';
import { type Query } from './Query';
import { PathLike } from '../types';
import type { Path, PathLike } from '../types';

type Refable = string | number | Model<any> | Query | Filter<unknown>;

Expand Down Expand Up @@ -66,7 +66,7 @@ declare module './Model' {
removeAllRefs(subpath: PathLike): void;
_removeAllRefs(segments: Segments): void;

dereference(subpath: string): Segments;
dereference(subpath: Path): Segments;
_dereference(segments: Segments, forArrayMutator: any, ignore: boolean): Segments;

_refs: any;
Expand Down
2 changes: 1 addition & 1 deletion src/Model/setDiff.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ declare module './Model' {
*/
setDiff<S>(subpath: Path, value: S, cb?: Callback): ReadonlyDeep<S> | undefined;
setDiff(value: T | undefined): ReadonlyDeep<T> | undefined;
setDiffPromised<S>(subpath: string, value: S): Promise<S>;
setDiffPromised<S>(subpath: Path, value: S): Promise<S>;
_setDiff(segments: Segments, value: any, cb?: (err: Error) => void): void;

/**
Expand Down

0 comments on commit ee23c0d

Please sign in to comment.