@fluidframework/sequence 2.0.0-dev.1.4.5.105745 → 2.0.0-dev.2.2.0.111723

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 (126) hide show
  1. package/.eslintrc.js +2 -1
  2. package/dist/defaultMap.d.ts.map +1 -1
  3. package/dist/defaultMap.js +1 -0
  4. package/dist/defaultMap.js.map +1 -1
  5. package/dist/index.d.ts +11 -12
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +18 -31
  8. package/dist/index.js.map +1 -1
  9. package/dist/intervalCollection.d.ts +271 -34
  10. package/dist/intervalCollection.d.ts.map +1 -1
  11. package/dist/intervalCollection.js +343 -97
  12. package/dist/intervalCollection.js.map +1 -1
  13. package/dist/intervalTree.d.ts +72 -0
  14. package/dist/intervalTree.d.ts.map +1 -0
  15. package/dist/intervalTree.js +91 -0
  16. package/dist/intervalTree.js.map +1 -0
  17. package/dist/packageVersion.d.ts +1 -1
  18. package/dist/packageVersion.js +1 -1
  19. package/dist/packageVersion.js.map +1 -1
  20. package/dist/sequence.d.ts +66 -15
  21. package/dist/sequence.d.ts.map +1 -1
  22. package/dist/sequence.js +73 -19
  23. package/dist/sequence.js.map +1 -1
  24. package/dist/sequenceDeltaEvent.d.ts +15 -1
  25. package/dist/sequenceDeltaEvent.d.ts.map +1 -1
  26. package/dist/sequenceDeltaEvent.js +2 -1
  27. package/dist/sequenceDeltaEvent.js.map +1 -1
  28. package/dist/sequenceFactory.d.ts +0 -89
  29. package/dist/sequenceFactory.d.ts.map +1 -1
  30. package/dist/sequenceFactory.js +2 -142
  31. package/dist/sequenceFactory.js.map +1 -1
  32. package/dist/sharedIntervalCollection.d.ts +0 -6
  33. package/dist/sharedIntervalCollection.d.ts.map +1 -1
  34. package/dist/sharedIntervalCollection.js +0 -7
  35. package/dist/sharedIntervalCollection.js.map +1 -1
  36. package/dist/sharedSequence.d.ts +2 -2
  37. package/dist/sharedSequence.d.ts.map +1 -1
  38. package/dist/sharedSequence.js +3 -7
  39. package/dist/sharedSequence.js.map +1 -1
  40. package/dist/sharedString.d.ts +16 -15
  41. package/dist/sharedString.d.ts.map +1 -1
  42. package/dist/sharedString.js +96 -15
  43. package/dist/sharedString.js.map +1 -1
  44. package/lib/defaultMap.d.ts.map +1 -1
  45. package/lib/defaultMap.js +1 -0
  46. package/lib/defaultMap.js.map +1 -1
  47. package/lib/index.d.ts +11 -12
  48. package/lib/index.d.ts.map +1 -1
  49. package/lib/index.js +6 -20
  50. package/lib/index.js.map +1 -1
  51. package/lib/intervalCollection.d.ts +271 -34
  52. package/lib/intervalCollection.d.ts.map +1 -1
  53. package/lib/intervalCollection.js +341 -98
  54. package/lib/intervalCollection.js.map +1 -1
  55. package/lib/intervalTree.d.ts +72 -0
  56. package/lib/intervalTree.d.ts.map +1 -0
  57. package/lib/intervalTree.js +86 -0
  58. package/lib/intervalTree.js.map +1 -0
  59. package/lib/packageVersion.d.ts +1 -1
  60. package/lib/packageVersion.js +1 -1
  61. package/lib/packageVersion.js.map +1 -1
  62. package/lib/sequence.d.ts +66 -15
  63. package/lib/sequence.d.ts.map +1 -1
  64. package/lib/sequence.js +73 -19
  65. package/lib/sequence.js.map +1 -1
  66. package/lib/sequenceDeltaEvent.d.ts +15 -1
  67. package/lib/sequenceDeltaEvent.d.ts.map +1 -1
  68. package/lib/sequenceDeltaEvent.js +2 -1
  69. package/lib/sequenceDeltaEvent.js.map +1 -1
  70. package/lib/sequenceFactory.d.ts +0 -89
  71. package/lib/sequenceFactory.d.ts.map +1 -1
  72. package/lib/sequenceFactory.js +1 -139
  73. package/lib/sequenceFactory.js.map +1 -1
  74. package/lib/sharedIntervalCollection.d.ts +0 -6
  75. package/lib/sharedIntervalCollection.d.ts.map +1 -1
  76. package/lib/sharedIntervalCollection.js +0 -7
  77. package/lib/sharedIntervalCollection.js.map +1 -1
  78. package/lib/sharedSequence.d.ts +2 -2
  79. package/lib/sharedSequence.d.ts.map +1 -1
  80. package/lib/sharedSequence.js +4 -8
  81. package/lib/sharedSequence.js.map +1 -1
  82. package/lib/sharedString.d.ts +16 -15
  83. package/lib/sharedString.d.ts.map +1 -1
  84. package/lib/sharedString.js +97 -16
  85. package/lib/sharedString.js.map +1 -1
  86. package/package.json +34 -69
  87. package/prettier.config.cjs +8 -0
  88. package/src/defaultMap.ts +3 -0
  89. package/src/index.ts +14 -14
  90. package/src/intervalCollection.ts +486 -143
  91. package/src/intervalTree.ts +166 -0
  92. package/src/packageVersion.ts +1 -1
  93. package/src/sequence.ts +86 -30
  94. package/src/sequenceDeltaEvent.ts +18 -4
  95. package/src/sequenceFactory.ts +2 -163
  96. package/src/sharedIntervalCollection.ts +0 -11
  97. package/src/sharedSequence.ts +4 -10
  98. package/src/sharedString.ts +120 -23
  99. package/tsconfig.json +0 -1
  100. package/dist/sharedNumberSequence.d.ts +0 -50
  101. package/dist/sharedNumberSequence.d.ts.map +0 -1
  102. package/dist/sharedNumberSequence.js +0 -61
  103. package/dist/sharedNumberSequence.js.map +0 -1
  104. package/dist/sharedObjectSequence.d.ts +0 -50
  105. package/dist/sharedObjectSequence.d.ts.map +0 -1
  106. package/dist/sharedObjectSequence.js +0 -61
  107. package/dist/sharedObjectSequence.js.map +0 -1
  108. package/dist/sparsematrix.d.ts +0 -152
  109. package/dist/sparsematrix.d.ts.map +0 -1
  110. package/dist/sparsematrix.js +0 -343
  111. package/dist/sparsematrix.js.map +0 -1
  112. package/lib/sharedNumberSequence.d.ts +0 -50
  113. package/lib/sharedNumberSequence.d.ts.map +0 -1
  114. package/lib/sharedNumberSequence.js +0 -57
  115. package/lib/sharedNumberSequence.js.map +0 -1
  116. package/lib/sharedObjectSequence.d.ts +0 -50
  117. package/lib/sharedObjectSequence.d.ts.map +0 -1
  118. package/lib/sharedObjectSequence.js +0 -57
  119. package/lib/sharedObjectSequence.js.map +0 -1
  120. package/lib/sparsematrix.d.ts +0 -152
  121. package/lib/sparsematrix.d.ts.map +0 -1
  122. package/lib/sparsematrix.js +0 -334
  123. package/lib/sparsematrix.js.map +0 -1
  124. package/src/sharedNumberSequence.ts +0 -62
  125. package/src/sharedObjectSequence.ts +0 -62
  126. package/src/sparsematrix.ts +0 -434
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluidframework/sequence",
3
- "version": "2.0.0-dev.1.4.5.105745",
3
+ "version": "2.0.0-dev.2.2.0.111723",
4
4
  "description": "Distributed sequence",
