@pod-os/elements 0.36.0 → 0.37.0-rc.0b98c3c.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.
Files changed (140) hide show
  1. package/dist/cjs/{chunk.URTPIBTY-DdK9pL5v.js → chunk.URTPIBTY-FtbhZr1d.js} +2 -2
  2. package/dist/cjs/{chunk.XQ2OKYYA-DEkhm1i7.js → chunk.XQ2OKYYA-BpcNJ_Ey.js} +3 -3
  3. package/dist/cjs/{chunk.ZGGPD2XJ-uKZZdqOH.js → chunk.ZGGPD2XJ-DZsyTFqB.js} +1 -1
  4. package/dist/cjs/{class-map-DAZXfKKA.js → class-map-CF_MMTnq.js} +1 -1
  5. package/dist/cjs/elements.cjs.js +3 -3
  6. package/dist/cjs/{index-DCpu_nnH.js → index-CtUr8eOE.js} +525 -1988
  7. package/dist/cjs/{index-FUnpyb19.js → index-LDTTta4S.js} +863 -551
  8. package/dist/cjs/{jsonld-V2RB47OZ-BerQ9IRa.js → jsonld-V2RB47OZ-BWMHCZBW.js} +1 -1
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/cjs/pos-add-literal-value_3.cjs.entry.js +6 -6
  11. package/dist/cjs/{pos-add-new-thing_31.cjs.entry.js → pos-add-new-thing_32.cjs.entry.js} +109 -61
  12. package/dist/cjs/pos-app-document-viewer.cjs.entry.js +1 -1
  13. package/dist/cjs/pos-app-generic.cjs.entry.js +1 -1
  14. package/dist/cjs/pos-app-image-viewer.cjs.entry.js +1 -1
  15. package/dist/cjs/pos-app-ldp-container.cjs.entry.js +1 -1
  16. package/dist/cjs/pos-app-rdf-document.cjs.entry.js +1 -1
  17. package/dist/cjs/pos-attachments.cjs.entry.js +2 -2
  18. package/dist/cjs/pos-case.cjs.entry.js +24 -0
  19. package/dist/cjs/pos-container-contents.cjs.entry.js +2 -2
  20. package/dist/cjs/pos-container-item_3.cjs.entry.js +4 -4
  21. package/dist/cjs/pos-document.cjs.entry.js +4 -4
  22. package/dist/cjs/pos-list.cjs.entry.js +1 -1
  23. package/dist/cjs/pos-markdown-document.cjs.entry.js +2 -2
  24. package/dist/cjs/pos-relations_2.cjs.entry.js +1 -1
  25. package/dist/cjs/pos-subjects.cjs.entry.js +2 -2
  26. package/dist/cjs/pos-switch.cjs.entry.js +64 -0
  27. package/dist/cjs/pos-tool-attachments.cjs.entry.js +2 -2
  28. package/dist/cjs/pos-value.cjs.entry.js +1 -1
  29. package/dist/collection/collection-manifest.json +4 -1
  30. package/dist/collection/components/pos-app/pos-app.js +2 -1
  31. package/dist/collection/components/pos-attachments/pos-attachments.js +2 -1
  32. package/dist/collection/components/pos-container-contents/pos-create-new-container-item/pos-create-new-container-item.js +4 -2
  33. package/dist/collection/components/pos-markdown-document/pos-markdown-document.js +2 -1
  34. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.css +42 -22
  35. package/dist/collection/components/pos-navigation/bar/pos-navigation-bar.js +3 -2
  36. package/dist/collection/components/pos-new-thing-form/pos-new-thing-form.js +1 -1
  37. package/dist/collection/components/pos-router/pos-router.js +1 -1
  38. package/dist/collection/components/pos-select-term/pos-select-term.js +1 -1
  39. package/dist/collection/components/pos-share/openNewTab.js +3 -0
  40. package/dist/collection/components/pos-share/pos-share.css +36 -0
  41. package/dist/collection/components/pos-share/pos-share.js +100 -0
  42. package/dist/collection/components/pos-switch/pos-case/pos-case.js +88 -0
  43. package/dist/collection/components/pos-switch/pos-switch.js +89 -0
  44. package/dist/collection/components/pos-tool-select/pos-tool-select.js +6 -3
  45. package/dist/collection/components/pos-upload/pos-upload.js +7 -4
  46. package/dist/collection/components/pos-user-menu/pos-user-menu.js +1 -1
  47. package/dist/collection/tools/pos-tool-attachments/pos-tool-attachments.js +1 -1
  48. package/dist/components/chunk.IVVHNXMC.js +20 -0
  49. package/dist/components/index.js +1 -1
  50. package/dist/components/index2.js +2 -2
  51. package/dist/components/pos-add-literal-value2.js +1 -1
  52. package/dist/components/pos-app-browser.js +1 -1
  53. package/dist/components/pos-attachments2.js +1 -1
  54. package/dist/components/pos-case.d.ts +11 -0
  55. package/dist/components/pos-case.js +1 -0
  56. package/dist/components/pos-make-findable2.js +1 -1
  57. package/dist/components/pos-navigation-bar2.js +1 -1
  58. package/dist/components/pos-navigation2.js +1 -1
  59. package/dist/components/pos-new-thing-form2.js +1 -1
  60. package/dist/components/pos-router2.js +1 -1
  61. package/dist/components/pos-select-term2.js +1 -1
  62. package/dist/components/pos-share.d.ts +11 -0
  63. package/dist/components/pos-share.js +1 -0
  64. package/dist/components/pos-share2.js +1 -0
  65. package/dist/components/pos-switch.d.ts +11 -0
  66. package/dist/components/pos-switch.js +1 -0
  67. package/dist/components/pos-tool-attachments.js +1 -1
  68. package/dist/components/pos-tool-select2.js +1 -1
  69. package/dist/components/pos-type-index-entries2.js +1 -1
  70. package/dist/components/pos-upload2.js +1 -1
  71. package/dist/components/pos-user-menu2.js +6 -25
  72. package/dist/elements/elements.esm.js +1 -1
  73. package/dist/elements/{p-9ad80b52.entry.js → p-07347eaf.entry.js} +1 -1
  74. package/dist/elements/{p-a9a18aa8.entry.js → p-23465966.entry.js} +1 -1
  75. package/dist/elements/{p-c8ee910c.entry.js → p-3ab681fe.entry.js} +1 -1
  76. package/dist/elements/{p-dff14248.entry.js → p-43ec0395.entry.js} +1 -1
  77. package/dist/elements/p-48f3b092.entry.js +1 -0
  78. package/dist/elements/{p-fe628201.entry.js → p-5b3f911d.entry.js} +1 -1
  79. package/dist/elements/{p-6561f1b7.entry.js → p-5d3c9c45.entry.js} +1 -1
  80. package/dist/elements/p-76e4882d.entry.js +1 -0
  81. package/dist/elements/{p-701f2c84.entry.js → p-780b0e14.entry.js} +34 -34
  82. package/dist/elements/p-9827b860.entry.js +1 -0
  83. package/dist/elements/p-98f9f7d6.entry.js +1 -0
  84. package/dist/elements/p-BKjkoLi4.js +2 -0
  85. package/dist/elements/{p-BkAnMOpW.js → p-Bc1EKYmT.js} +4 -4
  86. package/dist/elements/{p-Doy_38_j.js → p-CdRXVHZH.js} +1 -1
  87. package/dist/elements/p-CelEckSK.js +11 -0
  88. package/dist/elements/p-DEDHdpnD.js +67 -0
  89. package/dist/elements/{p-CrxYqX8r.js → p-Db6M_T3c.js} +7 -7
  90. package/dist/elements/{p-a20b72d8.entry.js → p-c0a8227e.entry.js} +1 -1
  91. package/dist/elements/{p-0e7413e6.entry.js → p-d56da833.entry.js} +1 -1
  92. package/dist/elements/{p-3e18b5dd.entry.js → p-db535410.entry.js} +1 -1
  93. package/dist/elements/p-df626ff5.entry.js +1 -0
  94. package/dist/elements/{p-b5d64c6f.entry.js → p-e2b0460d.entry.js} +1 -1
  95. package/dist/elements/{p-9b74c400.entry.js → p-e3e41963.entry.js} +1 -1
  96. package/dist/elements/{p-b363349c.entry.js → p-f5eacaa1.entry.js} +1 -1
  97. package/dist/elements/{p-52a612ed.entry.js → p-f61ab5a9.entry.js} +1 -1
  98. package/dist/elements/{p-8q-RA2Uq.js → p-k0sEkqnd.js} +3 -3
  99. package/dist/esm/{chunk.URTPIBTY-CNA3-SLq.js → chunk.URTPIBTY-IRBXSr44.js} +2 -2
  100. package/dist/esm/{chunk.XQ2OKYYA-CXNlpYUG.js → chunk.XQ2OKYYA-DeSebP8q.js} +3 -3
  101. package/dist/esm/{chunk.ZGGPD2XJ-BjT6fS1o.js → chunk.ZGGPD2XJ-DNRLq49v.js} +1 -1
  102. package/dist/esm/{class-map-CUYFUkXU.js → class-map-CdQEGha6.js} +1 -1
  103. package/dist/esm/elements.js +4 -4
  104. package/dist/esm/{index-DFqG64hG.js → index-BF-69-JC.js} +863 -551
  105. package/dist/esm/{index-VMHzF3uY.js → index-BKjkoLi4.js} +525 -1988
  106. package/dist/esm/{jsonld-V2RB47OZ-CaIJ08AA.js → jsonld-V2RB47OZ-CWZbzWzV.js} +1 -1
  107. package/dist/esm/loader.js +3 -3
  108. package/dist/esm/pos-add-literal-value_3.entry.js +6 -6
  109. package/dist/esm/{pos-add-new-thing_31.entry.js → pos-add-new-thing_32.entry.js} +109 -62
  110. package/dist/esm/pos-app-document-viewer.entry.js +1 -1
  111. package/dist/esm/pos-app-generic.entry.js +1 -1
  112. package/dist/esm/pos-app-image-viewer.entry.js +1 -1
  113. package/dist/esm/pos-app-ldp-container.entry.js +1 -1
  114. package/dist/esm/pos-app-rdf-document.entry.js +1 -1
  115. package/dist/esm/pos-attachments.entry.js +2 -2
  116. package/dist/esm/pos-case.entry.js +22 -0
  117. package/dist/esm/pos-container-contents.entry.js +2 -2
  118. package/dist/esm/pos-container-item_3.entry.js +4 -4
  119. package/dist/esm/pos-document.entry.js +4 -4
  120. package/dist/esm/pos-list.entry.js +1 -1
  121. package/dist/esm/pos-markdown-document.entry.js +2 -2
  122. package/dist/esm/pos-relations_2.entry.js +1 -1
  123. package/dist/esm/pos-subjects.entry.js +2 -2
  124. package/dist/esm/pos-switch.entry.js +62 -0
  125. package/dist/esm/pos-tool-attachments.entry.js +2 -2
  126. package/dist/esm/pos-value.entry.js +1 -1
  127. package/dist/jest-setup.js +4 -0
  128. package/dist/types/components/pos-share/openNewTab.d.ts +1 -0
  129. package/dist/types/components/pos-share/pos-share.d.ts +26 -0
  130. package/dist/types/components/pos-switch/pos-case/pos-case.d.ts +22 -0
  131. package/dist/types/components/pos-switch/pos-switch.d.ts +19 -0
  132. package/dist/types/components.d.ts +300 -74
  133. package/dist/types/stencil-public-runtime.d.ts +50 -2
  134. package/package.json +5 -4
  135. package/dist/elements/p-0a087865.entry.js +0 -1
  136. package/dist/elements/p-637a38d9.entry.js +0 -1
  137. package/dist/elements/p-8ggjG2YF.js +0 -11
  138. package/dist/elements/p-LoCE14bN.js +0 -67
  139. package/dist/elements/p-VMHzF3uY.js +0 -2
  140. package/dist/elements/p-ac17ed6a.entry.js +0 -1
