@pod-os/elements 0.29.1-rc.c8e652b.0 → 0.29.1-rc.d6d1332.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 (78) hide show
  1. package/dist/cjs/{app-globals-97a7ec18.js → app-globals-92c0c4ce.js} +3 -1
  2. package/dist/cjs/app-globals-92c0c4ce.js.map +1 -0
  3. package/dist/cjs/chunk.3Y6SB6QS-10eff6c1.js +31 -0
  4. package/dist/cjs/chunk.3Y6SB6QS-10eff6c1.js.map +1 -0
  5. package/dist/cjs/elements.cjs.js +3 -2
  6. package/dist/cjs/elements.cjs.js.map +1 -1
  7. package/dist/cjs/{ion-icon_32.cjs.entry.js → ion-icon_33.cjs.entry.js} +136 -120
  8. package/dist/cjs/ion-icon_33.cjs.entry.js.map +1 -0
  9. package/dist/cjs/loader.cjs.js +3 -2
  10. package/dist/cjs/loader.cjs.js.map +1 -1
  11. package/dist/collection/apps/pos-app-browser/pos-app-browser.css +3 -0
  12. package/dist/collection/collection-manifest.json +1 -0
  13. package/dist/collection/components/pos-tool-select/pos-tool-select.css +51 -0
  14. package/dist/collection/components/pos-tool-select/pos-tool-select.js +55 -0
  15. package/dist/collection/components/pos-tool-select/pos-tool-select.js.map +1 -0
  16. package/dist/collection/components/pos-tool-select/shoelace.js +2 -0
  17. package/dist/collection/components/pos-tool-select/shoelace.js.map +1 -0
  18. package/dist/collection/components/pos-type-router/pos-type-router.css +14 -0
  19. package/dist/collection/components/pos-type-router/pos-type-router.js +14 -3
  20. package/dist/collection/components/pos-type-router/pos-type-router.js.map +1 -1
  21. package/dist/collection/components/pos-type-router/selectToolsForTypes.js +47 -0
  22. package/dist/collection/components/pos-type-router/selectToolsForTypes.js.map +1 -0
  23. package/dist/collection/global.js +2 -0
  24. package/dist/collection/global.js.map +1 -1
  25. package/dist/components/chunk.3Y6SB6QS.js +28 -0
  26. package/dist/components/chunk.3Y6SB6QS.js.map +1 -0
  27. package/dist/components/chunk.HVTXQL7M.js +24 -598
  28. package/dist/components/chunk.HVTXQL7M.js.map +1 -1
  29. package/dist/components/chunk.YHLNUJ7P.js +556 -0
  30. package/dist/components/chunk.YHLNUJ7P.js.map +1 -0
  31. package/dist/components/index.js +2 -0
  32. package/dist/components/index.js.map +1 -1
  33. package/dist/components/pos-app-browser.js +65 -59
  34. package/dist/components/pos-app-browser.js.map +1 -1
  35. package/dist/components/pos-make-findable2.js +1 -0
  36. package/dist/components/pos-make-findable2.js.map +1 -1
  37. package/dist/components/pos-tool-select.d.ts +11 -0
  38. package/dist/components/pos-tool-select.js +8 -0
  39. package/dist/components/pos-tool-select.js.map +1 -0
  40. package/dist/components/pos-tool-select2.js +43 -0
  41. package/dist/components/pos-tool-select2.js.map +1 -0
  42. package/dist/components/pos-type-router2.js +43 -18
  43. package/dist/components/pos-type-router2.js.map +1 -1
  44. package/dist/components/pos-user-menu2.js +2 -1
  45. package/dist/components/pos-user-menu2.js.map +1 -1
  46. package/dist/elements/elements.esm.js +1 -1
  47. package/dist/elements/elements.esm.js.map +1 -1
  48. package/dist/elements/{p-d303d82c.entry.js → p-20c36eb6.entry.js} +48 -48
  49. package/dist/elements/p-20c36eb6.entry.js.map +1 -0
  50. package/dist/elements/p-36a54274.js +2 -0
  51. package/dist/elements/p-36a54274.js.map +1 -0
  52. package/dist/elements/p-c066fd50.js +2 -0
  53. package/dist/elements/p-c066fd50.js.map +1 -0
  54. package/dist/esm/{app-globals-fd9221d0.js → app-globals-64c60cb2.js} +3 -1
  55. package/dist/esm/app-globals-64c60cb2.js.map +1 -0
  56. package/dist/esm/chunk.3Y6SB6QS-ff2f5b55.js +28 -0
  57. package/dist/esm/chunk.3Y6SB6QS-ff2f5b55.js.map +1 -0
  58. package/dist/esm/elements.js +3 -2
  59. package/dist/esm/elements.js.map +1 -1
  60. package/dist/esm/{ion-icon_32.entry.js → ion-icon_33.entry.js} +135 -120
  61. package/dist/esm/ion-icon_33.entry.js.map +1 -0
  62. package/dist/esm/loader.js +3 -2
  63. package/dist/esm/loader.js.map +1 -1
  64. package/dist/types/components/pos-tool-select/pos-tool-select.d.ts +6 -0
  65. package/dist/types/components/pos-tool-select/shoelace.d.ts +1 -0
  66. package/dist/types/components/pos-type-router/selectToolsForTypes.d.ts +13 -0
  67. package/dist/types/components.d.ts +17 -0
  68. package/package.json +1 -1
  69. package/dist/cjs/app-globals-97a7ec18.js.map +0 -1
  70. package/dist/cjs/ion-icon_32.cjs.entry.js.map +0 -1
  71. package/dist/collection/components/pos-type-router/selectAppForTypes.js +0 -33
  72. package/dist/collection/components/pos-type-router/selectAppForTypes.js.map +0 -1
  73. package/dist/elements/p-61cd1259.js +0 -2
  74. package/dist/elements/p-61cd1259.js.map +0 -1
  75. package/dist/elements/p-d303d82c.entry.js.map +0 -1
  76. package/dist/esm/app-globals-fd9221d0.js.map +0 -1
  77. package/dist/esm/ion-icon_32.entry.js.map +0 -1
  78. package/dist/types/components/pos-type-router/selectAppForTypes.d.ts +0 -9
