Skip to content

Commit

Permalink
feat(ns-ads): export new symbols and types (#3801)
Browse files Browse the repository at this point in the history
Refs #3777
  • Loading branch information
glowcloud committed Feb 6, 2024
1 parent 9d58bec commit 5f2f434
Show file tree
Hide file tree
Showing 13 changed files with 122 additions and 24 deletions.
60 changes: 60 additions & 0 deletions packages/apidom-ns-api-design-systems/src/index.ts
Expand Up @@ -30,6 +30,66 @@ export {
isStandardIdentifierElement,
} from './predicates';

export { default as FixedFieldsVisitor } from './refractor/visitors/generics/FixedFieldsVisitor';
export type { FixedFieldsVisitorOptions } from './refractor/visitors/generics/FixedFieldsVisitor';
export { default as SpecificationVisitor } from './refractor/visitors/SpecificationVisitor';
export type { SpecificationVisitorOptions } from './refractor/visitors/SpecificationVisitor';
export { default as FallbackVisitor } from './refractor/visitors/FallbackVisitor';
export type { FallbackVisitorOptions } from './refractor/visitors/FallbackVisitor';
export { default as Visitor } from './refractor/visitors/Visitor';
export type { VisitorOptions } from './refractor/visitors/Visitor';

export type {
default as InfoVisitor,
InfoVisitorOptions,
} from './refractor/visitors/api-design-systems/info';
export type {
default as MainVisitor,
MainVisitorOptions,
} from './refractor/visitors/api-design-systems/main';
export type {
default as MainPrinciplesVisitor,
PrinciplesVisitorOptions as MainPrinciplesVisitorOptions,
} from './refractor/visitors/api-design-systems/main/PrinciplesVisitor';
export type {
default as MainScenariosVisitor,
ScenariosVisitorOptions as MainScenariosVisitorOptions,
} from './refractor/visitors/api-design-systems/main/ScenariosVisitor';
export type {
default as MainStandardsVisitor,
StandardsVisitorOptions as MainStandardsVisitorOptions,
} from './refractor/visitors/api-design-systems/main/StandardsVisitor';
export type {
default as PrincipleVisitor,
PrincipleVisitorOptions,
} from './refractor/visitors/api-design-systems/principle';
export type {
default as RequirementVisitor,
RequirementVisitorOptions,
} from './refractor/visitors/api-design-systems/requirement';
export type {
default as RequirementLevelVisitor,
RequirementLevelVisitorOptions,
} from './refractor/visitors/api-design-systems/requirement-level';
export type {
default as ScenarioVisitor,
ScenarioVisitorOptions,
} from './refractor/visitors/api-design-systems/scenario';
export type {
default as ScenarioThenVisitor,
ThenVisitorOptions as ScenarioThenVisitorOptions,
} from './refractor/visitors/api-design-systems/scenario/ThenVisitor';
export type {
default as StandardVisitor,
StandardVisitorOptions,
} from './refractor/visitors/api-design-systems/standard';
export type {
default as StandardIdentifierVisitor,
StandardIdentifierVisitorOptions,
} from './refractor/visitors/api-design-systems/standard-identifier';

export type { SpecPath } from './refractor/visitors/generics/FixedFieldsVisitor';

export { keyMap, getNodeType } from './traversal/visitor';

/**
Expand Down
Expand Up @@ -2,13 +2,15 @@ import { always } from 'ramda';
import { Mixin } from 'ts-mixer';

import InfoElement from '../../../../elements/Info';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, { FixedFieldsVisitorOptions } from '../../generics/FixedFieldsVisitor';

export interface InfoVisitorOptions extends FixedFieldsVisitorOptions, FallbackVisitorOptions {}

class InfoVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: InfoElement;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: InfoVisitorOptions) {
super(options);
this.specPath = always(['document', 'objects', 'Info']);
this.element = new InfoElement();
Expand Down
@@ -1,13 +1,17 @@
import { Mixin } from 'ts-mixer';
import { ArrayElement, Element, BREAK } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';

export interface PrinciplesVisitorOptions
extends SpecificationVisitorOptions,
FallbackVisitorOptions {}

class PrinciplesVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare readonly element: ArrayElement;

constructor(options: SpecificationVisitorOptions) {
constructor(options: PrinciplesVisitorOptions) {
super(options);
this.element = new ArrayElement();
this.element.classes.push('main-principles');
Expand Down
@@ -1,13 +1,17 @@
import { Mixin } from 'ts-mixer';
import { ArrayElement, Element, BREAK } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';

export interface ScenariosVisitorOptions
extends SpecificationVisitorOptions,
FallbackVisitorOptions {}

class ScenariosVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare readonly element: ArrayElement;

constructor(options: SpecificationVisitorOptions) {
constructor(options: ScenariosVisitorOptions) {
super(options);
this.element = new ArrayElement();
this.element.classes.push('main-scenarios');
Expand Down
@@ -1,13 +1,17 @@
import { Mixin } from 'ts-mixer';
import { ArrayElement, Element, BREAK } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';

export interface StandardsVisitorOptions
extends SpecificationVisitorOptions,
FallbackVisitorOptions {}

class StandardsVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare readonly element: ArrayElement;

constructor(options: SpecificationVisitorOptions) {
constructor(options: StandardsVisitorOptions) {
super(options);
this.element = new ArrayElement();
this.element.classes.push('main-standards');
Expand Down
Expand Up @@ -2,18 +2,20 @@ import { Mixin } from 'ts-mixer';
import { always } from 'ramda';

import MainElement from '../../../../elements/Main';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, {
FixedFieldsVisitorOptions,
SpecPath,
} from '../../generics/FixedFieldsVisitor';

export interface MainVisitorOptions extends FixedFieldsVisitorOptions, FallbackVisitorOptions {}

class MainVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: MainElement;

protected declare readonly specPath: SpecPath<['document', 'objects', 'Main']>;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: MainVisitorOptions) {
super(options);
this.element = new MainElement();
this.specPath = always(['document', 'objects', 'Main']);
Expand Down
Expand Up @@ -2,18 +2,22 @@ import { always } from 'ramda';
import { Mixin } from 'ts-mixer';

import PrincipleElement from '../../../../elements/Principle';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, {
FixedFieldsVisitorOptions,
SpecPath,
} from '../../generics/FixedFieldsVisitor';

export interface PrincipleVisitorOptions
extends FixedFieldsVisitorOptions,
FallbackVisitorOptions {}

class PrincipleVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: PrincipleElement;

protected declare readonly specPath: SpecPath<['document', 'objects', 'Principle']>;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: PrincipleVisitorOptions) {
super(options);
this.element = new PrincipleElement();
this.specPath = always(['document', 'objects', 'Principle']);
Expand Down
@@ -1,10 +1,14 @@
import { Mixin } from 'ts-mixer';
import { StringElement, BREAK, toValue } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import SpecificationVisitor from '../../SpecificationVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';
import RequirementLevelElement from '../../../../elements/RequirementLevel';

export interface RequirementLevelVisitorOptions
extends SpecificationVisitorOptions,
FallbackVisitorOptions {}

class RequirementLevelVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare element: RequirementLevelElement;

Expand Down
Expand Up @@ -2,18 +2,22 @@ import { always } from 'ramda';
import { Mixin } from 'ts-mixer';

import RequirementElement from '../../../../elements/Requirement';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, {
FixedFieldsVisitorOptions,
SpecPath,
} from '../../generics/FixedFieldsVisitor';

export interface RequirementVisitorOptions
extends FixedFieldsVisitorOptions,
FallbackVisitorOptions {}

class RequirementVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: RequirementElement;

protected declare readonly specPath: SpecPath<['document', 'objects', 'Requirement']>;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: RequirementVisitorOptions) {
super(options);
this.element = new RequirementElement();
this.specPath = always(['document', 'objects', 'Requirement']);
Expand Down
@@ -1,13 +1,15 @@
import { Mixin } from 'ts-mixer';
import { ArrayElement, Element, BREAK } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';

export interface ThenVisitorOptions extends SpecificationVisitorOptions, FallbackVisitorOptions {}

class ThenVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare readonly element: ArrayElement;

constructor(options: SpecificationVisitorOptions) {
constructor(options: ThenVisitorOptions) {
super(options);
this.element = new ArrayElement();
this.element.classes.push('scenario-then');
Expand Down
Expand Up @@ -2,18 +2,20 @@ import { always } from 'ramda';
import { Mixin } from 'ts-mixer';

import ScenarioElement from '../../../../elements/Scenario';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, {
FixedFieldsVisitorOptions,
SpecPath,
} from '../../generics/FixedFieldsVisitor';

export interface ScenarioVisitorOptions extends FixedFieldsVisitorOptions, FallbackVisitorOptions {}

class ScenarioVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: ScenarioElement;

protected declare readonly specPath: SpecPath<['document', 'objects', 'Scenario']>;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: ScenarioVisitorOptions) {
super(options);
this.element = new ScenarioElement();
this.specPath = always(['document', 'objects', 'Scenario']);
Expand Down
@@ -1,14 +1,18 @@
import { Mixin } from 'ts-mixer';
import { ArrayElement, BREAK, Element } from '@swagger-api/apidom-core';

import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import SpecificationVisitor, { SpecificationVisitorOptions } from '../../SpecificationVisitor';
import StandardIdentifierElement from '../../../../elements/StandardIdentifier';

export interface StandardIdentifierVisitorOptions
extends SpecificationVisitorOptions,
FallbackVisitorOptions {}

class StandardIdentifierVisitor extends Mixin(SpecificationVisitor, FallbackVisitor) {
public declare readonly element: StandardIdentifierElement;

constructor(options: SpecificationVisitorOptions) {
constructor(options: StandardIdentifierVisitorOptions) {
super(options);
this.element = new StandardIdentifierElement();
}
Expand Down
Expand Up @@ -2,18 +2,20 @@ import { always } from 'ramda';
import { Mixin } from 'ts-mixer';

import StandardElement from '../../../../elements/Standard';
import FallbackVisitor from '../../FallbackVisitor';
import FallbackVisitor, { FallbackVisitorOptions } from '../../FallbackVisitor';
import FixedFieldsVisitor, {
FixedFieldsVisitorOptions,
SpecPath,
} from '../../generics/FixedFieldsVisitor';

export interface StandardVisitorOptions extends FixedFieldsVisitorOptions, FallbackVisitorOptions {}

class StandardVisitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
public declare readonly element: StandardElement;

protected declare readonly specPath: SpecPath<['document', 'objects', 'Standard']>;

constructor(options: FixedFieldsVisitorOptions) {
constructor(options: StandardVisitorOptions) {
super(options);
this.element = new StandardElement();
this.specPath = always(['document', 'objects', 'Standard']);
Expand Down

0 comments on commit 5f2f434

Please sign in to comment.