@@ -11601,346 +11601,6 @@ var require_browser_ponyfill = __commonJS({
11601
11601
  }
11602
11602
  });
11603
11603
 
11604
- // ../node_modules/short-unique-id/dist/short-unique-id.js
11605
- var require_short_unique_id = __commonJS({
11606
- "../node_modules/short-unique-id/dist/short-unique-id.js"(exports, module3) {
11607
- var ShortUniqueId2 = (() => {
11608
- var __defProp = Object.defineProperty;
11609
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11610
- var __getOwnPropNames = Object.getOwnPropertyNames;
11611
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
11612
- var __hasOwnProp = Object.prototype.hasOwnProperty;
11613
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11614
- var __defNormalProp = (obj, key3, value7) => key3 in obj ? __defProp(obj, key3, { enumerable: true, configurable: true, writable: true, value: value7 }) : obj[key3] = value7;
11615
- var __spreadValues = (a, b) => {
11616
- for (var prop in b || (b = {}))
11617
- if (__hasOwnProp.call(b, prop))
11618
- __defNormalProp(a, prop, b[prop]);
11619
- if (__getOwnPropSymbols)
11620
- for (var prop of __getOwnPropSymbols(b)) {
11621
- if (__propIsEnum.call(b, prop))
11622
- __defNormalProp(a, prop, b[prop]);
11623
- }
11624
- return a;
11625
- };
11626
- var __export2 = (target6, all) => {
11627
- for (var name9 in all)
11628
- __defProp(target6, name9, { get: all[name9], enumerable: true });
11629
- };
11630
- var __copyProps = (to2, from2, except, desc) => {
11631
- if (from2 && typeof from2 === "object" || typeof from2 === "function") {
11632
- for (let key3 of __getOwnPropNames(from2))
11633
- if (!__hasOwnProp.call(to2, key3) && key3 !== except)
11634
- __defProp(to2, key3, { get: () => from2[key3], enumerable: !(desc = __getOwnPropDesc(from2, key3)) || desc.enumerable });
11635
- }
11636
- return to2;
11637
- };
11638
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
11639
- var __publicField = (obj, key3, value7) => {
11640
- __defNormalProp(obj, typeof key3 !== "symbol" ? key3 + "" : key3, value7);
11641
- return value7;
11642
- };
11643
- var src_exports = {};
11644
- __export2(src_exports, {
11645
- DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,
11646
- DEFAULT_UUID_LENGTH: () => DEFAULT_UUID_LENGTH,
11647
- default: () => ShortUniqueId3
11648
- });
11649
- var version6 = "5.2.0";
11650
- var DEFAULT_UUID_LENGTH = 6;
11651
- var DEFAULT_OPTIONS = {
11652
- dictionary: "alphanum",
11653
- shuffle: true,
11654
- debug: false,
11655
- length: DEFAULT_UUID_LENGTH,
11656
- counter: 0
11657
- };
11658
- var _ShortUniqueId = class _ShortUniqueId {
11659
- constructor(argOptions = {}) {
11660
- __publicField(this, "counter");
11661
- __publicField(this, "debug");
11662
- __publicField(this, "dict");
11663
- __publicField(this, "version");
11664
- __publicField(this, "dictIndex", 0);
11665
- __publicField(this, "dictRange", []);
11666
- __publicField(this, "lowerBound", 0);
11667
- __publicField(this, "upperBound", 0);
11668
- __publicField(this, "dictLength", 0);
11669
- __publicField(this, "uuidLength");
11670
- __publicField(this, "_digit_first_ascii", 48);
11671
- __publicField(this, "_digit_last_ascii", 58);
11672
- __publicField(this, "_alpha_lower_first_ascii", 97);
11673
- __publicField(this, "_alpha_lower_last_ascii", 123);
11674
- __publicField(this, "_hex_last_ascii", 103);
11675
- __publicField(this, "_alpha_upper_first_ascii", 65);
11676
- __publicField(this, "_alpha_upper_last_ascii", 91);
11677
- __publicField(this, "_number_dict_ranges", {
11678
- digits: [this._digit_first_ascii, this._digit_last_ascii]
11679
- });
11680
- __publicField(this, "_alpha_dict_ranges", {
11681
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
11682
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11683
- });
11684
- __publicField(this, "_alpha_lower_dict_ranges", {
11685
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
11686
- });
11687
- __publicField(this, "_alpha_upper_dict_ranges", {
11688
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11689
- });
11690
- __publicField(this, "_alphanum_dict_ranges", {
11691
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11692
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
11693
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11694
- });
11695
- __publicField(this, "_alphanum_lower_dict_ranges", {
11696
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11697
- lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
11698
- });
11699
- __publicField(this, "_alphanum_upper_dict_ranges", {
11700
- digits: [this._digit_first_ascii, this._digit_last_ascii],
11701
- upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
11702
- });
11703
- __publicField(this, "_hex_dict_ranges", {
11704
- decDigits: [this._digit_first_ascii, this._digit_last_ascii],
11705
- alphaDigits: [this._alpha_lower_first_ascii, this._hex_last_ascii]
11706
- });
11707
- __publicField(this, "_dict_ranges", {
11708
- _number_dict_ranges: this._number_dict_ranges,
11709
- _alpha_dict_ranges: this._alpha_dict_ranges,
11710
- _alpha_lower_dict_ranges: this._alpha_lower_dict_ranges,
11711
- _alpha_upper_dict_ranges: this._alpha_upper_dict_ranges,
11712
- _alphanum_dict_ranges: this._alphanum_dict_ranges,
11713
- _alphanum_lower_dict_ranges: this._alphanum_lower_dict_ranges,
11714
- _alphanum_upper_dict_ranges: this._alphanum_upper_dict_ranges,
11715
- _hex_dict_ranges: this._hex_dict_ranges
11716
- });
11717
- __publicField(this, "log", (...args) => {
11718
- const finalArgs = [...args];
11719
- finalArgs[0] = `[short-unique-id] ${args[0]}`;
11720
- if (this.debug === true) {
11721
- if (typeof console !== "undefined" && console !== null) {
11722
- return console.log(...finalArgs);
11723
- }
11724
- }
11725
- });
11726
- __publicField(this, "_normalizeDictionary", (dictionary2, shuffle2) => {
11727
- let finalDict;
11728
- if (dictionary2 && Array.isArray(dictionary2) && dictionary2.length > 1) {
11729
- finalDict = dictionary2;
11730
- } else {
11731
- finalDict = [];
11732
- let i;
11733
- this.dictIndex = i = 0;
11734
- const rangesName = `_${dictionary2}_dict_ranges`;
11735
- const ranges = this._dict_ranges[rangesName];
11736
- Object.keys(ranges).forEach((rangeType) => {
11737
- const rangeTypeKey = rangeType;
11738
- this.dictRange = ranges[rangeTypeKey];
11739
- this.lowerBound = this.dictRange[0];
11740
- this.upperBound = this.dictRange[1];
11741
- 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) {
11742
- finalDict.push(String.fromCharCode(this.dictIndex));
11743
- }
11744
- });
11745
- }
11746
- if (shuffle2) {
11747
- const PROBABILITY = 0.5;
11748
- finalDict = finalDict.sort(() => Math.random() - PROBABILITY);
11749
- }
11750
- return finalDict;
11751
- });
11752
- __publicField(this, "setDictionary", (dictionary2, shuffle2) => {
11753
- this.dict = this._normalizeDictionary(dictionary2, shuffle2);
11754
- this.dictLength = this.dict.length;
11755
- this.setCounter(0);
11756
- });
11757
- __publicField(this, "seq", () => {
11758
- return this.sequentialUUID();
11759
- });
11760
- __publicField(this, "sequentialUUID", () => {
11761
- let counterDiv;
11762
- let counterRem;
11763
- let id4 = "";
11764
- counterDiv = this.counter;
11765
- do {
11766
- counterRem = counterDiv % this.dictLength;
11767
- counterDiv = Math.trunc(counterDiv / this.dictLength);
11768
- id4 += this.dict[counterRem];
11769
- } while (counterDiv !== 0);
11770
- this.counter += 1;
11771
- return id4;
11772
- });
11773
- __publicField(this, "rnd", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
11774
- return this.randomUUID(uuidLength);
11775
- });
11776
- __publicField(this, "randomUUID", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
11777
- let id4;
11778
- let randomPartIdx;
11779
- let j;
11780
- if (uuidLength === null || typeof uuidLength === "undefined" || uuidLength < 1) {
11781
- throw new Error("Invalid UUID Length Provided");
11782
- }
11783
- id4 = "";
11784
- for (j = 0; j < uuidLength; j += 1) {
11785
- randomPartIdx = parseInt(
11786
- (Math.random() * this.dictLength).toFixed(0),
11787
- 10
11788
- ) % this.dictLength;
11789
- id4 += this.dict[randomPartIdx];
11790
- }
11791
- return id4;
11792
- });
11793
- __publicField(this, "fmt", (format4, date6) => {
11794
- return this.formattedUUID(format4, date6);
11795
- });
11796
- __publicField(this, "formattedUUID", (format4, date6) => {
11797
- const fnMap = {
11798
- "$r": this.randomUUID,
11799
- "$s": this.sequentialUUID,
11800
- "$t": this.stamp
11801
- };
11802
- const result6 = format4.replace(
11803
- /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
11804
- (m) => {
11805
- const fn2 = m.slice(0, 2);
11806
- const len = parseInt(m.slice(2), 10);
11807
- if (fn2 === "$s") {
11808
- return fnMap[fn2]().padStart(len, "0");
11809
- }
11810
- if (fn2 === "$t" && date6) {
11811
- return fnMap[fn2](len, date6);
11812
- }
11813
- return fnMap[fn2](len);
11814
- }
11815
- );
11816
- return result6;
11817
- });
11818
- __publicField(this, "availableUUIDs", (uuidLength = this.uuidLength) => {
11819
- return parseFloat(
11820
- Math.pow([...new Set(this.dict)].length, uuidLength).toFixed(0)
11821
- );
11822
- });
11823
- __publicField(this, "approxMaxBeforeCollision", (rounds = this.availableUUIDs(this.uuidLength)) => {
11824
- return parseFloat(
11825
- Math.sqrt(Math.PI / 2 * rounds).toFixed(20)
11826
- );
11827
- });
11828
- __publicField(this, "collisionProbability", (rounds = this.availableUUIDs(this.uuidLength), uuidLength = this.uuidLength) => {
11829
- return parseFloat(
11830
- (this.approxMaxBeforeCollision(rounds) / this.availableUUIDs(uuidLength)).toFixed(20)
11831
- );
11832
- });
11833
- __publicField(this, "uniqueness", (rounds = this.availableUUIDs(this.uuidLength)) => {
11834
- const score2 = parseFloat(
11835
- (1 - this.approxMaxBeforeCollision(rounds) / rounds).toFixed(20)
11836
- );
11837
- return score2 > 1 ? 1 : score2 < 0 ? 0 : score2;
11838
- });
11839
- __publicField(this, "getVersion", () => {
11840
- return this.version;
11841
- });
11842
- __publicField(this, "stamp", (finalLength, date6) => {
11843
- const hexStamp = Math.floor(+(date6 || /* @__PURE__ */ new Date()) / 1e3).toString(16);
11844
- if (typeof finalLength === "number" && finalLength === 0) {
11845
- return hexStamp;
11846
- }
11847
- if (typeof finalLength !== "number" || finalLength < 10) {
11848
- throw new Error(
11849
- [
11850
- "Param finalLength must be a number greater than or equal to 10,",
11851
- "or 0 if you want the raw hexadecimal timestamp"
11852
- ].join("\n")
11853
- );
11854
- }
11855
- const idLength = finalLength - 9;
11856
- const rndIdx = Math.round(Math.random() * (idLength > 15 ? 15 : idLength));
11857
- const id4 = this.randomUUID(idLength);
11858
- return `${id4.substring(0, rndIdx)}${hexStamp}${id4.substring(rndIdx)}${rndIdx.toString(16)}`;
11859
- });
11860
- __publicField(this, "parseStamp", (suid, format4) => {
11861
- if (format4 && !/t0|t[1-9]\d{1,}/.test(format4)) {
11862
- throw new Error("Cannot extract date from a formated UUID with no timestamp in the format");
11863
- }
11864
- const stamp = format4 ? format4.replace(
11865
- /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
11866
- (m) => {
11867
- const fnMap = {
11868
- "$r": (len2) => [...Array(len2)].map(() => "r").join(""),
11869
- "$s": (len2) => [...Array(len2)].map(() => "s").join(""),
11870
- "$t": (len2) => [...Array(len2)].map(() => "t").join("")
11871
- };
11872
- const fn2 = m.slice(0, 2);
11873
- const len = parseInt(m.slice(2), 10);
11874
- return fnMap[fn2](len);
11875
- }
11876
- ).replace(
11877
- /^(.*?)(t{8,})(.*)$/g,
11878
- (_m, p1, p2) => {
11879
- return suid.substring(p1.length, p1.length + p2.length);
11880
- }
11881
- ) : suid;
11882
- if (stamp.length === 8) {
11883
- return new Date(parseInt(stamp, 16) * 1e3);
11884
- }
11885
- if (stamp.length < 10) {
11886
- throw new Error("Stamp length invalid");
11887
- }
11888
- const rndIdx = parseInt(stamp.substring(stamp.length - 1), 16);
11889
- return new Date(parseInt(stamp.substring(rndIdx, rndIdx + 8), 16) * 1e3);
11890
- });
11891
- __publicField(this, "setCounter", (counter2) => {
11892
- this.counter = counter2;
11893
- });
11894
- __publicField(this, "validate", (uid4, dictionary2) => {
11895
- const finalDictionary = dictionary2 ? this._normalizeDictionary(dictionary2) : this.dict;
11896
- return uid4.split("").every((c) => finalDictionary.includes(c));
11897
- });
11898
- const options = __spreadValues(__spreadValues({}, DEFAULT_OPTIONS), argOptions);
11899
- this.counter = 0;
11900
- this.debug = false;
11901
- this.dict = [];
11902
- this.version = version6;
11903
- const {
11904
- dictionary,
11905
- shuffle,
11906
- length: length3,
11907
- counter
11908
- } = options;
11909
- this.uuidLength = length3;
11910
- this.setDictionary(dictionary, shuffle);
11911
- this.setCounter(counter);
11912
- this.debug = options.debug;
11913
- this.log(this.dict);
11914
- this.log(
11915
- `Generator instantiated with Dictionary Size ${this.dictLength} and counter set to ${this.counter}`
11916
- );
11917
- this.log = this.log.bind(this);
11918
- this.setDictionary = this.setDictionary.bind(this);
11919
- this.setCounter = this.setCounter.bind(this);
11920
- this.seq = this.seq.bind(this);
11921
- this.sequentialUUID = this.sequentialUUID.bind(this);
11922
- this.rnd = this.rnd.bind(this);
11923
- this.randomUUID = this.randomUUID.bind(this);
11924
- this.fmt = this.fmt.bind(this);
11925
- this.formattedUUID = this.formattedUUID.bind(this);
11926
- this.availableUUIDs = this.availableUUIDs.bind(this);
11927
- this.approxMaxBeforeCollision = this.approxMaxBeforeCollision.bind(this);
11928
- this.collisionProbability = this.collisionProbability.bind(this);
11929
- this.uniqueness = this.uniqueness.bind(this);
11930
- this.getVersion = this.getVersion.bind(this);
11931
- this.stamp = this.stamp.bind(this);
11932
- this.parseStamp = this.parseStamp.bind(this);
11933
- return this;
11934
- }
11935
- };
11936
- __publicField(_ShortUniqueId, "default", _ShortUniqueId);
11937
- var ShortUniqueId3 = _ShortUniqueId;
11938
- return __toCommonJS(src_exports);
11939
- })();
11940
- "undefined" != typeof module3 && (module3.exports = ShortUniqueId2.default), "undefined" != typeof window && (ShortUniqueId2 = ShortUniqueId2.default);
11941
- }
11942
- });
11943
-
11944
11604
  // ../node_modules/lunr/lunr.js