5
5
  "homepage": "https://fluidframework.com",
6
6
  "repository": {
@@ -28,9 +28,12 @@
28
28
  "clean": "rimraf dist lib *.tsbuildinfo *.build.log",
29
29
  "eslint": "eslint --format stylish src",
30
30
  "eslint:fix": "eslint --format stylish src --fix --fix-type problem,suggestion,layout",
31
+ "format": "npm run prettier:fix",
31
32
  "lint": "npm run eslint",
32
33
  "lint:fix": "npm run eslint:fix",
33
- "postpack": "cd dist && tar -cvf ../sequence.test-files.tar ./test",
34
+ "postpack": "tar -cf ./sequence.test-files.tar ./src/test ./dist/test",
35
+ "prettier": "prettier --check . --ignore-path ../../../.prettierignore",
36
+ "prettier:fix": "prettier --write . --ignore-path ../../../.prettierignore",
34
37
  "test": "npm run test:mocha",
35
38
  "test:coverage": "nyc npm test -- --reporter xunit --reporter-option output=nyc/junit-report.xml",
36
39
  "test:memory": "mocha --config src/test/memory/.mocharc.js",
@@ -38,12 +41,11 @@
38
41
  "test:mocha": "mocha --ignore 'dist/test/memory/**/*' --recursive 'dist/test/**/*.spec.js' -r node_modules/@fluidframework/mocha-test-setup --unhandled-rejections=strict",
39
42
  "test:mocha:verbose": "cross-env FLUID_TEST_VERBOSE=1 npm run test:mocha",
40
43
  "test:newsnapfiles": "node dist/test/createSnapshotFiles.js",
41
- "test:stress": "cross-env FUZZ_TEST_COUNT=100 FUZZ_STRESS_RUN=true npm run test:mocha",
44
+ "test:stress": "cross-env FUZZ_TEST_COUNT=100 FUZZ_STRESS_RUN=true mocha --ignore 'dist/test/memory/**/*' --recursive 'dist/test/**/*.fuzz.spec.js' -r @fluidframework/mocha-test-setup --unhandled-rejections=strict",
42
45
  "testfarm": "node dist/test/testFarm.js",
43
46
  "tsc": "tsc",
44
- "tsfmt": "tsfmt --verify",
45
- "tsfmt:fix": "tsfmt --replace",
46
- "typetests:gen": "fluid-type-validator -g -d ."
47
+ "typetests:gen": "flub generate typetests --generate --dir .",
48
+ "typetests:prepare": "flub generate typetests --prepare --dir . --pin"
47
49
  },
