@pod-os/elements 0.13.1-9efc307.0 → 0.13.1-cd22eb8.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 (93) hide show
  1. package/dist/cjs/elements.cjs.js +1 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/collection/collection-manifest.json +2 -3
  4. package/dist/elements/elements.esm.js +1 -1
  5. package/dist/elements/elements.esm.js.map +1 -1
  6. package/dist/esm/elements.js +1 -1
  7. package/dist/esm/loader.js +1 -1
  8. package/dist/types/components.d.ts +0 -13
  9. package/package.json +1 -1
  10. package/dist/cjs/test-component.cjs.entry.js +0 -15
  11. package/dist/cjs/test-component.cjs.entry.js.map +0 -1
  12. package/dist/collection/apps/pos-app-document-viewer/pos-app-document-viewer.spec.js +0 -29
  13. package/dist/collection/apps/pos-app-document-viewer/pos-app-document-viewer.spec.js.map +0 -1
  14. package/dist/collection/apps/pos-app-image-viewer/pos-app-image-viewer.spec.js +0 -29
  15. package/dist/collection/apps/pos-app-image-viewer/pos-app-image-viewer.spec.js.map +0 -1
  16. package/dist/collection/components/broken-file/BrokenFile.spec.js +0 -45
  17. package/dist/collection/components/broken-file/BrokenFile.spec.js.map +0 -1
  18. package/dist/collection/components/pos-add-literal-value/test/pos-add-literal-value.spec.js +0 -185
  19. package/dist/collection/components/pos-add-literal-value/test/pos-add-literal-value.spec.js.map +0 -1
  20. package/dist/collection/components/pos-add-new-thing/test/pos-add-new-thing.spec.js +0 -59
  21. package/dist/collection/components/pos-add-new-thing/test/pos-add-new-thing.spec.js.map +0 -1
  22. package/dist/collection/components/pos-container-contents/pos-container-contents.spec.js +0 -132
  23. package/dist/collection/components/pos-container-contents/pos-container-contents.spec.js.map +0 -1
  24. package/dist/collection/components/pos-container-contents/pos-container-item.spec.js +0 -64
  25. package/dist/collection/components/pos-container-contents/pos-container-item.spec.js.map +0 -1
  26. package/dist/collection/components/pos-container-contents/selectIconForTypes.spec.js +0 -30
  27. package/dist/collection/components/pos-container-contents/selectIconForTypes.spec.js.map +0 -1
  28. package/dist/collection/components/pos-description/pos-description.spec.js +0 -31
  29. package/dist/collection/components/pos-description/pos-description.spec.js.map +0 -1
  30. package/dist/collection/components/pos-document/pos-document.spec.js +0 -219
  31. package/dist/collection/components/pos-document/pos-document.spec.js.map +0 -1
  32. package/dist/collection/components/pos-error-toast/test/pos-error-toast.spec.js +0 -18
  33. package/dist/collection/components/pos-error-toast/test/pos-error-toast.spec.js.map +0 -1
  34. package/dist/collection/components/pos-image/pos-image.integration.spec.js +0 -124
  35. package/dist/collection/components/pos-image/pos-image.integration.spec.js.map +0 -1
  36. package/dist/collection/components/pos-image/pos-image.spec.js +0 -219
  37. package/dist/collection/components/pos-image/pos-image.spec.js.map +0 -1
  38. package/dist/collection/components/pos-label/pos-label.integration.spec.js +0 -101
  39. package/dist/collection/components/pos-label/pos-label.integration.spec.js.map +0 -1
  40. package/dist/collection/components/pos-label/pos-label.spec.js +0 -31
  41. package/dist/collection/components/pos-label/pos-label.spec.js.map +0 -1
  42. package/dist/collection/components/pos-literals/pos-literals.spec.js +0 -118
  43. package/dist/collection/components/pos-literals/pos-literals.spec.js.map +0 -1
  44. package/dist/collection/components/pos-login/pos-login.integration.spec.js +0 -35
  45. package/dist/collection/components/pos-login/pos-login.integration.spec.js.map +0 -1
  46. package/dist/collection/components/pos-login/pos-login.spec.js +0 -46
  47. package/dist/collection/components/pos-login/pos-login.spec.js.map +0 -1
  48. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.spec.js +0 -41
  49. package/dist/collection/components/pos-navigation-bar/pos-navigation-bar.spec.js.map +0 -1
  50. package/dist/collection/components/pos-new-thing-form/test/pos-new-thing-form.spec.js +0 -239
  51. package/dist/collection/components/pos-new-thing-form/test/pos-new-thing-form.spec.js.map +0 -1
  52. package/dist/collection/components/pos-picture/pos-picture.integration.spec.js +0 -79
  53. package/dist/collection/components/pos-picture/pos-picture.integration.spec.js.map +0 -1
  54. package/dist/collection/components/pos-picture/pos-picture.spec.js +0 -49
  55. package/dist/collection/components/pos-picture/pos-picture.spec.js.map +0 -1
  56. package/dist/collection/components/pos-relations/pos-relations.spec.js +0 -64
  57. package/dist/collection/components/pos-relations/pos-relations.spec.js.map +0 -1
  58. package/dist/collection/components/pos-resource/pos-resource.integration.spec.js +0 -355
  59. package/dist/collection/components/pos-resource/pos-resource.integration.spec.js.map +0 -1
  60. package/dist/collection/components/pos-resource/pos-resource.spec.js +0 -237
  61. package/dist/collection/components/pos-resource/pos-resource.spec.js.map +0 -1
  62. package/dist/collection/components/pos-reverse-relations/pos-reverse-relations.spec.js +0 -64
  63. package/dist/collection/components/pos-reverse-relations/pos-reverse-relations.spec.js.map +0 -1
  64. package/dist/collection/components/pos-rich-link/pos-rich-link.spec.js +0 -37
  65. package/dist/collection/components/pos-rich-link/pos-rich-link.spec.js.map +0 -1
  66. package/dist/collection/components/pos-select-term/test/pos-select-term.spec.js +0 -75
  67. package/dist/collection/components/pos-select-term/test/pos-select-term.spec.js.map +0 -1
  68. package/dist/collection/components/pos-subjects/pos-subjects.spec.js +0 -58
  69. package/dist/collection/components/pos-subjects/pos-subjects.spec.js.map +0 -1
  70. package/dist/collection/components/pos-type-badges/pos-type-badges.spec.js +0 -119
  71. package/dist/collection/components/pos-type-badges/pos-type-badges.spec.js.map +0 -1
  72. package/dist/collection/components/pos-type-router/pos-type-router.spec.js +0 -105
  73. package/dist/collection/components/pos-type-router/pos-type-router.spec.js.map +0 -1
  74. package/dist/collection/components/pos-type-router/selectAppForTypes.spec.js +0 -85
  75. package/dist/collection/components/pos-type-router/selectAppForTypes.spec.js.map +0 -1
  76. package/dist/collection/components/pos-value/pos-value.spec.js +0 -31
  77. package/dist/collection/components/pos-value/pos-value.spec.js.map +0 -1
  78. package/dist/collection/test/TestComponent.js +0 -4
  79. package/dist/collection/test/TestComponent.js.map +0 -1
  80. package/dist/collection/test/mockPodOS.js +0 -38
  81. package/dist/collection/test/mockPodOS.js.map +0 -1
  82. package/dist/collection/test/renderFunctionalComponent.js +0 -9
  83. package/dist/collection/test/renderFunctionalComponent.js.map +0 -1
  84. package/dist/components/test-component.d.ts +0 -11
  85. package/dist/components/test-component.js +0 -9
  86. package/dist/components/test-component.js.map +0 -1
  87. package/dist/elements/p-c5bcab34.entry.js +0 -2
  88. package/dist/elements/p-c5bcab34.entry.js.map +0 -1
  89. package/dist/esm/test-component.entry.js +0 -11
  90. package/dist/esm/test-component.entry.js.map +0 -1
  91. package/dist/types/test/TestComponent.d.ts +0 -2
  92. package/dist/types/test/mockPodOS.d.ts +0 -13
  93. package/dist/types/test/renderFunctionalComponent.d.ts +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-resource.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-resource/pos-resource.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["jest.mock('../../store/session');\n\nimport { newSpecPage } from '@stencil/core/testing';\nimport { when } from 'jest-when';\n\nimport session from '../../store/session';\nimport { mockPodOS } from '../../test/mockPodOS';\nimport { PosResource } from './pos-resource';\n\ndescribe('pos-resource', () => {\n it('renders loading indicator initially', async () => {\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://resource.test/\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('renders loading indicator while fetching', async () => {\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch)\n .calledWith('https://resource.test/')\n .mockReturnValue(new Promise(() => null));\n await page.rootInstance.receivePodOs(os);\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://resource.test/\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('renders slot after loading', async () => {\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValue(null);\n await page.rootInstance.receivePodOs(os);\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://resource.test/\">\n <mock:shadow-root>\n <slot></slot>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('emits event after loading resource', async () => {\n const onResourceLoaded = jest.fn();\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n page.root.addEventListener('pod-os:resource-loaded', onResourceLoaded);\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValue(null);\n await page.rootInstance.receivePodOs(os);\n await page.waitForChanges();\n expect(onResourceLoaded).toHaveBeenCalled();\n expect(onResourceLoaded.mock.calls[0][0].detail).toEqual('https://resource.test/');\n });\n\n it('renders error when fetch failed', async () => {\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockRejectedValue(new Error('not found'));\n await page.rootInstance.receivePodOs(os);\n await page.waitForChanges();\n const errorDetails = page.root.shadowRoot.querySelector('details');\n expect(errorDetails).toEqualHtml(`<details>not found</details>`);\n });\n\n it('updates and loads resource when uri changes', async () => {\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValue(null);\n when(os.fetch)\n .calledWith('https://other-resource.test')\n .mockReturnValue(new Promise(() => null));\n await page.rootInstance.receivePodOs(os);\n page.root.setAttribute('uri', 'https://other-resource.test');\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://other-resource.test\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('re-fetches resource when session state changes', async () => {\n let sessionChanged;\n // @ts-ignore\n session.onChange = (prop, callback) => {\n if (prop === 'isLoggedIn') {\n sessionChanged = callback;\n }\n };\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValueOnce(null);\n when(os.fetch)\n .calledWith('https://resource.test/')\n .mockReturnValueOnce(new Promise(() => null));\n await page.rootInstance.receivePodOs(os);\n expect(sessionChanged).toBeDefined();\n sessionChanged();\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://resource.test/\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('removes error message after successful loading', async () => {\n let sessionChanged;\n // @ts-ignore\n session.onChange = (prop, callback) => {\n if (prop === 'isLoggedIn') {\n sessionChanged = callback;\n }\n };\n const page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource uri=\"https://resource.test/\" />`,\n });\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockRejectedValueOnce(new Error('unauthorized'));\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValueOnce(null);\n await page.rootInstance.receivePodOs(os);\n expect(sessionChanged).toBeDefined();\n sessionChanged();\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource uri=\"https://resource.test/\">\n <mock:shadow-root>\n <slot></slot>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n describe('when lazy', () => {\n let page;\n beforeEach(async () => {\n page = await newSpecPage({\n components: [PosResource],\n html: `<pos-resource lazy uri=\"https://resource.test/\" />`,\n });\n });\n\n it('renders loading indicator before PodOS is ready', async () => {\n expect(page.root).toEqualHtml(`\n <pos-resource lazy uri=\"https://resource.test/\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n it('renders slot without fetching first', async () => {\n const os = mockPodOS();\n os.fetch.mockRejectedValue(new Error('should not fetch'));\n await page.rootInstance.receivePodOs(os);\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource lazy uri=\"https://resource.test/\">\n <mock:shadow-root>\n <slot />\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n describe('after fetch is explicitly requested', function () {\n it('renders loading indicator while fetching', async () => {\n const os = mockPodOS();\n when(os.fetch)\n .calledWith('https://resource.test/')\n .mockReturnValue(new Promise(() => null));\n await page.rootInstance.receivePodOs(os);\n page.root.fetch();\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource lazy uri=\"https://resource.test/\">\n <mock:shadow-root>\n <ion-progress-bar type=\"indeterminate\"></ion-progress-bar>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('renders slot after loading', async () => {\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockResolvedValue(null);\n await page.rootInstance.receivePodOs(os);\n await page.root.fetch();\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-resource lazy uri=\"https://resource.test/\">\n <mock:shadow-root>\n <slot></slot>\n </mock:shadow-root>\n </pos-resource>\n `);\n });\n\n it('renders error when fetch failed', async () => {\n const os = mockPodOS();\n when(os.fetch).calledWith('https://resource.test/').mockRejectedValue(new Error('not found'));\n await page.rootInstance.receivePodOs(os);\n page.root.fetch();\n await page.waitForChanges();\n const errorDetails = page.root.shadowRoot.querySelector('details');\n expect(errorDetails).toEqualHtml(`\n <details>\n not found\n </details>\n`);\n });\n });\n });\n});\n"]}