11945
11605
  var require_lunr = __commonJS({
11946
11606
  "../node_modules/lunr/lunr.js"(exports, module3) {
@@ -13672,6 +13332,346 @@ var require_lunr = __commonJS({
13672
13332
  }
13673
13333
  });
13674
13334
 
13335
+ // ../node_modules/short-unique-id/dist/short-unique-id.js
13336
+ var require_short_unique_id = __commonJS({
13337
+ "../node_modules/short-unique-id/dist/short-unique-id.js"(exports, module3) {
13338
+ var ShortUniqueId2 = (() => {
13339
+ var __defProp = Object.defineProperty;
13340
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13341
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13342
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
13343
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13344
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
13345
+ var __defNormalProp = (obj, key3, value7) => key3 in obj ? __defProp(obj, key3, { enumerable: true, configurable: true, writable: true, value: value7 }) : obj[key3] = value7;
13346
+ var __spreadValues = (a, b) => {
13347
+ for (var prop in b || (b = {}))
13348
+ if (__hasOwnProp.call(b, prop))
13349
+ __defNormalProp(a, prop, b[prop]);
13350
+ if (__getOwnPropSymbols)
13351
+ for (var prop of __getOwnPropSymbols(b)) {
13352
+ if (__propIsEnum.call(b, prop))
13353
+ __defNormalProp(a, prop, b[prop]);
13354
+ }
13355
+ return a;
13356
+ };
13357
+ var __export2 = (target6, all) => {
13358
+ for (var name9 in all)
13359
+ __defProp(target6, name9, { get: all[name9], enumerable: true });
13360
+ };
13361
+ var __copyProps = (to2, from2, except, desc) => {
13362
+ if (from2 && typeof from2 === "object" || typeof from2 === "function") {
13363
+ for (let key3 of __getOwnPropNames(from2))
13364
+ if (!__hasOwnProp.call(to2, key3) && key3 !== except)
13365
+ __defProp(to2, key3, { get: () => from2[key3], enumerable: !(desc = __getOwnPropDesc(from2, key3)) || desc.enumerable });
13366
+ }
13367
+ return to2;
13368
+ };
13369
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
13370
+ var __publicField = (obj, key3, value7) => {
13371
+ __defNormalProp(obj, typeof key3 !== "symbol" ? key3 + "" : key3, value7);
13372
+ return value7;
13373
+ };
13374
+ var src_exports = {};
13375
+ __export2(src_exports, {
13376
+ DEFAULT_OPTIONS: () => DEFAULT_OPTIONS,
13377
+ DEFAULT_UUID_LENGTH: () => DEFAULT_UUID_LENGTH,
13378
+ default: () => ShortUniqueId3
13379
+ });
13380
+ var version6 = "5.2.0";
13381
+ var DEFAULT_UUID_LENGTH = 6;
13382
+ var DEFAULT_OPTIONS = {
13383
+ dictionary: "alphanum",
13384
+ shuffle: true,
13385
+ debug: false,
13386
+ length: DEFAULT_UUID_LENGTH,
13387
+ counter: 0
13388
+ };
13389
+ var _ShortUniqueId = class _ShortUniqueId {
13390
+ constructor(argOptions = {}) {
13391
+ __publicField(this, "counter");
13392
+ __publicField(this, "debug");
13393
+ __publicField(this, "dict");
13394
+ __publicField(this, "version");
13395
+ __publicField(this, "dictIndex", 0);
13396
+ __publicField(this, "dictRange", []);
13397
+ __publicField(this, "lowerBound", 0);
13398
+ __publicField(this, "upperBound", 0);
13399
+ __publicField(this, "dictLength", 0);
13400
+ __publicField(this, "uuidLength");
13401
+ __publicField(this, "_digit_first_ascii", 48);
13402
+ __publicField(this, "_digit_last_ascii", 58);
13403
+ __publicField(this, "_alpha_lower_first_ascii", 97);
13404
+ __publicField(this, "_alpha_lower_last_ascii", 123);
13405
+ __publicField(this, "_hex_last_ascii", 103);
13406
+ __publicField(this, "_alpha_upper_first_ascii", 65);
13407
+ __publicField(this, "_alpha_upper_last_ascii", 91);
13408
+ __publicField(this, "_number_dict_ranges", {
13409
+ digits: [this._digit_first_ascii, this._digit_last_ascii]
13410
+ });
13411
+ __publicField(this, "_alpha_dict_ranges", {
13412
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
13413
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13414
+ });
13415
+ __publicField(this, "_alpha_lower_dict_ranges", {
13416
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
13417
+ });
13418
+ __publicField(this, "_alpha_upper_dict_ranges", {
13419
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13420
+ });
13421
+ __publicField(this, "_alphanum_dict_ranges", {
13422
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13423
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii],
13424
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13425
+ });
13426
+ __publicField(this, "_alphanum_lower_dict_ranges", {
13427
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13428
+ lowerCase: [this._alpha_lower_first_ascii, this._alpha_lower_last_ascii]
13429
+ });
13430
+ __publicField(this, "_alphanum_upper_dict_ranges", {
13431
+ digits: [this._digit_first_ascii, this._digit_last_ascii],
13432
+ upperCase: [this._alpha_upper_first_ascii, this._alpha_upper_last_ascii]
13433
+ });
13434
+ __publicField(this, "_hex_dict_ranges", {
13435
+ decDigits: [this._digit_first_ascii, this._digit_last_ascii],
13436
+ alphaDigits: [this._alpha_lower_first_ascii, this._hex_last_ascii]
13437
+ });
13438
+ __publicField(this, "_dict_ranges", {
13439
+ _number_dict_ranges: this._number_dict_ranges,
13440
+ _alpha_dict_ranges: this._alpha_dict_ranges,
13441
+ _alpha_lower_dict_ranges: this._alpha_lower_dict_ranges,
13442
+ _alpha_upper_dict_ranges: this._alpha_upper_dict_ranges,
13443
+ _alphanum_dict_ranges: this._alphanum_dict_ranges,
13444
+ _alphanum_lower_dict_ranges: this._alphanum_lower_dict_ranges,
13445
+ _alphanum_upper_dict_ranges: this._alphanum_upper_dict_ranges,
13446
+ _hex_dict_ranges: this._hex_dict_ranges
13447
+ });
13448
+ __publicField(this, "log", (...args) => {
13449
+ const finalArgs = [...args];
13450
+ finalArgs[0] = `[short-unique-id] ${args[0]}`;
13451
+ if (this.debug === true) {
13452
+ if (typeof console !== "undefined" && console !== null) {
13453
+ return console.log(...finalArgs);
13454
+ }
13455
+ }
13456
+ });
13457
+ __publicField(this, "_normalizeDictionary", (dictionary2, shuffle2) => {
13458
+ let finalDict;
13459
+ if (dictionary2 && Array.isArray(dictionary2) && dictionary2.length > 1) {
13460
+ finalDict = dictionary2;
13461
+ } else {
13462
+ finalDict = [];
13463
+ let i;
13464
+ this.dictIndex = i = 0;
13465
+ const rangesName = `_${dictionary2}_dict_ranges`;
13466
+ const ranges = this._dict_ranges[rangesName];
13467
+ Object.keys(ranges).forEach((rangeType) => {
13468
+ const rangeTypeKey = rangeType;
13469
+ this.dictRange = ranges[rangeTypeKey];
13470
+ this.lowerBound = this.dictRange[0];
13471
+ this.upperBound = this.dictRange[1];
13472
+ 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) {
13473
+ finalDict.push(String.fromCharCode(this.dictIndex));
13474
+ }
13475
+ });
13476
+ }
13477
+ if (shuffle2) {
13478
+ const PROBABILITY = 0.5;
13479
+ finalDict = finalDict.sort(() => Math.random() - PROBABILITY);
13480
+ }
13481
+ return finalDict;
13482
+ });
13483
+ __publicField(this, "setDictionary", (dictionary2, shuffle2) => {
13484
+ this.dict = this._normalizeDictionary(dictionary2, shuffle2);
13485
+ this.dictLength = this.dict.length;
13486
+ this.setCounter(0);
13487
+ });
13488
+ __publicField(this, "seq", () => {
13489
+ return this.sequentialUUID();
13490
+ });
13491
+ __publicField(this, "sequentialUUID", () => {
13492
+ let counterDiv;
13493
+ let counterRem;
13494
+ let id4 = "";
13495
+ counterDiv = this.counter;
13496
+ do {
13497
+ counterRem = counterDiv % this.dictLength;
13498
+ counterDiv = Math.trunc(counterDiv / this.dictLength);
13499
+ id4 += this.dict[counterRem];
13500
+ } while (counterDiv !== 0);
13501
+ this.counter += 1;
13502
+ return id4;
13503
+ });
13504
+ __publicField(this, "rnd", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
13505
+ return this.randomUUID(uuidLength);
13506
+ });
13507
+ __publicField(this, "randomUUID", (uuidLength = this.uuidLength || DEFAULT_UUID_LENGTH) => {
13508
+ let id4;
13509
+ let randomPartIdx;
13510
+ let j;
13511
+ if (uuidLength === null || typeof uuidLength === "undefined" || uuidLength < 1) {
13512
+ throw new Error("Invalid UUID Length Provided");
13513
+ }
13514
+ id4 = "";
13515
+ for (j = 0; j < uuidLength; j += 1) {
13516
+ randomPartIdx = parseInt(
13517
+ (Math.random() * this.dictLength).toFixed(0),
13518
+ 10
13519
+ ) % this.dictLength;
13520
+ id4 += this.dict[randomPartIdx];
13521
+ }
13522
+ return id4;
13523
+ });
13524
+ __publicField(this, "fmt", (format4, date6) => {
13525
+ return this.formattedUUID(format4, date6);
13526
+ });
13527
+ __publicField(this, "formattedUUID", (format4, date6) => {
13528
+ const fnMap = {
13529
+ "$r": this.randomUUID,
13530
+ "$s": this.sequentialUUID,
13531
+ "$t": this.stamp
13532
+ };
13533
+ const result6 = format4.replace(
13534
+ /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
13535
+ (m) => {
13536
+ const fn2 = m.slice(0, 2);
13537
+ const len = parseInt(m.slice(2), 10);
13538
+ if (fn2 === "$s") {
13539
+ return fnMap[fn2]().padStart(len, "0");
13540
+ }
13541
+ if (fn2 === "$t" && date6) {
13542
+ return fnMap[fn2](len, date6);
13543
+ }
13544
+ return fnMap[fn2](len);
13545
+ }
13546
+ );
13547
+ return result6;
13548
+ });
13549
+ __publicField(this, "availableUUIDs", (uuidLength = this.uuidLength) => {
13550
+ return parseFloat(
13551
+ Math.pow([...new Set(this.dict)].length, uuidLength).toFixed(0)
13552
+ );
13553
+ });
13554
+ __publicField(this, "approxMaxBeforeCollision", (rounds = this.availableUUIDs(this.uuidLength)) => {
13555
+ return parseFloat(
13556
+ Math.sqrt(Math.PI / 2 * rounds).toFixed(20)
13557
+ );
13558
+ });
13559
+ __publicField(this, "collisionProbability", (rounds = this.availableUUIDs(this.uuidLength), uuidLength = this.uuidLength) => {
13560
+ return parseFloat(
13561
+ (this.approxMaxBeforeCollision(rounds) / this.availableUUIDs(uuidLength)).toFixed(20)
13562
+ );
13563
+ });
13564
+ __publicField(this, "uniqueness", (rounds = this.availableUUIDs(this.uuidLength)) => {
13565
+ const score2 = parseFloat(
13566
+ (1 - this.approxMaxBeforeCollision(rounds) / rounds).toFixed(20)
13567
+ );
13568
+ return score2 > 1 ? 1 : score2 < 0 ? 0 : score2;
13569
+ });
13570
+ __publicField(this, "getVersion", () => {
13571
+ return this.version;
13572
+ });
13573
+ __publicField(this, "stamp", (finalLength, date6) => {
13574
+ const hexStamp = Math.floor(+(date6 || /* @__PURE__ */ new Date()) / 1e3).toString(16);
13575
+ if (typeof finalLength === "number" && finalLength === 0) {
13576
+ return hexStamp;
13577
+ }
13578
+ if (typeof finalLength !== "number" || finalLength < 10) {
13579
+ throw new Error(
13580
+ [
13581
+ "Param finalLength must be a number greater than or equal to 10,",
13582
+ "or 0 if you want the raw hexadecimal timestamp"
13583
+ ].join("\n")
13584
+ );
13585
+ }
13586
+ const idLength = finalLength - 9;
13587
+ const rndIdx = Math.round(Math.random() * (idLength > 15 ? 15 : idLength));
13588
+ const id4 = this.randomUUID(idLength);
13589
+ return `${id4.substring(0, rndIdx)}${hexStamp}${id4.substring(rndIdx)}${rndIdx.toString(16)}`;
13590
+ });
13591
+ __publicField(this, "parseStamp", (suid, format4) => {
13592
+ if (format4 && !/t0|t[1-9]\d{1,}/.test(format4)) {
13593
+ throw new Error("Cannot extract date from a formated UUID with no timestamp in the format");
13594
+ }
13595
+ const stamp = format4 ? format4.replace(
13596
+ /\$[rs]\d{0,}|\$t0|\$t[1-9]\d{1,}/g,
13597
+ (m) => {
13598
+ const fnMap = {
13599
+ "$r": (len2) => [...Array(len2)].map(() => "r").join(""),
13600
+ "$s": (len2) => [...Array(len2)].map(() => "s").join(""),
13601
+ "$t": (len2) => [...Array(len2)].map(() => "t").join("")
13602
+ };
13603
+ const fn2 = m.slice(0, 2);
13604
+ const len = parseInt(m.slice(2), 10);
13605
+ return fnMap[fn2](len);
13606
+ }
13607
+ ).replace(
13608
+ /^(.*?)(t{8,})(.*)$/g,
13609
+ (_m, p1, p2) => {
13610
+ return suid.substring(p1.length, p1.length + p2.length);
13611
+ }
13612
+ ) : suid;
13613
+ if (stamp.length === 8) {
13614
+ return new Date(parseInt(stamp, 16) * 1e3);
13615
+ }
13616
+ if (stamp.length < 10) {
13617
+ throw new Error("Stamp length invalid");
13618
+ }
13619
+ const rndIdx = parseInt(stamp.substring(stamp.length - 1), 16);
13620
+ return new Date(parseInt(stamp.substring(rndIdx, rndIdx + 8), 16) * 1e3);
13621
+ });
13622
+ __publicField(this, "setCounter", (counter2) => {
13623
+ this.counter = counter2;
13624
+ });
13625
+ __publicField(this, "validate", (uid4, dictionary2) => {
13626
+ const finalDictionary = dictionary2 ? this._normalizeDictionary(dictionary2) : this.dict;
13627
+ return uid4.split("").every((c) => finalDictionary.includes(c));
13628
+ });
13629
+ const options = __spreadValues(__spreadValues({}, DEFAULT_OPTIONS), argOptions);
13630
+ this.counter = 0;
13631
+ this.debug = false;
13632
+ this.dict = [];
13633
+ this.version = version6;
13634
+ const {
13635
+ dictionary,
13636
+ shuffle,
13637
+ length: length3,
13638
+ counter
13639
+ } = options;
13640
+ this.uuidLength = length3;
13641
+ this.setDictionary(dictionary, shuffle);
13642
+ this.setCounter(counter);
13643
+ this.debug = options.debug;
13644
+ this.log(this.dict);
13645
+ this.log(
13646
+ `Generator instantiated with Dictionary Size ${this.dictLength} and counter set to ${this.counter}`
13647
+ );
13648
+ this.log = this.log.bind(this);
13649
+ this.setDictionary = this.setDictionary.bind(this);
13650
+ this.setCounter = this.setCounter.bind(this);
13651
+ this.seq = this.seq.bind(this);
13652
+ this.sequentialUUID = this.sequentialUUID.bind(this);
13653
+ this.rnd = this.rnd.bind(this);
13654
+ this.randomUUID = this.randomUUID.bind(this);
13655
+ this.fmt = this.fmt.bind(this);
13656
+ this.formattedUUID = this.formattedUUID.bind(this);
13657
+ this.availableUUIDs = this.availableUUIDs.bind(this);
13658
+ this.approxMaxBeforeCollision = this.approxMaxBeforeCollision.bind(this);
13659
+ this.collisionProbability = this.collisionProbability.bind(this);
13660
+ this.uniqueness = this.uniqueness.bind(this);
13661
+ this.getVersion = this.getVersion.bind(this);
13662
+ this.stamp = this.stamp.bind(this);
13663
+ this.parseStamp = this.parseStamp.bind(this);
13664
+ return this;
13665
+ }
13666
+ };
13667
+ __publicField(_ShortUniqueId, "default", _ShortUniqueId);
13668
+ var ShortUniqueId3 = _ShortUniqueId;
13669
+ return __toCommonJS(src_exports);
13670
+ })();
13671
+ "undefined" != typeof module3 && (module3.exports = ShortUniqueId2.default), "undefined" != typeof window && (ShortUniqueId2 = ShortUniqueId2.default);
13672
+ }
13673
+ });
13674
+
13675
13675
  // ../node_modules/slugify/slugify.js