48
50
  "nyc": {
49
51
  "all": true,
@@ -68,29 +70,30 @@
68
70
  "dependencies": {
69
71
  "@fluidframework/common-definitions": "^0.20.1",
70
72
  "@fluidframework/common-utils": "^1.0.0",
71
- "@fluidframework/container-utils": "2.0.0-dev.1.4.5.105745",
72
- "@fluidframework/core-interfaces": "2.0.0-dev.1.4.5.105745",
73
- "@fluidframework/datastore-definitions": "2.0.0-dev.1.4.5.105745",
74
- "@fluidframework/merge-tree": "2.0.0-dev.1.4.5.105745",
75
- "@fluidframework/protocol-definitions": "^1.0.0",
76
- "@fluidframework/runtime-definitions": "2.0.0-dev.1.4.5.105745",
77
- "@fluidframework/runtime-utils": "2.0.0-dev.1.4.5.105745",
78
- "@fluidframework/shared-object-base": "2.0.0-dev.1.4.5.105745",
79
- "@fluidframework/telemetry-utils": "2.0.0-dev.1.4.5.105745",
73
+ "@fluidframework/container-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
74
+ "@fluidframework/core-interfaces": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
75
+ "@fluidframework/datastore-definitions": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
76
+ "@fluidframework/merge-tree": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
77
+ "@fluidframework/protocol-definitions": "^1.1.0",
78
+ "@fluidframework/runtime-definitions": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
79
+ "@fluidframework/runtime-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
80
+ "@fluidframework/shared-object-base": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
81
+ "@fluidframework/telemetry-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
80
82
  "uuid": "^8.3.1"
81
83
  },
82
84
  "devDependencies": {
83
- "@fluid-internal/stochastic-test-utils": "2.0.0-dev.1.4.5.105745",
84
- "@fluid-internal/test-dds-utils": "2.0.0-dev.1.4.5.105745",
85
+ "@fluid-internal/stochastic-test-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
86
+ "@fluid-internal/test-dds-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
85
87
  "@fluid-tools/benchmark": "^0.43.0",
86
- "@fluidframework/build-common": "^1.0.0",
87
- "@fluidframework/build-tools": "^0.4.4000",
88
- "@fluidframework/eslint-config-fluid": "^1.0.0",
89
- "@fluidframework/gitresources": "^0.1037.2001",
90
- "@fluidframework/mocha-test-setup": "2.0.0-dev.1.4.5.105745",
91
- "@fluidframework/sequence-previous": "npm:@fluidframework/sequence@^1.0.0",
92
- "@fluidframework/server-services-client": "^0.1037.2001",
93
- "@fluidframework/test-runtime-utils": "2.0.0-dev.1.4.5.105745",
88
+ "@fluid-tools/build-cli": "^0.6.0-109663",
89
+ "@fluidframework/build-common": "^1.1.0",
90
+ "@fluidframework/build-tools": "^0.6.0-109663",
91
+ "@fluidframework/eslint-config-fluid": "^1.2.0",
92
+ "@fluidframework/gitresources": "^0.1038.2000",
93
+ "@fluidframework/mocha-test-setup": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
94
+ "@fluidframework/sequence-previous": "npm:@fluidframework/sequence@2.0.0-internal.2.1.0",
95
+ "@fluidframework/server-services-client": "^0.1038.2000",
96
+ "@fluidframework/test-runtime-utils": ">=2.0.0-dev.2.2.0.111723 <2.0.0-dev.3.0.0",
94
97
  "@microsoft/api-extractor": "^7.22.2",
95
98
  "@rushstack/eslint-config": "^2.5.1",
96
99
  "@types/diff": "^3.5.1",
@@ -104,53 +107,15 @@
104
107
  "eslint": "~8.6.0",
105
108
  "mocha": "^10.0.0",
106
109
  "nyc": "^15.0.0",
110
+ "prettier": "~2.6.2",
107
111
  "random-js": "^1.0.8",
108
112
  "rimraf": "^2.6.2",
109
- "typescript": "~4.5.5",
110
- "typescript-formatter": "7.1.0"
113
+ "typescript": "~4.5.5"
111
114
  },
112
115
  "typeValidation": {
113
- "version": "2.0.0",
114
- "broken": {
115
- "ClassDeclaration_IntervalCollection": {
116
- "backCompat": false
117
- },
118
- "ClassDeclaration_SequenceInterval": {
119
- "backCompat": false
120
- },
121
- "InterfaceDeclaration_ISharedString": {
122
- "backCompat": false
123
- },
124
- "ClassDeclaration_SequenceEvent": {
125
- "backCompat": false
126
- },
127
- "ClassDeclaration_SequenceDeltaEvent": {
128
- "backCompat": false
129
- },
130
- "ClassDeclaration_SequenceMaintenanceEvent": {
131
- "backCompat": false
132
- },
133
- "ClassDeclaration_SharedNumberSequence": {
134
- "backCompat": false
135
- },
136
- "ClassDeclaration_SharedObjectSequence": {
137
- "backCompat": false
138
- },
139
- "ClassDeclaration_SharedSegmentSequence": {
140
- "backCompat": false
141
- },
142
- "ClassDeclaration_SharedSequence": {
143
- "backCompat": false
144
- },
145
- "ClassDeclaration_SharedString": {
146
- "backCompat": false
147
- },
148
- "TypeAliasDeclaration_SharedStringSegment": {
149
- "backCompat": false
150
- },
151
- "ClassDeclaration_SparseMatrix": {
152
- "backCompat": false
153
- }
154
- }
116
+ "version": "2.0.0-internal.2.2.0",
117
+ "baselineRange": ">=2.0.0-internal.2.1.0 <2.0.0-internal.2.2.0",
118
+ "baselineVersion": "2.0.0-internal.2.1.0",
119
+ "broken": {}
155
120
  }
156
121
  }
