@oncehub/knowledgeowl-angular 5.0.0-beta.2 → 5.0.0-beta.4

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 (58) hide show
  1. package/esm2022/lib/index.mjs +3 -0
  2. package/esm2022/lib/knowledge-owl-link/knowledge-owl-link-module.mjs +18 -0
  3. package/esm2022/lib/knowledge-owl-link/knowledge-owl-link.mjs +92 -0
  4. package/esm2022/lib/knowledge-owl-link/knowledge-owl-widget-errors.mjs +3 -0
  5. package/esm2022/lib/knowledge-owl-link/public-api.mjs +3 -0
  6. package/esm2022/lib/knowledge-owl-widget/knowledge-owl-widget-errors.mjs +4 -0
  7. package/esm2022/lib/knowledge-owl-widget/knowledge-owl-widget-module.mjs +19 -0
  8. package/esm2022/lib/knowledge-owl-widget/knowledge-owl-widget.mjs +143 -0
  9. package/esm2022/lib/knowledge-owl-widget/public-api.mjs +3 -0
  10. package/esm2022/oncehub-knowledgeowl-angular.mjs +5 -0
  11. package/esm2022/public_api.mjs +2 -0
  12. package/fesm2022/oncehub-knowledgeowl-angular.mjs +275 -0
  13. package/fesm2022/oncehub-knowledgeowl-angular.mjs.map +1 -0
  14. package/index.d.ts +5 -0
  15. package/lib/knowledge-owl-link/knowledge-owl-link-module.d.ts +8 -0
  16. package/lib/knowledge-owl-link/knowledge-owl-link.d.ts +37 -0
  17. package/lib/knowledge-owl-link/knowledge-owl-widget-errors.d.ts +2 -0
  18. package/lib/knowledge-owl-widget/knowledge-owl-widget-errors.d.ts +3 -0
  19. package/lib/knowledge-owl-widget/knowledge-owl-widget-module.d.ts +8 -0
  20. package/lib/knowledge-owl-widget/knowledge-owl-widget.d.ts +63 -0
  21. package/package.json +23 -53
  22. package/.eslintrc.json +0 -82
  23. package/.github/workflows/ci.yml +0 -29
  24. package/.github/workflows/codeql-analysis.yml +0 -71
  25. package/.github/workflows/npm-publish.yml +0 -23
  26. package/.prettierignore +0 -2
  27. package/.prettierrc +0 -3
  28. package/CHANGELOG.md +0 -257
  29. package/LICENSE +0 -21
  30. package/OWNERS +0 -4
  31. package/OWNERS_ALIASES +0 -20
  32. package/angular.json +0 -55
  33. package/src/README.md +0 -5
  34. package/src/lib/knowledge-owl-link/index.ts +0 -1
  35. package/src/lib/knowledge-owl-link/knowledge-owl-link-module.ts +0 -10
  36. package/src/lib/knowledge-owl-link/knowledge-owl-link.spec.ts +0 -51
  37. package/src/lib/knowledge-owl-link/knowledge-owl-link.ts +0 -97
  38. package/src/lib/knowledge-owl-link/knowledge-owl-widget-errors.ts +0 -3
  39. package/src/lib/knowledge-owl-widget/index.ts +0 -1
  40. package/src/lib/knowledge-owl-widget/knowledge-owl-widget-errors.ts +0 -6
  41. package/src/lib/knowledge-owl-widget/knowledge-owl-widget-module.ts +0 -11
  42. package/src/lib/knowledge-owl-widget/knowledge-owl-widget.spec.ts +0 -66
  43. package/src/lib/knowledge-owl-widget/knowledge-owl-widget.ts +0 -162
  44. package/src/lib/tsconfig.json +0 -10
  45. package/src/ng-package.json +0 -7
  46. package/src/package-lock.json +0 -111
  47. package/src/package.json +0 -14
  48. package/src/polyfills.ts +0 -76
  49. package/src/tsconfig.lib.json +0 -30
  50. package/src/tsconfig.spec.json +0 -18
  51. package/test/karma.conf.js +0 -44
  52. package/test/test.ts +0 -18
  53. package/tsconfig.json +0 -35
  54. package/tsconfig.lib.prod.json +0 -9
  55. /package/{src/lib/index.ts → lib/index.d.ts} +0 -0
  56. /package/{src/lib/knowledge-owl-link/public-api.ts → lib/knowledge-owl-link/public-api.d.ts} +0 -0
  57. /package/{src/lib/knowledge-owl-widget/public-api.ts → lib/knowledge-owl-widget/public-api.d.ts} +0 -0
  58. /package/{src/public_api.ts → public_api.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oncehub-knowledgeowl-angular.mjs","sources":["../../../src/lib/knowledge-owl-widget/knowledge-owl-widget-errors.ts","../../../src/lib/knowledge-owl-widget/knowledge-owl-widget.ts","../../../src/lib/knowledge-owl-widget/knowledge-owl-widget-module.ts","../../../src/lib/knowledge-owl-link/knowledge-owl-widget-errors.ts","../../../src/lib/knowledge-owl-link/knowledge-owl-link.ts","../../../src/lib/knowledge-owl-link/knowledge-owl-link-module.ts","../../../src/oncehub-knowledgeowl-angular.ts"],"sourcesContent":["/** @docs-private */\nexport const getKnowledgeWidgetPoductKeyMissingError = (): Error =>\n Error('knowledge-owl-widget requires product key as input.');\n\nexport const getKnowledgeWidgetInvalidProductURLError = (): Error =>\n Error('knowledge-owl-widget requires valid product URL as provider.');\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n Inject,\n Input,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n getKnowledgeWidgetPoductKeyMissingError,\n getKnowledgeWidgetInvalidProductURLError,\n} from './knowledge-owl-widget-errors';\n\n/** Regex to validate article URL is valid or not */\nconst urlValidatorRegex =\n /(http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?/;\n\n@Component({\n selector: 'knowledge-owl-widget',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n exportAs: 'knowledgeOwlWidget',\n providers: [],\n})\nexport class KnowledgeOwlWidget implements OnInit, AfterContentInit {\n /** Flag to check initial page location updated */\n isPageLocationUpdated = false;\n\n /** Product key to access KnowledgeOwl widget. */\n @Input()\n projectKey: string;\n\n /** Current page location for widget context. */\n private _pageLocation: string;\n @Input() set pageLocation(value: string) {\n this._pageLocation = value.trim();\n this._updatePageLocation();\n }\n\n get pageLocation(): string {\n return this._pageLocation;\n }\n\n constructor(@Inject('KOProjectURL') private projectURL: string) {}\n\n ngOnInit(): void {\n this._initWidget();\n this._loadScript();\n }\n\n ngAfterContentInit(): void {\n this._validateWidgetInputs();\n this._initPageLocation();\n }\n\n /** Opens the widget. */\n open(article = ''): void {\n if (!window['__ko16']) {\n return;\n }\n if (article) {\n const widgetHref = `${this.projectURL}/help/fetch-article/hash/${article}`;\n window['__ko16'].openArticle(widgetHref);\n } else {\n window['__ko16']._toggleOpen();\n }\n }\n\n /**\n * Validates the widget's inputs.\n *\n * @private\n */\n protected _validateWidgetInputs(): void {\n this._validateProductURL();\n this._validateProductKey();\n }\n\n /**\n * Private methods\n */\n\n /**\n * Throws an error if the productKey input is missing.\n *\n * @private\n */\n private _validateProductKey() {\n if (!this.projectKey) {\n throw getKnowledgeWidgetPoductKeyMissingError();\n }\n }\n\n /**\n * Throws an error if the productURL input is missing.\n *\n * @private\n */\n private _validateProductURL() {\n if (!this.projectURL || !urlValidatorRegex.test(this.projectURL)) {\n throw getKnowledgeWidgetInvalidProductURLError();\n }\n }\n\n /**\n * Initializes the widget.\n *\n * @private\n */\n private _initWidget() {\n const ko16p = [];\n ko16p.push(['_setProject', this.projectKey]);\n window['_ko16_p'] = ko16p;\n }\n\n /**\n * Loads script into page\n *\n * @private\n */\n private _loadScript() {\n const ko = document.createElement('script');\n ko.type = 'text/javascript';\n ko.async = true;\n ko.src = `${this.projectURL}/javascript/ko-index?__pc=${this.projectKey}`;\n document.head.appendChild(ko);\n }\n\n /**\n * Init page location first time\n */\n private _initPageLocation() {\n const updatePageLocationInterval = setInterval(() => {\n if (!this.pageLocation || this.isPageLocationUpdated) {\n clearInterval(updatePageLocationInterval);\n }\n if (\n !this.isPageLocationUpdated &&\n window['__ko16'] &&\n this.pageLocation\n ) {\n // Updating page location once\n window['__ko16'].updatePageLoc(this.pageLocation);\n this.isPageLocationUpdated = true;\n }\n });\n }\n\n /**\n * Update page location on change\n *\n * @private\n */\n private _updatePageLocation() {\n if (!window['__ko16'] || !this.pageLocation) {\n return;\n }\n window['__ko16'].updatePageLoc(this.pageLocation);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { KnowledgeOwlWidget } from './knowledge-owl-widget';\n\n@NgModule({\n imports: [CommonModule],\n exports: [KnowledgeOwlWidget],\n declarations: [KnowledgeOwlWidget],\n providers: [],\n})\nexport class KnowledgeOwlWidgetModule {}\n","/** @docs-private */\nexport const getKnowledgeLinkArticleMissingError = (): Error =>\n Error('knowledge-owl-link requires article URL as input.');\n","import {\n AfterContentInit,\n ElementRef,\n HostListener,\n Inject,\n Input,\n Directive,\n} from '@angular/core';\nimport { getKnowledgeLinkArticleMissingError } from './knowledge-owl-widget-errors';\n\n/**\n * Knowledge Owl Link\n */\n@Directive({\n selector: `a[knowledgeOwlLink]`,\n exportAs: 'knowledgeOwlLink',\n})\nexport class KnowledgeOwlLink implements AfterContentInit {\n @Input()\n knowledgeOwlLink: string;\n\n constructor(\n protected elementRef: ElementRef,\n @Inject('KOProjectURL') private projectURL: string\n ) {}\n\n getHostElement(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n\n ngAfterContentInit(): void {\n this._validateLinkInputs();\n this._initLink();\n }\n\n @HostListener('click', ['$event'])\n openArticle(event: Event): void {\n event.preventDefault();\n // Convert the KO link into the widget link\n let widgetHref;\n if (this.knowledgeOwlLink.includes('#')) {\n const widgetlink = this.knowledgeOwlLink.split('#');\n const widgetlink1 =\n widgetlink[0].replace('/help/', '/help/fetch-article/hash/') +\n '?widget=true';\n const widgetlink2 = '#' + widgetlink[1];\n widgetHref = widgetlink1.concat(widgetlink2);\n } else {\n widgetHref =\n this.knowledgeOwlLink.replace('/help/', '/help/fetch-article/hash/') +\n '?widget=true';\n }\n\n if (window['__ko16']) {\n // Wait until widget loads completely\n window['__ko16'].openArticle(widgetHref);\n }\n }\n\n /**\n * Private methods\n */\n\n /**\n * Initialize link\n *\n * @private\n */\n private _initLink() {\n this.knowledgeOwlLink = `${this.projectURL}/help/${this.knowledgeOwlLink}`; // Updating article link to have complete URL\n const nativeElement = this.getHostElement();\n if (nativeElement.tagName === 'A') {\n // Updating link for <a>\n nativeElement.setAttribute('href', this.knowledgeOwlLink);\n }\n }\n\n /**\n * Validates all required inputs of knowledge-owl-link\n *\n * @private\n */\n private _validateLinkInputs() {\n this._validateArticlePresence();\n }\n\n /**\n * Validates presence of article URL for link\n *\n * @private\n */\n private _validateArticlePresence() {\n if (!this.knowledgeOwlLink) {\n throw getKnowledgeLinkArticleMissingError();\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KnowledgeOwlLink } from './knowledge-owl-link';\n\n@NgModule({\n imports: [CommonModule],\n exports: [KnowledgeOwlLink],\n declarations: [KnowledgeOwlLink],\n})\nexport class KnowledgeOwlLinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@oncehub/knowledgeowl-angular" />
5
+ export * from './public_api';
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./knowledge-owl-link";
3
+ import * as i2 from "@angular/common";
4
+ export declare class KnowledgeOwlLinkModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<KnowledgeOwlLinkModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KnowledgeOwlLinkModule, [typeof i1.KnowledgeOwlLink], [typeof i2.CommonModule], [typeof i1.KnowledgeOwlLink]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<KnowledgeOwlLinkModule>;
8
+ }
@@ -0,0 +1,37 @@
1
+ import { AfterContentInit, ElementRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Knowledge Owl Link
5
+ */
6
+ export declare class KnowledgeOwlLink implements AfterContentInit {
7
+ protected elementRef: ElementRef;
8
+ private projectURL;
9
+ knowledgeOwlLink: string;
10
+ constructor(elementRef: ElementRef, projectURL: string);
11
+ getHostElement(): HTMLElement;
12
+ ngAfterContentInit(): void;
13
+ openArticle(event: Event): void;
14
+ /**
15
+ * Private methods
16
+ */
17
+ /**
18
+ * Initialize link
19
+ *
20
+ * @private
21
+ */
22
+ private _initLink;
23
+ /**
24
+ * Validates all required inputs of knowledge-owl-link
25
+ *
26
+ * @private
27
+ */
28
+ private _validateLinkInputs;
29
+ /**
30
+ * Validates presence of article URL for link
31
+ *
32
+ * @private
33
+ */
34
+ private _validateArticlePresence;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<KnowledgeOwlLink, never>;
36
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KnowledgeOwlLink, "a[knowledgeOwlLink]", ["knowledgeOwlLink"], { "knowledgeOwlLink": { "alias": "knowledgeOwlLink"; "required": false; }; }, {}, never, never, false, never>;
37
+ }
@@ -0,0 +1,2 @@
1
+ /** @docs-private */
2
+ export declare const getKnowledgeLinkArticleMissingError: () => Error;
@@ -0,0 +1,3 @@
1
+ /** @docs-private */
2
+ export declare const getKnowledgeWidgetPoductKeyMissingError: () => Error;
3
+ export declare const getKnowledgeWidgetInvalidProductURLError: () => Error;
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./knowledge-owl-widget";
3
+ import * as i2 from "@angular/common";
4
+ export declare class KnowledgeOwlWidgetModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<KnowledgeOwlWidgetModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KnowledgeOwlWidgetModule, [typeof i1.KnowledgeOwlWidget], [typeof i2.CommonModule], [typeof i1.KnowledgeOwlWidget]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<KnowledgeOwlWidgetModule>;
8
+ }
@@ -0,0 +1,63 @@
1
+ import { AfterContentInit, OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class KnowledgeOwlWidget implements OnInit, AfterContentInit {
4
+ private projectURL;
5
+ /** Flag to check initial page location updated */
6
+ isPageLocationUpdated: boolean;
7
+ /** Product key to access KnowledgeOwl widget. */
8
+ projectKey: string;
9
+ /** Current page location for widget context. */
10
+ private _pageLocation;
11
+ set pageLocation(value: string);
12
+ get pageLocation(): string;
13
+ constructor(projectURL: string);
14
+ ngOnInit(): void;
15
+ ngAfterContentInit(): void;
16
+ /** Opens the widget. */
17
+ open(article?: string): void;
18
+ /**
19
+ * Validates the widget's inputs.
20
+ *
21
+ * @private
22
+ */
23
+ protected _validateWidgetInputs(): void;
24
+ /**
25
+ * Private methods
26
+ */
27
+ /**
28
+ * Throws an error if the productKey input is missing.
29
+ *
30
+ * @private
31
+ */
32
+ private _validateProductKey;
33
+ /**
34
+ * Throws an error if the productURL input is missing.
35
+ *
36
+ * @private
37
+ */
38
+ private _validateProductURL;
39
+ /**
40
+ * Initializes the widget.
41
+ *
42
+ * @private
43
+ */
44
+ private _initWidget;
45
+ /**
46
+ * Loads script into page
47
+ *
48
+ * @private
49
+ */
50
+ private _loadScript;
51
+ /**
52
+ * Init page location first time
53
+ */
54
+ private _initPageLocation;
55
+ /**
56
+ * Update page location on change
57
+ *
58
+ * @private
59
+ */
60
+ private _updatePageLocation;
61
+ static ɵfac: i0.ɵɵFactoryDeclaration<KnowledgeOwlWidget, never>;
62
+ static ɵcmp: i0.ɵɵComponentDeclaration<KnowledgeOwlWidget, "knowledge-owl-widget", ["knowledgeOwlWidget"], { "projectKey": { "alias": "projectKey"; "required": false; }; "pageLocation": { "alias": "pageLocation"; "required": false; }; }, {}, never, never, false, never>;
63
+ }
package/package.json CHANGED
@@ -1,61 +1,31 @@
1
1
  {
2
2
  "name": "@oncehub/knowledgeowl-angular",
3
- "description": "KnowledgeOwl widget integration for Angular",
4
- "author": "https://github.com/scheduleonce/knowledgeowl-angular/graphs/contributors",
3
+ "version": "5.0.0-beta.4",
4
+ "description": "Knowledge Owl Angular",
5
+ "license": "MIT",
5
6
  "repository": {
6
7
  "type": "git",
7
- "url": "git+https://github.com/scheduleonce/knowledgeowl-angular.git"
8
+ "url": "https://github.com/scheduleonce/knowledgeowl-angular"
8
9
  },
9
- "license": "MIT",
10
- "version": "5.0.0-beta.2",
11
- "scripts": {
12
- "ng": "ng",
13
- "build": "ng build --configuration production && cp README.md dist/knowledgeowl-angular",
14
- "test": "ng test",
15
- "lint": "npm run test:lint",
16
- "prettier": "prettier --list-different \"**/*.{ts,js,css,scss,md,html}\"",
17
- "fix:prettier": "prettier --write \"**/*.{ts,js,css,scss,md,html}\"",
18
- "npm-pack": "cd dist/knowledgeowl-angular && npm pack",
19
- "package": "npm run build && cp README.md dist/knowledgeowl-angular",
20
- "publish": "cd dist/knowledgeowl-angular && npm publish --access public",
21
- "test:lint": "ng lint knowledgeowl-angular",
22
- "fix:lint": "ng lint knowledgeowl-angular --fix"
10
+ "peerDependencies": {
11
+ "@angular/common": "18.0.3",
12
+ "@angular/core": "18.0.3"
23
13
  },
24
- "dependencies": {
25
- "rxjs": "^7.8.1",
26
- "tslib": "2.3.1"
14
+ "module": "fesm2022/oncehub-knowledgeowl-angular.mjs",
15
+ "typings": "index.d.ts",
16
+ "exports": {
17
+ "./package.json": {
18
+ "default": "./package.json"
19
+ },
20
+ ".": {
21
+ "types": "./index.d.ts",
22
+ "esm2022": "./esm2022/oncehub-knowledgeowl-angular.mjs",
23
+ "esm": "./esm2022/oncehub-knowledgeowl-angular.mjs",
24
+ "default": "./fesm2022/oncehub-knowledgeowl-angular.mjs"
25
+ }
27
26
  },
28
- "devDependencies": {
29
- "@angular-devkit/build-angular": "18.2.1",
30
- "@angular-eslint/builder": "^16.3.1",
31
- "@angular-eslint/eslint-plugin": "^16.3.1",
32
- "@angular-eslint/eslint-plugin-template": "^16.3.1",
33
- "@angular-eslint/template-parser": "^16.3.1",
34
- "@angular/cli": "18.2.1",
35
- "@angular/common": "18.2.0",
36
- "@angular/compiler": "18.2.0",
37
- "@angular/compiler-cli": "18.2.0",
38
- "@angular/core": "18.2.0",
39
- "@angular/platform-browser": "18.2.0",
40
- "@angular/platform-browser-dynamic": "18.2.0",
41
- "@types/jasmine": "3.10.3",
42
- "@typescript-eslint/eslint-plugin": "^5.62.0",
43
- "@typescript-eslint/parser": "^5.62.0",
44
- "eslint": "^8.57.0",
45
- "eslint-plugin-import": "2.25.4",
46
- "eslint-plugin-jsdoc": "37.9.1",
47
- "eslint-plugin-prefer-arrow": "1.2.3",
48
- "jasmine-core": "4.0.0",
49
- "karma": "6.3.16",
50
- "karma-chrome-launcher": "3.1.0",
51
- "karma-coverage-istanbul-reporter": "3.0.3",
52
- "karma-jasmine": "4.0.1",
53
- "karma-jasmine-html-reporter": "1.7.0",
54
- "karma-junit-reporter": "2.0.1",
55
- "ng-packagr": "18.0.0",
56
- "prettier": "2.5.1",
57
- "puppeteer": "13.3.2",
58
- "typescript": "5.4.5",
59
- "zone.js": "0.14.10"
27
+ "sideEffects": false,
28
+ "dependencies": {
29
+ "tslib": "^2.3.0"
60
30
  }
61
- }
31
+ }
package/.eslintrc.json DELETED
@@ -1,82 +0,0 @@
1
- {
2
- "root": true,
3
- "ignorePatterns": [
4
- "projects/**/*"
5
- ],
6
- "overrides": [
7
- {
8
- "files": [
9
- "*.ts"
10
- ],
11
- "parserOptions": {
12
- "project": [
13
- "tsconfig.json"
14
- ],
15
- "createDefaultProgram": true
16
- },
17
- "extends": [
18
- "plugin:@angular-eslint/recommended",
19
- "eslint:recommended",
20
- "plugin:@typescript-eslint/recommended",
21
- "plugin:@typescript-eslint/recommended-requiring-type-checking",
22
- "plugin:@angular-eslint/template/process-inline-templates"
23
- ],
24
- "rules": {
25
- "@angular-eslint/component-class-suffix": "off",
26
- "@angular-eslint/directive-class-suffix": "off",
27
- "@angular-eslint/directive-selector": [
28
- "error",
29
- {
30
- "type": "attribute",
31
- "prefix": [
32
- "knowledge"
33
- ],
34
- "style": "camelCase"
35
- }
36
- ],
37
- "@angular-eslint/component-selector": [
38
- "error",
39
- {
40
- "prefix": [
41
- "knowledge"
42
- ]
43
- }
44
- ],
45
- "@typescript-eslint/consistent-type-definitions": "error",
46
- "@typescript-eslint/dot-notation": "off",
47
- "@typescript-eslint/no-floating-promises": "off",
48
- "@typescript-eslint/no-unsafe-return": "off",
49
- "@typescript-eslint/no-unsafe-assignment": "off",
50
- "@typescript-eslint/no-unsafe-member-access": "off",
51
- "@typescript-eslint/no-unsafe-call": "off",
52
- "@typescript-eslint/member-ordering": "off",
53
- "@typescript-eslint/explicit-member-accessibility": [
54
- "off",
55
- {
56
- "accessibility": "explicit"
57
- }
58
- ],
59
- "@typescript-eslint/no-non-null-assertion": "off",
60
- "@typescript-eslint/no-use-before-define": "off",
61
- "brace-style": [
62
- "error",
63
- "1tbs"
64
- ],
65
- "complexity": "error",
66
- "id-blacklist": "off",
67
- "id-match": "off",
68
- "no-underscore-dangle": "off",
69
- "no-useless-escape": "off"
70
- }
71
- },
72
- {
73
- "files": [
74
- "*.html"
75
- ],
76
- "extends": [
77
- "plugin:@angular-eslint/template/recommended"
78
- ],
79
- "rules": {}
80
- }
81
- ]
82
- }
@@ -1,29 +0,0 @@
1
- # This workflow will do a clean installation of node dependencies, cache/restore them and run tests across different versions of node
2
- # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
3
-
4
- name: Node.js CI
5
-
6
- on:
7
- push:
8
- branches: ['main']
9
- pull_request:
10
- branches: ['main']
11
-
12
- jobs:
13
- build:
14
- runs-on: ubuntu-latest
15
-
16
- strategy:
17
- matrix:
18
- node-version: [18.x, 20.x]
19
- # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
20
-
21
- steps:
22
- - uses: actions/checkout@v3
23
- - name: Use Node.js ${{ matrix.node-version }}
24
- uses: actions/setup-node@v3
25
- with:
26
- node-version: ${{ matrix.node-version }}
27
- cache: 'npm'
28
- - run: npm ci
29
- - run: npm test
@@ -1,71 +0,0 @@
1
- # For most projects, this workflow file will not need changing; you simply need
2
- # to commit it to your repository.
3
- #
4
- # You may wish to alter this file to override the set of languages analyzed,
5
- # or to provide custom queries or build logic.
6
- #
7
- # ******** NOTE ********
8
- # We have attempted to detect the languages in your repository. Please check
9
- # the `language` matrix defined below to confirm you have the correct set of
10
- # supported CodeQL languages.
11
- #
12
- name: 'CodeQL'
13
-
14
- on:
15
- push:
16
- branches: [main]
17
- pull_request:
18
- # The branches below must be a subset of the branches above
19
- branches: [main]
20
- schedule:
21
- - cron: '42 2 * * 5'
22
-
23
- jobs:
24
- analyze:
25
- name: Analyze
26
- runs-on: ubuntu-latest
27
- permissions:
28
- actions: read
29
- contents: read
30
- security-events: write
31
-
32
- strategy:
33
- fail-fast: false
34
- matrix:
35
- language: ['javascript']
36
- # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
37
- # Learn more:
38
- # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
39
-
40
- steps:
41
- - name: Checkout repository
42
- uses: actions/checkout@v2
43
-
44
- # Initializes the CodeQL tools for scanning.
45
- - name: Initialize CodeQL
46
- uses: github/codeql-action/init@v1
47
- with:
48
- languages: ${{ matrix.language }}
49
- # If you wish to specify custom queries, you can do so here or in a config file.
50
- # By default, queries listed here will override any specified in a config file.
51
- # Prefix the list here with "+" to use these queries and those in the config file.
52
- # queries: ./path/to/local/query, your-org/your-repo/queries@main
53
-
54
- # Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
55
- # If this step fails, then you should remove it and run the build manually (see below)
56
- - name: Autobuild
57
- uses: github/codeql-action/autobuild@v1
58
-
59
- # ℹ️ Command-line programs to run using the OS shell.
60
- # 📚 https://git.io/JvXDl
61
-
62
- # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
63
- # and modify them (or add more) to build your code if your project
64
- # uses a compiled language
65
-
66
- #- run: |
67
- # make bootstrap
68
- # make release
69
-
70
- - name: Perform CodeQL Analysis
71
- uses: github/codeql-action/analyze@v1
@@ -1,23 +0,0 @@
1
- # This workflow will publish a package to npm when a release is published
2
- # For more information, see https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
3
-
4
- name: Publish Package to npmjs
5
- on:
6
- release:
7
- types: [published]
8
- jobs:
9
- build:
10
- runs-on: ubuntu-latest
11
- steps:
12
- - uses: actions/checkout@v4
13
- # setup .npmrc file to publish to npm
14
- - uses: actions/setup-node@v3
15
- with:
16
- node-version: '20.x'
17
- registry-url: 'https://registry.npmjs.org'
18
- - run: npm ci
19
- - run: npm run package
20
- # scoped packages are private by default so need to add public flag
21
- - run: npm publish --access public
22
- env:
23
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
package/.prettierignore DELETED
@@ -1,2 +0,0 @@
1
- package.json
2
- dist
package/.prettierrc DELETED
@@ -1,3 +0,0 @@
1
- {
2
- "singleQuote": true
3
- }