@vsn-ux/ngx-gaia 1.0.0-alpha.1
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 +55 -0
- package/fesm2022/vsn-ux-ngx-gaia.mjs +979 -0
- package/fesm2022/vsn-ux-ngx-gaia.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/button/button.directive.d.ts +7 -0
- package/lib/button/button.module.d.ts +8 -0
- package/lib/button/icon-button.directive.d.ts +8 -0
- package/lib/button/index.d.ts +3 -0
- package/lib/checkbox/checkbox-required.validator.d.ts +13 -0
- package/lib/checkbox/checkbox.component.d.ts +62 -0
- package/lib/checkbox/checkbox.module.d.ts +8 -0
- package/lib/checkbox/index.d.ts +3 -0
- package/lib/form-field/field-info.component.d.ts +5 -0
- package/lib/form-field/field-label.component.d.ts +9 -0
- package/lib/form-field/form-control.di.d.ts +10 -0
- package/lib/form-field/form-field.component.d.ts +8 -0
- package/lib/form-field/form-field.module.d.ts +10 -0
- package/lib/form-field/index.d.ts +5 -0
- package/lib/input/index.d.ts +3 -0
- package/lib/input/input.component.d.ts +11 -0
- package/lib/input/input.directive.d.ts +20 -0
- package/lib/input/input.module.d.ts +8 -0
- package/lib/menu/index.d.ts +5 -0
- package/lib/menu/menu-item.component.d.ts +6 -0
- package/lib/menu/menu-separator.componen.d.ts +5 -0
- package/lib/menu/menu-trigger.directive.d.ts +10 -0
- package/lib/menu/menu.component.d.ts +6 -0
- package/lib/menu/menu.module.d.ts +10 -0
- package/lib/segmented-control/index.d.ts +3 -0
- package/lib/segmented-control/segmented-control-button.directive.d.ts +10 -0
- package/lib/segmented-control/segmented-control.component.d.ts +7 -0
- package/lib/segmented-control/segmented-control.module.d.ts +8 -0
- package/lib/tooltip/index.d.ts +3 -0
- package/lib/tooltip/tooltip.component.d.ts +25 -0
- package/lib/tooltip/tooltip.directive.d.ts +60 -0
- package/lib/tooltip/tooltip.module.d.ts +7 -0
- package/package.json +33 -0
- package/public-api.d.ts +7 -0
- package/schematics/collection.json +16 -0
- package/schematics/ng-add/index.d.ts +3 -0
- package/schematics/ng-add/index.js +50 -0
- package/schematics/ng-add/index.js.map +1 -0
- package/schematics/ng-add/messages.d.ts +1 -0
- package/schematics/ng-add/messages.js +7 -0
- package/schematics/ng-add/messages.js.map +1 -0
- package/schematics/ng-add/schema.d.ts +10 -0
- package/schematics/ng-add/schema.js +3 -0
- package/schematics/ng-add/schema.js.map +1 -0
- package/schematics/ng-add/schema.json +21 -0
- package/schematics/ng-add/setup-project.d.ts +3 -0
- package/schematics/ng-add/setup-project.js +89 -0
- package/schematics/ng-add/setup-project.js.map +1 -0
- package/styles/global.scss +5 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./tooltip.directive";
|
|
3
|
+
export declare class GaTooltipModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GaTooltipModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<GaTooltipModule, never, [typeof i1.GaTooltipDirective], [typeof i1.GaTooltipDirective]>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<GaTooltipModule>;
|
|
7
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@vsn-ux/ngx-gaia",
|
|
3
|
+
"version": "1.0.0-alpha.1",
|
|
4
|
+
"peerDependencies": {
|
|
5
|
+
"@angular/cdk": "^19.0.0",
|
|
6
|
+
"@angular/common": "^19.0.0",
|
|
7
|
+
"@angular/core": "^19.0.0",
|
|
8
|
+
"@vsn-ux/gaia-styles": "^1.0.0-alpha.2"
|
|
9
|
+
},
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"tslib": "^2.3.0"
|
|
12
|
+
},
|
|
13
|
+
"schematics": "./schematics/collection.json",
|
|
14
|
+
"publishConfig": {
|
|
15
|
+
"access": "public"
|
|
16
|
+
},
|
|
17
|
+
"ng-add": {
|
|
18
|
+
"save": "dependencies"
|
|
19
|
+
},
|
|
20
|
+
"exports": {
|
|
21
|
+
".": {
|
|
22
|
+
"sass": "./styles/global.scss",
|
|
23
|
+
"types": "./index.d.ts",
|
|
24
|
+
"default": "./fesm2022/vsn-ux-ngx-gaia.mjs"
|
|
25
|
+
},
|
|
26
|
+
"./package.json": {
|
|
27
|
+
"default": "./package.json"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"module": "fesm2022/vsn-ux-ngx-gaia.mjs",
|
|
31
|
+
"typings": "index.d.ts",
|
|
32
|
+
"sideEffects": false
|
|
33
|
+
}
|
package/public-api.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './lib/button/index';
|
|
2
|
+
export * from './lib/checkbox/index';
|
|
3
|
+
export * from './lib/segmented-control/index';
|
|
4
|
+
export * from './lib/input/index';
|
|
5
|
+
export * from './lib/form-field/index';
|
|
6
|
+
export * from './lib/menu/index';
|
|
7
|
+
export * from './lib/tooltip/index';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "../../../node_modules/@angular-devkit/schematics/collection-schema.json",
|
|
3
|
+
"schematics": {
|
|
4
|
+
"ng-add": {
|
|
5
|
+
"description": "Add ngx-gaia to the project.",
|
|
6
|
+
"factory": "./ng-add/index#ngAdd",
|
|
7
|
+
"schema": "./ng-add/schema.json"
|
|
8
|
+
},
|
|
9
|
+
"ng-add-setup-project": {
|
|
10
|
+
"private": true,
|
|
11
|
+
"description": "Sets up the project after dependencies have been installed",
|
|
12
|
+
"factory": "./ng-add/setup-project#ngAddSetupProject",
|
|
13
|
+
"schema": "./ng-add/schema.json"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ngAdd = ngAdd;
|
|
13
|
+
const schematics_1 = require("@angular-devkit/schematics");
|
|
14
|
+
const tasks_1 = require("@angular-devkit/schematics/tasks");
|
|
15
|
+
const dependencies_1 = require("@schematics/angular/utility/dependencies");
|
|
16
|
+
const workspace_1 = require("@schematics/angular/utility/workspace");
|
|
17
|
+
const messages_1 = require("./messages");
|
|
18
|
+
function ngAdd(options) {
|
|
19
|
+
return (tree, context) => __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
// Checking that project exists
|
|
21
|
+
const { project } = options;
|
|
22
|
+
if (project) {
|
|
23
|
+
const workspace = yield (0, workspace_1.getWorkspace)(tree);
|
|
24
|
+
const projectWorkspace = workspace.projects.get(project);
|
|
25
|
+
if (!projectWorkspace) {
|
|
26
|
+
throw new schematics_1.SchematicsException((0, messages_1.noProject)(project));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// Installing dependencies
|
|
30
|
+
const pkg = require('../../package.json');
|
|
31
|
+
(0, dependencies_1.addPackageJsonDependency)(tree, {
|
|
32
|
+
name: '@vsn-ux/gaia-styles',
|
|
33
|
+
type: dependencies_1.NodeDependencyType.Default,
|
|
34
|
+
version: pkg.peerDependencies['@vsn-ux/gaia-styles'],
|
|
35
|
+
});
|
|
36
|
+
const angularCoreVersion = (0, dependencies_1.getPackageJsonDependency)(tree, '@angular/core');
|
|
37
|
+
const angularCdkVersion = (0, dependencies_1.getPackageJsonDependency)(tree, '@angular/cdk');
|
|
38
|
+
if (angularCoreVersion !== null && angularCdkVersion === null) {
|
|
39
|
+
(0, dependencies_1.addPackageJsonDependency)(tree, {
|
|
40
|
+
name: '@angular/cdk',
|
|
41
|
+
type: dependencies_1.NodeDependencyType.Default,
|
|
42
|
+
version: pkg.peerDependencies['@angular/cdk'],
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
context.addTask(new tasks_1.RunSchematicTask('ng-add-setup-project', options), [
|
|
46
|
+
context.addTask(new tasks_1.NodePackageInstallTask()),
|
|
47
|
+
]);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../projects/ngx-gaia/schematics/ng-add/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAoBA,sBAmCC;AAvDD,2DAKoC;AACpC,4DAG0C;AAC1C,2EAIkD;AAClD,qEAAqE;AAErE,yCAAuC;AAGvC,SAAgB,KAAK,CAAC,OAAe;IACnC,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,+BAA+B;QAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,IAAI,gCAAmB,CAAC,IAAA,oBAAS,EAAC,OAAO,CAAC,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC1C,IAAA,uCAAwB,EAAC,IAAI,EAAE;YAC7B,IAAI,EAAE,qBAAqB;YAC3B,IAAI,EAAE,iCAAkB,CAAC,OAAO;YAChC,OAAO,EAAE,GAAG,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;SACrD,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,IAAA,uCAAwB,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,IAAA,uCAAwB,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACzE,IAAI,kBAAkB,KAAK,IAAI,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAC9D,IAAA,uCAAwB,EAAC,IAAI,EAAE;gBAC7B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,iCAAkB,CAAC,OAAO;gBAChC,OAAO,EAAE,GAAG,CAAC,gBAAgB,CAAC,cAAc,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,IAAI,wBAAgB,CAAC,sBAAsB,EAAE,OAAO,CAAC,EAAE;YACrE,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAsB,EAAE,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC,CAAA,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function noProject(projectName: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../projects/ngx-gaia/schematics/ng-add/messages.ts"],"names":[],"mappings":";;AAAA,8BAEC;AAFD,SAAgB,SAAS,CAAC,WAAmB;IAC3C,OAAO,2BAA2B,WAAW,oBAAoB,CAAC;AACpE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../projects/ngx-gaia/schematics/ng-add/schema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "ngx-gaia-ng-add",
|
|
4
|
+
"title": "ngx-gaia ng-add schematic",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Name of the project",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"animations": {
|
|
15
|
+
"description": "Add animations to AppModule.",
|
|
16
|
+
"type": "boolean",
|
|
17
|
+
"default": true,
|
|
18
|
+
"x-prompt": "Would you like to include animations with the library?"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ngAddSetupProject = ngAddSetupProject;
|
|
13
|
+
const schematics_1 = require("@angular/cdk/schematics");
|
|
14
|
+
const schematics_2 = require("@angular-devkit/schematics");
|
|
15
|
+
const workspace_1 = require("@schematics/angular/utility/workspace");
|
|
16
|
+
const path = require("path");
|
|
17
|
+
function ngAddSetupProject(options) {
|
|
18
|
+
return (0, schematics_2.chain)([updateAppModule(options), addStyles(options)]);
|
|
19
|
+
}
|
|
20
|
+
function updateAppModule(options) {
|
|
21
|
+
return (host, context) => __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
const workspace = yield (0, workspace_1.getWorkspace)(host);
|
|
23
|
+
const project = (0, schematics_1.getProjectFromWorkspace)(workspace, options.project);
|
|
24
|
+
const mainFilePath = (0, schematics_1.getProjectMainFile)(project);
|
|
25
|
+
if ((0, schematics_1.isStandaloneApp)(host, mainFilePath)) {
|
|
26
|
+
// TODO: print warning message
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
addAnimationsToNonStandaloneApp(host, project, mainFilePath, context, options);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
function addAnimationsToNonStandaloneApp(host, project, mainFile, context, options) {
|
|
33
|
+
const browserAnimationsModuleName = 'BrowserAnimationsModule';
|
|
34
|
+
const noopAnimationsModuleName = 'NoopAnimationsModule';
|
|
35
|
+
const appModulePath = (0, schematics_1.getAppModulePath)(host, mainFile);
|
|
36
|
+
if (options.animations) {
|
|
37
|
+
// In case the project explicitly uses the NoopAnimationsModule, we should print a warning
|
|
38
|
+
// message that makes the user aware of the fact that we won't automatically set up
|
|
39
|
+
// animations. If we would add the BrowserAnimationsModule while the NoopAnimationsModule
|
|
40
|
+
// is already configured, we would cause unexpected behavior and runtime exceptions.
|
|
41
|
+
if ((0, schematics_1.hasNgModuleImport)(host, appModulePath, noopAnimationsModuleName)) {
|
|
42
|
+
context.logger.error(`Could not set up "${browserAnimationsModuleName}" ` +
|
|
43
|
+
`because "${noopAnimationsModuleName}" is already imported.`);
|
|
44
|
+
context.logger.info(`Please manually set up browser animations.`);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
(0, schematics_1.addModuleImportToRootModule)(host, browserAnimationsModuleName, '@angular/platform-browser/animations', project);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
else if (!options.animations &&
|
|
51
|
+
!(0, schematics_1.hasNgModuleImport)(host, appModulePath, browserAnimationsModuleName)) {
|
|
52
|
+
// Do not add the NoopAnimationsModule module if the project already explicitly uses
|
|
53
|
+
// the BrowserAnimationsModule.
|
|
54
|
+
(0, schematics_1.addModuleImportToRootModule)(host, noopAnimationsModuleName, '@angular/platform-browser/animations', project);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
const SUPPORTED_BOOTSTRAP_STYLE_IMPORTS = {
|
|
58
|
+
'.sass': `@use '@vsn-ux/ngx-gaia'\n`,
|
|
59
|
+
'.scss': `@use '@vsn-ux/ngx-gaia';\n`,
|
|
60
|
+
};
|
|
61
|
+
function addStyles(options) {
|
|
62
|
+
return (host, context) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
const workspace = yield (0, workspace_1.getWorkspace)(host);
|
|
64
|
+
const project = (0, schematics_1.getProjectFromWorkspace)(workspace, options.project);
|
|
65
|
+
const styleFilePath = (0, schematics_1.getProjectStyleFile)(project);
|
|
66
|
+
if (!styleFilePath) {
|
|
67
|
+
context.logger.error(`Could not find the default style file for this project.`);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const styleFileExtension = path.extname(styleFilePath);
|
|
71
|
+
const styleFilePatch = SUPPORTED_BOOTSTRAP_STYLE_IMPORTS[styleFileExtension];
|
|
72
|
+
if (!styleFilePatch) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
return addToStylesFile(styleFilePath, styleFilePatch);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function addToStylesFile(styleFilePath, styleFilePatch) {
|
|
79
|
+
return (host) => {
|
|
80
|
+
const styleFileContents = host.read(styleFilePath);
|
|
81
|
+
if (!styleFileContents) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const recorder = host.beginUpdate(styleFilePath);
|
|
85
|
+
recorder.insertRight(0, styleFilePatch);
|
|
86
|
+
host.commitUpdate(recorder);
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=setup-project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-project.js","sourceRoot":"","sources":["../../../../projects/ngx-gaia/schematics/ng-add/setup-project.ts"],"names":[],"mappings":"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"}
|