
    (                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm	Z
 dZd	Zd
ZdZdZddddddiZd Zd ZeedZ	 d#dej(                  defdZdej(                  fdZ	 d#dej0                  defdZ	 d#dej0                  defdZd Z	 d#dej(                  fdZ	 d#dej(                  fdZ	 d#dej0                  defd Z	 d#dej0                  defd!Zy")$zCommonly used display formats.    )absolute_import)division)unicode_literals)parser_arguments)parser_extensions)argszE
table(
  name.basename():label=NAME,
  displayName:label=LOCATION
)
zL
value[terminator="",private](
  payload.data.decode(base64).decode(utf8)
)
z
table(
  name.basename():label=NAME,
  createTime.date():label=CREATED,
  policy_transform():label=REPLICATION_POLICY,
  locations_transform():label=LOCATIONS
)
zJ
table(
  name.basename():label=NAME,
  createTime.date():label=CREATED
)
z
table(
  name.basename():label=NAME,
  state.enum(secrets.StateVersionJobState).color('destroyed', 'disabled', 'enabled', 'unknown'):label=STATE,
  createTime.date():label=CREATED,
  destroyTime.date(undefined='-'):label=DESTROYED
)
z"secrets.StateVersionJobState::enumunknownenableddisabled	destroyed)STATE_UNSPECIFIEDENABLEDDISABLED	DESTROYEDc                 .    d| vryd| d   v ryd| d   v ryy)NreplicationERROR	automaticuserManageduser_managed rs    -lib/googlecloudsdk/command_lib/secrets/fmt.py_TransformReplicationPolicyr   J   s0    !Am$$a&&	    c                     d| vryd| d   v ryd| d   v rAd| d   d   v r7g }| d   d   d   D ]  }|j                  |d           dj                  |      S y)	Nr   r   r   -r   replicaslocation,)appendjoin)r   	locationsreplicas      r   _TransformLocationsr&   T   s    !Am$$a&&:=9I: ,I]#M2:>wz*+ ?88I	r   )policy_transformlocations_transformparserapi_versionc                     | j                   j                  t               | j                   j                  t	        j
                  d|             y)zTable format to display locations.

  Args:
    parser: arguments interceptor
    api_version: api version to be included in resource name
  z secretmanager.projects.locationsr*   N)display_info	AddFormat_LOCATION_TABLE
AddUriFuncsecrets_argsMakeGetUriFuncr)   r*   s     r   UseLocationTabler4   h   s?     	0  !!
,+r   c                     | j                   j                  t               | j                   j                  t               | j                   j                  d        y)zNTable format to display secrets.

  Args:
    parser: arguments interceptor
  c                 \    t        j                  | j                        j                         S N)r1   ParseSecretRefnameSelfLinkr   s    r   <lambda>z UseSecretTable.<locals>.<lambda>   s    ++AFF3<<>r   N)r-   r.   _SECRET_TABLEAddTransforms_SECRET_TRANSFORMSr0   r)   s    r   UseSecretTabler@   y   sD     	.##$67  >r   r   c                     | j                         j                  t               | j                         j                  t               | j                         j                  t        j                  d|             y)zTable format to display global secrets.

  Args:
    args: arguments interceptor
    api_version: api version to be included in resource name
  zsecretmanager.projects.secretsr,   N)GetDisplayInfor.   r<   r=   r>   r0   r1   r2   r   r*   s     r   SecretTableUsingArgumentrD      s]     !!-0%%&89""!!
*r   c                     | j                         j                  t               | j                         j                  t               | j                         j                  t        j                  d|             y)Table format to display regional secrets.

  Args:
    args: arguments interceptor
    api_version: api version to be included in resource name
  z(secretmanager.projects.locations.secretsr,   N)rB   r.   _REGIONAL_SECRET_TABLEr=   r>   r0   r1   r2   rC   s     r    RegionalSecretTableUsingArgumentrH      s^     !!"89%%&89""!!
4+r   c                 B    | j                   j                  t               y r7   )r-   r.   _SECRET_DATAr?   s    r   UseSecretDatarK      s    -r   c                     | j                   j                  t               | j                   j                  t               t        j                  d|       y)zTable format to display secret versions.

  Args:
    parser: arguments interceptor
    api_version: api version to be included in resource name
  1secretmanager.projects.locations.secrets.versionsr,   Nr-   r.   _VERSION_TABLEr=   _VERSION_STATE_TRANSFORMSr1   r2   r3   s     r   UseVersionTablerQ      A     	/##$=>9r   c                     | j                   j                  t               | j                   j                  t               t        j                  d|       y)zTable format to display regional secret versions.

  Args:
    parser: arguments interceptor
    api_version: api version to be included in resource name
  rM   r,   NrN   r3   s     r   UseRegionalVersionTablerT      rR   r   c                     | j                         j                  t               | j                         j                  t               | j                         j                  t        j                  d|             y)zTable format to display global secret version.

  Args:
    args: arguments interceptor
    api_version: api version to be included in resource name
  z'secretmanager.projects.secrets.versionsr,   NrB   r.   rO   r=   rP   r0   r1   r2   rC   s     r   SecretVersionTableUsingArgumentrW      s]     !!.1%%&?@""!!
3r   c                     | j                         j                  t               | j                         j                  t               | j                         j                  t        j                  d|             y)rF   rM   r,   NrV   rC   s     r   'RegionalSecretVersionTableUsingArgumentrY      s^     !!.1%%&?@""!!
=!r   N)v1) __doc__
__future__r   r   r   googlecloudsdk.callioper   r   "googlecloudsdk.command_lib.secretsr   r1   r/   rJ   r<   rG   rO   rP   r   r&   r>   ArgumentInterceptorstrr4   r@   	NamespacerD   rH   rK   rQ   rT   rW   rY   r   r   r   <module>rb      sd   % &  ' 4 5 C  )& 	+  4.  FJ00?B"
+?? 
 ;?

%
%47& ;?

%
%47$.
 ?C00$ ?C00$ ;?

%
%47& ;?

%
%47r   