backendless 6.4.0 → 6.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/backendless.d.ts +336 -0
  2. package/dist/backendless.js +1903 -3
  3. package/dist/backendless.js.map +1 -1
  4. package/dist/backendless.min.js +2 -2
  5. package/es/hive/constants.js +14 -0
  6. package/es/hive/index.js +81 -0
  7. package/es/hive/stores/base-store.js +249 -0
  8. package/es/hive/stores/index.js +70 -0
  9. package/es/hive/stores/key-value.js +159 -0
  10. package/es/hive/stores/list.js +234 -0
  11. package/es/hive/stores/map.js +224 -0
  12. package/es/hive/stores/set.js +224 -0
  13. package/es/hive/stores/sorted-set.js +491 -0
  14. package/es/hive/utils.js +19 -0
  15. package/es/index.js +8 -0
  16. package/es/urls.js +16 -2
  17. package/es/utils.js +3 -0
  18. package/lib/hive/constants.js +14 -0
  19. package/lib/hive/index.js +81 -0
  20. package/lib/hive/stores/base-store.js +249 -0
  21. package/lib/hive/stores/index.js +70 -0
  22. package/lib/hive/stores/key-value.js +159 -0
  23. package/lib/hive/stores/list.js +234 -0
  24. package/lib/hive/stores/map.js +224 -0
  25. package/lib/hive/stores/set.js +224 -0
  26. package/lib/hive/stores/sorted-set.js +491 -0
  27. package/lib/hive/utils.js +19 -0
  28. package/lib/index.js +8 -0
  29. package/lib/urls.js +16 -2
  30. package/lib/utils.js +3 -0
  31. package/package.json +1 -1
  32. package/src/hive/constants.js +7 -0
  33. package/src/hive/index.js +60 -0
  34. package/src/hive/stores/base-store.js +173 -0
  35. package/src/hive/stores/index.js +5 -0
  36. package/src/hive/stores/key-value.js +113 -0
  37. package/src/hive/stores/list.js +189 -0
  38. package/src/hive/stores/map.js +181 -0
  39. package/src/hive/stores/set.js +180 -0
  40. package/src/hive/stores/sorted-set.js +419 -0
  41. package/src/hive/utils.js +13 -0
  42. package/src/index.js +5 -0
  43. package/src/urls.js +11 -1
  44. package/src/utils.js +4 -0
package/backendless.d.ts CHANGED
@@ -3,6 +3,8 @@
3
3
  * @namespace Backendless
4
4
  */
