Skip to content

Commit 88ce8a7

Browse files
committed
maint(pat slides): Use URL web API instead custom url api from core.
1 parent 4dfcd2c commit 88ce8a7

File tree

2 files changed

+13
-25
lines changed

2 files changed

+13
-25
lines changed

src/pat/slides/slides.js

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import $ from "jquery";
77
import registry from "../../core/registry";
88
import utils from "../../core/utils";
9-
import url from "../../core/url";
109
import "../../core/remove";
1110

1211
var slides = {
@@ -24,10 +23,12 @@ var slides = {
2423
}
2524
await import("slides/src/slides"); // loads ``Presentation`` globally.
2625

27-
var parameters = url.parameters();
28-
if (parameters.slides !== undefined) {
29-
var requested_ids = slides._collapse_ids(parameters.slides);
30-
if (requested_ids) slides._remove_slides($el, requested_ids);
26+
const slides_filter = new URL(window.location).searchParams.get("slides");
27+
if (slides_filter) {
28+
const requested_ids = slides._collapse_ids(slides_filter);
29+
if (requested_ids) {
30+
slides._remove_slides($el, requested_ids);
31+
}
3132
}
3233
$el.each(function () {
3334
var presentation = new window.Presentation(this),
@@ -61,17 +62,8 @@ var slides = {
6162
});
6263
},
6364

64-
_collapse_ids: function (params) {
65-
var ids = [];
66-
params.forEach(function (param) {
67-
if (param)
68-
ids = ids.concat(
69-
param.split(",").filter(function (id) {
70-
return !!id;
71-
})
72-
);
73-
});
74-
return ids;
65+
_collapse_ids: function (id_string) {
66+
return (id_string || "").split(",").filter((it) => !!it);
7567
},
7668

7769
_remove_slides: function ($shows, ids) {

src/pat/slides/slides.test.js

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,23 @@ describe("pat-slides", function () {
1010

1111
describe("_collapse_ids", function () {
1212
it("Single id", function () {
13-
expect(pattern._collapse_ids(["foo"])).toEqual(["foo"]);
13+
expect(pattern._collapse_ids("foo")).toEqual(["foo"]);
1414
});
1515

1616
it("Comma-separated list of ids", function () {
17-
expect(pattern._collapse_ids(["foo,bar"])).toEqual(["foo", "bar"]);
17+
expect(pattern._collapse_ids("foo,bar")).toEqual(["foo", "bar"]);
1818
});
1919

2020
it("Skip empty ids", function () {
21-
expect(pattern._collapse_ids(["foo,,bar"])).toEqual(["foo", "bar"]);
21+
expect(pattern._collapse_ids("foo,,bar")).toEqual(["foo", "bar"]);
2222
});
2323

2424
it("Parameter without value", function () {
25-
expect(pattern._collapse_ids([null])).toEqual([]);
25+
expect(pattern._collapse_ids(null)).toEqual([]);
2626
});
2727

2828
it("Parameter with empty value", function () {
29-
expect(pattern._collapse_ids([""])).toEqual([]);
30-
});
31-
32-
it("Multiple parameters", function () {
33-
expect(pattern._collapse_ids(["foo", "bar"])).toEqual(["foo", "bar"]);
29+
expect(pattern._collapse_ids("")).toEqual([]);
3430
});
3531
});
3632

0 commit comments

Comments
 (0)