@pod-os/core 0.26.0-rc.dba0210.0 → 0.26.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/dist/index.js CHANGED
@@ -11613,348 +11613,6 @@ var require_browser_ponyfill = __commonJS({
11613
11613
  }
11614
11614
  });
11615
11615
 
11616
- // ../node_modules/short-unique-id/dist/short-unique-id.js
11617
- var require_short_unique_id = __commonJS({
11618
- "../node_modules/short-unique-id/dist/short-unique-id.js"(exports, module3) {
11619
- "use strict";
11620
- var ShortUniqueId2 = (() => {
11621
- var __defProp = Object.defineProperty;
11622
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11623
- var __getOwnPropNames = Object.getOwnPropertyNames;
11624
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
11625
- var __hasOwnProp = Object.prototype.hasOwnProperty;
11626
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11627
- var __defNormalProp = (obj, key3, value7) => key3 in obj ? __defProp(obj, key3, { enumerable: true, configurable: true, writable: true, value: value7 }) : obj[key3] = value7;
11628
- var __spreadValues = (a, b) => {
11629
- for (var prop in b || (b = {}))
11630
- if (__hasOwnProp.call(b, prop))
11631
- __defNormalProp(a, prop, b[prop]);
11632
- if (__getOwnPropSymbols)
11633
- for (var prop of __getOwnPropSymbols(b)) {
11634
- if (__propIsEnum.call(b, prop))
11635
- __defNormalProp(a, prop, b[prop]);
11636
- }
11637
- return a;
11638
- };
11639
- var __export2 = (target6, all) => {
11640
- for (var name9 in all)
11641
- __defProp(target6, name9, { get: all[name9], enumerable: true });
11642
- };
11643
- var __copyProps = (to2, from2, except, desc) => {
11644
- if (from2 && typeof from2 === "object" || typeof from2 === "function") {
11645
- for (let key3 of __getOwnPropNames(from2))
11646
- if (!__hasOwnProp.call(to2, key3) && key3 !== except)
11647
- __defProp(to2, key3, { get: () => from2[key3], enumerable: !(desc = __getOwnPropDesc(from2, key3)) || desc.enumerable });
11648
- }
11649
- return to2;
11650
- };
11651
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
11652
- var __publicField = (obj, key3, value7) => {
11653
- __defNormalProp(obj, typeof key3 !== "symbol" ? key3 + "" : key3, value7);
11654
- return value7;
11655
- };
11656
- var src_exports = {};
11657
- __export2(src_exports, {
11658
- DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,
11659
- DEFAULT_UUID_LENGTH: () => DEFAULT_UUID_LENGTH,
11660
- default: () => ShortUniqueId3
11661
- });
11662
- var version6 = "5.2.0";
11663
- var DEFAULT_UUID_LENGTH = 6;
11664
- var DEFAULT_OPTIONS = {
11665
- dictionary: "alphanum",
11666
- shuffle: true,
11667
- debug: false,
11668
- length: DEFAULT_UUID_LENGTH,
11669
- counter: 0
11670
- };
11671
- var _ShortUniqueId = class _ShortUniqueId {
11672
- constructor(argOptions = {}) {
11673
- __publicField(this, "counter");
11674
- __publicField(this, "debug");
11675
- __publicField(this, "dict");
11676
- __publicField(this, "version");
11677
- __publicField(this, "dictIndex", 0);
11678
- __publicField(this, "dictRange", []);
11679
- __publicField(this, "lowerBound", 0);
11680
- __publicField(this, "upperBound", 0);
11681
- __publicField(this, "dictLength", 0);
11682
- __publicField(this, "uuidLength");
11683
- __publicField(this, "_digit_first_ascii", 48);
11684
- __publicField(this, "_digit_last_ascii", 58);
11685
- __publicField(this, "_alpha_lower_first_ascii", 97);
11686
- __publicField(this, "_alpha_lower_last_ascii", 123);
11687
- __publicField(this, "_hex_last_ascii", 103);
11688
- __publicField(this, "_alpha_upper_first_ascii", 65);
11689
- __publicField(this, "_alpha_upper_last_ascii", 91);
11690
- __publicField(this, "_number_dict_ranges", {
11691
- digits: [this._digit_first_ascii, this._digit_last_ascii]
11692
- });
11693
- __publicField(this, "_alpha_dict_ranges", {
11694
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
11695
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11696
- });
11697
- __publicField(this, "_alpha_lower_dict_ranges", {
11698
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
11699
- });
11700
- __publicField(this, "_alpha_upper_dict_ranges", {
11701
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11702
- });
11703
- __publicField(this, "_alphanum_dict_ranges", {
11704
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11705
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
11706
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11707
- });
11708
- __publicField(this, "_alphanum_lower_dict_ranges", {
11709
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11710
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
11711
- });
11712
- __publicField(this, "_alphanum_upper_dict_ranges", {
11713
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11714
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11715
- });
11716
- __publicField(this, "_hex_dict_ranges", {
11717
- decDigits: [this._digit_first_ascii, this._digit_last_ascii],
11718
- alphaDigits: [this._alpha_lower_first_ascii, this._hex_last_ascii]
11719
- });
11720
- __publicField(this, "_dict_ranges", {
11721
- _number_dict_ranges: this._number_dict_ranges,
11722
- _alpha_dict_ranges: this._alpha_dict_ranges,
11723
- _alpha_lower_dict_ranges: this._alpha_lower_dict_ranges,
11724
- _alpha_upper_dict_ranges: this._alpha_upper_dict_ranges,
11725
- _alphanum_dict_ranges: this._alphanum_dict_ranges,
11726
- _alphanum_lower_dict_ranges: this._alphanum_lower_dict_ranges,
11727
- _alphanum_upper_dict_ranges: this._alphanum_upper_dict_ranges,
11728
- _hex_dict_ranges: this._hex_dict_ranges
11729
- });
11730
- __publicField(this, "log", (...args) => {
11731
- const finalArgs = [...args];
11732
- finalArgs[0] = `[short-unique-id] ${args[0]}`;
11733
- if (this.debug === true) {
11734
- if (typeof console !== "undefined" && console !== null) {
11735
- return console.log(...finalArgs);
11736
- }
11737
- }
11738
- });
11739
- __publicField(this, "_normalizeDictionary", (dictionary2, shuffle2) => {
11740
- let finalDict;
11741
- if (dictionary2 && Array.isArray(dictionary2) && dictionary2.length > 1) {
11742
- finalDict = dictionary2;
11743
- } else {
11744
- finalDict = [];
11745
- let i;
11746
- this.dictIndex = i = 0;
11747
- const rangesName = `_${dictionary2}_dict_ranges`;
11748
- const ranges = this._dict_ranges[rangesName];
11749
- Object.keys(ranges).forEach((rangeType) => {
11750
- const rangeTypeKey = rangeType;
11751
- this.dictRange = ranges[rangeTypeKey];
11752
- this.lowerBound = this.dictRange[0];
11753
- this.upperBound = this.dictRange[1];
11754
- for (this.dictIndex = i = this.lowerBound; this.lowerBound <= this.upperBound ? i < this.upperBound : i > this.upperBound; this.dictIndex = this.lowerBound <= this.upperBound ? i += 1 : i -= 1) {
11755
- finalDict.push(String.fromCharCode(this.dictIndex));
11756
- }
11757
- });
11758
- }
11759
- if (shuffle2) {
11760
- const PROBABILITY = 0.5;
11761
- finalDict = finalDict.sort(() => Math.random() - PROBABILITY);
11762
- }
11763
- return finalDict;
11764
- });
11765
- __publicField(this, "setDictionary", (dictionary2, shuffle2) => {
11766
- this.dict = this._normalizeDictionary(dictionary2, shuffle2);
11767
- this.dictLength = this.dict.length;
11768
- this.setCounter(0);
11769
- });
11770
- __publicField(this, "seq", () => {
11771
- return this.sequentialUUID();
11772
- });
11773
- __publicField(this, "sequentialUUID", () => {
11774
- let counterDiv;
11775
- let counterRem;
11776
- let id4 = "";
11777
- counterDiv = this.counter;
11778
- do {
11779
- counterRem = counterDiv % this.dictLength;
11780
- counterDiv = Math.trunc(counterDiv / this.dictLength);
11781
- id4 += this.dict[counterRem];
11782
- } while (counterDiv !== 0);
11783
- this.counter += 1;
11784
- return id4;
11785
- });
11786
- __publicField(this, "rnd", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
11787
- return this.randomUUID(uuidLength);
11788
- });
11789
- __publicField(this, "randomUUID", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
11790
- let id4;
11791
- let randomPartIdx;
11792
- let j;
11793
- if (uuidLength === null || typeof uuidLength === "undefined" || uuidLength < 1) {
11794
- throw new Error("Invalid UUID Length Provided");
11795
- }
11796
- const isPositive = uuidLength >= 0;
11797
- id4 = "";
11798
- for (j = 0; j < uuidLength; j += 1) {
11799
- randomPartIdx = parseInt(
11800
- (Math.random() * this.dictLength).toFixed(0),
11801
- 10
11802
- ) % this.dictLength;
11803
- id4 += this.dict[randomPartIdx];
11804
- }
11805
- return id4;
11806
- });
11807
- __publicField(this, "fmt", (format4, date6) => {
11808
- return this.formattedUUID(format4, date6);
11809
- });
11810
- __publicField(this, "formattedUUID", (format4, date6) => {
11811
- const fnMap = {
11812
- "$r": this.randomUUID,
11813
- "$s": this.sequentialUUID,
11814
- "$t": this.stamp
11815
- };
11816
- const result6 = format4.replace(
11817
- /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
11818
- (m) => {
11819
- const fn2 = m.slice(0, 2);
11820
- const len = parseInt(m.slice(2), 10);
11821
- if (fn2 === "$s") {
11822
- return fnMap[fn2]().padStart(len, "0");
11823
- }
11824
- if (fn2 === "$t" && date6) {
11825
- return fnMap[fn2](len, date6);
11826
- }
11827
- return fnMap[fn2](len);
11828
- }
11829
- );
11830
- return result6;
11831
- });
11832
- __publicField(this, "availableUUIDs", (uuidLength = this.uuidLength) => {
11833
- return parseFloat(
11834
- Math.pow([...new Set(this.dict)].length, uuidLength).toFixed(0)
11835
- );
11836
- });
11837
- __publicField(this, "approxMaxBeforeCollision", (rounds = this.availableUUIDs(this.uuidLength)) => {
11838
- return parseFloat(
11839
- Math.sqrt(Math.PI / 2 * rounds).toFixed(20)
11840
- );
11841
- });
11842
- __publicField(this, "collisionProbability", (rounds = this.availableUUIDs(this.uuidLength), uuidLength = this.uuidLength) => {
11843
- return parseFloat(
11844
- (this.approxMaxBeforeCollision(rounds) / this.availableUUIDs(uuidLength)).toFixed(20)
11845
- );
11846
- });
11847
- __publicField(this, "uniqueness", (rounds = this.availableUUIDs(this.uuidLength)) => {
11848
- const score2 = parseFloat(
11849
- (1 - this.approxMaxBeforeCollision(rounds) / rounds).toFixed(20)
11850
- );
11851
- return score2 > 1 ? 1 : score2 < 0 ? 0 : score2;
11852
- });
11853
- __publicField(this, "getVersion", () => {
11854
- return this.version;
11855
- });
11856
- __publicField(this, "stamp", (finalLength, date6) => {
11857
- const hexStamp = Math.floor(+(date6 || /* @__PURE__ */ new Date()) / 1e3).toString(16);
11858
- if (typeof finalLength === "number" && finalLength === 0) {
11859
- return hexStamp;
11860
- }
11861
- if (typeof finalLength !== "number" || finalLength < 10) {
11862
- throw new Error(
11863
- [
11864
- "Param finalLength must be a number greater than or equal to 10,",
11865
- "or 0 if you want the raw hexadecimal timestamp"
11866
- ].join("\n")
11867
- );
11868
- }
11869
- const idLength = finalLength - 9;
11870
- const rndIdx = Math.round(Math.random() * (idLength > 15 ? 15 : idLength));
11871
- const id4 = this.randomUUID(idLength);
11872
- return `${id4.substring(0, rndIdx)}${hexStamp}${id4.substring(rndIdx)}${rndIdx.toString(16)}`;
11873
- });
11874
- __publicField(this, "parseStamp", (suid, format4) => {
11875
- if (format4 && !/t0|t[1-9]\d{1,}/.test(format4)) {
11876
- throw new Error("Cannot extract date from a formated UUID with no timestamp in the format");
11877
- }
11878
- const stamp = format4 ? format4.replace(
11879
- /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
11880
- (m) => {
11881
- const fnMap = {
11882
- "$r": (len2) => [...Array(len2)].map(() => "r").join(""),
11883
- "$s": (len2) => [...Array(len2)].map(() => "s").join(""),
11884
- "$t": (len2) => [...Array(len2)].map(() => "t").join("")
11885
- };
11886
- const fn2 = m.slice(0, 2);
11887
- const len = parseInt(m.slice(2), 10);
11888
- return fnMap[fn2](len);
11889
- }
11890
- ).replace(
11891
- /^(.*?)(t{8,})(.*)$/g,
11892
- (_m, p1, p2) => {
11893
- return suid.substring(p1.length, p1.length + p2.length);
11894
- }
11895
- ) : suid;
11896
- if (stamp.length === 8) {
11897
- return new Date(parseInt(stamp, 16) * 1e3);
11898
- }
11899
- if (stamp.length < 10) {
11900
- throw new Error("Stamp length invalid");
11901
- }
11902
- const rndIdx = parseInt(stamp.substring(stamp.length - 1), 16);
11903
- return new Date(parseInt(stamp.substring(rndIdx, rndIdx + 8), 16) * 1e3);
11904
- });
11905
- __publicField(this, "setCounter", (counter2) => {
11906
- this.counter = counter2;
11907
- });
11908
- __publicField(this, "validate", (uid4, dictionary2) => {
11909
- const finalDictionary = dictionary2 ? this._normalizeDictionary(dictionary2) : this.dict;
11910
- return uid4.split("").every((c) => finalDictionary.includes(c));
11911
- });
11912
- const options = __spreadValues(__spreadValues({}, DEFAULT_OPTIONS), argOptions);
11913
- this.counter = 0;
11914
- this.debug = false;
11915
- this.dict = [];
11916
- this.version = version6;
11917
- const {
11918
- dictionary,
11919
- shuffle,
11920
- length: length3,
11921
- counter
11922
- } = options;
11923
- this.uuidLength = length3;
11924
- this.setDictionary(dictionary, shuffle);
11925
- this.setCounter(counter);
11926
- this.debug = options.debug;
11927
- this.log(this.dict);
11928
- this.log(
11929
- `Generator instantiated with Dictionary Size ${this.dictLength} and counter set to ${this.counter}`
11930
- );
11931
- this.log = this.log.bind(this);
11932
- this.setDictionary = this.setDictionary.bind(this);
11933
- this.setCounter = this.setCounter.bind(this);
11934
- this.seq = this.seq.bind(this);
11935
- this.sequentialUUID = this.sequentialUUID.bind(this);
11936
- this.rnd = this.rnd.bind(this);
11937
- this.randomUUID = this.randomUUID.bind(this);
11938
- this.fmt = this.fmt.bind(this);
11939
- this.formattedUUID = this.formattedUUID.bind(this);
11940
- this.availableUUIDs = this.availableUUIDs.bind(this);
11941
- this.approxMaxBeforeCollision = this.approxMaxBeforeCollision.bind(this);
11942
- this.collisionProbability = this.collisionProbability.bind(this);
11943
- this.uniqueness = this.uniqueness.bind(this);
11944
- this.getVersion = this.getVersion.bind(this);
11945
- this.stamp = this.stamp.bind(this);
11946
- this.parseStamp = this.parseStamp.bind(this);
11947
- return this;
11948
- }
11949
- };
11950
- __publicField(_ShortUniqueId, "default", _ShortUniqueId);
11951
- var ShortUniqueId3 = _ShortUniqueId;
11952
- return __toCommonJS(src_exports);
11953
- })();
11954
- "undefined" != typeof module3 && (module3.exports = ShortUniqueId2.default), "undefined" != typeof window && (ShortUniqueId2 = ShortUniqueId2.default);
11955
- }
11956
- });
11957
-
11958
11616
  // ../node_modules/lunr/lunr.js
