当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript navigation.StateConfigProvider类代码示例

本文整理汇总了TypeScript中core/navigation.StateConfigProvider的典型用法代码示例。如果您正苦于以下问题:TypeScript StateConfigProvider类的具体用法?TypeScript StateConfigProvider怎么用?TypeScript StateConfigProvider使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了StateConfigProvider类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1:

  (stateConfigProvider: StateConfigProvider) => {
    const pipelineTemplateDetail: INestedState = {
      name: 'pipeline-templates-detail',
      url: '/:templateId',
      data: {
        pageTitleMain: {
          label: 'Pipeline Templates',
        },
      },
    };

    const pipelineTemplatesList: INestedState = {
      name: 'pipeline-templates',
      url: '/pipeline-templates',
      views: {
        'main@': {
          component: PipelineTemplatesV2,
          $type: 'react',
        },
      },
      data: {
        pageTitleMain: {
          label: 'Pipeline Templates',
        },
      },
      children: [pipelineTemplateDetail],
    };

    if (SETTINGS.feature.managedPipelineTemplatesV2UI) {
      stateConfigProvider.addToRootState(pipelineTemplatesList);
    }
  },
开发者ID:emjburns,项目名称:deck,代码行数:32,代码来源:pipelineTemplateV2.states.ts

示例2:

 (stateConfigProvider: StateConfigProvider) => {
   const pageState: INestedState = {
     url: '/page?app&q&keys&by&direction&hideNoApps',
     name: 'page',
     views: {
       'main@': { component: Pager, $type: 'react' },
     },
     params: {
       app: {
         dynamic: true,
         type: 'string',
         value: '',
         squash: true,
       },
       q: {
         dynamic: true,
         type: 'string',
         value: '',
         squash: true,
       },
       hideNoApps: {
         dynamic: true,
         type: 'boolean',
         value: false,
         squash: true,
       },
       keys: {
         dynamic: true,
         value: [],
         squash: true,
         array: true,
       },
       by: {
         dynamic: true,
         type: 'string',
         value: 'service',
         squash: true,
       },
       direction: {
         dynamic: true,
         type: 'string',
         value: 'ASC',
         squash: true,
       },
     },
     data: {
       pageTitleSection: {
         title: 'Pager',
       },
     },
   };
   stateConfigProvider.addToRootState(pageState);
 },
开发者ID:emjburns,项目名称:deck,代码行数:53,代码来源:pager.states.ts