@@ -18,9 +18,79 @@ const index$5 = require('./index-cfb4dcaa.js');
18
18
  const ResourceAware = require('./ResourceAware-7b6501ae.js');
19
19
  require('./gesture-controller-85b9b0a5.js');
20
20
  const PodOsAware = require('./PodOsAware-a16ddb44.js');
21
+ const chunk_3Y6SB6QS = require('./chunk.3Y6SB6QS-10eff6c1.js');
21
22
  require('./hardware-back-button-e71c41f7.js');
22
23
  require('./framework-delegate-a257df68.js');
23
24
 
25
+ var __defProp = Object.defineProperty;
26
+ var __defProps = Object.defineProperties;
27
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
28
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
29
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
30
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
31
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
32
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
33
+ var __typeError = (msg) => {
34
+ throw TypeError(msg);
35
+ };
36
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
37
+ var __spreadValues = (a, b) => {
38
+ for (var prop in b || (b = {}))
39
+ if (__hasOwnProp.call(b, prop))
40
+ __defNormalProp(a, prop, b[prop]);
41
+ if (__getOwnPropSymbols)
42
+ for (var prop of __getOwnPropSymbols(b)) {
43
+ if (__propIsEnum.call(b, prop))
44
+ __defNormalProp(a, prop, b[prop]);
45
+ }
46
+ return a;
47
+ };
48
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
49
+ var __decorateClass = (decorators, target, key, kind) => {
50
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
51
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
52
+ if (decorator = decorators[i])
53
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
54
+ if (kind && result) __defProp(target, key, result);
55
+ return result;
56
+ };
57
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
58
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
59
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
60
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
61
+ var __await$1 = function(promise, isYieldStar) {
62
+ this[0] = promise;
63
+ this[1] = isYieldStar;
64
+ };
65
+ var __yieldStar = (value) => {
66
+ var obj = value[__knownSymbol("asyncIterator")], isAwait = false, method, it = {};
67
+ if (obj == null) {
68
+ obj = value[__knownSymbol("iterator")]();
69
+ method = (k) => it[k] = (x) => obj[k](x);
70
+ } else {
71
+ obj = obj.call(value);
72
+ method = (k) => it[k] = (v) => {
73
+ if (isAwait) {
74
+ isAwait = false;
75
+ if (k === "throw") throw v;
76
+ return v;
77
+ }
78
+ isAwait = true;
79
+ return {
80
+ done: false,
81
+ value: new __await$1(new Promise((resolve) => {
82
+ var x = obj[k](v);
83
+ if (!(x instanceof Object)) __typeError("Object expected");
84
+ resolve(x);
85
+ }), 1)
86
+ };
87
+ };
88
+ }
89
+ return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
90
+ throw x;
91
+ }, "return" in obj && method("return"), it;
92
+ };
93
+
24
94
  let CACHED_MAP;