11959
11617
  var require_lunr = __commonJS({
11960
11618
  "../node_modules/lunr/lunr.js"(exports, module3) {
@@ -13686,6 +13344,348 @@ var require_lunr = __commonJS({
13686
13344
  }
13687
13345
  });
13688
13346
 
13347
+ // ../node_modules/short-unique-id/dist/short-unique-id.js
13348
+ var require_short_unique_id = __commonJS({
13349
+ "../node_modules/short-unique-id/dist/short-unique-id.js"(exports, module3) {
13350
+ "use strict";
13351
+ var ShortUniqueId2 = (() => {
13352
+ var __defProp = Object.defineProperty;
13353
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13354
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13355
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
13356
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13357
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
13358
+ var __defNormalProp = (obj, key3, value7) => key3 in obj ? __defProp(obj, key3, { enumerable: true, configurable: true, writable: true, value: value7 }) : obj[key3] = value7;
13359
+ var __spreadValues = (a, b) => {
13360
+ for (var prop in b || (b = {}))
13361
+ if (__hasOwnProp.call(b, prop))
13362
+ __defNormalProp(a, prop, b[prop]);
13363
+ if (__getOwnPropSymbols)
13364
+ for (var prop of __getOwnPropSymbols(b)) {
13365
+ if (__propIsEnum.call(b, prop))
13366
+ __defNormalProp(a, prop, b[prop]);
13367
+ }
13368
+ return a;
13369
+ };
13370
+ var __export2 = (target6, all) => {
13371
+ for (var name9 in all)
13372
+ __defProp(target6, name9, { get: all[name9], enumerable: true });
13373
+ };
13374
+ var __copyProps = (to2, from2, except, desc) => {
13375
+ if (from2 && typeof from2 === "object" || typeof from2 === "function") {
13376
+ for (let key3 of __getOwnPropNames(from2))
13377
+ if (!__hasOwnProp.call(to2, key3) && key3 !== except)
13378
+ __defProp(to2, key3, { get: () => from2[key3], enumerable: !(desc = __getOwnPropDesc(from2, key3)) || desc.enumerable });
13379
+ }
13380
+ return to2;
13381
+ };
13382
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
13383
+ var __publicField = (obj, key3, value7) => {
13384
+ __defNormalProp(obj, typeof key3 !== "symbol" ? key3 + "" : key3, value7);
13385
+ return value7;
13386
+ };
13387
+ var src_exports = {};
13388
+ __export2(src_exports, {
13389
+ DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,
13390
+ DEFAULT_UUID_LENGTH: () => DEFAULT_UUID_LENGTH,
13391
+ default: () => ShortUniqueId3
13392
+ });
13393
+ var version6 = "5.2.0";
13394
+ var DEFAULT_UUID_LENGTH = 6;
13395
+ var DEFAULT_OPTIONS = {
13396
+ dictionary: "alphanum",
13397
+ shuffle: true,
13398
+ debug: false,
13399
+ length: DEFAULT_UUID_LENGTH,
13400
+ counter: 0
13401
+ };
13402
+ var _ShortUniqueId = class _ShortUniqueId {
13403
+ constructor(argOptions = {}) {
13404
+ __publicField(this, "counter");
13405
+ __publicField(this, "debug");
13406
+ __publicField(this, "dict");
13407
+ __publicField(this, "version");
13408
+ __publicField(this, "dictIndex", 0);
13409
+ __publicField(this, "dictRange", []);
13410
+ __publicField(this, "lowerBound", 0);
13411
+ __publicField(this, "upperBound", 0);
13412
+ __publicField(this, "dictLength", 0);
13413
+ __publicField(this, "uuidLength");
13414
+ __publicField(this, "_digit_first_ascii", 48);
13415
+ __publicField(this, "_digit_last_ascii", 58);
13416
+ __publicField(this, "_alpha_lower_first_ascii", 97);
13417
+ __publicField(this, "_alpha_lower_last_ascii", 123);
13418
+ __publicField(this, "_hex_last_ascii", 103);
13419
+ __publicField(this, "_alpha_upper_first_ascii", 65);
13420
+ __publicField(this, "_alpha_upper_last_ascii", 91);
13421
+ __publicField(this, "_number_dict_ranges", {
13422
+ digits: [this._digit_first_ascii, this._digit_last_ascii]
13423
+ });
13424
+ __publicField(this, "_alpha_dict_ranges", {
13425
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
13426
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13427
+ });
13428
+ __publicField(this, "_alpha_lower_dict_ranges", {
13429
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
13430
+ });
13431
+ __publicField(this, "_alpha_upper_dict_ranges", {
13432
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13433
+ });
13434
+ __publicField(this, "_alphanum_dict_ranges", {
13435
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13436
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
13437
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13438
+ });
13439
+ __publicField(this, "_alphanum_lower_dict_ranges", {
13440
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13441
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
13442
+ });
13443
+ __publicField(this, "_alphanum_upper_dict_ranges", {
13444
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13445
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13446
+ });
13447
+ __publicField(this, "_hex_dict_ranges", {
13448
+ decDigits: [this._digit_first_ascii, this._digit_last_ascii],
13449
+ alphaDigits: [this._alpha_lower_first_ascii, this._hex_last_ascii]
13450
+ });
13451
+ __publicField(this, "_dict_ranges", {
13452
+ _number_dict_ranges: this._number_dict_ranges,
13453
+ _alpha_dict_ranges: this._alpha_dict_ranges,
13454
+ _alpha_lower_dict_ranges: this._alpha_lower_dict_ranges,
13455
+ _alpha_upper_dict_ranges: this._alpha_upper_dict_ranges,
13456
+ _alphanum_dict_ranges: this._alphanum_dict_ranges,
13457
+ _alphanum_lower_dict_ranges: this._alphanum_lower_dict_ranges,
13458
+ _alphanum_upper_dict_ranges: this._alphanum_upper_dict_ranges,
13459
+ _hex_dict_ranges: this._hex_dict_ranges
13460
+ });
13461
+ __publicField(this, "log", (...args) => {
13462
+ const finalArgs = [...args];
13463
+ finalArgs[0] = `[short-unique-id] ${args[0]}`;
13464
+ if (this.debug === true) {
13465
+ if (typeof console !== "undefined" && console !== null) {
13466
+ return console.log(...finalArgs);
13467
+ }
13468
+ }
13469
+ });
13470
+ __publicField(this, "_normalizeDictionary", (dictionary2, shuffle2) => {
13471
+ let finalDict;
13472
+ if (dictionary2 && Array.isArray(dictionary2) && dictionary2.length > 1) {
13473
+ finalDict = dictionary2;
13474
+ } else {
13475
+ finalDict = [];
13476
+ let i;
13477
+ this.dictIndex = i = 0;
13478
+ const rangesName = `_${dictionary2}_dict_ranges`;
13479
+ const ranges = this._dict_ranges[rangesName];
13480
+ Object.keys(ranges).forEach((rangeType) => {
13481
+ const rangeTypeKey = rangeType;
13482
+ this.dictRange = ranges[rangeTypeKey];
13483
+ this.lowerBound = this.dictRange[0];
13484
+ this.upperBound = this.dictRange[1];
13485
+ for (this.dictIndex = i = this.lowerBound; this.lowerBound <= this.upperBound ? i < this.upperBound : i > this.upperBound; this.dictIndex = this.lowerBound <= this.upperBound ? i += 1 : i -= 1) {
13486
+ finalDict.push(String.fromCharCode(this.dictIndex));
13487
+ }
13488
+ });
13489
+ }
13490
+ if (shuffle2) {
13491
+ const PROBABILITY = 0.5;
13492
+ finalDict = finalDict.sort(() => Math.random() - PROBABILITY);
13493
+ }
13494
+ return finalDict;
13495
+ });
13496
+ __publicField(this, "setDictionary", (dictionary2, shuffle2) => {
13497
+ this.dict = this._normalizeDictionary(dictionary2, shuffle2);
13498
+ this.dictLength = this.dict.length;
13499
+ this.setCounter(0);
13500
+ });
13501
+ __publicField(this, "seq", () => {
13502
+ return this.sequentialUUID();
13503
+ });
13504
+ __publicField(this, "sequentialUUID", () => {
13505
+ let counterDiv;
13506
+ let counterRem;
13507
+ let id4 = "";
13508
+ counterDiv = this.counter;
13509
+ do {
13510
+ counterRem = counterDiv % this.dictLength;
13511
+ counterDiv = Math.trunc(counterDiv / this.dictLength);
13512
+ id4 += this.dict[counterRem];
13513
+ } while (counterDiv !== 0);
13514
+ this.counter += 1;
13515
+ return id4;
13516
+ });
13517
+ __publicField(this, "rnd", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
13518
+ return this.randomUUID(uuidLength);
13519
+ });
13520
+ __publicField(this, "randomUUID", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
13521
+ let id4;
13522
+ let randomPartIdx;
13523
+ let j;
13524
+ if (uuidLength === null || typeof uuidLength === "undefined" || uuidLength < 1) {
13525
+ throw new Error("Invalid UUID Length Provided");
13526
+ }
13527
+ const isPositive = uuidLength >= 0;
13528
+ id4 = "";
13529
+ for (j = 0; j < uuidLength; j += 1) {
13530
+ randomPartIdx = parseInt(
13531
+ (Math.random() * this.dictLength).toFixed(0),
13532
+ 10
13533
+ ) % this.dictLength;
13534
+ id4 += this.dict[randomPartIdx];
13535
+ }
13536
+ return id4;
13537
+ });
13538
+ __publicField(this, "fmt", (format4, date6) => {
13539
+ return this.formattedUUID(format4, date6);
13540
+ });
13541
+ __publicField(this, "formattedUUID", (format4, date6) => {
13542
+ const fnMap = {
13543
+ "$r": this.randomUUID,
13544
+ "$s": this.sequentialUUID,
13545
+ "$t": this.stamp
13546
+ };
13547
+ const result6 = format4.replace(
13548
+ /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
13549
+ (m) => {
13550
+ const fn2 = m.slice(0, 2);
13551
+ const len = parseInt(m.slice(2), 10);
13552
+ if (fn2 === "$s") {
13553
+ return fnMap[fn2]().padStart(len, "0");
13554
+ }
13555
+ if (fn2 === "$t" && date6) {
13556
+ return fnMap[fn2](len, date6);
13557
+ }
13558
+ return fnMap[fn2](len);
13559
+ }
13560
+ );
13561
+ return result6;
13562
+ });
13563
+ __publicField(this, "availableUUIDs", (uuidLength = this.uuidLength) => {
13564
+ return parseFloat(
13565
+ Math.pow([...new Set(this.dict)].length, uuidLength).toFixed(0)
13566
+ );
13567
+ });
13568
+ __publicField(this, "approxMaxBeforeCollision", (rounds = this.availableUUIDs(this.uuidLength)) => {
13569
+ return parseFloat(
13570
+ Math.sqrt(Math.PI / 2 * rounds).toFixed(20)
13571
+ );
13572
+ });
13573
+ __publicField(this, "collisionProbability", (rounds = this.availableUUIDs(this.uuidLength), uuidLength = this.uuidLength) => {
13574
+ return parseFloat(
13575
+ (this.approxMaxBeforeCollision(rounds) / this.availableUUIDs(uuidLength)).toFixed(20)
13576
+ );
13577
+ });
13578
+ __publicField(this, "uniqueness", (rounds = this.availableUUIDs(this.uuidLength)) => {
13579
+ const score2 = parseFloat(
13580
+ (1 - this.approxMaxBeforeCollision(rounds) / rounds).toFixed(20)
13581
+ );
13582
+ return score2 > 1 ? 1 : score2 < 0 ? 0 : score2;
13583
+ });
13584
+ __publicField(this, "getVersion", () => {
13585
+ return this.version;
13586
+ });
13587
+ __publicField(this, "stamp", (finalLength, date6) => {
13588
+ const hexStamp = Math.floor(+(date6 || /* @__PURE__ */ new Date()) / 1e3).toString(16);
13589
+ if (typeof finalLength === "number" && finalLength === 0) {
13590
+ return hexStamp;
13591
+ }
13592
+ if (typeof finalLength !== "number" || finalLength < 10) {
13593
+ throw new Error(
13594
+ [
13595
+ "Param finalLength must be a number greater than or equal to 10,",
13596
+ "or 0 if you want the raw hexadecimal timestamp"
13597
+ ].join("\n")
13598
+ );
13599
+ }
13600
+ const idLength = finalLength - 9;
13601
+ const rndIdx = Math.round(Math.random() * (idLength > 15 ? 15 : idLength));
13602
+ const id4 = this.randomUUID(idLength);
13603
+ return `${id4.substring(0, rndIdx)}${hexStamp}${id4.substring(rndIdx)}${rndIdx.toString(16)}`;
13604
+ });
13605
+ __publicField(this, "parseStamp", (suid, format4) => {
13606
+ if (format4 && !/t0|t[1-9]\d{1,}/.test(format4)) {
13607
+ throw new Error("Cannot extract date from a formated UUID with no timestamp in the format");
13608
+ }
13609
+ const stamp = format4 ? format4.replace(
13610
+ /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
13611
+ (m) => {
13612
+ const fnMap = {
13613
+ "$r": (len2) => [...Array(len2)].map(() => "r").join(""),
13614
+ "$s": (len2) => [...Array(len2)].map(() => "s").join(""),
13615
+ "$t": (len2) => [...Array(len2)].map(() => "t").join("")
13616
+ };
13617
+ const fn2 = m.slice(0, 2);
13618
+ const len = parseInt(m.slice(2), 10);
13619
+ return fnMap[fn2](len);
13620
+ }
13621
+ ).replace(
13622
+ /^(.*?)(t{8,})(.*)$/g,
13623
+ (_m, p1, p2) => {
13624
+ return suid.substring(p1.length, p1.length + p2.length);
13625
+ }
13626
+ ) : suid;
13627
+ if (stamp.length === 8) {
13628
+ return new Date(parseInt(stamp, 16) * 1e3);
13629
+ }
13630
+ if (stamp.length < 10) {
13631
+ throw new Error("Stamp length invalid");
13632
+ }
13633
+ const rndIdx = parseInt(stamp.substring(stamp.length - 1), 16);
13634
+ return new Date(parseInt(stamp.substring(rndIdx, rndIdx + 8), 16) * 1e3);
13635
+ });
13636
+ __publicField(this, "setCounter", (counter2) => {
13637
+ this.counter = counter2;
13638
+ });
13639
+ __publicField(this, "validate", (uid4, dictionary2) => {
13640
+ const finalDictionary = dictionary2 ? this._normalizeDictionary(dictionary2) : this.dict;
13641
+ return uid4.split("").every((c) => finalDictionary.includes(c));
13642
+ });
13643
+ const options = __spreadValues(__spreadValues({}, DEFAULT_OPTIONS), argOptions);
13644
+ this.counter = 0;
13645
+ this.debug = false;
13646
+ this.dict = [];
13647
+ this.version = version6;
13648
+ const {
13649
+ dictionary,
13650
+ shuffle,
13651
+ length: length3,
13652
+ counter
13653
+ } = options;
13654
+ this.uuidLength = length3;
13655
+ this.setDictionary(dictionary, shuffle);
13656
+ this.setCounter(counter);
13657
+ this.debug = options.debug;
13658
+ this.log(this.dict);
13659
+ this.log(
13660
+ `Generator instantiated with Dictionary Size ${this.dictLength} and counter set to ${this.counter}`
13661
+ );
13662
+ this.log = this.log.bind(this);
13663
+ this.setDictionary = this.setDictionary.bind(this);
13664
+ this.setCounter = this.setCounter.bind(this);
13665
+ this.seq = this.seq.bind(this);
13666
+ this.sequentialUUID = this.sequentialUUID.bind(this);
13667
+ this.rnd = this.rnd.bind(this);
13668
+ this.randomUUID = this.randomUUID.bind(this);
13669
+ this.fmt = this.fmt.bind(this);
13670
+ this.formattedUUID = this.formattedUUID.bind(this);
13671
+ this.availableUUIDs = this.availableUUIDs.bind(this);
13672
+ this.approxMaxBeforeCollision = this.approxMaxBeforeCollision.bind(this);
13673
+ this.collisionProbability = this.collisionProbability.bind(this);
13674
+ this.uniqueness = this.uniqueness.bind(this);
13675
+ this.getVersion = this.getVersion.bind(this);
13676
+ this.stamp = this.stamp.bind(this);
13677
+ this.parseStamp = this.parseStamp.bind(this);
13678
+ return this;
13679
+ }
13680
+ };
13681
+ __publicField(_ShortUniqueId, "default", _ShortUniqueId);
13682
+ var ShortUniqueId3 = _ShortUniqueId;
13683
+ return __toCommonJS(src_exports);
13684
+ })();
13685
+ "undefined" != typeof module3 && (module3.exports = ShortUniqueId2.default), "undefined" != typeof window && (ShortUniqueId2 = ShortUniqueId2.default);
13686
+ }
13687
+ });
13688
+
13689
13689
  // ../node_modules/slugify/slugify.js
