@sinequa/atomic-angular 0.0.146 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +145 -0
- package/components/no-result/i18n/en.json +5 -0
- package/components/no-result/i18n/fr.json +5 -0
- package/components/sort-selector/i18n/en.json +3 -0
- package/components/sort-selector/i18n/fr.json +3 -0
- package/components/source/i18n/en.json +3 -0
- package/components/source/i18n/fr.json +3 -0
- package/features/alerts/i18n/en.json +33 -0
- package/features/alerts/i18n/fr.json +33 -0
- package/features/bookmarks/i18n/en.json +11 -0
- package/features/bookmarks/i18n/fr.json +11 -0
- package/features/collections/i18n/en.json +17 -0
- package/features/collections/i18n/fr.json +16 -0
- package/features/dialogs/i18n/en.json +15 -0
- package/features/dialogs/i18n/fr.json +15 -0
- package/features/did-you-mean/i18n/en.json +5 -0
- package/features/did-you-mean/i18n/fr.json +5 -0
- package/features/drawer/i18n/en.json +22 -0
- package/features/drawer/i18n/fr.json +22 -0
- package/features/export/i18n/en.json +7 -0
- package/features/export/i18n/fr.json +7 -0
- package/features/feedback/i18n/en.json +26 -0
- package/features/feedback/i18n/fr.json +26 -0
- package/features/filters/i18n/en.json +14 -0
- package/features/filters/i18n/fr.json +14 -0
- package/features/labels/i18n/en.json +8 -0
- package/features/labels/i18n/fr.json +8 -0
- package/features/recent-searches/i18n/en.json +6 -0
- package/features/recent-searches/i18n/fr.json +6 -0
- package/features/saved-searches/i18n/en.json +8 -0
- package/features/saved-searches/i18n/fr.json +8 -0
- package/features/sign-in/i18n/en.json +12 -0
- package/features/sign-in/i18n/fr.json +14 -0
- package/fesm2022/sinequa-atomic-angular.mjs +8021 -2672
- package/fesm2022/sinequa-atomic-angular.mjs.map +1 -1
- package/index.d.ts +6036 -3
- package/package.json +68 -10
- package/assets/tailwind.css +0 -334
- package/esm2022/lib/assistant/index.mjs +0 -2
- package/esm2022/lib/assistant/signalR.web.service.mjs +0 -81
- package/esm2022/lib/components/dropdown-input.mjs +0 -97
- package/esm2022/lib/components/dropdown-list.mjs +0 -35
- package/esm2022/lib/components/dropdown.mjs +0 -127
- package/esm2022/lib/components/index.mjs +0 -7
- package/esm2022/lib/components/menu/index.mjs +0 -3
- package/esm2022/lib/components/menu/menu-item.mjs +0 -22
- package/esm2022/lib/components/menu/menu.mjs +0 -99
- package/esm2022/lib/components/metadata/index.mjs +0 -2
- package/esm2022/lib/components/metadata/metadata.component.mjs +0 -65
- package/esm2022/lib/components/theme/index.mjs +0 -3
- package/esm2022/lib/components/theme/theme-selector.component.mjs +0 -67
- package/esm2022/lib/components/theme/theme-toggle.component.mjs +0 -67
- package/esm2022/lib/directives/index.mjs +0 -5
- package/esm2022/lib/directives/infinite-scroll.directive.mjs +0 -47
- package/esm2022/lib/directives/select-article-on-click.directive.mjs +0 -39
- package/esm2022/lib/directives/show-bookmark.directive.mjs +0 -55
- package/esm2022/lib/directives/theme-provider.directive.mjs +0 -31
- package/esm2022/lib/guards/auth.guard.mjs +0 -27
- package/esm2022/lib/guards/index.mjs +0 -3
- package/esm2022/lib/guards/initialization.guard.mjs +0 -41
- package/esm2022/lib/interceptors/audit.interceptor.mjs +0 -23
- package/esm2022/lib/interceptors/auth.interceptor.mjs +0 -49
- package/esm2022/lib/interceptors/body.interceptor.mjs +0 -24
- package/esm2022/lib/interceptors/error.interceptor.mjs +0 -35
- package/esm2022/lib/interceptors/index.mjs +0 -7
- package/esm2022/lib/interceptors/toast.interceptor.mjs +0 -27
- package/esm2022/lib/models/aggregation.mjs +0 -2
- package/esm2022/lib/models/article-metadata.mjs +0 -2
- package/esm2022/lib/models/autocomplete.mjs +0 -2
- package/esm2022/lib/models/custom-json.mjs +0 -2
- package/esm2022/lib/models/filter-dropdown.mjs +0 -2
- package/esm2022/lib/models/index.mjs +0 -7
- package/esm2022/lib/models/user-settings.mjs +0 -2
- package/esm2022/lib/pipes/highlight-word.pipe.mjs +0 -33
- package/esm2022/lib/pipes/index.mjs +0 -3
- package/esm2022/lib/pipes/source-icon.pipe.mjs +0 -43
- package/esm2022/lib/public-api.mjs +0 -18
- package/esm2022/lib/resolvers/index.mjs +0 -2
- package/esm2022/lib/resolvers/query-name-resolver.mjs +0 -14
- package/esm2022/lib/resources/index.mjs +0 -2
- package/esm2022/lib/resources/themes.mjs +0 -53
- package/esm2022/lib/services/application.service.mjs +0 -245
- package/esm2022/lib/services/autocomplete.service.mjs +0 -85
- package/esm2022/lib/services/drawer/backdrop.service.mjs +0 -23
- package/esm2022/lib/services/drawer/drawer-stack.service.mjs +0 -152
- package/esm2022/lib/services/drawer/drawer.service.mjs +0 -38
- package/esm2022/lib/services/index.mjs +0 -12
- package/esm2022/lib/services/label.service.mjs +0 -161
- package/esm2022/lib/services/navigation.service.mjs +0 -59
- package/esm2022/lib/services/saved-searches.service.mjs +0 -75
- package/esm2022/lib/services/search.service.mjs +0 -89
- package/esm2022/lib/services/selection-history.service.mjs +0 -92
- package/esm2022/lib/services/selection.service.mjs +0 -87
- package/esm2022/lib/stores/aggregations.store.mjs +0 -59
- package/esm2022/lib/stores/app.store.mjs +0 -270
- package/esm2022/lib/stores/application.store.mjs +0 -87
- package/esm2022/lib/stores/index.mjs +0 -9
- package/esm2022/lib/stores/principal.store.mjs +0 -47
- package/esm2022/lib/stores/query-params.store.mjs +0 -207
- package/esm2022/lib/stores/selection.store.mjs +0 -45
- package/esm2022/lib/stores/theme.store.mjs +0 -116
- package/esm2022/lib/stores/user-settings.store.mjs +0 -391
- package/esm2022/lib/tokens/highlights.mjs +0 -32
- package/esm2022/lib/tokens/index.mjs +0 -2
- package/esm2022/lib/utils/debounced-signal.mjs +0 -38
- package/esm2022/lib/utils/index.mjs +0 -8
- package/esm2022/lib/utils/inline-worker.mjs +0 -40
- package/esm2022/lib/utils/query.mjs +0 -58
- package/esm2022/lib/utils/routes.mjs +0 -28
- package/esm2022/lib/utils/tailwind-utils.mjs +0 -6
- package/esm2022/lib/utils/theme-body-hook.mjs +0 -18
- package/esm2022/lib/utils/theme-registry.mjs +0 -6
- package/esm2022/lib/web-services/aggregations.service.mjs +0 -104
- package/esm2022/lib/web-services/app.service.mjs +0 -48
- package/esm2022/lib/web-services/audit.service.mjs +0 -122
- package/esm2022/lib/web-services/index.mjs +0 -10
- package/esm2022/lib/web-services/json-method-plugin.service.mjs +0 -54
- package/esm2022/lib/web-services/preview.service.mjs +0 -327
- package/esm2022/lib/web-services/principal.service.mjs +0 -46
- package/esm2022/lib/web-services/query.service.mjs +0 -123
- package/esm2022/lib/web-services/text-chunck.service.mjs +0 -46
- package/esm2022/public-api.mjs +0 -5
- package/esm2022/sinequa-atomic-angular.mjs +0 -5
- package/lib/assistant/index.d.ts +0 -1
- package/lib/assistant/signalR.web.service.d.ts +0 -46
- package/lib/components/dropdown-input.d.ts +0 -18
- package/lib/components/dropdown-list.d.ts +0 -8
- package/lib/components/dropdown.d.ts +0 -50
- package/lib/components/index.d.ts +0 -6
- package/lib/components/menu/index.d.ts +0 -2
- package/lib/components/menu/menu-item.d.ts +0 -8
- package/lib/components/menu/menu.d.ts +0 -24
- package/lib/components/metadata/index.d.ts +0 -1
- package/lib/components/metadata/metadata.component.d.ts +0 -24
- package/lib/components/theme/index.d.ts +0 -2
- package/lib/components/theme/theme-selector.component.d.ts +0 -70
- package/lib/components/theme/theme-toggle.component.d.ts +0 -10
- package/lib/directives/index.d.ts +0 -4
- package/lib/directives/infinite-scroll.directive.d.ts +0 -30
- package/lib/directives/select-article-on-click.directive.d.ts +0 -14
- package/lib/directives/show-bookmark.directive.d.ts +0 -60
- package/lib/directives/theme-provider.directive.d.ts +0 -20
- package/lib/guards/auth.guard.d.ts +0 -7
- package/lib/guards/index.d.ts +0 -2
- package/lib/guards/initialization.guard.d.ts +0 -20
- package/lib/interceptors/audit.interceptor.d.ts +0 -13
- package/lib/interceptors/auth.interceptor.d.ts +0 -14
- package/lib/interceptors/body.interceptor.d.ts +0 -11
- package/lib/interceptors/error.interceptor.d.ts +0 -9
- package/lib/interceptors/index.d.ts +0 -5
- package/lib/interceptors/toast.interceptor.d.ts +0 -13
- package/lib/models/aggregation.d.ts +0 -12
- package/lib/models/article-metadata.d.ts +0 -5
- package/lib/models/autocomplete.d.ts +0 -5
- package/lib/models/custom-json.d.ts +0 -69
- package/lib/models/filter-dropdown.d.ts +0 -10
- package/lib/models/index.d.ts +0 -6
- package/lib/models/user-settings.d.ts +0 -38
- package/lib/pipes/highlight-word.pipe.d.ts +0 -22
- package/lib/pipes/index.d.ts +0 -2
- package/lib/pipes/source-icon.pipe.d.ts +0 -51
- package/lib/public-api.d.ts +0 -14
- package/lib/resolvers/index.d.ts +0 -1
- package/lib/resolvers/query-name-resolver.d.ts +0 -9
- package/lib/resources/index.d.ts +0 -1
- package/lib/resources/themes.d.ts +0 -51
- package/lib/services/application.service.d.ts +0 -183
- package/lib/services/autocomplete.service.d.ts +0 -96
- package/lib/services/drawer/backdrop.service.d.ts +0 -9
- package/lib/services/drawer/drawer-stack.service.d.ts +0 -70
- package/lib/services/drawer/drawer.service.d.ts +0 -15
- package/lib/services/index.d.ts +0 -11
- package/lib/services/label.service.d.ts +0 -114
- package/lib/services/navigation.service.d.ts +0 -33
- package/lib/services/saved-searches.service.d.ts +0 -149
- package/lib/services/search.service.d.ts +0 -159
- package/lib/services/selection-history.service.d.ts +0 -50
- package/lib/services/selection.service.d.ts +0 -123
- package/lib/stores/aggregations.store.d.ts +0 -25
- package/lib/stores/app.store.d.ts +0 -110
- package/lib/stores/application.store.d.ts +0 -83
- package/lib/stores/index.d.ts +0 -8
- package/lib/stores/principal.store.d.ts +0 -47
- package/lib/stores/query-params.store.d.ts +0 -128
- package/lib/stores/selection.store.d.ts +0 -52
- package/lib/stores/theme.store.d.ts +0 -66
- package/lib/stores/user-settings.store.d.ts +0 -111
- package/lib/tokens/highlights.d.ts +0 -8
- package/lib/tokens/index.d.ts +0 -1
- package/lib/utils/debounced-signal.d.ts +0 -25
- package/lib/utils/index.d.ts +0 -7
- package/lib/utils/inline-worker.d.ts +0 -11
- package/lib/utils/query.d.ts +0 -26
- package/lib/utils/routes.d.ts +0 -16
- package/lib/utils/tailwind-utils.d.ts +0 -2
- package/lib/utils/theme-body-hook.d.ts +0 -6
- package/lib/utils/theme-registry.d.ts +0 -3
- package/lib/web-services/aggregations.service.d.ts +0 -57
- package/lib/web-services/app.service.d.ts +0 -30
- package/lib/web-services/audit.service.d.ts +0 -72
- package/lib/web-services/index.d.ts +0 -9
- package/lib/web-services/json-method-plugin.service.d.ts +0 -41
- package/lib/web-services/preview.service.d.ts +0 -283
- package/lib/web-services/principal.service.d.ts +0 -28
- package/lib/web-services/query.service.d.ts +0 -29
- package/lib/web-services/text-chunck.service.d.ts +0 -22
- package/public-api.d.ts +0 -1
package/package.json
CHANGED
|
@@ -1,13 +1,73 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sinequa/atomic-angular",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
"version": "0.1.3",
|
|
4
|
+
"i18n": [
|
|
5
|
+
{
|
|
6
|
+
"scope": "recent-searches",
|
|
7
|
+
"path": "features/recent-searches/i18n"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"scope": "saved-searches",
|
|
11
|
+
"path": "features/saved-searches/i18n"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"scope": "bookmarks",
|
|
15
|
+
"path": "features/bookmarks/i18n"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"scope": "collections",
|
|
19
|
+
"path": "features/collections/i18n"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"scope": "alerts",
|
|
23
|
+
"path": "features/alerts/i18n"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"scope": "did-you-mean",
|
|
27
|
+
"path": "features/did-you-mean/i18n"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"scope": "export",
|
|
31
|
+
"path": "features/export/i18n"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"scope": "labels",
|
|
35
|
+
"path": "features/labels/i18n"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"scope": "feedback",
|
|
39
|
+
"path": "features/feedback/i18n"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"scope": "sort-selector",
|
|
43
|
+
"path": "components/sort-selector/i18n"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"scope": "dialogs",
|
|
47
|
+
"path": "features/dialogs/i18n"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"scope": "login",
|
|
51
|
+
"path": "features/sign-in/i18n"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"scope": "filters",
|
|
55
|
+
"path": "features/filters/i18n"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"scope": "drawers",
|
|
59
|
+
"path": "features/drawer/i18n"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"scope": "no-result",
|
|
63
|
+
"path": "components/no-result/i18n"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"scope": "sources",
|
|
67
|
+
"path": "components/source/i18n"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"peerDependencies": {},
|
|
11
71
|
"dependencies": {
|
|
12
72
|
"tslib": "^2.3.0"
|
|
13
73
|
},
|
|
@@ -20,8 +80,6 @@
|
|
|
20
80
|
},
|
|
21
81
|
".": {
|
|
22
82
|
"types": "./index.d.ts",
|
|
23
|
-
"esm2022": "./esm2022/sinequa-atomic-angular.mjs",
|
|
24
|
-
"esm": "./esm2022/sinequa-atomic-angular.mjs",
|
|
25
83
|
"default": "./fesm2022/sinequa-atomic-angular.mjs"
|
|
26
84
|
}
|
|
27
85
|
}
|
package/assets/tailwind.css
DELETED
|
@@ -1,334 +0,0 @@
|
|
|
1
|
-
*, ::before, ::after {
|
|
2
|
-
--tw-border-spacing-x: 0;
|
|
3
|
-
--tw-border-spacing-y: 0;
|
|
4
|
-
--tw-translate-x: 0;
|
|
5
|
-
--tw-translate-y: 0;
|
|
6
|
-
--tw-rotate: 0;
|
|
7
|
-
--tw-skew-x: 0;
|
|
8
|
-
--tw-skew-y: 0;
|
|
9
|
-
--tw-scale-x: 1;
|
|
10
|
-
--tw-scale-y: 1;
|
|
11
|
-
--tw-pan-x: ;
|
|
12
|
-
--tw-pan-y: ;
|
|
13
|
-
--tw-pinch-zoom: ;
|
|
14
|
-
--tw-scroll-snap-strictness: proximity;
|
|
15
|
-
--tw-gradient-from-position: ;
|
|
16
|
-
--tw-gradient-via-position: ;
|
|
17
|
-
--tw-gradient-to-position: ;
|
|
18
|
-
--tw-ordinal: ;
|
|
19
|
-
--tw-slashed-zero: ;
|
|
20
|
-
--tw-numeric-figure: ;
|
|
21
|
-
--tw-numeric-spacing: ;
|
|
22
|
-
--tw-numeric-fraction: ;
|
|
23
|
-
--tw-ring-inset: ;
|
|
24
|
-
--tw-ring-offset-width: 0px;
|
|
25
|
-
--tw-ring-offset-color: #fff;
|
|
26
|
-
--tw-ring-color: rgb(59 130 246 / 0.5);
|
|
27
|
-
--tw-ring-offset-shadow: 0 0 #0000;
|
|
28
|
-
--tw-ring-shadow: 0 0 #0000;
|
|
29
|
-
--tw-shadow: 0 0 #0000;
|
|
30
|
-
--tw-shadow-colored: 0 0 #0000;
|
|
31
|
-
--tw-blur: ;
|
|
32
|
-
--tw-brightness: ;
|
|
33
|
-
--tw-contrast: ;
|
|
34
|
-
--tw-grayscale: ;
|
|
35
|
-
--tw-hue-rotate: ;
|
|
36
|
-
--tw-invert: ;
|
|
37
|
-
--tw-saturate: ;
|
|
38
|
-
--tw-sepia: ;
|
|
39
|
-
--tw-drop-shadow: ;
|
|
40
|
-
--tw-backdrop-blur: ;
|
|
41
|
-
--tw-backdrop-brightness: ;
|
|
42
|
-
--tw-backdrop-contrast: ;
|
|
43
|
-
--tw-backdrop-grayscale: ;
|
|
44
|
-
--tw-backdrop-hue-rotate: ;
|
|
45
|
-
--tw-backdrop-invert: ;
|
|
46
|
-
--tw-backdrop-opacity: ;
|
|
47
|
-
--tw-backdrop-saturate: ;
|
|
48
|
-
--tw-backdrop-sepia: ;
|
|
49
|
-
--tw-contain-size: ;
|
|
50
|
-
--tw-contain-layout: ;
|
|
51
|
-
--tw-contain-paint: ;
|
|
52
|
-
--tw-contain-style:
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
::backdrop {
|
|
56
|
-
--tw-border-spacing-x: 0;
|
|
57
|
-
--tw-border-spacing-y: 0;
|
|
58
|
-
--tw-translate-x: 0;
|
|
59
|
-
--tw-translate-y: 0;
|
|
60
|
-
--tw-rotate: 0;
|
|
61
|
-
--tw-skew-x: 0;
|
|
62
|
-
--tw-skew-y: 0;
|
|
63
|
-
--tw-scale-x: 1;
|
|
64
|
-
--tw-scale-y: 1;
|
|
65
|
-
--tw-pan-x: ;
|
|
66
|
-
--tw-pan-y: ;
|
|
67
|
-
--tw-pinch-zoom: ;
|
|
68
|
-
--tw-scroll-snap-strictness: proximity;
|
|
69
|
-
--tw-gradient-from-position: ;
|
|
70
|
-
--tw-gradient-via-position: ;
|
|
71
|
-
--tw-gradient-to-position: ;
|
|
72
|
-
--tw-ordinal: ;
|
|
73
|
-
--tw-slashed-zero: ;
|
|
74
|
-
--tw-numeric-figure: ;
|
|
75
|
-
--tw-numeric-spacing: ;
|
|
76
|
-
--tw-numeric-fraction: ;
|
|
77
|
-
--tw-ring-inset: ;
|
|
78
|
-
--tw-ring-offset-width: 0px;
|
|
79
|
-
--tw-ring-offset-color: #fff;
|
|
80
|
-
--tw-ring-color: rgb(59 130 246 / 0.5);
|
|
81
|
-
--tw-ring-offset-shadow: 0 0 #0000;
|
|
82
|
-
--tw-ring-shadow: 0 0 #0000;
|
|
83
|
-
--tw-shadow: 0 0 #0000;
|
|
84
|
-
--tw-shadow-colored: 0 0 #0000;
|
|
85
|
-
--tw-blur: ;
|
|
86
|
-
--tw-brightness: ;
|
|
87
|
-
--tw-contrast: ;
|
|
88
|
-
--tw-grayscale: ;
|
|
89
|
-
--tw-hue-rotate: ;
|
|
90
|
-
--tw-invert: ;
|
|
91
|
-
--tw-saturate: ;
|
|
92
|
-
--tw-sepia: ;
|
|
93
|
-
--tw-drop-shadow: ;
|
|
94
|
-
--tw-backdrop-blur: ;
|
|
95
|
-
--tw-backdrop-brightness: ;
|
|
96
|
-
--tw-backdrop-contrast: ;
|
|
97
|
-
--tw-backdrop-grayscale: ;
|
|
98
|
-
--tw-backdrop-hue-rotate: ;
|
|
99
|
-
--tw-backdrop-invert: ;
|
|
100
|
-
--tw-backdrop-opacity: ;
|
|
101
|
-
--tw-backdrop-saturate: ;
|
|
102
|
-
--tw-backdrop-sepia: ;
|
|
103
|
-
--tw-contain-size: ;
|
|
104
|
-
--tw-contain-layout: ;
|
|
105
|
-
--tw-contain-paint: ;
|
|
106
|
-
--tw-contain-style:
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
.absolute {
|
|
110
|
-
position: absolute
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
.relative {
|
|
114
|
-
position: relative
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
.z-10 {
|
|
118
|
-
z-index: 10
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
.float-left {
|
|
122
|
-
float: left
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
.m-1 {
|
|
126
|
-
margin: 0.25rem
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
.my-2 {
|
|
130
|
-
margin-top: 0.5rem;
|
|
131
|
-
margin-bottom: 0.5rem
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
.mb-4 {
|
|
135
|
-
margin-bottom: 1rem
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
.ms-1 {
|
|
139
|
-
margin-inline-start: 0.25rem
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
.mt-\[-1\.5rem\] {
|
|
143
|
-
margin-top: -1.5rem
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
.block {
|
|
147
|
-
display: block
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.flex {
|
|
151
|
-
display: flex
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
.hidden {
|
|
155
|
-
display: none
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
.size-3 {
|
|
159
|
-
width: 0.75rem;
|
|
160
|
-
height: 0.75rem
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
.max-h-44 {
|
|
164
|
-
max-height: 11rem
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
.w-1\/2 {
|
|
168
|
-
width: 50%
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
.w-full {
|
|
172
|
-
width: 100%
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
.w-max {
|
|
176
|
-
width: -moz-max-content;
|
|
177
|
-
width: max-content
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
.min-w-fit {
|
|
181
|
-
min-width: -moz-fit-content;
|
|
182
|
-
min-width: fit-content
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
.flex-grow {
|
|
186
|
-
flex-grow: 1
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
.grow {
|
|
190
|
-
flex-grow: 1
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
.cursor-default {
|
|
194
|
-
cursor: default
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
.cursor-pointer {
|
|
198
|
-
cursor: pointer
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
.select-none {
|
|
202
|
-
-webkit-user-select: none;
|
|
203
|
-
-moz-user-select: none;
|
|
204
|
-
user-select: none
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
.flex-col {
|
|
208
|
-
flex-direction: column
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
.place-content-center {
|
|
212
|
-
place-content: center
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
.items-center {
|
|
216
|
-
align-items: center
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
.items-baseline {
|
|
220
|
-
align-items: baseline
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
.justify-start {
|
|
224
|
-
justify-content: flex-start
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
.gap-1 {
|
|
228
|
-
gap: 0.25rem
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
.gap-2 {
|
|
232
|
-
gap: 0.5rem
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
.divide-y > :not([hidden]) ~ :not([hidden]) {
|
|
236
|
-
--tw-divide-y-reverse: 0;
|
|
237
|
-
border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
|
|
238
|
-
border-bottom-width: calc(1px * var(--tw-divide-y-reverse))
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
.overflow-auto {
|
|
242
|
-
overflow: auto
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
.text-ellipsis {
|
|
246
|
-
text-overflow: ellipsis
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
.rounded {
|
|
250
|
-
border-radius: 0.25rem
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
.rounded-full {
|
|
254
|
-
border-radius: 9999px
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
.rounded-md {
|
|
258
|
-
border-radius: 0.375rem
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
.border {
|
|
262
|
-
border-width: 1px
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
.border-gray-300 {
|
|
266
|
-
--tw-border-opacity: 1;
|
|
267
|
-
border-color: rgb(209 213 219 / var(--tw-border-opacity))
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
.border-neutral-200 {
|
|
271
|
-
--tw-border-opacity: 1;
|
|
272
|
-
border-color: rgb(229 229 229 / var(--tw-border-opacity))
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
.bg-white {
|
|
276
|
-
--tw-bg-opacity: 1;
|
|
277
|
-
background-color: rgb(255 255 255 / var(--tw-bg-opacity))
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
.p-2 {
|
|
281
|
-
padding: 0.5rem
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
.px-4 {
|
|
285
|
-
padding-left: 1rem;
|
|
286
|
-
padding-right: 1rem
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
.py-2 {
|
|
290
|
-
padding-top: 0.5rem;
|
|
291
|
-
padding-bottom: 0.5rem
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
.text-sm {
|
|
295
|
-
font-size: 0.875rem;
|
|
296
|
-
line-height: 1.25rem
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
.font-semibold {
|
|
300
|
-
font-weight: 600
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
.text-white {
|
|
304
|
-
--tw-text-opacity: 1;
|
|
305
|
-
color: rgb(255 255 255 / var(--tw-text-opacity))
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
.opacity-50 {
|
|
309
|
-
opacity: 0.5
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
.shadow {
|
|
313
|
-
--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
314
|
-
--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
|
|
315
|
-
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
.filter {
|
|
319
|
-
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
|
|
320
|
-
}
|
|
321
|
-
|
|
322
|
-
.hover\:bg-transparent:hover {
|
|
323
|
-
background-color: transparent
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
.focus\:outline-none:focus {
|
|
327
|
-
outline: 2px solid transparent;
|
|
328
|
-
outline-offset: 2px
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
.group:hover .group-hover\:bg-white {
|
|
332
|
-
--tw-bg-opacity: 1;
|
|
333
|
-
background-color: rgb(255 255 255 / var(--tw-bg-opacity))
|
|
334
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './signalR.web.service';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG9taWMtYW5ndWxhci9zcmMvbGliL2Fzc2lzdGFudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaWduYWxSLndlYi5zZXJ2aWNlJztcbiJdfQ==
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { Injectable, InjectionToken } from "@angular/core";
|
|
2
|
-
import { HubConnectionBuilder, LogLevel } from '@microsoft/signalr';
|
|
3
|
-
import { globalConfig } from "@sinequa/atomic";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/** A token that is used to inject the transports allowed to use by hub connection.
|
|
6
|
-
*
|
|
7
|
-
* Expects a {@link HttpTransportType} value.
|
|
8
|
-
*/
|
|
9
|
-
export const SIGNAL_R_TRANSPORTS = new InjectionToken('SIGNAL_R_TRANSPORTS');
|
|
10
|
-
/** A token that is used to inject the log level for the hub connection.
|
|
11
|
-
*
|
|
12
|
-
* Expects a {@link LogLevel} value.
|
|
13
|
-
*/
|
|
14
|
-
export const SIGNAL_R_LOG_LEVEL = new InjectionToken('SIGNAL_R_LOG_LEVEL');
|
|
15
|
-
/**
|
|
16
|
-
* A service to connect the Sinequa server to the client via SignalR
|
|
17
|
-
*/
|
|
18
|
-
export class SignalRWebService {
|
|
19
|
-
constructor() {
|
|
20
|
-
this.endpoints = `${globalConfig.backendUrl}/endpoints/v1`;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Builds a SignalR connection to the given endpoint
|
|
24
|
-
* @param endpointName Name of the endpoint to connect to
|
|
25
|
-
* @param options Options for the connection. It must overrides the default options
|
|
26
|
-
* @param logLevel The log level for the connection
|
|
27
|
-
* @param automaticReconnect Whether the connection should automatically attempt to reconnect
|
|
28
|
-
* @returns A SignalR connection
|
|
29
|
-
*/
|
|
30
|
-
buildConnection(endpointName, options, logLevel = LogLevel.Information, automaticReconnect = false) {
|
|
31
|
-
const url = `${this.endpoints}/${endpointName}`;
|
|
32
|
-
const connectionBuilder = new HubConnectionBuilder()
|
|
33
|
-
.withUrl(url, options)
|
|
34
|
-
.configureLogging(logLevel);
|
|
35
|
-
if (automaticReconnect) {
|
|
36
|
-
connectionBuilder.withAutomaticReconnect();
|
|
37
|
-
}
|
|
38
|
-
return connectionBuilder.build();
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Starts a SignalR connection.
|
|
42
|
-
* @param connection A SignalR connection
|
|
43
|
-
*/
|
|
44
|
-
async startConnection(connection) {
|
|
45
|
-
if (!connection) {
|
|
46
|
-
throw new Error("Please provide a valid connection to start");
|
|
47
|
-
}
|
|
48
|
-
try {
|
|
49
|
-
await connection.start();
|
|
50
|
-
console.log(`The SignalR connection has been successfully established! \n url: ${connection.baseUrl} \n connectionId: ${connection.connectionId}`);
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
throw error;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Stops a SignalR connection.
|
|
58
|
-
* @param connection A SignalR connection
|
|
59
|
-
*/
|
|
60
|
-
async stopConnection(connection) {
|
|
61
|
-
if (!connection) {
|
|
62
|
-
throw new Error("Please provide a valid connection to stop");
|
|
63
|
-
}
|
|
64
|
-
try {
|
|
65
|
-
await connection.stop();
|
|
66
|
-
console.log(`The SignalR connection has been successfully stopped! \n url: ${connection.baseUrl} \n connectionId: ${connection.connectionId}`);
|
|
67
|
-
}
|
|
68
|
-
catch (error) {
|
|
69
|
-
throw error;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SignalRWebService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
73
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SignalRWebService, providedIn: "root" }); }
|
|
74
|
-
}
|
|
75
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SignalRWebService, decorators: [{
|
|
76
|
-
type: Injectable,
|
|
77
|
-
args: [{
|
|
78
|
-
providedIn: "root"
|
|
79
|
-
}]
|
|
80
|
-
}] });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsUi53ZWIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2F0b21pYy1hbmd1bGFyL3NyYy9saWIvYXNzaXN0YW50L3NpZ25hbFIud2ViLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFFBQVEsRUFBZ0UsTUFBTSxvQkFBb0IsQ0FBQztBQUNsSSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBUy9DOzs7RUFHRTtBQUNGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFvQixxQkFBcUIsQ0FBQyxDQUFDO0FBRWhHOzs7RUFHRTtBQUNGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFXLG9CQUFvQixDQUFDLENBQUM7QUFFckY7O0dBRUc7QUFJSCxNQUFNLE9BQU8saUJBQWlCO0lBSDlCO1FBSXFCLGNBQVMsR0FBRyxHQUFHLFlBQVksQ0FBQyxVQUFVLGVBQWUsQ0FBQztLQXdEMUU7SUFyREM7Ozs7Ozs7T0FPRztJQUNILGVBQWUsQ0FBQyxZQUFvQixFQUFFLE9BQTBCLEVBQUUsUUFBUSxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsa0JBQWtCLEdBQUcsS0FBSztRQUMzSCxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLG9CQUFvQixFQUFFO2FBQ2pELE9BQU8sQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDO2FBQ3JCLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlCLElBQUksa0JBQWtCLEVBQUUsQ0FBQztZQUN2QixpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzdDLENBQUM7UUFFRCxPQUFPLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsZUFBZSxDQUFDLFVBQXFDO1FBQ3pELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELElBQUksQ0FBQztZQUNILE1BQU0sVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMscUVBQXFFLFVBQVUsQ0FBQyxPQUFPLHFCQUFxQixVQUFVLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNySixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsY0FBYyxDQUFDLFVBQXFDO1FBQ3hELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUNELElBQUksQ0FBQztZQUNILE1BQU0sVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUVBQWlFLFVBQVUsQ0FBQyxPQUFPLHFCQUFxQixVQUFVLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNqSixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sS0FBSyxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7OEdBeERVLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzJGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBIdWJDb25uZWN0aW9uQnVpbGRlciwgTG9nTGV2ZWwsIEh1YkNvbm5lY3Rpb24sIE1lc3NhZ2VIZWFkZXJzLCBIdHRwVHJhbnNwb3J0VHlwZSwgSVRyYW5zcG9ydCB9IGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XG5pbXBvcnQgeyBnbG9iYWxDb25maWcgfSBmcm9tIFwiQHNpbmVxdWEvYXRvbWljXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29ubmVjdGlvbk9wdGlvbnMge1xuICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuOyAvLyBpZiB0cnVlLCB0aGUgYnJvd3NlciBhdXRvbWF0aWNhbGx5IGluY2x1ZGVzIHRoZSBhdXRoZW50aWNhdGlvbiBjb29raWUgaW4gdGhlIHJlcXVlc3QgaGVhZGVycyB3aGVuIGVzdGFibGlzaGluZyB0aGUgU2lnbmFsUiBjb25uZWN0aW9uXG4gIGhlYWRlcnM/OiBNZXNzYWdlSGVhZGVycztcbiAgdHJhbnNwb3J0PzogSHR0cFRyYW5zcG9ydFR5cGUgfCBJVHJhbnNwb3J0OyAvLyBJZiB0cmFuc3BvcnRzIGFyZSBwcm92aWRlZCwgdXNlIHRoZW07IG90aGVyd2lzZSwgbGV0IFNpZ25hbFIgbmVnb3RpYXRlXG4gIGFjY2Vzc1Rva2VuRmFjdG9yeT86ICgpID0+IHN0cmluZyB8IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyoqIEEgdG9rZW4gdGhhdCBpcyB1c2VkIHRvIGluamVjdCB0aGUgdHJhbnNwb3J0cyBhbGxvd2VkIHRvIHVzZSBieSBodWIgY29ubmVjdGlvbi5cbiAqXG4gKiBFeHBlY3RzIGEge0BsaW5rIEh0dHBUcmFuc3BvcnRUeXBlfSB2YWx1ZS5cbiovXG5leHBvcnQgY29uc3QgU0lHTkFMX1JfVFJBTlNQT1JUUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIdHRwVHJhbnNwb3J0VHlwZT4oJ1NJR05BTF9SX1RSQU5TUE9SVFMnKTtcblxuLyoqIEEgdG9rZW4gdGhhdCBpcyB1c2VkIHRvIGluamVjdCB0aGUgbG9nIGxldmVsIGZvciB0aGUgaHViIGNvbm5lY3Rpb24uXG4gKlxuICogRXhwZWN0cyBhIHtAbGluayBMb2dMZXZlbH0gdmFsdWUuXG4qL1xuZXhwb3J0IGNvbnN0IFNJR05BTF9SX0xPR19MRVZFTCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxMb2dMZXZlbD4oJ1NJR05BTF9SX0xPR19MRVZFTCcpO1xuXG4vKipcbiAqIEEgc2VydmljZSB0byBjb25uZWN0IHRoZSBTaW5lcXVhIHNlcnZlciB0byB0aGUgY2xpZW50IHZpYSBTaWduYWxSXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcbn0pXG5leHBvcnQgY2xhc3MgU2lnbmFsUldlYlNlcnZpY2Uge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZW5kcG9pbnRzID0gYCR7Z2xvYmFsQ29uZmlnLmJhY2tlbmRVcmx9L2VuZHBvaW50cy92MWA7XG5cblxuICAvKipcbiAgICogQnVpbGRzIGEgU2lnbmFsUiBjb25uZWN0aW9uIHRvIHRoZSBnaXZlbiBlbmRwb2ludFxuICAgKiBAcGFyYW0gZW5kcG9pbnROYW1lIE5hbWUgb2YgdGhlIGVuZHBvaW50IHRvIGNvbm5lY3QgdG9cbiAgICogQHBhcmFtIG9wdGlvbnMgIE9wdGlvbnMgZm9yIHRoZSBjb25uZWN0aW9uLiBJdCBtdXN0IG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBvcHRpb25zXG4gICAqIEBwYXJhbSBsb2dMZXZlbCAgVGhlIGxvZyBsZXZlbCBmb3IgdGhlIGNvbm5lY3Rpb25cbiAgICogQHBhcmFtIGF1dG9tYXRpY1JlY29ubmVjdCAgV2hldGhlciB0aGUgY29ubmVjdGlvbiBzaG91bGQgYXV0b21hdGljYWxseSBhdHRlbXB0IHRvIHJlY29ubmVjdFxuICAgKiBAcmV0dXJucyAgQSBTaWduYWxSIGNvbm5lY3Rpb25cbiAgICovXG4gIGJ1aWxkQ29ubmVjdGlvbihlbmRwb2ludE5hbWU6IHN0cmluZywgb3B0aW9uczogQ29ubmVjdGlvbk9wdGlvbnMsIGxvZ0xldmVsID0gTG9nTGV2ZWwuSW5mb3JtYXRpb24sIGF1dG9tYXRpY1JlY29ubmVjdCA9IGZhbHNlKTogSHViQ29ubmVjdGlvbiB7XG4gICAgY29uc3QgdXJsID0gYCR7dGhpcy5lbmRwb2ludHN9LyR7ZW5kcG9pbnROYW1lfWA7XG5cbiAgICBjb25zdCBjb25uZWN0aW9uQnVpbGRlciA9IG5ldyBIdWJDb25uZWN0aW9uQnVpbGRlcigpXG4gICAgICAud2l0aFVybCh1cmwsIG9wdGlvbnMpXG4gICAgICAuY29uZmlndXJlTG9nZ2luZyhsb2dMZXZlbCk7XG5cbiAgICBpZiAoYXV0b21hdGljUmVjb25uZWN0KSB7XG4gICAgICBjb25uZWN0aW9uQnVpbGRlci53aXRoQXV0b21hdGljUmVjb25uZWN0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbm5lY3Rpb25CdWlsZGVyLmJ1aWxkKCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIGEgU2lnbmFsUiBjb25uZWN0aW9uLlxuICAgKiBAcGFyYW0gY29ubmVjdGlvbiAgQSBTaWduYWxSIGNvbm5lY3Rpb25cbiAgICovXG4gIGFzeW5jIHN0YXJ0Q29ubmVjdGlvbihjb25uZWN0aW9uOiBIdWJDb25uZWN0aW9uIHwgdW5kZWZpbmVkKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFjb25uZWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQbGVhc2UgcHJvdmlkZSBhIHZhbGlkIGNvbm5lY3Rpb24gdG8gc3RhcnRcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBjb25uZWN0aW9uLnN0YXJ0KCk7XG4gICAgICBjb25zb2xlLmxvZyhgVGhlIFNpZ25hbFIgY29ubmVjdGlvbiBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgZXN0YWJsaXNoZWQhIFxcbiB1cmw6ICR7Y29ubmVjdGlvbi5iYXNlVXJsfSBcXG4gY29ubmVjdGlvbklkOiAke2Nvbm5lY3Rpb24uY29ubmVjdGlvbklkfWApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU3RvcHMgYSBTaWduYWxSIGNvbm5lY3Rpb24uXG4gICAqIEBwYXJhbSBjb25uZWN0aW9uIEEgU2lnbmFsUiBjb25uZWN0aW9uXG4gICAqL1xuICBhc3luYyBzdG9wQ29ubmVjdGlvbihjb25uZWN0aW9uOiBIdWJDb25uZWN0aW9uIHwgdW5kZWZpbmVkKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFjb25uZWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQbGVhc2UgcHJvdmlkZSBhIHZhbGlkIGNvbm5lY3Rpb24gdG8gc3RvcFwiKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNvbm5lY3Rpb24uc3RvcCgpO1xuICAgICAgY29uc29sZS5sb2coYFRoZSBTaWduYWxSIGNvbm5lY3Rpb24gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHN0b3BwZWQhIFxcbiB1cmw6ICR7Y29ubmVjdGlvbi5iYXNlVXJsfSBcXG4gY29ubmVjdGlvbklkOiAke2Nvbm5lY3Rpb24uY29ubmVjdGlvbklkfWApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { Component, input, output } from '@angular/core';
|
|
2
|
-
import { DropdownComponent } from './dropdown';
|
|
3
|
-
import { DropdownListComponent } from './dropdown-list';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class DropdownInputComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.label = input();
|
|
8
|
-
this.placeholder = input('Start typing to search...');
|
|
9
|
-
this.noResultLabel = input('No results to be displayed...');
|
|
10
|
-
this.suggestions = input([]);
|
|
11
|
-
this.selected = input.required();
|
|
12
|
-
this.onFocus = output(); // emits the input value
|
|
13
|
-
this.onKeyUp = output(); // emits the input value
|
|
14
|
-
this.removeItem = output();
|
|
15
|
-
this.addItem = output();
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.5", type: DropdownInputComponent, isStandalone: true, selector: "sq-dropdown-input, DropdownInput", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, noResultLabel: { classPropertyName: "noResultLabel", publicName: "noResultLabel", isSignal: true, isRequired: false, transformFunction: null }, suggestions: { classPropertyName: "suggestions", publicName: "suggestions", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onFocus: "onFocus", onKeyUp: "onKeyUp", removeItem: "removeItem", addItem: "addItem" }, ngImport: i0, template: `
|
|
19
|
-
@if (label()) {
|
|
20
|
-
<p class="font-semibold">{{ label() }}</p>
|
|
21
|
-
}
|
|
22
|
-
<Dropdown class="w-full block">
|
|
23
|
-
<input
|
|
24
|
-
#searchInput
|
|
25
|
-
class="w-1/2 grow focus:outline-none rounded border border-neutral-200 group-hover:bg-white p-2"
|
|
26
|
-
type="text"
|
|
27
|
-
autocomplete="off"
|
|
28
|
-
spellcheck="false"
|
|
29
|
-
[attr.aria-label]="placeholder()"
|
|
30
|
-
[attr.placeholder]="placeholder()"
|
|
31
|
-
(focus)="onFocus.emit(searchInput.value)"
|
|
32
|
-
(keyup)="onKeyUp.emit(searchInput.value)"
|
|
33
|
-
/>
|
|
34
|
-
|
|
35
|
-
<DropdownList class="mb-4" [items]="selected()" (onClick)="removeItem.emit($event)" />
|
|
36
|
-
|
|
37
|
-
<div dropdown-content class="dropdown-content w-max mt-[-1.5rem]">
|
|
38
|
-
@if (!suggestions().length) {
|
|
39
|
-
{{ noResultLabel() }}
|
|
40
|
-
} @else {
|
|
41
|
-
<ul class="data-list-xs flex-grow overflow-auto max-h-44 my-2">
|
|
42
|
-
@for (suggestion of suggestions(); track $index) {
|
|
43
|
-
<li class="p-2 flex data-list-item items-baseline gap-2 cursor-pointer"
|
|
44
|
-
(click)="addItem.emit(suggestion)">
|
|
45
|
-
{{ suggestion.display || suggestion.value }}
|
|
46
|
-
</li>
|
|
47
|
-
}
|
|
48
|
-
</ul>
|
|
49
|
-
}
|
|
50
|
-
</div>
|
|
51
|
-
</Dropdown>
|
|
52
|
-
`, isInline: true, dependencies: [{ kind: "component", type: DropdownComponent, selector: "sq-dropdown, Dropdown", inputs: ["position", "autoClose", "disabled"] }, { kind: "component", type: DropdownListComponent, selector: "sq-dropdown-list, DropdownList", inputs: ["items"], outputs: ["onClick"] }] }); }
|
|
53
|
-
}
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownInputComponent, decorators: [{
|
|
55
|
-
type: Component,
|
|
56
|
-
args: [{
|
|
57
|
-
selector: 'sq-dropdown-input, DropdownInput',
|
|
58
|
-
standalone: true,
|
|
59
|
-
imports: [DropdownComponent, DropdownListComponent],
|
|
60
|
-
template: `
|
|
61
|
-
@if (label()) {
|
|
62
|
-
<p class="font-semibold">{{ label() }}</p>
|
|
63
|
-
}
|
|
64
|
-
<Dropdown class="w-full block">
|
|
65
|
-
<input
|
|
66
|
-
#searchInput
|
|
67
|
-
class="w-1/2 grow focus:outline-none rounded border border-neutral-200 group-hover:bg-white p-2"
|
|
68
|
-
type="text"
|
|
69
|
-
autocomplete="off"
|
|
70
|
-
spellcheck="false"
|
|
71
|
-
[attr.aria-label]="placeholder()"
|
|
72
|
-
[attr.placeholder]="placeholder()"
|
|
73
|
-
(focus)="onFocus.emit(searchInput.value)"
|
|
74
|
-
(keyup)="onKeyUp.emit(searchInput.value)"
|
|
75
|
-
/>
|
|
76
|
-
|
|
77
|
-
<DropdownList class="mb-4" [items]="selected()" (onClick)="removeItem.emit($event)" />
|
|
78
|
-
|
|
79
|
-
<div dropdown-content class="dropdown-content w-max mt-[-1.5rem]">
|
|
80
|
-
@if (!suggestions().length) {
|
|
81
|
-
{{ noResultLabel() }}
|
|
82
|
-
} @else {
|
|
83
|
-
<ul class="data-list-xs flex-grow overflow-auto max-h-44 my-2">
|
|
84
|
-
@for (suggestion of suggestions(); track $index) {
|
|
85
|
-
<li class="p-2 flex data-list-item items-baseline gap-2 cursor-pointer"
|
|
86
|
-
(click)="addItem.emit(suggestion)">
|
|
87
|
-
{{ suggestion.display || suggestion.value }}
|
|
88
|
-
</li>
|
|
89
|
-
}
|
|
90
|
-
</ul>
|
|
91
|
-
}
|
|
92
|
-
</div>
|
|
93
|
-
</Dropdown>
|
|
94
|
-
`
|
|
95
|
-
}]
|
|
96
|
-
}] });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG9taWMtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZHJvcGRvd24taW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUErQ3hELE1BQU0sT0FBTyxzQkFBc0I7SUF4Q25DO1FBeUNFLFVBQUssR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUN4QixnQkFBVyxHQUFHLEtBQUssQ0FBUywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3pELGtCQUFhLEdBQUcsS0FBSyxDQUFTLCtCQUErQixDQUFDLENBQUM7UUFDL0QsZ0JBQVcsR0FBRyxLQUFLLENBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLGFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFrQixDQUFDO1FBRTVDLFlBQU8sR0FBRyxNQUFNLEVBQWlCLENBQUMsQ0FBQyx3QkFBd0I7UUFDM0QsWUFBTyxHQUFHLE1BQU0sRUFBaUIsQ0FBQyxDQUFDLHdCQUF3QjtRQUMzRCxlQUFVLEdBQUcsTUFBTSxFQUFnQixDQUFDO1FBQ3BDLFlBQU8sR0FBRyxNQUFNLEVBQWdCLENBQUM7S0FDbEM7OEdBWFksc0JBQXNCO2tHQUF0QixzQkFBc0IsdTJCQXBDdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQ1QsNERBbkNTLGlCQUFpQixpSEFBRSxxQkFBcUI7OzJGQXFDdkMsc0JBQXNCO2tCQXhDbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0NBQWtDO29CQUM1QyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUscUJBQXFCLENBQUM7b0JBQ25ELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyb3Bkb3duTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24tbGlzdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRHJvcGRvd25JdGVtIHtcbiAgZGlzcGxheT86IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3EtZHJvcGRvd24taW5wdXQsIERyb3Bkb3duSW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRHJvcGRvd25Db21wb25lbnQsIERyb3Bkb3duTGlzdENvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChsYWJlbCgpKSB7XG4gICAgICA8cCBjbGFzcz1cImZvbnQtc2VtaWJvbGRcIj57eyBsYWJlbCgpIH19PC9wPlxuICAgIH1cbiAgICA8RHJvcGRvd24gY2xhc3M9XCJ3LWZ1bGwgYmxvY2tcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjc2VhcmNoSW5wdXRcbiAgICAgICAgY2xhc3M9XCJ3LTEvMiBncm93IGZvY3VzOm91dGxpbmUtbm9uZSByb3VuZGVkIGJvcmRlciBib3JkZXItbmV1dHJhbC0yMDAgZ3JvdXAtaG92ZXI6Ymctd2hpdGUgcC0yXCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICBzcGVsbGNoZWNrPVwiZmFsc2VcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMuZW1pdChzZWFyY2hJbnB1dC52YWx1ZSlcIlxuICAgICAgICAoa2V5dXApPVwib25LZXlVcC5lbWl0KHNlYXJjaElucHV0LnZhbHVlKVwiXG4gICAgICAgIC8+XG5cbiAgICAgIDxEcm9wZG93bkxpc3QgY2xhc3M9XCJtYi00XCIgW2l0ZW1zXT1cInNlbGVjdGVkKClcIiAob25DbGljayk9XCJyZW1vdmVJdGVtLmVtaXQoJGV2ZW50KVwiIC8+XG4gICAgICAgIFxuICAgICAgPGRpdiBkcm9wZG93bi1jb250ZW50IGNsYXNzPVwiZHJvcGRvd24tY29udGVudCB3LW1heCBtdC1bLTEuNXJlbV1cIj5cbiAgICAgICAgQGlmICghc3VnZ2VzdGlvbnMoKS5sZW5ndGgpIHtcbiAgICAgICAgICB7eyBub1Jlc3VsdExhYmVsKCkgfX1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgPHVsIGNsYXNzPVwiZGF0YS1saXN0LXhzIGZsZXgtZ3JvdyBvdmVyZmxvdy1hdXRvIG1heC1oLTQ0IG15LTJcIj5cbiAgICAgICAgICAgIEBmb3IgKHN1Z2dlc3Rpb24gb2Ygc3VnZ2VzdGlvbnMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgIDxsaSBjbGFzcz1cInAtMiBmbGV4IGRhdGEtbGlzdC1pdGVtIGl0ZW1zLWJhc2VsaW5lIGdhcC0yIGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYWRkSXRlbS5lbWl0KHN1Z2dlc3Rpb24pXCI+XG4gICAgICAgICAgICAgICAge3sgc3VnZ2VzdGlvbi5kaXNwbGF5IHx8IHN1Z2dlc3Rpb24udmFsdWUgfX1cbiAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3VsPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L0Ryb3Bkb3duPlxuICBgXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duSW5wdXRDb21wb25lbnQge1xuICBsYWJlbCA9IGlucHV0PHN0cmluZz4oKTtcbiAgcGxhY2Vob2xkZXIgPSBpbnB1dDxzdHJpbmc+KCdTdGFydCB0eXBpbmcgdG8gc2VhcmNoLi4uJyk7XG4gIG5vUmVzdWx0TGFiZWwgPSBpbnB1dDxzdHJpbmc+KCdObyByZXN1bHRzIHRvIGJlIGRpc3BsYXllZC4uLicpO1xuICBzdWdnZXN0aW9ucyA9IGlucHV0PERyb3Bkb3duSXRlbVtdPihbXSk7XG4gIHNlbGVjdGVkID0gaW5wdXQucmVxdWlyZWQ8RHJvcGRvd25JdGVtW10+KCk7XG5cbiAgb25Gb2N1cyA9IG91dHB1dDxzdHJpbmcgfCBudWxsPigpOyAvLyBlbWl0cyB0aGUgaW5wdXQgdmFsdWVcbiAgb25LZXlVcCA9IG91dHB1dDxzdHJpbmcgfCBudWxsPigpOyAvLyBlbWl0cyB0aGUgaW5wdXQgdmFsdWVcbiAgcmVtb3ZlSXRlbSA9IG91dHB1dDxEcm9wZG93bkl0ZW0+KCk7XG4gIGFkZEl0ZW0gPSBvdXRwdXQ8RHJvcGRvd25JdGVtPigpO1xufVxuIl19
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Component, input, output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DropdownListComponent {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.items = input.required();
|
|
6
|
-
this.onClick = output();
|
|
7
|
-
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.5", type: DropdownListComponent, isStandalone: true, selector: "sq-dropdown-list, DropdownList", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick" }, ngImport: i0, template: `
|
|
10
|
-
@for (item of items(); track $index) {
|
|
11
|
-
<span class="pill pill-sm pill-ghost bg-primary flex place-content-center items-center font-semibold text-white float-left m-1 select-none"
|
|
12
|
-
role="button">
|
|
13
|
-
{{ item.display || item.value }}
|
|
14
|
-
<i class="ms-1 fa-fw far fa-circle-xmark cursor-pointer" (click)="onClick.emit(item)"></i>
|
|
15
|
-
</span>
|
|
16
|
-
}
|
|
17
|
-
`, isInline: true }); }
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: DropdownListComponent, decorators: [{
|
|
20
|
-
type: Component,
|
|
21
|
-
args: [{
|
|
22
|
-
selector: 'sq-dropdown-list, DropdownList',
|
|
23
|
-
standalone: true,
|
|
24
|
-
template: `
|
|
25
|
-
@for (item of items(); track $index) {
|
|
26
|
-
<span class="pill pill-sm pill-ghost bg-primary flex place-content-center items-center font-semibold text-white float-left m-1 select-none"
|
|
27
|
-
role="button">
|
|
28
|
-
{{ item.display || item.value }}
|
|
29
|
-
<i class="ms-1 fa-fw far fa-circle-xmark cursor-pointer" (click)="onClick.emit(item)"></i>
|
|
30
|
-
</span>
|
|
31
|
-
}
|
|
32
|
-
`
|
|
33
|
-
}]
|
|
34
|
-
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2F0b21pYy1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9kcm9wZG93bi1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFnQnpELE1BQU0sT0FBTyxxQkFBcUI7SUFibEM7UUFjRSxVQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBa0IsQ0FBQztRQUV6QyxZQUFPLEdBQUcsTUFBTSxFQUFnQixDQUFDO0tBQ2xDOzhHQUpZLHFCQUFxQjtrR0FBckIscUJBQXFCLDhQQVZ0Qjs7Ozs7Ozs7R0FRVDs7MkZBRVUscUJBQXFCO2tCQWJqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQ0FBZ0M7b0JBQzFDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7O0dBUVQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyb3Bkb3duSXRlbSB9IGZyb20gJy4vZHJvcGRvd24taW5wdXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcS1kcm9wZG93bi1saXN0LCBEcm9wZG93bkxpc3QnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZTogYFxuQGZvciAoaXRlbSBvZiBpdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgPHNwYW4gY2xhc3M9XCJwaWxsIHBpbGwtc20gcGlsbC1naG9zdCBiZy1wcmltYXJ5IGZsZXggcGxhY2UtY29udGVudC1jZW50ZXIgaXRlbXMtY2VudGVyIGZvbnQtc2VtaWJvbGQgdGV4dC13aGl0ZSBmbG9hdC1sZWZ0IG0tMSBzZWxlY3Qtbm9uZVwiXG4gICAgcm9sZT1cImJ1dHRvblwiPlxuICAgIHt7IGl0ZW0uZGlzcGxheSB8fCBpdGVtLnZhbHVlIH19XG4gICAgPGkgY2xhc3M9XCJtcy0xIGZhLWZ3IGZhciBmYS1jaXJjbGUteG1hcmsgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib25DbGljay5lbWl0KGl0ZW0pXCI+PC9pPlxuICA8L3NwYW4+XG59XG4gIGBcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25MaXN0Q29tcG9uZW50IHtcbiAgaXRlbXMgPSBpbnB1dC5yZXF1aXJlZDxEcm9wZG93bkl0ZW1bXT4oKTtcblxuICBvbkNsaWNrID0gb3V0cHV0PERyb3Bkb3duSXRlbT4oKTtcbn1cbiJdfQ==
|