@fluid-experimental/sequence-deprecated 2.74.0-365691 → 2.74.0
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.
- package/CHANGELOG.md +4 -0
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.d.ts.map +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/sequenceFactory.d.ts.map +1 -1
- package/dist/sequenceFactory.js.map +1 -1
- package/dist/sharedNumberSequence.d.ts.map +1 -1
- package/dist/sharedNumberSequence.js.map +1 -1
- package/dist/sparsematrix.d.ts +1 -1
- package/dist/sparsematrix.d.ts.map +1 -1
- package/dist/sparsematrix.js.map +1 -1
- package/eslint.config.mts +20 -0
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.d.ts.map +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/sequenceFactory.d.ts.map +1 -1
- package/lib/sequenceFactory.js.map +1 -1
- package/lib/sharedNumberSequence.d.ts.map +1 -1
- package/lib/sharedNumberSequence.js.map +1 -1
- package/lib/sparsematrix.d.ts +1 -1
- package/lib/sparsematrix.d.ts.map +1 -1
- package/lib/sparsematrix.js.map +1 -1
- package/package.json +14 -13
- package/src/packageVersion.ts +1 -1
- package/src/sequenceFactory.ts +4 -4
- package/src/sharedNumberSequence.ts +1 -1
- package/src/sparsematrix.ts +39 -31
package/CHANGELOG.md
CHANGED
package/dist/packageVersion.d.ts
CHANGED
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
6
6
|
*/
|
|
7
7
|
export declare const pkgName = "@fluid-experimental/sequence-deprecated";
|
|
8
|
-
export declare const pkgVersion = "2.74.0
|
|
8
|
+
export declare const pkgVersion = "2.74.0";
|
|
9
9
|
//# sourceMappingURL=packageVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,4CAA4C,CAAC;AACjE,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,4CAA4C,CAAC;AACjE,eAAO,MAAM,UAAU,WAAW,CAAC"}
|
package/dist/packageVersion.js
CHANGED
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.pkgVersion = exports.pkgName = void 0;
|
|
10
10
|
exports.pkgName = "@fluid-experimental/sequence-deprecated";
|
|
11
|
-
exports.pkgVersion = "2.74.0
|
|
11
|
+
exports.pkgVersion = "2.74.0";
|
|
12
12
|
//# sourceMappingURL=packageVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,yCAAyC,CAAC;AACpD,QAAA,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,yCAAyC,CAAC;AACpD,QAAA,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluid-experimental/sequence-deprecated\";\nexport const pkgVersion = \"2.74.0\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequenceFactory.d.ts","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAmB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACN,aAAa,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,
|
|
1
|
+
{"version":3,"file":"sequenceFactory.d.ts","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAmB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACN,aAAa,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;;;;OAKG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,aAAa,CAAC;IAMzB;;;OAGG;IACI,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;CAK1E;AAED;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;;;;OAKG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,aAAa,CAAC;IAMzB;;;OAGG;IACI,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;CAK1E;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,sUAAsD,CAAC;AACxF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,sUAAsD,CAAC;AACxF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequenceFactory.js","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport { IJSONSegment } from \"@fluidframework/merge-tree/internal\";\nimport { IJSONRunSegment, SubSequence } from \"@fluidframework/sequence/internal\";\nimport {\n\tISharedObject,\n\tcreateSharedObjectKind,\n} from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SharedNumberSequenceClass } from \"./sharedNumberSequence.js\";\nimport { SharedObjectSequenceClass } from \"./sharedObjectSequence.js\";\n\n/**\n * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedObjectSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/object-sequence\";\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedObjectSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<object> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<object>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<object>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type() {\n\t\treturn SharedObjectSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes() {\n\t\treturn SharedObjectSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedObjectSequenceClass<object>(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedObjectSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedNumberSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/number-sequence\";\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedNumberSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<number> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<number>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<number>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type() {\n\t\treturn SharedNumberSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes() {\n\t\treturn SharedNumberSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedNumberSequenceClass(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedNumberSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport const SharedNumberSequence = createSharedObjectKind(SharedNumberSequenceFactory);\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport type SharedNumberSequence = SharedNumberSequenceClass;\n\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport const SharedObjectSequence = createSharedObjectKind(SharedObjectSequenceFactory);\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport type SharedObjectSequence<T> = SharedObjectSequenceClass<T>;\n"]}
|
|
1
|
+
{"version":3,"file":"sequenceFactory.js","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport { IJSONSegment } from \"@fluidframework/merge-tree/internal\";\nimport { IJSONRunSegment, SubSequence } from \"@fluidframework/sequence/internal\";\nimport {\n\tISharedObject,\n\tcreateSharedObjectKind,\n} from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SharedNumberSequenceClass } from \"./sharedNumberSequence.js\";\nimport { SharedObjectSequenceClass } from \"./sharedObjectSequence.js\";\n\n/**\n * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedObjectSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/object-sequence\";\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedObjectSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<object> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<object>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<object>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type(): string {\n\t\treturn SharedObjectSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SharedObjectSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedObjectSequenceClass<object>(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedObjectSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedNumberSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/number-sequence\";\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedNumberSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<number> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<number>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<number>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type(): string {\n\t\treturn SharedNumberSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SharedNumberSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedNumberSequenceClass(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedNumberSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport const SharedNumberSequence = createSharedObjectKind(SharedNumberSequenceFactory);\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport type SharedNumberSequence = SharedNumberSequenceClass;\n\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport const SharedObjectSequence = createSharedObjectKind(SharedObjectSequenceFactory);\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport type SharedObjectSequence<T> = SharedObjectSequenceClass<T>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedNumberSequence.d.ts","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gDAAgD,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,qBAAa,yBAA0B,SAAQ,cAAc,CAAC,MAAM,CAAC;IAO5D,EAAE,EAAE,MAAM;IANlB;;;OAGG;gBAEF,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAW/B;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"sharedNumberSequence.d.ts","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gDAAgD,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,qBAAa,yBAA0B,SAAQ,cAAc,CAAC,MAAM,CAAC;IAO5D,EAAE,EAAE,MAAM;IANlB;;;OAGG;gBAEF,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAW/B;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;CAGtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedNumberSequence.js","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAOH,6DAAmE;AACnE,2DAAqD;AAErD;;;;;;;;;GASG;AACH,MAAa,yBAA0B,SAAQ,kCAAsB;IACpE;;;OAGG;IACH,YACC,QAAgC,EACzB,EAAU,EACjB,UAA8B;QAE9B,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,gDAA2B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;QATI,OAAE,GAAF,EAAE,CAAQ;IAUlB,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,KAAa,EAAE,GAAY;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;CACD;AA1BD,8DA0BC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIFluidDataStoreRuntime,\n} from \"@fluidframework/datastore-definitions/internal\";\n\nimport { SharedNumberSequenceFactory } from \"./sequenceFactory.js\";\nimport { SharedSequence } from \"./sharedSequence.js\";\n\n/**\n * The SharedNumberSequence holds a sequence of numbers. Each number will be stored\n * at a position within the sequence. See the\n * {@link https://fluidframework.com/docs/data-structures/sequences/ | sequence documentation}\n * for details on working with sequences.\n *\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n * @internal\n */\nexport class SharedNumberSequenceClass extends SharedSequence<number> {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, (spec) => {\n\t\t\tconst segment = SharedNumberSequenceFactory.segmentFromSpec(spec);\n\t\t\tif (!segment) {\n\t\t\t\tthrow new Error(\"expected `spec` to be valid `ISegment`\");\n\t\t\t}\n\t\t\treturn segment;\n\t\t});\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tpublic getRange(start: number, end?: number) {\n\t\treturn this.getItems(start, end);\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"sharedNumberSequence.js","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAOH,6DAAmE;AACnE,2DAAqD;AAErD;;;;;;;;;GASG;AACH,MAAa,yBAA0B,SAAQ,kCAAsB;IACpE;;;OAGG;IACH,YACC,QAAgC,EACzB,EAAU,EACjB,UAA8B;QAE9B,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,gDAA2B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;QATI,OAAE,GAAF,EAAE,CAAQ;IAUlB,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,KAAa,EAAE,GAAY;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;CACD;AA1BD,8DA0BC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIFluidDataStoreRuntime,\n} from \"@fluidframework/datastore-definitions/internal\";\n\nimport { SharedNumberSequenceFactory } from \"./sequenceFactory.js\";\nimport { SharedSequence } from \"./sharedSequence.js\";\n\n/**\n * The SharedNumberSequence holds a sequence of numbers. Each number will be stored\n * at a position within the sequence. See the\n * {@link https://fluidframework.com/docs/data-structures/sequences/ | sequence documentation}\n * for details on working with sequences.\n *\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n * @internal\n */\nexport class SharedNumberSequenceClass extends SharedSequence<number> {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, (spec) => {\n\t\t\tconst segment = SharedNumberSequenceFactory.segmentFromSpec(spec);\n\t\t\tif (!segment) {\n\t\t\t\tthrow new Error(\"expected `spec` to be valid `ISegment`\");\n\t\t\t}\n\t\t\treturn segment;\n\t\t});\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tpublic getRange(start: number, end?: number): number[] {\n\t\treturn this.getItems(start, end);\n\t}\n}\n"]}
|
package/dist/sparsematrix.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export declare class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
55
55
|
append(segment: ISegment): this;
|
|
56
56
|
removeRange(start: number, end: number): boolean;
|
|
57
57
|
getTag(pos: number): any;
|
|
58
|
-
setTag(pos: number, tag:
|
|
58
|
+
setTag(pos: number, tag: unknown): void;
|
|
59
59
|
protected createSplitSegmentAt(pos: number): RunSegment | undefined;
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparsematrix.d.ts","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAI1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC9C,gBAAuB,UAAU,oBAAoB;WACvC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,cAAc;WAGhD,cAAc,CAAC,IAAI,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"sparsematrix.d.ts","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAI1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC9C,gBAAuB,UAAU,oBAAoB;WACvC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,cAAc;WAGhD,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,cAAc,GAAG,SAAS;IAMnE,SAAgB,IAAI,oBAA6B;gBAErC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW;IAKtC,YAAY,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAA;KAAE;IAI/D,KAAK,CAAC,KAAK,SAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc;IAM9C,SAAS,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIrC,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAM/B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKvD,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc;CAO3D;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEnC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,WAAW,CAAC,gBAAgB,CAAC;IAgBpD,KAAK,EAAE,gBAAgB,EAAE;IAfjC,gBAAuB,UAAU,gBAAgB;WACnC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,UAAU;WAG5C,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,UAAU,GAAG,SAAS;IAM/D,SAAgB,IAAI,gBAAyB;IAE7C,OAAO,CAAC,IAAI,CAAQ;gBAGZ,KAAK,EAAE,gBAAgB,EAAE,EAChC,KAAK,CAAC,EAAE,WAAW;IAMb,KAAK,CAAC,KAAK,SAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU;IAS1C,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAe/B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKhD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAKxB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAI9C,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;CAanE;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,cAAc,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,OAAO,QAAa,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,MAAM,aAAa,CAAC;AAEjC;;;;GAIG;AACH,eAAO,MAAM,OAAO,QAAa,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAkB,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAS,MAAM,OAAO,MAAM,KAAG,MAA6B,CAAC;AAE1F;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAI/E;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,qBAAqB,CAAC,aAAa,CAAC;IAGlE,EAAE,EAAE,MAAM;gBADjB,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAK/B,IAAW,OAAO,IAAI,MAAM,CAE3B;IAEM,QAAQ,CACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,gBAAgB,EAAE,EAC1B,KAAK,CAAC,EAAE,WAAW,GACjB,IAAI;IAQA,OAAO,CACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GAEZ,AADG,mGAAmG;IACtG,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC,GAAG,SAAS;IAavD,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG;IASrC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAShD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAQ9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAM9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9C,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAKpE,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAO/E,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,UAAU;CAOlB;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,eAAe,CAAC,YAAY,CAAC;IACxE,OAAc,IAAI,SAA+D;IAEjF,OAAc,UAAU,EAAE,kBAAkB,CAI1C;WAEY,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ;IAc3D,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;OAEG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,YAAY,CAAC;IAMjB,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY;CAKzE;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,wLAA8C,CAAC;AACxE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,CAAC"}
|
package/dist/sparsematrix.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparsematrix.js","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { assert } from \"@fluidframework/core-utils/internal\";\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tJsonable,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tBaseSegment,\n\tIJSONSegment,\n\tISegment,\n\tPropertySet,\n} from \"@fluidframework/merge-tree/internal\";\nimport { SharedSegmentSequence } from \"@fluidframework/sequence/internal\";\nimport { createSharedObjectKind } from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SubSequence } from \"./sharedSequence.js\";\n\n/**\n * An empty segment that occupies 'cachedLength' positions.\n * {@link (SparseMatrix:variable)} uses `PaddingSegment` to \"pad\" a run of unoccupied cells.\n *\n * @deprecated `PaddingSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class PaddingSegment extends BaseSegment {\n\tpublic static readonly typeString = \"PaddingSegment\";\n\tpublic static is(segment: ISegment): segment is PaddingSegment {\n\t\treturn segment.type === PaddingSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any) {\n\t\tif (spec && typeof spec === \"object\" && \"pad\" in spec) {\n\t\t\treturn new PaddingSegment(spec.pad, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = PaddingSegment.typeString;\n\n\tconstructor(size: number, props?: PropertySet) {\n\t\tsuper(props);\n\t\tthis.cachedLength = size;\n\t}\n\n\tpublic toJSONObject() {\n\t\treturn { pad: this.cachedLength, props: this.properties };\n\t}\n\n\tpublic clone(start = 0, end?: number) {\n\t\tconst b = new PaddingSegment(this.cachedLength);\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic canAppend(segment: ISegment) {\n\t\treturn PaddingSegment.is(segment);\n\t}\n\n\tpublic toString() {\n\t\treturn `[padding: ${this.cachedLength}]`;\n\t}\n\n\tpublic append(segment: ISegment) {\n\t\tassert(PaddingSegment.is(segment), 0x5f7 /* can only append padding segment */);\n\t\tsuper.append(segment);\n\t}\n\n\t// Returns true if entire run removed\n\tpublic removeRange(start: number, end: number) {\n\t\tthis.cachedLength -= end - start;\n\t\treturn this.cachedLength === 0;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number) {\n\t\tconst leftLength = pos;\n\t\tconst rightLength = this.cachedLength - pos;\n\n\t\tthis.cachedLength = leftLength;\n\t\treturn new PaddingSegment(rightLength);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixItem` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type SparseMatrixItem = any;\n\n/**\n * @deprecated `RunSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class RunSegment extends SubSequence<SparseMatrixItem> {\n\tpublic static readonly typeString = \"RunSegment\";\n\tpublic static is(segment: ISegment): segment is RunSegment {\n\t\treturn segment.type === RunSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any) {\n\t\tif (spec && typeof spec === \"object\" && \"items\" in spec) {\n\t\t\treturn new RunSegment(spec.items, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = RunSegment.typeString;\n\n\tprivate tags: any[];\n\n\tconstructor(\n\t\tpublic items: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t) {\n\t\tsuper(items, props);\n\t\tthis.tags = new Array(items.length).fill(undefined);\n\t}\n\n\tpublic clone(start = 0, end?: number) {\n\t\tconst b = new RunSegment(this.items.slice(start, end));\n\t\tif (this.tags) {\n\t\t\tb.tags = this.tags.slice(start, end);\n\t\t}\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic append(segment: ISegment) {\n\t\tsuper.append(segment);\n\n\t\tconst asRun = segment as RunSegment;\n\t\tif (asRun.tags) {\n\t\t\tif (this.tags) {\n\t\t\t\tthis.tags.splice(this.items.length, 0, ...asRun.tags);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t// TODO: retain removed items for undo\n\t// returns true if entire run removed\n\tpublic removeRange(start: number, end: number) {\n\t\tthis.tags.splice(start, end - start);\n\t\treturn super.removeRange(start, end);\n\t}\n\n\tpublic getTag(pos: number) {\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\treturn this.tags[pos];\n\t}\n\n\tpublic setTag(pos: number, tag: any) {\n\t\tthis.tags[pos] = tag;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number) {\n\t\tif (pos > 0) {\n\t\t\tconst remainingItems = this.items.slice(pos);\n\t\t\tthis.items = this.items.slice(0, pos);\n\t\t\tthis.cachedLength = this.items.length;\n\n\t\t\tconst leafSegment = new RunSegment(remainingItems);\n\t\t\tleafSegment.tags = this.tags.slice(pos);\n\t\t\tthis.tags.length = pos;\n\n\t\t\treturn leafSegment;\n\t\t}\n\t}\n}\n\n/**\n * @deprecated `MatrixSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type MatrixSegment = RunSegment | PaddingSegment;\n\n/**\n * @deprecated `maxCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCol = 0x200000; // X128 Excel maximum of 16,384 columns\n\n/**\n * @deprecated `maxCols` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCols = maxCol + 1;\n\n/**\n * @deprecated `maxRow` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRow = 0xffffffff; // X4096 Excel maximum of 1,048,576 rows\n\n/**\n * @deprecated `maxRows` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRows = maxRow + 1;\n\n/**\n * @deprecated `maxCellPosition` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCellPosition = maxCol * maxRow;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const rowColToPosition = (row: number, col: number) => row * maxCols + col;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport function positionToRowCol(position: number) {\n\tconst row = Math.floor(position / maxCols);\n\tconst col = position - row * maxCols;\n\treturn { row, col };\n}\n\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, SparseMatrixFactory.segmentFromSpec);\n\t}\n\n\tpublic get numRows() {\n\t\treturn positionToRowCol(this.getLength()).row;\n\t}\n\n\tpublic setItems(row: number, col: number, values: SparseMatrixItem[], props?: PropertySet) {\n\t\tconst start = rowColToPosition(row, col);\n\t\tconst end = start + values.length;\n\t\tconst segment = new RunSegment(values, props);\n\n\t\tthis.replaceRange(start, end, segment);\n\t}\n\n\tpublic getItem(\n\t\trow: number,\n\t\tcol: number,\n\t): // The return type is defined explicitly here to prevent TypeScript from generating dynamic imports\n\tJsonable<string | number | boolean | IFluidHandle> | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tconst { segment, offset } = this.getContainingSegment(pos);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.items[offset ?? 0];\n\t\t} else if (segment && PaddingSegment.is(segment)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized Segment type`);\n\t}\n\n\tpublic getTag(row: number, col: number) {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.getTag(offset ?? 0);\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tpublic setTag(row: number, col: number, tag: any) {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\tsegment.setTag(offset ?? 0, tag);\n\t\t} else if (tag !== undefined) {\n\t\t\tthrow new Error(`Must not attempt to set tags on '${segment?.constructor.name}'.`);\n\t\t}\n\t}\n\n\tpublic insertRows(row: number, numRows: number) {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tconst segment = new PaddingSegment(size);\n\n\t\tthis.client.insertSegmentLocal(pos, segment);\n\t}\n\n\tpublic removeRows(row: number, numRows: number) {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tthis.removeRange(pos, pos + size);\n\t}\n\n\tpublic insertCols(col: number, numCols: number) {\n\t\tthis.moveAsPadding(maxCol - numCols, col, numCols);\n\t}\n\n\tpublic removeCols(col: number, numCols: number) {\n\t\tthis.moveAsPadding(col, maxCol - numCols, numCols);\n\t}\n\n\tpublic annotatePosition(row: number, col: number, props: PropertySet) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tthis.annotateRange(pos, pos + 1, props);\n\t}\n\n\tpublic getPositionProperties(row: number, col: number) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getPropertiesAtPosition(pos);\n\t}\n\n\t// For each row, moves 'numCols' items starting from 'srcCol' and inserts 'numCols' padding\n\t// at 'destCol'. Used by insertCols and removeCols.\n\tprivate moveAsPadding(srcCol: number, destCol: number, numCols: number) {\n\t\tconst removeColStart = srcCol;\n\t\tconst removeColEnd = srcCol + numCols;\n\n\t\tfor (let r = 0, rowStart = 0; r < this.numRows; r++, rowStart += maxCols) {\n\t\t\tthis.client.removeRangeLocal(rowStart + removeColStart, rowStart + removeColEnd);\n\t\t\tconst insertPos = rowStart + destCol;\n\t\t\tconst segment = new PaddingSegment(numCols);\n\t\t\tthis.client.insertSegmentLocal(insertPos, segment);\n\t\t}\n\t}\n\n\tprivate getSegment(row: number, col: number) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getContainingSegment(pos);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixFactory` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrixFactory} instead.\n * @internal\n */\nexport class SparseMatrixFactory implements IChannelFactory<SparseMatrix> {\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/sparse-matrix\";\n\n\tpublic static Attributes: IChannelAttributes = {\n\t\ttype: SparseMatrixFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\tpublic static segmentFromSpec(spec: IJSONSegment): ISegment {\n\t\tconst maybePadding = PaddingSegment.fromJSONObject(spec);\n\t\tif (maybePadding) {\n\t\t\treturn maybePadding;\n\t\t}\n\n\t\tconst maybeRun = RunSegment.fromJSONObject(spec);\n\t\tif (maybeRun) {\n\t\t\treturn maybeRun;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject: '${JSON.stringify(spec)}'`);\n\t}\n\n\tpublic get type() {\n\t\treturn SparseMatrixFactory.Type;\n\t}\n\n\tpublic get attributes() {\n\t\treturn SparseMatrixFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<SparseMatrix> {\n\t\tconst sharedObject = new SparseMatrixClass(runtime, id, attributes);\n\t\tawait sharedObject.load(services);\n\t\treturn sharedObject;\n\t}\n\n\tpublic create(document: IFluidDataStoreRuntime, id: string): SparseMatrix {\n\t\tconst sharedObject = new SparseMatrixClass(document, id, this.attributes);\n\t\tsharedObject.initializeLocal();\n\t\treturn sharedObject;\n\t}\n}\n\n/**\n * @deprecated `SparseMatrix` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const SparseMatrix = createSharedObjectKind(SparseMatrixFactory);\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport type SparseMatrix = SparseMatrixClass;\n"]}
|
|
1
|
+
{"version":3,"file":"sparsematrix.js","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { assert } from \"@fluidframework/core-utils/internal\";\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tJsonable,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tBaseSegment,\n\tIJSONSegment,\n\tISegment,\n\tPropertySet,\n} from \"@fluidframework/merge-tree/internal\";\nimport { SharedSegmentSequence } from \"@fluidframework/sequence/internal\";\nimport { createSharedObjectKind } from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SubSequence } from \"./sharedSequence.js\";\n\n/**\n * An empty segment that occupies 'cachedLength' positions.\n * {@link (SparseMatrix:variable)} uses `PaddingSegment` to \"pad\" a run of unoccupied cells.\n *\n * @deprecated `PaddingSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class PaddingSegment extends BaseSegment {\n\tpublic static readonly typeString = \"PaddingSegment\";\n\tpublic static is(segment: ISegment): segment is PaddingSegment {\n\t\treturn segment.type === PaddingSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any): PaddingSegment | undefined {\n\t\tif (spec && typeof spec === \"object\" && \"pad\" in spec) {\n\t\t\treturn new PaddingSegment(spec.pad, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = PaddingSegment.typeString;\n\n\tconstructor(size: number, props?: PropertySet) {\n\t\tsuper(props);\n\t\tthis.cachedLength = size;\n\t}\n\n\tpublic toJSONObject(): { pad: number; props: PropertySet | undefined } {\n\t\treturn { pad: this.cachedLength, props: this.properties };\n\t}\n\n\tpublic clone(start = 0, end?: number): PaddingSegment {\n\t\tconst b = new PaddingSegment(this.cachedLength);\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic canAppend(segment: ISegment): boolean {\n\t\treturn PaddingSegment.is(segment);\n\t}\n\n\tpublic toString(): string {\n\t\treturn `[padding: ${this.cachedLength}]`;\n\t}\n\n\tpublic append(segment: ISegment): void {\n\t\tassert(PaddingSegment.is(segment), 0x5f7 /* can only append padding segment */);\n\t\tsuper.append(segment);\n\t}\n\n\t// Returns true if entire run removed\n\tpublic removeRange(start: number, end: number): boolean {\n\t\tthis.cachedLength -= end - start;\n\t\treturn this.cachedLength === 0;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number): PaddingSegment {\n\t\tconst leftLength = pos;\n\t\tconst rightLength = this.cachedLength - pos;\n\n\t\tthis.cachedLength = leftLength;\n\t\treturn new PaddingSegment(rightLength);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixItem` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type SparseMatrixItem = any;\n\n/**\n * @deprecated `RunSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class RunSegment extends SubSequence<SparseMatrixItem> {\n\tpublic static readonly typeString = \"RunSegment\";\n\tpublic static is(segment: ISegment): segment is RunSegment {\n\t\treturn segment.type === RunSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any): RunSegment | undefined {\n\t\tif (spec && typeof spec === \"object\" && \"items\" in spec) {\n\t\t\treturn new RunSegment(spec.items, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = RunSegment.typeString;\n\n\tprivate tags: any[];\n\n\tconstructor(\n\t\tpublic items: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t) {\n\t\tsuper(items, props);\n\t\tthis.tags = new Array(items.length).fill(undefined);\n\t}\n\n\tpublic clone(start = 0, end?: number): RunSegment {\n\t\tconst b = new RunSegment(this.items.slice(start, end));\n\t\tif (this.tags) {\n\t\t\tb.tags = this.tags.slice(start, end);\n\t\t}\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic append(segment: ISegment): this {\n\t\tsuper.append(segment);\n\n\t\tconst asRun = segment as RunSegment;\n\t\tif (asRun.tags) {\n\t\t\tif (this.tags) {\n\t\t\t\tthis.tags.splice(this.items.length, 0, ...asRun.tags);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t// TODO: retain removed items for undo\n\t// returns true if entire run removed\n\tpublic removeRange(start: number, end: number): boolean {\n\t\tthis.tags.splice(start, end - start);\n\t\treturn super.removeRange(start, end);\n\t}\n\n\tpublic getTag(pos: number): any {\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\treturn this.tags[pos];\n\t}\n\n\tpublic setTag(pos: number, tag: unknown): void {\n\t\tthis.tags[pos] = tag;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number): RunSegment | undefined {\n\t\tif (pos > 0) {\n\t\t\tconst remainingItems = this.items.slice(pos);\n\t\t\tthis.items = this.items.slice(0, pos);\n\t\t\tthis.cachedLength = this.items.length;\n\n\t\t\tconst leafSegment = new RunSegment(remainingItems);\n\t\t\tleafSegment.tags = this.tags.slice(pos);\n\t\t\tthis.tags.length = pos;\n\n\t\t\treturn leafSegment;\n\t\t}\n\t}\n}\n\n/**\n * @deprecated `MatrixSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type MatrixSegment = RunSegment | PaddingSegment;\n\n/**\n * @deprecated `maxCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCol = 0x200000; // X128 Excel maximum of 16,384 columns\n\n/**\n * @deprecated `maxCols` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCols = maxCol + 1;\n\n/**\n * @deprecated `maxRow` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRow = 0xffffffff; // X4096 Excel maximum of 1,048,576 rows\n\n/**\n * @deprecated `maxRows` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRows = maxRow + 1;\n\n/**\n * @deprecated `maxCellPosition` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCellPosition = maxCol * maxRow;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const rowColToPosition = (row: number, col: number): number => row * maxCols + col;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport function positionToRowCol(position: number): { row: number; col: number } {\n\tconst row = Math.floor(position / maxCols);\n\tconst col = position - row * maxCols;\n\treturn { row, col };\n}\n\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, SparseMatrixFactory.segmentFromSpec);\n\t}\n\n\tpublic get numRows(): number {\n\t\treturn positionToRowCol(this.getLength()).row;\n\t}\n\n\tpublic setItems(\n\t\trow: number,\n\t\tcol: number,\n\t\tvalues: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t): void {\n\t\tconst start = rowColToPosition(row, col);\n\t\tconst end = start + values.length;\n\t\tconst segment = new RunSegment(values, props);\n\n\t\tthis.replaceRange(start, end, segment);\n\t}\n\n\tpublic getItem(\n\t\trow: number,\n\t\tcol: number,\n\t): // The return type is defined explicitly here to prevent TypeScript from generating dynamic imports\n\tJsonable<string | number | boolean | IFluidHandle> | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tconst { segment, offset } = this.getContainingSegment(pos);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.items[offset ?? 0];\n\t\t} else if (segment && PaddingSegment.is(segment)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized Segment type`);\n\t}\n\n\tpublic getTag(row: number, col: number): any {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.getTag(offset ?? 0);\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tpublic setTag(row: number, col: number, tag: any): void {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\tsegment.setTag(offset ?? 0, tag);\n\t\t} else if (tag !== undefined) {\n\t\t\tthrow new Error(`Must not attempt to set tags on '${segment?.constructor.name}'.`);\n\t\t}\n\t}\n\n\tpublic insertRows(row: number, numRows: number): void {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tconst segment = new PaddingSegment(size);\n\n\t\tthis.client.insertSegmentLocal(pos, segment);\n\t}\n\n\tpublic removeRows(row: number, numRows: number): void {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tthis.removeRange(pos, pos + size);\n\t}\n\n\tpublic insertCols(col: number, numCols: number): void {\n\t\tthis.moveAsPadding(maxCol - numCols, col, numCols);\n\t}\n\n\tpublic removeCols(col: number, numCols: number): void {\n\t\tthis.moveAsPadding(col, maxCol - numCols, numCols);\n\t}\n\n\tpublic annotatePosition(row: number, col: number, props: PropertySet): void {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tthis.annotateRange(pos, pos + 1, props);\n\t}\n\n\tpublic getPositionProperties(row: number, col: number): PropertySet | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getPropertiesAtPosition(pos);\n\t}\n\n\t// For each row, moves 'numCols' items starting from 'srcCol' and inserts 'numCols' padding\n\t// at 'destCol'. Used by insertCols and removeCols.\n\tprivate moveAsPadding(srcCol: number, destCol: number, numCols: number): void {\n\t\tconst removeColStart = srcCol;\n\t\tconst removeColEnd = srcCol + numCols;\n\n\t\tfor (let r = 0, rowStart = 0; r < this.numRows; r++, rowStart += maxCols) {\n\t\t\tthis.client.removeRangeLocal(rowStart + removeColStart, rowStart + removeColEnd);\n\t\t\tconst insertPos = rowStart + destCol;\n\t\t\tconst segment = new PaddingSegment(numCols);\n\t\t\tthis.client.insertSegmentLocal(insertPos, segment);\n\t\t}\n\t}\n\n\tprivate getSegment(\n\t\trow: number,\n\t\tcol: number,\n\t): { segment: MatrixSegment | undefined; offset: number | undefined } {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getContainingSegment(pos);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixFactory` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrixFactory} instead.\n * @internal\n */\nexport class SparseMatrixFactory implements IChannelFactory<SparseMatrix> {\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/sparse-matrix\";\n\n\tpublic static Attributes: IChannelAttributes = {\n\t\ttype: SparseMatrixFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\tpublic static segmentFromSpec(spec: IJSONSegment): ISegment {\n\t\tconst maybePadding = PaddingSegment.fromJSONObject(spec);\n\t\tif (maybePadding) {\n\t\t\treturn maybePadding;\n\t\t}\n\n\t\tconst maybeRun = RunSegment.fromJSONObject(spec);\n\t\tif (maybeRun) {\n\t\t\treturn maybeRun;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject: '${JSON.stringify(spec)}'`);\n\t}\n\n\tpublic get type(): string {\n\t\treturn SparseMatrixFactory.Type;\n\t}\n\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SparseMatrixFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<SparseMatrix> {\n\t\tconst sharedObject = new SparseMatrixClass(runtime, id, attributes);\n\t\tawait sharedObject.load(services);\n\t\treturn sharedObject;\n\t}\n\n\tpublic create(document: IFluidDataStoreRuntime, id: string): SparseMatrix {\n\t\tconst sharedObject = new SparseMatrixClass(document, id, this.attributes);\n\t\tsharedObject.initializeLocal();\n\t\treturn sharedObject;\n\t}\n}\n\n/**\n * @deprecated `SparseMatrix` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const SparseMatrix = createSharedObjectKind(SparseMatrixFactory);\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport type SparseMatrix = SparseMatrixClass;\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/**
|
|
3
|
+
* GENERATED FILE - DO NOT EDIT DIRECTLY.
|
|
4
|
+
* To regenerate: pnpm tsx scripts/generate-flat-eslint-configs.ts --typescript
|
|
5
|
+
*/
|
|
6
|
+
import type { Linter } from "eslint";
|
|
7
|
+
import { minimalDeprecated } from "../../../common/build/eslint-config-fluid/flat.mts";
|
|
8
|
+
|
|
9
|
+
const config: Linter.Config[] = [
|
|
10
|
+
...minimalDeprecated,
|
|
11
|
+
{
|
|
12
|
+
rules: {
|
|
13
|
+
"import-x/no-deprecated": "off",
|
|
14
|
+
"@typescript-eslint/no-use-before-define": "off",
|
|
15
|
+
"@typescript-eslint/strict-boolean-expressions": "off",
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
];
|
|
19
|
+
|
|
20
|
+
export default config;
|
package/lib/packageVersion.d.ts
CHANGED
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
6
6
|
*/
|
|
7
7
|
export declare const pkgName = "@fluid-experimental/sequence-deprecated";
|
|
8
|
-
export declare const pkgVersion = "2.74.0
|
|
8
|
+
export declare const pkgVersion = "2.74.0";
|
|
9
9
|
//# sourceMappingURL=packageVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,4CAA4C,CAAC;AACjE,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,4CAA4C,CAAC;AACjE,eAAO,MAAM,UAAU,WAAW,CAAC"}
|
package/lib/packageVersion.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,yCAAyC,CAAC;AACjE,MAAM,CAAC,MAAM,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,yCAAyC,CAAC;AACjE,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluid-experimental/sequence-deprecated\";\nexport const pkgVersion = \"2.74.0\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequenceFactory.d.ts","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAmB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACN,aAAa,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,
|
|
1
|
+
{"version":3,"file":"sequenceFactory.d.ts","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAmB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EACN,aAAa,EAEb,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;;;;OAKG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,aAAa,CAAC;IAMzB;;;OAGG;IACI,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;CAK1E;AAED;;;;GAIG;AACH,qBAAa,2BAA4B,YAAW,eAAe;IAClE;;;OAGG;IACH,OAAc,IAAI,SAAiE;IAEnF;;;OAGG;IACH,gBAAuB,UAAU,EAAE,kBAAkB,CAInD;IAEF;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC;IASzE;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;;;;OAKG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,aAAa,CAAC;IAMzB;;;OAGG;IACI,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;CAK1E;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,sUAAsD,CAAC;AACxF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,sUAAsD,CAAC;AACxF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequenceFactory.js","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport { IJSONSegment } from \"@fluidframework/merge-tree/internal\";\nimport { IJSONRunSegment, SubSequence } from \"@fluidframework/sequence/internal\";\nimport {\n\tISharedObject,\n\tcreateSharedObjectKind,\n} from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SharedNumberSequenceClass } from \"./sharedNumberSequence.js\";\nimport { SharedObjectSequenceClass } from \"./sharedObjectSequence.js\";\n\n/**\n * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedObjectSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/object-sequence\";\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedObjectSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<object> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<object>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<object>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type() {\n\t\treturn SharedObjectSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes() {\n\t\treturn SharedObjectSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedObjectSequenceClass<object>(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedObjectSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedNumberSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/number-sequence\";\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedNumberSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<number> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<number>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<number>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type() {\n\t\treturn SharedNumberSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes() {\n\t\treturn SharedNumberSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedNumberSequenceClass(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedNumberSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport const SharedNumberSequence = createSharedObjectKind(SharedNumberSequenceFactory);\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport type SharedNumberSequence = SharedNumberSequenceClass;\n\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport const SharedObjectSequence = createSharedObjectKind(SharedObjectSequenceFactory);\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport type SharedObjectSequence<T> = SharedObjectSequenceClass<T>;\n"]}
|
|
1
|
+
{"version":3,"file":"sequenceFactory.js","sourceRoot":"","sources":["../src/sequenceFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,EAAmB,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAEN,sBAAsB,GACtB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;GAIG;AACH,MAAM,OAAO,2BAA2B;IAiBvC;;;OAGG;IACI,MAAM,CAAC,eAAe,CAAC,OAAqB;QAClD,MAAM,UAAU,GAAG,OAAkC,CAAC;QACtD,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,IAAI,WAAW,CAAS,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,IAAW,IAAI;QACd,OAAO,2BAA2B,CAAC,IAAI,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,IAAW,UAAU;QACpB,OAAO,2BAA2B,CAAC,UAAU,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CAChB,OAA+B,EAC/B,EAAU,EACV,QAA0B,EAC1B,UAA8B;QAE9B,MAAM,SAAS,GAAG,IAAI,yBAAyB,CAAS,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACjF,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,QAAgC,EAAE,EAAU;QACzD,MAAM,YAAY,GAAG,IAAI,yBAAyB,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClF,YAAY,CAAC,eAAe,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC;IACrB,CAAC;;AAtED;;;GAGG;AACW,gCAAI,GAAG,6DAA6D,CAAC;AAEnF;;;GAGG;AACoB,sCAAU,GAAuB;IACvD,IAAI,EAAE,2BAA2B,CAAC,IAAI;IACtC,qBAAqB,EAAE,KAAK;IAC5B,cAAc,EAAE,UAAU;CAC1B,CAAC;AA2DH;;;;GAIG;AACH,MAAM,OAAO,2BAA2B;IAiBvC;;;OAGG;IACI,MAAM,CAAC,eAAe,CAAC,OAAqB;QAClD,MAAM,UAAU,GAAG,OAAkC,CAAC;QACtD,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,IAAI,WAAW,CAAS,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,IAAW,IAAI;QACd,OAAO,2BAA2B,CAAC,IAAI,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,IAAW,UAAU;QACpB,OAAO,2BAA2B,CAAC,UAAU,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI,CAChB,OAA+B,EAC/B,EAAU,EACV,QAA0B,EAC1B,UAA8B;QAE9B,MAAM,SAAS,GAAG,IAAI,yBAAyB,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACzE,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,QAAgC,EAAE,EAAU;QACzD,MAAM,YAAY,GAAG,IAAI,yBAAyB,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClF,YAAY,CAAC,eAAe,EAAE,CAAC;QAC/B,OAAO,YAAY,CAAC;IACrB,CAAC;;AAtED;;;GAGG;AACW,gCAAI,GAAG,6DAA6D,CAAC;AAEnF;;;GAGG;AACoB,sCAAU,GAAuB;IACvD,IAAI,EAAE,2BAA2B,CAAC,IAAI;IACtC,qBAAqB,EAAE,KAAK;IAC5B,cAAc,EAAE,UAAU;CAC1B,CAAC;AA2DH;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,CAAC;AAOxF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport { IJSONSegment } from \"@fluidframework/merge-tree/internal\";\nimport { IJSONRunSegment, SubSequence } from \"@fluidframework/sequence/internal\";\nimport {\n\tISharedObject,\n\tcreateSharedObjectKind,\n} from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SharedNumberSequenceClass } from \"./sharedNumberSequence.js\";\nimport { SharedObjectSequenceClass } from \"./sharedObjectSequence.js\";\n\n/**\n * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedObjectSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/object-sequence\";\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedObjectSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<object> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<object>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<object>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type(): string {\n\t\treturn SharedObjectSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SharedObjectSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedObjectSequenceClass<object>(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedObjectSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n * @internal\n */\nexport class SharedNumberSequenceFactory implements IChannelFactory {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/number-sequence\";\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static readonly Attributes: IChannelAttributes = {\n\t\ttype: SharedNumberSequenceFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic static segmentFromSpec(segSpec: IJSONSegment): SubSequence<number> {\n\t\tconst runSegment = segSpec as IJSONRunSegment<number>;\n\t\tif (runSegment.items) {\n\t\t\treturn new SubSequence<number>(runSegment.items, runSegment.props);\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject`);\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get type(): string {\n\t\treturn SharedNumberSequenceFactory.Type;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SharedNumberSequenceFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t *\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<ISharedObject> {\n\t\tconst sharedSeq = new SharedNumberSequenceClass(runtime, id, attributes);\n\t\tawait sharedSeq.load(services);\n\t\treturn sharedSeq;\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}\n\t */\n\tpublic create(document: IFluidDataStoreRuntime, id: string): ISharedObject {\n\t\tconst sharedString = new SharedNumberSequenceClass(document, id, this.attributes);\n\t\tsharedString.initializeLocal();\n\t\treturn sharedString;\n\t}\n}\n\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport const SharedNumberSequence = createSharedObjectKind(SharedNumberSequenceFactory);\n/**\n * {@inheritDoc SharedNumberSequenceClass}\n * @internal\n */\nexport type SharedNumberSequence = SharedNumberSequenceClass;\n\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport const SharedObjectSequence = createSharedObjectKind(SharedObjectSequenceFactory);\n/**\n * {@inheritDoc SharedObjectSequenceClass}\n * @internal\n */\nexport type SharedObjectSequence<T> = SharedObjectSequenceClass<T>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedNumberSequence.d.ts","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gDAAgD,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,qBAAa,yBAA0B,SAAQ,cAAc,CAAC,MAAM,CAAC;IAO5D,EAAE,EAAE,MAAM;IANlB;;;OAGG;gBAEF,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAW/B;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"sharedNumberSequence.d.ts","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gDAAgD,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,qBAAa,yBAA0B,SAAQ,cAAc,CAAC,MAAM,CAAC;IAO5D,EAAE,EAAE,MAAM;IANlB;;;OAGG;gBAEF,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAW/B;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;CAGtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedNumberSequence.js","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,OAAO,yBAA0B,SAAQ,cAAsB;IACpE;;;OAGG;IACH,YACC,QAAgC,EACzB,EAAU,EACjB,UAA8B;QAE9B,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,2BAA2B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;QATI,OAAE,GAAF,EAAE,CAAQ;IAUlB,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,KAAa,EAAE,GAAY;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;CACD","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIFluidDataStoreRuntime,\n} from \"@fluidframework/datastore-definitions/internal\";\n\nimport { SharedNumberSequenceFactory } from \"./sequenceFactory.js\";\nimport { SharedSequence } from \"./sharedSequence.js\";\n\n/**\n * The SharedNumberSequence holds a sequence of numbers. Each number will be stored\n * at a position within the sequence. See the\n * {@link https://fluidframework.com/docs/data-structures/sequences/ | sequence documentation}\n * for details on working with sequences.\n *\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n * @internal\n */\nexport class SharedNumberSequenceClass extends SharedSequence<number> {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, (spec) => {\n\t\t\tconst segment = SharedNumberSequenceFactory.segmentFromSpec(spec);\n\t\t\tif (!segment) {\n\t\t\t\tthrow new Error(\"expected `spec` to be valid `ISegment`\");\n\t\t\t}\n\t\t\treturn segment;\n\t\t});\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tpublic getRange(start: number, end?: number) {\n\t\treturn this.getItems(start, end);\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"sharedNumberSequence.js","sourceRoot":"","sources":["../src/sharedNumberSequence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,OAAO,yBAA0B,SAAQ,cAAsB;IACpE;;;OAGG;IACH,YACC,QAAgC,EACzB,EAAU,EACjB,UAA8B;QAE9B,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,2BAA2B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;QATI,OAAE,GAAF,EAAE,CAAQ;IAUlB,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,KAAa,EAAE,GAAY;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;CACD","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIChannelAttributes,\n\tIFluidDataStoreRuntime,\n} from \"@fluidframework/datastore-definitions/internal\";\n\nimport { SharedNumberSequenceFactory } from \"./sequenceFactory.js\";\nimport { SharedSequence } from \"./sharedSequence.js\";\n\n/**\n * The SharedNumberSequence holds a sequence of numbers. Each number will be stored\n * at a position within the sequence. See the\n * {@link https://fluidframework.com/docs/data-structures/sequences/ | sequence documentation}\n * for details on working with sequences.\n *\n * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n * @internal\n */\nexport class SharedNumberSequenceClass extends SharedSequence<number> {\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, (spec) => {\n\t\t\tconst segment = SharedNumberSequenceFactory.segmentFromSpec(spec);\n\t\t\tif (!segment) {\n\t\t\t\tthrow new Error(\"expected `spec` to be valid `ISegment`\");\n\t\t\t}\n\t\t\treturn segment;\n\t\t});\n\t}\n\n\t/**\n\t * @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.\n\t * For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.\n\t */\n\tpublic getRange(start: number, end?: number): number[] {\n\t\treturn this.getItems(start, end);\n\t}\n}\n"]}
|
package/lib/sparsematrix.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export declare class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
55
55
|
append(segment: ISegment): this;
|
|
56
56
|
removeRange(start: number, end: number): boolean;
|
|
57
57
|
getTag(pos: number): any;
|
|
58
|
-
setTag(pos: number, tag:
|
|
58
|
+
setTag(pos: number, tag: unknown): void;
|
|
59
59
|
protected createSplitSegmentAt(pos: number): RunSegment | undefined;
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparsematrix.d.ts","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAI1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC9C,gBAAuB,UAAU,oBAAoB;WACvC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,cAAc;WAGhD,cAAc,CAAC,IAAI,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"sparsematrix.d.ts","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAI1E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC9C,gBAAuB,UAAU,oBAAoB;WACvC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,cAAc;WAGhD,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,cAAc,GAAG,SAAS;IAMnE,SAAgB,IAAI,oBAA6B;gBAErC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW;IAKtC,YAAY,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAA;KAAE;IAI/D,KAAK,CAAC,KAAK,SAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,cAAc;IAM9C,SAAS,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIrC,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAM/B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKvD,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc;CAO3D;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEnC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,WAAW,CAAC,gBAAgB,CAAC;IAgBpD,KAAK,EAAE,gBAAgB,EAAE;IAfjC,gBAAuB,UAAU,gBAAgB;WACnC,EAAE,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,IAAI,UAAU;WAG5C,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,UAAU,GAAG,SAAS;IAM/D,SAAgB,IAAI,gBAAyB;IAE7C,OAAO,CAAC,IAAI,CAAQ;gBAGZ,KAAK,EAAE,gBAAgB,EAAE,EAChC,KAAK,CAAC,EAAE,WAAW;IAMb,KAAK,CAAC,KAAK,SAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU;IAS1C,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,IAAI;IAe/B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAKhD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAKxB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAI9C,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;CAanE;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,cAAc,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAAW,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,OAAO,QAAa,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,MAAM,aAAa,CAAC;AAEjC;;;;GAIG;AACH,eAAO,MAAM,OAAO,QAAa,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAkB,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAS,MAAM,OAAO,MAAM,KAAG,MAA6B,CAAC;AAE1F;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAI/E;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,qBAAqB,CAAC,aAAa,CAAC;IAGlE,EAAE,EAAE,MAAM;gBADjB,QAAQ,EAAE,sBAAsB,EACzB,EAAE,EAAE,MAAM,EACjB,UAAU,EAAE,kBAAkB;IAK/B,IAAW,OAAO,IAAI,MAAM,CAE3B;IAEM,QAAQ,CACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,gBAAgB,EAAE,EAC1B,KAAK,CAAC,EAAE,WAAW,GACjB,IAAI;IAQA,OAAO,CACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GAEZ,AADG,mGAAmG;IACtG,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC,GAAG,SAAS;IAavD,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG;IASrC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAShD,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAQ9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAM9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAI9C,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAKpE,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAO/E,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,UAAU;CAOlB;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,eAAe,CAAC,YAAY,CAAC;IACxE,OAAc,IAAI,SAA+D;IAEjF,OAAc,UAAU,EAAE,kBAAkB,CAI1C;WAEY,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ;IAc3D,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,kBAAkB,CAE1C;IAED;;OAEG;IACU,IAAI,CAChB,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,kBAAkB,GAC5B,OAAO,CAAC,YAAY,CAAC;IAMjB,MAAM,CAAC,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY;CAKzE;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,wLAA8C,CAAC;AACxE;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,CAAC"}
|
package/lib/sparsematrix.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparsematrix.js","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { assert } from \"@fluidframework/core-utils/internal\";\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tJsonable,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tBaseSegment,\n\tIJSONSegment,\n\tISegment,\n\tPropertySet,\n} from \"@fluidframework/merge-tree/internal\";\nimport { SharedSegmentSequence } from \"@fluidframework/sequence/internal\";\nimport { createSharedObjectKind } from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SubSequence } from \"./sharedSequence.js\";\n\n/**\n * An empty segment that occupies 'cachedLength' positions.\n * {@link (SparseMatrix:variable)} uses `PaddingSegment` to \"pad\" a run of unoccupied cells.\n *\n * @deprecated `PaddingSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class PaddingSegment extends BaseSegment {\n\tpublic static readonly typeString = \"PaddingSegment\";\n\tpublic static is(segment: ISegment): segment is PaddingSegment {\n\t\treturn segment.type === PaddingSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any) {\n\t\tif (spec && typeof spec === \"object\" && \"pad\" in spec) {\n\t\t\treturn new PaddingSegment(spec.pad, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = PaddingSegment.typeString;\n\n\tconstructor(size: number, props?: PropertySet) {\n\t\tsuper(props);\n\t\tthis.cachedLength = size;\n\t}\n\n\tpublic toJSONObject() {\n\t\treturn { pad: this.cachedLength, props: this.properties };\n\t}\n\n\tpublic clone(start = 0, end?: number) {\n\t\tconst b = new PaddingSegment(this.cachedLength);\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic canAppend(segment: ISegment) {\n\t\treturn PaddingSegment.is(segment);\n\t}\n\n\tpublic toString() {\n\t\treturn `[padding: ${this.cachedLength}]`;\n\t}\n\n\tpublic append(segment: ISegment) {\n\t\tassert(PaddingSegment.is(segment), 0x5f7 /* can only append padding segment */);\n\t\tsuper.append(segment);\n\t}\n\n\t// Returns true if entire run removed\n\tpublic removeRange(start: number, end: number) {\n\t\tthis.cachedLength -= end - start;\n\t\treturn this.cachedLength === 0;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number) {\n\t\tconst leftLength = pos;\n\t\tconst rightLength = this.cachedLength - pos;\n\n\t\tthis.cachedLength = leftLength;\n\t\treturn new PaddingSegment(rightLength);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixItem` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type SparseMatrixItem = any;\n\n/**\n * @deprecated `RunSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class RunSegment extends SubSequence<SparseMatrixItem> {\n\tpublic static readonly typeString = \"RunSegment\";\n\tpublic static is(segment: ISegment): segment is RunSegment {\n\t\treturn segment.type === RunSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any) {\n\t\tif (spec && typeof spec === \"object\" && \"items\" in spec) {\n\t\t\treturn new RunSegment(spec.items, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = RunSegment.typeString;\n\n\tprivate tags: any[];\n\n\tconstructor(\n\t\tpublic items: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t) {\n\t\tsuper(items, props);\n\t\tthis.tags = new Array(items.length).fill(undefined);\n\t}\n\n\tpublic clone(start = 0, end?: number) {\n\t\tconst b = new RunSegment(this.items.slice(start, end));\n\t\tif (this.tags) {\n\t\t\tb.tags = this.tags.slice(start, end);\n\t\t}\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic append(segment: ISegment) {\n\t\tsuper.append(segment);\n\n\t\tconst asRun = segment as RunSegment;\n\t\tif (asRun.tags) {\n\t\t\tif (this.tags) {\n\t\t\t\tthis.tags.splice(this.items.length, 0, ...asRun.tags);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t// TODO: retain removed items for undo\n\t// returns true if entire run removed\n\tpublic removeRange(start: number, end: number) {\n\t\tthis.tags.splice(start, end - start);\n\t\treturn super.removeRange(start, end);\n\t}\n\n\tpublic getTag(pos: number) {\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\treturn this.tags[pos];\n\t}\n\n\tpublic setTag(pos: number, tag: any) {\n\t\tthis.tags[pos] = tag;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number) {\n\t\tif (pos > 0) {\n\t\t\tconst remainingItems = this.items.slice(pos);\n\t\t\tthis.items = this.items.slice(0, pos);\n\t\t\tthis.cachedLength = this.items.length;\n\n\t\t\tconst leafSegment = new RunSegment(remainingItems);\n\t\t\tleafSegment.tags = this.tags.slice(pos);\n\t\t\tthis.tags.length = pos;\n\n\t\t\treturn leafSegment;\n\t\t}\n\t}\n}\n\n/**\n * @deprecated `MatrixSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type MatrixSegment = RunSegment | PaddingSegment;\n\n/**\n * @deprecated `maxCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCol = 0x200000; // X128 Excel maximum of 16,384 columns\n\n/**\n * @deprecated `maxCols` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCols = maxCol + 1;\n\n/**\n * @deprecated `maxRow` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRow = 0xffffffff; // X4096 Excel maximum of 1,048,576 rows\n\n/**\n * @deprecated `maxRows` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRows = maxRow + 1;\n\n/**\n * @deprecated `maxCellPosition` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCellPosition = maxCol * maxRow;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const rowColToPosition = (row: number, col: number) => row * maxCols + col;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport function positionToRowCol(position: number) {\n\tconst row = Math.floor(position / maxCols);\n\tconst col = position - row * maxCols;\n\treturn { row, col };\n}\n\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, SparseMatrixFactory.segmentFromSpec);\n\t}\n\n\tpublic get numRows() {\n\t\treturn positionToRowCol(this.getLength()).row;\n\t}\n\n\tpublic setItems(row: number, col: number, values: SparseMatrixItem[], props?: PropertySet) {\n\t\tconst start = rowColToPosition(row, col);\n\t\tconst end = start + values.length;\n\t\tconst segment = new RunSegment(values, props);\n\n\t\tthis.replaceRange(start, end, segment);\n\t}\n\n\tpublic getItem(\n\t\trow: number,\n\t\tcol: number,\n\t): // The return type is defined explicitly here to prevent TypeScript from generating dynamic imports\n\tJsonable<string | number | boolean | IFluidHandle> | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tconst { segment, offset } = this.getContainingSegment(pos);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.items[offset ?? 0];\n\t\t} else if (segment && PaddingSegment.is(segment)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized Segment type`);\n\t}\n\n\tpublic getTag(row: number, col: number) {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.getTag(offset ?? 0);\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tpublic setTag(row: number, col: number, tag: any) {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\tsegment.setTag(offset ?? 0, tag);\n\t\t} else if (tag !== undefined) {\n\t\t\tthrow new Error(`Must not attempt to set tags on '${segment?.constructor.name}'.`);\n\t\t}\n\t}\n\n\tpublic insertRows(row: number, numRows: number) {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tconst segment = new PaddingSegment(size);\n\n\t\tthis.client.insertSegmentLocal(pos, segment);\n\t}\n\n\tpublic removeRows(row: number, numRows: number) {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tthis.removeRange(pos, pos + size);\n\t}\n\n\tpublic insertCols(col: number, numCols: number) {\n\t\tthis.moveAsPadding(maxCol - numCols, col, numCols);\n\t}\n\n\tpublic removeCols(col: number, numCols: number) {\n\t\tthis.moveAsPadding(col, maxCol - numCols, numCols);\n\t}\n\n\tpublic annotatePosition(row: number, col: number, props: PropertySet) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tthis.annotateRange(pos, pos + 1, props);\n\t}\n\n\tpublic getPositionProperties(row: number, col: number) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getPropertiesAtPosition(pos);\n\t}\n\n\t// For each row, moves 'numCols' items starting from 'srcCol' and inserts 'numCols' padding\n\t// at 'destCol'. Used by insertCols and removeCols.\n\tprivate moveAsPadding(srcCol: number, destCol: number, numCols: number) {\n\t\tconst removeColStart = srcCol;\n\t\tconst removeColEnd = srcCol + numCols;\n\n\t\tfor (let r = 0, rowStart = 0; r < this.numRows; r++, rowStart += maxCols) {\n\t\t\tthis.client.removeRangeLocal(rowStart + removeColStart, rowStart + removeColEnd);\n\t\t\tconst insertPos = rowStart + destCol;\n\t\t\tconst segment = new PaddingSegment(numCols);\n\t\t\tthis.client.insertSegmentLocal(insertPos, segment);\n\t\t}\n\t}\n\n\tprivate getSegment(row: number, col: number) {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getContainingSegment(pos);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixFactory` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrixFactory} instead.\n * @internal\n */\nexport class SparseMatrixFactory implements IChannelFactory<SparseMatrix> {\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/sparse-matrix\";\n\n\tpublic static Attributes: IChannelAttributes = {\n\t\ttype: SparseMatrixFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\tpublic static segmentFromSpec(spec: IJSONSegment): ISegment {\n\t\tconst maybePadding = PaddingSegment.fromJSONObject(spec);\n\t\tif (maybePadding) {\n\t\t\treturn maybePadding;\n\t\t}\n\n\t\tconst maybeRun = RunSegment.fromJSONObject(spec);\n\t\tif (maybeRun) {\n\t\t\treturn maybeRun;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject: '${JSON.stringify(spec)}'`);\n\t}\n\n\tpublic get type() {\n\t\treturn SparseMatrixFactory.Type;\n\t}\n\n\tpublic get attributes() {\n\t\treturn SparseMatrixFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<SparseMatrix> {\n\t\tconst sharedObject = new SparseMatrixClass(runtime, id, attributes);\n\t\tawait sharedObject.load(services);\n\t\treturn sharedObject;\n\t}\n\n\tpublic create(document: IFluidDataStoreRuntime, id: string): SparseMatrix {\n\t\tconst sharedObject = new SparseMatrixClass(document, id, this.attributes);\n\t\tsharedObject.initializeLocal();\n\t\treturn sharedObject;\n\t}\n}\n\n/**\n * @deprecated `SparseMatrix` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const SparseMatrix = createSharedObjectKind(SparseMatrixFactory);\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport type SparseMatrix = SparseMatrixClass;\n"]}
|
|
1
|
+
{"version":3,"file":"sparsematrix.js","sourceRoot":"","sources":["../src/sparsematrix.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidHandle } from \"@fluidframework/core-interfaces\";\nimport { assert } from \"@fluidframework/core-utils/internal\";\nimport {\n\tIChannelAttributes,\n\tIChannelFactory,\n\tIFluidDataStoreRuntime,\n\tJsonable,\n\tIChannelServices,\n} from \"@fluidframework/datastore-definitions/internal\";\nimport {\n\tBaseSegment,\n\tIJSONSegment,\n\tISegment,\n\tPropertySet,\n} from \"@fluidframework/merge-tree/internal\";\nimport { SharedSegmentSequence } from \"@fluidframework/sequence/internal\";\nimport { createSharedObjectKind } from \"@fluidframework/shared-object-base/internal\";\n\nimport { pkgVersion } from \"./packageVersion.js\";\nimport { SubSequence } from \"./sharedSequence.js\";\n\n/**\n * An empty segment that occupies 'cachedLength' positions.\n * {@link (SparseMatrix:variable)} uses `PaddingSegment` to \"pad\" a run of unoccupied cells.\n *\n * @deprecated `PaddingSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class PaddingSegment extends BaseSegment {\n\tpublic static readonly typeString = \"PaddingSegment\";\n\tpublic static is(segment: ISegment): segment is PaddingSegment {\n\t\treturn segment.type === PaddingSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any): PaddingSegment | undefined {\n\t\tif (spec && typeof spec === \"object\" && \"pad\" in spec) {\n\t\t\treturn new PaddingSegment(spec.pad, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = PaddingSegment.typeString;\n\n\tconstructor(size: number, props?: PropertySet) {\n\t\tsuper(props);\n\t\tthis.cachedLength = size;\n\t}\n\n\tpublic toJSONObject(): { pad: number; props: PropertySet | undefined } {\n\t\treturn { pad: this.cachedLength, props: this.properties };\n\t}\n\n\tpublic clone(start = 0, end?: number): PaddingSegment {\n\t\tconst b = new PaddingSegment(this.cachedLength);\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic canAppend(segment: ISegment): boolean {\n\t\treturn PaddingSegment.is(segment);\n\t}\n\n\tpublic toString(): string {\n\t\treturn `[padding: ${this.cachedLength}]`;\n\t}\n\n\tpublic append(segment: ISegment): void {\n\t\tassert(PaddingSegment.is(segment), 0x5f7 /* can only append padding segment */);\n\t\tsuper.append(segment);\n\t}\n\n\t// Returns true if entire run removed\n\tpublic removeRange(start: number, end: number): boolean {\n\t\tthis.cachedLength -= end - start;\n\t\treturn this.cachedLength === 0;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number): PaddingSegment {\n\t\tconst leftLength = pos;\n\t\tconst rightLength = this.cachedLength - pos;\n\n\t\tthis.cachedLength = leftLength;\n\t\treturn new PaddingSegment(rightLength);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixItem` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type SparseMatrixItem = any;\n\n/**\n * @deprecated `RunSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport class RunSegment extends SubSequence<SparseMatrixItem> {\n\tpublic static readonly typeString = \"RunSegment\";\n\tpublic static is(segment: ISegment): segment is RunSegment {\n\t\treturn segment.type === RunSegment.typeString;\n\t}\n\tpublic static fromJSONObject(spec: any): RunSegment | undefined {\n\t\tif (spec && typeof spec === \"object\" && \"items\" in spec) {\n\t\t\treturn new RunSegment(spec.items, spec.props);\n\t\t}\n\t\treturn undefined;\n\t}\n\tpublic readonly type = RunSegment.typeString;\n\n\tprivate tags: any[];\n\n\tconstructor(\n\t\tpublic items: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t) {\n\t\tsuper(items, props);\n\t\tthis.tags = new Array(items.length).fill(undefined);\n\t}\n\n\tpublic clone(start = 0, end?: number): RunSegment {\n\t\tconst b = new RunSegment(this.items.slice(start, end));\n\t\tif (this.tags) {\n\t\t\tb.tags = this.tags.slice(start, end);\n\t\t}\n\t\tthis.cloneInto(b);\n\t\treturn b;\n\t}\n\n\tpublic append(segment: ISegment): this {\n\t\tsuper.append(segment);\n\n\t\tconst asRun = segment as RunSegment;\n\t\tif (asRun.tags) {\n\t\t\tif (this.tags) {\n\t\t\t\tthis.tags.splice(this.items.length, 0, ...asRun.tags);\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t}\n\n\t// TODO: retain removed items for undo\n\t// returns true if entire run removed\n\tpublic removeRange(start: number, end: number): boolean {\n\t\tthis.tags.splice(start, end - start);\n\t\treturn super.removeRange(start, end);\n\t}\n\n\tpublic getTag(pos: number): any {\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\treturn this.tags[pos];\n\t}\n\n\tpublic setTag(pos: number, tag: unknown): void {\n\t\tthis.tags[pos] = tag;\n\t}\n\n\tprotected createSplitSegmentAt(pos: number): RunSegment | undefined {\n\t\tif (pos > 0) {\n\t\t\tconst remainingItems = this.items.slice(pos);\n\t\t\tthis.items = this.items.slice(0, pos);\n\t\t\tthis.cachedLength = this.items.length;\n\n\t\t\tconst leafSegment = new RunSegment(remainingItems);\n\t\t\tleafSegment.tags = this.tags.slice(pos);\n\t\t\tthis.tags.length = pos;\n\n\t\t\treturn leafSegment;\n\t\t}\n\t}\n}\n\n/**\n * @deprecated `MatrixSegment` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport type MatrixSegment = RunSegment | PaddingSegment;\n\n/**\n * @deprecated `maxCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCol = 0x200000; // X128 Excel maximum of 16,384 columns\n\n/**\n * @deprecated `maxCols` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCols = maxCol + 1;\n\n/**\n * @deprecated `maxRow` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRow = 0xffffffff; // X4096 Excel maximum of 1,048,576 rows\n\n/**\n * @deprecated `maxRows` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxRows = maxRow + 1;\n\n/**\n * @deprecated `maxCellPosition` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const maxCellPosition = maxCol * maxRow;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const rowColToPosition = (row: number, col: number): number => row * maxCols + col;\n\n/**\n * @deprecated `positionToRowCol` is part of an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport function positionToRowCol(position: number): { row: number; col: number } {\n\tconst row = Math.floor(position / maxCols);\n\tconst col = position - row * maxCols;\n\treturn { row, col };\n}\n\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {\n\tconstructor(\n\t\tdocument: IFluidDataStoreRuntime,\n\t\tpublic id: string,\n\t\tattributes: IChannelAttributes,\n\t) {\n\t\tsuper(document, id, attributes, SparseMatrixFactory.segmentFromSpec);\n\t}\n\n\tpublic get numRows(): number {\n\t\treturn positionToRowCol(this.getLength()).row;\n\t}\n\n\tpublic setItems(\n\t\trow: number,\n\t\tcol: number,\n\t\tvalues: SparseMatrixItem[],\n\t\tprops?: PropertySet,\n\t): void {\n\t\tconst start = rowColToPosition(row, col);\n\t\tconst end = start + values.length;\n\t\tconst segment = new RunSegment(values, props);\n\n\t\tthis.replaceRange(start, end, segment);\n\t}\n\n\tpublic getItem(\n\t\trow: number,\n\t\tcol: number,\n\t): // The return type is defined explicitly here to prevent TypeScript from generating dynamic imports\n\tJsonable<string | number | boolean | IFluidHandle> | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tconst { segment, offset } = this.getContainingSegment(pos);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.items[offset ?? 0];\n\t\t} else if (segment && PaddingSegment.is(segment)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized Segment type`);\n\t}\n\n\tpublic getTag(row: number, col: number): any {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-return\n\t\t\treturn segment.getTag(offset ?? 0);\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tpublic setTag(row: number, col: number, tag: any): void {\n\t\tconst { segment, offset } = this.getSegment(row, col);\n\t\tif (segment && RunSegment.is(segment)) {\n\t\t\tsegment.setTag(offset ?? 0, tag);\n\t\t} else if (tag !== undefined) {\n\t\t\tthrow new Error(`Must not attempt to set tags on '${segment?.constructor.name}'.`);\n\t\t}\n\t}\n\n\tpublic insertRows(row: number, numRows: number): void {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tconst segment = new PaddingSegment(size);\n\n\t\tthis.client.insertSegmentLocal(pos, segment);\n\t}\n\n\tpublic removeRows(row: number, numRows: number): void {\n\t\tconst pos = rowColToPosition(row, 0);\n\t\tconst size = maxCols * numRows;\n\t\tthis.removeRange(pos, pos + size);\n\t}\n\n\tpublic insertCols(col: number, numCols: number): void {\n\t\tthis.moveAsPadding(maxCol - numCols, col, numCols);\n\t}\n\n\tpublic removeCols(col: number, numCols: number): void {\n\t\tthis.moveAsPadding(col, maxCol - numCols, numCols);\n\t}\n\n\tpublic annotatePosition(row: number, col: number, props: PropertySet): void {\n\t\tconst pos = rowColToPosition(row, col);\n\t\tthis.annotateRange(pos, pos + 1, props);\n\t}\n\n\tpublic getPositionProperties(row: number, col: number): PropertySet | undefined {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getPropertiesAtPosition(pos);\n\t}\n\n\t// For each row, moves 'numCols' items starting from 'srcCol' and inserts 'numCols' padding\n\t// at 'destCol'. Used by insertCols and removeCols.\n\tprivate moveAsPadding(srcCol: number, destCol: number, numCols: number): void {\n\t\tconst removeColStart = srcCol;\n\t\tconst removeColEnd = srcCol + numCols;\n\n\t\tfor (let r = 0, rowStart = 0; r < this.numRows; r++, rowStart += maxCols) {\n\t\t\tthis.client.removeRangeLocal(rowStart + removeColStart, rowStart + removeColEnd);\n\t\t\tconst insertPos = rowStart + destCol;\n\t\t\tconst segment = new PaddingSegment(numCols);\n\t\t\tthis.client.insertSegmentLocal(insertPos, segment);\n\t\t}\n\t}\n\n\tprivate getSegment(\n\t\trow: number,\n\t\tcol: number,\n\t): { segment: MatrixSegment | undefined; offset: number | undefined } {\n\t\tconst pos = rowColToPosition(row, col);\n\t\treturn this.getContainingSegment(pos);\n\t}\n}\n\n/**\n * @deprecated `SparseMatrixFactory` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrixFactory} instead.\n * @internal\n */\nexport class SparseMatrixFactory implements IChannelFactory<SparseMatrix> {\n\tpublic static Type = \"https://graph.microsoft.com/types/mergeTree/sparse-matrix\";\n\n\tpublic static Attributes: IChannelAttributes = {\n\t\ttype: SparseMatrixFactory.Type,\n\t\tsnapshotFormatVersion: \"0.1\",\n\t\tpackageVersion: pkgVersion,\n\t};\n\n\tpublic static segmentFromSpec(spec: IJSONSegment): ISegment {\n\t\tconst maybePadding = PaddingSegment.fromJSONObject(spec);\n\t\tif (maybePadding) {\n\t\t\treturn maybePadding;\n\t\t}\n\n\t\tconst maybeRun = RunSegment.fromJSONObject(spec);\n\t\tif (maybeRun) {\n\t\t\treturn maybeRun;\n\t\t}\n\n\t\tthrow new Error(`Unrecognized IJSONObject: '${JSON.stringify(spec)}'`);\n\t}\n\n\tpublic get type(): string {\n\t\treturn SparseMatrixFactory.Type;\n\t}\n\n\tpublic get attributes(): IChannelAttributes {\n\t\treturn SparseMatrixFactory.Attributes;\n\t}\n\n\t/**\n\t * {@inheritDoc @fluidframework/datastore-definitions#IChannelFactory.load}\n\t */\n\tpublic async load(\n\t\truntime: IFluidDataStoreRuntime,\n\t\tid: string,\n\t\tservices: IChannelServices,\n\t\tattributes: IChannelAttributes,\n\t): Promise<SparseMatrix> {\n\t\tconst sharedObject = new SparseMatrixClass(runtime, id, attributes);\n\t\tawait sharedObject.load(services);\n\t\treturn sharedObject;\n\t}\n\n\tpublic create(document: IFluidDataStoreRuntime, id: string): SparseMatrix {\n\t\tconst sharedObject = new SparseMatrixClass(document, id, this.attributes);\n\t\tsharedObject.initializeLocal();\n\t\treturn sharedObject;\n\t}\n}\n\n/**\n * @deprecated `SparseMatrix` is an abandoned prototype.\n * Use {@link @fluidframework/matrix#SharedMatrix} instead.\n * @internal\n */\nexport const SparseMatrix = createSharedObjectKind(SparseMatrixFactory);\n/**\n * {@inheritDoc (SparseMatrix:variable)}\n * @internal\n */\nexport type SparseMatrix = SparseMatrixClass;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluid-experimental/sequence-deprecated",
|
|
3
|
-
"version": "2.74.0
|
|
3
|
+
"version": "2.74.0",
|
|
4
4
|
"description": "Deprecated distributed sequences",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -49,23 +49,23 @@
|
|
|
49
49
|
"temp-directory": "nyc/.nyc_output"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@fluidframework/core-interfaces": "2.74.0
|
|
53
|
-
"@fluidframework/core-utils": "2.74.0
|
|
54
|
-
"@fluidframework/datastore-definitions": "2.74.0
|
|
55
|
-
"@fluidframework/merge-tree": "2.74.0
|
|
56
|
-
"@fluidframework/sequence": "2.74.0
|
|
57
|
-
"@fluidframework/shared-object-base": "2.74.0
|
|
52
|
+
"@fluidframework/core-interfaces": "~2.74.0",
|
|
53
|
+
"@fluidframework/core-utils": "~2.74.0",
|
|
54
|
+
"@fluidframework/datastore-definitions": "~2.74.0",
|
|
55
|
+
"@fluidframework/merge-tree": "~2.74.0",
|
|
56
|
+
"@fluidframework/sequence": "~2.74.0",
|
|
57
|
+
"@fluidframework/shared-object-base": "~2.74.0"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@arethetypeswrong/cli": "^0.17.1",
|
|
61
61
|
"@biomejs/biome": "~1.9.3",
|
|
62
|
-
"@fluid-internal/mocha-test-setup": "2.74.0
|
|
63
|
-
"@fluid-private/test-dds-utils": "2.74.0
|
|
64
|
-
"@fluid-tools/build-cli": "^0.
|
|
62
|
+
"@fluid-internal/mocha-test-setup": "~2.74.0",
|
|
63
|
+
"@fluid-private/test-dds-utils": "~2.74.0",
|
|
64
|
+
"@fluid-tools/build-cli": "^0.61.0",
|
|
65
65
|
"@fluidframework/build-common": "^2.0.3",
|
|
66
|
-
"@fluidframework/build-tools": "^0.
|
|
67
|
-
"@fluidframework/eslint-config-fluid": "2.74.0
|
|
68
|
-
"@fluidframework/test-runtime-utils": "2.74.0
|
|
66
|
+
"@fluidframework/build-tools": "^0.61.0",
|
|
67
|
+
"@fluidframework/eslint-config-fluid": "~2.74.0",
|
|
68
|
+
"@fluidframework/test-runtime-utils": "~2.74.0",
|
|
69
69
|
"@microsoft/api-extractor": "7.52.11",
|
|
70
70
|
"@types/diff": "^3.5.1",
|
|
71
71
|
"@types/mocha": "^10.0.10",
|
|
@@ -76,6 +76,7 @@
|
|
|
76
76
|
"cross-env": "^7.0.3",
|
|
77
77
|
"diff": "^3.5.0",
|
|
78
78
|
"eslint": "~8.57.1",
|
|
79
|
+
"jiti": "^2.6.1",
|
|
79
80
|
"mocha": "^10.8.2",
|
|
80
81
|
"mocha-multi-reporters": "^1.5.1",
|
|
81
82
|
"rimraf": "^4.4.0",
|
package/src/packageVersion.ts
CHANGED
package/src/sequenceFactory.ts
CHANGED
|
@@ -59,7 +59,7 @@ export class SharedObjectSequenceFactory implements IChannelFactory {
|
|
|
59
59
|
* @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.
|
|
60
60
|
* For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}
|
|
61
61
|
*/
|
|
62
|
-
public get type() {
|
|
62
|
+
public get type(): string {
|
|
63
63
|
return SharedObjectSequenceFactory.Type;
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -67,7 +67,7 @@ export class SharedObjectSequenceFactory implements IChannelFactory {
|
|
|
67
67
|
* @deprecated SharedObjectSequence is not recommended for use and will be removed in an upcoming release.
|
|
68
68
|
* For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}
|
|
69
69
|
*/
|
|
70
|
-
public get attributes() {
|
|
70
|
+
public get attributes(): IChannelAttributes {
|
|
71
71
|
return SharedObjectSequenceFactory.Attributes;
|
|
72
72
|
}
|
|
73
73
|
|
|
@@ -138,7 +138,7 @@ export class SharedNumberSequenceFactory implements IChannelFactory {
|
|
|
138
138
|
* @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.
|
|
139
139
|
* For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}
|
|
140
140
|
*/
|
|
141
|
-
public get type() {
|
|
141
|
+
public get type(): string {
|
|
142
142
|
return SharedNumberSequenceFactory.Type;
|
|
143
143
|
}
|
|
144
144
|
|
|
@@ -146,7 +146,7 @@ export class SharedNumberSequenceFactory implements IChannelFactory {
|
|
|
146
146
|
* @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.
|
|
147
147
|
* For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}
|
|
148
148
|
*/
|
|
149
|
-
public get attributes() {
|
|
149
|
+
public get attributes(): IChannelAttributes {
|
|
150
150
|
return SharedNumberSequenceFactory.Attributes;
|
|
151
151
|
}
|
|
152
152
|
|
|
@@ -44,7 +44,7 @@ export class SharedNumberSequenceClass extends SharedSequence<number> {
|
|
|
44
44
|
* @deprecated SharedNumberSequence is not recommended for use and will be removed in an upcoming release.
|
|
45
45
|
* For more info, please see {@link https://github.com/microsoft/FluidFramework/issues/8526 | Github issue 8526}.
|
|
46
46
|
*/
|
|
47
|
-
public getRange(start: number, end?: number) {
|
|
47
|
+
public getRange(start: number, end?: number): number[] {
|
|
48
48
|
return this.getItems(start, end);
|
|
49
49
|
}
|
|
50
50
|
}
|
package/src/sparsematrix.ts
CHANGED
|
@@ -37,7 +37,7 @@ export class PaddingSegment extends BaseSegment {
|
|
|
37
37
|
public static is(segment: ISegment): segment is PaddingSegment {
|
|
38
38
|
return segment.type === PaddingSegment.typeString;
|
|
39
39
|
}
|
|
40
|
-
public static fromJSONObject(spec: any) {
|
|
40
|
+
public static fromJSONObject(spec: any): PaddingSegment | undefined {
|
|
41
41
|
if (spec && typeof spec === "object" && "pad" in spec) {
|
|
42
42
|
return new PaddingSegment(spec.pad, spec.props);
|
|
43
43
|
}
|
|
@@ -50,36 +50,36 @@ export class PaddingSegment extends BaseSegment {
|
|
|
50
50
|
this.cachedLength = size;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
public toJSONObject() {
|
|
53
|
+
public toJSONObject(): { pad: number; props: PropertySet | undefined } {
|
|
54
54
|
return { pad: this.cachedLength, props: this.properties };
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
public clone(start = 0, end?: number) {
|
|
57
|
+
public clone(start = 0, end?: number): PaddingSegment {
|
|
58
58
|
const b = new PaddingSegment(this.cachedLength);
|
|
59
59
|
this.cloneInto(b);
|
|
60
60
|
return b;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
public canAppend(segment: ISegment) {
|
|
63
|
+
public canAppend(segment: ISegment): boolean {
|
|
64
64
|
return PaddingSegment.is(segment);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
public toString() {
|
|
67
|
+
public toString(): string {
|
|
68
68
|
return `[padding: ${this.cachedLength}]`;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
public append(segment: ISegment) {
|
|
71
|
+
public append(segment: ISegment): void {
|
|
72
72
|
assert(PaddingSegment.is(segment), 0x5f7 /* can only append padding segment */);
|
|
73
73
|
super.append(segment);
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
// Returns true if entire run removed
|
|
77
|
-
public removeRange(start: number, end: number) {
|
|
77
|
+
public removeRange(start: number, end: number): boolean {
|
|
78
78
|
this.cachedLength -= end - start;
|
|
79
79
|
return this.cachedLength === 0;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
protected createSplitSegmentAt(pos: number) {
|
|
82
|
+
protected createSplitSegmentAt(pos: number): PaddingSegment {
|
|
83
83
|
const leftLength = pos;
|
|
84
84
|
const rightLength = this.cachedLength - pos;
|
|
85
85
|
|
|
@@ -105,7 +105,7 @@ export class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
105
105
|
public static is(segment: ISegment): segment is RunSegment {
|
|
106
106
|
return segment.type === RunSegment.typeString;
|
|
107
107
|
}
|
|
108
|
-
public static fromJSONObject(spec: any) {
|
|
108
|
+
public static fromJSONObject(spec: any): RunSegment | undefined {
|
|
109
109
|
if (spec && typeof spec === "object" && "items" in spec) {
|
|
110
110
|
return new RunSegment(spec.items, spec.props);
|
|
111
111
|
}
|
|
@@ -123,7 +123,7 @@ export class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
123
123
|
this.tags = new Array(items.length).fill(undefined);
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
-
public clone(start = 0, end?: number) {
|
|
126
|
+
public clone(start = 0, end?: number): RunSegment {
|
|
127
127
|
const b = new RunSegment(this.items.slice(start, end));
|
|
128
128
|
if (this.tags) {
|
|
129
129
|
b.tags = this.tags.slice(start, end);
|
|
@@ -132,7 +132,7 @@ export class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
132
132
|
return b;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
public append(segment: ISegment) {
|
|
135
|
+
public append(segment: ISegment): this {
|
|
136
136
|
super.append(segment);
|
|
137
137
|
|
|
138
138
|
const asRun = segment as RunSegment;
|
|
@@ -147,21 +147,21 @@ export class RunSegment extends SubSequence<SparseMatrixItem> {
|
|
|
147
147
|
|
|
148
148
|
// TODO: retain removed items for undo
|
|
149
149
|
// returns true if entire run removed
|
|
150
|
-
public removeRange(start: number, end: number) {
|
|
150
|
+
public removeRange(start: number, end: number): boolean {
|
|
151
151
|
this.tags.splice(start, end - start);
|
|
152
152
|
return super.removeRange(start, end);
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
-
public getTag(pos: number) {
|
|
155
|
+
public getTag(pos: number): any {
|
|
156
156
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
157
157
|
return this.tags[pos];
|
|
158
158
|
}
|
|
159
159
|
|
|
160
|
-
public setTag(pos: number, tag:
|
|
160
|
+
public setTag(pos: number, tag: unknown): void {
|
|
161
161
|
this.tags[pos] = tag;
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
protected createSplitSegmentAt(pos: number) {
|
|
164
|
+
protected createSplitSegmentAt(pos: number): RunSegment | undefined {
|
|
165
165
|
if (pos > 0) {
|
|
166
166
|
const remainingItems = this.items.slice(pos);
|
|
167
167
|
this.items = this.items.slice(0, pos);
|
|
@@ -223,14 +223,14 @@ export const maxCellPosition = maxCol * maxRow;
|
|
|
223
223
|
* Use {@link @fluidframework/matrix#SharedMatrix} instead.
|
|
224
224
|
* @internal
|
|
225
225
|
*/
|
|
226
|
-
export const rowColToPosition = (row: number, col: number) => row * maxCols + col;
|
|
226
|
+
export const rowColToPosition = (row: number, col: number): number => row * maxCols + col;
|
|
227
227
|
|
|
228
228
|
/**
|
|
229
229
|
* @deprecated `positionToRowCol` is part of an abandoned prototype.
|
|
230
230
|
* Use {@link @fluidframework/matrix#SharedMatrix} instead.
|
|
231
231
|
* @internal
|
|
232
232
|
*/
|
|
233
|
-
export function positionToRowCol(position: number) {
|
|
233
|
+
export function positionToRowCol(position: number): { row: number; col: number } {
|
|
234
234
|
const row = Math.floor(position / maxCols);
|
|
235
235
|
const col = position - row * maxCols;
|
|
236
236
|
return { row, col };
|
|
@@ -249,11 +249,16 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
249
249
|
super(document, id, attributes, SparseMatrixFactory.segmentFromSpec);
|
|
250
250
|
}
|
|
251
251
|
|
|
252
|
-
public get numRows() {
|
|
252
|
+
public get numRows(): number {
|
|
253
253
|
return positionToRowCol(this.getLength()).row;
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
-
public setItems(
|
|
256
|
+
public setItems(
|
|
257
|
+
row: number,
|
|
258
|
+
col: number,
|
|
259
|
+
values: SparseMatrixItem[],
|
|
260
|
+
props?: PropertySet,
|
|
261
|
+
): void {
|
|
257
262
|
const start = rowColToPosition(row, col);
|
|
258
263
|
const end = start + values.length;
|
|
259
264
|
const segment = new RunSegment(values, props);
|
|
@@ -278,7 +283,7 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
278
283
|
throw new Error(`Unrecognized Segment type`);
|
|
279
284
|
}
|
|
280
285
|
|
|
281
|
-
public getTag(row: number, col: number) {
|
|
286
|
+
public getTag(row: number, col: number): any {
|
|
282
287
|
const { segment, offset } = this.getSegment(row, col);
|
|
283
288
|
if (segment && RunSegment.is(segment)) {
|
|
284
289
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
@@ -287,7 +292,7 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
287
292
|
return undefined;
|
|
288
293
|
}
|
|
289
294
|
|
|
290
|
-
public setTag(row: number, col: number, tag: any) {
|
|
295
|
+
public setTag(row: number, col: number, tag: any): void {
|
|
291
296
|
const { segment, offset } = this.getSegment(row, col);
|
|
292
297
|
if (segment && RunSegment.is(segment)) {
|
|
293
298
|
segment.setTag(offset ?? 0, tag);
|
|
@@ -296,7 +301,7 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
296
301
|
}
|
|
297
302
|
}
|
|
298
303
|
|
|
299
|
-
public insertRows(row: number, numRows: number) {
|
|
304
|
+
public insertRows(row: number, numRows: number): void {
|
|
300
305
|
const pos = rowColToPosition(row, 0);
|
|
301
306
|
const size = maxCols * numRows;
|
|
302
307
|
const segment = new PaddingSegment(size);
|
|
@@ -304,33 +309,33 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
304
309
|
this.client.insertSegmentLocal(pos, segment);
|
|
305
310
|
}
|
|
306
311
|
|
|
307
|
-
public removeRows(row: number, numRows: number) {
|
|
312
|
+
public removeRows(row: number, numRows: number): void {
|
|
308
313
|
const pos = rowColToPosition(row, 0);
|
|
309
314
|
const size = maxCols * numRows;
|
|
310
315
|
this.removeRange(pos, pos + size);
|
|
311
316
|
}
|
|
312
317
|
|
|
313
|
-
public insertCols(col: number, numCols: number) {
|
|
318
|
+
public insertCols(col: number, numCols: number): void {
|
|
314
319
|
this.moveAsPadding(maxCol - numCols, col, numCols);
|
|
315
320
|
}
|
|
316
321
|
|
|
317
|
-
public removeCols(col: number, numCols: number) {
|
|
322
|
+
public removeCols(col: number, numCols: number): void {
|
|
318
323
|
this.moveAsPadding(col, maxCol - numCols, numCols);
|
|
319
324
|
}
|
|
320
325
|
|
|
321
|
-
public annotatePosition(row: number, col: number, props: PropertySet) {
|
|
326
|
+
public annotatePosition(row: number, col: number, props: PropertySet): void {
|
|
322
327
|
const pos = rowColToPosition(row, col);
|
|
323
328
|
this.annotateRange(pos, pos + 1, props);
|
|
324
329
|
}
|
|
325
330
|
|
|
326
|
-
public getPositionProperties(row: number, col: number) {
|
|
331
|
+
public getPositionProperties(row: number, col: number): PropertySet | undefined {
|
|
327
332
|
const pos = rowColToPosition(row, col);
|
|
328
333
|
return this.getPropertiesAtPosition(pos);
|
|
329
334
|
}
|
|
330
335
|
|
|
331
336
|
// For each row, moves 'numCols' items starting from 'srcCol' and inserts 'numCols' padding
|
|
332
337
|
// at 'destCol'. Used by insertCols and removeCols.
|
|
333
|
-
private moveAsPadding(srcCol: number, destCol: number, numCols: number) {
|
|
338
|
+
private moveAsPadding(srcCol: number, destCol: number, numCols: number): void {
|
|
334
339
|
const removeColStart = srcCol;
|
|
335
340
|
const removeColEnd = srcCol + numCols;
|
|
336
341
|
|
|
@@ -342,7 +347,10 @@ export class SparseMatrixClass extends SharedSegmentSequence<MatrixSegment> {
|
|
|
342
347
|
}
|
|
343
348
|
}
|
|
344
349
|
|
|
345
|
-
private getSegment(
|
|
350
|
+
private getSegment(
|
|
351
|
+
row: number,
|
|
352
|
+
col: number,
|
|
353
|
+
): { segment: MatrixSegment | undefined; offset: number | undefined } {
|
|
346
354
|
const pos = rowColToPosition(row, col);
|
|
347
355
|
return this.getContainingSegment(pos);
|
|
348
356
|
}
|
|
@@ -376,11 +384,11 @@ export class SparseMatrixFactory implements IChannelFactory<SparseMatrix> {
|
|
|
376
384
|
throw new Error(`Unrecognized IJSONObject: '${JSON.stringify(spec)}'`);
|
|
377
385
|
}
|
|
378
386
|
|
|
379
|
-
public get type() {
|
|
387
|
+
public get type(): string {
|
|
380
388
|
return SparseMatrixFactory.Type;
|
|
381
389
|
}
|
|
382
390
|
|
|
383
|
-
public get attributes() {
|
|
391
|
+
public get attributes(): IChannelAttributes {
|
|
384
392
|
return SparseMatrixFactory.Attributes;
|
|
385
393
|
}
|
|
386
394
|
|