13676
13676
  var require_slugify = __commonJS({
13677
13677
  "../node_modules/slugify/slugify.js"(exports, module3) {
@@ -21916,7 +21916,7 @@ function listToCollection(kb, obj) {
21916
21916
  }
21917
21917
  async function jsonldParser(str, kb, base2) {
21918
21918
  const baseString = base2 && Object.prototype.hasOwnProperty.call(base2, "termType") ? base2.value : base2;
21919
- const jsonld = await Promise.resolve().then(function () { return require('./jsonld-V2RB47OZ-BerQ9IRa.js'); });
21919
+ const jsonld = await Promise.resolve().then(function () { return require('./jsonld-V2RB47OZ-BWMHCZBW.js'); });
21920
21920
  const flattened = await jsonld.default.flatten(JSON.parse(str), null, {
21921
21921
  base: baseString
21922
21922
  });
@@ -27616,8 +27616,8 @@ var Thing = class {
27616
27616
  * Retrieves a list of RDF types for this thing.
27617
27617
  */
27618
27618
  types() {
27619
- const uriMap = this.store.findTypeURIs(namedNode(this.uri));
27620
- return Object.keys(uriMap).map((uri6) => ({
27619
+ const uris = this.store.findTypes(this.uri);
27620
+ return uris.map((uri6) => ({
27621
27621
  uri: uri6,
27622
27622
  label: labelForType(uri6)
27623
27623
  }));
@@ -27774,6 +27774,203 @@ var PictureGateway = class {
27774
27774
  }
27775
27775
  };
27776
27776
 
27777
+ // src/profile/WebIdProfile.ts
27778
+ var WebIdProfile = class extends Thing {
27779
+ constructor(webId, store, editable = false) {
27780
+ super(webId, store, editable);
27781
+ this.webId = webId;
27782
+ this.store = store;
27783
+ this.editable = editable;
27784
+ this.profileQuery = this.store.profileQuery(this.webId);
27785
+ }
27786
+ /**
27787
+ * Returns the URI of the preferences document
27788
+ */
27789
+ getPreferencesFile() {
27790
+ return this.profileQuery.queryPreferencesFile()?.value;
27791
+ }
27792
+ /**
27793
+ * Returns the URI of the public type index document
27794
+ * @since 0.24.0
27795
+ */
27796
+ getPublicTypeIndex() {
27797
+ return this.profileQuery.queryPublicTypeIndex()?.value;
27798
+ }
27799
+ /**
27800
+ * Returns the URI of the private type index document
27801
+ * @since 0.24.0
27802
+ */
27803
+ getPrivateTypeIndex() {
27804
+ const preferences = this.profileQuery.queryPreferencesFile();
27805
+ if (!preferences) return void 0;
27806
+ const query4 = this.store.preferencesQuery(this.webId, preferences);
27807
+ return query4.queryPrivateTypeIndex()?.value;
27808
+ }
27809
+ /**
27810
+ * Returns the URIs of the private label indexes
27811
+ */
27812
+ getPrivateLabelIndexes() {
27813
+ const profileNodes = this.store.each(
27814
+ namedNode(this.webId),
27815
+ namedNode("http://www.w3.org/ns/solid/terms#privateLabelIndex"),
27816
+ void 0,
27817
+ namedNode(this.webId).doc()
27818
+ );
27819
+ const preferences = this.getPreferencesFile();
27820
+ if (preferences) {
27821
+ const preferencesNodes = this.store.each(
27822
+ namedNode(this.webId),
27823
+ namedNode("http://www.w3.org/ns/solid/terms#privateLabelIndex"),
27824
+ void 0,
27825
+ namedNode(preferences)
27826
+ );
27827
+ return [...profileNodes, ...preferencesNodes].map((it) => it.value);
27828
+ } else {
27829
+ return profileNodes.map((it) => it.value);
27830
+ }
27831
+ }
27832
+ };
27833
+
27834
+ // src/profile/ProfileGateway.ts
27835
+ var ProfileGateway = class {
27836
+ constructor(store) {
27837
+ this.store = store;
27838
+ }
27839
+ /**
27840
+ * Fetches the profile for the given WebID and all linked documents
27841
+ * @since 0.24.0
27842
+ * @param webId The WebID to fetch the profile for
27843
+ * @returns {Promise<WebIdProfile>} The fetched profile
27844
+ */
27845
+ async fetchProfile(webId) {
27846
+ await this.store.fetch(webId);
27847
+ const profile2 = this.store.get(webId).assume(WebIdProfile);
27848
+ const preferences = profile2.getPreferencesFile();
27849
+ if (preferences) {
27850
+ try {
27851
+ await this.store.fetch(preferences);
27852
+ } catch (error4) {
27853
+ console.warn(`Failed to fetch preferences file ${preferences}:`, error4);
27854
+ }
27855
+ }
27856
+ const publicTypeIndex2 = profile2.getPublicTypeIndex();
27857
+ const privateTypeIndex2 = profile2.getPrivateTypeIndex();
27858
+ await this.store.fetchAll(
27859
+ [privateTypeIndex2, publicTypeIndex2].filter((it) => it !== void 0)
27860
+ );
27861
+ return profile2;
27862
+ }
27863
+ };
27864
+
27865
+ // src/search/SearchIndex.ts
27866
+ var import_lunr = __toESM(require_lunr(), 1);
27867
+ var SearchIndex = class {
27868
+ constructor(labelIndexes) {
27869
+ this.labelIndexes = labelIndexes;
27870
+ this.index = this.rebuild().index;
27871
+ }
27872
+ /**
27873
+ * Recreates the search index with the current data from all label indexes
27874
+ */
27875
+ rebuild() {
27876
+ const labelIndexes = this.labelIndexes;
27877
+ this.index = (0, import_lunr.default)(function() {
27878
+ this.ref("uri");
27879
+ this.field("uri");
27880
+ this.field("label");
27881
+ this.metadataWhitelist = ["position"];
27882
+ const items2 = labelIndexes.flatMap((it) => it.getIndexedItems());
27883
+ items2.forEach((item4) => {
27884
+ this.add({
27885
+ uri: item4.uri,
27886
+ label: item4.label
27887
+ });
27888
+ });
27889
+ });
27890
+ return this;
27891
+ }
27892
+ /**
27893
+ * Search the index for a given term. It finds partial matches, but will rank exact matches higher.
27894
+ *
27895
+ * The rank order is:
27896
+ *
27897
+ * 1. exact matches
27898
+ * 2. prefix matches
27899
+ * 3. suffix matches
27900
+ * 4. any matches inside a literal
27901
+ *
27902
+ * @param term The (partial) term to search for
27903
+ * @param maxResults The maximum number of results to return (defaults to 10)
27904
+ */
27905
+ search(term3, maxResults = 10) {
27906
+ const escapedTerm = term3.replace(/[~^+:]/g, (x) => `\\${x}`);
27907
+ return this.index.search(
27908
+ `${escapedTerm}^100 ${escapedTerm}*^20 *${escapedTerm}^10 *${escapedTerm}*^5`
27909
+ ).slice(0, maxResults);
27910
+ }
27911
+ /**
27912
+ * Remove all data from the search index.
27913
+ */
27914
+ clear() {
27915
+ this.index = (0, import_lunr.default)(() => {
27916
+ });
27917
+ }
27918
+ };
27919
+
27920
+ // src/rdf-document/RdfDocument.ts
27921
+ var RdfDocument = class extends Thing {
27922
+ constructor(uri6, store, editable = false) {
27923
+ super(uri6, store, editable);
27924
+ this.uri = uri6;
27925
+ this.store = store;
27926
+ this.editable = editable;
27927
+ }
27928
+ subjects() {
27929
+ const matches = this.store.statementsMatching(
27930
+ null,
27931
+ null,
27932
+ null,
27933
+ namedNode(this.uri)
27934
+ );
27935
+ const uris = matches.filter((match) => isNamedNode(match.subject)).map((match) => match.subject.value);
27936
+ const uniqueUris = new Set(uris);
27937
+ uniqueUris.delete(this.uri);
27938
+ return [...uniqueUris].map((uri6) => ({
27939
+ uri: uri6
27940
+ }));
27941
+ }
27942
+ };
27943
+
27944
+ // src/search/LabelIndex.ts
27945
+ var LabelIndex = class extends RdfDocument {
27946
+ constructor(uri6, store, editable = false) {
27947
+ super(uri6, store, editable);
27948
+ this.uri = uri6;
27949
+ this.store = store;
27950
+ this.editable = editable;
27951
+ }
27952
+ /**
27953
+ * Returns the URIs and labels for all the things listed in the document.
27954
+ */
27955
+ getIndexedItems() {
27956
+ const matches = this.store.statementsMatching(
27957
+ null,
27958
+ rdfs("label"),
27959
+ null,
27960
+ namedNode(this.uri)
27961
+ );
27962
+ return matches.map((it) => {
27963
+ return {
27964
+ uri: it.subject.value,
27965
+ label: it.object.value
27966
+ };
27967
+ });
27968
+ }
27969
+ contains(uri6) {
27970
+ return this.store.holds(namedNode(uri6), rdfs("label"), null, namedNode(this.uri));
27971
+ }
27972
+ };
27973
+
27777
27974
  // node_modules/@solid-data-modules/rdflib-utils/dist/web-operations/executeUpdate.js
27778
27975
  async function executeUpdate(fetcher2, updater, operation3) {
27779
27976
  await updater.updateMany(operation3.deletions, operation3.insertions);
@@ -27841,207 +28038,6 @@ var ProfileQuery = class {
27841
28038
  var import_short_unique_id = __toESM(require_short_unique_id(), 1);
27842
28039
  new import_short_unique_id.default({ length: 10 });
27843
28040
 
27844
- // src/profile/WebIdProfile.ts
27845
- var WebIdProfile = class extends Thing {
27846
- constructor(webId, store, editable = false) {
27847
- super(webId, store, editable);
27848
- this.webId = webId;
27849
- this.store = store;
27850
- this.editable = editable;
27851
- this.profileQuery = new ProfileQuery(namedNode(this.webId), this.store);
27852
- }
27853
- /**
27854
- * Returns the URI of the preferences document
27855
- */
27856
- getPreferencesFile() {
27857
- return this.profileQuery.queryPreferencesFile()?.value;
27858
- }
27859
- /**
27860
- * Returns the URI of the public type index document
27861
- * @since 0.24.0
27862
- */
27863
- getPublicTypeIndex() {
27864
- return this.profileQuery.queryPublicTypeIndex()?.value;
27865
- }
27866
- /**
27867
- * Returns the URI of the private type index document
27868
- * @since 0.24.0
27869
- */
27870
- getPrivateTypeIndex() {
27871
- const preferences = this.profileQuery.queryPreferencesFile();
27872
- if (!preferences) return void 0;
27873
- const query4 = new PreferencesQuery(
27874
- this.store,
27875
- namedNode(this.webId),
27876
- preferences
27877
- );
27878
- return query4.queryPrivateTypeIndex()?.value;
27879
- }
27880
- /**
27881
- * Returns the URIs of the private label indexes
27882
- */
27883
- getPrivateLabelIndexes() {
27884
- const profileNodes = this.store.each(
27885
- namedNode(this.webId),
27886
- namedNode("http://www.w3.org/ns/solid/terms#privateLabelIndex"),
27887
- void 0,
27888
- namedNode(this.webId).doc()
27889
- );
27890
- const preferences = this.getPreferencesFile();
27891
- if (preferences) {
27892
- const preferencesNodes = this.store.each(
27893
- namedNode(this.webId),
27894
- namedNode("http://www.w3.org/ns/solid/terms#privateLabelIndex"),
27895
- void 0,
27896
- namedNode(preferences)
27897
- );
27898
- return [...profileNodes, ...preferencesNodes].map((it) => it.value);
27899
- } else {
27900
- return profileNodes.map((it) => it.value);
27901
- }
27902
- }
27903
- };
27904
-
27905
- // src/profile/ProfileGateway.ts
27906
- var ProfileGateway = class {
27907
- constructor(store) {
27908
- this.store = store;
27909
- }
27910
- /**
27911
- * Fetches the profile for the given WebID and all linked documents
27912
- * @since 0.24.0
27913
- * @param webId The WebID to fetch the profile for
27914
- * @returns {Promise<WebIdProfile>} The fetched profile
27915
- */
27916
- async fetchProfile(webId) {
27917
- await this.store.fetch(webId);
27918
- const profile2 = this.store.get(webId).assume(WebIdProfile);
27919
- const preferences = profile2.getPreferencesFile();
27920
- if (preferences) {
27921
- try {
27922
- await this.store.fetch(preferences);
27923
- } catch (error4) {
27924
- console.warn(`Failed to fetch preferences file ${preferences}:`, error4);
27925
- }
27926
- }
27927
- const publicTypeIndex2 = profile2.getPublicTypeIndex();
27928
- const privateTypeIndex2 = profile2.getPrivateTypeIndex();
27929
- await this.store.fetchAll(
27930
- [privateTypeIndex2, publicTypeIndex2].filter((it) => it !== void 0)
27931
- );
27932
- return profile2;
27933
- }
27934
- };
27935
-
27936
- // src/search/SearchIndex.ts
27937
- var import_lunr = __toESM(require_lunr(), 1);
27938
- var SearchIndex = class {
27939
- constructor(labelIndexes) {
27940
- this.labelIndexes = labelIndexes;
27941
- this.index = this.rebuild().index;
27942
- }
27943
- /**
27944
- * Recreates the search index with the current data from all label indexes
27945
- */
27946
- rebuild() {
27947
- const labelIndexes = this.labelIndexes;
27948
- this.index = (0, import_lunr.default)(function() {
27949
- this.ref("uri");
27950
- this.field("uri");
27951
- this.field("label");
27952
- this.metadataWhitelist = ["position"];
27953
- const items2 = labelIndexes.flatMap((it) => it.getIndexedItems());
27954
- items2.forEach((item4) => {
27955
- this.add({
27956
- uri: item4.uri,
27957
- label: item4.label
27958
- });
27959
- });
27960
- });
27961
- return this;
27962
- }
27963
- /**
27964
- * Search the index for a given term. It finds partial matches, but will rank exact matches higher.
27965
- *
27966
- * The rank order is:
27967
- *
27968
- * 1. exact matches
27969
- * 2. prefix matches
27970
- * 3. suffix matches
27971
- * 4. any matches inside a literal
27972
- *
27973
- * @param term The (partial) term to search for
27974
- * @param maxResults The maximum number of results to return (defaults to 10)
27975
- */
27976
- search(term3, maxResults = 10) {
27977
- const escapedTerm = term3.replace(/[~^+:]/g, (x) => `\\${x}`);
27978
- return this.index.search(
27979
- `${escapedTerm}^100 ${escapedTerm}*^20 *${escapedTerm}^10 *${escapedTerm}*^5`
27980
- ).slice(0, maxResults);
27981
- }
27982
- /**
27983
- * Remove all data from the search index.
27984
- */
27985
- clear() {
27986
- this.index = (0, import_lunr.default)(() => {
27987
- });
27988
- }
27989
- };
27990
-
27991
- // src/rdf-document/RdfDocument.ts
27992
- var RdfDocument = class extends Thing {
27993
- constructor(uri6, store, editable = false) {
27994
- super(uri6, store, editable);
27995
- this.uri = uri6;
27996
- this.store = store;
27997
- this.editable = editable;
27998
- }
27999
- subjects() {
28000
- const matches = this.store.statementsMatching(
28001
- null,
28002
- null,
28003
- null,
28004
- namedNode(this.uri)
28005
- );
28006
- const uris = matches.filter((match) => isNamedNode(match.subject)).map((match) => match.subject.value);
28007
- const uniqueUris = new Set(uris);
28008
- uniqueUris.delete(this.uri);
28009
- return [...uniqueUris].map((uri6) => ({
28010
- uri: uri6
28011
- }));
28012
- }
28013
- };
28014
-
28015
- // src/search/LabelIndex.ts
28016
- var LabelIndex = class extends RdfDocument {
28017
- constructor(uri6, store, editable = false) {
28018
- super(uri6, store, editable);
28019
- this.uri = uri6;
28020
- this.store = store;
28021
- this.editable = editable;
28022
- }
28023
- /**
28024
- * Returns the URIs and labels for all the things listed in the document.
28025
- */
28026
- getIndexedItems() {
28027
- const matches = this.store.statementsMatching(
28028
- null,
28029
- rdfs("label"),
28030
- null,
28031
- namedNode(this.uri)
28032
- );
28033
- return matches.map((it) => {
28034
- return {
28035
- uri: it.subject.value,
28036
- label: it.object.value
28037
- };
28038
- });
28039
- }
28040
- contains(uri6) {
28041
- return this.store.holds(namedNode(uri6), rdfs("label"), null, namedNode(this.uri));
28042
- }
28043
- };
28044
-
28045
28041
  // src/search/createDefaultLabelIndex.ts
28046
28042
  function createDefaultLabelIndex(profile2) {
28047
28043
  const webId = namedNode(profile2.webId);
@@ -28242,7 +28238,7 @@ var Store = class {
28242
28238
  */
28243
28239
  get(uri6) {
28244
28240
  const editable = !!this.updater.editable(uri6);
28245
- return new Thing(uri6, this.internalStore, editable);
28241
+ return new Thing(uri6, this, editable);
28246
28242
  }
28247
28243
  /**
28248
28244
  * Adds a new value to the property of the given thing
@@ -28325,6 +28321,139 @@ var Store = class {
28325
28321
  distinctUntilChanged((prev2, curr) => prev2.length == curr.length)
28326
28322
  );
28327
28323
  }
28324
+ /**
28325
+ * Finds types of the given resource
28326
+ *
28327
+ * @param {string|NamedNode|BlankNode} uri String or RDF/JS object
28328
+ * @returns {string[]} An array of URIs of types
28329
+ */
28330
+ findTypes(uri6) {
28331
+ if (typeof uri6 === "string") uri6 = namedNode(uri6);
28332
+ return Object.keys(this.internalStore.findTypeURIs(uri6));
28333
+ }
28334
+ /**
28335
+ * Determines whether the store includes a certain quad pattern, returning true or false as appropriate.
28336
+ *
28337
+ * @param {Quad_Subject|null|undefined} subject
28338
+ * @param {Quad_Predicate|null|undefined} predicate
28339
+ * @param {Quad_Object|null|undefined} object
28340
+ * @param {Quad_Graph|null|undefined} graph
28341
+ * @returns {boolean} Whether the store includes the quad pattern
28342
+ */
28343
+ holds(subject8, predicate4, object8, graph3) {
28344
+ return this.internalStore.holds(subject8, predicate4, object8, graph3);
28345
+ }
28346
+ /**
28347
+ * Statements matching the provided quad pattern
28348
+ *
28349
+ * @param {Quad_Subject|null|undefined} subject
28350
+ * @param {Quad_Predicate|null|undefined} predicate
28351
+ * @param {Quad_Object|null|undefined} object
28352
+ * @param {Quad_Graph|null|undefined} graph
28353
+ * @returns {Quad[]} Array of statements
28354
+ */
28355
+ statementsMatching(subject8, predicate4, object8, graph3) {
28356
+ return this.internalStore.statementsMatching(
28357
+ subject8,
28358
+ predicate4,
28359
+ object8,
28360
+ graph3
28361
+ );
28362
+ }
28363
+ /**
28364
+ * RDF/JS terms matching the first wildcard in the provided quad pattern
28365
+ *
28366
+ * @param {Quad_Subject|null|undefined} subject
28367
+ * @param {Quad_Predicate|null|undefined} predicate
28368
+ * @param {Quad_Object|null|undefined} object
28369
+ * @param {Quad_Graph|null|undefined} graph
28370
+ * @returns {Term[]} Array of terms
28371
+ */
28372
+ each(subject8, predicate4, object8, graph3) {
28373
+ const statements = this.statementsMatching(
28374
+ subject8,
28375
+ predicate4,
28376
+ object8,
28377
+ graph3
28378
+ );
28379
+ if (!subject8) {
28380
+ return statements.map((statement2) => statement2.subject);
28381
+ } else if (!predicate4) {
28382
+ return statements.map((statement2) => statement2.predicate);
28383
+ } else if (!object8) {
28384
+ return statements.map((statement2) => statement2.object);
28385
+ } else if (!graph3) {
28386
+ return statements.map((statement2) => statement2.graph);
28387
+ }
28388
+ throw new Error("No wildcard specified");
28389
+ }
28390
+ /**
28391
+ * Any one RDF/JS term matching the first wildcard in the provided quad pattern
28392
+ *
28393
+ * @param {Quad_Subject|null|undefined} subject
28394
+ * @param {Quad_Predicate|null|undefined} predicate
28395
+ * @param {Quad_Object|null|undefined} object
28396
+ * @param {Quad_Graph|null|undefined} graph
28397
+ * @returns {Term | null} RDF/JS term
28398
+ */
28399
+ any(subject8, predicate4, object8, graph3) {
28400
+ const justOne = true;
28401
+ const statements = this.internalStore.statementsMatching(
28402
+ subject8,
28403
+ predicate4,
28404
+ object8,
28405
+ graph3,
28406
+ justOne
28407
+ );
28408
+ if (statements.length == 0) return null;
28409
+ if (!subject8) {
28410
+ return statements[0].subject;
28411
+ } else if (!predicate4) {
28412
+ return statements[0].predicate;
28413
+ } else if (!object8) {
28414
+ return statements[0].object;
28415
+ } else if (!graph3) {
28416
+ return statements[0].graph;
28417
+ }
28418
+ throw new Error("No wildcard specified");
28419
+ }
28420
+ /**
28421
+ * Value of any one RDF/JS term matching the first wildcard in the provided quad pattern
28422
+ *
28423
+ * @param {Quad_Subject|null|undefined} subject
28424
+ * @param {Quad_Predicate|null|undefined} predicate
28425
+ * @param {Quad_Object|null|undefined} object
28426
+ * @param {Quad_Graph|null|undefined} graph
28427
+ * @returns {string | undefined} value of RDF/JS term
28428
+ */
28429
+ anyValue(subject8, predicate4, object8, graph3) {
28430
+ return this.any(subject8, predicate4, object8, graph3)?.value;
28431
+ }
28432
+ /**
28433
+ * Create a query to fetch information from a user's preferences file
28434
+ *
28435
+ * @param webId
28436
+ * @param preferencesDoc
28437
+ * @returns {PreferencesQuery} PreferencesQuery instance. See [@solid-data-modules/rdflib-utils
28438
+ ](https://solid-contrib.github.io/data-modules/rdflib-utils/classes/index.PreferencesQuery.html)
28439
+ */
28440
+ preferencesQuery(webId, preferencesDoc) {
28441
+ if (typeof webId === "string") webId = namedNode(webId);
28442
+ if (typeof preferencesDoc === "string")
28443
+ preferencesDoc = namedNode(preferencesDoc);
28444
+ return new PreferencesQuery(this.internalStore, webId, preferencesDoc);
28445
+ }
28446
+ /**
28447
+ * Create a query to fetch information from a user's profile document
28448
+ *
28449
+ * @param webId
28450
+ * @returns {ProfileQuery} ProfileQuery instance. See [@solid-data-modules/rdflib-utils
28451
+ ](https://solid-contrib.github.io/data-modules/rdflib-utils/classes/index.ProfileQuery.html)
28452
+ */
28453
+ profileQuery(webId) {
28454
+ if (typeof webId === "string") webId = namedNode(webId);
28455
+ return new ProfileQuery(webId, this.internalStore);
28456
+ }
28328
28457
  };
28329
28458
 
28330
28459
  // ../node_modules/rdf-namespaces/dist/index.es.js
@@ -38264,7 +38393,7 @@ var langString = "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString";
38264
38393
  var PlainLiteral = "http://www.w3.org/1999/02/22-rdf-syntax-ns#PlainLiteral";
38265
38394
  var type4 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#type";
38266
38395
  var Property2 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Property";
38267
- var Statement2 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement";
38396
+ var Statement3 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement";
38268
38397
  var subject5 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#subject";
38269
38398
  var predicate = "http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate";
38270
38399
  var object3 = "http://www.w3.org/1999/02/22-rdf-syntax-ns#object";
@@ -38286,7 +38415,7 @@ var rdfImport = /* @__PURE__ */ Object.freeze({
38286
38415
  PlainLiteral,
38287
38416
  type: type4,
38288
38417
  Property: Property2,
38289
- Statement: Statement2,
38418
+ Statement: Statement3,
38290
38419
  subject: subject5,
38291
38420
  predicate,
38292
38421
  object: object3,
@@ -39163,7 +39292,7 @@ var SportsTeam = "http://schema.org/SportsTeam";
39163
39292
  var SpreadsheetDigitalDocument = "http://schema.org/SpreadsheetDigitalDocument";
39164
39293
  var StadiumOrArena = "http://schema.org/StadiumOrArena";
39165
39294
  var State = "http://schema.org/State";
39166
- var Statement3 = "http://schema.org/Statement";
39295
+ var Statement4 = "http://schema.org/Statement";
39167
39296
  var StatisticalPopulation = "http://schema.org/StatisticalPopulation";
39168
39297
  var StatisticalVariable = "http://schema.org/StatisticalVariable";
39169
39298
  var StatusEnumeration = "http://schema.org/StatusEnumeration";
@@ -41602,7 +41731,7 @@ var schemaImport = /* @__PURE__ */ Object.freeze({
41602
41731
  SpreadsheetDigitalDocument,
41603
41732
  StadiumOrArena,
41604
41733
  State,
41605
- Statement: Statement3,
41734
+ Statement: Statement4,
41606
41735
  StatisticalPopulation,
41607
41736
  StatisticalVariable,
41608
41737
  StatusEnumeration,
@@ -44043,7 +44172,7 @@ var SportsTeam2 = "https://schema.org/SportsTeam";
44043
44172
  var SpreadsheetDigitalDocument2 = "https://schema.org/SpreadsheetDigitalDocument";
44044
44173
  var StadiumOrArena2 = "https://schema.org/StadiumOrArena";
44045
44174
  var State2 = "https://schema.org/State";
44046
- var Statement4 = "https://schema.org/Statement";
44175
+ var Statement5 = "https://schema.org/Statement";
44047
44176
  var StatisticalPopulation2 = "https://schema.org/StatisticalPopulation";
44048
44177
  var StatisticalVariable2 = "https://schema.org/StatisticalVariable";
44049
44178
  var StatusEnumeration2 = "https://schema.org/StatusEnumeration";
@@ -46482,7 +46611,7 @@ var schema_httpsImport = /* @__PURE__ */ Object.freeze({
46482
46611
  SpreadsheetDigitalDocument: SpreadsheetDigitalDocument2,
46483
46612
  StadiumOrArena: StadiumOrArena2,
46484
46613
  State: State2,
46485
- Statement: Statement4,
46614
+ Statement: Statement5,
46486
46615
  StatisticalPopulation: StatisticalPopulation2,
46487
46616
  StatisticalVariable: StatisticalVariable2,
46488
46617
  StatusEnumeration: StatusEnumeration2,
@@ -49661,6 +49790,181 @@ async function loadModule(moduleName, store) {
49661
49790
  return store.loadModule(module3);
49662
49791
  }
49663
49792
 
49793
+ // ../node_modules/url-template/lib/url-template.js
49794
+ function encodeReserved(str) {
49795
+ return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part3) {
49796
+ if (!/%[0-9A-Fa-f]/.test(part3)) {
49797
+ part3 = encodeURI(part3).replace(/%5B/g, "[").replace(/%5D/g, "]");
49798
+ }
49799
+ return part3;
49800
+ }).join("");
49801
+ }
49802
+ function encodeUnreserved(str) {
49803
+ return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
49804
+ return "%" + c.charCodeAt(0).toString(16).toUpperCase();
49805
+ });
49806
+ }
49807
+ function encodeValue(operator2, value7, key3) {
49808
+ value7 = operator2 === "+" || operator2 === "#" ? encodeReserved(value7) : encodeUnreserved(value7);
49809
+ if (key3) {
49810
+ return encodeUnreserved(key3) + "=" + value7;
49811
+ } else {
49812
+ return value7;
49813
+ }
49814
+ }
49815
+ function isDefined(value7) {
49816
+ return value7 !== void 0 && value7 !== null;
49817
+ }
49818
+ function isKeyOperator(operator2) {
49819
+ return operator2 === ";" || operator2 === "&" || operator2 === "?";
49820
+ }
49821
+ function getValues(context4, operator2, key3, modifier2) {
49822
+ var value7 = context4[key3], result6 = [];
49823
+ if (isDefined(value7) && value7 !== "") {
49824
+ if (typeof value7 === "string" || typeof value7 === "number" || typeof value7 === "boolean") {
49825
+ value7 = value7.toString();
49826
+ if (modifier2 && modifier2 !== "*") {
49827
+ value7 = value7.substring(0, parseInt(modifier2, 10));
49828
+ }
49829
+ result6.push(encodeValue(operator2, value7, isKeyOperator(operator2) ? key3 : null));
49830
+ } else {
49831
+ if (modifier2 === "*") {
49832
+ if (Array.isArray(value7)) {
49833
+ value7.filter(isDefined).forEach(function(value8) {
49834
+ result6.push(encodeValue(operator2, value8, isKeyOperator(operator2) ? key3 : null));
49835
+ });
49836
+ } else {
49837
+ Object.keys(value7).forEach(function(k) {
49838
+ if (isDefined(value7[k])) {
49839
+ result6.push(encodeValue(operator2, value7[k], k));
49840
+ }
49841
+ });
49842
+ }
49843
+ } else {
49844
+ var tmp = [];
49845
+ if (Array.isArray(value7)) {
49846
+ value7.filter(isDefined).forEach(function(value8) {
49847
+ tmp.push(encodeValue(operator2, value8));
49848
+ });
49849
+ } else {
49850
+ Object.keys(value7).forEach(function(k) {
49851
+ if (isDefined(value7[k])) {
49852
+ tmp.push(encodeUnreserved(k));
49853
+ tmp.push(encodeValue(operator2, value7[k].toString()));
49854
+ }
49855
+ });
49856
+ }
49857
+ if (isKeyOperator(operator2)) {
49858
+ result6.push(encodeUnreserved(key3) + "=" + tmp.join(","));
49859
+ } else if (tmp.length !== 0) {
49860
+ result6.push(tmp.join(","));
49861
+ }
49862
+ }
49863
+ }
49864
+ } else {
49865
+ if (operator2 === ";") {
49866
+ if (isDefined(value7)) {
49867
+ result6.push(encodeUnreserved(key3));
49868
+ }
49869
+ } else if (value7 === "" && (operator2 === "&" || operator2 === "?")) {
49870
+ result6.push(encodeUnreserved(key3) + "=");
49871
+ } else if (value7 === "") {
49872
+ result6.push("");
49873
+ }
49874
+ }
49875
+ return result6;
49876
+ }
49877
+ function parseTemplate(template3) {
49878
+ var operators = ["+", "#", ".", "/", ";", "?", "&"];
49879
+ return {
49880
+ expand: function(context4) {
49881
+ return template3.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, function(_, expression4, literal4) {
49882
+ if (expression4) {
49883
+ var operator2 = null, values2 = [];
49884
+ if (operators.indexOf(expression4.charAt(0)) !== -1) {
49885
+ operator2 = expression4.charAt(0);
49886
+ expression4 = expression4.substr(1);
49887
+ }
49888
+ expression4.split(/,/g).forEach(function(variable5) {
49889
+ var tmp = /([^:\*]*)(?::(\d+)|(\*))?/.exec(variable5);
49890
+ values2.push.apply(values2, getValues(context4, operator2, tmp[1], tmp[2] || tmp[3]));
49891
+ });
49892
+ if (operator2 && operator2 !== "+") {
49893
+ var separator = ",";
49894
+ if (operator2 === "?") {
49895
+ separator = "&";
49896
+ } else if (operator2 !== "#") {
49897
+ separator = operator2;
49898
+ }
49899
+ return (values2.length !== 0 ? operator2 : "") + values2.join(separator);
49900
+ } else {
49901
+ return values2.join(",");
49902
+ }
49903
+ } else {
49904
+ return encodeReserved(literal4);
49905
+ }
49906
+ });
49907
+ }
49908
+ };
49909
+ }
49910
+
49911
+ // src/open-with/apps.ts
49912
+ var APPS = {
49913
+ DATA_BROWSER: {
49914
+ name: "Data Browser (SolidOS)",
49915
+ urlTemplate: parseTemplate(
49916
+ "https://solidos.github.io/mashlib/dist/browse.html{?uri}"
49917
+ )
49918
+ },
49919
+ PENNY: {
49920
+ name: "Penny",
49921
+ urlTemplate: parseTemplate(
49922
+ "https://penny.vincenttunru.com/explore/?url={uri}"
49923
+ )
49924
+ },
49925
+ SOLID_FILE_MANAGER: {
49926
+ name: "Solid File Manager",
49927
+ urlTemplate: parseTemplate(
49928
+ "https://otto-aa.github.io/solid-filemanager/?url={uri}"
49929
+ )
49930
+ },
49931
+ UMAI: {
49932
+ name: "Umai",
49933
+ urlTemplate: parseTemplate(
49934
+ "https://umai.noeldemartin.com/viewer?url={uri}"
49935
+ )
49936
+ },
49937
+ DOKIELI: {
49938
+ name: "dokieli",
49939
+ urlTemplate: parseTemplate("https://dokie.li/#open={uri}")
49940
+ },
49941
+ DOKIELI_GRAPH: {
49942
+ name: "dokieli Graph",
49943
+ urlTemplate: parseTemplate("https://dokie.li/#graph={uri}")
49944
+ },
49945
+ POD_OS_CONTACTS: {
49946
+ name: "PodOS Contacts",
49947
+ urlTemplate: parseTemplate(
49948
+ "https://contacts.pod-os.org/address-book{?uri}"
49949
+ )
49950
+ }
49951
+ };
49952
+
49953
+ // src/open-with/proposeAppsFor.ts
49954
+ var appRegistrations = {
49955
+ "http://www.w3.org/ns/ldp#Container": [APPS.SOLID_FILE_MANAGER],
49956
+ "http://schema.org/Recipe": [APPS.UMAI],
49957
+ "https://schema.org/Recipe": [APPS.UMAI],
49958
+ "http://www.w3.org/2007/ont/link#RDFDocument": [APPS.DOKIELI_GRAPH],
49959
+ "http://www.w3.org/ns/iana/media-types/text/html#Resource": [APPS.DOKIELI],
49960
+ "http://www.w3.org/2006/vcard/ns#AddressBook": [APPS.POD_OS_CONTACTS]
49961
+ };
49962
+ function proposeAppsFor(thing) {
49963
+ const apps = [APPS.DATA_BROWSER, APPS.PENNY];
49964
+ const appsForType = thing.types().flatMap((it) => appRegistrations[it.uri]).filter((it) => it !== void 0);
49965
+ return [...apps, ...appsForType];
49966
+ }
49967
+
49664
49968
  // src/type-index/TypeIndex.ts
49665
49969
  var TypeIndex2 = class extends Thing {
49666
49970
  constructor(uri6, store, editable = false) {
@@ -49849,6 +50153,14 @@ var PodOS = class {
49849
50153
  attachments() {
49850
50154
  return this.attachmentGateway;
49851
50155
  }
50156
+ /**
50157
+ * Propose matching apps to open a thing
50158
+ * @param thing - The thing to open
50159
+ * @returns An array of apps that can open the thing. The array is empty if no apps are found.
50160
+ */
50161
+ proposeAppsFor(thing) {
50162
+ return proposeAppsFor(thing);
50163
+ }
49852
50164
  };
49853
50165
  /*! Bundled license information:
49854
50166