示例3:

  (applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
    const loadBalancerDetails: INestedState = {
      name: 'loadBalancerDetails',
      url: '/loadBalancerDetails/:provider/:accountId/:region/:vpcId/:name',
      params: {
        vpcId: {
          value: null,
          squash: true,
        },
      },
      views: {
        'detail@../insight': {
          component: LoadBalancerDetails,
          $type: 'react',
        },
      },
      resolve: {
        accountId: ['$stateParams', ($stateParams: StateParams) => $stateParams.accountId],
        loadBalancer: [
          '$stateParams',
          ($stateParams: StateParams) => {
            return {
              name: $stateParams.name,
              accountId: $stateParams.accountId,
              region: $stateParams.region,
              vpcId: $stateParams.vpcId,
            };
          },
        ],
      },
      data: {
        pageTitleDetails: {
          title: 'Load Balancer Details',
          nameParam: 'name',
          accountParam: 'accountId',
          regionParam: 'region',
        },
        history: {
          type: 'loadBalancers',
        },
      },
    };

    const loadBalancers: INestedState = {
      url: `/loadBalancers?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
      name: 'loadBalancers',
      views: {
        nav: { component: LoadBalancerFilters, $type: 'react' },
        master: { component: LoadBalancers, $type: 'react' },
      },
      params: stateConfigProvider.buildDynamicParams(filterModelConfig),
      data: {
        pageTitleSection: {
          title: 'Load Balancers',
        },
      },
      children: [],
    };

    applicationStateProvider.addInsightState(loadBalancers);
    applicationStateProvider.addInsightDetailState(loadBalancerDetails);
  },
开发者ID:emjburns,项目名称:deck,代码行数:62,代码来源:loadBalancer.states.ts

示例4: require

  (applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
    const instanceDetails: INestedState = {
      name: 'instanceDetails',
      url: '/instanceDetails/:provider/:instanceId',
      views: {
        'detail@../insight': {
          component: InstanceDetails,
          $type: 'react',
        },
      },
      resolve: {
        overrides: () => {
          return {};
        },
        instance: [
          '$stateParams',
          ($stateParams: StateParams) => {
            return {
              instanceId: $stateParams.instanceId,
            };
          },
        ],
      },
      data: {
        pageTitleDetails: {
          title: 'Instance Details',
          nameParam: 'instanceId',
        },
        history: {
          type: 'instances',
        },
      },
    };

    const multipleInstances: INestedState = {
      name: 'multipleInstances',
      url: '/multipleInstances',
      views: {
        'detail@../insight': {
          templateUrl: require('../instance/details/multipleInstances.view.html'),
          controller: 'MultipleInstancesCtrl',
          controllerAs: 'vm',
        },
      },
      data: {
        pageTitleDetails: {
          title: 'Multiple Instances',
        },
      },
    };

    const standaloneInstance: INestedState = {
      name: 'instanceDetails',
      url: '/instance/:provider/:account/:region/:instanceId',
      views: {
        'main@': {
          templateUrl: require('../presentation/standalone.view.html'),
          controllerProvider: [
            '$stateParams',
            ($stateParams: StateParams) => {
              return SkinService.getValue($stateParams.provider, $stateParams.account, 'instance.detailsController');
            },
          ],
          controllerAs: 'ctrl',
        },
      },
      resolve: {
        instance: [
          '$stateParams',
          ($stateParams: StateParams) => {
            return {
              instanceId: $stateParams.instanceId,
              account: $stateParams.account,
              region: $stateParams.region,
              noApplication: true,
            };
          },
        ],
        app: [
          (): Application => {
            return ApplicationModelBuilder.createStandaloneApplication('(standalone instance)');
          },
        ],
        overrides: () => {
          return {};
        },
        moniker: (): any => null,
        environment: (): any => null,
      },
      data: {
        pageTitleDetails: {
          title: 'Instance Details',
          nameParam: 'instanceId',
        },
        history: {
          type: 'instances',
        },
      },
    };

//.........这里部分代码省略.........
开发者ID:emjburns,项目名称:deck,代码行数:101,代码来源:instance.states.ts

示例5: require

  (applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {
    const firewallDetails: INestedState = {
      name: 'firewallDetails',
      url: '/firewallDetails/:provider/:accountId/:region/:vpcId/:name',
      params: {
        vpcId: {
          value: null,
          squash: true,
        },
      },
      views: {
        'detail@../insight': {
          component: SecurityGroupDetails,
          $type: 'react',
        },
      },
      resolve: {
        accountId: ['$stateParams', ($stateParams: StateParams) => $stateParams.accountId],
        resolvedSecurityGroup: [
          '$stateParams',
          ($stateParams: StateParams) => {
            return {
              name: $stateParams.name,
              accountId: $stateParams.accountId,
              provider: $stateParams.provider,
              region: $stateParams.region,
              vpcId: $stateParams.vpcId,
            };
          },
        ],
      },
      data: {
        pageTitleDetails: {
          title: `${FirewallLabels.get('Firewall')} Details`,
          nameParam: 'name',
          accountParam: 'accountId',
          regionParam: 'region',
        },
        history: {
          type: 'securityGroups',
        },
      },
    };

    const securityGroupSummary: INestedState = {
      url: `/firewalls?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
      name: 'firewalls',
      views: {
        nav: {
          template: '<security-group-filter app="$resolve.app"></security-group-filter>',
        },
        master: {
          templateUrl: require('../securityGroup/all.html'),
          controller: 'AllSecurityGroupsCtrl',
          controllerAs: 'ctrl',
        },
      },
      params: stateConfigProvider.buildDynamicParams(filterModelConfig),
      data: {
        pageTitleSection: {
          title: FirewallLabels.get('Firewalls'),
        },
      },
    };

    const standaloneFirewall: INestedState = {
      name: 'firewallDetails',
      url: '/firewallDetails/:provider/:accountId/:region/:vpcId/:name',
      params: {
        vpcId: {
          value: null,
          squash: true,
        },
      },
      views: {
        'main@': {
          templateUrl: require('../presentation/standalone.view.html'),
          controllerProvider: [
            '$stateParams',
            ($stateParams: StateParams) => {
              return SkinService.getValue(
                $stateParams.provider,
                $stateParams.accountId,
                'securityGroup.detailsController',
              );
            },
          ],
          controllerAs: 'ctrl',
        },
      },
      resolve: {
        resolvedSecurityGroup: [
          '$stateParams',
          ($stateParams: StateParams) => {
            return {
              name: $stateParams.name,
              accountId: $stateParams.accountId,
              provider: $stateParams.provider,
              region: $stateParams.region,
              vpcId: $stateParams.vpcId,
//.........这里部分代码省略.........
开发者ID:emjburns,项目名称:deck,代码行数:101,代码来源:securityGroup.states.ts

示例6: require

]).config((applicationStateProvider: ApplicationStateProvider, stateConfigProvider: StateConfigProvider) => {

  const securityGroupDetails: INestedState = {
    name: 'securityGroupDetails',
    url: '/securityGroupDetails/:provider/:accountId/:region/:vpcId/:name',
    params: {
      vpcId: {
        value: null,
        squash: true,
      },
    },
    views: {
      'detail@../insight': {
        component: SecurityGroupDetails,
        $type: 'react',
      }
    },
    resolve: {
      accountId: ['$stateParams', ($stateParams: StateParams) => $stateParams.accountId],
      resolvedSecurityGroup: ['$stateParams', ($stateParams: StateParams) => {
        return {
          name: $stateParams.name,
          accountId: $stateParams.accountId,
          provider: $stateParams.provider,
          region: $stateParams.region,
          vpcId: $stateParams.vpcId,
        };
      }]
    },
    data: {
      pageTitleDetails: {
        title: 'Security Group Details',
        nameParam: 'name',
        accountParam: 'accountId',
        regionParam: 'region'
      },
      history: {
        type: 'securityGroups',
      },
    }
  };

  const securityGroupSummary: INestedState = {
    url: `/securityGroups?${stateConfigProvider.paramsToQuery(filterModelConfig)}`,
    name: 'securityGroups',
    views: {
      'nav': {
        template: '<security-group-filter app="$resolve.app"></security-group-filter>',
      },
      'master': {
        templateUrl: require('../securityGroup/all.html'),
        controller: 'AllSecurityGroupsCtrl',
        controllerAs: 'ctrl'
      }
    },
    params: stateConfigProvider.buildDynamicParams(filterModelConfig),
    data: {
      pageTitleSection: {
        title: 'Security Groups'
      }
    }
  };

  const standaloneSecurityGroup: INestedState = {
    name: 'securityGroupDetails',
    url: '/securityGroupDetails/:provider/:accountId/:region/:vpcId/:name',
    params: {
      vpcId: {
        value: null,
        squash: true,
      },
    },
    views: {
      'main@': {
        templateUrl: require('../presentation/standalone.view.html'),
        controllerProvider: ['$stateParams', 'versionedCloudProviderService',
          ($stateParams: StateParams,
           versionedCloudProviderService: VersionedCloudProviderService) => {
            return versionedCloudProviderService.getValue($stateParams.provider, $stateParams.accountId, 'securityGroup.detailsController');
        }],
        controllerAs: 'ctrl'
      }
    },
    resolve: {
      resolvedSecurityGroup: ['$stateParams', ($stateParams: StateParams) => {
        return {
          name: $stateParams.name,
          accountId: $stateParams.accountId,
          provider: $stateParams.provider,
          region: $stateParams.region,
          vpcId: $stateParams.vpcId,
        };
      }],
      app: ['$stateParams', 'securityGroupReader', 'applicationModelBuilder',
        ($stateParams: StateParams,
         securityGroupReader: SecurityGroupReader,
         applicationModelBuilder: ApplicationModelBuilder): ng.IPromise<Application> => {
          // we need the application to have a security group index (so rules get attached and linked properly)
          // and its name should just be the name of the security group (so cloning works as expected)
          return securityGroupReader.loadSecurityGroups()
//.........这里部分代码省略.........
开发者ID:robfletcher,项目名称:deck,代码行数:101,代码来源:securityGroup.states.ts


注:本文中的core/navigation.StateConfigProvider类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。