| @@ -46,7 +46,7 declare namespace dijit { | |||
| 
             | 
        46 | 46 | /* dijit/form/_AutoCompleterMixin */ | 
| 
             | 
        47 | 47 | |
| 
             | 
        48 | 48 | /* tslint:disable:class-name */ | 
| 
             | 
        49 | interface _AutoCompleterMixin<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions> extends _SearchMixin<T, Q, O> { | |
| 
             | 
        49 | interface _AutoCompleterMixin<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>> extends _SearchMixin<T, Q, O> { | |
| 
             | 
        50 | 50 | /** | 
| 
             | 
        51 | 51 | * This is the item returned by the dojo/store/api/Store implementation that | 
| 
             | 
        52 | 52 | * provides the data for this ComboBox, it's the currently selected item. | 
| @@ -250,7 +250,7 declare namespace dijit { | |||
| 
             | 
        250 | 250 | /** | 
| 
             | 
        251 | 251 | * Fills in the items in the drop down list | 
| 
             | 
        252 | 252 | */ | 
| 
             | 
        253 | createOptions(results: T[], options: dojo.store.api.QueryOptions, labelFunc: (item: T) => { html: boolean; label: string; }): void; | |
| 
             | 
        253 | createOptions(results: T[], options: dojo.store.api.QueryOptions<T>, labelFunc: (item: T) => { html: boolean; label: string; }): void; | |
| 
             | 
        254 | 254 | |
| 
             | 
        255 | 255 | /** | 
| 
             | 
        256 | 256 | * Clears the entries in the drop down list, but of course keeps the previous and next buttons. | 
| @@ -470,7 +470,7 declare namespace dijit { | |||
| 
             | 
        470 | 470 | disabled?: boolean; | 
| 
             | 
        471 | 471 | } | 
| 
             | 
        472 | 472 | |
| 
             | 
        473 | interface _FormSelectWidget<T extends Object, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions> extends _FormValueWidget { | |
| 
             | 
        473 | interface _FormSelectWidget<T extends Object, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>> extends _FormValueWidget { | |
| 
             | 
        474 | 474 | /** | 
| 
             | 
        475 | 475 | * Whether or not we are multi-valued | 
| 
             | 
        476 | 476 | */ | 
| @@ -869,7 +869,7 declare namespace dijit { | |||
| 
             | 
        869 | 869 | |
| 
             | 
        870 | 870 | /* dijit/form/_SearchMixin */ | 
| 
             | 
        871 | 871 | |
| 
             | 
        872 | interface _SearchMixin<T extends Object, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions> { | |
| 
             | 
        872 | interface _SearchMixin<T extends Object, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>> { | |
| 
             | 
        873 | 873 | /** | 
| 
             | 
        874 | 874 | * Argument to data provider. | 
| 
             | 
        875 | 875 | * Specifies maximum number of search results to return per query | 
| @@ -1170,18 +1170,18 declare namespace dijit { | |||
| 
             | 
        1170 | 1170 | |
| 
             | 
        1171 | 1171 | /* dijit/form/ComboBox */ | 
| 
             | 
        1172 | 1172 | |
| 
             | 
        1173 | interface ComboBox<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions, C extends Constraints = Constraints> extends ValidationTextBox<C>, ComboBoxMixin<T, Q, O> { | |
| 
             | 
        1173 | interface ComboBox<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>, C extends Constraints = Constraints> extends ValidationTextBox<C>, ComboBoxMixin<T, Q, O> { | |
| 
             | 
        1174 | 1174 | // set(name: string, value: any): this; | 
| 
             | 
        1175 | 1175 | // set(values: Object): this; | 
| 
             | 
        1176 | 1176 | } | 
| 
             | 
        1177 | 1177 | |
| 
             | 
        1178 | 1178 | interface ComboBoxConstructor extends _WidgetBaseConstructor<ComboBox<any>> { | 
| 
             | 
        1179 | new <T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions, C extends Constraints = Constraints>(params: Object, srcNodeRef: dojo.NodeOrString): ComboBox<T, Q, O, C>; | |
| 
             | 
        1179 | new <T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>, C extends Constraints = Constraints>(params: Object, srcNodeRef: dojo.NodeOrString): ComboBox<T, Q, O, C>; | |
| 
             | 
        1180 | 1180 | } | 
| 
             | 
        1181 | 1181 | |
| 
             | 
        1182 | 1182 | /* dijit/form/ComboBoxMixin */ | 
| 
             | 
        1183 | 1183 | |
| 
             | 
        1184 | interface ComboBoxMixin<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions> extends _HasDropDown<_ComboBoxMenu<T>>, _AutoCompleterMixin<T, Q, O> { | |
| 
             | 
        1184 | interface ComboBoxMixin<T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>> extends _HasDropDown<_ComboBoxMenu<T>>, _AutoCompleterMixin<T, Q, O> { | |
| 
             | 
        1185 | 1185 | |
| 
             | 
        1186 | 1186 | /** | 
| 
             | 
        1187 | 1187 | * Dropdown widget class used to select a date/time. | 
| @@ -1315,7 +1315,7 declare namespace dijit { | |||
| 
             | 
        1315 | 1315 | |
| 
             | 
        1316 | 1316 | /* dijit/form/FilteringSelect */ | 
| 
             | 
        1317 | 1317 | |
| 
             | 
        1318 | interface FilteringSelect<C extends Constraints, T extends Object, Q extends string | Object | Function, O extends dojo.store.api.QueryOptions> extends MappedTextBox<C>, ComboBoxMixin<T, Q, O> { | |
| 
             | 
        1318 | interface FilteringSelect<C extends Constraints, T extends Object, Q extends string | Object | Function, O extends dojo.store.api.QueryOptions<T>> extends MappedTextBox<C>, ComboBoxMixin<T, Q, O> { | |
| 
             | 
        1319 | 1319 | /** | 
| 
             | 
        1320 | 1320 | * True (default) if user is required to enter a value into this field. | 
| 
             | 
        1321 | 1321 | */ | 
| @@ -1341,7 +1341,7 declare namespace dijit { | |||
| 
             | 
        1341 | 1341 | } | 
| 
             | 
        1342 | 1342 | |
| 
             | 
        1343 | 1343 | interface FilteringSelectConstructor extends _WidgetBaseConstructor<FilteringSelect<any, any, any, any>> { | 
| 
             | 
        1344 | new <C extends Constraints, T extends Object, Q extends string | Object | Function, O extends dojo.store.api.QueryOptions>(params: Object, srcNodeRef: dojo.NodeOrString): FilteringSelect<C, T, Q, O>; | |
| 
             | 
        1344 | new <C extends Constraints, T extends Object, Q extends string | Object | Function, O extends dojo.store.api.QueryOptions<T>>(params: Object, srcNodeRef: dojo.NodeOrString): FilteringSelect<C, T, Q, O>; | |
| 
             | 
        1345 | 1345 | } | 
| 
             | 
        1346 | 1346 | |
| 
             | 
        1347 | 1347 | /* dijit/form/Form */ | 
| @@ -1691,7 +1691,7 declare namespace dijit { | |||
| 
             | 
        1691 | 1691 | |
| 
             | 
        1692 | 1692 | /* dijit/form/Select */ | 
| 
             | 
        1693 | 1693 | |
| 
             | 
        1694 | interface Select<T extends Object, Q extends dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions, U extends dijit._WidgetBase> extends _FormSelectWidget<T, Q, O>, _HasDropDown<U>, _KeyNavMixin { | |
| 
             | 
        1694 | interface Select<T extends Object, Q extends dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T>, U extends dijit._WidgetBase> extends _FormSelectWidget<T, Q, O>, _HasDropDown<U>, _KeyNavMixin { | |
| 
             | 
        1695 | 1695 | baseClass: string; | 
| 
             | 
        1696 | 1696 | |
| 
             | 
        1697 | 1697 | /** | 
| @@ -332,7 +332,7 declare module 'dijit/form/DropDownButto | |||
| 
             | 
        332 | 332 | } | 
| 
             | 
        333 | 333 | |
| 
             | 
        334 | 334 | declare module 'dijit/form/FilteringSelect' { | 
| 
             | 
        335 | type FilteringSelect<C extends dijit.form.Constraints = dijit.form.Constraints, T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions = dojo.store.api.QueryOptions> = dijit.form.FilteringSelect<C, T, Q, O>; | |
| 
             | 
        335 | type FilteringSelect<C extends dijit.form.Constraints = dijit.form.Constraints, T extends Object = any, Q extends dojo.store.api.BaseQueryType = dojo.store.api.BaseQueryType, O extends dojo.store.api.QueryOptions<T> = dojo.store.api.QueryOptions<T>> = dijit.form.FilteringSelect<C, T, Q, O>; | |
| 
             | 
        336 | 336 | const FilteringSelect: dijit.form.FilteringSelectConstructor; | 
| 
             | 
        337 | 337 | export = FilteringSelect; | 
| 
             | 
        338 | 338 | } | 
| @@ -9,12 +9,12 declare namespace dojo { | |||
| 
             | 
        9 | 9 | |
| 
             | 
        10 | 10 | /* dojo/store/api/Store */ | 
| 
             | 
        11 | 11 | |
| 
             | 
        12 | interface SortInformation { | |
| 
             | 
        12 | interface SortInformation<K extends string | number | symbol = string> { | |
| 
             | 
        13 | 13 | |
| 
             | 
        14 | 14 | /** | 
| 
             | 
        15 | 15 | * The name of the attribute to sort on. | 
| 
             | 
        16 | 16 | */ | 
| 
             | 
        17 | 
            
             				attribute:  | 
    |
| 
             | 
        17 | attribute: K; | |
| 
             | 
        18 | 18 | |
| 
             | 
        19 | 19 | /** | 
| 
             | 
        20 | 20 | * The direction of the sort. Default is false. | 
| @@ -22,7 +22,9 declare namespace dojo { | |||
| 
             | 
        22 | 22 | descending?: boolean; | 
| 
             | 
        23 | 23 | } | 
| 
             | 
        24 | 24 | |
| 
             | 
        25 | interface QueryOptions { | |
| 
             | 
        25 | type SortFn<T> = (left: T, right: T) => number; | |
| 
             | 
        26 | ||
| 
             | 
        27 | interface QueryOptions<T = unknown> { | |
| 
             | 
        26 | 28 | /** | 
| 
             | 
        27 | 29 | * A list of attributes to sort on, as well as direction | 
| 
             | 
        28 | 30 | * For example: | 
| @@ -30,7 +32,7 declare namespace dojo { | |||
| 
             | 
        30 | 32 | * If the sort parameter is omitted, then the natural order of the store may be | 
| 
             | 
        31 | 33 | * applied if there is a natural order. | 
| 
             | 
        32 | 34 | */ | 
| 
             | 
        33 | sort?: SortInformation[]; | |
| 
             | 
        35 | sort?: SortFn<T> | SortInformation<keyof T>[]; | |
| 
             | 
        34 | 36 | |
| 
             | 
        35 | 37 | /** | 
| 
             | 
        36 | 38 | * The first result to begin iteration on | 
| @@ -51,7 +53,7 declare namespace dojo { | |||
| 
             | 
        51 | 53 | type BaseQueryType = string | object | ((...params: unknown[]) => boolean); | 
| 
             | 
        52 | 54 | |
| 
             | 
        53 | 55 | interface QueryEngine<T extends object, Q extends BaseQueryType> { | 
| 
             | 
        54 | <O extends QueryOptions>(query: Q, options?: O): QueryEngineFunction<T>; | |
| 
             | 
        56 | <O extends QueryOptions<T>>(query: Q, options?: O): QueryEngineFunction<T>; | |
| 
             | 
        55 | 57 | } | 
| 
             | 
        56 | 58 | |
| 
             | 
        57 | 59 | interface PutDirectives<T extends object> { | 
| @@ -173,7 +175,7 declare namespace dojo { | |||
| 
             | 
        173 | 175 | interface Queryable< | 
| 
             | 
        174 | 176 | T extends object, | 
| 
             | 
        175 | 177 | Q extends BaseQueryType, | 
| 
             | 
        176 | O extends QueryOptions, | |
| 
             | 
        178 | O extends QueryOptions<T>, | |
| 
             | 
        177 | 179 | R extends QueryResults<T> = QueryResults<T>> { | 
| 
             | 
        178 | 180 | |
| 
             | 
        179 | 181 | /** | 
| @@ -183,7 +185,7 declare namespace dojo { | |||
| 
             | 
        183 | 185 | query(query?: Q, options?: O): R; | 
| 
             | 
        184 | 186 | } | 
| 
             | 
        185 | 187 | |
| 
             | 
        186 | interface SyncStore<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions = QueryOptions> | |
| 
             | 
        188 | interface SyncStore<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions<T> = QueryOptions<T>> | |
| 
             | 
        187 | 189 | extends IdentityProvider<T>, Queryable<T, Q, O, SyncQueryResults<T>> { | 
| 
             | 
        188 | 190 | |
| 
             | 
        189 | 191 | /** | 
| @@ -223,7 +225,7 declare namespace dojo { | |||
| 
             | 
        223 | 225 | |
| 
             | 
        224 | 226 | } | 
| 
             | 
        225 | 227 | |
| 
             | 
        226 | interface AsyncStore<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions = QueryOptions> | |
| 
             | 
        228 | interface AsyncStore<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions<T> = QueryOptions<T>> | |
| 
             | 
        227 | 229 | extends IdentityProvider<T>, Queryable<T, Q, O, AsyncQueryResults<T>> { | 
| 
             | 
        228 | 230 | |
| 
             | 
        229 | 231 | /** | 
| @@ -263,7 +265,7 declare namespace dojo { | |||
| 
             | 
        263 | 265 | |
| 
             | 
        264 | 266 | } | 
| 
             | 
        265 | 267 | |
| 
             | 
        266 | interface HierarchicalStore<T extends object, O extends QueryOptions = QueryOptions, R extends QueryResults<T> = QueryResults<T>> { | |
| 
             | 
        268 | interface HierarchicalStore<T extends object, O extends QueryOptions<T> = QueryOptions<T>, R extends QueryResults<T> = QueryResults<T>> { | |
| 
             | 
        267 | 269 | |
| 
             | 
        268 | 270 | /** | 
| 
             | 
        269 | 271 | * Retrieves the children of an object. | 
| @@ -271,7 +273,7 declare namespace dojo { | |||
| 
             | 
        271 | 273 | getChildren(parent: T, options?: O): R; | 
| 
             | 
        272 | 274 | } | 
| 
             | 
        273 | 275 | |
| 
             | 
        274 | interface Store<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions = QueryOptions> | |
| 
             | 
        276 | interface Store<T extends object, Q extends BaseQueryType = Partial<T> | ((item: T) => boolean) | string, O extends QueryOptions<T> = QueryOptions<T>> | |
| 
             | 
        275 | 277 | extends IdentityProvider<T>, Queryable<T, Q, O> { | 
| 
             | 
        276 | 278 | |
| 
             | 
        277 | 279 | /** | 
| @@ -370,11 +372,11 declare namespace dojo { | |||
| 
             | 
        370 | 372 | |
| 
             | 
        371 | 373 | interface DataStoreOptions<T extends object> { | 
| 
             | 
        372 | 374 | idProperty?: keyof T; | 
| 
             | 
        373 | queryEngine?: api.QueryEngine<T, api.QueryOptions>; | |
| 
             | 
        375 | queryEngine?: api.QueryEngine<T, api.QueryOptions<T>>; | |
| 
             | 
        374 | 376 | store?: data.api.Read<T> | data.api.Write<T> | data.api.Identity<T>; | 
| 
             | 
        375 | 377 | } | 
| 
             | 
        376 | 378 | |
| 
             | 
        377 | interface DataStore<T extends object> extends api.Store<T, api.BaseQueryType, api.QueryOptions> { | |
| 
             | 
        379 | interface DataStore<T extends object> extends api.Store<T, api.BaseQueryType, api.QueryOptions<T>> { | |
| 
             | 
        378 | 380 | /** | 
| 
             | 
        379 | 381 | * The object store to convert to a data store | 
| 
             | 
        380 | 382 | */ | 
| @@ -406,7 +408,7 declare namespace dojo { | |||
| 
             | 
        406 | 408 | timeout?: number | 
| 
             | 
        407 | 409 | } | 
| 
             | 
        408 | 410 | |
| 
             | 
        409 | interface JsonRestQueryOptions extends api.QueryOptions { | |
| 
             | 
        411 | interface JsonRestQueryOptions<T = unknown> extends api.QueryOptions<T> { | |
| 
             | 
        410 | 412 | headers?: Headers; | 
| 
             | 
        411 | 413 | |
| 
             | 
        412 | 414 | timeout?: number; | 
| @@ -414,7 +416,7 declare namespace dojo { | |||
| 
             | 
        414 | 416 | |
| 
             | 
        415 | 417 | interface JsonRestOptions<T extends object> { | 
| 
             | 
        416 | 418 | idProperty?: keyof T; | 
| 
             | 
        417 | queryEngine?: api.QueryEngine<T, JsonRestQueryOptions>; | |
| 
             | 
        419 | queryEngine?: api.QueryEngine<T, JsonRestQueryOptions<T>>; | |
| 
             | 
        418 | 420 | headers?: Headers; | 
| 
             | 
        419 | 421 | target?: string; | 
| 
             | 
        420 | 422 | rangeParam?: string; | 
| @@ -427,7 +429,7 declare namespace dojo { | |||
| 
             | 
        427 | 429 | interface JsonRest< | 
| 
             | 
        428 | 430 | T extends object, | 
| 
             | 
        429 | 431 | Q extends api.BaseQueryType = (Partial<T> | string) & api.BaseQueryType, | 
| 
             | 
        430 | O extends JsonRestQueryOptions = JsonRestQueryOptions> | |
| 
             | 
        432 | O extends JsonRestQueryOptions<T> = JsonRestQueryOptions<T>> | |
| 
             | 
        431 | 433 | extends api.AsyncStore<T, Q, O> { | 
| 
             | 
        432 | 434 | /** | 
| 
             | 
        433 | 435 | * Additional headers to pass in all requests to the server. These can be overridden | 
| @@ -509,7 +511,7 declare namespace dojo { | |||
| 
             | 
        509 | 511 | interface MemoryOptions<T extends object> { | 
| 
             | 
        510 | 512 | data?: T[]; | 
| 
             | 
        511 | 513 | idProperty?: keyof T; | 
| 
             | 
        512 | queryEngine?: api.QueryEngine<T, api.QueryOptions>; | |
| 
             | 
        514 | queryEngine?: api.QueryEngine<T, api.QueryOptions<T>>; | |
| 
             | 
        513 | 515 | setData?: (data: T[]) => void; | 
| 
             | 
        514 | 516 | } | 
| 
             | 
        515 | 517 | |
| @@ -551,7 +553,7 declare namespace dojo { | |||
| 
             | 
        551 | 553 | |
| 
             | 
        552 | 554 | type ObservableQueryResults<T extends object> = ObservableQueryResultsMixin<T> & api.QueryResults<T>; | 
| 
             | 
        553 | 555 | |
| 
             | 
        554 | interface ObservableMixin<T extends object, Q extends api.BaseQueryType, O extends api.QueryOptions, R extends api.QueryResults<T> = api.QueryResults<T> > { | |
| 
             | 
        556 | interface ObservableMixin<T extends object, Q extends api.BaseQueryType, O extends api.QueryOptions<T>, R extends api.QueryResults<T> = api.QueryResults<T> > { | |
| 
             | 
        555 | 557 | notify(object: T, existingId?: api.Identity): void; | 
| 
             | 
        556 | 558 | |
| 
             | 
        557 | 559 | /** | 
| @@ -19,7 +19,8 const mem = new Memory<Schedule>(); | |||
| 
             | 
        19 | 19 | observable.query().observe(() => { }); | 
| 
             | 
        20 | 20 | store.query().forEach(() => { }); | 
| 
             | 
        21 | 21 | const total = await store.query().total; | 
| 
             | 
        22 | const result = await store.query(); | |
| 
             | 
        22 | const res1 = await store.query(undefined, { sort: [{ attribute: "duration", descending: true }] }); | |
| 
             | 
        23 | const res2 = await store.query(undefined, { sort: ({ duration: a }, { duration: b }) => a - b }); | |
| 
             | 
        23 | 24 | |
| 
             | 
        24 | 25 | mem.query(); | 
| 
             | 
        25 | 26 | |
        
        General Comments 0
    
    
  
  
                      You need to be logged in to leave comments.
                      Login now
                    
                