5
5
  declare module Backendless {
6
+ type JSONValue = string | number | boolean | { [x: string]: JSONValue } | Array<JSONValue>
7
+
6
8
  let debugMode: boolean;
7
9
  let useTableClassesFromGlobalScope: boolean;
8
10
  let serverURL: string;
@@ -277,6 +279,340 @@ declare module Backendless {
277
279
  function mapTableToClass(clientClass: Function): void;
278
280
  }
279
281
 
282
+ /**
283
+ * @public
284
+ * @type: Function
285
+ **/
286
+ function Hive(hiveName: string): Backendless.Hive.DataHive;
287
+
288
+ /**
289
+ * @public
290
+ * @namespace Backendless.Hive
291
+ */
292
+ namespace Hive {
293
+ /**
294
+ * @public
295
+ * @type: Function
296
+ */
297
+ function getNames(): Array<string>
298
+
299
+ /**
300
+ * @public
301
+ * @class Backendless.Hive.DataHive
302
+ * @constructor
303
+ */
304
+ class DataHive {
305
+ constructor(hiveName: string, appContext: object);
306
+
307
+ create(): Promise<void>
308
+
309
+ delete(): Promise<void>
310
+
311
+ rename(newName: string): Promise<void>
312
+
313
+ KeyValueStore: KeyValueStore;
314
+ ListStore: ListStore;
315
+ MapStore: MapStore;
316
+ SetStore: SetStore;
317
+ SortedSetStore: SortedSetStore;
318
+ }
319
+
320
+ interface StoreKeysOptionsI {
321
+ filterPattern?: string;
322
+ cursor?: number;
323
+ pageSize?: number;
324
+ }
325
+
326
+ interface StoreKeysResultI {
327
+ keys: string[];
328
+ cursorId: string;
329
+ }
330
+
331
+ /**
332
+ * @private
333
+ */
334
+ interface HiveStore {
335
+ keys(options?: StoreKeysOptionsI): Promise<StoreKeysResultI>;
336
+
337
+ delete(keys: Array<string>): Promise<void>;
338
+
339
+ exists(keys: Array<string>): Promise<number>;
340
+
341
+ touch(keys: Array<string>): Promise<void>;
342
+ }
343
+
344
+ /**
345
+ * @private
346
+ */
347
+ interface hiveStore {
348
+
349
+ delete(): Promise<number>;
350
+
351
+ rename(newKeyName: string, overwrite?: boolean): Promise<void>;
352
+
353
+ exists(): Promise<boolean>;
354
+
355
+ getExpiration(): Promise<number>;
356
+
357
+ clearExpiration(): Promise<void>;
358
+
359
+ touch(): Promise<void>;
360
+
361
+ secondsSinceLastOperation(): Promise<number>;
362
+
363
+ expireAfter(ttl: number): Promise<void>;
364
+
365
+ expireAt(timestamp: number): Promise<void>;
366
+ }
367
+
368
+ interface KeyValueSetKeyOptionsI {
369
+ ttl?: Number; // in seconds
370
+ expireAt?: Number; // timestamp
371
+ condition?: 'IfExists' | 'IfNotExists' | 'Always'; //if not provided set anyway
372
+ }
373
+
374
+ /**
375
+ * @public
376
+ */
377
+ interface KeyValueStore extends HiveStore {
378
+ (keyName: string): keyValueStore
379
+
380
+ get(keys: Array<string>): Promise<object>;
381
+
382
+ set(key: string, value: JSONValue, options?: KeyValueSetKeyOptionsI): Promise<boolean>;
383
+
384
+ set(keysMap: object): Promise<boolean>;
385
+ }
386
+
387
+ /**
388
+ * @public
389
+ */
390
+ interface keyValueStore extends hiveStore {
391
+ get(): Promise<JSONValue | null>;
392
+
393
+ set(value: JSONValue, options?: KeyValueSetKeyOptionsI): Promise<boolean>;
394
+
395
+ increment(value: number): Promise<number>;
396
+
397
+ decrement(value: number): Promise<number>;
398
+ }
399
+
400
+ /**
401
+ * @public
402
+ */
403
+ interface ListStore extends HiveStore {
404
+ (keyName: string): listStore
405
+ }
406
+
407
+ /**
408
+ * @public
409
+ */
410
+ interface listStore extends hiveStore {
411
+ get(): Promise<Array<JSONValue>>
412
+
413
+ get(index: number): Promise<JSONValue | null>
414
+
415
+ get(indexFrom: number, indexTo: number): Promise<Array<JSONValue>>
416
+
417
+ set(values: Array<string>): Promise<number>;
418
+
419
+ set(value: string, index: number): Promise<void>;
420
+
421
+ insertBefore(valueToInsert: JSONValue, anchorValue: JSONValue): Promise<number>;
422
+
423
+ insertAfter(valueToInsert: JSONValue, anchorValue: JSONValue): Promise<number>;
424
+
425
+ length(): Promise<number>;
426
+
427
+ addFirstValue(value: JSONValue): Promise<number>
428
+
429
+ addFirstValues(values: Array<JSONValue>): Promise<number>
430
+
431
+ addLastValue(value: JSONValue): Promise<number>
432
+
433
+ addLastValues(values: Array<JSONValue>): Promise<number>
434
+
435
+ deleteFirst(): Promise<Array<JSONValue>>
436
+
437
+ deleteFirst(count: number): Promise<Array<JSONValue>>
438
+
439
+ deleteLast(): Promise<Array<JSONValue>>
440
+
441
+ deleteLast(count: number): Promise<Array<JSONValue>>
442
+
443
+ deleteValue(value: JSONValue, count?: number): Promise<number>
444
+ }
445
+
446
+ /**
447
+ * @public
448
+ */
449
+ interface MapStore extends HiveStore {
450
+ (keyName: string): mapStore
451
+ }
452
+
453
+ /**
454
+ * @public
455
+ */
456
+ interface mapStore extends hiveStore {
457
+
458
+ get(): Promise<object>;
459
+
460
+ get(key: string): Promise<object>;
461
+
462
+ get(keys: Array<string>): Promise<object>;
463
+
464
+ getValue(key: string): Promise<JSONValue | null>;
465
+
466
+ keyExists(key: string): Promise<boolean>;
467
+
468
+ length(): Promise<number>;
469
+
470
+ keys(): Promise<Array<string>>;
471
+
472
+ values(): Promise<Array<JSONValue>>;
473
+
474
+ set(data: object): Promise<number>;
475
+
476
+ set(key: string, value: JSONValue): Promise<boolean>;
477
+
478
+ setWithOverwrite(key: string, value: JSONValue, overwrite?: boolean): Promise<boolean>;
479
+
480
+ add(data: object): Promise<number>;
481
+
482
+ increment(key: string, count?: number): Promise<number>;
483
+
484
+ decrement(key: string, count?: number): Promise<number>;
485
+
486
+ deleteKeys(key: string): Promise<number>;
487
+
488
+ deleteKeys(keys: Array<string>): Promise<number>;
489
+ }
490
+
491
+ /**
492
+ * @public
493
+ */
494
+ interface SetStore extends HiveStore {
495
+ (keyName: string): setStore;
496
+
497
+ difference(storeKeys: Array<string>): Promise<Array<JSONValue>>;
498
+
499
+ intersection(storeKeys: Array<string>): Promise<Array<JSONValue>>;
500
+
501
+ union(storeKeys: Array<string>): Promise<Array<JSONValue>>;
502
+ }
503
+
504
+ /**
505
+ * @public
506
+ */
507
+ interface setStore extends hiveStore {
508
+
509
+ get(): Promise<Array<JSONValue>>;
510
+
511
+ getRandom(count?: number): Promise<Array<JSONValue>>;
512
+
513
+ getRandomAndDelete(count?: number): Promise<Array<JSONValue>>;
514
+
515
+ setValue(value: JSONValue): Promise<number>;
516
+
517
+ setValues(values: Array<JSONValue>): Promise<number>;
518
+
519
+ addValue(value: JSONValue): Promise<number>;
520
+
521
+ addValues(values: Array<JSONValue>): Promise<number>;
522
+
523
+ deleteValue(value: JSONValue): Promise<number>;
524
+
525
+ deleteValues(values: Array<JSONValue>): Promise<number>;
526
+
527
+ isValueMember(value: JSONValue): Promise<Array<boolean>>;
528
+
529
+ isValuesMembers(values: Array<JSONValue>): Promise<Array<boolean>>;
530
+
531
+ length(): Promise<number>;
532
+ }
533
+
534
+ type SortedSetItem = [number, JSONValue]
535
+ type SortedSetBound = 'Include' | 'Exclude' | 'Infinity'
536
+
537
+ interface SortedSetItemOptionsI {
538
+ duplicateBehaviour?: 'OnlyUpdate' | 'AlwaysAdd';
539
+ scoreUpdateMode?: 'Greater' | 'Less';
540
+ resultType?: 'NewAdded' | 'TotalChanged';
541
+ }
542
+
543
+ interface SortedSetFilterI {
544
+ minScore?: number,
545
+ maxScore?: number,
546
+ minBound?: SortedSetBound,
547
+ maxBound?: SortedSetBound,
548
+ }
549
+
550
+ /**
551
+ * @public
552
+ */
553
+ interface SortedSetStore extends HiveStore {
554
+ (keyName: string): sortedSetStore
555
+
556
+ difference(storeKeys: Array<string>): Promise<Array<JSONValue>>;
557
+
558
+ intersection(storeKeys: Array<string>): Promise<Array<JSONValue>>;
559
+
560
+ union(storeKeys: Array<string>): Promise<Array<JSONValue>>;
561
+ }
562
+
563
+ /**
564
+ * @public
565
+ */
566
+ interface sortedSetStore extends hiveStore {
567
+
568
+ add(items: Array<SortedSetItem>, options?: SortedSetItemOptionsI): Promise<number>
569
+
570
+ set(items: Array<SortedSetItem>, options?: SortedSetItemOptionsI): Promise<number>
571
+
572
+ incrementScore(value: JSONValue, scoreValue: number): Promise<number>
573
+
574
+ decrementScore(value: JSONValue, scoreValue: number): Promise<number>
575
+
576
+ getAndDeleteMaxScore(count?: number): Promise<Array<SortedSetItem>>
577
+
578
+ getAndDeleteMinScore(count?: number): Promise<Array<SortedSetItem>>
579
+
580
+ getRandom<T = SortedSetItem | JSONValue>(options?: { count?: number, withScores?: boolean }): Promise<Array<T>>
581
+
582
+ getScore(value: JSONValue): Promise<number | null>
583
+
584
+ getRank(value: JSONValue, reverse?: boolean): Promise<number | null>
585
+
586
+ getRangeByRank<T = SortedSetItem | JSONValue>(startRank: number, stopRank: number, options?: {
587
+ reverse?: boolean,
588
+ withScores?: boolean
589
+ }): Promise<Array<T>>
590
+
591
+ getRangeByScore<T = SortedSetItem | JSONValue>(options?: {
592
+ minScore?: number,
593
+ maxScore?: number,
594
+ minBound?: SortedSetBound,
595
+ maxBound?: SortedSetBound,
596
+ offset?: number,
597
+ count?: number
598
+ reverse?: boolean,
599
+ withScores?: boolean
600
+ }): Promise<Array<T>>
601
+
602
+ deleteValue(value: JSONValue): Promise<number>;
603
+
604
+ deleteValues(values: Array<JSONValue>): Promise<number>;
605
+
606
+ deleteValuesByRank(startRank: number, stopRank: number): Promise<number>;
607
+
608
+ deleteValuesByScore(options?: SortedSetFilterI): Promise<number>;
609
+
610
+ length(): Promise<number>;
611
+
612
+ countBetweenScores(options?: SortedSetFilterI): Promise<number>;
613
+ }
614
+ }
615
+
280
616
  /**
281
617
  * @public
282
618
  * @namespace Backendless.UserService