Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@ot-builder/io-bin-layout

Package Overview
Dependencies
Maintainers
1
Versions
83
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ot-builder/io-bin-layout - npm Package Compare versions

Comparing version
1.4.0
to
1.5.0
+124
-1
CHANGELOG.json

@@ -5,3 +5,126 @@ {

{
"date": "Sat, 26 Feb 2022 01:26:05 GMT",
"date": "Sat, 26 Mar 2022 01:35:44 GMT",
"tag": "@ot-builder/io-bin-layout_v1.5.0",
"version": "1.5.0",
"comments": {
"minor": [
{
"author": "otbbuilder-dev@users.noreply.github.com",
"package": "@ot-builder/io-bin-layout",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357",
"comment": "Add AvoidUsingContextualLookup trick"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/bin-composite-types to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/bin-util to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/errors to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/ot-glyphs to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/ot-layout to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/ot-metadata to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/prelude to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/primitive to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/var-store to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/variance to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/common-impl to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/ot-sfnt to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/io-bin-sfnt to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/io-bin-glyph-store to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/io-bin-metadata to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/ot-encoding to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/io-bin-encoding to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
},
{
"author": "beachball",
"package": "@ot-builder/io-bin-layout",
"comment": "Bump @ot-builder/test-util to v1.5.0",
"commit": "0d6eb83609255ffdfd147ed0610aab1aa424b357"
}
]
}
},
{
"date": "Sat, 26 Feb 2022 01:27:19 GMT",
"tag": "@ot-builder/io-bin-layout_v1.4.0",

@@ -8,0 +131,0 @@ "version": "1.4.0",

# Change Log - @ot-builder/io-bin-layout
This log was last generated on Sat, 26 Feb 2022 01:26:05 GMT and should not be manually modified.
This log was last generated on Sat, 26 Mar 2022 01:35:44 GMT and should not be manually modified.
<!-- Start content -->
## 1.5.0
Sat, 26 Mar 2022 01:35:44 GMT
### Minor changes
- Add AvoidUsingContextualLookup trick (otbbuilder-dev@users.noreply.github.com)
- Bump @ot-builder/bin-composite-types to v1.5.0
- Bump @ot-builder/bin-util to v1.5.0
- Bump @ot-builder/errors to v1.5.0
- Bump @ot-builder/ot-glyphs to v1.5.0
- Bump @ot-builder/ot-layout to v1.5.0
- Bump @ot-builder/ot-metadata to v1.5.0
- Bump @ot-builder/prelude to v1.5.0
- Bump @ot-builder/primitive to v1.5.0
- Bump @ot-builder/var-store to v1.5.0
- Bump @ot-builder/variance to v1.5.0
- Bump @ot-builder/common-impl to v1.5.0
- Bump @ot-builder/ot-sfnt to v1.5.0
- Bump @ot-builder/io-bin-sfnt to v1.5.0
- Bump @ot-builder/io-bin-glyph-store to v1.5.0
- Bump @ot-builder/io-bin-metadata to v1.5.0
- Bump @ot-builder/ot-encoding to v1.5.0
- Bump @ot-builder/io-bin-encoding to v1.5.0
- Bump @ot-builder/test-util to v1.5.0
## 1.4.0
Sat, 26 Feb 2022 01:26:05 GMT
Sat, 26 Feb 2022 01:27:19 GMT

@@ -11,0 +37,0 @@ ### Minor changes

import { GsubGpos } from "@ot-builder/ot-layout";
export interface LayoutCfgProps {
gdefWriteTrick?: number;
lookupWriteTricks?: Map<GsubGpos.LookupProp, number>;
lookupWriteTricks?: Map<GsubGpos.LookupProp, LookupWriteTrick>;
}

@@ -13,2 +13,11 @@ export interface LayoutCfg {

export declare const DefaultLayoutProps: LayoutCfgProps;
export declare enum LookupWriteTrick {
AvoidUseExtension = 1,
AvoidBreakSubtable = 2,
UseFlatCoverage = 4,
UseFastCoverage = 8,
AvoidUsingContextualLookup = 16,
ContextualForceFormat3 = 65536,
ContextualForceFormat2 = 131072
}
//# sourceMappingURL=index.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.DefaultLayoutProps = void 0;
exports.LookupWriteTrick = exports.DefaultLayoutProps = void 0;
exports.DefaultLayoutProps = {};
var LookupWriteTrick;
(function (LookupWriteTrick) {
LookupWriteTrick[LookupWriteTrick["AvoidUseExtension"] = 1] = "AvoidUseExtension";
LookupWriteTrick[LookupWriteTrick["AvoidBreakSubtable"] = 2] = "AvoidBreakSubtable";
LookupWriteTrick[LookupWriteTrick["UseFlatCoverage"] = 4] = "UseFlatCoverage";
LookupWriteTrick[LookupWriteTrick["UseFastCoverage"] = 8] = "UseFastCoverage";
LookupWriteTrick[LookupWriteTrick["AvoidUsingContextualLookup"] = 16] = "AvoidUsingContextualLookup";
LookupWriteTrick[LookupWriteTrick["ContextualForceFormat3"] = 65536] = "ContextualForceFormat3";
LookupWriteTrick[LookupWriteTrick["ContextualForceFormat2"] = 131072] = "ContextualForceFormat2";
})(LookupWriteTrick = exports.LookupWriteTrick || (exports.LookupWriteTrick = {}));
//# sourceMappingURL=index.js.map
+3
-10

@@ -5,2 +5,3 @@ import { BinaryView, Frag } from "@ot-builder/bin-util";

import { ReadTimeIVS, WriteTimeIVS } from "@ot-builder/var-store";
import { LookupWriteTrick } from "../cfg";
import { OtlStat } from "../stat";

@@ -13,3 +14,3 @@ export interface SubtableReadingContext<L> {

export interface SubtableWriteContext<L> {
trick: number;
trick: LookupWriteTrick;
crossReferences: Data.Order<L>;

@@ -26,3 +27,3 @@ gOrd: Data.Order<OtGlyph>;

canBeUsed(lookup: L): lookup is L & C;
getLookupType(lookup: C): number;
getLookupType(lookup: C, context: SubtableWriteContext<L>): number;
getLookupTypeSymbol(lookup: C): symbol;

@@ -49,10 +50,2 @@ createSubtableFragments(lookup: C, context: SubtableWriteContext<L>): Frag[];

}
export declare enum SubtableWriteTrick {
AvoidUseExtension = 1,
AvoidBreakSubtable = 2,
UseFlatCoverage = 4,
UseFastCoverage = 8,
ChainingForceFormat3 = 65536,
ChainingForceFormat2 = 131072
}
//# sourceMappingURL=general.d.ts.map
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SubtableWriteTrick = exports.LookupFlag = exports.SubtableSizeLimit = void 0;
exports.LookupFlag = exports.SubtableSizeLimit = void 0;
exports.SubtableSizeLimit = 0xf000;

@@ -14,11 +14,2 @@ var LookupFlag;

})(LookupFlag = exports.LookupFlag || (exports.LookupFlag = {}));
var SubtableWriteTrick;
(function (SubtableWriteTrick) {
SubtableWriteTrick[SubtableWriteTrick["AvoidUseExtension"] = 1] = "AvoidUseExtension";
SubtableWriteTrick[SubtableWriteTrick["AvoidBreakSubtable"] = 2] = "AvoidBreakSubtable";
SubtableWriteTrick[SubtableWriteTrick["UseFlatCoverage"] = 4] = "UseFlatCoverage";
SubtableWriteTrick[SubtableWriteTrick["UseFastCoverage"] = 8] = "UseFastCoverage";
SubtableWriteTrick[SubtableWriteTrick["ChainingForceFormat3"] = 65536] = "ChainingForceFormat3";
SubtableWriteTrick[SubtableWriteTrick["ChainingForceFormat2"] = 131072] = "ChainingForceFormat2";
})(SubtableWriteTrick = exports.SubtableWriteTrick || (exports.SubtableWriteTrick = {}));
//# sourceMappingURL=general.js.map
import { GsubGpos } from "@ot-builder/ot-layout";
import { LayoutCfg } from "../cfg";
export declare function setLookupTricks<L>(table: GsubGpos.TableT<L>, cfg: LayoutCfg): Map<L, number>;
import { LayoutCfg, LookupWriteTrick } from "../cfg";
export declare function setLookupTricks<L>(table: GsubGpos.TableT<L>, cfg: LayoutCfg): Map<L, LookupWriteTrick>;
//# sourceMappingURL=trick.d.ts.map

@@ -6,2 +6,3 @@ import { Write } from "@ot-builder/bin-util";

import { WriteTimeIVS } from "@ot-builder/var-store";
import { LookupWriteTrick } from "../cfg";
import { OtlStat } from "../stat";

@@ -13,3 +14,3 @@ import { LookupWriterFactory } from "./general";

ivs?: Data.Maybe<WriteTimeIVS>;
tricks?: Data.Maybe<Map<L, number>>;
tricks?: Data.Maybe<Map<L, LookupWriteTrick>>;
stat?: Data.Maybe<OtlStat>;

@@ -16,0 +17,0 @@ }

@@ -9,2 +9,3 @@ "use strict";

const primitive_1 = require("@ot-builder/primitive");
const cfg_1 = require("../cfg");
const stat_1 = require("../stat");

@@ -62,3 +63,3 @@ const decide_ignore_flags_1 = require("./decide-ignore-flags");

origLookupType: writer.getLookupTypeSymbol(lookup),
lookupType: writer.getLookupType(lookup),
lookupType: writer.getLookupType(lookup, context),
flags,

@@ -76,3 +77,3 @@ markFilteringSet,

getLookupRank(origType, isDependency, trick) {
const rankTrick = 16 * (trick & general_1.SubtableWriteTrick.AvoidUseExtension ? 1 : 2);
const rankTrick = 16 * (trick & cfg_1.LookupWriteTrick.AvoidUseExtension ? 1 : 2);
const rankType = origType === ot_layout_1.Gsub.LookupType.Reverse

@@ -79,0 +80,0 @@ ? 1

@@ -5,3 +5,3 @@ "use strict";

const tslib_1 = require("tslib");
(0, tslib_1.__exportStar)(require("./cfg"), exports);
tslib_1.__exportStar(require("./cfg"), exports);
var read_1 = require("./main/read");

@@ -8,0 +8,0 @@ Object.defineProperty(exports, "readOtl", { enumerable: true, get: function () { return read_1.readOtl; } });

@@ -7,4 +7,4 @@ import { Frag } from "@ot-builder/bin-util";

private wClassRuleSet;
protected useChainingLookup(lookup: C): boolean;
abstract getLookupType(lookup: C): number;
protected useChainingLookup(lookup: C, ctx: SubtableWriteContext<L>): boolean;
abstract getLookupType(lookup: C, ctx: SubtableWriteContext<L>): number;
abstract getLookupTypeSymbol(lookup: C): symbol;

@@ -18,3 +18,3 @@ abstract canBeUsed(l: L): l is C;

export declare class GsubChainingContextualWriter extends ChainingContextualWriter<Gsub.Lookup, Gsub.Chaining> {
getLookupType(lookup: Gsub.Chaining): 6 | 5;
getLookupType(lookup: Gsub.Chaining, ctx: SubtableWriteContext<Gsub.Lookup>): 6 | 5;
getLookupTypeSymbol(): symbol;

@@ -24,3 +24,3 @@ canBeUsed(l: Gsub.Lookup): l is Gsub.Chaining;

export declare class GposChainingContextualWriter extends ChainingContextualWriter<Gpos.Lookup, Gpos.Chaining> {
getLookupType(lookup: Gpos.Chaining): 8 | 7;
getLookupType(lookup: Gpos.Chaining, ctx: SubtableWriteContext<Gpos.Lookup>): 8 | 7;
getLookupTypeSymbol(): symbol;

@@ -27,0 +27,0 @@ canBeUsed(l: Gpos.Lookup): l is Gpos.Chaining;

@@ -7,3 +7,3 @@ "use strict";

const primitive_1 = require("@ot-builder/primitive");
const general_1 = require("../gsub-gpos-shared/general");
const cfg_1 = require("../cfg");
const class_def_1 = require("../shared/class-def");

@@ -239,3 +239,5 @@ const coverage_1 = require("../shared/coverage");

}
useChainingLookup(lookup) {
useChainingLookup(lookup, ctx) {
if (ctx.trick & cfg_1.LookupWriteTrick.AvoidUsingContextualLookup)
return true;
let chain = false;

@@ -264,3 +266,3 @@ for (const rule of lookup.rules) {

createSubtableFragments(lookup, ctx) {
const isChaining = this.useChainingLookup(lookup);
const isChaining = this.useChainingLookup(lookup, ctx);
const covLookups = [];

@@ -272,3 +274,3 @@ const covLookupSizes = [];

}
if (ctx.trick & general_1.SubtableWriteTrick.ChainingForceFormat3)
if (ctx.trick & cfg_1.LookupWriteTrick.ContextualForceFormat3)
return covLookups;

@@ -302,4 +304,4 @@ // Do dynamic programming to find out an optimal arrangement

class GsubChainingContextualWriter extends ChainingContextualWriter {
getLookupType(lookup) {
return this.useChainingLookup(lookup) ? 6 : 5;
getLookupType(lookup, ctx) {
return this.useChainingLookup(lookup, ctx) ? 6 : 5;
}

@@ -315,4 +317,4 @@ getLookupTypeSymbol() {

class GposChainingContextualWriter extends ChainingContextualWriter {
getLookupType(lookup) {
return this.useChainingLookup(lookup) ? 8 : 7;
getLookupType(lookup, ctx) {
return this.useChainingLookup(lookup, ctx) ? 8 : 7;
}

@@ -319,0 +321,0 @@ getLookupTypeSymbol() {

@@ -8,2 +8,3 @@ "use strict";

const primitive_1 = require("@ot-builder/primitive");
const cfg_1 = require("../cfg");
const general_1 = require("../gsub-gpos-shared/general");

@@ -149,3 +150,3 @@ const coverage_1 = require("../shared/coverage");

createSubtableFragments(lookup, ctx) {
const singleLookup = !!(ctx.trick & general_1.SubtableWriteTrick.AvoidBreakSubtable);
const singleLookup = !!(ctx.trick & cfg_1.LookupWriteTrick.AvoidBreakSubtable);
const st = new GsubSingleWriterState();

@@ -152,0 +153,0 @@ for (const [from, to] of lookup.adjustments) {

@@ -8,2 +8,3 @@ "use strict";

const primitive_1 = require("@ot-builder/primitive");
const cfg_1 = require("../cfg");
const general_1 = require("../gsub-gpos-shared/general");

@@ -119,3 +120,3 @@ const coverage_1 = require("../shared/coverage");

createSubtableFragments(lookup, ctx) {
const singleLookup = !!(ctx.trick & general_1.SubtableWriteTrick.AvoidBreakSubtable);
const singleLookup = !!(ctx.trick & cfg_1.LookupWriteTrick.AvoidBreakSubtable);
const st = new GsubSingleWriterState();

@@ -122,0 +123,0 @@ for (const [from, to] of lookup.mapping) {

@@ -7,3 +7,3 @@ "use strict";

const errors_1 = require("@ot-builder/errors");
const general_1 = require("../gsub-gpos-shared/general");
const cfg_1 = require("../cfg");
exports.MaxClsDefItemWords = 3;

@@ -113,3 +113,3 @@ var ClassDefUtil;

}
if (trick & general_1.SubtableWriteTrick.UseFastCoverage) {
if (trick & cfg_1.LookupWriteTrick.UseFastCoverage) {
const collector = new ClassRunCollector();

@@ -116,0 +116,0 @@ for (const [gid, cls] of mapping)

@@ -7,3 +7,3 @@ "use strict";

const errors_1 = require("@ot-builder/errors");
const general_1 = require("../gsub-gpos-shared/general");
const cfg_1 = require("../cfg");
exports.MaxCovItemWords = 3;

@@ -129,6 +129,6 @@ var CovUtils;

...(0, bin_util_1.Write)((frag, gidList, trick = 0) => {
if (trick & general_1.SubtableWriteTrick.UseFlatCoverage) {
if (trick & cfg_1.LookupWriteTrick.UseFlatCoverage) {
frag.push(OtGidCoverageFormat1, gidList);
}
else if (trick & general_1.SubtableWriteTrick.UseFastCoverage) {
else if (trick & cfg_1.LookupWriteTrick.UseFastCoverage) {
const collector = new CoverageRunCollector();

@@ -135,0 +135,0 @@ for (let item = 0; item < gidList.length; item++) {

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
(0, tslib_1.__exportStar)(require("./interface"), exports);
(0, tslib_1.__exportStar)(require("./os2-max-context"), exports);
tslib_1.__exportStar(require("./interface"), exports);
tslib_1.__exportStar(require("./os2-max-context"), exports);
//# sourceMappingURL=index.js.map
{
"name": "@ot-builder/io-bin-layout",
"version": "1.4.0",
"version": "1.5.0",
"license": "MIT",

@@ -26,23 +26,23 @@ "repository": {

"dependencies": {
"@ot-builder/bin-composite-types": "1.4.0",
"@ot-builder/bin-util": "1.4.0",
"@ot-builder/errors": "1.4.0",
"@ot-builder/ot-glyphs": "1.4.0",
"@ot-builder/ot-layout": "1.4.0",
"@ot-builder/ot-metadata": "1.4.0",
"@ot-builder/prelude": "1.4.0",
"@ot-builder/primitive": "1.4.0",
"@ot-builder/var-store": "1.4.0",
"@ot-builder/variance": "1.4.0",
"@ot-builder/common-impl": "1.4.0",
"@ot-builder/ot-sfnt": "1.4.0",
"@ot-builder/io-bin-sfnt": "1.4.0",
"@ot-builder/bin-composite-types": "1.5.0",
"@ot-builder/bin-util": "1.5.0",
"@ot-builder/errors": "1.5.0",
"@ot-builder/ot-glyphs": "1.5.0",
"@ot-builder/ot-layout": "1.5.0",
"@ot-builder/ot-metadata": "1.5.0",
"@ot-builder/prelude": "1.5.0",
"@ot-builder/primitive": "1.5.0",
"@ot-builder/var-store": "1.5.0",
"@ot-builder/variance": "1.5.0",
"@ot-builder/common-impl": "1.5.0",
"@ot-builder/ot-sfnt": "1.5.0",
"@ot-builder/io-bin-sfnt": "1.5.0",
"tslib": "^2.0.0"
},
"devDependencies": {
"@ot-builder/io-bin-glyph-store": "1.4.0",
"@ot-builder/io-bin-metadata": "1.4.0",
"@ot-builder/ot-encoding": "1.4.0",
"@ot-builder/io-bin-encoding": "1.4.0",
"@ot-builder/test-util": "1.4.0",
"@ot-builder/io-bin-glyph-store": "1.5.0",
"@ot-builder/io-bin-metadata": "1.5.0",
"@ot-builder/ot-encoding": "1.5.0",
"@ot-builder/io-bin-encoding": "1.5.0",
"@ot-builder/test-util": "1.5.0",
"@types/jest": "^26.0.23",

@@ -49,0 +49,0 @@ "jest": "^27.5.1"