@@ -1,64 +0,0 @@
1
- import { newSpecPage } from "@stencil/core/testing";
2
- import { getByText } from "@testing-library/dom";
3
- import { PosReverseRelations } from "./pos-reverse-relations";
4
- describe('pos-reverse-relations', () => {
5
- it('are empty initially', async () => {
6
- const page = await newSpecPage({
7
- components: [PosReverseRelations],
8
- html: `<pos-reverse-relations />`,
9
- });
10
- expect(page.root).toEqualHtml(`
11
- <pos-reverse-relations>
12
- <mock:shadow-root></mock:shadow-root>
13
- </pos-reverse-relations>
14
- `);
15
- });
16
- it('renders single predicate and rich link to resource', async () => {
17
- const page = await newSpecPage({
18
- components: [PosReverseRelations],
19
- html: `<pos-reverse-relations />`,
20
- });
21
- await page.rootInstance.receiveResource({
22
- reverseRelations: () => [
23
- {
24
- predicate: 'http://schema.org/knows',
25
- uris: ['https://person.test/alice'],
26
- },
27
- ],
28
- });
29
- await page.waitForChanges();
30
- const el = page.root.shadowRoot;
31
- expect(getByText(el, 'is http://schema.org/knows of')).toBeDefined();
32
- const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/alice"]');
33
- expect(linkToAlice).not.toBeNull();
34
- });
35
- it('renders multiple predicates and rich links to resource', async () => {
36
- const page = await newSpecPage({
37
- components: [PosReverseRelations],
38
- html: `<pos-reverse-relations />`,
39
- });
40
- await page.rootInstance.receiveResource({
41
- reverseRelations: () => [
42
- {
43
- predicate: 'http://schema.org/knows',
44
- uris: ['https://person.test/alice', 'https://person.test/bernadette'],
45
- },
46
- {
47
- predicate: 'http://schema.org/participant',
48
- uris: ['https://event.test/party'],
49
- },
50
- ],
51
- });
52
- await page.waitForChanges();
53
- const el = page.root.shadowRoot;
54
- expect(getByText(el, 'is http://schema.org/knows of')).toBeDefined();
55
- const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/alice"]');
56
- expect(linkToAlice).not.toBeNull();
57
- const linkToBernadette = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/bernadette"]');
58
- expect(linkToBernadette).not.toBeNull();
59
- expect(getByText(el, 'is http://schema.org/participant of')).toBeDefined();
60
- const linkToAttachment = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://event.test/party"]');
61
- expect(linkToAttachment).not.toBeNull();
62
- });
63
- });
64
- //# sourceMappingURL=pos-reverse-relations.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-reverse-relations.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-reverse-relations/pos-reverse-relations.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from '@stencil/core/testing';\n\nimport { getByText } from '@testing-library/dom';\n\nimport { PosReverseRelations } from './pos-reverse-relations';\n\ndescribe('pos-reverse-relations', () => {\n it('are empty initially', async () => {\n const page = await newSpecPage({\n components: [PosReverseRelations],\n html: `<pos-reverse-relations />`,\n });\n expect(page.root).toEqualHtml(`\n <pos-reverse-relations>\n <mock:shadow-root></mock:shadow-root>\n </pos-reverse-relations>\n `);\n });\n\n it('renders single predicate and rich link to resource', async () => {\n const page = await newSpecPage({\n components: [PosReverseRelations],\n html: `<pos-reverse-relations />`,\n });\n await page.rootInstance.receiveResource({\n reverseRelations: () => [\n {\n predicate: 'http://schema.org/knows',\n uris: ['https://person.test/alice'],\n },\n ],\n });\n await page.waitForChanges();\n\n const el: HTMLElement = page.root.shadowRoot as unknown as HTMLElement;\n\n expect(getByText(el, 'is http://schema.org/knows of')).toBeDefined();\n const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/alice\"]');\n expect(linkToAlice).not.toBeNull();\n });\n\n it('renders multiple predicates and rich links to resource', async () => {\n const page = await newSpecPage({\n components: [PosReverseRelations],\n html: `<pos-reverse-relations />`,\n });\n await page.rootInstance.receiveResource({\n reverseRelations: () => [\n {\n predicate: 'http://schema.org/knows',\n uris: ['https://person.test/alice', 'https://person.test/bernadette'],\n },\n {\n predicate: 'http://schema.org/participant',\n uris: ['https://event.test/party'],\n },\n ],\n });\n await page.waitForChanges();\n\n const el: HTMLElement = page.root.shadowRoot as unknown as HTMLElement;\n\n expect(getByText(el, 'is http://schema.org/knows of')).toBeDefined();\n const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/alice\"]');\n expect(linkToAlice).not.toBeNull();\n const linkToBernadette = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/bernadette\"]');\n expect(linkToBernadette).not.toBeNull();\n\n expect(getByText(el, 'is http://schema.org/participant of')).toBeDefined();\n const linkToAttachment = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://event.test/party\"]');\n expect(linkToAttachment).not.toBeNull();\n });\n});\n"]}
@@ -1,37 +0,0 @@
1
- import { newSpecPage } from "@stencil/core/testing";
2
- import { PosRichLink } from "./pos-rich-link";
3
- describe('pos-rich-link', () => {
4
- let page;
5
- beforeEach(async () => {
6
- page = await newSpecPage({
7
- components: [PosRichLink],
8
- html: `<pos-rich-link uri="https://pod.example/resource" />`,
9
- });
10
- });
11
- describe('contents', () => {
12
- it('lazy loads the linked resource', () => {
13
- const resource = page.root.shadowRoot.querySelector('pos-resource');
14
- expect(resource).not.toBeNull();
15
- expect(resource).toEqualAttribute('uri', 'https://pod.example/resource');
16
- expect(resource).toHaveAttribute('lazy');
17
- });
18
- it('shows the resource label', () => {
19
- const resource = page.root.shadowRoot.querySelector('pos-resource');
20
- const label = resource.querySelector('pos-label');
21
- expect(label).not.toBeNull();
22
- });
23
- it('shows the resource description', () => {
24
- const resource = page.root.shadowRoot.querySelector('pos-resource');
25
- const description = resource.querySelector('pos-description');
26
- expect(description).not.toBeNull();
27
- });
28
- it('shows a link to the resource', () => {
29
- const resource = page.root.shadowRoot.querySelector('pos-resource');
30
- const link = resource.querySelector('a');
31
- expect(link).not.toBeNull();
32
- expect(link).toEqualAttribute('href', 'https://pod.example/resource');
33
- expect(link.innerText).toEqual('https://pod.example/resource');
34
- });
35
- });
36
- });
37
- //# sourceMappingURL=pos-rich-link.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-rich-link.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-rich-link/pos-rich-link.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;EAC7B,IAAI,IAAI,CAAC;EACT,UAAU,CAAC,KAAK,IAAI,EAAE;IACpB,IAAI,GAAG,MAAM,WAAW,CAAC;MACvB,UAAU,EAAE,CAAC,WAAW,CAAC;MACzB,IAAI,EAAE,sDAAsD;KAC7D,CAAC,CAAC;EACL,CAAC,CAAC,CAAC;EAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;MACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;MACpE,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;MAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,8BAA8B,CAAC,CAAC;MACzE,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;MAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;MACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;MAClD,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;MACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;MACpE,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;MAC9D,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;MACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;MACpE,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;MACzC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;MAC5B,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAC;MACtE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;EACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from '@stencil/core/testing';\nimport { PosRichLink } from './pos-rich-link';\n\ndescribe('pos-rich-link', () => {\n let page;\n beforeEach(async () => {\n page = await newSpecPage({\n components: [PosRichLink],\n html: `<pos-rich-link uri=\"https://pod.example/resource\" />`,\n });\n });\n\n describe('contents', () => {\n it('lazy loads the linked resource', () => {\n const resource = page.root.shadowRoot.querySelector('pos-resource');\n expect(resource).not.toBeNull();\n expect(resource).toEqualAttribute('uri', 'https://pod.example/resource');\n expect(resource).toHaveAttribute('lazy');\n });\n\n it('shows the resource label', () => {\n const resource = page.root.shadowRoot.querySelector('pos-resource');\n const label = resource.querySelector('pos-label');\n expect(label).not.toBeNull();\n });\n\n it('shows the resource description', () => {\n const resource = page.root.shadowRoot.querySelector('pos-resource');\n const description = resource.querySelector('pos-description');\n expect(description).not.toBeNull();\n });\n\n it('shows a link to the resource', () => {\n const resource = page.root.shadowRoot.querySelector('pos-resource');\n const link = resource.querySelector('a');\n expect(link).not.toBeNull();\n expect(link).toEqualAttribute('href', 'https://pod.example/resource');\n expect(link.innerText).toEqual('https://pod.example/resource');\n });\n });\n});\n"]}
@@ -1,75 +0,0 @@
1
- import { newSpecPage } from "@stencil/core/testing";
2
- import { fireEvent } from "@testing-library/dom";
3
- import { PosSelectTerm } from "../pos-select-term";
4
- describe('pos-select-term', () => {
5
- it('renders empty list initially', async () => {
6
- const page = await newSpecPage({
7
- components: [PosSelectTerm],
8
- html: `<pos-select-term></pos-select-term>`,
9
- });
10
- expect(page.root).toEqualHtml(`
11
- <pos-select-term>
12
- <mock:shadow-root>
13
- <input part="input" value="" list="terms" placeholder="Type to search...">
14
- <datalist part="terms" id="terms"></datalist>
15
- </mock:shadow-root>
16
- </pos-select-term>
17
- `);
18
- });
19
- it('uses passed value as input value', async () => {
20
- const page = await newSpecPage({
21
- components: [PosSelectTerm],
22
- html: `<pos-select-term value="initial"></pos-select-term>`,
23
- supportsShadowDom: false,
24
- });
25
- expect(page.root.querySelector('input').value).toEqual('initial');
26
- });
27
- it('renders list of terms after os is available', async () => {
28
- const page = await newSpecPage({
29
- components: [PosSelectTerm],
30
- html: `<pos-select-term></pos-select-term>`,
31
- });
32
- page.rootInstance.receivePodOs({
33
- listKnownTerms: () => [
34
- {
35
- uri: 'http://schema.org/name',
36
- shorthand: 'schema:name',
37
- },
38
- ],
39
- });
40
- await page.waitForChanges();
41
- expect(page.root).toEqualHtml(`
42
- <pos-select-term>
43
- <mock:shadow-root>
44
- <input part="input" value="" list="terms" placeholder="Type to search...">
45
- <datalist part="terms" id="terms">
46
- <option value="http://schema.org/name">schema:name</option>
47
- </datalist>
48
- </mock:shadow-root>
49
- </pos-select-term>
50
- `);
51
- });
52
- it('fires event when term is entered', async () => {
53
- const page = await newSpecPage({
54
- supportsShadowDom: false,
55
- components: [PosSelectTerm],
56
- html: `<pos-select-term></pos-select-term>`,
57
- });
58
- page.rootInstance.receivePodOs({
59
- listKnownTerms: () => [
60
- {
61
- uri: 'http://schema.org/name',
62
- shorthand: 'schema:name',
63
- },
64
- ],
65
- });
66
- await page.waitForChanges();
67
- const onTermSelected = jest.fn();
68
- page.root.addEventListener('pod-os:term-selected', onTermSelected);
69
- const input = page.root.querySelector('input');
70
- fireEvent.change(input, { target: { value: 'http://schema.org/name' } });
71
- expect(onTermSelected).toHaveBeenCalled();
72
- expect(onTermSelected.mock.calls[0][0].detail).toEqual({ uri: 'http://schema.org/name' });
73
- });
74
- });
75
- //# sourceMappingURL=pos-select-term.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-select-term.spec.js","sourceRoot":"","sources":["../../../../../src/components/pos-select-term/test/pos-select-term.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;EAC/B,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;IAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;MAC3B,IAAI,EAAE,qCAAqC;KAC5C,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;KAO7B,CAAC,CAAC;EACL,CAAC,CAAC,CAAC;EAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;IAChD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;MAC3B,IAAI,EAAE,qDAAqD;MAC3D,iBAAiB,EAAE,KAAK;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;EACpE,CAAC,CAAC,CAAC;EAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,aAAa,CAAC;MAC3B,IAAI,EAAE,qCAAqC;KAC5C,CAAC,CAAC;IACH,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;MAC7B,cAAc,EAAE,GAAG,EAAE,CAAC;QACpB;UACE,GAAG,EAAE,wBAAwB;UAC7B,SAAS,EAAE,aAAa;SACzB;OACF;KACF,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;KAS7B,CAAC,CAAC;EACL,CAAC,CAAC,CAAC;EAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;IAChD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,iBAAiB,EAAE,KAAK;MACxB,UAAU,EAAE,CAAC,aAAa,CAAC;MAC3B,IAAI,EAAE,qCAAqC;KAC5C,CAAC,CAAC;IACH,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;MAC7B,cAAc,EAAE,GAAG,EAAE,CAAC;QACpB;UACE,GAAG,EAAE,wBAAwB;UAC7B,SAAS,EAAE,aAAa;SACzB;OACF;KACF,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAE5B,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;IAEnE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/C,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAEzE,MAAM,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC1C,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,wBAAwB,EAAE,CAAC,CAAC;EAC5F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from '@stencil/core/testing';\nimport { fireEvent } from '@testing-library/dom';\nimport { PosSelectTerm } from '../pos-select-term';\n\ndescribe('pos-select-term', () => {\n it('renders empty list initially', async () => {\n const page = await newSpecPage({\n components: [PosSelectTerm],\n html: `<pos-select-term></pos-select-term>`,\n });\n expect(page.root).toEqualHtml(`\n <pos-select-term>\n <mock:shadow-root>\n <input part=\"input\" value=\"\" list=\"terms\" placeholder=\"Type to search...\">\n <datalist part=\"terms\" id=\"terms\"></datalist>\n </mock:shadow-root>\n </pos-select-term>\n `);\n });\n\n it('uses passed value as input value', async () => {\n const page = await newSpecPage({\n components: [PosSelectTerm],\n html: `<pos-select-term value=\"initial\"></pos-select-term>`,\n supportsShadowDom: false,\n });\n expect(page.root.querySelector('input').value).toEqual('initial');\n });\n\n it('renders list of terms after os is available', async () => {\n const page = await newSpecPage({\n components: [PosSelectTerm],\n html: `<pos-select-term></pos-select-term>`,\n });\n page.rootInstance.receivePodOs({\n listKnownTerms: () => [\n {\n uri: 'http://schema.org/name',\n shorthand: 'schema:name',\n },\n ],\n });\n await page.waitForChanges();\n expect(page.root).toEqualHtml(`\n <pos-select-term>\n <mock:shadow-root>\n <input part=\"input\" value=\"\" list=\"terms\" placeholder=\"Type to search...\">\n <datalist part=\"terms\" id=\"terms\">\n <option value=\"http://schema.org/name\">schema:name</option>\n </datalist>\n </mock:shadow-root>\n </pos-select-term>\n `);\n });\n\n it('fires event when term is entered', async () => {\n const page = await newSpecPage({\n supportsShadowDom: false,\n components: [PosSelectTerm],\n html: `<pos-select-term></pos-select-term>`,\n });\n page.rootInstance.receivePodOs({\n listKnownTerms: () => [\n {\n uri: 'http://schema.org/name',\n shorthand: 'schema:name',\n },\n ],\n });\n await page.waitForChanges();\n\n const onTermSelected = jest.fn();\n page.root.addEventListener('pod-os:term-selected', onTermSelected);\n\n const input = page.root.querySelector('input');\n fireEvent.change(input, { target: { value: 'http://schema.org/name' } });\n\n expect(onTermSelected).toHaveBeenCalled();\n expect(onTermSelected.mock.calls[0][0].detail).toEqual({ uri: 'http://schema.org/name' });\n });\n});\n"]}
@@ -1,58 +0,0 @@
1
- jest.mock('@pod-os/core', () => ({}));
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { PosSubjects } from "./pos-subjects";
4
- describe('pos-subjects', () => {
5
- it('are empty initially', async () => {
6
- const page = await newSpecPage({
7
- components: [PosSubjects],
8
- html: `<pos-subjects />`,
9
- });
10
- expect(page.root).toEqualHtml(`
11
- <pos-subjects>
12
- <mock:shadow-root></mock:shadow-root>
13
- </pos-subjects>
14
- `);
15
- });
16
- it('renders single subject and rich link to it', async () => {
17
- const page = await newSpecPage({
18
- components: [PosSubjects],
19
- html: `<pos-subjects />`,
20
- });
21
- await page.rootInstance.receiveResource({
22
- assume: () => ({
23
- subjects: () => [
24
- {
25
- uri: 'https://person.test/alice#me',
26
- },
27
- ],
28
- }),
29
- });
30
- await page.waitForChanges();
31
- const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/alice#me"]');
32
- expect(linkToAlice).not.toBeNull();
33
- });
34
- it('renders multiple subjects and rich links to them', async () => {
35
- const page = await newSpecPage({
36
- components: [PosSubjects],
37
- html: `<pos-subjects />`,
38
- });
39
- await page.rootInstance.receiveResource({
40
- assume: () => ({
41
- subjects: () => [
42
- {
43
- uri: 'https://person.test/alice#me',
44
- },
45
- {
46
- uri: 'https://person.test/alice#address',
47
- },
48
- ],
49
- }),
50
- });
51
- await page.waitForChanges();
52
- const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/alice#me"]');
53
- expect(linkToAlice).not.toBeNull();
54
- const linkToAddress = page.root.shadowRoot.querySelector('pos-rich-link[uri="https://person.test/alice#address"]');
55
- expect(linkToAddress).not.toBeNull();
56
- });
57
- });
58
- //# sourceMappingURL=pos-subjects.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-subjects.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-subjects/pos-subjects.spec.tsx"],"names":[],"mappings":"AAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;EAC5B,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;IACnC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,WAAW,CAAC;MACzB,IAAI,EAAE,kBAAkB;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;GAI/B,CAAC,CAAC;EACH,CAAC,CAAC,CAAC;EAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;IAC1D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,WAAW,CAAC;MACzB,IAAI,EAAE,kBAAkB;KACzB,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;MACtC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACb,QAAQ,EAAE,GAAG,EAAE,CAAC;UACd;YACE,GAAG,EAAE,8BAA8B;WACpC;SACF;OACF,CAAC;KACH,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,mDAAmD,CAAC,CAAC;IAC5G,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;EACrC,CAAC,CAAC,CAAC;EAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;IAChE,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;MAC7B,UAAU,EAAE,CAAC,WAAW,CAAC;MACzB,IAAI,EAAE,kBAAkB;KACzB,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;MACtC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACb,QAAQ,EAAE,GAAG,EAAE,CAAC;UACd;YACE,GAAG,EAAE,8BAA8B;WACpC;UACD;YACE,GAAG,EAAE,mCAAmC;WACzC;SACF;OACF,CAAC;KACH,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,mDAAmD,CAAC,CAAC;IAC5G,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAEnC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,wDAAwD,CAAC,CAAC;IACnH,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;EACvC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["jest.mock('@pod-os/core', () => ({}));\n\nimport { newSpecPage } from '@stencil/core/testing';\n\nimport { PosSubjects } from './pos-subjects';\n\ndescribe('pos-subjects', () => {\n it('are empty initially', async () => {\n const page = await newSpecPage({\n components: [PosSubjects],\n html: `<pos-subjects />`,\n });\n expect(page.root).toEqualHtml(`\n <pos-subjects>\n <mock:shadow-root></mock:shadow-root>\n </pos-subjects>\n `);\n });\n\n it('renders single subject and rich link to it', async () => {\n const page = await newSpecPage({\n components: [PosSubjects],\n html: `<pos-subjects />`,\n });\n await page.rootInstance.receiveResource({\n assume: () => ({\n subjects: () => [\n {\n uri: 'https://person.test/alice#me',\n },\n ],\n }),\n });\n await page.waitForChanges();\n\n const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/alice#me\"]');\n expect(linkToAlice).not.toBeNull();\n });\n\n it('renders multiple subjects and rich links to them', async () => {\n const page = await newSpecPage({\n components: [PosSubjects],\n html: `<pos-subjects />`,\n });\n await page.rootInstance.receiveResource({\n assume: () => ({\n subjects: () => [\n {\n uri: 'https://person.test/alice#me',\n },\n {\n uri: 'https://person.test/alice#address',\n },\n ],\n }),\n });\n await page.waitForChanges();\n\n const linkToAlice = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/alice#me\"]');\n expect(linkToAlice).not.toBeNull();\n\n const linkToAddress = page.root.shadowRoot.querySelector('pos-rich-link[uri=\"https://person.test/alice#address\"]');\n expect(linkToAddress).not.toBeNull();\n });\n});\n"]}
@@ -1,119 +0,0 @@
1
- jest.mock('@pod-os/core', () => ({}));
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { PosTypeBadges } from "./pos-type-badges";
4
- describe('pos-type-badges', () => {
5
- it('are empty initially', async () => {
6
- const page = await newSpecPage({
7
- components: [PosTypeBadges],
8
- html: `<pos-type-badges />`,
9
- });
10
- expect(page.root).toEqualHtml(`
11
- <pos-type-badges>
12
- <mock:shadow-root>
13
- </mock:shadow-root>
14
- </pos-type-badges>
15
- `);
16
- });
17
- it('renders single type', async () => {
18
- const page = await newSpecPage({
19
- components: [PosTypeBadges],
20
- html: `<pos-type-badges />`,
21
- });
22
- await page.rootInstance.receiveResource({
23
- types: () => [
24
- {
25
- uri: 'https://vocab.test/SomeType',
26
- label: 'SomeType',
27
- },
28
- ],
29
- });
30
- await page.waitForChanges();
31
- expect(page.root.shadowRoot.querySelector('ion-badge')).toEqualHtml(`<ion-badge>SomeType</ion-badge>`);
32
- });
33
- it('renders multiple types', async () => {
34
- const page = await newSpecPage({
35
- components: [PosTypeBadges],
36
- html: `<pos-type-badges />`,
37
- });
38
- await page.rootInstance.receiveResource({
39
- types: () => [
40
- {
41
- uri: 'https://vocab.test/SomeType',
42
- label: 'SomeType',
43
- },
44
- {
45
- uri: 'https://vocab.test/SecondType',
46
- label: 'SecondType',
47
- },
48
- {
49
- uri: 'https://vocab.test/AnotherType',
50
- label: 'AnotherType',
51
- },
52
- ],
53
- });
54
- await page.waitForChanges();
55
- let badges = page.root.shadowRoot.querySelectorAll('ion-badge');
56
- expect(badges[0]).toEqualHtml(`<ion-badge>SomeType</ion-badge>`);
57
- expect(badges[1]).toEqualHtml(`<ion-badge>SecondType</ion-badge>`);
58
- expect(badges[2]).toEqualHtml(`<ion-badge>AnotherType</ion-badge>`);
59
- expect(badges[3]).toEqualHtml(`<ion-badge class="toggle"><ion-icon name="expand-outline"></ion-icon></ion-badge>`);
60
- expect(badges).toHaveLength(4);
61
- });
62
- it('renders only one badge for the same type label from different vocabs', async () => {
63
- const page = await newSpecPage({
64
- components: [PosTypeBadges],
65
- html: `<pos-type-badges />`,
66
- });
67
- await page.rootInstance.receiveResource({
68
- types: () => [
69
- {
70
- uri: 'https://vocab.test/SomeType',
71
- label: 'SomeType',
72
- },
73
- {
74
- uri: 'https://second-vocab.test/SomeType',
75
- label: 'SomeType',
76
- },
77
- {
78
- uri: 'https://another-vocab.test/SomeType',
79
- label: 'SomeType',
80
- },
81
- ],
82
- });
83
- await page.waitForChanges();
84
- let badges = page.root.shadowRoot.querySelectorAll('ion-badge');
85
- expect(badges[0]).toEqualText(`SomeType`);
86
- expect(badges[1]).not.toEqualText(`SomeType`);
87
- });
88
- it('renders all type URIs when expanded', async () => {
89
- const page = await newSpecPage({
90
- components: [PosTypeBadges],
91
- html: `<pos-type-badges />`,
92
- });
93
- await page.rootInstance.receiveResource({
94
- types: () => [
95
- {
96
- uri: 'https://vocab.test/SomeType',
97
- label: 'SomeType',
98
- },
99
- {
100
- uri: 'https://second-vocab.test/SomeType',
101
- label: 'SomeType',
102
- },
103
- {
104
- uri: 'https://another-vocab.test/SomeType',
105
- label: 'SomeType',
106
- },
107
- ],
108
- });
109
- await page.rootInstance.toggleDetails();
110
- await page.waitForChanges();
111
- let badges = page.root.shadowRoot.querySelectorAll('ion-badge');
112
- expect(badges[0]).toEqualHtml(`<ion-badge class="toggle"><ion-icon name="contract-outline"></ion-icon></ion-badge>`);
113
- expect(badges[1]).toEqualHtml(`<ion-badge>https://vocab.test/SomeType</ion-badge>`);
114
- expect(badges[2]).toEqualHtml(`<ion-badge>https://second-vocab.test/SomeType</ion-badge>`);
115
- expect(badges[3]).toEqualHtml(`<ion-badge>https://another-vocab.test/SomeType</ion-badge>`);
116
- expect(badges).toHaveLength(4);
117
- });
118
- });
119
- //# sourceMappingURL=pos-type-badges.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-type-badges.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-type-badges/pos-type-badges.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["jest.mock('@pod-os/core', () => ({}));\n\nimport { newSpecPage } from '@stencil/core/testing';\n\nimport { PosTypeBadges } from './pos-type-badges';\n\ndescribe('pos-type-badges', () => {\n it('are empty initially', async () => {\n const page = await newSpecPage({\n components: [PosTypeBadges],\n html: `<pos-type-badges />`,\n });\n expect(page.root).toEqualHtml(`\n <pos-type-badges>\n <mock:shadow-root>\n </mock:shadow-root>\n </pos-type-badges>\n `);\n });\n\n it('renders single type', async () => {\n const page = await newSpecPage({\n components: [PosTypeBadges],\n html: `<pos-type-badges />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [\n {\n uri: 'https://vocab.test/SomeType',\n label: 'SomeType',\n },\n ],\n });\n await page.waitForChanges();\n\n expect(page.root.shadowRoot.querySelector('ion-badge')).toEqualHtml(`<ion-badge>SomeType</ion-badge>`);\n });\n\n it('renders multiple types', async () => {\n const page = await newSpecPage({\n components: [PosTypeBadges],\n html: `<pos-type-badges />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [\n {\n uri: 'https://vocab.test/SomeType',\n label: 'SomeType',\n },\n {\n uri: 'https://vocab.test/SecondType',\n label: 'SecondType',\n },\n {\n uri: 'https://vocab.test/AnotherType',\n label: 'AnotherType',\n },\n ],\n });\n await page.waitForChanges();\n\n let badges = page.root.shadowRoot.querySelectorAll('ion-badge');\n expect(badges[0]).toEqualHtml(`<ion-badge>SomeType</ion-badge>`);\n expect(badges[1]).toEqualHtml(`<ion-badge>SecondType</ion-badge>`);\n expect(badges[2]).toEqualHtml(`<ion-badge>AnotherType</ion-badge>`);\n expect(badges[3]).toEqualHtml(`<ion-badge class=\"toggle\"><ion-icon name=\"expand-outline\"></ion-icon></ion-badge>`);\n expect(badges).toHaveLength(4);\n });\n\n it('renders only one badge for the same type label from different vocabs', async () => {\n const page = await newSpecPage({\n components: [PosTypeBadges],\n html: `<pos-type-badges />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [\n {\n uri: 'https://vocab.test/SomeType',\n label: 'SomeType',\n },\n {\n uri: 'https://second-vocab.test/SomeType',\n label: 'SomeType',\n },\n {\n uri: 'https://another-vocab.test/SomeType',\n label: 'SomeType',\n },\n ],\n });\n await page.waitForChanges();\n\n let badges = page.root.shadowRoot.querySelectorAll('ion-badge');\n expect(badges[0]).toEqualText(`SomeType`);\n expect(badges[1]).not.toEqualText(`SomeType`);\n });\n\n it('renders all type URIs when expanded', async () => {\n const page = await newSpecPage({\n components: [PosTypeBadges],\n html: `<pos-type-badges />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [\n {\n uri: 'https://vocab.test/SomeType',\n label: 'SomeType',\n },\n {\n uri: 'https://second-vocab.test/SomeType',\n label: 'SomeType',\n },\n {\n uri: 'https://another-vocab.test/SomeType',\n label: 'SomeType',\n },\n ],\n });\n await page.rootInstance.toggleDetails();\n await page.waitForChanges();\n\n let badges = page.root.shadowRoot.querySelectorAll('ion-badge');\n expect(badges[0]).toEqualHtml(`<ion-badge class=\"toggle\"><ion-icon name=\"contract-outline\"></ion-icon></ion-badge>`);\n expect(badges[1]).toEqualHtml(`<ion-badge>https://vocab.test/SomeType</ion-badge>`);\n expect(badges[2]).toEqualHtml(`<ion-badge>https://second-vocab.test/SomeType</ion-badge>`);\n expect(badges[3]).toEqualHtml(`<ion-badge>https://another-vocab.test/SomeType</ion-badge>`);\n expect(badges).toHaveLength(4);\n });\n});\n"]}
@@ -1,105 +0,0 @@
1
- jest.mock('@pod-os/core', () => ({}));
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { PosTypeRouter } from "./pos-type-router";
4
- describe('pos-type-router', () => {
5
- it('is empty initially', async () => {
6
- const page = await newSpecPage({
7
- components: [PosTypeRouter],
8
- html: `<pos-type-router />`,
9
- });
10
- expect(page.root).toEqualHtml(`
11
- <pos-type-router>
12
- <mock:shadow-root></mock:shadow-root>
13
- </pos-type-router>
14
- `);
15
- });
16
- it('renders document app for rdf documents', async () => {
17
- const page = await newSpecPage({
18
- components: [PosTypeRouter],
19
- html: `<pos-type-router />`,
20
- });
21
- await page.rootInstance.receiveResource({
22
- types: () => [{ uri: 'http://www.w3.org/2007/ont/link#RDFDocument', label: 'RdfDocument' }],
23
- });
24
- await page.waitForChanges();
25
- expect(page.root).toEqualHtml(`
26
- <pos-type-router>
27
- <mock:shadow-root>
28
- <pos-app-rdf-document></pos-app-rdf-document>
29
- </mock:shadow-root>
30
- </pos-type-router>
31
- `);
32
- });
33
- it('renders image viewer for image resource', async () => {
34
- const page = await newSpecPage({
35
- components: [PosTypeRouter],
36
- html: `<pos-type-router />`,
37
- });
38
- await page.rootInstance.receiveResource({
39
- types: () => [{ uri: 'http://purl.org/dc/terms/Image', label: 'Image' }],
40
- });
41
- await page.waitForChanges();
42
- expect(page.root).toEqualHtml(`
43
- <pos-type-router>
44
- <mock:shadow-root>
45
- <pos-app-image-viewer></pos-app-image-viewer>
46
- </mock:shadow-root>
47
- </pos-type-router>
48
- `);
49
- });
50
- it('renders document viewer for pdf resource', async () => {
51
- const page = await newSpecPage({
52
- components: [PosTypeRouter],
53
- html: `<pos-type-router />`,
54
- });
55
- await page.rootInstance.receiveResource({
56
- types: () => [
57
- { uri: 'http://purl.org/dc/terms/Image', label: 'Image' },
58
- { uri: 'http://www.w3.org/ns/iana/media-types/application/pdf#Resource', label: 'Resource' },
59
- ],
60
- });
61
- await page.waitForChanges();
62
- expect(page.root).toEqualHtml(`
63
- <pos-type-router>
64
- <mock:shadow-root>
65
- <pos-app-document-viewer></pos-app-document-viewer>
66
- </mock:shadow-root>
67
- </pos-type-router>
68
- `);
69
- });
70
- it('renders document viewer for generic document resource', async () => {
71
- const page = await newSpecPage({
72
- components: [PosTypeRouter],
73
- html: `<pos-type-router />`,
74
- });
75
- await page.rootInstance.receiveResource({
76
- types: () => [{ uri: 'http://www.w3.org/2007/ont/link#Document', label: 'Document' }],
77
- });
78
- await page.waitForChanges();
79
- expect(page.root).toEqualHtml(`
80
- <pos-type-router>
81
- <mock:shadow-root>
82
- <pos-app-document-viewer></pos-app-document-viewer>
83
- </mock:shadow-root>
84
- </pos-type-router>
85
- `);
86
- });
87
- it('renders generic app for ldp resources', async () => {
88
- const page = await newSpecPage({
89
- components: [PosTypeRouter],
90
- html: `<pos-type-router />`,
91
- });
92
- await page.rootInstance.receiveResource({
93
- types: () => ['http://www.w3.org/ns/ldp#Resource'],
94
- });
95
- await page.waitForChanges();
96
- expect(page.root).toEqualHtml(`
97
- <pos-type-router>
98
- <mock:shadow-root>
99
- <pos-app-generic></pos-app-generic>
100
- </mock:shadow-root>
101
- </pos-type-router>
102
- `);
103
- });
104
- });
105
- //# sourceMappingURL=pos-type-router.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pos-type-router.spec.js","sourceRoot":"","sources":["../../../../src/components/pos-type-router/pos-type-router.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["jest.mock('@pod-os/core', () => ({}));\n\nimport { newSpecPage } from '@stencil/core/testing';\n\nimport { PosTypeRouter } from './pos-type-router';\n\ndescribe('pos-type-router', () => {\n it('is empty initially', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root></mock:shadow-root>\n </pos-type-router>\n `);\n });\n\n it('renders document app for rdf documents', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [{ uri: 'http://www.w3.org/2007/ont/link#RDFDocument', label: 'RdfDocument' }],\n });\n await page.waitForChanges();\n\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root>\n <pos-app-rdf-document></pos-app-rdf-document>\n </mock:shadow-root>\n </pos-type-router>\n`);\n });\n\n it('renders image viewer for image resource', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [{ uri: 'http://purl.org/dc/terms/Image', label: 'Image' }],\n });\n await page.waitForChanges();\n\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root>\n <pos-app-image-viewer></pos-app-image-viewer>\n </mock:shadow-root>\n </pos-type-router>\n`);\n });\n\n it('renders document viewer for pdf resource', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [\n { uri: 'http://purl.org/dc/terms/Image', label: 'Image' },\n { uri: 'http://www.w3.org/ns/iana/media-types/application/pdf#Resource', label: 'Resource' },\n ],\n });\n await page.waitForChanges();\n\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root>\n <pos-app-document-viewer></pos-app-document-viewer>\n </mock:shadow-root>\n </pos-type-router>\n`);\n });\n\n it('renders document viewer for generic document resource', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n await page.rootInstance.receiveResource({\n types: () => [{ uri: 'http://www.w3.org/2007/ont/link#Document', label: 'Document' }],\n });\n await page.waitForChanges();\n\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root>\n <pos-app-document-viewer></pos-app-document-viewer>\n </mock:shadow-root>\n </pos-type-router>\n`);\n });\n\n it('renders generic app for ldp resources', async () => {\n const page = await newSpecPage({\n components: [PosTypeRouter],\n html: `<pos-type-router />`,\n });\n await page.rootInstance.receiveResource({\n types: () => ['http://www.w3.org/ns/ldp#Resource'],\n });\n await page.waitForChanges();\n\n expect(page.root).toEqualHtml(`\n <pos-type-router>\n <mock:shadow-root>\n <pos-app-generic></pos-app-generic>\n </mock:shadow-root>\n </pos-type-router>\n`);\n });\n});\n"]}