@@ -0,0 +1,8 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ module.exports = {
7
+ ...require("@fluidframework/build-common/prettier.config.cjs"),
8
+ };
package/src/defaultMap.ts CHANGED
@@ -400,6 +400,9 @@ export class DefaultMap<T> {
400
400
  },
401
401
  resubmit: (op: IMapValueTypeOperation, localOpMetadata: IMapMessageLocalMetadata) => {
402
402
  const localValue = this.data.get(op.key);
403
+
404
+ assert(localValue !== undefined, 0x3f8 /* Local value expected on resubmission */);
405
+
403
406
  const handler = localValue.getOpHandler(op.value.opName);
404
407
  const {
405
408
  rebasedOp,
package/src/index.ts CHANGED
@@ -6,15 +6,16 @@
6
6
  /**
7
7
  * Supports distributed data structures which are list-like.
8
8
  *
9
- * This library's main export is {@link SharedSequence}, a DDS for storing and simultaneously editing a sequence of
9
+ * This library's main export is {@link SharedString}, a DDS for storing and simultaneously editing a sequence of
10
10
  * text.
11
11
  *
12
+ * See the package's README for a high-level introduction to `SharedString`'s feature set.
12
13
  * @remarks Note that SharedString is a sequence DDS but it has additional specialized features and behaviors for
13
14
  * working with text.
14
15
  *
15
16
  * @packageDocumentation
16
17
  */
17
-
18
+ export { IMapMessageLocalMetadata, IValueOpEmitter } from "./defaultMapInterfaces";
18
19
  export {
19
20
  DeserializeCallback,
20
21
  IIntervalCollectionEvent,
@@ -30,17 +31,16 @@ export {
30
31
  SequenceInterval,
31
32
  ISerializedIntervalCollectionV2,
32
33
  CompressedSerializedInterval,
34
+ SerializedIntervalDelta,
33
35
  } from "./intervalCollection";
36
+ export { IInterval, IntervalConflictResolver } from "./intervalTree";
37
+ export { ISharedSegmentSequenceEvents, SharedSegmentSequence } from "./sequence";
38
+ export { ISequenceDeltaRange, SequenceDeltaEvent, SequenceEvent, SequenceMaintenanceEvent } from "./sequenceDeltaEvent";
39
+ export { SharedStringFactory } from "./sequenceFactory";
40
+ export { getTextAndMarkers, ISharedString, SharedString, SharedStringSegment } from "./sharedString";
34
41
  export {
35
- IMapMessageLocalMetadata,
36
- IValueOpEmitter,
37
- } from "./defaultMapInterfaces";
38
- export * from "./sharedString";
39
- export * from "./sequence";
40
- export * from "./sequenceFactory";
41
- export * from "./sequenceDeltaEvent";
42
- export * from "./sharedSequence";
43
- export * from "./sharedObjectSequence";
44
- export * from "./sharedNumberSequence";
45
- export * from "./sparsematrix";
46
- export * from "./sharedIntervalCollection";
42
+ ISharedIntervalCollection,
43
+ SharedIntervalCollection,
44
+ SharedIntervalCollectionFactory,
45
+ } from "./sharedIntervalCollection";
46
+ export { IJSONRunSegment, SharedSequence, SubSequence } from "./sharedSequence";