13690
13690
  var require_slugify = __commonJS({
13691
13691
  "../node_modules/slugify/slugify.js"(exports, module3) {
@@ -14395,18 +14395,18 @@ function pipeFromArray(fns) {
14395
14395
 
14396
14396
  // ../node_modules/rxjs/dist/esm5/internal/Observable.js
14397
14397
  var Observable = (function() {
14398
- function Observable3(subscribe) {
14398
+ function Observable4(subscribe) {
14399
14399
  if (subscribe) {
14400
14400
  this._subscribe = subscribe;
14401
14401
  }
14402
14402
  }
14403
- Observable3.prototype.lift = function(operator2) {
14404
- var observable2 = new Observable3();
14403
+ Observable4.prototype.lift = function(operator2) {
14404
+ var observable2 = new Observable4();
14405
14405
  observable2.source = this;
14406
14406
  observable2.operator = operator2;
14407
14407
  return observable2;
14408
14408
  };
14409
- Observable3.prototype.subscribe = function(observerOrNext, error4, complete2) {
14409
+ Observable4.prototype.subscribe = function(observerOrNext, error4, complete2) {
14410
14410
  var _this = this;
14411
14411
  var subscriber3 = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error4, complete2);
14412
14412
  errorContext(function() {
@@ -14415,14 +14415,14 @@ var Observable = (function() {
14415
14415
  });
14416
14416
  return subscriber3;
14417
14417
  };
14418
- Observable3.prototype._trySubscribe = function(sink) {
14418
+ Observable4.prototype._trySubscribe = function(sink) {
14419
14419
  try {
14420
14420
  return this._subscribe(sink);
14421
14421
  } catch (err2) {
14422
14422
  sink.error(err2);
14423
14423
  }
14424
14424
  };
14425
- Observable3.prototype.forEach = function(next4, promiseCtor) {
14425
+ Observable4.prototype.forEach = function(next4, promiseCtor) {
14426
14426
  var _this = this;
14427
14427
  promiseCtor = getPromiseCtor(promiseCtor);
14428
14428
  return new promiseCtor(function(resolve, reject) {
@@ -14441,21 +14441,21 @@ var Observable = (function() {
14441
14441
  _this.subscribe(subscriber3);
14442
14442
  });
14443
14443
  };
14444
- Observable3.prototype._subscribe = function(subscriber3) {
14444
+ Observable4.prototype._subscribe = function(subscriber3) {
14445
14445
  var _a;
14446
14446
  return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber3);
14447
14447
  };
14448
- Observable3.prototype[observable] = function() {
14448
+ Observable4.prototype[observable] = function() {
14449
14449
  return this;
14450
14450
  };
14451
- Observable3.prototype.pipe = function() {
14451
+ Observable4.prototype.pipe = function() {
14452
14452
  var operations = [];
14453
14453
  for (var _i = 0; _i < arguments.length; _i++) {
14454
14454
  operations[_i] = arguments[_i];
14455
14455
  }
14456
14456
  return pipeFromArray(operations)(this);
14457
14457
  };
14458
- Observable3.prototype.toPromise = function(promiseCtor) {
14458
+ Observable4.prototype.toPromise = function(promiseCtor) {
14459
14459
  var _this = this;
14460
14460
  promiseCtor = getPromiseCtor(promiseCtor);
14461
14461
  return new promiseCtor(function(resolve, reject) {
@@ -14469,10 +14469,10 @@ var Observable = (function() {
14469
14469
  });
14470
14470
  });
14471
14471
  };
14472
- Observable3.create = function(subscribe) {
14473
- return new Observable3(subscribe);
14472
+ Observable4.create = function(subscribe) {
14473
+ return new Observable4(subscribe);
14474
14474
  };
14475
- return Observable3;
14475
+ return Observable4;
14476
14476
  })();
14477
14477
  function getPromiseCtor(promiseCtor) {
14478
14478
  var _a;
@@ -14750,6 +14750,197 @@ var BehaviorSubject = (function(_super) {
14750
14750
  return BehaviorSubject3;
14751
14751
  })(Subject);
14752
14752
 
14753
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js
14754
+ var dateTimestampProvider = {
14755
+ now: function() {
14756
+ return (dateTimestampProvider.delegate || Date).now();
14757
+ },
14758
+ delegate: void 0
14759
+ };
14760
+
14761
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/Action.js
14762
+ var Action = (function(_super) {
14763
+ __extends(Action5, _super);
14764
+ function Action5(scheduler, work) {
14765
+ return _super.call(this) || this;
14766
+ }
14767
+ Action5.prototype.schedule = function(state2, delay) {
14768
+ if (delay === void 0) {
14769
+ delay = 0;
14770
+ }
14771
+ return this;
14772
+ };
14773
+ return Action5;
14774
+ })(Subscription);
14775
+
14776
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js
14777
+ var intervalProvider = {
14778
+ setInterval: function(handler, timeout2) {
14779
+ var args = [];
14780
+ for (var _i = 2; _i < arguments.length; _i++) {
14781
+ args[_i - 2] = arguments[_i];
14782
+ }
14783
+ var delegate = intervalProvider.delegate;
14784
+ if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {
14785
+ return delegate.setInterval.apply(delegate, __spreadArray([handler, timeout2], __read(args)));
14786
+ }
14787
+ return setInterval.apply(void 0, __spreadArray([handler, timeout2], __read(args)));
14788
+ },
14789
+ clearInterval: function(handle) {
14790
+ var delegate = intervalProvider.delegate;
14791
+ return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);
14792
+ },
14793
+ delegate: void 0
14794
+ };
14795
+
14796
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js
14797
+ var AsyncAction = (function(_super) {
14798
+ __extends(AsyncAction2, _super);
14799
+ function AsyncAction2(scheduler, work) {
14800
+ var _this = _super.call(this, scheduler, work) || this;
14801
+ _this.scheduler = scheduler;
14802
+ _this.work = work;
14803
+ _this.pending = false;
14804
+ return _this;
14805
+ }
14806
+ AsyncAction2.prototype.schedule = function(state2, delay) {
14807
+ var _a;
14808
+ if (delay === void 0) {
14809
+ delay = 0;
14810
+ }
14811
+ if (this.closed) {
14812
+ return this;
14813
+ }
14814
+ this.state = state2;
14815
+ var id4 = this.id;
14816
+ var scheduler = this.scheduler;
14817
+ if (id4 != null) {
14818
+ this.id = this.recycleAsyncId(scheduler, id4, delay);
14819
+ }
14820
+ this.pending = true;
14821
+ this.delay = delay;
14822
+ this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay);
14823
+ return this;
14824
+ };
14825
+ AsyncAction2.prototype.requestAsyncId = function(scheduler, _id2, delay) {
14826
+ if (delay === void 0) {
14827
+ delay = 0;
14828
+ }
14829
+ return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);
14830
+ };
14831
+ AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id4, delay) {
14832
+ if (delay === void 0) {
14833
+ delay = 0;
14834
+ }
14835
+ if (delay != null && this.delay === delay && this.pending === false) {
14836
+ return id4;
14837
+ }
14838
+ if (id4 != null) {
14839
+ intervalProvider.clearInterval(id4);
14840
+ }
14841
+ return void 0;
14842
+ };
14843
+ AsyncAction2.prototype.execute = function(state2, delay) {
14844
+ if (this.closed) {
14845
+ return new Error("executing a cancelled action");
14846
+ }
14847
+ this.pending = false;
14848
+ var error4 = this._execute(state2, delay);
14849
+ if (error4) {
14850
+ return error4;
14851
+ } else if (this.pending === false && this.id != null) {
14852
+ this.id = this.recycleAsyncId(this.scheduler, this.id, null);
14853
+ }
14854
+ };
14855
+ AsyncAction2.prototype._execute = function(state2, _delay) {
14856
+ var errored = false;
14857
+ var errorValue;
14858
+ try {
14859
+ this.work(state2);
14860
+ } catch (e) {
14861
+ errored = true;
14862
+ errorValue = e ? e : new Error("Scheduled action threw falsy error");
14863
+ }
14864
+ if (errored) {
14865
+ this.unsubscribe();
14866
+ return errorValue;
14867
+ }
14868
+ };
14869
+ AsyncAction2.prototype.unsubscribe = function() {
14870
+ if (!this.closed) {
14871
+ var _a = this, id4 = _a.id, scheduler = _a.scheduler;
14872
+ var actions = scheduler.actions;
14873
+ this.work = this.state = this.scheduler = null;
14874
+ this.pending = false;
14875
+ arrRemove(actions, this);
14876
+ if (id4 != null) {
14877
+ this.id = this.recycleAsyncId(scheduler, id4, null);
14878
+ }
14879
+ this.delay = null;
14880
+ _super.prototype.unsubscribe.call(this);
14881
+ }
14882
+ };
14883
+ return AsyncAction2;
14884
+ })(Action);
14885
+
14886
+ // ../node_modules/rxjs/dist/esm5/internal/Scheduler.js
14887
+ var Scheduler = (function() {
14888
+ function Scheduler2(schedulerActionCtor, now) {
14889
+ if (now === void 0) {
14890
+ now = Scheduler2.now;
14891
+ }
14892
+ this.schedulerActionCtor = schedulerActionCtor;
14893
+ this.now = now;
14894
+ }
14895
+ Scheduler2.prototype.schedule = function(work, delay, state2) {
14896
+ if (delay === void 0) {
14897
+ delay = 0;
14898
+ }
14899
+ return new this.schedulerActionCtor(this, work).schedule(state2, delay);
14900
+ };
14901
+ Scheduler2.now = dateTimestampProvider.now;
14902
+ return Scheduler2;
14903
+ })();
14904
+
14905
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js
14906
+ var AsyncScheduler = (function(_super) {
14907
+ __extends(AsyncScheduler2, _super);
14908
+ function AsyncScheduler2(SchedulerAction, now) {
14909
+ if (now === void 0) {
14910
+ now = Scheduler.now;
14911
+ }
14912
+ var _this = _super.call(this, SchedulerAction, now) || this;
14913
+ _this.actions = [];
14914
+ _this._active = false;
14915
+ return _this;
14916
+ }
14917
+ AsyncScheduler2.prototype.flush = function(action3) {
14918
+ var actions = this.actions;
14919
+ if (this._active) {
14920
+ actions.push(action3);
14921
+ return;
14922
+ }
14923
+ var error4;
14924
+ this._active = true;
14925
+ do {
14926
+ if (error4 = action3.execute(action3.state, action3.delay)) {
14927
+ break;
14928
+ }
14929
+ } while (action3 = actions.shift());
14930
+ this._active = false;
14931
+ if (error4) {
14932
+ while (action3 = actions.shift()) {
14933
+ action3.unsubscribe();
14934
+ }
14935
+ throw error4;
14936
+ }
14937
+ };
14938
+ return AsyncScheduler2;
14939
+ })(Scheduler);
14940
+
14941
+ // ../node_modules/rxjs/dist/esm5/internal/scheduler/async.js
14942
+ var asyncScheduler = new AsyncScheduler(AsyncAction);
14943
+
14753
14944
  // ../node_modules/rxjs/dist/esm5/internal/observable/empty.js
14754
14945
  var EMPTY = new Observable(function(subscriber3) {
14755
14946
  return subscriber3.complete();
@@ -15294,6 +15485,50 @@ function filter(predicate4, thisArg) {
15294
15485
  });
15295
15486
  }
15296
15487
 
15488
+ // ../node_modules/rxjs/dist/esm5/internal/operators/debounceTime.js
15489
+ function debounceTime(dueTime, scheduler) {
15490
+ if (scheduler === void 0) {
15491
+ scheduler = asyncScheduler;
15492
+ }
15493
+ return operate(function(source8, subscriber3) {
15494
+ var activeTask = null;
15495
+ var lastValue = null;
15496
+ var lastTime = null;
15497
+ var emit = function() {
15498
+ if (activeTask) {
15499
+ activeTask.unsubscribe();
15500
+ activeTask = null;
15501
+ var value7 = lastValue;
15502
+ lastValue = null;
15503
+ subscriber3.next(value7);
15504
+ }
15505
+ };
15506
+ function emitWhenIdle() {
15507
+ var targetTime = lastTime + dueTime;
15508
+ var now = scheduler.now();
15509
+ if (now < targetTime) {
15510
+ activeTask = this.schedule(void 0, targetTime - now);
15511
+ subscriber3.add(activeTask);
15512
+ return;
15513
+ }
15514
+ emit();
15515
+ }
15516
+ source8.subscribe(createOperatorSubscriber(subscriber3, function(value7) {
15517
+ lastValue = value7;
15518
+ lastTime = scheduler.now();
15519
+ if (!activeTask) {
15520
+ activeTask = scheduler.schedule(emitWhenIdle, dueTime);
15521
+ subscriber3.add(activeTask);
15522
+ }
15523
+ }, function() {
15524
+ emit();
15525
+ subscriber3.complete();
15526
+ }, void 0, function() {
15527
+ lastValue = activeTask = null;
15528
+ }));
15529
+ });
15530
+ }
15531
+
15297
15532
  // ../node_modules/rxjs/dist/esm5/internal/operators/distinctUntilChanged.js
15298
15533
  function distinctUntilChanged(comparator2, keySelector) {
15299
15534
  if (keySelector === void 0) {
@@ -16465,7 +16700,7 @@ function _defineProperty(e, r, t) {
16465
16700
  }) : e[r] = t, e;
16466
16701
  }
16467
16702
 
16468
- // ../node_modules/rdflib/esm/class-order.js
16703
+ // node_modules/rdflib/esm/class-order.js
16469
16704
  var ClassOrder = {
16470
16705
  "Literal": 1,
16471
16706
  "Collection": 3,
@@ -16476,7 +16711,7 @@ var ClassOrder = {
16476
16711
  };
16477
16712
  var class_order_default = ClassOrder;
16478
16713
 
16479
- // ../node_modules/rdflib/esm/node-internal.js
16714
+ // node_modules/rdflib/esm/node-internal.js
16480
16715
  var Node2 = class {
16481
16716
  constructor(value7) {
16482
16717
  _defineProperty(this, "termType", void 0);
@@ -16563,7 +16798,7 @@ var Node2 = class {
16563
16798
  _defineProperty(Node2, "fromValue", void 0);
16564
16799
  _defineProperty(Node2, "toJS", void 0);
16565
16800
 
16566
- // ../node_modules/rdflib/esm/types.js
16801
+ // node_modules/rdflib/esm/types.js
16567
16802
  var NamedNodeTermType = "NamedNode";
16568
16803
  var BlankNodeTermType = "BlankNode";
16569
16804
  var LiteralTermType = "Literal";
@@ -16586,7 +16821,7 @@ var TurtleContentType = "text/turtle";
16586
16821
  var TurtleLegacyContentType = "application/x-turtle";
16587
16822
  var XHTMLContentType = "application/xhtml+xml";
16588
16823
 
16589
- // ../node_modules/rdflib/esm/blank-node.js
16824
+ // node_modules/rdflib/esm/blank-node.js
16590
16825
  var BlankNode = class _BlankNode extends Node2 {
16591
16826
  static getId(id4) {
16592
16827
  if (id4) {
@@ -16655,7 +16890,7 @@ var BlankNode = class _BlankNode extends Node2 {
16655
16890
  _defineProperty(BlankNode, "nextId", 0);
16656
16891
  _defineProperty(BlankNode, "NTAnonymousNodePrefix", "_:");
16657
16892
 
16658
- // ../node_modules/rdflib/esm/utils/termValue.js
16893
+ // node_modules/rdflib/esm/utils/termValue.js
16659
16894
  function termValue(node3) {
16660
16895
  if (typeof node3 === "string") {
16661
16896
  return node3;
@@ -16663,7 +16898,7 @@ function termValue(node3) {
16663
16898
  return node3.value;
16664
16899
  }
16665
16900
 
16666
- // ../node_modules/rdflib/esm/utils/terms.js
16901
+ // node_modules/rdflib/esm/utils/terms.js
16667
16902
  function isStatement(obj) {
16668
16903
  return typeof obj === "object" && obj !== null && "subject" in obj;
16669
16904
  }
@@ -16704,7 +16939,7 @@ function isGraph(obj) {
16704
16939
  return isTerm(obj) && (obj.termType === NamedNodeTermType || obj.termType === VariableTermType || obj.termType === BlankNodeTermType || obj.termType === DefaultGraphTermType);
16705
16940
  }
16706
16941
 
16707
- // ../node_modules/rdflib/esm/named-node.js
16942
+ // node_modules/rdflib/esm/named-node.js
16708
16943
  var NamedNode = class _NamedNode extends Node2 {
16709
16944
  /**
16710
16945
  * Create a named (IRI) RDF Node
@@ -16794,7 +17029,7 @@ var NamedNode = class _NamedNode extends Node2 {
16794
17029
  }
16795
17030
  };
16796
17031
 
16797
- // ../node_modules/rdflib/esm/xsd-internal.js
17032
+ // node_modules/rdflib/esm/xsd-internal.js
16798
17033
  var xsd_internal_default = {
16799
17034
  boolean: new NamedNode("http://www.w3.org/2001/XMLSchema#boolean"),
16800
17035
  dateTime: new NamedNode("http://www.w3.org/2001/XMLSchema#dateTime"),
@@ -16805,7 +17040,7 @@ var xsd_internal_default = {
16805
17040
  string: new NamedNode("http://www.w3.org/2001/XMLSchema#string")
16806
17041
  };
16807
17042
 
16808
- // ../node_modules/rdflib/esm/literal.js
17043
+ // node_modules/rdflib/esm/literal.js
16809
17044
  var Literal = class _Literal extends Node2 {
16810
17045
  /**
16811
17046
  * Initializes a literal
@@ -16944,7 +17179,7 @@ var Literal = class _Literal extends Node2 {
16944
17179
  }
16945
17180
  };
16946
17181
 
16947
- // ../node_modules/rdflib/esm/collection.js
17182
+ // node_modules/rdflib/esm/collection.js
16948
17183
  function fromValue(value7) {
16949
17184
  if (typeof value7 === "undefined" || value7 === null) {
16950
17185
  return value7;
@@ -17029,11 +17264,11 @@ var Collection = class _Collection extends Node2 {
17029
17264
  };
17030
17265
  _defineProperty(Collection, "termType", CollectionTermType);
17031
17266
 
17032
- // ../node_modules/rdflib/esm/utils/default-graph-uri.js
17267
+ // node_modules/rdflib/esm/utils/default-graph-uri.js
17033
17268
  var defaultGraphURI = "chrome:theSession";
17034
17269
  var defaultGraphNode = new NamedNode(defaultGraphURI);
17035
17270
 
17036
- // ../node_modules/rdflib/esm/default-graph.js
17271
+ // node_modules/rdflib/esm/default-graph.js
17037
17272
  var DefaultGraph = class extends Node2 {
17038
17273
  constructor() {
17039
17274
  super("");
@@ -17052,7 +17287,7 @@ function isDefaultGraph(object8) {
17052
17287
  return !!object8 && object8.termType === DefaultGraphTermType;
17053
17288
  }
17054
17289
 
17055
- // ../node_modules/rdflib/esm/statement.js
17290
+ // node_modules/rdflib/esm/statement.js
17056
17291
  var defaultGraph = new DefaultGraph();
17057
17292
  var Statement = class _Statement {
17058
17293
  /**
@@ -17126,7 +17361,7 @@ var Statement = class _Statement {
17126
17361
  }
17127
17362
  };
17128
17363
 
17129
- // ../node_modules/rdflib/esm/uri.js
17364
+ // node_modules/rdflib/esm/uri.js
17130
17365
  var uri_exports = {};
17131
17366
  __export(uri_exports, {
17132
17367
  docpart: () => docpart,
@@ -17295,7 +17530,7 @@ function refTo(base2, uri6) {
17295
17530
  return s + uri6.slice(i);
17296
17531
  }
17297
17532
 
17298
- // ../node_modules/rdflib/esm/variable.js
17533
+ // node_modules/rdflib/esm/variable.js
17299
17534
  var Variable = class _Variable extends Node2 {
17300
17535
  /**
17301
17536
  * Initializes this variable
@@ -17335,7 +17570,7 @@ var Variable = class _Variable extends Node2 {
17335
17570
  }
17336
17571
  };
17337
17572
 
17338
- // ../node_modules/rdflib/esm/factories/factory-types.js
17573
+ // node_modules/rdflib/esm/factories/factory-types.js
17339
17574
  var Feature = /* @__PURE__ */ (function(Feature2) {
17340
17575
  Feature2["collections"] = "COLLECTIONS";
17341
17576
  Feature2["defaultGraphType"] = "DEFAULT_GRAPH_TYPE";
@@ -17347,7 +17582,7 @@ var Feature = /* @__PURE__ */ (function(Feature2) {
17347
17582
  return Feature2;
17348
17583
  })({});
17349
17584
 
17350
- // ../node_modules/rdflib/esm/factories/canonical-data-factory.js
17585
+ // node_modules/rdflib/esm/factories/canonical-data-factory.js
17351
17586
  var defaultGraph2 = new DefaultGraph();
17352
17587
  var CanonicalDataFactory = {
17353
17588
  supports: {
@@ -17503,7 +17738,7 @@ var CanonicalDataFactory = {
17503
17738
  };
17504
17739
  var canonical_data_factory_default = CanonicalDataFactory;
17505
17740
 
17506
- // ../node_modules/rdflib/esm/log.js
17741
+ // node_modules/rdflib/esm/log.js
17507
17742
  var log = {
17508
17743
  debug(x) {
17509
17744
  },
@@ -17520,7 +17755,7 @@ var log = {
17520
17755
  };
17521
17756
  var log_default = log;
17522
17757
 
17523
- // ../node_modules/rdflib/esm/namespace.js
17758
+ // node_modules/rdflib/esm/namespace.js
17524
17759
  function Namespace(nsuri, factory) {
17525
17760
  const dataFactory = factory || {
17526
17761
  namedNode: (value7) => new NamedNode(value7)
@@ -17530,11 +17765,11 @@ function Namespace(nsuri, factory) {
17530
17765
  };
17531
17766
  }
17532
17767
 
17533
- // ../node_modules/rdflib/esm/serializer.js
17768
+ // node_modules/rdflib/esm/serializer.js
17534
17769
  var ttl2jsonld = __toESM(require_ttl2jsonld());
17535
17770
  var import_solid_namespace = __toESM(require_solid_namespace());
17536
17771
 
17537
- // ../node_modules/rdflib/esm/utils-js.js
17772
+ // node_modules/rdflib/esm/utils-js.js
17538
17773
  var import_xmldom = __toESM(require_lib());
17539
17774
  function mediaTypeClass(mediaType2) {
17540
17775
  mediaType2 = mediaType2.split(";")[0].trim();
@@ -17733,7 +17968,7 @@ function stackString(e) {
17733
17968
  return str;
17734
17969
  }
17735
17970
 
17736
- // ../node_modules/rdflib/esm/xsd.js
17971
+ // node_modules/rdflib/esm/xsd.js
17737
17972
  function createXSD(localFactory = canonical_data_factory_default) {
17738
17973
  return {
17739
17974
  boolean: localFactory.namedNode("http://www.w3.org/2001/XMLSchema#boolean"),
@@ -17747,7 +17982,7 @@ function createXSD(localFactory = canonical_data_factory_default) {
17747
17982
  }
17748
17983
  var defaultXSD = createXSD(canonical_data_factory_default);
17749
17984
 
17750
- // ../node_modules/rdflib/esm/serializer.js
17985
+ // node_modules/rdflib/esm/serializer.js
17751
17986
  function createSerializer(store) {
17752
17987
  return new Serializer(store);
17753
17988
  }
@@ -18599,7 +18834,7 @@ function backslashUify(str) {
18599
18834
  return res;
18600
18835
  }
18601
18836
 
18602
- // ../node_modules/rdflib/esm/serialize.js
18837
+ // node_modules/rdflib/esm/serialize.js
18603
18838
  function serialize(target6, kb, base2, contentType4, callback, options) {
18604
18839
  base2 = base2 || target6?.value;
18605
18840
  const opts = options || {};
@@ -18661,7 +18896,7 @@ function serialize(target6, kb, base2, contentType4, callback, options) {
18661
18896
  }
18662
18897
  }
18663
18898
 
18664
- // ../node_modules/rdflib/esm/utils.js
18899
+ // node_modules/rdflib/esm/utils.js
18665
18900
  var appliedFactoryMethods = ["blankNode", "defaultGraph", "literal", "namedNode", "quad", "variable", "supports"];
18666
18901
  var rdf = {
18667
18902
  first: "http://www.w3.org/1999/02/22-rdf-syntax-ns#first",
@@ -18694,7 +18929,7 @@ function ArrayIndexOf(arr, item4, i = 0) {
18694
18929
  return -1;
18695
18930
  }
18696
18931
 
18697
- // ../node_modules/rdflib/esm/formula.js
18932
+ // node_modules/rdflib/esm/formula.js
18698
18933
  var Formula = class _Formula extends Node2 {
18699
18934
  /**
18700
18935
  * Initializes this formula
@@ -19372,7 +19607,7 @@ var Formula = class _Formula extends Node2 {
19372
19607
  }
19373
19608
  };
19374
19609
 
19375
- // ../node_modules/rdflib/esm/node.js
19610
+ // node_modules/rdflib/esm/node.js
19376
19611
  Node2.fromValue = fromValue;
19377
19612
  var node_default = Node2;
19378
19613
  var ns = {
@@ -19395,7 +19630,7 @@ Node2.toJS = function(term3) {
19395
19630
  return term3.value;
19396
19631
  };
19397
19632
 
19398
- // ../node_modules/rdflib/esm/query.js
19633
+ // node_modules/rdflib/esm/query.js
19399
19634
  var Query = class {
19400
19635
  constructor(name9, id4) {
19401
19636
  this.pat = new IndexedFormula();
@@ -19780,7 +20015,7 @@ function indexedFormulaQuery(myQuery, callback, fetcher2, onDone) {
19780
20015
  }
19781
20016
  }
19782
20017
 
19783
- // ../node_modules/rdflib/esm/store.js
20018
+ // node_modules/rdflib/esm/store.js
19784
20019
  var owlNamespaceURI = "http://www.w3.org/2002/07/owl#";
19785
20020
  function handleFP(formula2, subj, pred, obj) {
19786
20021
  var o1 = formula2.any(subj, pred, void 0);
@@ -20673,7 +20908,7 @@ var IndexedFormula = class _IndexedFormula extends Formula {
20673
20908
  _defineProperty(IndexedFormula, "handleRDFType", void 0);
20674
20909
  IndexedFormula.handleRDFType = handleRDFType;
20675
20910
 
20676
- // ../node_modules/rdflib/esm/lists.js
20911
+ // node_modules/rdflib/esm/lists.js
20677
20912
  var RDF = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#");
20678
20913
  function substituteInDoc(store, x, y, doc) {
20679
20914
  for (const quad3 of store.statementsMatching(y, null, null, doc)) {
@@ -20735,7 +20970,7 @@ function convertFirstRestNil(store, doc) {
20735
20970
  });
20736
20971
  }
20737
20972
 
20738
- // ../node_modules/rdflib/esm/n3parser.js
20973
+ // node_modules/rdflib/esm/n3parser.js
20739
20974
  function hexify2(str) {
20740
20975
  return encodeURI(str);
20741
20976
  }
@@ -21219,8 +21454,7 @@ var SinkParser = class {
21219
21454
  while ("!^.".indexOf(str.slice(j, j + 1)) >= 0) {
21220
21455
  var ch = str.slice(j, j + 1);
21221
21456
  if (ch == ".") {
21222
- var ahead = str.slice(j + 1, j + 2);
21223
- if (!ahead || _notNameChars.indexOf(ahead) >= 0 && ":?<[{(".indexOf(ahead) < 0) {
21457
+ if (dotTerminatesName(str, j)) {
21224
21458
  break;
21225
21459
  }
21226
21460
  }
@@ -22034,7 +22268,7 @@ function BadSyntax(uri6, lines, str, i, why) {
22034
22268
  return e;
22035
22269
  }
22036
22270
 
22037
- // ../node_modules/rdflib/esm/factories/extended-term-factory.js
22271
+ // node_modules/rdflib/esm/factories/extended-term-factory.js
22038
22272
  var ExtendedTermFactory = {
22039
22273
  ...canonical_data_factory_default,
22040
22274
  supports: {
@@ -22073,7 +22307,7 @@ var ExtendedTermFactory = {
22073
22307
  };
22074
22308
  var extended_term_factory_default = ExtendedTermFactory;
22075
22309
 
22076
- // ../node_modules/rdflib/esm/jsonldparser.js
22310
+ // node_modules/rdflib/esm/jsonldparser.js
22077
22311
  function jsonldObjectToTerm(kb, obj) {
22078
22312
  if (typeof obj === "string") {
22079
22313
  return kb.rdfFactory.literal(obj);
@@ -23782,7 +24016,7 @@ function initDataFactory(parser, factory) {
23782
24016
  }
23783
24017
  initDataFactory(N3Parser.prototype, N3DataFactory_default);
23784
24018
 
23785
- // ../node_modules/rdflib/esm/rdfaparser.js
24019
+ // node_modules/rdflib/esm/rdfaparser.js
23786
24020
  if (typeof Node3 === "undefined") {
23787
24021
  Node3 = {
23788
24022
  ELEMENT_NODE: 1,
@@ -24671,7 +24905,7 @@ RDFaProcessor.dateTimeTypes = [{
24671
24905
  }];
24672
24906
  var parseRDFaDOM = RDFaProcessor.parseRDFaDOM;
24673
24907
 
24674
- // ../node_modules/rdflib/esm/rdfxmlparser.js
24908
+ // node_modules/rdflib/esm/rdfxmlparser.js
24675
24909
  var RDFParser = class _RDFParser {
24676
24910
  /*
24677
24911
  * @constructor
@@ -25071,7 +25305,7 @@ _defineProperty(RDFParser, "nodeType", {
25071
25305
  "NOTATION": 12
25072
25306
  });
25073
25307
 
25074
- // ../node_modules/rdflib/esm/patch-parser.js
25308
+ // node_modules/rdflib/esm/patch-parser.js
25075
25309
  function sparqlUpdateParser(str, kb, base2) {
25076
25310
  var i, j, k;
25077
25311
  var keywords3 = ["INSERT", "DELETE", "WHERE"];
@@ -25136,7 +25370,7 @@ function sparqlUpdateParser(str, kb, base2) {
25136
25370
  }
25137
25371
  }
25138
25372
 
25139
- // ../node_modules/rdflib/esm/parse.js
25373
+ // node_modules/rdflib/esm/parse.js
25140
25374
  function parse2(str, kb, base2, contentType4 = "text/turtle", callback) {
25141
25375
  contentType4 = contentType4 || TurtleContentType;
25142
25376
  contentType4 = contentType4.split(";")[0];
@@ -25231,7 +25465,7 @@ function parse2(str, kb, base2, contentType4 = "text/turtle", callback) {
25231
25465
  }
25232
25466
  }
25233
25467
 
25234
- // ../node_modules/rdflib/esm/fetcher.js
25468
+ // node_modules/rdflib/esm/fetcher.js
25235
25469
  var import_cross_fetch = __toESM(require_browser_ponyfill());
25236
25470
  var Parsable = {
25237
25471
  "text/n3": true,
@@ -25288,7 +25522,7 @@ var RDFXMLHandler = class extends Handler {
25288
25522
  this.dom = parseXML(responseText);
25289
25523
  }
25290
25524
  let root = this.dom.documentElement;
25291
- if (root.nodeName === "parsererror") {
25525
+ if (root && root.nodeName === "parsererror") {
25292
25526
  return fetcher2.failFetch(options, "Badly formed XML in " + options.resource.value, "parse_error");
25293
25527
  }
25294
25528
  let parser = new RDFParser(kb);
@@ -25558,10 +25792,17 @@ var Fetcher = class _Fetcher {
25558
25792
  this.store = store || new IndexedFormula();
25559
25793
  this.ns = getNS(this.store.rdfFactory);
25560
25794
  this.timeout = options.timeout || 3e4;
25561
- this._fetch = options.fetch || typeof global !== "undefined" && (global.solidFetcher || global.solidFetch) || typeof window !== "undefined" && (window.solidFetcher || window.solidFetch) || import_cross_fetch.default;
25562
- if (!this._fetch) {
25795
+ let fetchFunc = options.fetch || typeof global !== "undefined" && (global.solidFetcher || global.solidFetch) || typeof window !== "undefined" && (window.solidFetcher || window.solidFetch) || import_cross_fetch.default;
25796
+ if (!fetchFunc) {
25563
25797
  throw new Error("No _fetch function available for Fetcher");
25564
25798
  }
25799
+ if (typeof window !== "undefined" && fetchFunc === window.fetch) {
25800
+ this._fetch = fetchFunc.bind(window);
25801
+ } else if (typeof global !== "undefined" && fetchFunc === global.fetch) {
25802
+ this._fetch = fetchFunc.bind(global);
25803
+ } else {
25804
+ this._fetch = fetchFunc;
25805
+ }
25565
25806
  this.appNode = this.store.sym("chrome://TheCurrentSession");
25566
25807
  this.store.fetcher = this;
25567
25808
  this.requested = {};
@@ -26589,7 +26830,7 @@ _defineProperty(Fetcher, "crossSiteProxyTemplate", void 0);
26589
26830
  Fetcher.HANDLERS = defaultHandlers;
26590
26831
  Fetcher.CONTENT_TYPE_BY_EXT = CONTENT_TYPE_BY_EXT;
26591
26832
 
26592
- // ../node_modules/rdflib/esm/update-manager.js
26833
+ // node_modules/rdflib/esm/update-manager.js
26593
26834
  var UpdateManager = class {
26594
26835
  /**
26595
26836
  * @param store - The quadstore to store data and metadata. Created if not passed.
@@ -27556,7 +27797,7 @@ _:patch
27556
27797
  }
27557
27798
  };
27558
27799
 
27559
- // ../node_modules/rdflib/esm/factories/rdflib-data-factory.js
27800
+ // node_modules/rdflib/esm/factories/rdflib-data-factory.js
27560
27801
  var RDFlibDataFactory = {
27561
27802
  ...extended_term_factory_default,
27562
27803
  /**
@@ -27597,7 +27838,7 @@ var RDFlibDataFactory = {
27597
27838
  };
27598
27839
  var rdflib_data_factory_default = RDFlibDataFactory;
27599
27840
 
27600
- // ../node_modules/rdflib/esm/index.js
27841
+ // node_modules/rdflib/esm/index.js
27601
27842
  var boundDataFactory = {};
27602
27843
  for (const name9 in rdflib_data_factory_default) {
27603
27844
  if (typeof rdflib_data_factory_default[name9] === "function") boundDataFactory[name9] = rdflib_data_factory_default[name9].bind(rdflib_data_factory_default);
@@ -27841,8 +28082,8 @@ var Thing = class {
27841
28082
  * Retrieves a list of RDF types for this thing.
27842
28083
  */
27843
28084
  types() {
27844
- const uriMap = this.store.findTypeURIs(namedNode(this.uri));
27845
- return Object.keys(uriMap).map((uri6) => ({
28085
+ const uris = this.store.findTypes(this.uri);
28086
+ return uris.map((uri6) => ({
27846
28087
  uri: uri6,
27847
28088
  label: labelForType(uri6)
27848
28089
  }));
@@ -27888,6 +28129,11 @@ var LdpContainer = class extends Thing {
27888
28129
  this.store = store;
27889
28130
  this.editable = editable;
27890
28131
  }
28132
+ /**
28133
+ * Resources that the LDP Container contains
28134
+ *
28135
+ * @returns Array of objects with uri and name
28136
+ */
27891
28137
  contains() {
27892
28138
  const contains3 = this.store.statementsMatching(
27893
28139
  namedNode(this.uri),
@@ -27900,6 +28146,21 @@ var LdpContainer = class extends Thing {
27900
28146
  name: labelFromUri(content5.object.value)
27901
28147
  }));
27902
28148
  }
28149
+ /**
28150
+ * Observe changes to the resources that the LDP Container contains
28151
+ *
28152
+ * @returns RxJS Observable that pushes a new contains() array when it changes
28153
+ */
28154
+ observeContains() {
28155
+ return merge(this.store.additions$, this.store.removals$).pipe(
28156
+ filter(
28157
+ (quad3) => quad3.graph.value == this.uri && quad3.predicate.value == "http://www.w3.org/ns/ldp#contains"
28158
+ ),
28159
+ debounceTime(250),
28160
+ map(() => this.contains()),
28161
+ startWith(this.contains())
28162
+ );
28163
+ }
27903
28164
  };
27904
28165
 
27905
28166
  // src/files/createFileLinkOperation.ts
@@ -27999,77 +28260,6 @@ var PictureGateway = class {
27999
28260
  }
28000
28261
  };
28001
28262
 
28002
- // node_modules/@solid-data-modules/rdflib-utils/dist/web-operations/executeUpdate.js
28003
- async function executeUpdate(fetcher2, updater, operation3) {
28004
- await updater.updateMany(operation3.deletions, operation3.insertions);
28005
- operation3.filesToCreate.map((file2) => {
28006
- createEmptyTurtleFile(fetcher2, file2.url);
28007
- });
28008
- }
28009
- function createEmptyTurtleFile(fetcher2, url7) {
28010
- return fetcher2.webOperation("PUT", url7, {
28011
- contentType: "text/turtle"
28012
- });
28013
- }
28014
-
28015
- // node_modules/@solid-data-modules/rdflib-utils/dist/namespaces/index.js
28016
- var rdf3 = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#");
28017
- var solid = Namespace("http://www.w3.org/ns/solid/terms#");
28018
- var pim2 = Namespace("http://www.w3.org/ns/pim/space#");
28019
- var ldp = Namespace("http://www.w3.org/ns/ldp#");
28020
-
28021
- // node_modules/@solid-data-modules/rdflib-utils/dist/queries/PreferencesQuery.js
28022
- var PreferencesQuery = class {
28023
- constructor(store, webIdNode, preferencesDoc) {
28024
- this.store = store;
28025
- this.webIdNode = webIdNode;
28026
- this.preferencesDoc = preferencesDoc;
28027
- }
28028
- /**
28029
- * Look up the private type index. Returns null if none is found or if the predicated does not link to a proper named node
28030
- */
28031
- queryPrivateTypeIndex() {
28032
- const node3 = this.store.any(this.webIdNode, solid("privateTypeIndex"), null, this.preferencesDoc);
28033
- if (isNamedNode(node3)) {
28034
- return node3;
28035
- }
28036
- return null;
28037
- }
28038
- };
28039
-
28040
- // node_modules/@solid-data-modules/rdflib-utils/dist/queries/ProfileQuery.js
28041
- var ProfileQuery = class {
28042
- constructor(webIdNode, store) {
28043
- this.webIdNode = webIdNode;
28044
- this.store = store;
28045
- }
28046
- /**
28047
- * Look up the public type index. Returns null if none is found or if the predicated does not link to a proper named node
28048
- */
28049
- queryPublicTypeIndex() {
28050
- const predicate4 = solid("publicTypeIndex");
28051
- return this.queryNamedNode(predicate4);
28052
- }
28053
- /**
28054
- * Look up the preferences file. Returns null if none is found or if the predicated does not link to a proper named node
28055
- */
28056
- queryPreferencesFile() {
28057
- const predicate4 = pim2("preferencesFile");
28058
- return this.queryNamedNode(predicate4);
28059
- }
28060
- queryNamedNode(predicate4) {
28061
- const node3 = this.store.any(this.webIdNode, predicate4, null, this.webIdNode.doc());
28062
- if (isNamedNode(node3)) {
28063
- return node3;
28064
- }
28065
- return null;
28066
- }
28067
- };
28068
-
28069
- // node_modules/@solid-data-modules/rdflib-utils/dist/identifier/generate-id.js
28070
- var import_short_unique_id = __toESM(require_short_unique_id(), 1);
28071
- var uid = new import_short_unique_id.default({ length: 10 });
28072
-
28073
28263
  // src/profile/WebIdProfile.ts
28074
28264
  var WebIdProfile = class extends Thing {
28075
28265
  constructor(webId, store, editable = false) {
@@ -28077,7 +28267,7 @@ var WebIdProfile = class extends Thing {
28077
28267
  this.webId = webId;
28078
28268
  this.store = store;
28079
28269
  this.editable = editable;
28080
- this.profileQuery = new ProfileQuery(namedNode(this.webId), this.store);
28270
+ this.profileQuery = this.store.profileQuery(this.webId);
28081
28271
  }
28082
28272
  /**
28083
28273
  * Returns the URI of the preferences document
@@ -28099,11 +28289,7 @@ var WebIdProfile = class extends Thing {
28099
28289
  getPrivateTypeIndex() {
28100
28290
  const preferences = this.profileQuery.queryPreferencesFile();
28101
28291
  if (!preferences) return void 0;
28102
- const query4 = new PreferencesQuery(
28103
- this.store,
28104
- namedNode(this.webId),
28105
- preferences
28106
- );
28292
+ const query4 = this.store.preferencesQuery(this.webId, preferences);
28107
28293
  return query4.queryPrivateTypeIndex()?.value;
28108
28294
  }
28109
28295
  /**
@@ -28271,6 +28457,77 @@ var LabelIndex = class extends RdfDocument {
28271
28457
  }
28272
28458
  };
28273
28459
 
28460
+ // node_modules/@solid-data-modules/rdflib-utils/dist/web-operations/executeUpdate.js
28461
+ async function executeUpdate(fetcher2, updater, operation3) {
28462
+ await updater.updateMany(operation3.deletions, operation3.insertions);
28463
+ operation3.filesToCreate.map((file2) => {
28464
+ createEmptyTurtleFile(fetcher2, file2.url);
28465
+ });
28466
+ }
28467
+ function createEmptyTurtleFile(fetcher2, url7) {
28468
+ return fetcher2.webOperation("PUT", url7, {
28469
+ contentType: "text/turtle"
28470
+ });
28471
+ }
28472
+
28473
+ // node_modules/@solid-data-modules/rdflib-utils/dist/namespaces/index.js
28474
+ var rdf3 = Namespace("http://www.w3.org/1999/02/22-rdf-syntax-ns#");
28475
+ var solid = Namespace("http://www.w3.org/ns/solid/terms#");
28476
+ var pim2 = Namespace("http://www.w3.org/ns/pim/space#");
28477
+ var ldp = Namespace("http://www.w3.org/ns/ldp#");
28478
+
28479
+ // node_modules/@solid-data-modules/rdflib-utils/dist/queries/PreferencesQuery.js
28480
+ var PreferencesQuery = class {
28481
+ constructor(store, webIdNode, preferencesDoc) {
28482
+ this.store = store;
28483
+ this.webIdNode = webIdNode;
28484
+ this.preferencesDoc = preferencesDoc;
28485
+ }
28486
+ /**
28487
+ * Look up the private type index. Returns null if none is found or if the predicated does not link to a proper named node
28488
+ */
28489
+ queryPrivateTypeIndex() {
28490
+ const node3 = this.store.any(this.webIdNode, solid("privateTypeIndex"), null, this.preferencesDoc);
28491
+ if (isNamedNode(node3)) {
28492
+ return node3;
28493
+ }
28494
+ return null;
28495
+ }
28496
+ };
28497
+
28498
+ // node_modules/@solid-data-modules/rdflib-utils/dist/queries/ProfileQuery.js
28499
+ var ProfileQuery = class {
28500
+ constructor(webIdNode, store) {
28501
+ this.webIdNode = webIdNode;
28502
+ this.store = store;
28503
+ }
28504
+ /**
28505
+ * Look up the public type index. Returns null if none is found or if the predicated does not link to a proper named node
28506
+ */
28507
+ queryPublicTypeIndex() {
28508
+ const predicate4 = solid("publicTypeIndex");
28509
+ return this.queryNamedNode(predicate4);
28510
+ }
28511
+ /**
28512
+ * Look up the preferences file. Returns null if none is found or if the predicated does not link to a proper named node
28513
+ */
28514
+ queryPreferencesFile() {
28515
+ const predicate4 = pim2("preferencesFile");
28516
+ return this.queryNamedNode(predicate4);
28517
+ }
28518
+ queryNamedNode(predicate4) {
28519
+ const node3 = this.store.any(this.webIdNode, predicate4, null, this.webIdNode.doc());
28520
+ if (isNamedNode(node3)) {
28521
+ return node3;
28522
+ }
28523
+ return null;
28524
+ }
28525
+ };
28526
+
28527
+ // node_modules/@solid-data-modules/rdflib-utils/dist/identifier/generate-id.js
28528
+ var import_short_unique_id = __toESM(require_short_unique_id(), 1);
28529
+ var uid = new import_short_unique_id.default({ length: 10 });
28530
+
28274
28531
  // src/search/createDefaultLabelIndex.ts
28275
28532
  function createDefaultLabelIndex(profile2) {
28276
28533
  const webId = namedNode(profile2.webId);
@@ -28471,7 +28728,7 @@ var Store = class {
28471
28728
  */
28472
28729
  get(uri6) {
28473
28730
  const editable = !!this.updater.editable(uri6);
28474
- return new Thing(uri6, this.internalStore, editable);
28731
+ return new Thing(uri6, this, editable);
28475
28732
  }
28476
28733
  /**
28477
28734
  * Adds a new value to the property of the given thing
@@ -28554,6 +28811,139 @@ var Store = class {
28554
28811
  distinctUntilChanged((prev2, curr) => prev2.length == curr.length)
28555
28812
  );
28556
28813
  }
28814
+ /**
28815
+ * Finds types of the given resource
28816
+ *
28817
+ * @param {string|NamedNode|BlankNode} uri String or RDF/JS object
28818
+ * @returns {string[]} An array of URIs of types
28819
+ */
28820
+ findTypes(uri6) {
28821
+ if (typeof uri6 === "string") uri6 = namedNode(uri6);
28822
+ return Object.keys(this.internalStore.findTypeURIs(uri6));
28823
+ }
28824
+ /**
28825
+ * Determines whether the store includes a certain quad pattern, returning true or false as appropriate.
28826
+ *
28827
+ * @param {Quad_Subject|null|undefined} subject
28828
+ * @param {Quad_Predicate|null|undefined} predicate
28829
+ * @param {Quad_Object|null|undefined} object
28830
+ * @param {Quad_Graph|null|undefined} graph
28831
+ * @returns {boolean} Whether the store includes the quad pattern
28832
+ */
28833
+ holds(subject8, predicate4, object8, graph3) {
28834
+ return this.internalStore.holds(subject8, predicate4, object8, graph3);
28835
+ }
28836
+ /**
28837
+ * Statements matching the provided quad pattern
28838
+ *
28839
+ * @param {Quad_Subject|null|undefined} subject
28840
+ * @param {Quad_Predicate|null|undefined} predicate
28841
+ * @param {Quad_Object|null|undefined} object
28842
+ * @param {Quad_Graph|null|undefined} graph
28843
+ * @returns {Quad[]} Array of statements
28844
+ */
28845
+ statementsMatching(subject8, predicate4, object8, graph3) {
28846
+ return this.internalStore.statementsMatching(
28847
+ subject8,
28848
+ predicate4,
28849
+ object8,
28850
+ graph3
28851
+ );
28852
+ }
28853
+ /**
28854
+ * RDF/JS terms matching the first wildcard in the provided quad pattern
28855
+ *
28856
+ * @param {Quad_Subject|null|undefined} subject
28857
+ * @param {Quad_Predicate|null|undefined} predicate
28858
+ * @param {Quad_Object|null|undefined} object
28859
+ * @param {Quad_Graph|null|undefined} graph
28860
+ * @returns {Term[]} Array of terms
28861
+ */
28862
+ each(subject8, predicate4, object8, graph3) {
28863
+ const statements = this.statementsMatching(
28864
+ subject8,
28865
+ predicate4,
28866
+ object8,
28867
+ graph3
28868
+ );
28869
+ if (!subject8) {
28870
+ return statements.map((statement2) => statement2.subject);
28871
+ } else if (!predicate4) {
28872
+ return statements.map((statement2) => statement2.predicate);
28873
+ } else if (!object8) {
28874
+ return statements.map((statement2) => statement2.object);
28875
+ } else if (!graph3) {
28876
+ return statements.map((statement2) => statement2.graph);
28877
+ }
28878
+ throw new Error("No wildcard specified");
28879
+ }
28880
+ /**
28881
+ * Any one RDF/JS term matching the first wildcard in the provided quad pattern
28882
+ *
28883
+ * @param {Quad_Subject|null|undefined} subject
28884
+ * @param {Quad_Predicate|null|undefined} predicate
28885
+ * @param {Quad_Object|null|undefined} object
28886
+ * @param {Quad_Graph|null|undefined} graph
28887
+ * @returns {Term | null} RDF/JS term
28888
+ */
28889
+ any(subject8, predicate4, object8, graph3) {
28890
+ const justOne = true;
28891
+ const statements = this.internalStore.statementsMatching(
28892
+ subject8,
28893
+ predicate4,
28894
+ object8,
28895
+ graph3,
28896
+ justOne
28897
+ );
28898
+ if (statements.length == 0) return null;
28899
+ if (!subject8) {
28900
+ return statements[0].subject;
28901
+ } else if (!predicate4) {
28902
+ return statements[0].predicate;
28903
+ } else if (!object8) {
28904
+ return statements[0].object;
28905
+ } else if (!graph3) {
28906
+ return statements[0].graph;
28907
+ }
28908
+ throw new Error("No wildcard specified");
28909
+ }
28910
+ /**
28911
+ * Value of any one RDF/JS term matching the first wildcard in the provided quad pattern
28912
+ *
28913
+ * @param {Quad_Subject|null|undefined} subject
28914
+ * @param {Quad_Predicate|null|undefined} predicate
28915
+ * @param {Quad_Object|null|undefined} object
28916
+ * @param {Quad_Graph|null|undefined} graph
28917
+ * @returns {string | undefined} value of RDF/JS term
28918
+ */
28919
+ anyValue(subject8, predicate4, object8, graph3) {
28920
+ return this.any(subject8, predicate4, object8, graph3)?.value;
28921
+ }
28922
+ /**
28923
+ * Create a query to fetch information from a user's preferences file
28924
+ *
28925
+ * @param webId
28926
+ * @param preferencesDoc
28927
+ * @returns {PreferencesQuery} PreferencesQuery instance. See [@solid-data-modules/rdflib-utils
28928
+ ](https://solid-contrib.github.io/data-modules/rdflib-utils/classes/index.PreferencesQuery.html)
28929
+ */
28930
+ preferencesQuery(webId, preferencesDoc) {
28931
+ if (typeof webId === "string") webId = namedNode(webId);
28932
+ if (typeof preferencesDoc === "string")
28933
+ preferencesDoc = namedNode(preferencesDoc);
28934
+ return new PreferencesQuery(this.internalStore, webId, preferencesDoc);
28935
+ }
28936
+ /**
28937
+ * Create a query to fetch information from a user's profile document
28938
+ *
28939
+ * @param webId
28940
+ * @returns {ProfileQuery} ProfileQuery instance. See [@solid-data-modules/rdflib-utils
28941
+ ](https://solid-contrib.github.io/data-modules/rdflib-utils/classes/index.ProfileQuery.html)
28942
+ */
28943
+ profileQuery(webId) {
28944
+ if (typeof webId === "string") webId = namedNode(webId);
28945
+ return new ProfileQuery(webId, this.internalStore);
28946
+ }
28557
28947
  };
28558
28948
 
28559
28949
  // ../node_modules/rdf-namespaces/dist/index.es.js
@@ -29799,7 +30189,7 @@ var entry = "http://hl7.org/fhir/entry";
29799
30189
  var _weeklyTemplate = "http://hl7.org/fhir/_weeklyTemplate";
29800
30190
  var what = "http://hl7.org/fhir/what";
29801
30191
  var whenPrepared = "http://hl7.org/fhir/whenPrepared";
29802
- var Action = "http://hl7.org/fhir/Action";
30192
+ var Action2 = "http://hl7.org/fhir/Action";
29803
30193
  var _observationRequirement = "http://hl7.org/fhir/_observationRequirement";
29804
30194
  var focal = "http://hl7.org/fhir/focal";
29805
30195
  var verification = "http://hl7.org/fhir/verification";
@@ -34034,7 +34424,7 @@ var fhirImport = /* @__PURE__ */ Object.freeze({
34034
34424
  _weeklyTemplate,
34035
34425
  what,
34036
34426
  whenPrepared,
34037
- Action,
34427
+ Action: Action2,
34038
34428
  _observationRequirement,
34039
34429
  focal,
34040
34430
  verification,
@@ -38493,7 +38883,7 @@ var langString = "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString";
38493
38883
  var PlainLiteral = "http://www.w3.org/1999/02/22-rdf-syntax-ns#PlainLiteral";
38494
38884
  var type4 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#type";
38495
38885
  var Property2 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
38496
- var Statement2 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement";
38886
+ var Statement3 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement";
38497
38887
  var subject5 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#subject";
38498
38888
  var predicate = "http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate";
38499
38889
  var object3 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#object";
@@ -38515,7 +38905,7 @@ var rdfImport = /* @__PURE__ */ Object.freeze({
38515
38905
  PlainLiteral,
38516
38906
  type: type4,
38517
38907
  Property: Property2,
38518
- Statement: Statement2,
38908
+ Statement: Statement3,
38519
38909
  subject: subject5,
38520
38910
  predicate,
38521
38911
  object: object3,
@@ -38603,7 +38993,7 @@ var AcceptAction = "http://schema.org/AcceptAction";
38603
38993
  var Accommodation = "http://schema.org/Accommodation";
38604
38994
  var AccountingService = "http://schema.org/AccountingService";
38605
38995
  var AchieveAction = "http://schema.org/AchieveAction";
38606
- var Action2 = "http://schema.org/Action";
38996
+ var Action3 = "http://schema.org/Action";
38607
38997
  var ActionAccessSpecification = "http://schema.org/ActionAccessSpecification";
38608
38998
  var ActionStatusType = "http://schema.org/ActionStatusType";
38609
38999
  var ActivateAction = "http://schema.org/ActivateAction";
@@ -39392,7 +39782,7 @@ var SportsTeam = "http://schema.org/SportsTeam";
39392
39782
  var SpreadsheetDigitalDocument = "http://schema.org/SpreadsheetDigitalDocument";
39393
39783
  var StadiumOrArena = "http://schema.org/StadiumOrArena";
39394
39784
  var State = "http://schema.org/State";
39395
- var Statement3 = "http://schema.org/Statement";
39785
+ var Statement4 = "http://schema.org/Statement";
39396
39786
  var StatisticalPopulation = "http://schema.org/StatisticalPopulation";
39397
39787
  var StatisticalVariable = "http://schema.org/StatisticalVariable";
39398
39788
  var StatusEnumeration = "http://schema.org/StatusEnumeration";
@@ -41042,7 +41432,7 @@ var schemaImport = /* @__PURE__ */ Object.freeze({
41042
41432
  Accommodation,
41043
41433
  AccountingService,
41044
41434
  AchieveAction,
41045
- Action: Action2,
41435
+ Action: Action3,
41046
41436
  ActionAccessSpecification,
41047
41437
  ActionStatusType,
41048
41438
  ActivateAction,
@@ -41831,7 +42221,7 @@ var schemaImport = /* @__PURE__ */ Object.freeze({
41831
42221
  SpreadsheetDigitalDocument,
41832
42222
  StadiumOrArena,
41833
42223
  State,
41834
- Statement: Statement3,
42224
+ Statement: Statement4,
41835
42225
  StatisticalPopulation,
41836
42226
  StatisticalVariable,
41837
42227
  StatusEnumeration,
@@ -43483,7 +43873,7 @@ var AcceptAction2 = "https://schema.org/AcceptAction";
43483
43873
  var Accommodation2 = "https://schema.org/Accommodation";
43484
43874
  var AccountingService2 = "https://schema.org/AccountingService";
43485
43875
  var AchieveAction2 = "https://schema.org/AchieveAction";
43486
- var Action3 = "https://schema.org/Action";
43876
+ var Action4 = "https://schema.org/Action";
43487
43877
  var ActionAccessSpecification2 = "https://schema.org/ActionAccessSpecification";
43488
43878
  var ActionStatusType2 = "https://schema.org/ActionStatusType";
43489
43879
  var ActivateAction2 = "https://schema.org/ActivateAction";
@@ -44272,7 +44662,7 @@ var SportsTeam2 = "https://schema.org/SportsTeam";
44272
44662
  var SpreadsheetDigitalDocument2 = "https://schema.org/SpreadsheetDigitalDocument";
44273
44663
  var StadiumOrArena2 = "https://schema.org/StadiumOrArena";
44274
44664
  var State2 = "https://schema.org/State";
44275
- var Statement4 = "https://schema.org/Statement";
44665
+ var Statement5 = "https://schema.org/Statement";
44276
44666
  var StatisticalPopulation2 = "https://schema.org/StatisticalPopulation";
44277
44667
  var StatisticalVariable2 = "https://schema.org/StatisticalVariable";
44278
44668
  var StatusEnumeration2 = "https://schema.org/StatusEnumeration";
@@ -45922,7 +46312,7 @@ var schema_httpsImport = /* @__PURE__ */ Object.freeze({
45922
46312
  Accommodation: Accommodation2,
45923
46313
  AccountingService: AccountingService2,
45924
46314
  AchieveAction: AchieveAction2,
45925
- Action: Action3,
46315
+ Action: Action4,
45926
46316
  ActionAccessSpecification: ActionAccessSpecification2,
45927
46317
  ActionStatusType: ActionStatusType2,
45928
46318
  ActivateAction: ActivateAction2,
@@ -46711,7 +47101,7 @@ var schema_httpsImport = /* @__PURE__ */ Object.freeze({
46711
47101
  SpreadsheetDigitalDocument: SpreadsheetDigitalDocument2,
46712
47102
  StadiumOrArena: StadiumOrArena2,
46713
47103
  State: State2,
46714
- Statement: Statement4,
47104
+ Statement: Statement5,
46715
47105
  StatisticalPopulation: StatisticalPopulation2,
46716
47106
  StatisticalVariable: StatisticalVariable2,
46717
47107
  StatusEnumeration: StatusEnumeration2,
@@ -49890,6 +50280,181 @@ async function loadModule(moduleName, store) {
49890
50280
  return store.loadModule(module3);
49891
50281
  }
49892
50282
 
50283
+ // ../node_modules/url-template/lib/url-template.js
50284
+ function encodeReserved(str) {
50285
+ return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part3) {
50286
+ if (!/%[0-9A-Fa-f]/.test(part3)) {
50287
+ part3 = encodeURI(part3).replace(/%5B/g, "[").replace(/%5D/g, "]");
50288
+ }
50289
+ return part3;
50290
+ }).join("");
50291
+ }
50292
+ function encodeUnreserved(str) {
50293
+ return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
50294
+ return "%" + c.charCodeAt(0).toString(16).toUpperCase();
50295
+ });
50296
+ }
50297
+ function encodeValue(operator2, value7, key3) {
50298
+ value7 = operator2 === "+" || operator2 === "#" ? encodeReserved(value7) : encodeUnreserved(value7);
50299
+ if (key3) {
50300
+ return encodeUnreserved(key3) + "=" + value7;
50301
+ } else {
50302
+ return value7;
50303
+ }
50304
+ }
50305
+ function isDefined(value7) {
50306
+ return value7 !== void 0 && value7 !== null;
50307
+ }
50308
+ function isKeyOperator(operator2) {
50309
+ return operator2 === ";" || operator2 === "&" || operator2 === "?";
50310
+ }
50311
+ function getValues(context4, operator2, key3, modifier2) {
50312
+ var value7 = context4[key3], result6 = [];
50313
+ if (isDefined(value7) && value7 !== "") {
50314
+ if (typeof value7 === "string" || typeof value7 === "number" || typeof value7 === "boolean") {
50315
+ value7 = value7.toString();
50316
+ if (modifier2 && modifier2 !== "*") {
50317
+ value7 = value7.substring(0, parseInt(modifier2, 10));
50318
+ }
50319
+ result6.push(encodeValue(operator2, value7, isKeyOperator(operator2) ? key3 : null));
50320
+ } else {
50321
+ if (modifier2 === "*") {
50322
+ if (Array.isArray(value7)) {
50323
+ value7.filter(isDefined).forEach(function(value8) {
50324
+ result6.push(encodeValue(operator2, value8, isKeyOperator(operator2) ? key3 : null));
50325
+ });
50326
+ } else {
50327
+ Object.keys(value7).forEach(function(k) {
50328
+ if (isDefined(value7[k])) {
50329
+ result6.push(encodeValue(operator2, value7[k], k));
50330
+ }
50331
+ });
50332
+ }
50333
+ } else {
50334
+ var tmp = [];
50335
+ if (Array.isArray(value7)) {
50336
+ value7.filter(isDefined).forEach(function(value8) {
50337
+ tmp.push(encodeValue(operator2, value8));
50338
+ });
50339
+ } else {
50340
+ Object.keys(value7).forEach(function(k) {
50341
+ if (isDefined(value7[k])) {
50342
+ tmp.push(encodeUnreserved(k));
50343
+ tmp.push(encodeValue(operator2, value7[k].toString()));
50344
+ }
50345
+ });
50346
+ }
50347
+ if (isKeyOperator(operator2)) {
50348
+ result6.push(encodeUnreserved(key3) + "=" + tmp.join(","));
50349
+ } else if (tmp.length !== 0) {
50350
+ result6.push(tmp.join(","));
50351
+ }
50352
+ }
50353
+ }
50354
+ } else {
50355
+ if (operator2 === ";") {
50356
+ if (isDefined(value7)) {
50357
+ result6.push(encodeUnreserved(key3));
50358
+ }
50359
+ } else if (value7 === "" && (operator2 === "&" || operator2 === "?")) {
50360
+ result6.push(encodeUnreserved(key3) + "=");
50361
+ } else if (value7 === "") {
50362
+ result6.push("");
50363
+ }
50364
+ }
50365
+ return result6;
50366
+ }
50367
+ function parseTemplate(template3) {
50368
+ var operators = ["+", "#", ".", "/", ";", "?", "&"];
50369
+ return {
50370
+ expand: function(context4) {
50371
+ return template3.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function(_, expression4, literal4) {
50372
+ if (expression4) {
50373
+ var operator2 = null, values2 = [];
50374
+ if (operators.indexOf(expression4.charAt(0)) !== -1) {
50375
+ operator2 = expression4.charAt(0);
50376
+ expression4 = expression4.substr(1);
50377
+ }
50378
+ expression4.split(/,/g).forEach(function(variable5) {
50379
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable5);
50380
+ values2.push.apply(values2, getValues(context4, operator2, tmp[1], tmp[2] || tmp[3]));
50381
+ });
50382
+ if (operator2 && operator2 !== "+") {
50383
+ var separator = ",";
50384
+ if (operator2 === "?") {
50385
+ separator = "&";
50386
+ } else if (operator2 !== "#") {
50387
+ separator = operator2;
50388
+ }
50389
+ return (values2.length !== 0 ? operator2 : "") + values2.join(separator);
50390
+ } else {
50391
+ return values2.join(",");
50392
+ }
50393
+ } else {
50394
+ return encodeReserved(literal4);
50395
+ }
50396
+ });
50397
+ }
50398
+ };
50399
+ }
50400
+
50401
+ // src/open-with/apps.ts
50402
+ var APPS = {
50403
+ DATA_BROWSER: {
50404
+ name: "Data Browser (SolidOS)",
50405
+ urlTemplate: parseTemplate(
50406
+ "https://solidos.github.io/mashlib/dist/browse.html{?uri}"
50407
+ )
50408
+ },
50409
+ PENNY: {
50410
+ name: "Penny",
50411
+ urlTemplate: parseTemplate(
50412
+ "https://penny.vincenttunru.com/explore/?url={uri}"
50413
+ )
50414
+ },
50415
+ SOLID_FILE_MANAGER: {
50416
+ name: "Solid File Manager",
50417
+ urlTemplate: parseTemplate(
50418
+ "https://otto-aa.github.io/solid-filemanager/?url={uri}"
50419
+ )
50420
+ },
50421
+ UMAI: {
50422
+ name: "Umai",
50423
+ urlTemplate: parseTemplate(
50424
+ "https://umai.noeldemartin.com/viewer?url={uri}"
50425
+ )
50426
+ },
50427
+ DOKIELI: {
50428
+ name: "dokieli",
50429
+ urlTemplate: parseTemplate("https://dokie.li/#open={uri}")
50430
+ },
50431
+ DOKIELI_GRAPH: {
50432
+ name: "dokieli Graph",
50433
+ urlTemplate: parseTemplate("https://dokie.li/#graph={uri}")
50434
+ },
50435
+ POD_OS_CONTACTS: {
50436
+ name: "PodOS Contacts",
50437
+ urlTemplate: parseTemplate(
50438
+ "https://contacts.pod-os.org/address-book{?uri}"
50439
+ )
50440
+ }
50441
+ };
50442
+
50443
+ // src/open-with/proposeAppsFor.ts
50444
+ var appRegistrations = {
50445
+ "http://www.w3.org/ns/ldp#Container": [APPS.SOLID_FILE_MANAGER],
50446
+ "http://schema.org/Recipe": [APPS.UMAI],
50447
+ "https://schema.org/Recipe": [APPS.UMAI],
50448
+ "http://www.w3.org/2007/ont/link#RDFDocument": [APPS.DOKIELI_GRAPH],
50449
+ "http://www.w3.org/ns/iana/media-types/text/html#Resource": [APPS.DOKIELI],
50450
+ "http://www.w3.org/2006/vcard/ns#AddressBook": [APPS.POD_OS_CONTACTS]
50451
+ };
50452
+ function proposeAppsFor(thing) {
50453
+ const apps = [APPS.DATA_BROWSER, APPS.PENNY];
50454
+ const appsForType = thing.types().flatMap((it) => appRegistrations[it.uri]).filter((it) => it !== void 0);
50455
+ return [...apps, ...appsForType];
50456
+ }
50457
+
49893
50458
  // src/authentication/index.ts
49894
50459
  var AnonymousSession = class {
49895
50460
  constructor() {
@@ -50100,6 +50665,14 @@ var PodOS = class {
50100
50665
  attachments() {
50101
50666
  return this.attachmentGateway;
50102
50667
  }
50668
+ /**
50669
+ * Propose matching apps to open a thing
50670
+ * @param thing - The thing to open
50671
+ * @returns An array of apps that can open the thing. The array is empty if no apps are found.
50672
+ */
50673
+ proposeAppsFor(thing) {
50674
+ return proposeAppsFor(thing);
50675
+ }
50103
50676
  };
50104
50677
  export {
50105
50678
  AnonymousSession,
@@ -50128,7 +50701,8 @@ export {
50128
50701
  httpProblem,
50129
50702
  labelFromUri,
50130
50703
  listKnownTerms,
50131
- networkProblem
50704
+ networkProblem,
50705
+ proposeAppsFor
50132
50706
  };
50133
50707
  /*! Bundled license information:
50134
50708