diff options
author | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2018-09-20 02:56:13 +0200 |
commit | bbff7403fbf46f9ad92240ac213df8d30ef31b64 (patch) | |
tree | c58400ec5124da1c7d56b01aea83309f80a56c3b /node_modules/fbjs/lib/UnicodeBidiService.js.flow | |
parent | 003fb34971cf63466184351b4db5f7c67df4f444 (diff) |
update packages
Diffstat (limited to 'node_modules/fbjs/lib/UnicodeBidiService.js.flow')
-rw-r--r-- | node_modules/fbjs/lib/UnicodeBidiService.js.flow | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/node_modules/fbjs/lib/UnicodeBidiService.js.flow b/node_modules/fbjs/lib/UnicodeBidiService.js.flow deleted file mode 100644 index 7999a422f..000000000 --- a/node_modules/fbjs/lib/UnicodeBidiService.js.flow +++ /dev/null @@ -1,95 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeBidiService - * @typechecks - * @flow - */ - -/** - * Stateful API for text direction detection - * - * This class can be used in applications where you need to detect the - * direction of a sequence of text blocks, where each direction shall be used - * as the fallback direction for the next one. - * - * NOTE: A default direction, if not provided, is set based on the global - * direction, as defined by `UnicodeBidiDirection`. - * - * == Example == - * ``` - * var UnicodeBidiService = require('UnicodeBidiService'); - * - * var bidiService = new UnicodeBidiService(); - * - * ... - * - * bidiService.reset(); - * for (var para in paragraphs) { - * var dir = bidiService.getDirection(para); - * ... - * } - * ``` - * - * Part of our implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -const UnicodeBidi = require('./UnicodeBidi'); -const UnicodeBidiDirection = require('./UnicodeBidiDirection'); - -const invariant = require('./invariant'); - -import type { BidiDirection } from './UnicodeBidiDirection'; - -class UnicodeBidiService { - - _defaultDir: BidiDirection; - _lastDir: BidiDirection; - - /** - * Stateful class for paragraph direction detection - * - * @param defaultDir Default direction of the service - */ - constructor(defaultDir: ?BidiDirection) { - if (!defaultDir) { - defaultDir = UnicodeBidiDirection.getGlobalDir(); - } else { - invariant(UnicodeBidiDirection.isStrong(defaultDir), 'Default direction must be a strong direction (LTR or RTL)'); - } - this._defaultDir = defaultDir; - this.reset(); - } - - /** - * Reset the internal state - * - * Instead of creating a new instance, you can just reset() your instance - * everytime you start a new loop. - */ - reset(): void { - this._lastDir = this._defaultDir; - } - - /** - * Returns the direction of a block of text, and remembers it as the - * fall-back direction for the next paragraph. - * - * @param str A text block, e.g. paragraph, table cell, tag - * @return The resolved direction - */ - getDirection(str: string): BidiDirection { - this._lastDir = UnicodeBidi.getDirection(str, this._lastDir); - return this._lastDir; - } - -} - -module.exports = UnicodeBidiService;
\ No newline at end of file |