25
95
  const getIconMap = () => {
26
96
  if (typeof window === 'undefined') {
@@ -2669,8 +2739,8 @@ function __values(o) {
2669
2739
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
2670
2740
  }
2671
2741
 
2672
- function __await$1(v) {
2673
- return this instanceof __await$1 ? (this.v = v, this) : new __await$1(v);
2742
+ function __await(v) {
2743
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
2674
2744
  }
2675
2745
 
2676
2746
  function __asyncGenerator(thisArg, _arguments, generator) {
@@ -2679,7 +2749,7 @@ function __asyncGenerator(thisArg, _arguments, generator) {
2679
2749
  return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
2680
2750
  function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
2681
2751
  function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
2682
- function step(r) { r.value instanceof __await$1 ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
2752
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
2683
2753
  function fulfill(value) { resume("next", value); }
2684
2754
  function reject(value) { resume("throw", value); }
2685
2755
  function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
@@ -2733,11 +2803,11 @@ function readableStreamLikeToAsyncGenerator(readableStream) {
2733
2803
  const reader = readableStream.getReader();
2734
2804
  try {
2735
2805
  while (true) {
2736
- const { value, done } = yield __await$1(reader.read());
2806
+ const { value, done } = yield __await(reader.read());
2737
2807
  if (done) {
2738
- return yield __await$1(void 0);
2808
+ return yield __await(void 0);
2739
2809
  }
2740
- yield yield __await$1(value);
2810
+ yield yield __await(value);
2741
2811
  }
2742
2812
  }
2743
2813
  finally {
@@ -5456,7 +5526,7 @@ const PosApp = class {
5456
5526
  }
5457
5527
  };
5458
5528
 
5459
- const posAppBrowserCss = "pos-router {\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\npos-navigation {\n max-width: var(--width-lg);\n margin: 0;\n min-width: var(--size-32);\n flex-shrink: 1; /* Ensure navigation can shrink */\n}\n\npos-add-new-thing,\npos-login {\n flex: 0 1 auto;\n flex-shrink: 0; /* Ensure those items don't shrink */\n}\n\nheader,\nfooter {\n display: flex;\n gap: var(--size-1);\n height: auto;\n justify-content: center;\n align-items: center;\n padding: var(--size-1);\n}\n\nfooter svg {\n width: var(--size-5);\n height: var(--size-5);\n}\n\nfooter {\n font-size: var(--scale-fluid-000);\n\n .settings {\n padding: 0 var(--size-1);\n text-decoration: none;\n background-color: var(--pos-background-color);\n border: 1px solid var(--pos-secondary-border-color);\n color: var(--pos-secondary-border-color);\n border-radius: var(--radius-xs);\n\n &:hover {\n background-color: var(--pos-secondary-border-color);\n color: var(--pos-background-color);\n }\n }\n}\n\nheader {\n flex-wrap: nowrap;\n padding: var(--size-1) var(--size-8);\n}\n\nmain {\n flex: 1;\n max-height: 100vh;\n overflow: auto;\n}\n\n@media (max-width: 640px) {\n header {\n padding: var(--size-1);\n justify-content: space-between;\n }\n}\n";
5529
+ const posAppBrowserCss = "pos-router {\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\npos-navigation {\n max-width: var(--width-lg);\n margin: 0;\n min-width: var(--size-32);\n flex-shrink: 1; /* Ensure navigation can shrink */\n}\n\npos-add-new-thing,\npos-login {\n flex: 0 1 auto;\n flex-shrink: 0; /* Ensure those items don't shrink */\n}\n\nheader,\nfooter {\n display: flex;\n gap: var(--size-1);\n height: auto;\n justify-content: center;\n align-items: center;\n padding: var(--size-1);\n}\n\nfooter svg {\n width: var(--size-5);\n height: var(--size-5);\n}\n\nfooter {\n font-size: var(--scale-fluid-000);\n\n .settings {\n padding: 0 var(--size-1);\n text-decoration: none;\n background-color: var(--pos-background-color);\n border: 1px solid var(--pos-secondary-border-color);\n color: var(--pos-secondary-border-color);\n border-radius: var(--radius-xs);\n\n &:hover {\n background-color: var(--pos-secondary-border-color);\n color: var(--pos-background-color);\n }\n }\n}\n\nheader {\n flex-wrap: nowrap;\n padding: var(--size-1) var(--size-8);\n}\n\nmain {\n flex: 1;\n max-height: 100vh;\n overflow: auto;\n}\n\n@media (max-width: 640px) {\n header {\n padding: var(--size-1);\n justify-content: space-between;\n }\n footer {\n display: none;\n }\n}\n";
5460
5530
  const PosAppBrowserStyle0 = posAppBrowserCss;
5461
5531
 
5462
5532
  const PosAppBrowser = class {
@@ -5876,75 +5946,6 @@ var dropdown_styles_default = i$4`
5876
5946
  }
5877
5947
  `;
5878
5948
 
5879
- var __defProp = Object.defineProperty;
5880
- var __defProps = Object.defineProperties;
5881
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5882
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5883
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5884
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5885
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5886
- var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
5887
- var __typeError = (msg) => {
5888
- throw TypeError(msg);
5889
- };
5890
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5891
- var __spreadValues = (a, b) => {
5892
- for (var prop in b || (b = {}))
5893
- if (__hasOwnProp.call(b, prop))
5894
- __defNormalProp(a, prop, b[prop]);
5895
- if (__getOwnPropSymbols)
5896
- for (var prop of __getOwnPropSymbols(b)) {
5897
- if (__propIsEnum.call(b, prop))
5898
- __defNormalProp(a, prop, b[prop]);
5899
- }
5900
- return a;
5901
- };
5902
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5903
- var __decorateClass = (decorators, target, key, kind) => {
5904
- var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
5905
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
5906
- if (decorator = decorators[i])
5907
- result = (kind ? decorator(target, key, result) : decorator(result)) || result;
5908
- if (kind && result) __defProp(target, key, result);
5909
- return result;
5910
- };
5911
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
5912
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
5913
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
5914
- var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
5915
- var __await = function(promise, isYieldStar) {
5916
- this[0] = promise;
5917
- this[1] = isYieldStar;
5918
- };
5919
- var __yieldStar = (value) => {
5920
- var obj = value[__knownSymbol("asyncIterator")], isAwait = false, method, it = {};
5921
- if (obj == null) {
5922
- obj = value[__knownSymbol("iterator")]();
5923
- method = (k) => it[k] = (x) => obj[k](x);
5924
- } else {
5925
- obj = obj.call(value);
5926
- method = (k) => it[k] = (v) => {
5927
- if (isAwait) {
5928
- isAwait = false;
5929
- if (k === "throw") throw v;
5930
- return v;
5931
- }
5932
- isAwait = true;
5933
- return {
5934
- done: false,
5935
- value: new __await(new Promise((resolve) => {
5936
- var x = obj[k](v);
5937
- if (!(x instanceof Object)) __typeError("Object expected");
5938
- resolve(x);
5939
- }), 1)
5940
- };
5941
- };
5942
- }
5943
- return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
5944
- throw x;
5945
- }, "return" in obj && method("return"), it;
5946
- };
5947
-
5948
5949
  // src/internal/active-elements.ts
5949
5950
  function* activeElements(activeElement = document.activeElement) {
5950
5951
  if (activeElement === null || activeElement === void 0) return;
@@ -10081,35 +10082,10 @@ function getTextContent(slot) {
10081
10082
  return text;
10082
10083
  }
10083
10084
 
10084
- // src/utilities/base-path.ts
10085
- var basePath = "";
10086
- function setBasePath(path) {
10087
- basePath = path;
10088
- }
10089
- function getBasePath(subpath = "") {
10090
- if (!basePath) {
10091
- const scripts = [...document.getElementsByTagName("script")];
10092
- const configScript = scripts.find((script) => script.hasAttribute("data-shoelace"));
10093
- if (configScript) {
10094
- setBasePath(configScript.getAttribute("data-shoelace"));
10095
- } else {
10096
- const fallbackScript = scripts.find((s) => {
10097
- return /shoelace(\.min)?\.js($|\?)/.test(s.src) || /shoelace-autoloader(\.min)?\.js($|\?)/.test(s.src);
10098
- });
10099
- let path = "";
10100
- if (fallbackScript) {
10101
- path = fallbackScript.getAttribute("src");
10102
- }
10103
- setBasePath(path.split("/").slice(0, -1).join("/"));
10104
- }
10105
- }
10106
- return basePath.replace(/\/$/, "") + (subpath ? `/${subpath.replace(/^\//, "")}` : ``);
10107
- }
10108
-
10109
10085
  // src/components/icon/library.default.ts
10110
10086
  var library = {
10111
10087
  name: "default",
10112
- resolver: (name) => getBasePath(`assets/icons/${name}.svg`)
10088
+ resolver: (name) => chunk_3Y6SB6QS.getBasePath(`assets/icons/${name}.svg`)
10113
10089
  };
10114
10090
  var library_default_default = library;
10115
10091
 
@@ -11426,39 +11402,76 @@ const PosSettingOfflineCache = class {
11426
11402
  };
11427
11403
  PosSettingOfflineCache.style = PosSettingOfflineCacheStyle0;
11428
11404
 
11429
- var AvailableApps;
11430
- (function (AvailableApps) {
11431
- AvailableApps["Generic"] = "pos-app-generic";
11432
- AvailableApps["RdfDocument"] = "pos-app-rdf-document";
11433
- AvailableApps["DocumentViewer"] = "pos-app-document-viewer";
11434
- AvailableApps["ImageViewer"] = "pos-app-image-viewer";
11435
- AvailableApps["LdpContainer"] = "pos-app-ldp-container";
11436
- })(AvailableApps || (AvailableApps = {}));
11405
+ SlIcon.define("sl-icon");
11406
+
11407
+ const posToolSelectCss = ":host {\n --button-size: var(--size-14);\n display: block;\n /* TODO sticky does not work yet */\n position: sticky;\n top: 0;\n overflow: auto;\n min-width: var(--button-size);\n}\n\naside {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n button {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0;\n font-size: var(--size-6);\n .text {\n font-size: var(--size-3);\n white-space: nowrap;\n text-overflow: ellipsis;\n width: 100%;\n overflow: hidden;\n }\n outline: none;\n border: none;\n width: var(--button-size);\n min-width: var(--button-size);\n height: var(--button-size);\n min-height: var(--button-size);\n background-color: var(--pos-background-color);\n }\n}\n\n@media (max-width: 640px) {\n :host {\n position: absolute;\n top: unset;\n bottom: 0;\n width: 100dvw;\n }\n aside {\n flex-direction: row;\n background-color: var(--pos-background-color);\n }\n}\n";
11408
+ const PosToolSelectStyle0 = posToolSelectCss;
11409
+
11410
+ const PosToolSelect = class {
11411
+ constructor(hostRef) {
11412
+ index.registerInstance(this, hostRef);
11413
+ this.tools = [];
11414
+ }
11415
+ render() {
11416
+ console.log('toos', this.tools);
11417
+ if (this.tools.length > 1) {
11418
+ return (index.h("aside", null, this.tools.map(it => (index.h("button", null, index.h("sl-icon", { name: "list-ul" }), index.h("span", { class: "text" }, it.label))))));
11419
+ }
11420
+ return null;
11421
+ }
11422
+ };
11423
+ PosToolSelect.style = PosToolSelectStyle0;
11424
+
11425
+ const AvailableTools = {
11426
+ Generic: {
11427
+ element: 'pos-app-generic',
11428
+ label: 'Generic',
11429
+ },
11430
+ RdfDocument: {
11431
+ element: 'pos-app-rdf-document',
11432
+ label: 'RDF Document',
11433
+ },
11434
+ DocumentViewer: {
11435
+ element: 'pos-app-document-viewer',
11436
+ label: 'Document',
11437
+ },
11438
+ ImageViewer: {
11439
+ element: 'pos-app-image-viewer',
11440
+ label: 'Image',
11441
+ },
11442
+ LdpContainer: {
11443
+ element: 'pos-app-ldp-container',
11444
+ label: 'Container',
11445
+ },
11446
+ };
11437
11447
  // TODO: remove duplication with pos-container-contents/selectIconForTypes
11438
11448
  function containsType(types, typeUri) {
11439
11449
  return types.some(type => type.uri === typeUri);
11440
11450
  }
11441
- function selectAppForTypes(types) {
11451
+ function selectToolsForTypes(types) {
11442
11452
  if (containsType(types, 'http://www.w3.org/ns/ldp#Container')) {
11443
- return AvailableApps.LdpContainer;
11453
+ return [AvailableTools.LdpContainer];
11444
11454
  }
11445
11455
  else if (containsType(types, 'http://www.w3.org/2007/ont/link#RDFDocument')) {
11446
- return AvailableApps.RdfDocument;
11456
+ return [AvailableTools.RdfDocument];
11447
11457
  }
11448
11458
  else if (containsType(types, 'http://www.w3.org/ns/iana/media-types/application/pdf#Resource')) {
11449
- return AvailableApps.DocumentViewer;
11459
+ return [AvailableTools.DocumentViewer];
11450
11460
  }
11451
11461
  else if (containsType(types, 'http://purl.org/dc/terms/Image')) {
11452
- return AvailableApps.ImageViewer;
11462
+ return [AvailableTools.ImageViewer];
11453
11463
  }
11454
11464
  else if (containsType(types, 'http://www.w3.org/2007/ont/link#Document')) {
11455
- return AvailableApps.DocumentViewer;
11465
+ return [AvailableTools.DocumentViewer];
11456
11466
  }
11457
11467
  else {
11458
- return AvailableApps.Generic;
11468
+ return [AvailableTools.Generic];
11459
11469
  }
11460
11470
  }
11461
11471
 
11472
+ const posTypeRouterCss = "section{display:flex;flex-direction:row}section>:last-child{flex-grow:1}@media (max-width: 640px){section{flex-direction:column-reverse}}";
11473
+ const PosTypeRouterStyle0 = posTypeRouterCss;
11474
+
11462
11475
  const PosTypeRouter = class {
11463
11476
  constructor(hostRef) {
11464
11477
  index.registerInstance(this, hostRef);
@@ -11474,10 +11487,12 @@ const PosTypeRouter = class {
11474
11487
  return this.types ? this.renderApp() : null;
11475
11488
  }
11476
11489
  renderApp() {
11477
- const App = selectAppForTypes(this.types);
11478
- return index.h(App, null);
11490
+ const availableTools = selectToolsForTypes(this.types);
11491
+ const SelectedTool = availableTools[0].element;
11492
+ return (index.h("section", null, index.h("pos-tool-select", { tools: availableTools }), index.h(SelectedTool, null)));
11479
11493
  }
11480
11494
  };
11495
+ PosTypeRouter.style = PosTypeRouterStyle0;
11481
11496
 
11482
11497
  // src/components/avatar/avatar.styles.ts
11483
11498
  var avatar_styles_default = i$4`
@@ -11737,7 +11752,8 @@ exports.pos_rich_link = PosRichLink;
11737
11752
  exports.pos_router = PosRouter;
11738
11753
  exports.pos_select_term = PosSelectTerm;
11739
11754
  exports.pos_setting_offline_cache = PosSettingOfflineCache;
11755
+ exports.pos_tool_select = PosToolSelect;
11740
11756
  exports.pos_type_router = PosTypeRouter;
11741
11757
  exports.pos_user_menu = PosUserMenu;
11742
11758
 
11743
- //# sourceMappingURL=ion-icon_32.cjs.entry.js.map
11759
+ //# sourceMappingURL=ion-icon_33.cjs.entry.js.map