Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the cached-iterable dependency #260

Merged
merged 1 commit into from
Jul 24, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions fluent-dom/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@
Currently supported are: Firefox 52+, Chrome 55+, Edge 15+, Safari 10.1+,
iOS Safari 10.3+ and node 8.9+.

- Add the `cached-iterable` runtime dependency.

`CachedAsyncIterable` is now available from its own package rather than
from the `fluent` package.

## fluent-dom 0.3.0

- Refactor the overlay sanitization methods into separate functions. (#189)
Expand Down
3 changes: 3 additions & 0 deletions fluent-dom/makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
PACKAGE := fluent-dom
GLOBAL := FluentDOM
DEPS := cached-iterable:CachedIterable

include ../common.mk

Expand All @@ -11,6 +12,7 @@ $(PACKAGE).js: $(SOURCES)
--banner "/* $(PACKAGE)@$(VERSION) */" \
--amd.id $(PACKAGE) \
--name $(GLOBAL) \
--globals $(DEPS) \
--output.file $@
@echo -e " $(OK) $@ built"

Expand All @@ -20,6 +22,7 @@ compat.js: $(SOURCES)
--banner "/* $(PACKAGE)@$(VERSION) */" \
--amd.id $(PACKAGE) \
--name $(GLOBAL) \
--globals $(DEPS) \
--output.file $@
@echo -e " $(OK) $@ built"

Expand Down
3 changes: 3 additions & 0 deletions fluent-dom/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,8 @@
},
"devDependencies": {
"jsdom": "^11.6.2"
},
"dependencies": {
"cached-iterable": "^0.2.1"
}
}
10 changes: 5 additions & 5 deletions fluent-dom/src/localization.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint no-console: ["error", { allow: ["warn", "error"] }] */
/* global console */

import { CachedAsyncIterable } from "../../fluent/src/index";
import { CachedAsyncIterable } from "cached-iterable";

/**
* The `Localization` class is a central high-level API for vanilla
Expand All @@ -20,8 +20,8 @@ export default class Localization {
constructor(resourceIds = [], generateMessages) {
this.resourceIds = resourceIds;
this.generateMessages = generateMessages;
this.ctxs =
new CachedAsyncIterable(this.generateMessages(this.resourceIds));
this.ctxs = CachedAsyncIterable.from(
this.generateMessages(this.resourceIds));
}

addResourceIds(resourceIds) {
Expand Down Expand Up @@ -154,8 +154,8 @@ export default class Localization {
* that language negotiation or available resources changed.
*/
onChange() {
this.ctxs =
new CachedAsyncIterable(this.generateMessages(this.resourceIds));
this.ctxs = CachedAsyncIterable.from(
this.generateMessages(this.resourceIds));
this.ctxs.touchNext(2);
}
}
Expand Down
6 changes: 5 additions & 1 deletion fluent-gecko/xpcom_config.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import nodeResolve from 'rollup-plugin-node-resolve';
import bundleConfig from '../bundle_config';

const version = require('../fluent-dom/package.json').version;
Expand All @@ -24,5 +25,8 @@ export default Object.assign({}, bundleConfig, {
* limitations under the License.
*/\n\n`,
intro: `/* fluent-dom@${version} */`,
}
},
plugins: [
nodeResolve(),
]
});
5 changes: 5 additions & 0 deletions fluent-react/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@
Currently supported are: Firefox 52+, Chrome 55+, Edge 15+, Safari 10.1+,
iOS Safari 10.3+ and node 8.9+.

- Add the `cached-iterable` runtime dependency.

`CachedSyncIterable` is now available from its own package rather than
from the `fluent` package.

## fluent-react 0.7.0 (May 18, 2018)

- Protect void elements against translated text content. (#174)
Expand Down
12 changes: 10 additions & 2 deletions fluent-react/compat_config.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,16 @@ export default {
plugins: [
...babelConfig.plugins,
["babel-plugin-transform-rename-import", {
original: "fluent",
replacement: "fluent/compat",
replacements: [
{
original: "fluent",
replacement: "fluent/compat",
},
{
original: "cached-iterable",
replacement: "cached-iterable/compat",
},
]
}],
]
}),
Expand Down
4 changes: 2 additions & 2 deletions fluent-react/makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
PACKAGE := fluent-react
GLOBAL := FluentReact
DEPS := fluent:Fluent,react:React,prop-types:PropTypes
DEPS := fluent:Fluent,cached-iterable:CachedIterable,react:React,prop-types:PropTypes

include ../common.mk

Expand All @@ -22,7 +22,7 @@ compat.js: $(SOURCES)
--banner "/* $(PACKAGE)@$(VERSION) */" \
--amd.id $(PACKAGE) \
--name $(GLOBAL) \
--globals fluent/compat:Fluent,$(DEPS) \
--globals fluent/compat:Fluent,cached-iterable/compat:CachedIterable,$(DEPS) \
--output.file $@
@echo -e " $(OK) $@ built"

Expand Down
1 change: 1 addition & 0 deletions fluent-react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
"node": ">=8.9.0"
},
"dependencies": {
"cached-iterable": "^0.2.1",
"fluent": "^0.4.0 || ^0.6.0",
"prop-types": "^15.6.0"
},
Expand Down
7 changes: 4 additions & 3 deletions fluent-react/src/localization.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { CachedIterable, mapContextSync } from "fluent";
import { mapContextSync } from "fluent";
import { CachedSyncIterable } from "cached-iterable";

/*
* `ReactLocalization` handles translation formatting and fallback.
Expand All @@ -17,7 +18,7 @@ import { CachedIterable, mapContextSync } from "fluent";
*/
export default class ReactLocalization {
constructor(messages) {
this.contexts = new CachedIterable(messages);
this.contexts = CachedSyncIterable.from(messages);
this.subs = new Set();
}

Expand All @@ -39,7 +40,7 @@ export default class ReactLocalization {
* Set a new `messages` iterable and trigger the retranslation.
*/
setMessages(messages) {
this.contexts = new CachedIterable(messages);
this.contexts = CachedSyncIterable.from(messages);

// Update all subscribed Localized components.
this.subs.forEach(comp => comp.relocalize());
Expand Down
4 changes: 4 additions & 0 deletions fluent/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@
Currently supported are: Firefox 52+, Chrome 55+, Edge 15+, Safari 10.1+,
iOS Safari 10.3+ and node 8.9+.

- Move CachedSyncIterable and CachedAsyncIterable to an external dependency.

They are now available from the `cached-iterable` package.

## fluent 0.6.4 (April 11, 2018)

- Minor optimization to bidirectionality isolation
Expand Down
1 change: 1 addition & 0 deletions fluent/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
"node": ">=8.9.0"
},
"devDependencies": {
"cached-iterable": "^0.2.1",
"sinon": "^4.2.2"
}
}
109 changes: 0 additions & 109 deletions fluent/src/cached_iterable.js

This file was deleted.

1 change: 0 additions & 1 deletion fluent/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ export {
FluentDateTime as MessageDateTimeArgument,
} from "./types";

export { CachedSyncIterable, CachedAsyncIterable } from "./cached_iterable";
export { mapContextSync, mapContextAsync } from "./fallback";

export { ftl } from "./util";
Loading